نمایش/عدم نمایش سایدبار
رفتن به بالای صفحه
محرم

بازشناسی چهره انسان با رزبری پای face recognition_قسمت اول

انجمن های تخصصی برق و الکترونیک ECA

به نام خدا : بازشناسی چهره انسان ( face recognition )؛ یکی از کاربرد های بحث بازشناسی چهره، تایید هویت افراد است.مثل سیستم امنیتی، ورود به ویندوز با وب کم؛ سعی می کنیم در این بخش با استفاده از کتابخانه opencv و دوربین رزبری پای، یه پروژه برای “بازشناسی چهره انسان” جمع و جور کنیم.

بازشناسی چهره انسان با رزبری پای face recognition

بازشناسی چهره انسان با رزبری پای face recognition


پروژه رزبری پای

این مطلب شامل سه بخش کلی زیر می باشد :

  1. دریافت تصویر دوربین رسپبری پای و فراخوانی فریم ها در قالب یک ماتریس و نحوه نمایش دادن آن با توابع opencv
  2. تشخیص چهره از غیر چهره(face detection) با استفاده از تکنیک طبقه بندی آبشاری هاآر(Haar cascade classifier)  و تک سایز کردن چهره های با اندازه های مختلف و نمایش آن.
  3. تشخیص چهره های آشنا و تفکیک آن از چهره های غیر آشنا(face recognition) با استفاده از شبکه عصبی.

روند کار رو در شکل زیر مشاهده می فرمایید :
کتابخانه opencv رزبری پای
در این مطلب، به بخش اول و دوم می پردازیم.

1) دریافت تصویر دوربین رزبری پای و نمایش تصویر

برای این کار نیاز به دوکتابخانه opencv و raspicam داریم. با مراجعه به آموزش موجود در لینک زیر و از قسمت مربوطه، این دو کتابخانه رو دانلود و نصب بفرمایید : نیازمندی های رزبری پای
سپس در ترمینال یک فایل با نام camerashow.cpp بسازید و کد زیر رو بنویسید و فایل رو ذخیره کنید :

کد بالا رو با دو دستور زیر کامپایل و اجرا کنید :

نتیجه به صورت زیر می باشد : http://www.aparat.com/v/eQzvh

رنگ ها در تصویر واقعی نیستند.برای دسترسی به تصویر با رنگ های اصلی، باید از کتابخانه raspicam_still استفاده کرد.
توجه : اگر دوربین در دسترس ندارید، می تونید این کد ها رو با یه فایل ویدئویی تست کنید. برای این کار، از کد زیر استفاده کنید.و ویدئوی مورد نظر رو با نام و فرمت (a.mp4) در محل فایل اجرایی پروژه کپی کنید :

نتیجه رو در ویدئو زیر می بینید : http://www.aparat.com/v/cGkX8

نامه ای از نهج البلاغه_نامه 70 _ روش برخورد با پدیده فرار
پس از یادخدا و درود! به من خبر رسیده که گروهی از مردم مدینه به سوي معاویه گریختند، مبادا براي از دست دادن آنان، و قطع شـدن کمک و یاریشان افسوس بخوري!که این فرار براي گمراهیشان، و نجات تو از رنـج آنان کافی است، آنان ازحق و هدایت گریختند، و به سوي کور دلی وجهالت شتافتند. آنـان دنیاپرسـتانی هسـتند کـه به آن روي آوردنـد، وشـتابان در پی آن رواننـد. عـدالت را شـناختند و دیدنـد و شـنیدند و به خـاطر سپردند، و دانستند که همه مردم در نزد ما، درحق یکسانند، پس به سوي انحصارطلبی گریختند، دور باشند از رحمت حق، و لعنت برآنان باد.
سوگنـدبه خـدا! آنان ازسـتم نگریختنـد، و به عـدالت نپیوسـتند، همانا آرزومندیم تا در این جریان،خداسـختیها را بر ما آسان، و مشکلات را هموار فرماید. انشاء الّله، با درود

2) تشخیص چهره از غیر چهره

برای شروع این بخش، احتیاج به پیش نیاز جدیدی نداریم. پس ترمینال رو باز کنید و یه فایل با نام sudo nano facedetect.cpp  بسازید و کد زیر رو در اون بنویسید.

نتیجه به صورت زیر خواهد بود :
تشخیص چهره با رزبری پای
با اضافه کردن قطعه کد زیر،چهره رو از بقیه تصویر جدا می کنیم و در یک پنجره جداگانه نشان می دهیم :

و با قطعه کد زیر هم اونو نمایش میدیم :

در قسمت بعدی، ما با ماتریس face کار خواهیم کرد.
قصد دارم تا قسمت سوم رو با همکاری شما دوستان عزیز تکمیل کنم؛ از دوستانی که با بحث شبکه عصبی و استخراج ویژگی آشنایی دارند،دعوت به همکاری می کنیم.
جهت هر چه مستحکم تر شدن جایگاه ولایت فقیه و ظهور بابای خوبمون مهدی(عج)صلوات

تعداد مطالب : 30 تا
دانش آموخته (فارغ التحصیل سابق) کارشناسی الکترونیک هستم. سه سال اول دانشگاه رو به نحو احسن هدر دادم رفت!! تا پایان ترم هفتم داشتم فکر می کردم که چی کار کنم و چی کار نکنم؟ ترم هشتم اساتید خوبی داشتم و تصمیم گرفتم،یه تکونی به خودم بدم. الان هم در حال یاد گیری علایقم هستم...
ارسال دیدگاه

1) نظرات غیر فارسی به صورت خودکار حذف میشوند ( حداقل 5 حرف فارسی وارد کنید ).

2) به موارد درخواست پروژه/کد آماده و سوالاتی که بلد نباشم پاسخ داده نمیشه.

3) پسورد فایل های سایت : www.dmf313.ir

4) نظرات حاوی کد برنامه نویسی تایید نمیشوند ( قالب سایت بهم میریزه )

  1. مهمان

    یوسف

    سلام میخواستم بدونم برای پیاده سازی شبکه عصبی روی رزبری پای باید چیکار کنم؟؟ ممنون

  2. مهمان

    omid

    سلام، خسته نباشید. ممنونم از مطالب مفیدتون. یه سوال داشتم. من یه ماژول دوربین با پروتکل I2C دارم. میخوام توی تصویر خروجی این دوربین، فقط ماشین ها رو تشخیص بدم. قرار نیست نتیجه ی تشخیص نمایش داده بشه و یه تشخیص حدودی (در حدی که معلوم بشه این ماشینه و آدم نیست) اونم نه با سرعت بالا (حدود 2 ثانیه) واسم کافیه. میتونم برای اینکار از میکروکنترلر استفاده کنم (بدون نیاز به کامپیوتر)؟ میکروکنترلر ماشین رو تشخیص داد، یه پایش یک بشه. این میکرو فقط برای تشخیص باشه و هیچ کار دیگه ای قرار نیست انجام بده.

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام.در عمل با میکرو امکان نداره!!
      میکرو مشکل سرعت کم وحافظه کم داره

  3. مهمان

    مهشاد

    سلام ببخشید برای RFID باید چکار کنیم؟ میخوام یه سیستم شناسایی بسازم با رزبری و این رو نمیدونم چجوری باید sql با پایتون کار کنه

    • نویسنده این مطلب

      محمدرضا اسلامی

      متاسفانه،تا حالا وقت نشده تا rfid رو با رزبری راه بندازم.
      Sqlو کلا برنامه نویسی وب هم تجربه ندارم cry
      فکر کنم بهتره کرکره رو بکشم پائین و برم پی کارم sorry

  4. مهمان

    mahdi

    بازم سلام
    برای اون قبلی ها ممنون
    یک سوال سرعت پایتون وسی که باهم تو این پردازش تصویر ها فرق دارن؟در حدی هست که تیک بزنه؟
    میخوام روی هواپیمای مدل همین پرداز تصویر رو بزارم ،در حد ارتفاع 5 متر وکمتر ! دوربین چند مگا پیکسلی باید بگیرم؟
    اگر مثلا برای همون کنترل بازی که گفتم ، پشت سرم (پشت زمینه )شلوغ و رنگ وارنگ باشه بعد این میتونه دست منو تشخیص بده؟

    • نویسنده این مطلب

      محمدرضا اسلامی

      پردازش تصویر،با پایتون کار نکردم.
      بستگی به نوع پردازشتون داره!!!
      تشخیص دست و تا حالا کار نکردم

  5. مهمان

    mahdi

    سلام خسته نباشید
    میخواستم با رزبری بازی بنویسم ،با pygame بعد این پروژه رو میشه با بازیم مچ کنم(هماهنگ)؟

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      زبانش چی هست؟
      با چه اپلیکیشنی می نویسید؟(qt یا …)
      طرح کلی بازیتون چجوریه؟

      • مهمان

        mahdi

        سلام
        با پایتون ،تو همین محیطی که شما کد نوشته اید.
        میخوام تو بازیم از دوربین هم استفاده کنم ،یعنی کنترل بازی با دوربین باشه
        الان شما تو این پروژه فقط چهره خودتون تشخیص داده میشه؟ یا هر ادمی تشخیص داده میشه؟
        اموزشی دارید برای تشخیص چهره با پایتون؟
        اگه اموزش خوبی برای ساخت بازی یا نرمافزار حتی دارید اگه لطف کنید ممنون میشم!
        میخوام تو رزبری بازی بسازم،اگه راه اسون تری هست که تو pcبازی رو بسازم و فقط تو رزبری اجرا کنم ممنون میشم!

        • نویسنده این مطلب

          محمدرضا اسلامی

          سلام
          در این پروژه،چهره سه نفر به سیستم معرفی شده و این سه نفر رو از دو نفر دیگه تفکیک می کنه.
          اگر نیاز به تشخیص چهره دارید:
          تشخیص چهره با پایتون
          اگر نیاز به بازشناسی چهره به صورت تفکیک چند چهره محدود از هم:
          باید از شبکه عصبی یا … استفاده کنید.lمطلبی سراغ ندارم cry
          اگر نیاز به بازشناسی چهره به صورت تفکیک چند فرد از بین سایر افراد:
          می تونید از توابع face recognition در opencv استفاده کنید.
          بازشناسی چهره با پایتون
          برای ساخت انیمیشن میتونید از skretch استفاده کنید ولی هیچ تجربه ای در این زمینه ندارم
          تو سایت eca.ir یه آموزش 4 قسمته از scratch گذاشته ولی نمی دونم برای بازی هست یا خیر؟!!
          راه آسونترش نصب رزبین روی ماشین های سیستم عامل مجازیه(اگر بشه!!!)
          مثل
          VMware Workstation

  6. مهمان

    محسن

    سلام مهندس.من تازه کار هستم.روی رسبری 2 اپن سی وی 3.2 رو نصب کردم.مطمئنم نصب شده چون تصویر با وب کم میگیرم .اما وقتی یه برنامه ساده توی c که فقط ورودی تصویر رو دریافت میکنه رو نمیتونم ران کنم.ارور شبیه به این میده
    OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvShowImage, file /home/hristov/workspace/opencv/modules/highgui/src/window.cpp, line 534
    terminate called after throwing an instance of ‘cv::Exception’
    what(): /home/hristov/workspace/opencv/modules/highgui/src/window.cpp:534: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvShowImage
    تو سایت ها گشتم چیزی پیدا نکردم.یکی میگه کلا باید open cv. رو از اول نصب کنی البته جدا از پایتون.ولی بعید میدونم از این باشه چون من اپن سی وی رو جداگانه نصب کردم.
    ممنون میشم راه نمایی کنید

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      نوشته که دو تا کتابخونه زیر رو نصب کنید
      libgtk2.0-dev
      pkg-config
      لطفا نتیجه رو اعلام کنید
      اگه نشد،برنامه ای که نوشتید و دستوری که باهاش کامپایل می کنید رو بفرستید.

  7. مهمان

    علی

    سلام شما این برنامه دو با c++ نوشتین بعد چجوری می تونه با gpio ایی که با پایتون نوشتید ارتباط دهید ؟
    مثلا وقتی یه صورت رو تشخیص داد یه led روشن شع

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام.
      برنامه رو فقط با c++ نوشتم!!!!
      پایتون نداشت!!!!
      آموزش رو کامل ببینید.

  8. مهمان

    mahdie maghsodi

    سلام من یه سوال دارم من میخوام پردازش تصویر با رزبری انجام بدم و اینکه برای این کار باید روی ویژوال استدیو و اوپن سی وی انجام بدم و بعد با کیوت به رزبری ربطش بدم؟ میشه در این مورد بنده رو راهنمایی بفرمایید

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      خودم هم همین کار رو کردم برنامه رو تو کامپیوتر با ویژوال استودیو می نویسم بعدش کد رو میارم رو رزبری با g++ کامپایل می کنم.
      qt رو امتحان نکردم .اگر qt به زبان c++ باشه،احتمالا باید تغییراتی اعمال کنید.

  9. نویسنده این مطلب

    محمدرضا اسلامی

    سلام
    اسلاید های درس شبکه عصبی
    http://s8.picofile.com/file/8295252526/dr_rohani.rar.html
    بخش mlp به درد ما می خوره

  10. مهمان

    فرید

    ۱-.پکیج gtk رو نصب کردم دیدم نصبه مشکل از این نیست
    ۲-تو مسیر etc/x11 رفتم اصلا فایل xorg.conf وجود نداشت
    ۳-Sudo Apt-Get Install Libgl1-Mesa-Dri اینم نصب کردم دیدم نصبه مشکل از اینم نیست
    توسایتای خارجی خیلی گشتم سوالامو جاهای زیادی مطزح کردم هنو به نتیجه نرسیدم

    • نویسنده این مطلب

      محمدرضا اسلامی

      کار های زیر رو هم انجام بدید:
      ۱٫نصب vnc روی رزبری و اجرای اون
      ۲٫دانلود putty روی کامپیوتر برای اتصال به رزبری
      ۳٫نصب xming روی کامپیوتر و اجرای xlaunch از زیر مجموعه اون(بعد از اجرای xlaunch،صفحه ای باز میشه که چند بارباید next بزنید)
      ۴٫تنظیم putty مثل عکس زیر
      تنظیمات putty
      بعد یه محیط مثل ترمینال باز میشه بعد از وارد کردن یوزر و پسورد رزبری،به آدرس پروژتون برید و اونو اجرا کنید ببینید چی میشه.

  11. مهمان

    ناشناس

    درسته مربع و مستطیل میکشه سوال من اینه که چطور میتونم مختصان چشم ها مثلا (x,y) رو تشخیص بده

    • مهمان

      ناشناس

      میتونم ایمیلی از شما داشته باشم

      • نویسنده این مطلب

        محمدرضا اسلامی

        ایمیل دیر به دیر سر میزنم.
        آی دی تلگرام:
        @mre_es

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      مختصات وسط مربع،میشه مختصات چشم!!
      فکر کنم منظورتون رو اشتباه متوجه می شم.
      امکان داره سوالتون رو کمی واضح تر بفرمایید؟

  12. مهمان

    فرید

    اقای اسلامی منم شدیدا به این اموزش نیاز دارم تو فکر اینم هزینه یه فلش رو بپردازم و شما از سیستم عاملتون ایمیج بگیرید و با پرداخت هزینه ها فلش رو پست کنید البته اگه جسارت نباشه، تا من بتونم مثال هارو ران کنم متاسفانه هیچ جوره کارم پیش نمیره…
    حتی اگر دوس داشته باشید من با هزینه خودم سیستم عامل رو فشرده میکنم آپلود میکنم تو هاست پرشین گیگ مثلا
    نمیدونم آیا این کار برای شما مقدوره یا نه!!
    کماکان متشکرم از هم آموزش های شما

    • نویسنده این مطلب

      محمدرضا اسلامی

      یه نگاه بندازید ببینید با اون سه روشی که در نظر قبلی گفتم،کارتون راه میوفته یا نه؟
      توجه کنید که اگر رزبری رو به تلوزیون وصل کنید،درست کار میکنه!!
      اگر خودتون راه رو پیدا کنید،(با چرخیدن تو سایتای خارجی)در موارد بعدی،دستتون راه میوفته و راحتتر مشکلاتتون بر طرف میشه.
      سعی کنید اگر نشد،بعد یه فکری به حالش می کنیم.

  13. نویسنده این مطلب

    محمدرضا اسلامی

    برنامه تون رو یه جایی آپلود کنید و قرار بدید تا بگم چجوری میشه مختصاتشو ب دست آوورد

  14. مهمان

    فرید

    بله من هم کلا با remote desktop کار میکنم و وصل میشم
    نمیدونم هر کاری کردم میگه افزونه رندر نمایش میسینگ شده
    Xlib :Extension “RANDR” Missing On Display “:۱۰٫۰”
    واقعا هر راهی بود امتحان کردم اما نشد،ولی چرا سمپل های خوده اوپن سی وی ران میشن اما برا مثال اولی شما این ارورو میگه مگه کتابخونه هایی که استفاده کردید متفاوت هستن؟

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      کتابخونه هاهمونن ولی امکان داره بنده قبلا برای یه کار دیگه،یه کتابخونه یا افزونه نصب کردم و تصادفی،در این برنامه ها استقاده شده!!!
      باید یه بار از اول رسپین نصب کنم و مثالا رو ران کنم که متاسفانه وقت این کار رو ندارم.

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام مجدد
      درعکس زیر،دو راه احتمالی برای حل مشکل شما رو میگه
      http://s9.picofile.com/file/8291054650/xlib.JPG
      میگه:
      برخی میگن پکیج gtk رو نصب کن
      و برخی دیگه میگن به فولدر
      /etc/x11
      رفته و فایل xorg.conf رو باز کنید و تغییرات موجود در عکس رو اعمال کنید.
      تو یه سایت دیگه نوشته بود،افزونه زیر رو نصب کنید
      sudo apt-get update
      sudo apt-get install libgl1-mesa-dri
      ما رو از نتیجه بی خبر نذارید.

  15. مهمان

    ناشناس

    سلام الان چهره تشحیص داده میشه همینطور میتونه مثلا بینی و چشم رو تشخیص بده ولی یه سوال دارم چطوری میتونم مختصات چشم ها رو بفهمم ؟

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام.
      اگر تونستید چشم رو تشخیص بدید،یعنی دور چشم،مربع یا دایره کشیدید درسته؟مختصات چشم،همون مختصات مربع رسم شده هست.
      فکر کنم منظورتون رو متوجه نشدم

    • مهمان

      ناشناس

      درسته دورش مربع و دایره میکشه ولی سوالم مختصات صفحشه مثلا بگه چشم ها تو نفطه (x،y ) قرار داره ممنون میشم

      • نویسنده این مطلب

        محمدرضا اسلامی

        برنامه تون رو یه جایی آپلود کنید..تا ببینم چ میشه کرد.
        کافیه مختصات اون مربع رو داشته باشید و طول اون رو هم داشته باشید.
        وسط مربع،میشه محل چشم!!!

  16. مهمان

    فرید

    اقای اسلامی موفق شدم سمپل خوده اوپن سی وی به نام فیس دیتکت رو ران کنم و چهرم شناسایی شد اما وقتی کد اولی شمارو را نمیکنم ارور زیر رو میده(با موفقیت کامپایل میشه یه میلی ثانیه پنجره میاد و میره،انگار یه چی کم داره)
    Xvfb :extension “RANDR” missing on display “:10.0”.
    این کتابخونرم نصب کردم برطرف نشد :
    apt-get install xvfb imagemagick

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام با چه روش و نرم افزاری وصل میشید؟
      با vnc یا remote control
      بنده با remote desktop به رزبری وصل میشم الان هم امتحان کردم.اجرا شد!!!
      بقیه روش ها،در نشان دادن تصویر کمی مشکل دارن.

  17. مهمان

    فرید

    اقای اسلامی بالاخره بعده کلی تلاش یه کد درست کردم که باهاش پروژه اولی شمارو کامپایل کردم
    کامپایل که میشه وقتی اجراش میکنم پنجره نمایش دوربین یه میلی ثانیه میاد و میره و یه پیغامی مبنی بر ارور میده لطفا عکس زیر رو ببینید :
    http://cdn.persiangig.com/preview/yNcOqfL4bf/large/error.jpg
    دیگه اخر راهم واقعا اذیت کننده بود…
    نفهمیدم معنیش چیه چی میخواد
    هم پیک کمرا و هم اوپن سی وی اخرین ورژنشون هست …

  18. مهمان

    فرید

    سلام من نسخه ۲ واسم میک نشد اما نسخه ۳٫۲٫۰ میک شد و اوکی شد حالا رفتم سمپل های خودش تو فولدر cpp رو میخوام کامپایل کنم با ارور زیر مواجه میشم
    فک کنم مشکل از دستور کامپاله کلا میگه نو دایرکتوری
    http://cdn.persiangig.com/preview/GVGITSR63d/large/err.jpg
    بعد یه چیزی این دو خط اخر زیر برا شما اجرا شد
    cd ~/OpenCV-3.2.0/samples/cpp
    chmod +x build_all.sh
    ./build_all.sh
    برا من تو پوشه cpp اصلا فایل بیلدآل نیییییست rtfm

  19. مهمان

    فرید

    ال کوچیک هم گذاشتم حل نشد
    فقط دمت گرم بهم بگو اوپن سی وی کدوم ورژنشو نصب کردی؟
    همه مراحلو چندیدن بار نصب کردم و اومدم یونیکس اوپن سی وی ورژن ۳٫۲٫۰ نصب کردم طبق فیلم اموزشی الان میخوام برم ورژن ۲٫۸٫۹ ببینم چی میشه… help
    تا شنبه اگه مشکل حل نشد یاداوری میکنم فقط لطفا اگه موردی یادتون اومد زیر این پست بفرمایید تا تست کنم نتیجرو بگم خدمتتون

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      نسخه ۳ رو نتونستم نصب کنم
      بنده ورژن ۲.۴…رو نصب کردم

  20. مهمان

    فرید

    اقای اسلامی من همون برنامه اولی که دوربینو بالا میاره هر کاری میکنم ران نمیشه
    البته شما باید تهش یه { بزارید که من گذاشتم اما هیچ جوره ران نمیشه نمیدونم چرا..
    طبق اموزشای قبلی با دوربین عکس گرفتم و نمایش دادم کتابخونه OPEN CV هم با موفقیت نصب شده(در پوشه دانلود ها آنزیپ و نصبش کردم)
    کد بالا اول کاری ارور داد که کتابخونه raspicam_cv.h رو پیدا نمیکنه بعدش این ارور برطرف شد حالا این ارور زیر رو داده که عکسشو میذارم
    http://cdn.persiangig.com/preview/2HUzbBrQbk/large/reeeee.jpg
    الان یه هفتست درگیرم تا به پردازش تصویر برسم اماتو همین اول کاری موندم wacko

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام تنها چیزی که به نظرم میرسه:
      به جای i/usr
      بنویسید
      L/usr با ال کوچیک
      اگر نشد،تا شنبه باید صبر کنید.و یاد آوری کنید. sorry

  21. مهمان

    علی

    سلام
    لینک کد :
    http://paste.debian.net/plain/924556
    لینک دستور و ارور:
    http://uupload.ir/files/qi1_عکس_ارور_در_ترمینال.jpg

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      فایل موجود در لینک زیر رو امتحان کنید
      متاسفانه،تا شنبه فرصت بررسی برنامه تون رو ندارم sorry
      فایل تشخیص چهره

  22. مهمان

    علی

    سلام..
    اون دو قطعه کدی که گفتین اضافه میکنیم دقیقا کجای برنامه اضافه میشن؟
    من به آخر برنامه اضافه میکنم ارور میده میگه r ,frame فراخوانی نشدن توی این اسکوپ
    ممنون از لطفتون

    • نویسنده این مطلب

      محمدرضا اسلامی

      منظورم رو بد رسوندم
      متن کدتون رو یه جایی آپلود کنید و لینکشو بذارید.
      دستورات کامپایل و بیلد رو هم بهش اضافه کنید تا ببینم مشکل کجاست

  23. مهمان

    هادی

    با سلامی دوباره طبق گفته شما لینکهارو میزارم براتون. تمام برنامه هارو انجام دادم و اررور هارو عکس گرفتم براتون ارسال کردم. لطفا راهنمایی کنید.
    اگر امکان داشته باشه میشه فایلهای خودتون رو برام ارسال کنید !
    خیلی ممنون میشم .
    http://cdn.persiangig.com/preview/yMZl3uL95x/2017-03-23-131450_1024x768_s
    http://cdn.persiangig.com/preview/8hQd7786Z0/2017-03-25-173516_1024x768_
    http://cdn.persiangig.com/preview/1DNXJ4hryD/2017-03-25-173815_1024x768_sc
    http://cdn.persiangig.com/preview/nwAAwla9Jo/2017-03-25-174137_1024x768

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      برنامه هاتون رو هم آپلود کنید.
      (همون فایل های با پسوند cpp)
      همچنین دستوری رو که باهاش بیلد می کنید رو هم اول فایل cpp بذارید.
      برنامه خودم،عینا اینی هست که گذاشتم.

  24. مهمان

    هادی

    سلام و سال نو مبارک
    من برنامه facedetect رو وقتی که اجرا میکنم هیچ کاری انجام نمیده!
    برنامه camerashow هم این اررور رو میده:
    expected unqualified-id before ‘return’
    return 0;
    میشه لطفا راهنمایی کنید

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام،برنامتون رو یه جایی آپلود کنید و لینکشو بذارید.
      از ترمینال هم بعد از اجرای دستورات،عکس بگیرید و آپلود کنید و لینکشو بذارید.

  25. مهمان

    هادی

    سلام من طبق راهنمایی های شما انجام دادم ولی با این خطا روبرو شدم :
    facedetect.cpp:5:34: fatal error:raspicam/raspicam_cv.h : no such file or directory
    include “raspicam/raspicam_cv.h#

    لطفا راهنمایی کنید.
    ممنونم

    • نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      طبق مطلب نیازمندی های رزبری پای،کتابخونه دوربین رو نصب کردید؟
      به اسپیس ها و حروف بزرگ و کوچک توجه کنید.
      اگر درست نشد،یه عکس از ترمینال رزبری،بعد از اجرای کد دستور بذارید.

  26. مهمان

    یاسر

    مهندس داشتم قسمت دومش رو هم میخوندم خیلی عالی بود خداکمکتون کند انشاالله…

  27. نویسنده سایت

    میلاد رسولی بیدختی

    چند روش میتونید برای face recognitionمعرفی کنید چون این(CascadeClassifier) نیاز به پردازش سنگین داره و درکل برای فیلم که فریم های پشت سرهم هست زیاد خوب نیست…
    یه سوال دیگه : اگر بخوام توی یه دایرکتوری که کلی توش عکس وجود داره (امکان دادن ادرس هر عکس به صورت جدا ندارد) و من فقط ادرس اون فایل رو دارم و بخوام عکس هارو لود کنم باید چه کنم ؟؟

    • مهمان

      farzad

      اینجارو یه نگاه بندار.
      http://doc.qt.io/qt-5/qdiriterator.html

    • نویسنده این مطلب

      محمدرضا اسلامی

      روش دیگه ای سراغ ندارم.شاید بشه با آموزش دادن یه شبکه با تعداد زیادی عکس صورت سرعت رو بیشتر کرد.
      برای باز کردن عکس،به قسمت دوم این آموزش مراجعه فرمایید.

  28. نویسنده سایت

    میلاد رسولی بیدختی

    برنامه توی این قسمت:
    ***********************
    CascadeClassifier classifier;
    if(!classifier.load(“/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml”))
    {
    cout << "classifier not found" <<endl;
    return -1;
    }
    ***************************
    "classifier not found" رو بهم برمیگردمنه ….یه نکته رو هم بگم که من با رزبری کارنمیکنم…..
    توی برنامه بالا شما ادرس دایرکتوری خودتون رو دادید و منم ادرس دایرکتوری خودم رو دادم و به این مشکل خودم …… به نظرتون مشکلم از کجا میتونه باشه
    ..

    • نویسنده این مطلب

      محمدرضا اسلامی

      شما از آدرس شبیه زیر استفاده کنید(به جهت / توجه کنید چون تو ویندوز،دایرکتوری ها با \ از هم جدا میشن در ویژوال استودیو از / استفاده میشه مثل زیر:
      D:/desk_esfand94/dars/cpp/opencv/opencv/build/etc/haarcascades/haarcascade_frontalface_alt.xml
      و یا می تونید اون فایل xml رو کنار فایل های پروژتون کپی کنید و از نام فایل استفاده کنید.به صورت زیر
      ((if (!classifier.load(“haarcascade_frontalface_alt.xml”

      • نویسنده سایت

        میلاد رسولی بیدختی

        با تشکر از پاسخ گویی تون … روش اول رو که قبلا انجام میدادم و جواب نمیگرفتم و روش دومی که گفتید جواب داد.
        من برنامه رو نوشتم و کامپایل کردم
        برنامه تشخیص چهره فایل .EXE از رو برا بقیه کاربر ها میگذارم
        http://s9.picofile.com/file/8275797992/Release.rar.html

        • نویسنده این مطلب

          محمدرضا اسلامی

          اگر اشتباه نکنم،فایل EXE خروجی ویژوال استودیو فقط روی کامپیوتر خودتون جواب میده .اگر بخواید روی بقیه کامپیوتر ها هم اجرا بشه،باید با یه نرم افزار (که نمیدونم چه نرم افزاری؟!! ) dll های مورد نیازش رو هم ضمیمه کنید.

          • مدیر سایت

            مهدی دمرچیلو

            تو خطای خودش هنگام اجرا نام Dll رو ذکر کرده – برا منم اجرا نشد shout

          • نویسنده سایت

            میلاد رسولی بیدختی

            حدس میزنم شما کتابخانه pencv رو نصب ندارید.؟
            چه DLL رو لازم داره که براتون بفرستمش ….
            برای شناسوندن dll به ویندوز باید به قسمت Environment Variables برید و به متغییر path ادرس dll رو بدید .
            -فایل بالارو از فشرده سازی خارج کنید و بعد برنامه رو اجرا کنید .
            این کد پروژه
            http://s8.picofile.com/file/8275850600/code.txt.html
            برای پردازش صوت با openCV باید چه کتابخانه ای رو دانلود کنم ؟
            تا جایی که من اطلاع دارم این کتابخانه با خود opencv نصب نمیشه و باید بصورت جدا نصبش کنیم

          • نویسنده این مطلب

            محمدرضا اسلامی

            متاسفانه اطلاعی در مورد پردازش صوت ندارم.

  29. مدیر سایت

    مهدی دمرچیلو

    این کتاخونه OPENCV زن و مرد بودن رو هم تشخیص میده؟ و یا اگه همین عکس ته مطلب – اگه بدون ریشش رو هم قرار بدی – باز هم میتونه تشخیص بده که این چند درصد به تصویر قبلی شبیه هستش؟
    پردازش تصویر رو ARM در مقابل FPGA توجیهی داره برا انجامش؟ غیر از سرعت کار – چون در هر چیزی که بخوای درست کنی هزینه نهایی و سرعت مهمه که هیچ کدوم در رزبری وجود نداره.
    البته خب مرد میخواد بره سمت پردازش تصویر با FPGA – من بعد کار با LPC برنامم اینه که برم سمت FPGA البته هر چی خدا بخواد حالا این LPC رو ور بریم باهاش ببینیم چی میشه.

  30. مهمان

    یاسر

    عالی بود مهندس….

    • نویسنده این مطلب

      محمدرضا اسلامی

      این مهندس گفتنت بنده رو یاد یه دوست می ندازه …(اگر حدسم درسته،پس مهندس خودتی و … smile laugh )

  31. نویسنده سایت

    میلاد رسولی بیدختی

    برای تشخیص عدد و حروف که فک کنم بهش میگن ocr باید فایل .xml رو خودمون چجوری و با چه نرم افزاری بسازیم ؟؟

    • نویسنده این مطلب

      محمدرضا اسلامی

      باید ویژگی های هر حرف رو استخراج کنید(در این بخش مشکل دارم)
      و بعدش باید یک شبکه عصبی آموزش بدید و در قالب یه فایل xml ذخیرش کنید(به امید خدا اینو در قسمت بعدی مطلب آموزش میدم)

      • نویسنده سایت

        میلاد رسولی بیدختی

        مهندس ، پس اموزش کامل ساخت یه xml. رو برامون توی اموزش بعدی بگذار..

  32. نویسنده سایت

    مهدی زمانی

    خیلی جالب بود ولی جالب ترش اینه اینا رو بشه روی ارم پیاده کرد

    • نویسنده این مطلب

      محمدرضا اسلامی

      امکانش هست ولی اگه قراره با میکرو کنترلر ساخته بشه،بهتره با FPGA پیاده سازی بشه تا سرعتش قابل قبول بشه.
      در لینک زیر،یک پروژه تشخیص چهره با LPC ساخته
      مقاله اش قابل دانلوده و پروژه اش رو هم برای فروش گذاشته.