البرمجة

تحسين استجابة النص مع Google Cloud Vision

التحدي الذي تواجهه هو استخراج النص المطلوب من الاستجابة التي تتلقاها من خدمة Google Cloud Vision API، والتي تشمل عادةً نصوصًا إضافية بالإضافة إلى النص الرئيسي الذي ترغب في الحصول عليه. يمكنك تطبيق خطوات بسيطة لتصفية النص والحصول على النص الذي تريده بدقة. هيا نبدأ!

أولاً، يجب عليك فهم تنسيق البيانات التي تحصل عليها من الاستجابة. يبدو أن كل عنصر يتضمن تنسيقًا مثل “score: text” حيث يمثل “score” درجة الثقة بالنسبة للنص، و “text” يمثل النص نفسه.

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

ثالثاً، بمجرد تحديد النص الذي تريده، يمكنك استخدام الدوال المناسبة لاستخراج النص بشكل صحيح. في هذه الحالة، يمكنك استخدام وظيفة مثل substring لقص الجزء غير المرغوب من النص.

تفضل هنا بعض التغييرات التي يمكنك إجراؤها على الكود الخاص بك لتحقيق ذلك:

java
private String convertResponseToString(BatchAnnotateImagesResponse response) { String message = "I found this text:\n\n"; List labels = response.getResponses().get(0).getTextAnnotations(); if (labels != null && !labels.isEmpty()) { // Assuming the first annotation is the main text you want EntityAnnotation mainText = labels.get(0); String description = mainText.getDescription(); // Remove any unwanted prefixes like "null:" and trim the text description = description.replace("null:", "").trim(); message += description; } else { message += "nothing"; } return message; }

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

المزيد من المعلومات

بالطبع، ها هو المقال المكتمل:


عند استخدام واجهة برمجة التطبيقات (API) لخدمة Google Cloud Vision للكشف عن النصوص في الصور، قد تواجه التحديات في استخراج النص المرغوب بدقة من الاستجابة التي تتلقاها. في هذا المقال، سنلقي نظرة على كيفية تحسين استجابة النص من خلال تطوير الكود للحصول على النص الرئيسي المطلوب دون البادئات غير المرغوب فيها.

عند استخدام واجهة برمجة التطبيقات لخدمة Google Cloud Vision، يتم استرداد النتائج عادةً في تنسيق يحتوي على درجة الثقة (score) مع النص المكتشف. ومن ثم، يُعرض النص بالشكل التالي: “score: text”. ومن المهم فهم هذا التنسيق لاستخراج النص بدقة.

لتحسين استجابة النص، يمكننا تطبيق الخطوات التالية:

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

  2. تنقيح النص: بعد تحديد النص الرئيسي، يجب أن نقوم بتنقيحه للحصول على النص المرغوب. في الحالة الراهنة، نريد إزالة أي بادئات غير مرغوب فيها مثل “null:”.

لتنفيذ هذه الخطوات، يمكن تعديل الكود بالشكل التالي:

java
private String convertResponseToString(BatchAnnotateImagesResponse response) { String message = "I found this text:\n\n"; List labels = response.getResponses().get(0).getTextAnnotations(); if (labels != null && !labels.isEmpty()) { // Assuming the first annotation is the main text you want EntityAnnotation mainText = labels.get(0); String description = mainText.getDescription(); // Remove any unwanted prefixes like "null:" and trim the text description = description.replace("null:", "").trim(); message += description; } else { message += "nothing"; } return message; }

بتطبيق هذه التغييرات، ستتمكن من استخراج النص الرئيسي المرغوب بدقة وتحسين استجابة النص من Google Cloud Vision API. يجب دائمًا تكييف الكود وفقًا لتنسيق البيانات الذي تتلقاه من الخدمة لضمان الحصول على النتائج المرجوة.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

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