2026/05/31(日) [n年前の日記]
#1 [cg_tools] Stable Diffusion 生成画像のメタデータを別画像にコピー
画像生成AI、Stable Diffusion web UI で生成したpng画像には、入力したプロンプト内容や使用したモデルデータ情報等が ―― メタデータが入っている。ただ、それらの生成画像を他の画像編集ソフトで編集してpngで保存するとメタデータは無くなってしまう。
今まではメタデータを残したい場合、編集前画像もどこかしらに残しておくことにしていたのだけど。編集後の画像にメタデータを書き写せたら編集前の画像を廃棄できそうだなと思えてきた。しかし、そんなことはできるのだろうか。
AI (Google Gemini)に尋ねてみたら「ExifTool でできるよ」と言ってきた。本当かな…?
どうやら "-parameters" というタグで指定されたところに情報が入ってるっぽい?
今まではメタデータを残したい場合、編集前画像もどこかしらに残しておくことにしていたのだけど。編集後の画像にメタデータを書き写せたら編集前の画像を廃棄できそうだなと思えてきた。しかし、そんなことはできるのだろうか。
AI (Google Gemini)に尋ねてみたら「ExifTool でできるよ」と言ってきた。本当かな…?
exiftool -TagsFromFile 元画像.png "-parameters" 宛先画像.png
どうやら "-parameters" というタグで指定されたところに情報が入ってるっぽい?
◎ ExifToolのインストール :
公式サイトから ExifTool を入手。
_ExifTool by Phil Harvey
環境はWindows11 x64 25H2 なので、exiftool-13.59_64.zip を入手して解凍。中には以下のフォルダとファイルが入っていた。
exiftool_files/ と exiftool(-k).exe をパスが通ったところに置く。あるいは任意の場所に置いて、環境変数PATHを設定して exiftool(-k).exe を呼び出せるようにしておいてもいい。
ファイル名が exiftool.exe ではなく exiftool(-k).exe になっているけれど、この「(-k)」はコマンドラインオプションらしい。ファイル名に「(-xxxx)」とついていると、その -xxxx をコマンドラインオプションとして渡す仕様なのだとか。
_ExifTool.exe の簡単な使い方 - 表示編 | 穀風
ただ、今回はコマンドラインツールとして利用したいから、「(-k)」は不要。exitftool(-k).exe をリネームコピーして exiftool.exe を作った。
バージョンを確認。
_ExifTool by Phil Harvey
環境はWindows11 x64 25H2 なので、exiftool-13.59_64.zip を入手して解凍。中には以下のフォルダとファイルが入っていた。
exiftool_files/ exiftool(-k).exe README.txt
exiftool_files/ と exiftool(-k).exe をパスが通ったところに置く。あるいは任意の場所に置いて、環境変数PATHを設定して exiftool(-k).exe を呼び出せるようにしておいてもいい。
- exiftool は Perlスクリプトなので、実行には Perl が必要になる。
- exiftool_files/ の中には動作に必要なPerl一式が入っている。508ファイル、33.90MBほどが入ってた。
- exiftool(-k).exe は 60KB程度しかない。おそらく exiftool_files/ 内の Perl一式を呼び出すだけの処理をしているのではないかな…。exiftool_files/ の中には exiftool.pl も入ってるし…。
ファイル名が exiftool.exe ではなく exiftool(-k).exe になっているけれど、この「(-k)」はコマンドラインオプションらしい。ファイル名に「(-xxxx)」とついていると、その -xxxx をコマンドラインオプションとして渡す仕様なのだとか。
_ExifTool.exe の簡単な使い方 - 表示編 | 穀風
ただ、今回はコマンドラインツールとして利用したいから、「(-k)」は不要。exitftool(-k).exe をリネームコピーして exiftool.exe を作った。
バージョンを確認。
> exiftool -ver 13.59
◎ メタデータがコピーできるか試してみた :
Stable Diffusion web UI で生成した画像と、画像編集ソフトで編集して保存した画像を用意して、メタデータがコピーできるか試した。
宛先画像は画像編集ソフトで編集かつ保存した画像なので、メタデータは入ってなかったが、exiftool で上記の処理をしてから Stable Diffusion web UI Forge-Neo の PNG Info にドラッグアンドドロップしてみたところ、メタデータが表示された。
どうやら本当にコピーできるようだなと…。これで元画像を削除することができそう…。
ところで、処理するたびに、*_original というファイルが作成されるのが気になる。-overwrite_original というオプションをつければ保存されずに済むらしい。
_ExifToolのかんたんなメモ - DigitalBoo
exiftool -TagsFromFile 元画像.png "-parameters" 宛先画像.png
宛先画像は画像編集ソフトで編集かつ保存した画像なので、メタデータは入ってなかったが、exiftool で上記の処理をしてから Stable Diffusion web UI Forge-Neo の PNG Info にドラッグアンドドロップしてみたところ、メタデータが表示された。
どうやら本当にコピーできるようだなと…。これで元画像を削除することができそう…。
ところで、処理するたびに、*_original というファイルが作成されるのが気になる。-overwrite_original というオプションをつければ保存されずに済むらしい。
_ExifToolのかんたんなメモ - DigitalBoo
exiftool -overwrite_original -TagsFromFile 元画像.png "-parameters" 宛先画像.png
[ ツッコむ ]
以上です。