تحميل تحويل إلى الرمادي وحفظ صورة باستعمال دلفي


في هذا الموضوع، سنرى  كيفية :
  • تحميل صورة من القرص
  • تحديد عرض وارتفاع وعدد قنوات الصورة
  • عرض الصورة المحملة على الشاشة.
  • تحويل الصورة إلى الرمادي 
  • حفظ الصورة على الكمبيوتر

 سيكون لدينا فهم جيد لكيفية تحميل الصور من القرص في دلفي  وcvLoadImage  ، تحويل الصورة إلى الرمادي وحفظها على القرص باستعمال إجراءات وأدوات من مكتبة    OpenCV.


كيف نقوم بتحميل الصور من القرص باستخدام OpenCV؟

لتحميل صورة من القرص باستخدام OpenCV ، نستخدم وظيفة cvLoadImage (الشكل).
تحميل صورة باستعمال cvLoadImage في دلفي
الإجراء  cvLoadImage يحتوي على معلمة واحدة ، وهي المسار إلى مكان وجود الصورة على القرص:
الوظيفة  cvLoadImage  في   OpenCV4Delphi  تعطي القيمة  CVImg   وهي عبارة عن كائن من نوع pIplImage وهو مؤشر لتخزين الصورة.
على الرغم من أن OpenCV يمكنه قراءة مجموعة متنوعة من الصور ، بما في ذلك JPEG و PNG و TIFF و GIF.
دعونا نرى كيفية الحصول على مكتبة OpenCV قبل تشغيل وظيفة cvLoadImage.

تحويل الصورة إلى الرمادي 

توجد بالمكتبة OpenCV  أدوات تساعدنا على تحويل أي صورة إلى اللون الرمادي في الدلفي نقوم بإنشاء صورة فارغة رمادية و ثم نحول الصورة الملونة إلى الرمادي ونخزنها في الصورة الرمادية كما في الكود التالي: 


حفظ الصورة على القرص 

يمكننا OpenCV   من حفظ أي الصورة بصيغة OpenCV   على القرص. في هذا التطبيق سنقوم بحفظ الصورة  الرمادية باستعمال المكون Savedialog  للدلفي كما هو موضح في الكود التالي : 



تكوين بيئة التطوير في الدلفي: 

قبل البحث في تحميل الصور باستخدام OpenCV ، ستحتاج إلى تثبيت المكتبة وتمكين الدلفي من الوصول إليها.
لحسن الحظ ، OpenCV رغم كونه في الأصل تم تطويره  بلغتي البرمجة  C++/C إلا أنه تم ترجمته إلى عدة لغات برمجة منها الدلفي. 
انتقل إألى هذا الرابط لمعرفة كيفية تكوين بيئة لاستعمال وتطوير Opencv في الدلفي OpenCV4Delphi
إذا واجهتك مشكلات في تكوين بيئة التطوير يمكنك الاتصال بنا أو ترك تعليق على الموضوع.

هيكل المشروع

دعونا نراجع هيكل مشروعنا.
 
هيكل المشروع لقراءة صورة باستعمال Opencv & Delphi

  •  احصل على شفرة المصدر  على الرابط اسفل الموضوع، وانتقل إلى المكان الذي حفظته فيه  وفك ضغط المحتوى ،:
يحتوي مشروعنا على نص برمجي (Unit)  Delphi  واحد باسم UMain.pas وإطار (Form1) لإضافة بعض مكونات دلفي. أما الصور فيمكنك اختيار أي صورة موجودة بجهازك. 

على الفورم نضع  المكونات الموضحة في الصورة : 
  • المكون Img لعررض الصورة على الفورم 
  • الزر BtnClose لإغلاق الإطار
  • المكون OpenCVImgLoad لعرض مربع الحوار "فتح ملف" والبحث عن الصور.
  • الزرBtnLoad لتنفيذ الأمر OpenCVImgLoad 
 إذا واجهتك مشاكل في إدراج عناصر على الفورم يمكنك التواصل معنا أو ترك  تعليق في أسفل الموضوع.

في البرنامج النصي  ، 

  • سنقوم أولاً بالبحث عن صورة بالجهاز باستخدام مكون TOpenDialog والحصول على المسار الكامل للصورة.
  • نحول اسم الملف إلى الصيغة التي يقبلها Opencv باستعمال الأمر c_str(const Text: String)
  • نستعمل الأمر cvLoadImage لتحميل الصورة بصيغة Opencv 
  • نحول الصورة إلى صيغة Bitmap 
  • نعرض الصورة على الفورم باستعمال الأمر Img.Picture.Bitmap.Assign(framebitmap);
  • نستعمل متغير آخر لتحويلها إألى الرمادي 
  • حفظ الصورة الرمادية على جهاز الكمبيوتر.

رابط تحميل الكود سورس  موجود في نهاية الموضوع.

تنفيذ البرنامج : 

  • انقر على المفتاح F9 في لوحة المفاتيح 
  • في نافذة البرنامج أنقر على الزر Start
  • اختر صورة ، 
  • انقر  نقرا مزدوحا على الصورة لعرضها على نافذة البرنامج.

تحميل التطبيق :

  • بيئة عمل التطبيق windows 7 فما فوق
  • حجم الملف 687 كيلوبايت
  • رمز فك الضغط : 0000
  • رابط التحميل : تحميل التطبيق

تحميل الكود : 

  • لغة البرمجة : Embarcadero/Delphi 10.3
  • مكتبة OpenCV version - 2.4.13
  • حجم ملف المضغوط: 5 كيلوبايت.
  • رابط التحميل : تحميل الكود سورس


ليست هناك تعليقات:

إرسال تعليق

المشاركات الشائعة