ランニング用デジカメ(TG-630)でよく使う焦点距離をEXIFから集計分析
ランニング用デジカメのTG-630、完全防水がありがたいのですが、画質は今ひとつ。そろそろ次期主力ランニング用デジカメの選定を始めたい、と企んでおります。その日に備え、写真のEXIF情報からよく使う焦点距離(ズーム倍率)を分析してみました。感覚的には広角がほとんどだと思うのですが、さて、どうでしょうか?
iMacでちょこっとシェルスクリプトを書いて分析。集計の結果、この一年ランニング中にTG-630で撮影した写真が約2,600枚。そのうち80%が換算28mm相当の広角端での写真でした。目の前の風景を電源ONですぐ撮るのでこんなものでしょう。90%以上を予想していましたので、思ったより少ないですね。次に多いのが140mm相当の望遠端。7%ありました。あとはSuper Macroが2%で、この3焦点距離だけで約90%になります。他はちょっとした画角調整や標準近辺でしょうね。
結局、ズーム両端とマクロしか使っていないという、思った通りの結果でした。これなら画質最優先で28mm単焦点(GR?まだまだ高い!)でいいかもな、と思いましたが、やっぱり望遠端が7%というのは無視できない数字。遠くの山とかをアップで撮ったりしますからね。むしろこのデータは、広角端を最優先し、望遠やマクロは付いていればいい、と解釈しておくべきでしょう。
自分の感覚がデータで裏付けられたので、いよいよ次期主力ランニングデジカメの選定を開始することにします。さてさて、いつになることやら。
おまけ:Mac OS XでのEXIF分析方法
素性不明のフリーソフトをインストールはしたくないし、Lightroomは持っていない。自給自足でやるしかなさそうです。パッと考えると、exiftoolを使って写真からEXIFを抜き出してテキスト化し、Python+Pandasあたりで統計処理が王道かと思いますが、結構データも大きくなりそうだし時間もかかりそう。少し頭をひねって、Spotlight (Mac OS Xのデスクトップ検索機能)を利用することにしました。コマンドラインからmdfindやmdlsなどでメタデータを検索できるので、少しずつ焦点距離のメタ情報を変えて、該当する写真の枚数をカウントし、その差をとってグラフ化したのが冒頭のグラフです。
基本はそんなに難しくないのですが、mdfindコマンドの仕様か、シングルクォーテーション(')とダブルクォーテーション(")の使い分けに制約があるようで、そこで少々手間取りました。
- mdfindは、「'」と「"」を入れ替えても動くかと思ったが、どうも外側が「'」でないとだめな場合がありそう。
- そうなると、変数を使って文字列の一部を変化させるのに支障がある。
スクリプトの基本形は以下です。これをループさせるだけ。
mdfind '(kMDItemContentType == "public.jpeg") && (kMDItemFSContentChangeDate > $time.iso(2014-07-30T00:00:00Z))) && (kMDItemAcquisitionModel=="TG-630*") && (kMDItemFocalLength==5)' | grep "Masters" -c
日本語で順に説明すると、
- JPEGで
- 生成日付が2014/7/30 0時以降で
- 機種はTG-630*で
- 焦点距離が5(mm)
の中で、
- Mastersの文字列を含むもの(=Mastersフォルダにあるもの、の意味です)
の個数を表示。
なお、mdfindで使えるクエリーの説明は以下にあります。特に時刻周りは他のブログやWebサイトよりも、これを見るのが一番早道です。
日本語(PDF)
https://developer.apple.com/jp/documentation/SpotlightQuery.pdf
英語(HTML)
https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/SpotlightQuery/Concepts/QueryFormat.html
iMacでちょこっとシェルスクリプトを書いて分析。集計の結果、この一年ランニング中にTG-630で撮影した写真が約2,600枚。そのうち80%が換算28mm相当の広角端での写真でした。目の前の風景を電源ONですぐ撮るのでこんなものでしょう。90%以上を予想していましたので、思ったより少ないですね。次に多いのが140mm相当の望遠端。7%ありました。あとはSuper Macroが2%で、この3焦点距離だけで約90%になります。他はちょっとした画角調整や標準近辺でしょうね。
結局、ズーム両端とマクロしか使っていないという、思った通りの結果でした。これなら画質最優先で28mm単焦点(GR?まだまだ高い!)でいいかもな、と思いましたが、やっぱり望遠端が7%というのは無視できない数字。遠くの山とかをアップで撮ったりしますからね。むしろこのデータは、広角端を最優先し、望遠やマクロは付いていればいい、と解釈しておくべきでしょう。
自分の感覚がデータで裏付けられたので、いよいよ次期主力ランニングデジカメの選定を開始することにします。さてさて、いつになることやら。
おまけ:Mac OS XでのEXIF分析方法
素性不明のフリーソフトをインストールはしたくないし、Lightroomは持っていない。自給自足でやるしかなさそうです。パッと考えると、exiftoolを使って写真からEXIFを抜き出してテキスト化し、Python+Pandasあたりで統計処理が王道かと思いますが、結構データも大きくなりそうだし時間もかかりそう。少し頭をひねって、Spotlight (Mac OS Xのデスクトップ検索機能)を利用することにしました。コマンドラインからmdfindやmdlsなどでメタデータを検索できるので、少しずつ焦点距離のメタ情報を変えて、該当する写真の枚数をカウントし、その差をとってグラフ化したのが冒頭のグラフです。
基本はそんなに難しくないのですが、mdfindコマンドの仕様か、シングルクォーテーション(')とダブルクォーテーション(")の使い分けに制約があるようで、そこで少々手間取りました。
- mdfindは、「'」と「"」を入れ替えても動くかと思ったが、どうも外側が「'」でないとだめな場合がありそう。
- そうなると、変数を使って文字列の一部を変化させるのに支障がある。
スクリプトの基本形は以下です。これをループさせるだけ。
mdfind '(kMDItemContentType == "public.jpeg") && (kMDItemFSContentChangeDate > $time.iso(2014-07-30T00:00:00Z))) && (kMDItemAcquisitionModel=="TG-630*") && (kMDItemFocalLength==5)' | grep "Masters" -c
日本語で順に説明すると、
- JPEGで
- 生成日付が2014/7/30 0時以降で
- 機種はTG-630*で
- 焦点距離が5(mm)
の中で、
- Mastersの文字列を含むもの(=Mastersフォルダにあるもの、の意味です)
の個数を表示。
なお、mdfindで使えるクエリーの説明は以下にあります。特に時刻周りは他のブログやWebサイトよりも、これを見るのが一番早道です。
日本語(PDF)
https://developer.apple.com/jp/documentation/SpotlightQuery.pdf
英語(HTML)
https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/SpotlightQuery/Concepts/QueryFormat.html
- © のんびりポタ・ランニング 2015 -
pota-run.blogspot.jp
pota-run.blogspot.jp
0 件のコメント :
コメントを投稿