قمت بتطوير هذا المشروع كتطبيق يتيح لي تنفيذ مجموعة من عمليات معالجة الصور وعرض تأثير كل عملية بشكل مباشر على الصورة. الهدف من المشروع هو تطبيق مفاهيم Image Processing عمليًا وفهم تأثير كل خوارزمية على الصورة من الناحية البصرية والتقنية.
فكرة المشروع
الفكرة الأساسية أنني أستطيع تحميل صورة، ثم اختيار نوع المعالجة التي أريد تطبيقها عليها، ويقوم النظام بعرض النتيجة فورًا. كما يمكنني المقارنة بين الصورة الأصلية والصورة بعد التعديل.
العمليات التي قمت بتنفيذها
1) Original (No Filter)
أعرض الصورة الأصلية بدون أي تعديل، لاستخدامها كمرجع للمقارنة.
2) Grayscale
أحول الصورة من ألوان RGB إلى تدرجات اللون الرمادي لتقليل المعلومات اللونية والتركيز على شدة الإضاءة فقط.
3) Brightness Adjustment (Gamma Correction)
أتحكم في سطوع الصورة باستخدام Gamma Correction، مما يسمح بتفتيح أو تغميق الصورة بطريقة رياضية محسوبة.
4) Contrast Enhancement
أقوم بتحسين التباين بين المناطق الفاتحة والداكنة داخل الصورة لإظهار التفاصيل بشكل أوضح.
5) Gaussian Blur
أطبق فلتر Gaussian Blur لتنعيم الصورة وتقليل الضوضاء، ويُستخدم عادةً قبل بعض عمليات الكشف مثل الحواف.
6) Salt & Pepper Noise
أضيف ضوضاء عشوائية إلى الصورة لمحاكاة تشوهات الإرسال أو التخزين، وذلك لاختبار تأثير الضوضاء على جودة الصورة.
7) Canny Edge Detection
أستخدم خوارزمية Canny لاكتشاف الحواف داخل الصورة، حيث يتم تحديد التغيرات الحادة في شدة الإضاءة.
8) Invert Colors
أعكس ألوان الصورة بحيث يتحول كل لون إلى مكمله اللوني.
9) JPEG Compression
أقوم بمحاكاة ضغط الصورة بصيغة JPEG لعرض تأثير تقليل الجودة على التفاصيل البصرية.
الية عمل التطبيق
عند تشغيل التطبيق:
أقوم بتحميل صورة أو اختيار صورة جاهزة.
أختار نوع المعالجة من القائمة.
يتم تطبيق العملية فورًا.
يعرض النظام الصورة الناتجة حتى أتمكن من تحليل الفرق بصريًا.