لاسترداد الألوان السائدة في صورة ما باستخدام عميل Vision API، يمكننا الاستفادة من ميزة الكشف عن خصائص الصورة التي توفرها Google Vision API. تتيح لنا هذه الأداة القوية تحليل وفهم المحتوى المرئي للصورة، بما في ذلك تحديد الألوان السائدة الموجودة.
الخطوة الأولى هي إعداد عميل Vision API والمصادقة على طلباتنا. وبمجرد الانتهاء من ذلك، يمكننا إرسال صورة إلى واجهة برمجة التطبيقات لتحليلها. تدعم واجهة برمجة التطبيقات (API) تنسيقات الصور المختلفة مثل JPEG وPNG وGIF.
لاسترداد الألوان السائدة، نحتاج إلى الاستفادة من ميزة `imagePropertiesAnnotation` في واجهة برمجة التطبيقات. توفر لنا هذه الميزة معلومات حول الألوان الموجودة في الصورة، بما في ذلك الألوان السائدة. يتم تمثيل الألوان السائدة بقيم RGB الخاصة بها ويتم ترتيبها بناءً على مدى انتشارها في الصورة.
عند تقديم طلب إلى واجهة برمجة التطبيقات (API)، نحتاج إلى تحديد معلمة `features` كـ `IMAGE_PROPERTIES`. وهذا يخبر واجهة برمجة التطبيقات بأننا نريد استخراج خصائص الصورة، بما في ذلك الألوان السائدة. فيما يلي مثال لكيفية إجراء استدعاء API باستخدام Python:
python import base64 from google.cloud import vision def get_dominant_colors(image_path): client = vision.ImageAnnotatorClient() with open(image_path, 'rb') as image_file: content = image_file.read() image = vision.Image(content=content) features = [vision.Feature(type_=vision.Feature.Type.IMAGE_PROPERTIES)] response = client.annotate_image({ 'image': image, 'features': features }) colors = response.image_properties_annotation.dominant_colors.colors dominant_colors = [] for color_info in colors: color = color_info.color rgb = (color.red, color.green, color.blue) dominant_colors.append(rgb) return dominant_colors
في المثال أعلاه، نقوم أولاً باستيراد المكتبات الضرورية والمصادقة على عميل Vision API. بعد ذلك، نقرأ ملف الصورة وننشئ كائن Vision API `Image` بمحتوى الصورة. بعد ذلك، نحدد ميزة `IMAGE_PROPERTIES` ونقوم باستدعاء واجهة برمجة التطبيقات باستخدام أسلوب `annotate_image`.
تحتوي استجابة واجهة برمجة التطبيقات (API) على الألوان السائدة في حقل "image_properties_annotation". نكرر الألوان ونستخرج قيم RGB. وأخيرا، نعيد قائمة الألوان السائدة.
من المهم ملاحظة أن الألوان السائدة التي تعرضها واجهة برمجة التطبيقات (API) تعتمد على الانتشار العام للألوان في الصورة. وهذا يعني أن الألوان التي تم إرجاعها قد لا تمثل بالضرورة العناصر الأكثر وضوحًا في الصورة. ومع ذلك، فهي توفر مؤشرًا جيدًا للوحة الألوان السائدة.
لاسترداد الألوان السائدة في صورة ما باستخدام عميل Vision API، نحتاج إلى الاستفادة من ميزة `imagePropertiesAnnotation`. من خلال إجراء استدعاء API باستخدام المعلمات المناسبة، يمكننا الحصول على الألوان السائدة كقيم RGB. يمكن أن تكون هذه الوظيفة مفيدة في العديد من التطبيقات، مثل تصنيف الصور وتحليل المحتوى والبحث المرئي.
أسئلة وأجوبة أخرى حديثة بخصوص واجهة برمجة تطبيقات Google Vision EITC/AI/GVAPI:
- ما هي بعض الفئات المحددة مسبقًا للتعرف على الكائنات في Google Vision API؟
- هل تعمل Google Vision API على تمكين التعرف على الوجه؟
- كيف يمكن إضافة نص العرض إلى الصورة عند رسم حدود الكائن باستخدام وظيفة "draw_vertices"؟
- ما هي معلمات طريقة "draw.line" في الكود المقدم، وكيف يتم استخدامها لرسم الخطوط بين قيم القمم؟
- كيف يمكن استخدام مكتبة الوسائد لرسم حدود الكائنات في بايثون؟
- ما هو الغرض من وظيفة "draw_vertices" في الكود المقدم؟
- كيف يمكن لـ Google Vision API المساعدة في فهم الأشكال والكائنات في الصورة؟
- كيف يمكن للمستخدمين استكشاف الصور المشابهة بصريًا التي توصي بها واجهة برمجة التطبيقات؟
- ما العناصر المختلفة المتوفرة في كائن الاستجابة لميزة اكتشاف الويب الخاصة بـ Google Vision API؟
- كيف تساعد ميزة اكتشاف الويب في إنشاء علامات للصور التي تم تحميلها؟
عرض المزيد من الأسئلة والأجوبة في EITC/AI/GVAPI Google Vision API