ImageMagickで四苦八苦
今週は、本業の画像認識の技術実験で必要になったので、400枚近くあるbmp画像の解像度を荒くするお仕事に取り組んでいました。
画像の解像度を荒くするっていうのは、たとえば元の画像で4画素だったのを1画素にするってこと。で、ご丁寧に画像ごとに変換倍率がまちまちというオマケ付き。それも非整数倍ね。
こんなのGimp etc.のGUIツールなんかでやってらんねーということで、Python使ってコンピュータ殿にゴリゴリやって貰う方法を探しました。候補は、Python拡張ライブラリのPIL、それから有名どころのImageMagicK。PILは変換後の画質がいまいちだったのでImageMagicKに決まり。
ImageMagicKのconvertコマンド、compositeコマンドを使ってごにょごにょ。
・・・おいっ、勝手に1画素のビット数を変えるなよ。8ビットでいいんだって。
・・・だからさぁ、圧縮フォーマットに変換したら使えないでしょ。
なかなか言うことを聞いてくれません。
四苦八苦の末、コマンドオプションに"-colors 256 -compress None"を追加して無事解決。でも、compositeコマンドだと効果なしなのね。MS-Windows上でやってるのが悪いのかな?
ん!自前で画像変換のプログラムを組んだ方が速かったかも。AHA!