الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برمجة برنامج التعرف على الصور باستخدام opencv

بدأه المبرمج الواعد في 1 يونيو 2012 · 11 رد · 10,663 مشاهدة · في C++.Net
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله و بركاته

بعد معاناة طويلة في هذا المجال اتيت الى هذا المنتدى الجميل املا بأن اجد من يساعدني او على الاقل يضعني على بداية الطريق في مجال

معالجة الصور

منذ مدة كنت ابحث على كود لبرنامج التعرف على الوجوه باستخدام الس بلس بلس في الفيجوال ستوديو عن طريق الكاميرا

و بعد طول بحث و بمساعدة اليوتوب لم اجد سوى مكتبة واحدة يمكن عن طريقها معالجة الصور

و الذي اقصده بمعالجة الصور هو

التعرف على الوجوه

التعرف على الشخص معين

التعرف على الاشياء

تتبع حركة الاشياء

و وجدت العديد من الكتب التي تشرح التعامل مع هذه المكتبة المجانية و للاسف كلها بانجليزية و تتطلب خبرة في السي بلس بلس

وانا مهاراتي محدودة من هذه الناحية في اللغة

فاملت ان اجد منكم المساعدة في ترجمة و توضيح ما يحتويه هذا الكتاب الذي يحتوي على شرح كامل للمكتبة في اصدارها الثاني

لتحميل المكتبة

حمل من هنا

وانظر هذا الفيديو ضروري جدا ليعلمك كيف تنصب المكتبة

و الان بعد الاتمام ناتي للجزء الاصعب الذي يجب ان نتساعد فيه و نتعاون لنشرح بها لمكتبة الى المبرمجين العرب لاني لم اجد اي منتدى عربي يشرح هذه المكتبة ابدا

كل ماوجدته هو توصية بهذا الكتاب دون شرحه

OpenCV.2.Computer.Vision.Application.Programming.Cookbook

بعد تحميل الكتاب جرب الامثلة الموجودة به و ان نجحت فلا تبخل علينا بترجمة الامثلة والدروس الموجودة به لتسهيل ذلك لاخوتك العرب

ملاحظة : لا تعتمد على موضوعي فقط جرب كتابة opencv في الجوجل او اليوتوب و انظر ما وصل اليه العالم الغربي من تقدم في هذا المجال و الذي يؤسفني اني لم اجد منتدى عربي واحد يشرح فقط او يعرف ماهي مكتبة opencv التي تستعمل لمعالجة الصور و الفيديو و التعرف على الاشكال و تتبعها

في النهاية كل ما ارجوه انه اذا وجد احدكم الرغبة في تعلم هذا العلم و ادخاله للعالم العربي ان يعرض نفسه برد حتى نواصل و نتعاون في شرح هذه المكتبة

#2

أنا اريد التعلم ولكن انا ادرس جافا هل ممكن

165869_381311841924302_17021151_n.jpg

#3

السلام عليكم ...

  1. من الصعب أن تصبح مبرمجا محترفا أو أن تخوض بالمواضيع المتقدمة (OpenCV) و (face detection) .. دون لغة إنكليزية قوية .. و دون C++
  2. سبق لي ان تعاملت مع مشروع , يستخدم الــ openCV , فقط بعض التوابع البسيطة لقراءة بيانات الصورة .. و أشياء أخرى ...
  3. ماالمشكلة عندك تحديدا ... اعتقد ان فيديو تثبيت المكتبة واضح ...
  4. اقرأ الــ Documentation الخاص بالمكتبة هنـــا (إصدار قديم ربما).
  5. Face and Eyes Detection Using OpenCV
  6. Face Recognition using OpenCV
2

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#4
اقتباس
  • من الصعب أن تصبح مبرمجا محترفا أو أن تخوض بالمواضيع المتقدمة (OpenCV) و (face detection) .. دون لغة إنكليزية قوية .. و دون C++
أتفق معك - إلى حدّ ما - ...
اطلعت على OpenCV قبل حوالي العام, في نفس الفترة التي بدأت فيها تكثيف دراستي ل Python .. أستطيع أن أقول الآن أنّ الـ Documentation الخاص بال Python ليس سيئاً و واضح 100% ( على الأقل الأجزاء التي اطلعت عليها من الـ Documentation ... عودة للموضوع ... الدمج بين Python و OpenCV ليس سيئاً و لكن من الأسهل دراستها مع ++C كون الأخيرة مدعومة أكثر بالاضافة لوجود مرجع أو مرجعين - يتيمين على ما اعتقد - لها ...
اقتباس
  • سبق لي ان تعاملت مع مشروع , يستخدم الــ openCV , فقط بعض التوابع البسيطة لقراءة بيانات الصورة .. و أشياء أخرى ...

صراحة ليس لديّ خبرة عمليّة سوى محاولات فاشلة - ليس كليّاً happy.gif- لإعادة صياغة الأكواد بطريقتي الخاصة كما فهمتها ...

اقتباس
  • اقرأ الــ Documentation الخاص بالمكتبة هنـــا (إصدار قديم ربما).

هنا حسب الموقع ال Documentation الخاص بالإصدار الأخير 2.4.1 .. ( على سبيل زيادة المعلومات ... لا التصحيح happy.gif )

الأخ المبرمج الواعد :

اقتباس
و بعد طول بحث و بمساعدة اليوتوب لم اجد سوى مكتبة واحدة يمكن عن طريقها معالجة الصور

لك أن تبحث عن VXL و Cemellia و EmbedCV و IVT و VLFeat و CVD و IceWing و CImg و Motion و Aforge و Cairo و GraphicsMagick و PIL ...

بعض هذه ليست مكتبات .. و أقرب إلى SDK لمعالجة الصور ... كما أن بعضها موجه إلى ال OCR أكثر من كونه للتعرّف على الوجوه و البعض تم إيقاف دعمه و العمل عليه ... ولكن جميعها تهتمّ بمعالجة الصور ..

ضع في حسبانك أنّك ستضطر للتعامل مع دوال رياضيّة و إحصائية متقدّمة قليلاً للاستفادة من أي مكتبة تهتمّ بال Computer Vision .. وعلى هذا الأساس إذا لم يكن لديك دافع قوي للتعلّم فأنصحك بتجربة فرع آخر من فروع علم الحاسب الكثيرة ( ملاحظة : نعم أكره الرياضيّات wink.gif بشكل نسبيّ ) ...

تحياتي

2

? Which came first : The Stupid Question or The Incomprehensible Answer

some people just want to watch the world burn

#5
ebrahimsamer كتب:

أنا اريد التعلم ولكن انا ادرس جافا هل ممكن

للاسف حسب خبرتي البسيطة لايمكن ذلك لان المكتبة لا تعمل الا على c++

#6
houssam11350_11350 كتب:

السلام عليكم ...

  1. من الصعب أن تصبح مبرمجا محترفا أو أن تخوض بالمواضيع المتقدمة (OpenCV) و (face detection) .. دون لغة إنكليزية قوية .. و دون C++
  2. سبق لي ان تعاملت مع مشروع , يستخدم الــ openCV , فقط بعض التوابع البسيطة لقراءة بيانات الصورة .. و أشياء أخرى ...
  3. ماالمشكلة عندك تحديدا ... اعتقد ان فيديو تثبيت المكتبة واضح ...
  4. اقرأ الــ Documentation الخاص بالمكتبة هنـــا (إصدار قديم ربما).
  5. Face and Eyes Detection Using OpenCV
  6. Face Recognition using OpenCV

المشكلة يا اخي اني اطبق ما هو موجود من اكواد في الكتاب و لكن بعض منها ينفذ و مع التقدم في الدروس تعقدت الاكواد و الشرح و غالبا ما تظهر لدي اخطاء لا اعرف سببها

فاصبح لدي احباط بعض الشيء من انه لا يمكنني تعلم هذه البرمجة فانا كتبت هذا الموضوع املا منكم و من بقية اخوتي المبرمجين توضيح هذا الكتاب و البرمجة بواسطة هذه المكتبة

ساضع بعض الامثلة على المكتبة ولكن يتوجب عليكم تحميل الكتاب ليكون مرجعا للامثلة و لكي تصححوا اخطائي

#7

الأخ Ebrahimsamer :

يوجد Port غير كامل للـ OpenCV إلى جافا هنا ( اطلعت بشكل سريع على الموقع و على الأقل هذا ما يبدو عليه )

كبدائل يوجد :

JavaCV , BoofCV, ImageJ, Java Advanced Imaging API ( عثرت عليها بسرعة, و ليس لدي فكرة عن قدرات أي منها, و لكن المرشّح الأقوى يبدو JavaCV )

الأخ المبرمج الواعد :

اقتباس
البرمجة بواسطة هذه المكتبة

ساضع بعض الامثلة على المكتبة ولكن يتوجب عليكم تحميل الكتاب ليكون مرجعا للامثلة و لكي تصححوا اخطائي

من الأسهل ( لنا و لك ) شرح مواضع معاناتك و الأخطاء التي تواجهها و الأمل بأن يجيب أحد عن تساؤلاتك المحددة ...

كما لاحظت فإن عدد الكتب التي تتحدث عن OpenCV قليل , و هذا إن أعطى مؤشّراً فهو على عدم الاهتمام بهذا الموضوع إلا من قبل القليلين, و بالتالي فإن توفّر مراجع سهلة و مفهومة يصبح أمراً صعباً, و في حال لم تتوفّر هذه الأخيرة فلا نستطيع أن نشرح بشكل واضح أو ناجح خاصة إذا وضعت بعين الاعتبار عدم وجود اختصاصيين في الموضوع.

طريق الألف ميل يبدأ بخطوة, شاركنا مشاكلك, فربما نستطيع حلّها.

بالتوفيق

? Which came first : The Stupid Question or The Incomprehensible Answer

some people just want to watch the world burn

#8

بايثون مع simpleCV ^_^

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#9

الاخ عبد العزيز بداية أشكرك على تفاعلك في الموضوع

مثلما قلت من الاسهل ان اشرح مواضع معاناتي( فعلا معاناة اعاني منها مع هذه المكتبة)

و كما اشرت انت بان عدد الكتب قليل و ذلك ما زاد الامر صعوبة

انا اردت ان اكتب مشاكلي ولكن اردت التفاعل الاولي من المشاركين لأبدا بذلك و الحمد لله ولو كان كانت المشاركة من واحد فهذا يكفي

المشكلة الاولى:

تعدد الاصدارات في هذه المكتبة و قد لاحظت من خلال بحثي انه يوجد اختلاف في البرمجة بعد الاصدار 2 من المكتبة

و لدي كتابين كتاب كبير يشرح الاصدار الاول و كتاب يشرح الاصدار 2.2 حسبما يقولون بشكل مبسط

و الامثلة الموجودة في الانترنت تتعدد فمنها حسبما اعتقد مكتوب بالاكواد الاولى و منها كتب باكواد بعد النسخة 2

و المشكلة تكمن في اني نصبت الاصدار 2.2 و مشيت بتجربة بعض الاكواد فمنها ما ينفذ و منها لا ينفذ وتظهر لدي اخطاء

فلا ادري هل المشكلة من ان الاكواد التي اضعها قديمة و لا تتماشى مع الاصدار الجديد ام ماذا؟

#10

مشكلة اخرى

حسبما ذكر الكاتب في الفصل العاشر (Processing Video Sequences) الذي يختص بمعالجة الفيديو و هذا كل ما اريد فهمه في الكتاب لان اساس برنامجي هو اكتشاف الاشياء عبر كاميرة الكمبيوتر

اعطى الكاتب كود لقراءة الفيديو

Reading video sequences

To process a video sequence, we need to be able to read each of its frames. OpenCV has put

in place an easy-to-use framework to perform frame extraction from video files, or even from a

USB camera. This recipe shows you how to use it.

How to do it...

Basically, all you need to do in order to read the frames of a video sequence is to create an

instance of the cv::VideoCapture class. You then create a loop that will extract and read

each video frame. Here is a basic main function that simply displays the frames of a video sequence

  #include <opencv\cv.h>
#include <opencv\cxcore.h>
#include <opencv2\highgui\highgui.hpp>
#include<math.h>
#include <iostream>
int main()
{
// Open the video file
cv::VideoCapture capture("m.avi");
// check if video successfully opened
if (!capture.isOpened())
return 1;
// Get the frame rate
double rate= capture.get(CV_CAP_PROP_FPS);
bool stop(false);
cv::Mat frame; // current video frame
cv::namedWindow("Extracted Frame");
// Delay between each frame in ms
// corresponds to video frame rate
int delay= 1000/rate;
// for all frames in video
while (!stop) {
// read next frame if any
if (!capture.read(frame))
break;
cv::imshow("Extracted Frame",frame);
// introduce a delay
// or press key to stop
if (cv::waitKey(delay)>=0)
stop= true;
}
// Close the video file.
// Not required since called by destructor cap

وقد جربت الكود و الحمد لله قد عمل بنجاح و لكنه ذكر بأن يمكن استبدال الفيديو بكاميرة الكمبيوتر

You can also read the video stream capture of a camera connected to your computer (a USB

camera for example). In this case, you simply specify an ID number (an integer) instead of a

filename to the open function. Specifying 0 for the ID will open the default camera installed.

In this case, the role of the cv::waitKey function to stop the processing becomes essential

since the video stream from the camera will be infinitely read.

و قد جربت ذلك ولكن لم ينجح و ظهر لي خطا

فهل لك ان تبين لي كيف يمكن القراءة من كاميرة الكمبيوتر؟؟

تم تعديل هذه المشاركة بواسطة المبرمج الواعد في 2 يونيو 2012 في 23:52

#11

السلام عليكم انا من زمان ابحث على مثل هذه المكتبة

عندي خبرة في السي بلس بلس يمكنني ان اشارككم التعلم

#12
nadir02 كتب:

السلام عليكم انا من زمان ابحث على مثل هذه المكتبة

عندي خبرة في السي بلس بلس يمكنني ان اشارككم التعلم

تفضل اخي اذا كانت لديك خبرة كافية بالسي بلس بلس يمكنك مشاركتى

للتواصل على الخاص انا موجود

مواضيع مشابهة