ما هو البحث العكسي عن الصور؟

البحث العكسي عن الصور هو تقنية تتيح للمستخدمين البحث عن المعلومات باستخدام صورة كاستعلام بحث بدلاً من النص. على عكس عمليات البحث التقليدية القائمة على الكلمات الرئيسية، يقوم البحث العكسي عن الصور بمعالجة المحتوى المرئي لإيجاد التطابقات، واسترجاع البيانات الوصفية، أو تقديم سياق حول الصورة.

أصبح هذه الطريقة لا غنى عنها للمهام مثل تحديد أصل الصورة، والتحقق من مصداقيتها، واكتشاف المحتوى المماثل، واكتشاف الاستخدام غير المصرح به للمواد المحمية بحقوق الطبع والنشر. يُستخدم البحث العكسي عن الصور على نطاق واسع في مجالات مختلفة، بما في ذلك التجارة الإلكترونية، والصحافة، والطب الشرعي الرقمي، والمزيد.

كيف تعمل ميزة البحث العكسي عن الصور؟

في جوهر بحث الصور العكسية تكمن تقنية رئيسية تسمى التجزئة الإدراكية. هذه الطريقة تولد “بصمة” فريدة لكل صورة، والتي تتم مقارنتها بعد ذلك مع بصمات صور أخرى لتحديد أوجه التشابه. إليك كيفية عمل التجزئة الإدراكية في بحث الصور العكسية:

  1. معالجة الصور: قبل إنشاء تجزئة، يتم معالجة الصورة لإزالة التفاصيل غير الضرورية وتوحيد صيغتها. يتضمن ذلك عادةً تغيير حجم الصورة إلى حجم أصغر ثابت وتحويلها إلى التدرج الرمادي. يضمن ذلك أن تكون عملية التجزئة متسقة عبر جميع الصور.

  2. استخراج الميزات: بدلاً من تحليل كل بكسل فردي، يركز التشفير الإدراكي على الميزات عالية المستوى للصورة، مثل هيكلها العام، وأنماطها، وتوزيع الألوان. يتم تلخيص هذه الميزات في تمثيل أصغر يلتقط جوهر الصورة مع تجاهل التغيرات الطفيفة مثل عيوب الضغط أو القص الطفيف.

  3. توليد التجزئة: التجزئة هي سلسلة ثابتة الطول أو تسلسل ثنائي يمثل خصائص الصورة. تم تصميم التجزئات الإدراكية خصيصًا لضمان أن الصور المماثلة بصريًا تنتج تجزئات متطابقة تقريبًا، حتى لو تم تعديل الصور قليلاً (على سبيل المثال، إعادة الحجم أو التدوير أو الضغط).

  4. مقارنة الأكواد: بمجرد إنشاء الكود الخاص بصورة الاستعلام، يتم مقارنته بالأكواد المخزنة في قاعدة البيانات. تستخدم هذه المقارنة تقنيات مثل مسافة هامينغ، التي تقيس عدد البتات المختلفة بين كودين. تشير الفروق الصغيرة إلى تشابه أعلى بين الصور.

من خلال التركيز على الخصائص الإدراكية، يسمح هذه الطريقة لمحركات البحث العكسي عن الصور بتطابق ليس فقط الصور المطابقة ولكن أيضًا تلك التي خضعت لتعديلات طفيفة. يعتبر التجزئة الإدراكية نهجًا خفيف الوزن وفعالًا يجعل البحث العكسي عن الصور عمليًا حتى بالنسبة لمجموعات البيانات الضخمة.

تنفيذ بحث عن الصور العكسية باستخدام واجهة برمجة تطبيقات GroupDocs.Search

واجهة برمجة التطبيقات GroupDocs.Search تقدم حلاً متعدد الاستخدامات وفعالاً لتنفيذ قدرات البحث العكسي عن الصور في تطبيقاتك. باستخدام ميزات فهرسة الصور والبحث عنها، يمكنك بناء نظام لتحديد مواقع الصور المخزنة داخل المستندات أو الملفات المستقلة. إليك دليل خطوة بخطوة لإعداد البحث العكسي عن الصور باستخدام واجهة برمجة التطبيقات GroupDocs.Search.

الخطوة 1: إعداد البيئة

للبدء، قم بتضمين مكتبة GroupDocs.Search في مشروعك. يمكنك القيام بذلك عن طريق تثبيت المكتبة عبر NuGet لمشاريع .NET. فقط قم بتشغيل الأمر التالي في وحدة التحكم Package Manager:

Install-Package GroupDocs.Search

الخطوة 2: فهرسة الصور

لتمكين بحث الصور العكسي، تحتاج إلى فهرسة الصور من مجلدات المستندات الخاصة بك. يسمح لك GroupDocs.Search بفهرسة الصور المستقلة (مثل .png، .jpg) وكذلك الصور المدمجة في ملفات المستندات أو تنسيقات الحاويات مثل .zip. فيما يلي مثال على كيفية إنشاء فهرس وإضافة مستندات لفهرسة الصور:

string indexFolder = @"C:\MyIndex";
string documentFolder = @"C:\MyDocuments";

// Creating an index
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(documentFolder, indexingOptions);

هنا، يتم تمكين خيارات ImageIndexingOptions لضمان فهرسة جميع الصور (سواء كانت قائمة بذاتها أو مضمنة أو من حاويات).وهذا يجعل بحث الصور العكسي شاملاً.

الخطوة 3: البحث عن الصور المتعلقة

بمجرد فهرسة الصور، يمكنك البحث عن صور مشابهة من خلال توفير صورة مرجعية كاستعلام. قم بتخصيص البحث باستخدام ImageSearchOptions للتحكم في جوانب مثل مستوى التشابه المقبول (HashDifferences)، والحد الأقصى لعدد النتائج التي يمكن إرجاعها، وأنواع الملفات المحددة للبحث فيها. إليك كيف يبدو عملية البحث:

// 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(@"C:\MyDocuments\image0.png");

// Searching in the index
ImageSearchResult result = index.Search(searchImage, imageSearchOptions);

تولِّد عملية البحث تجزئة للصورة المرجعية وتقارنها مع الصور المفهرسة. يُحدد معلم HashDifferences العتبة للتشابه – كلما كانت القيمة أصغر، كان التطابق أكثر صرامة.

الخطوة 4: معالجة نتائج البحث

يحتوي كائن ImageSearchResult على جميع الصور التي تلبي معايير البحث. يمكنك التكرار عبر النتائج لاسترجاع معلومات حول الصور المطابقة، بما في ذلك مواقعها أو بياناتها الوصفية.

Console.WriteLine("Images found: " + result.ImageCount);
for (int i = 0; i < result.ImageCount; i++)
{
    FoundImageFrame image = result.GetFoundImage(i);
    Console.WriteLine(image.DocumentInfo.ToString());
}

Sample Output

على سبيل المثال، إذا تم تنفيذ البحث العكسي عن الصور باستخدام صورة استعلام، فقد يتم الحصول على النتائج التالية:

Images found: 2
C:\MyDocuments\image0.png
C:\MyDocuments\image193.png

هذا يعني أنه تم العثور على صورتين متطابقتين أو مشابهتين في الوثائق المفهرسة: صورة الاستعلام الأصلية (image0.png) ونتيجة أخرى (image193.png).

الخطوة 5: ضبط النظام

لتحسين بحثك العكسي عن الصور، يمكنك ضبط الخيارات مثل:

  • اختلافات الهاش: القيم الأقل تزيد من الدقة ولكن قد تفوت الإصدارات المعدلة قليلاً من الصورة.
  • عوامل تصفية البحث: قيّد عمليات البحث لأنواع الملفات أو تنسيقات الوثائق المحددة.
  • هيكل الفهرس: تحديث الفهرس دوريًا لتضمين الصور الجديدة أو إزالة الملفات القديمة.

استنتاج

البحث العكسي عن الصور هو تقنية قوية ذات تطبيقات واسعة في الصناعات الحديثة، من التجارة الإلكترونية إلى الطب الشرعي الرقمي. من خلال الاستفادة من أدوات مثل GroupDocs.Search API، يمكن للمطورين بسهولة تنفيذ أنظمة بحث صور قوية تحدد وتُقارن البيانات المرئية بكفاءة. مع ميزات مثل فهرسة الصور، عتبات التشابه القابلة للتعديل، ودعم الصور المدمجة أو المستقلة، يبسط هذا الـ API عملية إنشاء حلول بحث عكسي عن الصور مرنة ودقيقة. سواء كان ذلك لتتبع الصور المكررة، التحقق من الأصالة، أو اكتشاف المحتوى المتعلق، فإن تنفيذ هذه الوظيفة هو خطوة قيمة نحو تعزيز تجارب المستخدمين وكفاءة العمليات.

تحقق من هذه الروابط المفيدة لمزيد من التفاصيل والموارد:


انظر أيضًا