AIとDNG一括変換ツールを作った記録。撮影日を残し、ZIPを開くだけの配布版にするまで

iPhoneの写真をWindowsへ取り出したとき、DNGには撮影日時やカメラ機種が残っていました。JPEGに変換するだけなら選択肢はあります。今回困っていたのは、変換後に写真を整理するときも撮影日で並べたいこと、元の写真を失わずにまとめて処理したいことでした。この二つを条件にして、AIとWindows用の一括変換ツールを組み立てました。

目次

JPEGが開けることと、いつ撮ったか分かること

DNGは写真の元データを保存する形式の一つです。JPEGを作る工程は、見える画像を書き出す処理です。一方、撮影時刻・向き・カメラ名などは、画像に付随するメタデータです。たとえばJPEGのファイル更新日が今日でも、その中に数年前の撮影日時を残せます。確認時にはエクスプローラーの更新日時だけを見ず、写真管理で使いたい撮影日時の項目を見ます。

最初の指示に、壊してはいけないものを入れる

当時のやり取りをもとに、同じ用途で使える形に整理した指示例です。

入力はDNGのフォルダ、出力は別フォルダ。元画像の削除・上書きを禁止。まず少数のコピーで試す。JPEGが開くことに加え、元と出力の撮影日時、機種、向きを照合する。GPSは有無と用途を確認し、比較結果に位置の数値は出さない。失敗したファイルは成功件数と分けて報告する。

ファイル数だけで成功を数えると、撮影日が落ちたJPEGも成功になります。変換に成功したことと、必要な属性が引き継がれたことを別々に記録すると、どこまで安心して一括処理できるか判断できます。

初版に残った一手間を、配布版でなくす

初版では、利用者がExifToolを別途入手し、画面から実行ファイルの場所を指定する必要がありました。自分のPCでは一度設定すれば使えますが、人へ渡すと、写真を選ぶ前に別のソフトを探すことになります。「撮影日を残して変換したい」だけの人にとっては、そこが一番分かりづらい部分です。

そこで次の版では、公式のExifToolを第三者コンポーネントとして同梱し、アプリ内部から呼び出す構成にしました。画像変換の処理と、メタデータを扱う道具を分けることで、後者を一から作り直す必要がありません。同梱物とライセンスの記録も配布物に含めています。

自分の環境で起動する段階と、配布物が動く段階を分けた

開発フォルダに必要なソフトが入っていれば、配布ZIPにファイルが足りなくても、自分の環境では動いてしまうことがあります。確認は、ビルドが通ること、内蔵したExifToolを実行できること、公開ZIPを取り直して自己診断を通すことに分けました。当時は公開ZIPでの自己診断まで確認しています。

同種のツールを作るなら、変換対象を絞って試作し、元画像を変えず別フォルダに出し、画像とメタデータを個別に照合します。その後に、配布先の人が事前に何を用意する必要があるかを書き出します。今回の版では、ZIPを展開して起動し、入力と出力のフォルダを選ぶ流れまで操作を絞れました。

技術資料:公開したWindows版

技術資料:ExifTool公式サイト

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

もふのんのアバター もふのん BEYOND STYLES 運営者

AIを使って仕事と暮らしの選択肢を増やす方法を、案内役のもふのんと一緒に実践・検証しています。生成AIを快適に使う環境づくりから、クレジットカードの活用、お金の知識、資産形成まで。「稼ぐ力・使う力・育てる力」を整える情報を、初心者にもわかる言葉で届けます。

コメント

コメントする

目次