ImageMagickでテスト用画像を大量に作成する

ImageMagickはコマンドラインから画像を編集したり出来るライブラリですが

これを使って、テスト用の画像を大量に作成する方法

作るに当たって

  • 画像を見ただけでどの画像なのかを識別できる
  • 簡単に画像を生成できる

という事に重点をおいてみます。

ImageMagickは、convertというコマンドで実行する事が出来ます。

画像のサイズを指定するときは

-size 128×128

というオプションを付けます。

画像の背景色を指定するときは

xc:yellow

というオプションを付けます。

yellowの部分は、RGB指定でも出来ます。

ここまでのオプションで、画像を書き出す場合

convert -size 128x128 xc:yellow test.png

で画像が作成されます。

これだけだと、画像の識別が出来ないので、文字を書き込んでみます。

フォントサイズを指定するオプション

-pointsize 20

続いて、書き出す文字を指定

-draw “text 0,20 Sample"

これは、テキストで、書き出し開始位置がx=0、y=20の場所からSampleという文字を出力するというオプションです。

文字は左下に起点があるので

y軸のサイズはフォントサイズを考慮した位置を指定しないといけません。

ここまでで、コマンドライン上だけで画像にテキストを描画する事が出来ました。

convert -size 1024x640 xc:yellow -pointsize 20 -draw "text 0,20 Sample" test.png

あとは、Windows上であれば、バッチファイルで連番などでこのコマンドを回すか

Linux系であればシェルで回せば、大量の画像を一度に作成する事が出来ます。

シェルでのバッチファイルの例

#!/bin/sh
for i in `seq 1 1 10`
do
  convert -size 1024x640 xc:yellow -pointsize 20 -draw "text 0,20 test_$i" test_$i.png
done

Linux,テストImageMagick

Posted by GENDOSU