كل المقالات برمجة كيف طوّرت دقة استخراج النصوص من على الصور وملفات بي دي إف ؟ | خبرة أكثر من 7 سنوات

كيف طوّرت دقة استخراج النصوص من على الصور وملفات بي دي إف ؟ | خبرة أكثر من 7 سنوات

· 616 كلمة · 3 دقيقة قراءة

خبرتي مع تقنيات الأو سي آر OCR 🔗

أنشأت أول تطبيق لتحويل الصور إلى نصوص يوم 6 أكتوبر 2018 ، خبرتي أكثر من 7 سنوات. خلال السنوات السابقة طوّرت ، وتعلمت ، وأعدت كتابة ، وجربت أمور كثيرة بخصوص تقنيات استخلاص النصوص من على الصور.

أنشأت كل هذه التطبيقات المتخصصة في استخلاص النصوص من الصور:

بعد كل هذه السنوات، لدي مقولة بسيطة أريد أن أقولها “ما يتم قياسه ، يتم تطويره”. هذه المقولة مأخوذة من كتاب “The Effective Executive” (المدير التنفيذي الفعّال) الذي كتبه بيتر إف دراكتر.

أفكار لتحسين دقة التعرف على النصوص (OCR accuracy) 🔗

تحسين دقة التعرف على النصوص المستخرجة ليست مهمة بسيطة. هذه هي الخطوات التي أعرفها لتحسين دقة النصوص المستخلصة من على الصور:

  • استخدام صورة ذات دقة عالية (High DPI photo)
  • معالجة الصور قبل مرحلة استخراج النصوص حتى تكون النصوص المكتوبة واضحة ، مثل:
    • زيادة دقة الصورة (DPI) بشكل إصطناعي ليكون في حدود 300 dpi
    • تحويل الصور إلى أبيض وأسود
    • تحويل درجات الألوان إلى اللون الأبيض والأسود فقط كـ لونين فقط وهذه العملية تُسمّى binarization with adaptive threshold
    • مساوات الأسطر النصية الملتوية (dewarp text)
  • استخدام أفضل موديل (best models) من تيسار آكت tesseract OCR بغض النظر عن حجم ملف المودل
  • تحسين دقة المودل بتدريبه على صور جديدة (refine “traineddata” models)
  • معالجة النصوص بعد استخراجها بطرق متعددة مثل التصحيح التلقائي للأخطاء الإملائية (auto-correct) مثل تصحيح كلمة boxmg إلى boxing.

هذه الأفكار أدت إلى تحسين أداء ودقة التعرف على النصوص واستخلاصها من على الصور إلى حدٍ كبير. كل هذه الأفكار جميلة ولكن هناك برمجيات تستخلص النصوص بدقة أكبر مثل Google ML kit من جوجل التي تعطي دقة 99% من الصور الواضحة.

كيف تقيس نسبة التحسن في دقة استخلاص النصوص ؟ 🔗

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

مواصفات عينة الصور المطلوبة 🔗

أحتاج إلى جمع عينة من الصور التي تمثل المستندات المصورة الواقعية. لذلك فأنا أحتاج إلى:

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

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

التطبيق القادم 🔗

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

سأكتب مقالات أخرى مخصصة لكل الإستراتيجيات التي استخدمتها لتحسين دقة التعرف على النصوص واستخراجها من على الصور وملفات البي دي إف. تابعني إن كنت مهتمة بقراءة هذه المقالات المستقبلية.

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

التصنيفات: برمجة
مشاركة:
الترجمات:  English (How to improve OCR accuracy ? | my 5-year experience)