Կատարեք պատկերների հակադարձ որոնում՝ օգտագործելով C#

C# պատկերների հակառակ որոնումը թույլ է տալիս ծրագրավորողներին արդյունավետորեն գտնել նմանատիպ պատկերներ հավաքածուի մեջ՝ հիմնվելով տեսողական բովանդակության վրա, այլ ոչ թե հիմնաբառերի կամ մետատվյալների վրա: Այս հնարավորությունը հատկապես օգտակար է այնպիսի ծրագրերում, ինչպիսիք են պատկերների որոնումը, բովանդակության կառավարման համակարգերը և թվային ակտիվների կառավարումը: Օգտագործելով GroupDocs.Search-ը, C# մշակողները կարող են իրականացնել հակադարձ պատկերների որոնման գործառույթ՝ արագ բացահայտելու պատկերները, որոնք համապատասխանում են տվյալ հղումին: Այս հոդվածում մենք կուսումնասիրենք, թե ինչպես կատարել հակադարձ պատկերների որոնում՝ օգտագործելով C# և տրամադրել կոդի օրինակ՝ սկսելու համար: Այս հատկությունը հատկապես օգտակար է, երբ գործ ունենք տարբեր պատկերների ձևաչափերի հետ, ինչպիսիք են PNG, JPEG կամ ZIP արխիվները՝ ապահովելով համատեղելիությունը տարբեր հարթակների և ֆայլերի տեսակների միջև:

C#-ի միջոցով պատկերների հակադարձ որոնում կատարելու քայլեր

  1. Ավելացրեք GroupDocs.Search for .NET գրադարանը ձեր նախագծին հակառակ պատկերների որոնման համար
  2. Ստեղծեք Index օբյեկտ՝ օգտագործելով նշված ինդեքսի թղթապանակը
  3. Սահմանեք պատկերը IndexingOptions՝ հնարավորություն տալու ինդեքսավորումը բեռնարկղային տարրերի պատկերների, ներկառուցված պատկերների և առանձին պատկերների համար
  4. Փաստաթղթեր ավելացրեք ինդեքսի թղթապանակում՝ նշված պատկերների ինդեքսավորման ընտրանքներով
  5. Սահմանեք ImageSearchOptions՝ ներառյալ հեշի տարբերությունները, արդյունքների առավելագույն քանակը և որոնման փաստաթղթերի զտիչը
  6. Ստեղծեք հղման պատկեր որոնման համար՝ նշելով դեպի պատկերի ֆայլի ուղին SearchImage.Create մեթոդի միջոցով
  7. Կատարեք պատկերի որոնում ինդեքսում՝ օգտագործելով հղման պատկերը և որոնման ընտրանքները՝ օգտագործելով Index.Search
  8. Գտեք որոնման արդյունքները և տպեք յուրաքանչյուր հայտնաբերված պատկերի մանրամասները

Այս գործառույթն իրականացնելու համար գործընթացը սկսվում է ինդեքս ստեղծելով, որը պահում է պատկերները՝ դրանց մետատվյալների հետ միասին: IndexingOptions դասը օգտագործվում է տարբեր տեսակի պատկերների ինդեքսավորումը միացնելու համար, ներառյալ բեռնարկղային տարրերի պատկերները, ներկառուցված պատկերները և առանձին պատկերները: Երբ պատկերները ինդեքսավորվեն, որոնումը կարող է իրականացվել SearchImage դասի միջոցով, որը թույլ է տալիս նշել հղման պատկեր՝ ինդեքսավորված փաստաթղթերում նմանատիպ համընկնումներ գտնելու համար: ImageSearchOptions-ը լրացուցիչ վերահսկողություն է ապահովում որոնման գործընթացի վրա, ինչպիսիք են արդյունքների առավելագույն քանակը և փնտրվող փաստաթղթերի տեսակները: Այս մոտեցումը հնարավորություն է տալիս արդյունավետ բովանդակության վրա հիմնված պատկերների որոնում C# հավելվածներում: Ստորև ներկայացված է C# կոդը հակադարձ պատկերների որոնման համար:

Կոդ՝ պատկերների հակադարձ որոնում կատարելու համար՝ օգտագործելով C#

using GroupDocs.Search;
using GroupDocs.Search.Common;
using GroupDocs.Search.Options;
using GroupDocs.Search.Results;
using System;
namespace PerformReverseImageSearchUsingCSharp
{
internal class Program
{
static void Main(string[] args)
{
// Apply the license to remove the restrictions
// imposed by the Search library
License lic = new License();
lic.SetLicense(@"GroupDocs.Search.lic");
string indexFolder = @"d:\MyIndex\";
string documentsFolder = @"d:\MyDocuments\";
// Creating an index in the specified folder
Index index = new Index(indexFolder);
// Setting the image indexing options
IndexingOptions indexingOptions = new IndexingOptions();
indexingOptions.ImageIndexingOptions.EnabledForContainerItemImages = true;
indexingOptions.ImageIndexingOptions.EnabledForEmbeddedImages = true;
indexingOptions.ImageIndexingOptions.EnabledForSeparateImages = true;
// Indexing documents in a document folder
index.Add(documentsFolder, indexingOptions);
// Setting the image search options
ImageSearchOptions imageSearchOptions = new ImageSearchOptions();
imageSearchOptions.HashDifferences = 10;
imageSearchOptions.MaxResultCount = 100;
imageSearchOptions.SearchDocumentFilter = SearchDocumentFilter
.CreateFileExtension(".zip", ".png", ".jpg");
// Creating a reference image for search
SearchImage searchImage = SearchImage.Create(@"d:\MyDocuments\image.png");
// Searching in the index
ImageSearchResult result = index.Search(searchImage, imageSearchOptions);
Console.WriteLine("Images found: " + result.ImageCount);
for (int i = 0; i < result.ImageCount; i++)
{
FoundImageFrame image = result.GetFoundImage(i);
Console.WriteLine(image.DocumentInfo.ToString());
}
}
}
}

բովանդակության վրա հիմնված պատկերների որոնման կատարումը C#-ի միջոցով հզոր հատկություն է բովանդակության վրա հիմնված պատկերների որոնման համար, որը թույլ է տալիս հավելվածներին արագ և ճշգրիտ գտնել նմանատիպ պատկերներ տարբեր միջավայրերում՝ աշխատասեղանի հավելվածներից մինչև ամպային լուծումներ: Որոնման գրադարանի ինտեգրումը պատկերների ինդեքսավորման և որոնման համար երաշխավորում է, որ լուծումը հարթակից անկախ է, համատեղելի Windows-ի, macOS-ի և Linux-ի հետ և կարող է չափվել պատկերների մեծ տվյալների հավաքածուների համար: Օգտագործելով այս հնարավորությունները՝ մշակողները կարող են ստեղծել պատկերների որոնման հզոր համակարգեր, որոնք բարելավում են օգտատերերի փորձը և պարզեցնում բովանդակության կառավարման խնդիրները տարբեր հարթակներում և հավելվածներում:

Նախկինում մենք տրամադրել էինք խորը ուղեցույց C#-ի միջոցով կանոնավոր արտահայտությունների որոնում կատարելու վերաբերյալ: Ամբողջական քայլ առ քայլ հրահանգները դիտելու համար անպայման կարդացեք մեր մանրամասն հոդվածը, թե ինչպես կատարել կանոնավոր արտահայտությունների որոնում՝ օգտագործելով C#:

 Հայերեն