في هذا الموضوع، سنرى كيفية :
- تحميل صورة من القرص
- تحديد عرض وارتفاع وعدد قنوات الصورة
- عرض الصورة المحملة على الشاشة.
- تحويل الصورة إلى الرمادي
- حفظ الصورة على الكمبيوتر
سيكون لدينا فهم جيد لكيفية تحميل الصور من القرص في دلفي وcvLoadImage ، تحويل الصورة إلى الرمادي وحفظها على القرص باستعمال إجراءات وأدوات من مكتبة
OpenCV
.كيف نقوم بتحميل الصور من القرص باستخدام OpenCV؟
لتحميل صورة من القرص باستخدام OpenCV ، نستخدم وظيفة cvLoadImage (الشكل).
الإجراء
cvLoadImage
يحتوي على معلمة واحدة ، وهي المسار إلى مكان وجود الصورة على القرص:الوظيفة cvLoadImage في
OpenCV4Delphi
تعطي القيمة CVImg
وهي عبارة عن كائن من نوع pIplImage
وهو مؤشر لتخزين الصورة.على الرغم من أن OpenCV يمكنه قراءة مجموعة متنوعة من الصور ، بما في ذلك
JPEG
و PNG
و TIFF
و GIF
.دعونا نرى كيفية الحصول على مكتبة OpenCV قبل تشغيل وظيفة
cvLoadImage
.تحويل الصورة إلى الرمادي
توجد بالمكتبة OpenCV أدوات تساعدنا على تحويل أي صورة إلى اللون الرمادي في الدلفي نقوم بإنشاء صورة فارغة رمادية و ثم نحول الصورة الملونة إلى الرمادي ونخزنها في الصورة الرمادية كما في الكود التالي:
حفظ الصورة على القرص
يمكننا OpenCV من حفظ أي الصورة بصيغة OpenCV على القرص. في هذا التطبيق سنقوم بحفظ الصورة الرمادية باستعمال المكون Savedialog للدلفي كما هو موضح في الكود التالي :
تكوين بيئة التطوير في الدلفي:
قبل البحث في تحميل الصور باستخدام
OpenCV
، ستحتاج إلى تثبيت المكتبة وتمكين الدلفي من الوصول إليها.لحسن الحظ ،
OpenCV
رغم كونه في الأصل تم تطويره بلغتي البرمجة C++/C
إلا أنه تم ترجمته إلى عدة لغات برمجة منها الدلفي. انتقل إألى هذا الرابط لمعرفة كيفية تكوين بيئة لاستعمال وتطوير
Opencv
في الدلفي OpenCV4Delphiإذا واجهتك مشكلات في تكوين بيئة التطوير يمكنك الاتصال بنا أو ترك تعليق على الموضوع.
هيكل المشروع
دعونا نراجع هيكل مشروعنا.
- احصل على شفرة المصدر على الرابط اسفل الموضوع، وانتقل إلى المكان الذي حفظته فيه وفك ضغط المحتوى ،:
يحتوي مشروعنا على نص برمجي
(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 كيلوبايت.
- رابط التحميل : تحميل الكود سورس
ليست هناك تعليقات:
إرسال تعليق