matlab 去除噪声请问如何用Matlab将图像中的水平线干扰去除,正弦噪声应该用什么滤波器处理?具体怎样处理?刚开始学Matlab,一点也不会:(
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/13 00:38:11
![matlab 去除噪声请问如何用Matlab将图像中的水平线干扰去除,正弦噪声应该用什么滤波器处理?具体怎样处理?刚开始学Matlab,一点也不会:(](/uploads/image/z/6603868-28-8.jpg?t=matlab+%E5%8E%BB%E9%99%A4%E5%99%AA%E5%A3%B0%E8%AF%B7%E9%97%AE%E5%A6%82%E4%BD%95%E7%94%A8Matlab%E5%B0%86%E5%9B%BE%E5%83%8F%E4%B8%AD%E7%9A%84%E6%B0%B4%E5%B9%B3%E7%BA%BF%E5%B9%B2%E6%89%B0%E5%8E%BB%E9%99%A4%2C%E6%AD%A3%E5%BC%A6%E5%99%AA%E5%A3%B0%E5%BA%94%E8%AF%A5%E7%94%A8%E4%BB%80%E4%B9%88%E6%BB%A4%E6%B3%A2%E5%99%A8%E5%A4%84%E7%90%86%3F%E5%85%B7%E4%BD%93%E6%80%8E%E6%A0%B7%E5%A4%84%E7%90%86%3F%E5%88%9A%E5%BC%80%E5%A7%8B%E5%AD%A6Matlab%2C%E4%B8%80%E7%82%B9%E4%B9%9F%E4%B8%8D%E4%BC%9A%EF%BC%9A%EF%BC%88)
matlab 去除噪声请问如何用Matlab将图像中的水平线干扰去除,正弦噪声应该用什么滤波器处理?具体怎样处理?刚开始学Matlab,一点也不会:(
matlab 去除噪声
请问如何用Matlab将图像中的水平线干扰去除,正弦噪声应该用什么滤波器处理?具体怎样处理?刚开始学Matlab,一点也不会:(
matlab 去除噪声请问如何用Matlab将图像中的水平线干扰去除,正弦噪声应该用什么滤波器处理?具体怎样处理?刚开始学Matlab,一点也不会:(
1.读图象
2.做fft
3.显示fft
4.肉眼观察频谱中的噪声.(正弦干扰是在频谱中是几个点)
5.频谱中有噪声的区域设置为0.(或者低通)
6.反fft变换
7.显示
1.读图象
im=imread('文件名');
2.做fft
im_fft=(fftshift(fft2(im)));%fftshift是把低频成分放到中间,习惯上要这样做.
3.显示fft
im_magfft=abs(im_fft);
temp1=log(im_magfft+1);%否则幅度太大,不能显示整个动态范围
Xmin = min(min(temp1));
Xmax = max(max(temp1));
scaf = 255/(Xmax-Xmin);
im_ftd = floor(scaf*(temp1 - Xmin));
figure;
imshow(im_ftd);
4.肉眼观察频谱中的噪声.(正弦干扰是在频谱中是几个点)
5.频谱中有噪声的区域设置为0.(或者低通)
%下面举例低通
r = 70; %低通的中心半径,自己观察
for i=1:m
for j=1:n
if (((i-m/2)^2+(j-n/2)^2) < r^2 )
mask(i,j) = 1;
else
mask(i,j) = 0;
end
end
end
im2_fft=im_fft.*mask;
6.反fft变换
im2=ifft(ishiftfft(im2_fft));
7.显示
imshow(im2);