Raspberry Piカメラモジュールのセットアップと使い方 (V2、HQ対応)

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

Raspberry Pi OS Version 2022-09-22対応

更新日 : 2022年10月14日

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用カメラケーブルを取り付けます。

カメラ側

Buster / Legacy版Raspberry Pi OSについて

2021年11月にリリースされたRaspberry Pi OS Bullseye (バージョン2021-10-30)より、撮影コマンドがlibcamera-stillに変更になりました。Raspberry Pi OS Buster以前や、Legacy版をお使いの場合はraspistillとなっています。以降の解説の「libcamera-still」を「raspistill」に置き換えて実行して下さい。

OSバージョン撮影コマンド
Bullseye(2021-10-30)以降libcamera-still
Buster(2021-05-07)以前raspistill

Buster以前のOS、Legacy版を使っている場合、撮影前にカメラを有効にする必要があります。スタートメニューから、「設定 -> Raspberry Piの設定」で設定ツールを起動し、「インターフェイス」タブの「カメラ」の項目を「有効」にチェックして「OK」をクリックします。その後、Raspberry Piを再起動します。

動作確認

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

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

$ libcamera-still -n -o photo.jpg



プレビューできるようにする

Raspberry Pi 4以降の場合は本手順は不要です。次の「HQカメラのフォーカス、絞り調整」に進んで下さい。

プレビュー(カメラの画像をリアルタイムに表示)できるようにすると、フォーカスの調整などで便利です。まずターミナルで以下のコマンドを実行します。

$ sudo raspi-config

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

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

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

その後、再起動します。これでGlamorが有効になり、カメラでプレビューできるようになりました。

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

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

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

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

RPZ-CamMountKit (Raspberry Pi Zero用 HQカメラマウントキット)

Raspberry Pi(ラズパイ) Zeroシリーズと純正HQカメラを固定するマウントキットです。RPZ-PIRS拡張基板の人感センサーとカメラの方向を合わせるように設計しており、人や動物が通った際に撮影するような応用が可能です。

指定時刻にRaspberry Pi/Jetson Nanoの電源をON/OFF (RPZ-PowerMGR)

RPZ-PowerMGRを使って、指定時刻にRaspberry Pi(ラズパイ)やJetson Nanoの電源ON/OFFする方法の解説です。決まった時間だけ起動して消費電力を抑えることが可能で、モバイルバッテリーやソーラーシステムでの運用に最適です。

SCD41 CO2センサーとRaspberry Piで二酸化炭素濃度を測定する

Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、SCD41 CO2センサーで二酸化炭素濃度を測定したり、センサーの校正や設定を変更する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定や記録ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。