Exif データについてのあれこれ


記事は新しいもの順です.

 Exif 情報については JpegAnalyzer のお世話になっているわけですが,最近ちょっと更新がないということもあって,PhotoMe という,あちらもののソフトを使う機会が多くなっています.



 こんな感じの画面で,まあまあ普通のGUIなんですが,驚くのはその表示項目の多さです.バッテリーの電圧からシャッターカウント,何に使っているか分からないレンズの収差パラメータ情報まで.
 極めつけは,AEの測光情報.



 こんなグラフィックを表示するためには,いろいろなメーカの機種の測光エリアがどうなっているかまで調べなくてはいけませんよね...どうやって調べているんだろう?

(以上,2008/12/08)


 ずっと下に書いた PhotoExplorer のカレンダー表示,なかなか気に入っていたんですが,最近以下のような問題が気になってきました.
 ・ver.8.6 になって動作が不安定.特定の画像ファイルを読み込み・表示する時点で落ちてしまうことがしばしば.不特定のフリーズもしょっちゅう.ver.8.5 に戻そうと思ったら,CD-ROM 棄てていた.
 ・どのバージョンでもそうなんですが,サムネールがたくさんあると,表示がある数で止まってしまう.クリックすればまたずらずらっと再開されるのですが,またある数行くと止まる.これは鬱陶しい.
 ・PhotoExplorer のカレンダー表示は,あくまでも“アルバム”に読み込まれた写真が表示されるというもの.で,そのアルバムが一つしか設定できない.つまりデジカメごとに,とか用途を分けたカレンダー表示はできない.

 PhotoExplorer は Ulead の Corel による買収で行く先どうなるかと思っていたんですが...PhotoImpact X3 に添付されている写真管理ソフトは Corel Snapfire という,“どうしようもない”ソフトでした.(^^; しょうがないので,他のソフトをあたってみることに.ところが,これがなかなか無いんですね.最初はフリーソフトでなんかあるだろうと思ったら,全然.

 そこで市販ソフトをあたってみると,ACDsee Photo Manager というソフトにカレンダー表示があるというので買ってみました.



 このソフトは,デジタル写真管理ソフトとしては定評のあるものなので,ずっと気になっていたものです.しかし実際に使ってみると,『なんかちょっと違う』.
 要するにこのソフト,基本的にはフォルダに1:1に依存しているもので,それをまたいだ管理ができない,つまり“アルバムソフト”ではありませんでした.まあ当然?なのですが.私としては,具体的には,歴代のメインカメラとサブカメラに分けてカレンダー表示をしたかったのですが,不可能.しょうがないので,“フォルダ除外機能”を設定して,とりあえずメインカメラだけをカレンダー表示するようにしました.まあ,PhotoExplorer もアルバムを一つしか作れないので,同じ結果になったわけです.

 では,サブカメラは...? もう一つソフトを用意するしかありません.そこで目をつけたのが,やはりカレンダー表示があるという JASC Paintshop Album です.JASC はやはり Corel に買収されており,その後 Corel Photo Album という名前になっています...が,どこにも売っていない.コーレルのサイトには掲載されているのですが,本家オンラインショップにもありません.どうやら MediaOne Plus というものになっている模様.そこで体験版を落としてみたら,似ても似つかない幼稚なソフト(すいません (^^;)でした.うーむ...Corel は JASC と Ulead を買収して PhotoExplorer + Photo Album = 高機能なアルバムソフト,を作ってくれるのかと思っていたら,全然違いました.(-_-;

 最後に目をつけたのが,下の記事にも書いた Photoshop Album です.とりあえずアドビのサイトを覗いてみると,Photoshop Album Mini 3.2 というフリー版が公開されており,それを使ってみました.まあまあのようなので,フル版を買おうと思ったら...Photoshop Album という市販ソフトはどこにもありません.なんで? あれこれ探ってみた結果,Photoshop Album は消滅し,Photoshop Elements のフロントエンドとして吸収されてしまったようです.おいおい...(-_-; 少し悩みましたが,Photoshop CS2 のアップグレードをサボっているので,その穴埋めというわけでもないけど,Photoshop Elements 6 を(半分は棄てる覚悟で)買うことにしました.



 Mini3.2 では独立したボタンだったカレンダー表示が,画面表示のドロップダウンの中に隠れているのは正直不満ですが,年表示・日表示が使えるようになっており,まあまあです.なにより ACDsee では不可能な『カレンダーに写真がサムネールで表示される』機能があるので,PhotoExplorer に近い感覚で使えます.何よりそのほうが楽しい.

 しかしその結果...
初期選別:Faststone Viewer
レタッチ:Ulead PhotoImpact
非破壊レタッチ:Photoshop Lightroom
メインカレンダー表示:ACDsee Photo Manager
サブカレンダー表示:Photoshop Elements
写真印刷:デジカメde同時プリント
...というオソロしいことに.(-_-; これから私のデジカメワークフローはどうなっていくんでしょうか??

(以上,2008/06/20)


 やっと探していたソフトが見つかりました.それも遠いオランダのサイトで.Exposure Plot というものです.どんなソフトかというと...要するに,デジタル写真の Exif 情報の統計を取ってくれるソフトです.



 これは私が K10D で撮った写真のセレクト集から“レンズ焦点距離”“ISO感度”“絞り”“シャッター速度”の頻度を集計したものです.自分で撮った写真でありながら,こうやって統計にして見ると,なかなか興味深いです.

 今のところこのソフト,実は上の四つしか統計を取れません.せめて露出補正値や被写体距離などもやってくれるとありがたいんですけどね.ついでにレンズIDも抽出してくれれば最高なんだけど,メーカノートだから無理かな.あと,グラフをいろいろ調整できないので,CSV 出力で Excel渡しをしてくれると嬉しいんだけど...まあ今後にご期待というところでしょうか.

 ちなみにこのソフト,Wega2 という画像ビューアソフトの1機能になっていて,Exposure Plot というのはその部分だけを独立させたものです.Wega2 はまあビューアソフトとしては並以下のソフトで,Faststone Viewer なんかと比べると,ほとんど見るべきところはありません.

(以上,2007/09/22)


下記の件,

> 私が世界で初めてだったりして...

 さっそく,JpegAnalyzer のかみさかさんに教えていただいたm(__)m んですが,やっぱりとっくにガイシュツのことだったようです.f(^^;

Canon ShotInfo Tags
1 AutoISO int16s (actual ISO used = BaseISO * AutoISO / 100)
2 BaseISO int16s

 あれ...? でもこれだと計算がぜっんぜん合わないな...ちなみに私が得た変換式は,

actual ISO used = e^((AutoISO + 212.89)/46.219)

...です.つまり BaseISO は使われていない.JpegAnalyzer で表示される“BaseISO”はすべて 100 ですが,ここが違ってるのか...? うーむ? 私の数学的能力の限界.:-p

(以上,2007/03/02)


 下記の件,

> それにしても,ABSoft 社は,どこからこんな情報を仕入れてきたんでしょうか.

 JpegAnalyzer を使って,これまでに IXY で撮った写真を500枚以上解析して,やっと見つけました.



 詳しいことはとりあえず省略しますが,JpegAnalyzer の未解析なところに,ISO100 でゼロになる整数値でオート時の ISO が記録されていました.

 もっとも,単なる近似でその整数値とISO 間の対数一次変換式を見つけただけなので,理論式というか,変換のルールを見つけたわけではありません.そのへんは私の数学的能力ではとても無理なので,f(^^; JpegAnalyzer 作者のかみさかさんに,これからレポートしたいと思います.

 もしかして,ABSoft 社以外にこれ見つけたの,私が世界で初めてだったりして...:-p て,まあ世界は広いですからね.誰かがもう見つけてるんだろうけど.

(以上,2007/03/01)


 コンデジをキヤノン IXY900IS に買い換えました...というとピンと来る方もいらっしゃるかと思いますが,キヤノンのコンデジは(全部かどうか知りませんが)ISO 感度が通常の Exif ツールでは表示できません.例えば国内の代表的なソフトである DPEx (ExifReader) でも.なんということだ.(-_-;

 で...付属の ZoomBrowser ではさすがに表示されるらしいんですが,昔 S10 で痛い目にあったので,使ってません.では,JpegAnalyzer ではどうかというと...ちゃんとメーカノートの中に表示できます.さすがです.

 しかしこれで話は終わりません.ISO をメニューで設定したときはそうなるんですが,ISO AUTO および High ISO AUTO のときは残念ながら JpegAnalyzer でも,すべて ISO 100 ということになってしまいます.ZoomBrowser でもISOオート時には,ISO感度は表示されないようです(未確認).
 そういうわけで,『JpegAnalyzer でダメなら,要するに記録されていないということなんだろう』とあきらめていました...そう,“いました”なんですよ.(^^;

 と・こ・ろ・が...なんと! たまたまノイズ除去処理を当てようと NeatImage で IXY900 のオート感度撮影写真を開こうとしたら,ダイアログの右のプレビューエリアに,こんな表示があるではありませんか.これには驚きました.



 JpegAnalyzer でも未解析なところに,ちゃんとオート時の ISO が記録されていたんですね...もっとも,最低感度(ISO 80)で撮影されたと思われる写真が ISO 75 と表示されるといった多少のアレはありますけど,たいしたことではない.

 それにしても,ABSoft 社は,どこからこんな情報を仕入れてきたんでしょうか.リバースエンジニアリングなのかな? これについてなにかご存知の方,ぜひご教示よろしく.

(以上,2007/02/16)


 ひさびさに Exif ネタですが...話はまったく暗い.(^^;

 私の使っているメインのレタッチソフトは,Ulead PhotoImpact です.これは Ver. 6 あたりから使っていますが,一番の理由は,『Exif にノータッチ』ということに尽きます.メーカノート含めて,Exif に何の変更も与えないということです.これは私的にはレタッチソフトの必須条件です.
 例えば,Photohop のように,保存するとメーカノートを置き換えてしまうものでは,デジ一眼にとってきわめて大事な情報である『レンズID』を失ってしまいます.ホワイトバランスもメーカノート中にあるので,これは大問題.

 で,Ulead PhotoImpact の話なんですが,先日発売された Ver.12 から,なんと『編集保存すると Exifサムネールを更新してしまう』仕様になってしまいました.これ自体は,まあ編集したんだからしょうがない(ある意味で親切)として,下の方に書いた PhotoExploerer で回転保存したときと同じように,メーカノートのバイト位置をずらすばかりか,バイト記述順を逆さまにしてしまうんですね.要するに同じモジュールを転用しているのかもしれません.これだと,レンズIDの取得方法を高度に工夫している JEPGAnalyzer のようなソフトでは問題ないんですが,普通の取得方法をとる,例えば *istView のようなブラウザでは,レンズ名が表示されなくなってしまいます.
 Ver.11 まではこんな馬鹿な仕様ではなかったのに...しょうがないので,買ったばっかしの Ver.12 はゴミ箱に棄て,Ver.11 をゴミ箱から戻しました.あ,“ゴミ箱”ってリアルなゴミ箱のほうですよ.:-p

 こうなると,あまりに腹の虫が治まらないので,同価格帯で競合ソフトと思われる Corel PaintShopPro Photo XI を買ってきました.このソフトの Exif ハンドリングがリーズナブルだったら,本気で PhotoImpact は棄てちゃおうと.
 と・こ・ろ・が...この老舗中の老舗レタッチソフト,こちらはというと,『メーカノートを300バイト以上ずらしてしまう』(-_-; これだと,JPEGAnalyzer ではなんとかなるけど,良く作りこまれている Exif 対応掲示板 PhotoXP でさえも,Exif 情報が認識できず“穴だらけ”になってしまいます.なんちゅうこっちゃ...

 もうここまで来たら,レタッチはすべて PhotoshopCS2 で行い,事後に Exif を Able CV でオリジナルから書き戻そうかとも考え始めています.

(以上,2006/11/13)


 もう一つ JpegAnalyzerネタです.

 ネットなどでは良く,『*istD の画像処理関係はカシオが作ったもの』という話を耳にします.ペンタックスとカシオはコンデジのレンズなどで提携関係にあったので,なんとなくそうなのかな?とも思います.

 しかし,この“噂”の最大の根拠は,*istD の Exif を ExifReader (DPEx) で閲覧したときに出てくる以下の記述でしょう.

>> カメラの内部情報 : CASIO2 Format : 55296Bytes (Offset:926)

 私もこれを見て,上の噂をそのまま信じ込んでいました.こういう文字列が Exif に埋め込まれているんだと.

 し・か・し...同じ部分と思われるものを JpegAnalyzer で表示してみると,

>> 00000292 927C メーカーノート 000003B6-0000DBB5 55,296 bytes
>> 000003B6-00000729 MakerNote(0000001E) PENTAX Type 2 Tag-73

...という解析表示がされるだけです.

 で,DPEx のサポートページを検索してみたら,

>> (2)メーカー独自情報の表示がペンタックスなのに
>> カメラの内部情報 : CASIO2 Format : 55296Bytes (Offset:1046)
>> と表示されてます

 という書き込みがあり,作者の吉本さんが『次のバージョンで対応させていただきたい』と答えていました.ExifReader (DPEx)は,なんらかのIDを見てそこから look up される“内部情報文字列”を表示しているようなのですが,それがバグっているだけだったんですね...

 『*istD の画像処理はカシオの開発』というのは,単なる“都市伝説”の類だったんでしょうか...それとも? 真相は私には分かりませんが,もしそうだとすると,ちょっと罪作りなんでは? > ExifReader & DPEx.(^^;

(以上,2005/12/08)


 Exif データを使ったデジ一眼のレンズ名表示については,いくつかのソフトで状況が進んでいることが分かってきました.
FileVisor 6: 内部ビューアでペンタックスを含む各メーカのレンズ名表示が可能です.レンズデータは内部に埋め込まれているようですが,かなり不完全です.
JpegAnalyzer: 1.31βでレンズ名が表示されます.レンズデータは LensID.ini と同じくテキストファイルで,ユーザの編集が可能.データのアップデートも一番充実しているような.ただしこのソフトは,画像ビューアではなく,JPEG(+Exif) 情報解析ツールです.プレビュー機能は付いています.
Joyful Note(Exif情報対応版): これは PhotoXP と同じく,HTTP サーバ上の掲示板用の CGI です.MakerNote プラグインをインストールすることによって,レンズ名表示が可能になるようです.レンズデータは単独のテキストファイルです.

 なかなか素晴らしい状況になってきていますね...

(2005/11/19)


 下の記事で,

> レンズ情報が飛んでしまったと思っていた縦位置写真も,
> バイナリエディタでそこを見れば,レンズIDが分かるということなんですが...
> めんどくさい.

...と,書きましたが,その後,素晴らしいソフトがあることが分かりました.他のページでもちょっと紹介していますが,かみさかさんの JpegAnalyzer です.

 このソフトは1.31βでレンズ名が表示できるようになっていましたが,なんと,1.40正式版では,Exifメーカノートが,画像回転(に伴うプレビューサムネール再構築?)などでバイトずれ(&逆順記述)してしまった画像も,ちゃんとレンズIDを拾い出してくれます.



 この写真は,記念すべき *istD の購入後ファーストデイショット,ですが...PhotoExplorer で回転してしまったため,メーカノートがバイトずれ(&逆順記述)してしまい,ExifReader(DPEx) や *istDView ではレンズ名が表示されませんでした(涙).

 しかしごらんのように JpegAnalyzer 1.40では,『-4バイト調整しています』と表示された画面に,見事に今は無き FA28-105 mm のレンズ名が.感動です.かみさかさん,ありがとう.m(__)m

 ちなみにこのときは,それまで使っていたコンデジの悪影響で,彩度・コントラスト・シャープネスすべて+2(*istDメニューでは単に+ですが)設定しているという“暴挙”もくっきりと.f(^^;

 もちろんこのソフトは画像ブラウザではないので,ぱらぱらと閲覧しながらレンズ確認,という感じでは使えませんが...こういう感じの画像プレビュー画面も付いてますので,問題画像の使用レンズを確認するという用途には十分です.

(以上,2005/12/08)


 二つ下の記事で,

> Ulead PhotoExplorer という閲覧ソフト上で手動で90度回転していました.
> この機能はロスレス回転なので,Exif 情報はそれに影響されてない...
> とずっと思い込んでいたのですが,そうじゃありませんでした.なんと,
> Exif 内のペンタックス独自のメーカノートがその回転により飛んで > しまっていたのです.

...書きましたが,その後,そうではないことが分かりました.PhotoExplorer のバグであることは間違いないのですが,メーカノートの位置が4バイトほど前にずれてしまっているようです.おそらく,サムネールの回転に伴うバグなのではないかと.そのために,DPEx, ExifReader などではメーカノートを認識できていない.



 これに気づいたのは,Exif対応画像掲示板として有名な PhotoXP に縦位置写真をアップしてみたときです.なんと...他のソフトでは認識されないレンズ情報がちゃんと表示される...これには驚きました.で,バイナリエディタで覗いてみると,上のことが分かったわけです.PhotoXP のリリースノートには『MakerNote内をバイトオーダーに関わらず解析できるように改良』というのがありますので,これが関係しているのかな?

 ということで,レンズ情報が飛んでしまったと思っていた縦位置写真も,バイナリエディタでそこを見れば,レンズIDが分かるということなんですが...めんどくさい.(^^; ちなみに上の例のレンズID=0431 というのはタムロン28-75mm f2.8 のことです.
 PhotoXP の Exif エンジンを搭載した画像ブラウザが出れば即購入すると思うんですが...それはないか.期待して購入した DPEx は最近,ぜんぜん進化してないというか,ユーザサポートも壊れているようなので,これ以上期待はできないみたいだし...

(以上,2005/04/16)


・写真のカレンダー管理

 Ulead PhotoExplorer,Exif の項に書いたロスレス回転のバグというか仕様というのかを除くと,非常に優れた写真閲覧ソフトです.で,最近 Ver.8.5 になったんですが,新機能『カレンダー表示』がなかなか面白くて,はまってます.
 要するに,写真の Exif 情報から撮影日時を引っ張り出してデータベース化し,それをカレンダー形式で表示してくれるというものです.最近評判の Adobe Photoshop Album なんかでもウリにしている機能ですね.

 で,この機能...PhotoShop Album の紹介記事を読んだときは,“そんなもん...”と思っていたんですが,使ってみるとすごく面白い.なんというか,写真と思い出が1:1になったような気分です.“あ〜...そうそう,このキャンプ場で朝起きたらクルマの周りがカタクリだらけだったんだよな...”とか.



 この画像はその機能(アルバムカレンダー)を使ってみたところです.過去に撮影した写真が撮影日付ごとに表示でき,カレンダーの日付部をクリックすると,その日の写真が右側に表示されます.下にある棒グラフは,月ごとの撮影枚数です.Exif 情報を使って整理してくれるわけなので,自分で日付フォルダで管理したりする手間はありません.つまり,“実際に人間が情報を整理しなくても良い”というのが最大のメリットでしょうね.
 これ見ると私は,去年の10月の週末はほとんど毎日 *istD で写真を撮っていた...f(^^; それ以外の日の写真は全部,出張・調査の時の“隠れショット”.おいおい.:-p

 銀塩時代にこれやろうとすると,写真撮影の際にいちいちメモを撮っていないとダメでしたよね.そんなのプロでもない限り,無理.フィルムに単に日付(・時刻)を写し込む機能はあるけど,それがデータとして活用できるわけでもない...あと最近の高級銀塩機には撮影情報を記録してくれるものもあるようですが,いずれにせよそれまでですよね.

 要するに,デジカメ画像に付加された Exif 情報をデジタルデータとして最大限に活用した例でしょうね.

(以上,2005/04/04)


 デジカメ写真における Exif 情報というのは,本当に便利な大事なものである,というのはいまさら言うほどのことではないかもしれません.しかし,実は私が Exif 情報というものとその価値をちゃんと理解したのは,そんなに以前のことではないんですよね...

・Powershot S10 での大失敗

 私の最初のデジカメは別ページに書いたようにキャノン PowerShot S10 でした.これには ZoomBrowser という写真取り込み+閲覧ソフトが付属しており,当然私もそれを使って,S10 から写真を取り込んでいました.もちろんカードリーダなど持っていなかったので,カメラ直接のUSB接続です.
 この方法で写真を取り込むと,写真の撮影時刻やレンズの焦点距離などが ZoomBrowser で表示されるので,『デジカメというのはなんと便利なことか』と思っていましたが,それが Exif データなのであるという明確な意識は私自身持っていませんでした.これが不幸の始まり

 状況は少し複雑になりますが...その頃私が使っていたレタッチソフトは MGX PicturePublisher というソフトでした.これは WINDOWS 上では PhotoShop と肩を並べる(?)高機能レタッチソフトでしたが,不幸なことにまだ Exif に対応していませんでした.
 ところが,Exif非対応の PicturePublisher で写真を編集して保存しても,ZoomBrowser では何の問題もなく,撮影時刻などが変わらず表示されていました.そのおかげで私も気づかなかったのですが...要するに ZoomBrowser は,写真取り込み時にその Exif 情報を別データベースファイルに保存する,というタイプのソフトだったのです.

 もうどういうことが起こったかお分かりと思いますが...デジカメをカシオ QV-4000 に買い換えて,何も知らない私が ZoomBrowser をアンインストールしたその瞬間,それまで S10 で撮った写真のすべての Exif 由来情報は消えてしまっていたのです.レタッチしてないきわめて少数の写真には Exif が残ってはいましたが.うっひゃ〜...これこそ“後の祭り”.後悔しても後悔しきれません.

 私が Exif 情報というものの大事さとその“脆弱さ”を知ったのはこのときでした.

・PhotoExplorer での失敗

 その後,Exif にちゃんと対応したレタッチソフト,Ulead PhotoImpact を使い始め,デジカメもカシオ QV-4000 → ペンタックス *istD と進んで,もう Exif については大丈夫のはずだったのに...またやってしまいました.

 QV-4000 のときは,カシオの取り込みソフトがQV-4000に内蔵された姿勢センサによる“縦位置情報”に対応しており,取り込み時に自動的に回転してくれるので,問題は起きてませんでした.しかし *istD にはそういう仕組みはないので,縦位置で撮影した写真は,Ulead PhotoExplorer という閲覧ソフト上で手動で90度回転していました.この機能はロスレス回転なので,Exif 情報はそれに影響されてない...とずっと思い込んでいたのですが,そうじゃありませんでした.なんと,Exif 内のペンタックス独自のメーカノートがその回転により飛んでしまっていたのです.
 実はこのことになんでしばらく気付かなかったかというと...露出とか焦点距離とかはメーカノートにもありますが,Exif の“共通互換部”に記録されていたためです.ところが最近,手持ちのズームレンズが3本に増えたため,撮影時のレンズ情報が気になり,みんと☆さんの『LensID』と,しろあずきさんの *istDView を導入しました.この組み合わせだと,ペンタックス純正以外のレンズ名称も Exif 情報からルックアップされて表示できます.ところが,PhotoExplorer で90度回転した写真ではそれが表示されないので確認してみたところ,メーカノートがきれいさっぱり消えていました...で,私もやっと気づいた.

 そういうわけで,ロスレス回転でも Exif メーカノートが消えない DPEx という閲覧ソフトを最近使い始めたところです.これでもう,問題は起きない...んだろうな? (^^;

(以上,2005/04/04)


デジカメあれこれの目次へ戻る