OV5640 FPC カメラモジュール#
OV5640 FPC カメラモジュールは、オートフォーカス付きのコンパクトな 5MP ローリングシャッターカラーセンサーです。基板間コネクタを介して OpenMV Cam のベースボードに取り付けられ、薄型のビルドを実現します。
完全なデータシート、写真、注文については OV5640 製品ページ を参照してください。
注釈
現時点では OpenMV N6 ではサポートされていません。
ハイライト#
5MP (2592x1944) ローリングシャッターセンサー
オートフォーカス、F2.0 絞り、可変焦点距離
使い方#
QVGA (320x240) RGB565 ビデオをストリーミングします。OV5640 はあらゆる画像処理パイプライン向けの通常のカメラモジュールとして動作します:
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.QVGA)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
OV5640 にはオンボードの JPEG コンプレッサーも搭載されています。pixformat を csi.JPEG に設定すると、センサーは圧縮されたフレームをカメラバス経由で OpenMV Cam に直接配信するため、ホストはエンコードではなく処理に専念できます。圧縮品質 (0-100) は csi.CSI.quality で制御します。数値が大きいほどより多くの詳細が保持されますが、フレームサイズが大きくなります。
1280x720 (HD) で JPEG フレームをキャプチャ:
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.HD)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
1920x1080 (FHD) で JPEG フレームをキャプチャ:
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.FHD)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
フル 5MP (2592x1944 (WQXGA2)) で JPEG フレームをキャプチャ:
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.WQXGA2)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
OV5640 にはボイスコイルアクチュエータ式のオートフォーカスレンズが搭載されています。csi.CSI.ioctl と csi.IOCTL_TRIGGER_AUTO_FOCUS を使って単発のオートフォーカスパスをトリガーします。センサーはフォーカスモーターを 1 回スイープし、前にあるものにロックします:
csi0.ioctl(csi.IOCTL_TRIGGER_AUTO_FOCUS)
シーンが変化したときはいつでも ioctl を再発行してください。オートフォーカスは連続ではなく単発です。