2008年04月07日

Imager による幕末写真フィルタ

nitoyonさんのブログ幕末古写真ジェネレーター の内部処理と as での実装方法が検証されていたので、Perl で Imager のフィルタモジュールにしてみた。

テストページはこちら
http://bakumatsu.koneta.org/

書いたフィルタの Imager::Filter::Bakumatsu は、nitoyon さんのエントリをそのままなぞったつもりです。が、Imager に flash.filters.ColorMatrixFilter のオフセットに相当するものがない(と思う)ので、これだけに XS 書くのもたいへんなんで明るくしてから上と下を削るみたいな感じでやってみた。

Imager::Filter::Bakumatsu のソースは coderepos のこのへんです。

use Imager;
use Imager::Filter::Bakumatsu;

my $img = Imager->new;
$img->read(file => 'photo.jpg') or die $img->errstr;

$img->filter(type => 'bakumatsu'); # 幕末化

$img->write(file => 'photo-bakumatsu.png');

な感じで使えます。使う人いるかわかりませんが。

サンプル。元の写真↓

P1020751

今回書いた Imager::Filter::Bakumatsu による幕末

bakumatsu-imager-filter-bakumatsu

nitoyon さんの as による実装による幕末↓

bakumatsu-nitoyon

オリジナルの幕末古写真ジェネレーターによる幕末↓

bakumatsu-crara-original

モジュールとして Bakumatsu という名前はいかがなものかと思うのだけど、こういう写真は英語圏の人は何て呼ぶんだろうか。

追記:
英語の Wikipedia に幕末という項目 があったので、Imager::Filter::Bakumatsu で CPAN に UP


TrackBack

Comments

コメントをどうぞ


冨田尚樹
Naoki Tomita
loading from twitter
たぶん人気なもの
del.icio.us/scrap
今日のCPANモジュール
とみた広報
Syndicate this site
Syndicate this site
あわせて読みたい なかのひと