TODO
- 最終的に整理したコードを公開
- 画像変換をPNG/JPGのどっちにするか?
- 画像比較時の色々なメトリックスについて試してみる
- 余白のトリミング(-trim)なんてのがある!?ので、試してみる
- オプション指定を調べる(たまにカッコ付けて実行しているコマンドが...)
はじめに
環境構築
インストールは下記を特に指定せず...
◆ImageMagick
https://imagemagick.org/script/download.php
※ImageMagick-7.0.10-3-Q16-x64-static.exe
◆GhostScript
https://www.ghostscript.com/download/gsdnld.html
※gs952w64.exe
参考サイト
◆PDFの画像比較をリファクタリングに活かす
https://qiita.com/oohira/items/184dbbe7c631e8c335a1
※下記記載がきっと重要な気がする。。。
「また、PDF ファイルによっては背景色が透明の画像が生成されてしまいます。後述する画像比較がうまくできなくなってしまうようなので、-alpha off オプションを指定して不透明にします。」
⇒ が、私が試したら、逆に対象箇所が黒になってしまった。。。ということで、このオプションはPDF→PNGでは利用しない。
◆コマンドラインで画像処理が行える便利ツール「ImageMagick」
https://www.atmarkit.co.jp/ait/articles/1809/25/news020.html
※導入サイト
◆ImageMagick で PS や PDF を扱えないのは脆弱性対策でした
https://www.t3nro.net/2019/06/imagemagick-and-postscript-files/
※「convert: attempt to perform an operation not allowed by the security policy `PDF'」というエラーが出たときに
※policy.xmlの下記に対して対応すればよいらしい
policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}"
◆ImageMagickでPDFをPNGやJPEGに変換する。
https://ginpen.com/tag/pdf/
※「convert-im6.q16: not authorized `a.pdf'」というエラーが出たときも
◆ImageMagickのインストール
https://qiita.com/mtakizawa/items/d903c9f8e94c6dff123f
※インストーラー解説やインストール時の注意事項が書かれている。
「問題が発生した場合、vcomp100.dllが必要かもしれません。」っていやな予感しかしない。。。
◆pdf を convert コマンドで分割し画像化すると劣化する
https://takuya-1st.hatenablog.jp/entry/2014/09/17/043550
※基本的には、ここで解説されている下記コマンドで導入予定。処理時間等でチューニングするとは思うが
convert -density 400 -colorspace RGB /Users/takuya/Desktop/image.pdf dest*.png
◆PDFを大量に結合する – ImageMagick(convert)編
https://blog.katsubemakito.net/macos/join_many_pdf_width_imagemagick
※一通り解説してくれている
◆ImageMagick の JPEG オプション
https://qiita.com/yoya/items/216d2fc98deb88fa7157
◆ImageMagick の PNG オプション
https://qiita.com/yoya/items/6e3117b317b3b435fa48
◆ImageMagick で画像比較 (Compare)
https://qiita.com/yoya/items/2021944690bd9c0dafb1
※ここにあるコマンドを参考に一通りのメトリックス試してみる!?
◆「さようなら ImageMagick」の考察
https://qiita.com/yoya/items/2076c1f5137d4041e3aa
※セキュリティ(policy.xml)
◆ImageMagick を使ってファイルをjpgに一括変換 (PowerShell)
https://qiita.com/kik4/items/3ea740abdaf83b1a1b37
※後でPowershellで作成するときに参考に...
◆ImageMagick - Command-line Tools: Convert
http://www.imagemagick.org/script/convert.php
※本家のコマンドライン解説。多すぎるので必要な時に確認...
◆JPEGエンコーダの画質評価を行う
https://wave.hatenablog.com/entry/2019/03/01/221500
◆2つの画像が似ているか、SSIMとPSNRを計算するには
https://www.ninton.co.jp/archives/3122
◆SSIMがウソをつく例
https://qiita.com/miyanaga/items/16c8b89b3aa20356b6fe
◆画像のSSIM算出のための6+2ツールまとめ
https://qiita.com/miyanaga/items/f3690c826008999296f9
※この方のサイトははまったら参考にすることになりそう
◆※画像処理の勉強になる
https://qiita.com/yoya