今回は、手順1番目のPiCameraから画像の取り込みについてです。
1.PiCameraから画像の取り込み
2.オリジナル画像から作業領域をクロップ
3.画像をBGRからHSVへ変換
4.OpenCV – inRangeで画像を2値化
5.OpenCV – cannyによるエッジ検出
6.region of interest(注目する領域)を設定
7.OpenCV – HoughLinesPによる直線の検出
一般的にpythonからPicameraを制御するためにはpicameraパッケージを使います。
【プログラム例】
import time import picamera # 写真の保存場所 CAM_DIR = "/home/pi/picar-x/Picamera/" with picamera.PiCamera() as camera: while True: try: camera.resolution = (640, 480) camera.start_preview() time.sleep(2) filename = time.strftime("%Y%m%d%H%M%S") + ".jpg" save_dir_filename = CAM_DIR + filename camera.capture(save_dir_filename) except KeyboardInterrupt: print("Ctrl+Cで停止しました") breakしかしここでは、画像・動画に関する処理機能をまとめたOpenCVライブラリと、画像処理ユーティリティーのimutilsモジュールをそれぞれインストールして使いました。
pip install opencv-contrib-python
pip install imutils
【プログラム例】
import cv2 import time from imutils.video import VideoStream from imutils import resize # 写真の保存場所 CAM_DIR = "/home/pi/picar-x/Picamera/" vs = VideoStream(src=0).start() while True: try: # ファイルの取込 img = vs.read() image = resize(img, width=640) filename = time.strftime("%Y%m%d%H%M%S") + ".jpg" save_dir_filename = CAM_DIR + filename cv2.imwrite(save_dir_filename,image) except KeyboardInterrupt: print("Ctrl+Cで停止しました") break
0 件のコメント:
コメントを投稿