!!! サイト改修中のため表示が乱れる場合があります(1月末頃まで) !!!
画像処理

14-15. Canon EOS デジタル一眼レフカメラをPythonで制御

やること

Canonのデジタル一眼レフカメラ(EOSシリーズ)をPythonで制御してみます。コード非掲載の備忘録です。

GUI制御

有線/無線とも公式のEOS Utility一択。機種によって無線対応が異なるので事前に確認すること。

スクリプト制御

大きく分けてCCAPI、EDSDK、サードパーティ製ツールの方針がある。CCAPIとEDSDKは公式に問い合わせてCDを郵送してもらう。

CCAPI

無線LAN接続して、ブラウザやCurlから

http://[IPAddress]:[Port]/ccapi/[Version]/shooting/shutterbotton

で撮影するような使い方。露光時間等の設定もできる。対応機種は少なめ。

なお、CCAPI非対応機種であっても無線LAN接続できればブラウザから

http://[IPAddress]:[Port]/upnp/CameraDevDesc.xml

でカメラの表面上の情報だけは取得できた。設定値の取得や設定はできない。

EDSDK

有線接続してC#、VB、VCで制御する使い方。対応機種は多め。公式Youtube動画を見てサンプルコードの実行はできた。

サードパーティ製ツール

ある程度いろいろなカメラを制御できる汎用ツールとしてgPhoto(Linux系のみ対応)、digiCamControlが挙げられる。それぞれ無線対応かまでは調べていない。

結果

いろいろ試した結果、目的だった「PCと有線接続してPythonで写真撮影」ができた。パラメータとして露光時間、ISO、絞り値等を指定できる。使用した機種はEOS 80D。

バフンウニの殻を撮りました。今はなき貴重なエネループロゴも一緒に。

まとめ

「PC+Webカメラ」「Raspberry Pi+カメラモジュール」といった組み合わせであれば比較的簡単にプログラム撮影できますが、カメラとしての性能には限界があります。今回の方法であれば自在に空間/時間解像度を設定して自動撮影ができます。

リアクションのお願い

「参考になった!」「刺激された!」と思ったらぜひリアクションをしましょう。エンジニアの世界はGive and Takeによって成り立っています。これからも無料で良質な情報にアクセスできるよう、Giveする人への感謝をリアクションで示しましょう!

この記事をシェアする

自身のブログ等で使用する場合は引用を忘れずに!

また、寄付も受け付けています。コーヒー1杯でとても喜びます(*˘︶˘*)

 Amazonでギフト券(アマギフ)を贈る

こちらのリンク から金額を指定してお贈りください。(デフォルトで10000円になっているのでご変更ください)

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 Amazonで食事券(すかいらーく優待券)を贈る

500円 1000円 2000円 5000円 からお贈りください。

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 その他、ギフト券やクーポン券をメールで贈る

デジタルのギフト券/クーポン券はメールアドレス(staffあっとvigne-cla.com)までお送りください。受領の返信をいたします。
紙のギフト券/クーポン券は 「郵便物はこちらへ」の住所 まで送付してください。名刺やメールアドレスを同封していただければ受領の連絡をいたします。
余った株主優待券等の処理におすすめです。
いずれも見返りはありませんのでご了承ください。

不明点はSNSでお気軽にご連絡ください

ビネクラのTwitter・Youtubeでコメントをください!


Slack・Discordの場合はこちらの公開グループに参加してShoya YasudaまでDMをください!


※当ブログに関することは何でもご相談・ご依頼可能です。

この記事を書いた人
Yasuda

博士(理学)。専門は免疫細胞、数理モデル、シミュレーション。米国、中国で研究に携わった。遺伝的アルゴリズム信者。物価上昇のため半額弁当とともに絶滅寸前。

タイトルとURLをコピーしました