ImageMagickで丸いサムネイル画像を作る

丸く切り取った画像を Keynote で使いたかったので、 ImageMagick で加工した方法をメモ。

手順

  1. マスク用に丸い画像を作る
  2. 加工する画像を正方形に切り取る
  3. 正方形の画像と丸い画像を合成する

加工する画像は下記。フリー写真素材ぱくたそから拝借しました。みんな大好き河村友歌(かわむらゆか)ちゃん。

【加工前】放課後カフェデート [モデル:河村友歌]

 

1. マスク用に丸い画像を作る

まずマスク用に正円の画像を作ります。この円の大きさが最終的なサムネイル画像の大きさになります。

円の外側を透過にしたいのでアウトプットは png 画像します。

convert -size 300x300 xc:none -draw 'circle 150,150 150,0' circle.png

マスク用画像

 

2. 加工する画像を正方形に切り取る

circle.png と同じサイズに縮小します。この時に crop や gravity を使って、円にしたい箇所に合わせて切り出しておきます。

convert cafe_before.png -thumbnail 300x300^ -gravity center -extent 300x300 cafe_extent.png

【縮小】放課後カフェデート [モデル:河村友歌]

 

3. 正方形の画像と丸い画像を合成する

切り出した正方形の画像とマスク用の円の画像を合成します。

convert cafe_extent.png circle.png -compose CopyOpacity -composite cafe_after.png

 

【加工後】放課後カフェデート [モデル:河村友歌]

 

全ての処理を1行で完結することも出来ます。circle.png を出力する処理を () で入れ子にして指定します。

 

convert cafe_before.jpg -thumbnail 300x300^ -gravity center -extent 300x300 \( -size 300x300 xc:none -fill white -draw 'circle 150,150 150,0' \) -compose CopyOpacity -composite cafe_after.png

 

まとめ

【加工後】突然、ポッキーゲームをはじめる女子高生 [モデル:河村友歌] 【加工後】通学中に明るく声をかけてくれる幼なじみの女子高生 [モデル:河村友歌]

河村友歌ちゃん可愛い!!!!!

パラメータを変えるだけで、切り出す位置やリサイズの大きさ、正円ではなくて楕円や角丸なども対応出来るので、画像加工アプリでは難しい微調整には良いかなと思います。あとはフィルタとかも掛けてみたい。

以上

ImageMagick