メモ:ImageMagicK7を使ったJPG→PNG/Exif削除、画像回転のコマンド等

 FreeBSD 12.1-RELEASEを使っていて、スマホ等の画像をいろいろいじる必要があることから必要なコマンドだけをかいつまんでメモっとく記事。awkのprintコマンド便利…

カレントディレクトリのJPG画像を一括でExif情報を削除し1/4のサイズに縮小する処理を行い、PNG画像として出力する。

user@hostname:~/tmp% ls *.JPG | xargs -I% sh -c 'echo % | cut -f1 -d . ' | awk '{print "convert -strip -geometry 25% "$1".JPG " $1".PNG"} | sh

convertコマンドは基本的に変換処理を行う感じのときに使用するコマンドで、上記のワンライナーではJPG→PNGへの変換の中に追加処理でExif情報の削除(-stripオプション)、1/4サイズへの縮小(-geometry 25%)が含まれています。
awkコマンドのprintコマンドはcutコマンドにおけるフィールド抽出処理の高機能版としての使い勝手のほか、引数を2度以上出力する・ダブルコーテーションで挟んでシェルコマンドの清書をするなど、C言語におけるprintf文のような処理ができるので、覚えておくと重宝しそうです。 

画像の回転の処理については、geeqieなどを使用しつつ、mogrifyコマンドの-rotateオプションで回転させます。
user@hostname:~/tmp% mogrify -rorate 90 IMAGE_FILE.JPG


画像の連結
横方向に連結
user@hostname:~/tmp% convert +append left.png center.png right.png output.png

縦方向に連結
user@hostname:~/tmp% convert -append up.png center.png bottom output.png

☆メモ
Ports Collection: graphics/ImageMagicK7、graphics/geeqie
freshports:(ImageMagicK7)https://www.freshports.org/graphics/ImageMagick7/
freshports:(Geeqie)https://www.freshports.org/graphics/geeqie/
須崎純一のWebサイト より「ImageMagickによる基本的な画像処理」 http://www.gi.ce.t.kyoto-u.ac.jp/user/susaki/image/magick_process.html

コメント