Flow-Developers

Raspberry Pi, Raspbian, python, ROS, IoT, 電子工作, 機械学習, Deep learning, ライフハック

RaspberryPiで一眼レフカメラをリモート制御する環境を作るには,gphoto2-updaterが簡単です.

はじめに

  • 一眼レフカメラをリモート制御する定番ライブラリは,gphoto2です.
  • gphotoに関する日本語記事は古く∧少ないのですが,「インストールが大変面倒っぽい.動作が不安定」などネガティブな意見が散見されます.不安だけが残ります...
  • 2017年現在は,gphoto2-updaterというシェルがあって,これを叩けば簡単に環境構築できます.

gphoto2とは

f:id:flow-dev:20170814084918p:plain

  • gphoto2とは,PTP通信を叩けるライブラリです.
  • 各カメラメーカーのPTP仕様にカスタマイズしています.最新機種などカスタマイズが間に合ってない部分もありますが,PTPの個別アドレス自体はアドレス指定で叩けますので仕様解析すれば問題ないです.(←ココ重要です)

gphoto2-updaterでインストール

  • gphoto2-updaterでインストールしましょう.依存関係も解消してくれるので以下1コマンドで終わりです.
  • gphoto2-updaterの名前通りで,最新versionへのupdateもできそうです.
wget https://raw.githubusercontent.com/gonzalo/gphoto2-updater/master/gphoto2-updater.sh && chmod +x gphoto2-updater.sh && sudo ./gphoto2-updater.sh


一眼レフカメラをリモート制御してシャッターを切ってみる

  • 一眼レフカメラをRaspberryPiにUSB接続して以下のコマンドを打てば,シャッターが切れ,画像はカメラ側に保存されます.
sudo gphoto2 --capture-image

*動画のREC開始/終了は以下のコマンドです.

sudo gphoto2 --set-config movie=1
sudo gphoto2 --set-config movie=0


Raspberry Pi Tutorial 41: Control a DSLR with your Pi!

pythonでgphoto2が叩ける環境もいれておく

  • python-gphoto2という便利なラッパーばあります.pipで簡単に入ります.
  • これでpythonコードにgphoto2のコマンド埋め込みもできます.
sudo pip install -v gphoto2

まとめ

  • gphoto2-updaterpython-gphoto2を紹介しました.
  • 上記の通り,RaspberryPiで一眼レフカメラをリモート制御する環境を作るのは2017年現在はすごく簡単になっています.
  • ここまで簡単に環境できれば,ガジェット作りもやる気がしますね.

以上