دوربین از مهمترین و پر کاربردترین گجتهای روزانه است. توسط دوربین اطلاعات تصویری با کیفیت و حجم متفاوتی به اطلاعات دیجیتالی تبدیل میشوند. سپس توسط نرم افزارهای متنوعی پردازش میشوند. اطلاعات دوربین برای یادگیری ماشینی و هوش مصنوعی بسیار مهم هستند. البته این دو جبهه نیاز به ابزارهای مختلفی دارند. یکی از این ابزارها دوربین و تحلیل پارامترهای تصویری است. همانطور که در فیلم ex machina مشاهده کردیم، هوش مصنوعی با توجه به تحلیل تصاویر صورت انسانها، رفتارهایشان و احساساتشان را یادگرفته است. در ادامه با معرفی و نصب نرم افزار پردازش تصویر OpenCV روی رزبری پای، با مرجع تخصصی رزبری پای به زبان فارسی، دیجی اسپارک همراه باشید.
نرم افزار پردازش تصویر OpenCV
OpenCV یا Open Computer Vision Library مجموعه ای از کتابخانههای برنامهنویسی پردازش تصویر و یادگیری ماشین است. نرم افزار OpenCV کاربردهای بسیار زیادی دارد. به عنوان مثال میتوان نرم افزارهای واقعیت افزوده، تشخیص چهره، تشخیص حرکت، فیلترهای تصویری، شناسایی اشیا و … را به عنوان کاربردهای پردازش تصویر نام برد. اطلاعات نرم افزار OpenCV در مبحث اینترنت اشیاء IoT هم کاربرد دارد. به عنوان مثال میتوانیم با قرار دادن یک دوربین ساده در ورودی یک ساختمان، تعداد انسانها و جنسیت آنها را در طول یک روز محاسبه و بررسی کنیم. در این آموزش قصد داریم OpenCV و پکیجهای آن را روی برد رزبری پای Raspberry Pi نصب کنیم. بنده موارد این آموزش را روی رزبری پای ۳ با سیستم عامل رزبین «Stretch» اجرا کردهام. لازم به ذکر است که موارد روی پایتون ۲٫۷ اجرا شده است.
شروع نصب OpenCV روی رزبری پای
ابتدا از طریق raspi-config مطمئن میشویم که سیستم عامل از تمام فضای اس دی کارت استفاده میکند برای اینکار دستور sudo raspi-config را در ترمینال وارد کرده و سپس گزینه Advanced Options و سپس Expand Filesystem را انتخاب میکنیم و سپس Finish را انتخاب کرده و سیستم را ریبوت میکنیم.
حذف نرم افزارهای اضافی از رزبین
اگر از اس دی کار ۸ گیگی استفاده میکنید یا بطور کلی فضای کمی در اختیار دارید باید نرم افزار های بدون استفاده را پاک کنید. ما در این آموزش LibreOffice و Wolfram را حذف میکنیم که در حدود ۱ گیگابایت فضا در اختیار ما خواهد گذاشت.
sudo apt-get purge wolfram-engine sudo apt-get purge libreoffice* sudo apt-get clean sudo apt-get autoremove
دستورات نصب OpenCV
برای نصب نرم افزار پرداز تصویر OpenCV همانند مرحله قبلی از طریق کامند لاین موارد را اجرا میکنیم. دستورات زیر را به ترتیب وارد کنید. شروع به نصب OpenCV از مخازن رزبین میشود.
sudo apt-get update && sudo apt-get upgrade sudo apt-get install libopencv-dev python-opencv sudo pip install opencv-python
روش دیگری نیز برای نصب OpenCV وجود دارد که میتوانید سورس را بصورت دستی دانلود کرده و آنها را خودتان کامپایل کنید که ما از توضیح این روش صرف نظر میکنیم. جهت مطمئن شدن از نصب بودن تمامی پکیج های مورد نیاز برای نرم افزار OpenCV میتوانید پکیجهای زیر را نصب کنید. شامل پکیجهای ابتدایی پردازش تصویر هستند.
sudo apt-get install build-essential cmake pkg-config libv4l-dev libperl-dev libgtk2.0-dev libgtk-3-dev libjpeg-dev libtiff5-dev libjasper-dev libpng-dev libpng12-dev libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libv4l-0 libv4l-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran python-numpy python-scipy python-matplotlib default-jdk ant libgtkglext1-dev v4l-utils python2.7-dev python3-dev python-picamera pip install numpy
تست نصب موفق نرم افزار
جهت تست میتوانید کد زیر را اجرا کنید که ورژن opencv نصب شده را نمایش میدهد:
python >>> import cv2 >>> cv2.__version__
استفاده از دوربین رزبری پای در OpenCV
همچنین میتوانید از دوربین رزبری پای Raspberry Pi در پروژههای خود استفاده کنید. در این آموزش پکیجهای مورد نیاز آن را نصب کردهایم. برای استفاده کافیست دوربین مخصوص را به پین های رزبری پای متصل کرده و در raspi-config دوربین را فعال کنید و برای تست میتوانید کد پایتون زیر را اجرا کنید که یک عکس بگیرید و در فایل image.jpg ذخیره کنید.
import picamera camera = picamera.PiCamera() camera.capture('image.jpg')
مستندات opencv پایتون در این وبسایت و مستندات دوربین رزبری پای در این وبسایت موجود میباشند. همچنین سوالاتتان در خصوص دوربین رزبری پای را میتوانید در پست چگونه از دوربین رزبری پای Raspberry pi استفاده کنیم؟ مطرح کنید. سپس سوالات در مورد پردازش تصویر را از همین طریق مطرح کنید. حال میتوانید پروژه های گستره ای را با پردازش تصویر و یادگیری ماشین با زبان پایتون در رزبری پای انجام دهید.
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد.
در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.
سلام خسته نباشید.. بنده تمامی مراحل نصب رو با دقت دنبال کردم اما تو هر قسمتی برای نصب ارور میده.. چطور میتونید راهنمایی کنید خیلی ممنون میشم واقعا کارم لنگ مونده
سلام و سپاس
لطفا ارور هایی که میدهد را ارسال کنید تا راهنمایی کنم
سلام.منم همین مشکل رو دارم.کمک کنید لطفا
با سلام.لطفا آموزشی در خصوص تبدیل رسپبری به تلویزیون دیجیتال بگذارید
با تشکر
با سلام
منظورتان از تلویزیون دیجیتال چیست؟
پخش تلویزیون توسط رسپبری پای بر روی مانیتور.
مثلا با سیستم عامل osmc که رسپبری رو تبدیل به پخش چند رسانه ای میکنه،تلویزیون هم پخش کنه.
یعنی آنتن بهش متصل بشه؟
اره مثلا
کاری که گیرنده دیجیتال میکنه
خب شما برا اینکار میتونید از گیرنده هایی که بصورت usb هستند استفاده کنید
ببخشید سوالی ذهنمو درگیر کرده
نرم افزاری هست که بدونه برنامه نویسی بشه باهاش دوربین رو راه انداخت و فیلم وعکس گرفت؟
سلام
بله برنامه های آماده در اینترنت یافت میشوند.
مانند این نمونه: RPi_Cam_Web_Interface
سلام و وقت بخیر جناب کدخدایى، ممنون از زحمات و مطالب مفیدتون، من قصد دارم open cv با پایتون رو روى Raspbian و بصورت ماشین مجازى پیاده کنم و از دوربین لپتاپ استفاده کنم ، موقع نصب مدول picamera پیام میده که این مدول در دسترس نیست، دلیلش میتونه مجازی سازی باشه یا مشکل از جای دیگه ای هست؟
سلام
وقت شما هم بخیر
متاسفانه امکان استفاده از picamera در Raspberry Pi Desktop موجود نمیباشد و شما باید از تابع cv2.VideoCapture() استفاده کنید.
pi@raspberrypi:~ $ sudo pip install opencv-python
بعد از این دستور خطای زیر رو میده :
Collecting opencv-python
Could not find a version that satisfies the requirement opencv-python (from versions: )
No matching distribution found for opencv-python
سلام
opencv از طریق دستور خط بالا نصب شده
sudo apt-get install python-opencv
و مشکلی نیست
جناب کدخدایی
ضمن تشکر و عرض خسته نباشید خواهشمندم در صورت امکان با شماره ۰۹۱****** با بنده تماس حاصل فرمایید. با تشکر خلیلی
با سلام
در حال حاضر امکان مشاوره وجود ندارد. جنابعالی میتوانید از همین طریق اقدام بفرمایید. یا اگر میخواهید به صورت خصوصی موارد را با بنده پیگیری بفرمایید از طریق پرتال پشتیبانی دانشجو کیت، تیکت ارسال کنید.
سلام؛
آیا امکان داره پردازش تصویر و تحلیل عکس روی ال سی دی نمایش داده شود ؟
سلام
شما اگه یک ال سی دی تهیه کنید میتونین روی اون نمایشش بدید
با سلام . من قصد انجام یک پروژه پردازش تصویر در یک مکان صنعتی رو با استفاده از رسپبری پای ۳ دارم . به این صورت که کنترل یک سروو موتور بسته به مکان تشخص داده شده توسط رسپبری و به صورت real time دارد . یعنی با دوربین دیدیو پردازش و سیگنال مربوط به سروو ارسال بشه . امکانش هست ؟ کمی راهنمایی نیاز داشتم با تشکر
با سلام
دقیقا نیاز داشتین مکان چه چیزی را تشخصید بدید؟
با سلام مجدد . دو قطعه که باید دقیقا در مکان مشخصی جوش بخورن . الان تنظیم جای این دو قطعه توسط چشم انسان ولی البته با استفاده از دوربین و ماتیتور تشخیص و تنظیم میشه .
با OpenCV این امکان وجود دارد
برای اینکه این پروژه براش شما انجام شود لطفا از طریق پشتیبانی سایت دانشجو کیت پیگیری فرمایید
سلام . متاسفانه موفق به تماس از طریق سایت دانشجو کیت نشدم . اگه زحمتی نیست با شماره بنده تماس بگیرید . با تشکر
با سلام
کاربر گرامی لطفا به قوانین مجموعه احترام بگذارید. تنها راه ارتباطی در خصوص طراحی فقط از طریق مسیر معرفی شده میباشد.
سلام
با دوربین رزبری و رزبری پای می شود کنترلر درب پارکینگ (از طریق عکسبرداری از پلاک خودرو و مقایسه با عکس گرفته شده از قبل) ساخت؟
سلام بله این امکان وجود دارد و شما باید بتوانید اعداد و حروف روی پلاک را پردازش کرده و با دیتابیس موجود تطبیق دهید
با سلام و خدا قوت حضور مهندس عزیز . لطفا در خصوص نصب pip install numpy راهنمایی فرمایید . این کتابخانه نصب نمیشه ممنون از سایت خوبتون
سلام و سپاس
چه اروری بر میگردونه؟
زمانی که import cv2 رو میزنم این ارور رو میده
numpy . core.multiarray faild to import
برای نصب چه اروری میده
pip install numpy
سلام تشکر از سایت خوبتون مشکلم حل شد . واقعا سایتتون عالی هست . لطفا در خصوص اعمال histogram Equalization بر روی ویدئو در opencv پایتون هم مطلب بذارید .
سپاااااااااااااااس فراوان
سلام و سپاس
بله حتما بزودی توابع بیشتری از opencv معرفی خواهند شد
سلام اقای کدخدایی خسته نباشید
یه برنامه ای باپایتون میخام بنویسم ک بتونه کارایی مثل تشخیص انسان و حرکات دستشو و اشیاهای مختلف انجام بده
حالا ازطریق apiدوربین مداربسته یا دوربین روی برد
میخاستم ببینم چه بردی رو مناسب میدونید ک تهیه کنم
اگر راهنماییم کنید ممنونتون میشم
با سلام و تشکر از شما
این مورد بستگی به بودجه مورد نظر شما دارد. ولی به صورت کلی پیشنهاد میشود از ESP32-Cam استفاده کنید. آموزشهای زیر را بررسی کنید.
سیستم تشخیص انسان مبتنی برد تراشه ESP32 و نرم افزار TensorFlow
سیستم Object Detection تشخیص اشیا با ESP32-CAM و Tensorflow
شروع پردازش تصویر با برد Maixduino توسط شبکه عصبی mobilenet
با سلام
برای من هم نصب نشد و پیغام خطا میداد که با مراجعه به آدرس زیر با دو دستور ساده به راحتی نصب شد.
https://linuxize.com/post/how-to-install-opencv-on-raspberry-pi/
دستورات اینا هستن:
sudo apt update
sudo apt install python3-opencv
سلام
ممنون از راهنماییتون
خواهش میکنم.
سلام مهندس جان خسته نباشید این نرم افزار قابلیت تبدیل تصاویر حروف وکلمات رو به متن تایپی رو داره مثلا اگه با یک دوریبن از یک صفحه تایپی عکس گرفته بش این نرم افزار بتونه دونه دونه حروف رو برای ما به صورت ورد ویا اکسل باز سازی کنه
سلام و سپاس
بله چنین امکانی فراهم هستش ولی متاسفانه برای فارسی توسعه نیافته است
سلام و خسته نباشید خدمت گروه بزرگ دیجی اسپارک .
من الان از وقتی وارد سایت شدم واقعا گم شدم . و چندتا سوال داشتم .
یک . الان من میتونم کلیپ های اموزشی هر بحثی که دوس داشتم و داشته باشم ؟ و به چه صورت ؟
دو . ایا همه مطالب اموزشی به صورت فایل متنی هست؟
من دنبال پردازش تصویر با دوربین رزبری پای هستم کارهایی مثل تشخیص رنگ
چطور میتونم به اموزش ها دسترسی پیدا کنم ؟
با سلام و تشکر از شما
آموزش های دیجی اسپارک همگی به صورت پروژه محور هستند و به این صورت که بتوانید جلسه به جلسه دنبال کنید، مطلبی در سایت موجود نیست. در خصوص کلیپ هم دقت داشته باشید که در این جا ما آموزش میدهیم ولی ویدیو فقط به صورت معرفی پروژه است.
در خصوص پردازش تصویر هم به لینک زیر مراجعه کنید.
پردازش تصویر
سلام خسته نباشید من هر کاری کردم موفق به نصب اوپن سی وی روی رزبری نشدم رزبری من نسخه چهار رم ۴
باید فیلتر شکن براش وصل کنم؟؟؟؟؟
با سلام
احتمالا مشکل کانکشن دارید. با پروکسی بررسی کنید.
سلام خسته نباشین ممنون بابت اموزش فقط بعد نصب وقتی میام ایمپورت کنم این ارور رو میده
cannot open shared object file: No such file or directory
با سلام
کتابخانه های اعلام شده را اول نصب کنید و بعد اقدام به اجرا کنید.