2010年1月7日木曜日

ImageMagickでFisheyeエフェクト

スズキです。

下記URLに紹介されている内容を実験してみました。
http://scottpenberthy.com/2008/09/05/fisheye-effect-in-imagemagick/

以下のようなImageMagickのコマンドで実現できます。
convert -fx @fisheye.fx input.jpg output.jpg

"-fx"オプションを使うと、数式を用いてエフェクトをかけることができます。
http://www.imagemagick.org/script/fx.php
今回使っているFisheyeエフェクトは次の通りです。

--------【fisheye.fx】--------
kk=w*0.5;ll=h*0.5;dx=(i-kk);dy=(j-ll);aa=atan2(dy,dx);rr=hypot(dy,dx);rs=rr*rr/hypot(kk,ll);px=kk+rs*cos(aa);py=ll+rs*sin(aa);p{px,py}
--------
※横一行で記述しないとうまくいきませんでした…

PerlMagickだとFxがきかなかったけど、なんでだろう...

--------
http://www.suz-lab.com

0 コメント: