Raspberry Piカメラモジュールの使い方 (V2、HQ対応)

Raspberry Pi(ラズパイ)に純正カメラモジュールを接続して、写真を撮影する方法の解説です。HQカメラのレンズ取り付けとフォーカスの調整についても解説しています。

更新日 : 2023年11月11日

Raspberry Piカメラモジュールとは

Raspberry Piにはカメラモジュールを接続できる端子が装備されており、ケーブルを使ってカメラを接続することで、写真や動画を撮影できるようになります。プログラムと組み合わせることで、定期撮影、画像をサーバーに送信してスマートフォンからモニタリング、機械学習による画像認識などの応用が可能になります。

Raspberry Piカメラモジュールの種類

純正のカメラモジュールは主にRaspberry PiカメラモジュールV2Raspberry Pi HQカメラの2種類です。違いを表にまとめました。

カメラモジュールV2HQカメラ
画質良い
8メガピクセル
とても良い
12メガピクセル
レンズレンズ一体型別途レンズが必要
6mm広角レンズ (純正)
16mm望遠レンズ (純正)
3.2mm超広角レンズ
(RPL-UltraWide-3.2mm)
価格約5000円約10000円〜(レンズ込)
固定三脚に取り付け不可。専用ケースなどが必要三脚に取り付け可能
Raspberry Pi Zeroでの利用別途Raspberry Pi Zero用カメラケーブルが必要別途Raspberry Pi Zero用カメラケーブルが必要

HQカメラのレンズはマウントが合えば利用できます。本記事では、広角と望遠の純正レンズ2点、および広範囲の撮影に便利な3.2mm超広角レンズ(RPL-UltraWide-3.2mm)について解説します。

レンズの画角の違い

同じ距離(50cm)で撮影した比較です。室内全体を撮影したり、近い距離のものを広く写す場合には広角のレンズ、遠くのものを大きく写す場合には望遠レンズが便利です。

3.2mm超広角レンズ
6mm広角レンズ
16mm望遠レンズ



HQカメラのレンズ取り付け

ここからは実際にカメラモジュールをセットアップする手順を解説していきます。

HQカメラを使う場合はレンズを取り付けます。カメラモジュールV2の場合はレンズ取り付けは不要です。次の「ケーブルの取り付け」に進んで下さい。

HQカメラ本体には、保護キャップ、C-CSアダプター、バックフォーカス調整リングの3つの部品が付いています。レンズのマウントの種類に応じて、以下の部品を半時計回りに回して取り外します。保護キャップを取り外すと、内部のイメージセンサーが露出するので、ホコリが入らないようにクリーンな環境で作業して下さい。

レンズ保護キャップC-CSアダプターバックフォーカス調整リング
CSマウント (6mm広角レンズ、
3.2mm超広角レンズ)
外す外す取り付けたまま
Cマウント (16mm望遠レンズ)外す取り付けたまま取り付けたまま
HQカメラ本体から取り外す部品
HQカメラ本体

レンズを取り付けます。レンズ本体を時計回りに回転させて一番奥まで挿入します。

その後、バックフォーカス調整リングの固定ネジを付属マイナスドライバーで締めて固定します。最初から締まっている場合は不要です。

6mm広角レンズ
16mm望遠レンズ
3.2mm超広角レンズ

必要であれば三脚も取り付けておきます。

ケーブルの取り付け

Raspberry Pi本体のカメラ用端子に、カメラケーブルを取り付けます。

コネクターに装着されている黒いつめを一旦外すことで隙間ができるので、ケーブルを差し込みます。裏表があるため、ケーブルの金属端子がコネクターの金属端子に接触する向き(黒いつめの反対側)になるようにします。最後に黒いつめを再度差し込むとケーブルが固定されます。

Raspberry Pi Zeroシリーズは端子が小さいのでRaspberry Pi Zero用カメラケーブルが必要になります。

Raspberry Piシリーズ
Raspberry Pi Zeroシリーズ

ケーブルの反対側はカメラ本体につながっているので、そのままで問題ありません。Raspberry Pi Zeroで利用する場合は、最初から付いているケーブルを取り外してRaspberry Pi Zero用カメラケーブルを取り付けます。

カメラ側

動作確認

ターミナルを開き、以下の$に続くコマンドを実行します。撮影した画像がphoto.jpgという名前で保存されればOKです。-nオプションはプレビューなしの指定です。

HQカメラの場合はピント調整前なので、ぼやけた画像になっていると思いますが、問題ありません。

$ libcamera-still -n -o photo.jpg

失敗する場合は「撮影に失敗する場合」を参照してください。

HQカメラのフォーカス、絞り調整

HQカメラ用レンズはフォーカス(ピント)と絞りがマニュアルとなっており、手動で調整する必要があります。以下のコマンドで、カメラのプレビュー映像がディスプレイに60秒間表示されるので、それを見ながら調整すると良いでしょう。-fはフルスクリーン表示の指定です。

$ libcamera-still -f -t 60000

プレビューが利用できない場合は「プレビューに失敗する場合」をお試しください。それでも解決しない場合、先ほどのコマンドで撮影したjpgファイルを確認しながら調整する必要があります。

フォーカスを調整するには、以下の固定ツマミを緩めてフォーカス調整部分を回転させます。対象物がぼやけない位置に調整し終えたら、固定ツマミを締めて固定します。

6mm広角レンズ
16mm望遠レンズ
3.2mm超広角レンズ

絞りを調整するには、以下の固定ツマミを緩めて以下の絞り調整部分を回転させます。絞りを開く(低いF値)するほど光を多く取り込めるので、暗い場所でも撮影できますが、ピントが合う距離の範囲は狭くなります。調整し終えたら固定ツマミを締めて固定します。

6mm広角レンズ
16mm望遠レンズ

3.2mm超広角レンズは絞り値が固定なため、調整はありません。




写真撮影

ここではいくつかの代表的なオプションを紹介します。

-o オプションで保存するファイル名を指定します。

-t オプションで撮影までの待ち時間をミリ秒で指定します。指定しないと5秒になります。0だと無期限に待機してプレビューするので、撮影は1以上にします。

-nオプションでプレビューを非表示にできます。

width/heightオプションで画像サイズを変更(縮小)できます。

プレビューせずにすぐ撮影するには、以下のようにします。

$ libcamera-still -n -o photo.jpg -t 1

画像サイズを1280×1024にするには、以下のようにします。

$ libcamera-still -n --width 1280 --height 1024 -o photo.jpg -t 1

30秒後に撮影するには、以下のようにします。

$ libcamera-still -n -o photo.jpg -t 30000

rotation / -rotオプションに90, 180, 270を指定することで回転できます。カメラを設置した向きによっては回転させたほうが見やすくなります。180度回転するには以下のようにします。

$ libcamera-still -n -o photo.jpg --rotation 180

撮影に失敗する場合

ケーブルの接触不良でカメラを認識していない場合があります。電源をオフしてケーブルを挿し直し、再度電源を入れてお試しください。Raspberry Pi側のコネクターを挿し直しても解決しない場合はカメラ側コネクターもご確認ください。

プレビューに失敗する場合

「-n」オプションを指定しない場合はカメラの入力を画面上にリアルタイムに表示する「プレビュー」画面が表示されます。しかし、OSバージョンや使用しているRaspberry Piの種類によっては、プレビューに失敗する場合があります。その際は以下の設定をお試しください。

ターミナルで以下のコマンドを実行します。

$ sudo raspi-config

設定ツールが起動するので、「Advanced Options」を選択してEnterを押します。

「Glamor」を選択してEnterを押します。

Glamorグラフィックアクセラレーションを有効にするか聞かれるので、「はい」を選択してEnterを押します。

その後、再起動します。

まとめ

Raspberry Pi(ラズパイ)に純正カメラモジュールを接続して、写真を撮影する方法の解説は以上です。今回はコマンドで撮影する方法を紹介しましたが、Pythonなどのプログラムから撮影する機能もあります。プログラムと組み合わせることで、定期撮影、画像をサーバーに送信してスマートフォンからモニタリング、機械学習による画像認識などの応用が可能になります。

Raspberry Pi Zero、HQカメラを三脚にマウント可能にする「RPZ-CamMountKit」もご用意しております。カメラとのケーブルの長さが足りない場合や、人感センサー基板「RPZ-PIRS」と組み合わせて人が通ったら撮影するような場合に有効です。

RPZ-CamMountKit利用例
定期撮影ラズパイカメラをモバイルバッテリーで長期運用 (RPZ-PowerMGR)

Raspberry Pi(ラズパイ)と純正カメラを使用して、定期的に撮影するタイムラプス機能を実装する方法を解説します。RPZ-PowerMGR拡張基板を使うことで、指定時刻に起動し、撮影後は自動的にシャットダウン&電源OFFします。待機時の消費電力をカットすることで、モバイルバッテリーで長期運用が可能になります。

複数のステッピングモーターを制御する (Raspberry Pi + RPZ-Stepper)

RPZ-Stepperは基板1枚に2台のステッピングモーターを接続でき、最大で基板2枚、モーター4台を制御できます。本記事では、制御ソフトウェアcgstepで複数ステッピングモーターを制御する方法を解説しています。複数台のモーターを使うことでX/Y/Z軸移動など複雑な動きを実現できます。

RPZ-PIRS (Raspberry Pi用 人感/明るさセンサー/赤外線 拡張基板)

Raspberry Pi(ラズパイ)に人感、明るさセンサー、赤外線送受信機能を搭載できる拡張基板です。人感センサーで人や動物を検知してカメラで撮影したり、赤外線で照明をONするような使い方が可能です。周囲の明るさをモニターできる他、外付温湿度/気圧センサー(別売り)を接続することで、温度、湿度、気圧の測定機能を追加できます。7色表示可能なRGB LEDにステータスを表示したり、スイッチを押すことで特定の動作をさせることができます。