لتحديد الكائنات المكتشفة وإبرازها بشكل مرئي في صورة ما باستخدام مكتبة Pillow، يمكننا اتباع عملية خطوة بخطوة. مكتبة Pillow هي مكتبة تصوير قوية بلغة Python توفر نطاقًا واسعًا من إمكانيات معالجة الصور. ومن خلال الجمع بين إمكانيات مكتبة Pillow ووظيفة اكتشاف الكائنات في Google Vision API، يمكننا تحقيق هذه المهمة بكفاءة.
فيما يلي خطوات التعرف على الكائنات المكتشفة وإبرازها بشكل مرئي في صورة ما باستخدام مكتبة Pillow:
1. قم بتثبيت المكتبات اللازمة: ابدأ بتثبيت المكتبات المطلوبة. قم بتثبيت الوسادة باستخدام الأمر `pip install Pillow`. بالإضافة إلى ذلك، ستحتاج إلى إعداد Google Vision API وتثبيت مكتبة عميل Google Cloud لـ Python.
2. المصادقة باستخدام Google Vision API: لاستخدام Google Vision API، يتعين عليك مصادقة تطبيقك. اتبع الوثائق المقدمة من Google للحصول على بيانات الاعتماد اللازمة.
3. قم بتحميل الصورة وتحليلها: استخدم مكتبة Pillow لتحميل الصورة التي تريد تحليلها. يمكنك استخدام الطريقة `Image.open()` لفتح ملف الصورة. بمجرد تحميل الصورة، قم بتحويلها إلى تنسيق متوافق مع Google Vision API، مثل JPEG أو PNG.
4. أرسل الصورة إلى Google Vision API: استخدم مكتبة عميل Google Cloud لـ Python لإرسال الصورة إلى Google Vision API لاكتشاف الكائنات. يمكن القيام بذلك عن طريق إنشاء كائن طلب باستخدام بيانات الصورة واستدعاء الطريقة المناسبة، مثل `image_annotator_client.object_localization().annotate_image()`.
5. استرداد نتائج اكتشاف الكائنات: استخرج نتائج اكتشاف الكائنات من الاستجابة المستلمة من Google Vision API. ستحتوي الاستجابة على معلومات حول الكائنات المكتشفة، مثل المربعات المحيطة بها، والتسميات، ودرجات الثقة.
6. ارسم مربعات محيطة على الصورة: استخدم مكتبة الوسادة لرسم مربعات محيطة حول الكائنات المكتشفة في الصورة. يمكنك استخدام الأسلوب `ImageDraw.Draw()` لإنشاء كائن رسومي، ثم استخدام الأسلوب `draw.rectangle()` لرسم المربعات المحيطة.
7. إضافة تسميات ودرجات إلى الصورة: لتحسين التصور، يمكنك إضافة تسميات ودرجات ثقة إلى الصورة. استخدم طريقة `draw.text()` من مكتبة Pillow لتراكب التسميات والنتائج على الصورة.
8. حفظ الصورة ذات التعليقات التوضيحية وعرضها: احفظ الصورة ذات التعليقات التوضيحية باستخدام طريقة `Image.save()` من مكتبة Pillow. يمكنك اختيار التنسيق المطلوب، مثل JPEG أو PNG. اختياريًا، قم بعرض الصورة ذات التعليقات التوضيحية باستخدام طريقة `Image.show()`.
باتباع هذه الخطوات، يمكنك تحديد الكائنات المكتشفة وإبرازها بشكل مرئي في الصورة باستخدام مكتبة Pillow. يتيح الجمع بين إمكانات معالجة الصور القوية التي توفرها وسادة Pillow ووظيفة اكتشاف الكائنات في Google Vision API تحليلًا فعالاً ودقيقًا للصور.
على سبيل المثال:
python from PIL import Image, ImageDraw from google.cloud import vision # Load and analyze the image image_path = 'path/to/your/image.jpg' image = Image.open(image_path) image_data = image.tobytes() # Authenticate with the Google Vision API client = vision.ImageAnnotatorClient.from_service_account_json('path/to/your/credentials.json') # Send the image to the Google Vision API for object detection response = client.object_localization(image=vision.Image(content=image_data)) objects = response.localized_object_annotations # Draw bounding boxes on the image draw = ImageDraw.Draw(image) for obj in objects: bbox = obj.bounding_poly.normalized_vertices draw.rectangle([(bbox[0].x * image.width, bbox[0].y * image.height), (bbox[2].x * image.width, bbox[2].y * image.height)], outline='red', width=3) # Add labels and scores to the image label = obj.name score = obj.score draw.text((bbox[0].x * image.width, bbox[0].y * image.height - 15), f'{label} ({score:.2f})', fill='red') # Save and display the annotated image annotated_image_path = 'path/to/save/annotated_image.jpg' image.save(annotated_image_path) image.show()
في هذا المثال، نقوم أولاً بتحميل الصورة وتحليلها باستخدام مكتبة Pillow. بعد ذلك، نقوم بالمصادقة باستخدام Google Vision API وإرسال الصورة لاكتشاف الكائنات. نقوم باسترداد نتائج اكتشاف الكائنات واستخدام مكتبة Pillow لرسم مربعات محيطة حول الكائنات المكتشفة في الصورة. بالإضافة إلى ذلك، نقوم بإضافة التصنيفات ودرجات الثقة إلى الصورة. وأخيرا، نقوم بحفظ وعرض الصورة المشروحة.
أسئلة وأجوبة أخرى حديثة بخصوص فهم الصور المتقدم:
- ما هي بعض الفئات المحددة مسبقًا للتعرف على الكائنات في Google Vision API؟
- ما هو الأسلوب الموصى به لاستخدام ميزة اكتشاف البحث الآمن مع تقنيات الإشراف الأخرى؟
- كيف يمكننا الوصول إلى قيم الاحتمالية لكل فئة وعرضها في التعليق التوضيحي للبحث الآمن؟
- كيف يمكننا الحصول على شرح البحث الآمن باستخدام Google Vision API في بايثون؟
- ما هي الفئات الخمس المضمنة في ميزة اكتشاف البحث الآمن؟
- كيف تكتشف ميزة البحث الآمن في Google Vision API المحتوى الصريح داخل الصور؟
- كيف يمكننا تنظيم معلومات الكائن المستخرجة بتنسيق جدولي باستخدام إطار بيانات الباندا؟
- كيف يمكننا استخراج جميع التعليقات التوضيحية للكائن من استجابة واجهة برمجة التطبيقات؟
- ما المكتبات ولغة البرمجة المستخدمة لتوضيح وظائف Google Vision API؟
- كيف تقوم Google Vision API باكتشاف الكائنات وتوطينها في الصور؟
عرض المزيد من الأسئلة والأجوبة في الفهم المتقدم للصور