我想在Matlab中使用“randg”函数将乘法伽玛噪声添加到图像中,并去除该噪声。我们必须记住,噪声应该有平均值1和4级。它应该遵循Gamma律(使用Gamma概率分布函数)。 加入噪音后的图像变成在Matlab中使用randg伽玛定律创建噪声图像和消除噪声?
f = u * v; 其中f =噪声图像,u =原始图像,v =噪声图像。
伽马法是: GV(V)= L^L /(Γ(L))V ^(L-1)EXP(-Lv)1_(v≥0)
,其中L是噪音水平和v是噪音。
这里是我试过的代码:
img = imread('lena.png');
img1 = img./ 255;
imgdob = double(img1);
noisyimg = imgdob + randg(1,size(imgdob)) .* 0.4;
noisyimg(noisyimg< 0) = 0;
noisyimg(noisyimg> 1) = 1;
figure,imshow(img);
figure,imshow(noisyimg);
imwrite(img, 'lenaOriginal.jpg', 'Quality', 100);
imwrite(noisyimg, 'lenaNoisy.jpg', 'Quality', 100);
但我无法得到预期的结果。请给我一个方法。
你尝试过什么吗?在没有任何努力的情况下询问代码的问题可能会被关闭。您可以通过显示您尝试的内容以及您卡住的位置来改善您的问题。谢谢! –
是的我已经试过了代码,这次我和代码一起编辑了这个问题,但问题是我没有得到预期的结果。请给我一个方法。 –
@unique_CODER你可以试试我的解决方案,让我知道它是否解决了这个问题? – krisdestruction