Hough Transform
يقدم هذا الموضوع تطبيقاً عملياً لتقنية أساسية تستخدم بشكل واسع في تطبيقات معالجة الصورة لإكتشاف الأشكال الهندسية و هي تقنية تحويل هوف.
في عام 1964 استخدمت معالجة الصور الرقمية processing Image Digital لتحسين وتصحيح صور القمر المنقولة من المركبة الفضائية رينجر Ranger إلى وكالة الفضاء الأميركية ناسا NASA .ومنذ ذلك التاريخ وحتى الان تطور مجال معالجة الصور الرقمية . فبالإضافة إلى تطبيقات برامج الفضاء تستخدم الآن تقنيات معالجة الصور الرقمية لحل الكثير من المسائل. وبالرغم من اختالف هذه المسائل فهي تحتاج إلى وسائل تقوم بتحسين المعلومات التصويرية information pictorial للصور، وذلك كي تصبح قابلة للتأويل والتحليل البشري. ففي الطب، على سبيل المثال تستخدم الحواسب لتحسين تباين الصور الإشعاعية، أو لتمثيلها بمستويات لونية، وذلك من أجل تسهيل قراءة محتوياتها. وقد يستخدم الجيولوجيون نفس التقنيات أو ما يشابهها لدراسة أنماط التلوث في صور فضائية و جوية. وفي الفيزياء والمجالات المتعمقة به تستخدم تقنيات الكمبيوتر لتحسين صور التجارب بشكل روتيني في مناطق مثل البلازما عالية الطاقة و الميكروسكوب الإكتروني. وتوجد تطبيقات ناجحة مماثلة لطرق معالجة الصورة في علم الفلك و البيولوجيا والطب النووي و تطبيق القانون والدفاع والتطبيقات الصناعية.
تهدف عمليات معالجة الصور الرقمية الى معالجة وتحميل المعلومات الموجودة في الصورة في سبيل تحسين أو تصحيح أو تحليل أو - بطريقة ما- تغيير الصورة. تتمثل الصورة في المجال الرقمي بنقاط متقطعة لقيم السطوع المعرفة رقمياً. ومن خلال معالجة قيم السطوع هذه يستطيع الحاسب القيام بعمليات معقدة بسهولة نسبية. ويمكن تصنيف عمليات معالجة الصورة الرقمية الى خمس فئات: تحسين الصور Enhancement وترميم الصور Restoration و تحليل الصور Analysis و ضغط الصور Compression و توليد الصور Synthesis . وتعتبر عمليات تحسين الصور الأكثر استخداماً. وهي تهدف إما إلى جعل الصورة أفضل مرئياً أو ملائمة أكثر للمعالجة اللاحقة، أو تهدف الى تحسين موضوعي للصورة لتصحيح تشوهات معروفة. ومن التقنيات الهامة التي تدخل ضمن إطار هذه الفئة هي التقنيات التي تسعى الى اكتشاف الحواف في الصور الرقمية. هناك طرق عديدة الإكتشاف الحواف مثل سوبل Sobel و بريويت Prewitt و مشغل كاني Canny ،وكل منها له تطبيقاته المفيدة. وسأقدم مشغل كاني هنا كمثال لكاشفات الحواف لأهميتة كعملية تحضيرية لتحويل هوف.
يستقبل مشغل كاني كمدخل صورة ذات تدرج رمادي، وينتج كمخرج صورة تبين مواضع تعقبات الكثافة المتقطعة التي تمثل الحواف. ويعمل وفق عملية متعددة المراحل
تحويل هوف هو تقنية عامة للتعرف على مواضع و اتجاهات أنواع معينة من المعالم في الصور الرقمية. لقد طوره ريتشارد دودا وبيتر هارت وسمي بـ " تحويل هوف المعمم" بعد براءة الإختراع المسجلة باسم باول هوف الذي تم ترخيصه باسم شركة IBM وقد انتشر استخدامه في تطبيقات رؤية الحاسب ومنذ صياغته الأولى خضع هذا التحويل الإختبارات مكثفة والتي نتجت على شكل قوانين عديدة وتطبيقات مختلفة في معالجة الصورة إن دخل تحويل هاف هو صورة ثنائية تمت معالجتها بواسطة بعض أنواع كاشفات الحافة والعتبة. و يجب أن يكون الدخل بالتحديد صورة حواف رقمية ثنائية. ُ يستخدم تحويل هوف الإكتشاف أشكال هندسية كالخطوط المستقيمة والدوائر والقطوع وماشابهها.
تبعا لخوارزمية هوف فإن الخط المستقيم هو مجموعة من النقاط الواقعة على استقامة واحدة. ولذلك يمكن أن يتراوح عدد النقاط في الخط المستقيم من نقطة واحدة إلى عدد البكسلات على طول قطر الصورة. ويتحكم بنوعية الخط رياضياً تحويل هاف هو تابع يقوم بنقل نقاط الصورة من المستوي الديكارتي R إلى المستوي القطبي p
المتطلبات :
Python 3.7
pip install opencv
numpy
لعرض الكود البرمجي فالأسفل يوجد رابط GitHub