2017-03-20 8 views
1

私はノイズの多い画像で自分のアルゴリズムをテストしたいです。 次のコード行を使ってガウスノイズを追加するLema画像をテストしました。元の情報を保存する画像のノイズレベルを判断する方法はありますか?

cv::randn(nimg, 128, 30); 

となります。

入力画像:

enter image description here

ノイジー画像:

enter image description here

質問:

少しずつノイズを加えたい。 ノイズのレベルを判断することは難しく、元の情報も保持することができます。

ノイズを追加する平均値と標準偏差の値は誰にでも分かりますか? 元の情報も保持するノイズのレベルを判断する方法はありますか? それはちょうどトレイルベースですか?

+1

imnoise関数を使用して、その関数の分散パラメータを増やします。 [これは同様の質問です](http://stackoverflow.com/a/31836415/7659682)。 – Ozcan

答えて

1

ここに画像にノイズを追加する方法があります。

C++での作業

Mat noise = img.clone(); 
    Scalar meCan, 
      stddev; 
    meanStdDev(img, meCan, stddev); 
    uchar mean = meCan.val[0], 
      std = stddev.val[0]; 
    uchar vari = double(pow((double)std, 2)); 
    cv::randn(noise, 0, ((double)vari* noiseLevel)); 
    //add noise image into Original Image 
    Mat result; 
    cv::add(img, noise, result); 
関連する問題