تفاصيل العمل

الكود اللي كتبته هو برنامج تفاعلي بالبايثون لمعالجة الصور باستخدام تقنيات معالجة الصور الرقمية و تحويل فورييه (FFT) لإزالة نوعين من التشويش (Noise):

الفكرة العامة:

يفتح نافذة صغيرة بـ Tkinter لاختيار صورة ونوع النويز (Periodic أو Salt & Pepper).

يقرأ الصورة ويحوّلها للتدرج الرمادي (Grayscale) للمعالجة.

يطبق تحويل فورييه (FFT) لعرض الطيف الترددي (Frequency Spectrum).

ينشئ فلاتر ترددية (Low-pass & High-pass).

بناءً على نوع النويز:

Periodic Noise: يطبق خوارزمية أوتوماتيكية لاكتشاف القمم في طيف فورييه وإزالتها.

Salt & Pepper Noise: يستخدم مرشح Median لإزالة النقط البيضاء والسوداء العشوائية.

يعرض النتائج في مخططات Matplotlib (الصورة الأصلية، الطيف، الفلاتر، الصورة بعد المعالجة).

مكونات الكود الرئيسية:

واجهة المستخدم (Tkinter):

اختيار الصورة من الجهاز.

تحديد نوع النويز (Periodic / Random).

إزالة التشويش الدوري (remove_all_periodic_noise):

يحسب طيف المقدار (Magnitude Spectrum).

ينعمه باستخدام Gaussian Filter.

يحدد القمم (التي تمثل التشويش) ب threshold ديناميكي.

يعمل قناع (Mask) ويطبقها على الـ FFT لإزالة الضوضاء.

الفلاتر الترددية (create_frequency_filters):

ينشئ قناع Low-pass (يحتفظ بالترددات المنخفضة).

ينشئ قناع High-pass (يحتفظ بالترددات العالية).

معالجة النويز العشوائي (Salt & Pepper):

يطبق Median Blur على الصورة الملوّنة.

يعرض الصورة المنقاة.

المخرجات (Outputs):

عند تشغيل البرنامج وعرض النتائج، راح يطلعلك:

الصورة الأصلية (Grayscale).

أقنعة الفلاتر (Low-pass و High-pass).

طيف فورييه الأصلي.

إذا النويز Periodic:

الطيف بعد إزالة القمم.

الصورة بعد إزالة النويز.

إذا النويز Salt & Pepper:

الصورة بعد تطبيق Median Blur.

صور إضافية تبين الترددات المنخفضة والعالية.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
3
تاريخ الإضافة