見出し画像

「Exif ファイルの覗き方」という記事を書くために作った Python スクリプト

何をするものか

Exif ファイルから画像情報の生データを取り出して csv ファイルに書き出します。

対象のファイル

  • *.ORF(OLYMPUS および OM SYSTEM の Raw 画像)

  • *.NEF(Nikon の Raw 画像)

  • *.TIFF など(TIFF 画像)

  • *.JPG など(JPEG 画像)

説明

OLYMPUS OM-D E-M1X、OM SYSTEM OM-1、Nikon D800E、Nikon D500 で確認しました。
取り出したデータは、生のままです。タグやデータの意味は解釈しません。
リトルエンディアンで書かれたデータも、そのままにしてあります。
標準モジュールだけ使って作りました(たしか)。
csv ファイルは画像ファイルの数だけできあがります。

動作環境

MacOS 13.6 に Python 3.10.0 の環境で作りましたが、少々違ってもいけるだろうと思います。
Windows で動作するかはわかりません。

使い方

準備:Mac に Python をインストールします。
(もしかしてインストール済み?) 

画像ファイルを用意します。
フォルダーを作って入れます。
同じフォルダーに、スクリプトをおきます。
スクリプトをダブルクリックして実行します。

csv ファイルが出来上がります。

LibreOffice で開きます。Text Import ダイアログで、B列とC 列を選択し、Column Type を Text に設定して、OKをクリックします。

感想

Exif の読み方をかなり勉強しましたが、まだまだ理解できていないところがあるかもしれません。
悪戦苦闘してやっとできた感じです。自身のプログラミングの素養のなさを感じています。

csv ファイルを LibreOffice 7.3.2.2 で開いたイメージ(整形後)

ふとみたら、スペルミスが!
Resolution Unit が2つあるし。

Free Download

修正版をアップしました。

そういえば、ウイルスのことを気にしてなかったな。

Python について

Mac の場合、インストール済みで売られているようですので、わざわざインストールする必要はなさそうです。

自分の場合、環境構築とか面倒くさいことはしていません。
面倒くさいと思ったのは、Python の新しいバージョンでスクリプトを実行したときに、モジュールがないと言われたことくらいですかね。

t.koba

この記事が気に入ったらサポートをしてみませんか?