Matlab 内で、既知の分散を持つ画像にノイズを追加しています。私は次のようにできることを知っています:
var = 0.01;
i = im2double(imread('lena.bmp'));
i_n = imnoise(i, 'gaussian',0,var);
結果の画像には明らかにノイズがあります。ただし、ハイパス フィルターの中央値を計算してノイズ分散を推定しようとすると、実際には相関関係が見られません。
k = [1 4 6 4 1]'*[1 4 6 4 1];
kk = k ./sum(sum(k));
var_est = median(median(abs(i_n - imfilter(i_n,kk))))
var_est(:,:,1) =
0.0631
var_est(:,:,2) =
0.0620
var_est(:,:,3) =
0.0625
分散の推定が難しい問題であることは理解していますが、妥当な結果を得たいだけです。たとえば、50% の誤差は許容範囲です。私は何を間違っていますか?