VNC接続してカメラプレビュー画面を表示させる
前提
Raspberry PiへHDMIモニターを接続せずに,VNCやSSHでリモートアクセスしている場合,カメラのプレビューが表示されない(例:カメラモジュールを始めよう - Pythonコードでカメラモジュールをコントロールする方法 | Raspberry Pi Projects)。
そこで,以下のような対策を取ってきた。
SSPライブラリでRaspberry Pi Camera Moduleを動かしてみる - input-R
RPi-Cam-Web-Interface - input-R
ちなみに,前者のVisionProcessingFrameworkは,上記ページではリンクが切れているが,今は,https://soho-enterprise.com/page-915/からダウンロードできる。ただし,High quality camera(IMX417R)は該当するライブラリがないので,使えない(と思われる)。
対策
VNC接続の設定を変える
下記に書いた通り,VNC Serverを開き,アプリの右上からOptionsを開く。Troubleshootingを選び,Enable direct capture modeにチェックを入れる。
Raspberry PiへのPoE給電とUbuntuからVNC接続 - input-R
picameraによる実行
pipenv仮想環境にpicameraを入れる(不要かも?)
cd PJhqcamera pipenv shell pipenv install picamera
picameraを実行
pipenv仮想環境でjupyter labを立ち上げ,以下のコードを実行。プレビュー画面がUbuntu上に表示される。
from time import sleep from picamera import PiCamera camera = PiCamera() camera.start_preview(fullscreen=False, window=(50,150,1024,576)) sleep(10) camera.stop_preview() camera.close()