■EXIF情報
DateTimeOriginal 2019:12:08 09:52:27
Model NIKON D5100
LensModel 18.0-55.0 mm f/3.5-5.6
ExposureTime 1/250
FNumber f8
ISOSpeedRatings. 140
FocalLength. 26mm
私にとってプログラムは、鉛筆のような文房具。仕事で鉛筆を文章を書く人もいれば、鉛筆でメモを取る人もいるだけのこと。画像のメタ情報Exifを読み込み表示するプログラムを書き、GitHubに公開してみました。
新しいプログラムを勉強するには、先人のソースを読むこと。でも、それだけでは、まだまだ、おぼつかない。やはり、みずから、ソースを書くことで実力が、一桁上がる。しかも、自分がこれまで他の言語で書いたソースを新しい言語に翻訳してみることで、新しい言語の仕様の詳細、使い回しが身につく。
昔、Perlで作成したプログラムをPythonに書き換えてみた。
・画像処理、PerlではCPANのImage::ExifToolが大活躍、Pythonではpillowが有名どころ。pipでpillowをインストール
・読みたいExifタグを辞書として{}に書いて定義する。読み込みたいExifを探し出すのは、JEITAで公開している日本語の規約書が役立った。
・読みたい画像ファイルのパスをコマンド引数で取れるようにする
・ファイルを開き、exifタグの内容を取り込む
・読み込んだ画像ファイルの中から、引出したいexifタグを探し、読込む。
・わが辞書に不可能というなのキーはない、といえるのは、ナポレオンだけ。大概、キーに該当するValueはないもの。だから、KeyError例外が発生する。
・読み込む画像ファイルの中には確認したいexifタグに記載されていないタグがある様子。
・画像情報を読み込んで作成したexif辞書に、該当するexifタグがない。これを、try-exceptで捕まえる。
まずまず。。。

コメントを残す