画像にノイズを加える - Perl,ImageMagick

この記事は2007年02月22日に書かれたものです。

ImageMagickを使用し、画像にノイズを加えたい。AddNoiseメソッドを使用すれば簡単に実現できる。

実行例

befor after

サンプル

#!/usr/bin/perl
 
;#
;#画像にノイズを加える
;#
 
use Image::Magick;
 
#-------------------------------------------#
#初期設定
#-------------------------------------------#
#-- 元画像 --#
my $source = './sample_org1.jpg';
 
#-- ノイズの種類 --#
my @noise = (
          'Uniform'
        , 'Gaussian'
        , 'Multiplicative'
        , 'Impulse'
        , 'Laplacian'
        , 'Poisson'
 
);
 
#-------------------------------------------#
#ノイズ画像を生成する
#-------------------------------------------#
foreach my $effect ( @noise ){
    #-- インスタンス生成 --#
    my $image = Image::Magick->new;
 
    #-- 画像を読込む --#
    $image->Read($source);
 
    #-- ノイズを加える --#
    $image->AddNoise( noise => $effect );
 
    #-- 画像を保存する(JPEG) --#
    $image->Write("./AddNoise_$effect.jpg");
 
    #-- オブジェクトを破棄 --#
    undef $image;
}

以下が実行結果です。「Uniform」は間違えたわけではなく、指定しても何も変わらないみたいです。

実行例(ノイズ一覧)

Uniform
Gaussian
Multiplicative
Impulse
Laplacian
Poisson

関連書籍

クーガー株式会社, 石井 敦
ISBN 4844326473
¥ 10,970

failed to fetch data: unkown error

Gary Bradski, Adrian K…
ISBN 4873114136
¥ 4,200

failed to fetch data: unkown error

コメント

コメントを入力. Wiki文法が有効です:
K M E I G