كيفية تنفيذ التعرف البصري على الأحرف في بايثون



ستزودك هذه المقالة بمعرفة مفصلة وشاملة عن كيفية تنفيذ التعرف البصري على الأحرف في بايثون.

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

تطبيقات التعرف الضوئي على الحروف

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





charachters

يرجع الفضل في إدخال التعرف الضوئي على الحروف باستخدام لغة البرمجة اللغوية العصبية إلى إضافة مكتبات متعددة الاستخدامات مثل 'Tesseract' و 'Orcad'. ساعدت هذه المكتبات العديد من المبرمجين والمطورين على تبسيط تصميم الكود الخاص بهموالسماح لهم بقضاء المزيد من الوقت في جوانب أخرى من مشاريعهم. نظرًا لأن الفوائد هائلة ، فلنلقِ نظرة خاطفة على ماهيتها وكيف يتم تنفيذها.



بناء التعرف البصري على الحروف في بايثون

نحتاج أولاً إلى عمل فصل دراسي باستخدام 'pytesseract'. سيمكننا هذا الفصل من استيراد الصور ومسحها ضوئيًا. في هذه العملية ، سيتم إخراج الملفات بالملحق “ocr.py”. دعونا نرى الكود أدناه. تُستخدم كتلة الوظيفة 'process_image' لصقل النص الذي نحصل عليه.

تمت إضافة معالج المسار التالي ووظيفة العرض إلى التطبيق (app.py).

كود معالج جهاز التوجيه



الفرق بين البحث المتصل وغير المتصل
// ROUTE HANDLER @ app.route ('/ v {} / ocr'.format (_VERSION)، features = [' POST ']) def ocr (): try: url = request.json [' image_url '] إذا jpg 'in url: output = process_image (url) إرجاع jsonify ({' output ': output}) else: return jsonify ({' error ':' only .jpg files، please '}) باستثناء: return jsonify ({' خطأ ':' هل قصدت إرسال: {'image_url': 'some_jpeg_url'} '})

كود محرك OCR

// OCR ENGINE يستورد طلبات استيراد pytesseract من PIL استيراد صورة من استيراد PIL ImageFilter من StringIO استيراد StringIO def process_image (url): image = _get_image (url) image.filter (ImageFilter.SHARPEN) إرجاع pytesseract.image_to_string (صورة) def _get_image ( url): إرجاع Image.open (StringIO (request.get (url) .content)) //

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

استيراد تسجيل استيراد نظام التشغيل من تسجيل الاستيراد المنسق ، FileHandler من flask استيراد Flask ، طلب ، jsonify من ocr import process_image _VERSION = 1 # إصدار API

نقوم بإضافة استجابة JSON لوظيفة محرك OCR وهي 'process_image ()'. يتم استخدام JSON لجمع المعلومات من وإلى واجهة برمجة التطبيقات. نقوم بتمرير الرد في ملف كائن باستخدام مكتبة 'صورة' من PIL لتثبيته.

يرجى ملاحظة أن هذا الرمز يعمل بشكل أفضل فقط مع صور .jpg فقط. إذا استخدمنا مكتبات معقدة يمكن أن تتميز بتنسيقات صور متعددة ، فيمكن معالجة جميع الصور بفعالية. لاحظ أيضًا ، إذا كنت مهتمًا بتجربة هذا الرمز بنفسك ، فيرجى تثبيت PIL الذي تم شراؤه من مكتبة 'Pillow' أولاً

& bull ابدأ بتشغيل التطبيق ، وهو 'app.py':

// $ cd ../home/flask_server/ $ python app.py //

& bull ثم ، في محطة طرفية أخرى:

// $ curl -X POST http: // localhost: 5000 / v1 / ocr -d '{' image_url ':' some_url '}' -H 'Content-Type: application / json'

فمثلا:

// $ curl -X POST http: // localhost: 5000 / v1 / ocr -d '{' C: UsersakashDownloadsPic1 ':' https://edureka.com/images/blog_images/ocr/ocr.jpg '}' - H 'نوع المحتوى: application / json' {'output': 'ABCDEnFGH I JnKLMNOnPQRST'} //

مزايا وعيوب محرك التعرف الضوئي على الحروف

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

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

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

بهذا نكون قد وصلنا إلى نهاية مقالة التعرف الضوئي على الحروف في بايثون. أتمنى أن تفهم كيف يعمل التعرف الضوئي على الحروف بالضبط.

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

الأدوار والمسؤوليات الرئيسية سكروم pdf

لديك سؤال لنا؟ أذكرها في قسم التعليقات في 'التعرف البصري على الأحرف في Python' وسنعود إليك.