ملخص مشروع التخرج الأول:

ظهر التعلم العميق ، وهو أحد أساليب التعلم الآلي ، في عام 2006 وانتشر بشكل كبير في السنوات العشر الماضية ، حيث تم استخدامه في العديد من عمليات التعرف والتصنيف. يمكن استخدام التصنيف في العديد من المجالات مثل تصنيف النباتات والملابس وحتى الخطوط. تم استخدام عمليات التصنيف على نطاق واسع في العديد من اللغات لتصنيف نوع النص ، على عكس اللغة العربية ، التي لديها القليل من البحث لتصنيف الخط. هناك العديد من أنواع الخطوط العربية التي يصعب على القارئ غير المألوف التمييز بينها ، وعادة ما تكون مكتوبة بخط اليد. أيضًا ، معظم التطبيقات هي إما لتمييز أنواع الخطوط للغات غير العربية ، أو للمناهج العامة للتعرف على الأنماط. يهدف هذا البحث إلى تصنيف الخطوط العربية التسعة الأكثر شيوعًا باستخدام الشبكات العصبية التلافيفية CNN. تم تدريب شبكات CNN العصبية على تمييز الخطوط العربية باستخدام مجموعة صور مشفرة مسبقًا. تم استخدام صور عالية الدقة ولكن بتكلفة منخفضة بسبب تطور التكنولوجيا. تم استخدام لغة Python وتم استخدام وظائف مكتبة TensorFlow و Keras لبناء وتدريب نموذج CNN. تم الحصول على نتائج دقة أعلى من 99.8٪ وهي أعلى نسبة تم الحصول عليها في تصنيف الخط العربي باستخدام CNN. تم إنشاء تطبيق Android بسيط بلغة Java يقوم بإجراء عملية الاختبار على الصورة المراد تصنيفها. تم ربط برنامج تصنيف الصور في Python بتطبيق Android باستخدام خادم PHP.

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

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

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

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

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

يساعد هذا العمل في تسهيل معرفة المستخدمين لأنواع الخطوط سواء لغرض التعلم أو التعليم للناس أو المؤسسات مثل أكاديميات تعليم الخطوط ومعلمي اللغة العربية بشكل خاص والمتحدثين بغير العربية.

تم في هذا البحث الاستنتاج الآتي:
تصنيف 9 خطوط عربية باستخدام CNN ، كانت نتائج الدقة أعلى من 99.8٪ وهي أعلى نسبة تم الوصول إليها حتى الآن.
الاحتفاظ بعينة ناتجة عن العملية التدريبية لاستخدامها في عمليات الاختبار.
ربط تطبيق Android بسيط لمساعدة المستخدمين على إجراء عملية الاختبار على أي صورة.

الاستنتاجات:
 معرفة التعلم العميق باستخدام شبكات CNN ، حيث تعلمنا كيفية إنشاء نموذج لبيانات التدريب وكيفية استخدامه للتدريب والتحقق ، وأخيرًا كيفية تخزين الأوزان النهائية واستخدامها في عملية الاختبار.
 القدرة على إنشاء تطبيق Android بسيط ، حيث تعلمنا إنشاء واجهة المستخدم الرسومية المناسبة ، وكيفية إضافة الصور والأيقونات إليها ، وكيفية الوصول إلى كاميرا الجهاز والتقاط صورة لها ، وإرسال صورة إلى الخادم واستلام رسالة نصية. من الخادم ، تفاعل مع محاكي الهاتف باستخدام برنامج Android Studio.
 معرفة منصة TensorFlow والقدرة على استخدام وظائفها في عملية التدريب وصمة عار.
 تعمق في مكتبة OpenCV والقدرة على توظيف وظائفها في إنشاء مجموعات البيانات.
 تعلم أساسيات لغة Python والقدرة على استخدام مكتباتها ، مثل Numby و TensorFlow و Keras و CV2 وغيرها.