التعرّف البصري على الحروف (OCR) هو تحويل صور النص، كالمسوح الضوئية والصور الفوتوغرافية، إلى بيانات حرفية مقروءة آليًا.
يجيب OCR عن سؤال واحد: أي الحروف تظهر على هذه الصفحة. وهو لا يقرر ماهية المستند، ولا أي القيم تهم، ولا ما إذا كان أي منها صحيحًا.
ما يُنتجه OCR فعلًا
يُعيد محرك OCR الحديث أكثر من سلسلة نصية مسطحة. فالمخرَج المعتاد يشمل الحروف المتعرَّف عليها، وإحداثيات إحاطتها على الصفحة، وقيمة ثقة لكل حرف أو لكل كلمة، ووصفًا للبنية كالأسطر والكتل وترتيب القراءة.
وهذا المخرَج البنيوي هو سبب كون جودة OCR ليست رقمًا واحدًا. فيمكن للمحرك أن يقرأ كل حرف قراءة صحيحة ومع ذلك يُعيدها في ترتيب يجعل النتيجة بلا نفع، وهذا يحدث روتينيًا مع التنسيقات متعددة الأعمدة والأشرطة الجانبية والنماذج التي تكون فيها التسميات والقيم متجاورة بصريًا ومتباعدة في التسلسل الأساسي.
تحليل التنسيق وترتيب القراءة
قبل التعرّف، تُقسَّم الصفحة: كتل النص تُفصل عن الصور، وتُحدَّد الأعمدة، وتُكشف الجداول، وتُنحَّى الترويسات والتذييلات. وهذا هو تحليل التنسيق، وهو ما يحدد إن كانت الحروف تعود في تسلسل يتعرّف عليه الإنسان كمحتوى المستند.
والجداول هي الصعوبة المعتادة. فالجدول بلا حدود ظاهر بصريًا وغير مرئي بنيويًا، لذا يجب استنباط حدود خلاياه من محاذاة المسافات البيضاء. والخلايا المدمجة والنص المنعطف داخل الخلية والاستمرار عبر فاصل صفحة تكسر كلها الكشف السطحي.
كشف اللغة والحرف الكتابي
المستندات متعددة اللغات تحتاج إلى تحديد اللغة قبل التعرّف أو خلاله، لأن نماذج الحروف خاصة بكل لغة وكذلك القواميس المستخدمة لتصحيح الأشكال الملتبسة. والمستندات مختلطة الحروف الكتابية، وهي شائعة في العربية وفي أوراق العمل في منطقة الخليج حيث تجلس أسماء المنتجات الإنجليزية داخل نص عربي، تحتاج إلى كشف لكل منطقة لا إلى إعداد لغة واحد على مستوى المستند.
والحروف الكتابية التي تُقرأ من اليمين إلى اليسار تضيف تعقيدًا في ترتيب القراءة منفصلًا عن دقة الحروف. فيمكن للنظام أن يحدد كل حرف عربي تحديدًا صحيحًا ومع ذلك يُصدرها في ترتيب يعكس المعنى عند تشابكها مع نص لاتيني وأرقام.
لماذا لا يكون مخرَج OCR بيانات مهيكلة
هذا هو التمييز الذي يهم تجاريًا، وهو الأكثر تمويهًا. فـ OCR يعطيك نصًا. أما العملية فتحتاج قيمًا: رقم هذه الفاتورة، وذلك الإجمالي، وهذه بنود السطور، وتاريخ هذا التوقيع.
والانتقال من الأول إلى الثاني يقتضي تحديد ماهية المستند، وهذا هو تصنيف المستندات، ثم تحديد قيم معيّنة وتفسيرها، وهذا هو استخراج بيانات المستندات. وذلك المسار، مع التحقق والتوجيه، هو المعالجة الذكية للمستندات. و OCR هو أول مرحلة جوهرية فيها، لا بديل عنها.
واختبار مفيد: إذا كان مخرَج نظامك قابلًا للبحث لكن لا يزال على شخص أن يقرأ كل مستند ليُدخل القيم في نظام آخر، فأنت قد نشرت OCR، لا أتمتة مستندات.
الدقة تعتمد على المدخل أكثر من المحرك
عادةً ما تجد الفرق التي تقارن محركات OCR أن الفروق أصغر مما توقعت، لأن جودة الصورة هي المهيمنة. فالدقة دون 200 نقطة في البوصة تقريبًا، والضغط الشديد بصيغة JPEG، والميل، والظلال في صور الهاتف، والمخرَج الباهت من الطابعات الحرارية، والمسح بتباين خاطئ، تكلّف كلها دقةً أكثر من الفارق بين محركات كفؤة.
ولهذا تحمل المعالجة الأولية وزنًا غير متناسب. فتصحيح الميل، وإزالة النقاط، وتسوية التباين، ورفض الصور التي تقع دون حد أدنى للجودة قبل محاولة التعرّف، تميل إلى تحسين النتائج من الطرف إلى الطرف أكثر من تبديل المحركات.
والنتيجة اللازمة تستحق التصريح بوضوح: فالمشروع الذي يُصلح قناة الالتقاط عنده، مثلًا باستبدال المستندات المصوّرة بتطبيق مسح يفرض الدقة والتأطير، يكسب غالبًا أكثر من مشروع يصرف الجهد نفسه على اختيار النموذج.
ما يخطئ عادةً
عرض الدقة على مستوى الحرف. دقة حروف بنسبة تسعة وتسعين بالمئة تبدو ممتازة، ويمكن أن تعني مع ذلك أن نسبة معتبرة من المستندات تحتوي حقلًا خاطئًا واحدًا على الأقل، لأن الأخطاء تتركّز في الأقلية منخفضة الجودة بدلًا من أن تتوزع بالتساوي.
معاملة الثقة كصواب. قيمة ثقة OCR العالية تشير إلى يقين المحرك بشأن أشكال الحروف. وهي لا تقول شيئًا عما إذا كانت القيمة هي الصحيحة للحقل. راجع درجة الثقة.
افتراض أن خط اليد داخل النطاق. التعرّف على النص المكتوب بخط اليد مشكلة مختلفة بدقة مختلفة جوهريًا، والحقول المقيّدة كالتواريخ في مربعات تتصرف تصرفًا مختلفًا جدًا عن التعليقات الحرة.
ينفّذ Contellect One التعرّف في مرحلة القراءة من المعالجة الذكية للمستندات.
