2025年8月4日月曜日

ロボットカー CSIカメラ制御

 CSIカメラモジュールが同梱されているが、これが何者なのか分からない。

 Raspberry Pi OS(64bit版)には、カメラ認識用の機能がインストールされているようです。

$ rpicam-hello --list-cameras

>>
 Available cameras
-----------------
0 : ov5647 [2592x1944 10-bit GBRG] (/base/soc/i2c0mux/i2c@1/ov5647@36)
    Modes: 'SGBRG10_CSI2P' : 640x480 [58.92 fps - (16, 0)/2560x1920 crop]
                             1296x972 [46.34 fps - (0, 0)/2592x1944 crop]
                             1920x1080 [32.81 fps - (348, 434)/1928x1080 crop]
                             2592x1944 [15.63 fps - (0, 0)/2592x1944 crop]

ov5647というカメラモジュールが認識されました。

カメラ制御には現在、picamera2というライブラリがよさそうです。

 とりあえず撮影

$ libcamera-still -n --width 1280 --height 1024 -o photo.jpg -t 1
※-n : プレビュー非表示、-o : 保存ファイル名、-t : 撮影までの待ち時間(秒)

 

---camera_test.py---
from  picamera2 import Picamera2
from libcamera import Transform
import time

picam2 = Picamera2(0)
config1 = picam2.create_still_configuration(transform=Transform(hflip=False, vflip=False))
#config2 = picam2.create_video_configuration(main={"size": (640, 480)})
picam2.configure(config1)
picam2.start()
time.sleep(2)
picam2.capture_file("camera_image.jpg")
picam2.stop()
------

 2592x1944サイズのjpgファイルができました。きちんと撮れてます。