人は失敗から学ぶという
Lightroomでレンズの焦点距離を判別するために6bit偽装をしていましたが、先日28mmレンズで柏原フォトウォークをしたとき6bitが少しずれてしまったのかほとんどが偽装無し用マニュアル設定の50mmでEXIFに残っていました、RAW現像しているので画像には影響はないものの後でレンズ別に検索するときに混ざってしまうことになる・・
偽装をやり直そうかと思いましたがすでに50mmになったものは変えられない、そこでRAWのEXIFを書き換えられないかと探してLightroomのプラグインでLensTaggerというものを見つけました、同時に必要なExifToolは既にインストールしてあるので試してみることに
インストールや使用方法は他に詳細に紹介しているブログ等を参照して実行、無事に書き換わっているのを確認、RAW現像時の読み込み後にひと作業必要になりますが実際のレンズ名を入れられたので6bit偽装していた今までのファイルも時間はかかりましたが正式レンズに書き換えました
しかしコメントタグにLensTaggerの文字が入ることや規則性なしにエラーが出て一度にあまり多くの枚数を処理できないので何度も処理する必要がある、どうにか手間を減らしたいと思いどんな処理をしているのか画面内のコマンド部分を見てみると実際はExifToolが実行されていて、そのExifToolは今までGUIでショット数とかを見るためだけに使っていながらコマンドラインではすごく多機能ということが今更ながらわかったので
次にLensTagger内のコマンドを参考にしExifToolの使い方を調べ以下のようなものをメモ帳で作り
"D:\(exiftoolの場所をフルパスで)\exiftool.exe" -LensMake="Voigtlander" -Lens="COLOR-SKOPAR 28mm F2.8 Aspherical Type II VM" -LensModel="Voigtlander COLOR-SKOPAR 28mm F2.8 Aspherical Type II VM" -LensType="COLOR-SKOPAR 28mm F2.8 Aspherical Type II VM" -FocalLength="28" -MaxApertureValue="2.8" -LensInfo="28mm f/2.8" -m -overwrite_original_in_place -P *.*
[ 同様にレンズ名や焦点距離・絞りを変えたものをレンズごとに作成 ]
Lightroomを起動し、コマンドラインを別に立ち上げてLightroomの読込先フォルダーに移動しておき、Lightroom側でメタデータをファイルに書き出してから上記をコマンドラインにコピペして実行、その後Lightroomでメタデータをファイルから読み込むと書き換えられることが確認できました
上記コマンドはCOLOR-SKOPAR 28mm F2.8のDNGファイル用でXMPが別ファイルになるようなRAWは最後の対象ファイル部分*.*を変えないといけないと思います、またフォルダすべて同じレンズならファイル名はすべての*.*で済みますがレンズが複数の場合、該当レンズのコマンド内にファイル名を羅列したりワイルドカードを使用して指定しメタデータの書き出し・読み込みのファイルとコマンドのファイル名部分を合わせながら実行することになります
Lightroomに読み込む前ならメタデータの書き出し・読み込みは不要でコマンド実行した後で読み込むといいのではないかと思いますが、せっかくLightroomでSDを直接読み込めるのに一旦コピーする手間とか、複数レンズの場合画像を見てからでないとわからないので読み込んでからの手順に統一することにしました
(以上つたない説明ですみません、もっと詳しくわかりやすい説明はすでに他のブログでいろいろ出ているのでそちらを参照ください)
(また、あくまでも当方の環境下で行った結果なのでその点はご考慮ください)
Leicaレンズへの6bit偽装は違うレンズ名になってしまいますがその問題も解消、もっと早く知っていればミラーレスのマウントアダプター経由で使ったレンズでもEXIFに残せていたのにと思っても後の祭り
これからはM10-Pのレンズ検出はOFFにしてExifToolを使っていくことにします
追記:Lightroomでバッジが出て気になったので、引数に -keywords= -Subject= を入れて同じように実行するとLensTaggerで入ったキーワードが消えバッジも消えました
写真は今月あと2~3枚しかアップできないので1枚だけ
APO-ULTRON 90mm F2 今井町のもの