مقدمه
آنچه در این آموزش یاد میگیرید
- نحوه اتصال و راه اندازی دوربین با رزبری پای
- کنترل دوربین با استفاده از اسکریپت پایتون
- عکس برداری با دوربین رزبری پای
- فیلم برداری با دوربین رزبری پای
لوازم مورد نیاز
سخت افزارهای مورد نیاز
نرم افزارهای مورد نیاز
راه اندازی دوربین با رزبری پای
کنترل دوربین با استفاده از رزبری پای بسیار ساده است. برای راه اندازی دوربین فقط کافیست مراحل زیر را انجام دهید:
راه اندازی دوربین در رزبین دسکتاپ
- دوربین را به رزبری پای متصل کنید.
راه اندازی دوربین در رزبین لایت
- دوربین را به رزبری پای متصل کنید.
- در ترمینال دستور زیر را تایپ کنید تا به بخش تنظیمات رزبری پای بروید.
عکس برداری با استفاده از دوربین رزبری پای
عکس برداری با استفاده از ترمینال رزبین
کتابخانه های مورد نیاز دوربین، به صورت پیش فرض روی سیستم عامل رزبین نصب شده است.
با دستور raspistill می توانید یک عکس بگیرید. برای آشنایی با نحوه ی استفاده از این دستور، آن را در ترمینال رزبین تایپ کنید.
raspistill
برای مثال، با کد زیر، پس از 2 ثانیه عکسی گرفته می شود و با نام image1 ذخیره می شود.
عکس برداری با استفاده از اسکریپت پایتون
نکته
در کد زیر، ابتدا دوربین 5 ثانیه به صورت پیش نمایش فعال می شود و سپس یک عکس گرفته و آن را بر روی دسکتاپ شما با نام image ذخیره می کند:
from camera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview()
sleep(5) #at least 2 seconds recommended
camera.capture('/home/pi/Desktop/image.jpg')
camera.stop_preview()
نکته
اضافه کردن متن به عکس
با استفاده از دستور annotate_text می توانید متن دلخواه خود را به تصویر اضافه کنید. به مثال زیر توجه کنید:
camera.start_preview()
camera.annotate_text = "Electropeak"
sleep(5)
camera.capture('/home/pi/Desktop/text.jpg')
camera.stop_preview()
می توانید با استفاده از کلاس Color و دستورات annotate_background و annotate_foreground، رنگ نوشته را تغییر دهید.
همچنین می توانید با دستور annotate_text_size سایز نوشته را تغییر دهید:
from picamera import PiCamera, Color
from time import sleep
camera = PiCamera()
camera.start_preview()
camera.annotate_background = Color('pink')
camera.annotate_foreground = Color('red')
camera.annotate_text_size = 60
camera.annotate_text = "Electropeak"
sleep(5)
camera.capture('/home/pi/Desktop/text.jpg')
camera.stop_preview()
اضافه کردن افکت به تصویر
در کتابخانه ی Picamera فیلتر های مختلفی برای اعمال روی تصاویر وجود دارد. با دستور camera.image_effect = name of effect می توانید این فیلتر ها را اعمال کنید.
from picamera import PiCamera, Color
from time import sleep
camera = PiCamera()
camera.start_preview()
camera.image_effect = 'sketch'
sleep(5)
camera.capture('/home/pi/sketch.jpg')
camera.stop_preview()
افکت های قابل استفاده:
none, negative, solarize, sketch, denoise, emboss, oilpaint, hatch, gpen, pastel, watercolor, film, blur, saturation, colorswap, washedout, posterise, colorpoint, colorbalance, cartoon, deinterlace1, and deinterlace2
توضیح کامل راجع به افکت ها را می توانید در اینجا ببینید.
فیلم برداری با استفاده از دوربین رزبری پای
فیلم برداری با استفاده از ترمینال رزبین
برای مثال، دستور زیر 10 ثانیه فیلم برداری می کند و آن را با فرمت .h264 و به نام video_test ذخیره می کند.
raspivid -o video_test.h264 -t 10000
فیلم برداری با استفاده از اسکریپت پایتون
با استفاده از کتابخانه ی Picamera و دستور start_recording می توانید دوربین را در مد فیلم برداری فعال کرده و شروع به فیلم برداری کنید.
from picamera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview()
camera.start_recording('/home/pi/Desktop/video.h264')
sleep(10)
camera.stop_preview()
یک گام جلوتر
- دوربین را با یک کلید کنترل کنید. هر بار که کلید فشرده شد، دوربین عکسی گرفته و آن را ذخیره کند.
- کنترل دوربین با سنسور PIR. هر وقت حرکتی در محیط مشاهده شد، به صورت خودکار چند ثانیه فیلم گرفته شود و بر روی رزبری پای ذخیره شود.
Comments (18)
سلام
ببخشید می خواستم بدونم اگه بخوام محصولی طراحی کنم و به بازار عرضه کنم باید چه جایگزینی برای رسپبری پای پیدا کنم؟
ممکنه بشه از خود رسپبری پای استفاده کرد؟
اورنج پای هم ممکنه بدردتون بخوره یا بوردهای STM
سلام , وقت به خیر
میخواستم بپرسم ایا روشی وجود داره که بشه کیفیت ویدیو گرفته شده توسط رزبری رو افزایش داد؟ به جز بالابردن تعداد فریم ها بر ثانیه یا اندازه ی عکس.
سپاس فراوان
سلام. وقت شما هم بخیر.
می توان کیفیت تصویر را با پردازش تصویر و اعمال برخی فیلترها روی آن تا حدودی افزایش داد. برای این کار می توانید از کتابخانه ی OpenCV استفاده کنید. این کتابخانه قابلیت نصب روی رزبری پای را هم دارد. برای مثال فیلم زیر را مشاهده کنید.
https://www.youtube.com/watch?v=-iY3S3IoIyE&feature=emb_logo
با سلام و احترام
ضمن عرض تشکر و قدردانی از ارائه مطالب آموزنده و کاربردی؛ بنده یک دوربین مدل imagingsourse دارم که دو تا خروجی پورت I/O و USB دارد ؛ ممنونم می شوم راهنمایی فرمایید که چگونه با رزبری پای متصل نمایم.
با تقدیم احترام
محمودپور
سلام
لطفا مدل دقیق دوربین خود را بفرمایید. و همچنین در صورت امکان لینکی حاوی تصویر دوربین خود بفرستید. همچنین برای اطلاعات بیشتر می توانید از لینک های زیر استفاده کنید.
“https://www.theimagingsource.com/” , “https://www.raspberrypi.org/forums/viewtopic.php?t=68256”
با سلام و احترام
ضمن عرض درود و قدردانی جهت ارائه مطالب مفیدتون؛ برنامه ای که نوشتم تصویر را میگیره منتهی مشکلی که وجود دارد این هستش که تصویر به صورت RGB نمایش داده نمی شود؛ ممنون میشم راهنمایی فرمایید.
با تشکر
سلام.
از چه دوربینی و چه کدی استفاده میکنید برای راهاندازیش؟
با سلام
از دوربین مدل 3.6mm IR 1080P استفاده میکنم و همچنین از کد دستوری زیر که در آموزش همین سایت نیز قرار داده شده استفاده میکنم.
from camera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview()
sleep(5) #at least 2 seconds recommended
camera.capture(‘/home/pi/Desktop/image.jpg’)
camera.stop_preview()
سلام وقت بخیر
من میخوام یه ماژولی راه اندازی کنم تا به کمک دوربین یه عکس از روی یک بارکد گرفته و اعدادش رو استخراج و تبدیل به متن بکنه ، اگر امکانش هست راهنمایی کنید ممنون میشم
سلام وقت شما هم بخیر.
متاسفانه در این رابطه اطلاعی ندارم. اما به طور کلی، برای پردازش تصویر بهترین ابزار پایتون و کتابخونه opencv هست. آموزش زیر هم میتونه براتون مفید باشه.
“https://www.geeksforgeeks.org/how-to-make-a-barcode-reader-in-python/”
با عرض سلام
می خواستم بدونم میشه تصویر دوربین رو با اینترنت انتقال داد و رو یه سیستم دیگه مشاهده کرد ؟؟؟
چراکه از طریق VNC تصویر رو انتقال نمیده…
اگر میشه چجوریه؟؟
تشکر
سلام.
بله امکان این کار هست. اما توضیحش در غالب کامنت میسر نیست، میتونید سوالتون رو در بخش انجمن در لینک زیر مطرح کنید.
https://thecaferobot.com/forum/
همچنین میتونید از دو آموزش زیر هم کمک بگیرید.
https://makezine.com/projects/beginner-project-a-remote-viewing-camera-with-raspberry-pi/
https://www.youtube.com/watch?v=zfBHD4v8hD0
با سلام وتشکر از آموزش شما
رزبری پای 4 تهیه کردم و رزبین 32 bit نصب کردم در اتصال دوربین در قسمت terminal دستور sudo raspi-config را اجرا کرده و وارد interface configuration شده , در آنجا به جای گزینه Camera Enable/Disable عبارت Legacy Camera Install Support دیده می شود. برای رفع این مشکل لطفا راهنمایی بفرمایید.
سلام
سوالتون رو میتونید در بخش انجمن کافهربات مطرح کنید تا دوستان دیگر که تجربه استفاده از این دوربین رو دارن هم بتونن راهنماییتون کنن.
انجمن کافهربات: https://thecaferobot.com/forum/
با سلام و تشکر از آموزش شما
اگه بخوام از این دوربین فقط بصورت preview استفاده کنم ساده ترین برد پیشنهادی شما چیه؟
ممنون
با سلام، من روزپری پای 3 ام رو ویندوز 10نصب کردم آیا راهی برای نصب دوربین روزبری هست؟
با سلام
با سرچ هایی که کردم به نظر میرسد زمانی که ویندوز میریزید فقط می توانید از دوربین هایی که از طریق USB وصل شده باشند استفاده کنید.
مگر اینکه درایور مربوطه را برای این موضوع پیدا کنید.