matlab频域滤波处理,手动滤波,图像去网格背景:频域中手动选择目标区域进行滤波,滤掉噪声,灵活地达到理想的效果。 您所在的位置:网站首页 中国护照编号组成图片大全 matlab频域滤波处理,手动滤波,图像去网格背景:频域中手动选择目标区域进行滤波,滤掉噪声,灵活地达到理想的效果。

matlab频域滤波处理,手动滤波,图像去网格背景:频域中手动选择目标区域进行滤波,滤掉噪声,灵活地达到理想的效果。

2023-09-30 12:43| 来源: 网络整理| 查看: 265

目录

 

一.原理简介

二.现有方法

三.代码实现

四.测试结果图

一.原理简介

主要思路为:通过傅里叶变换,将图像显示在频率域中,通过观察频谱图,如果了解频谱图与原图之间的关联,可以较为容易地发现噪声在频谱图中的表现,如下图:

第一张为原图,图中有较为规律的网纹(莫尔模式),图像在频率域中的频谱图如上方右图所示,可以发现其中包含八个较为明显的亮点,这些亮点在原图中就是网格。

二.现有方法

如果去掉这些亮斑,如下方左图所示,表现在原图中,就去掉了网格,如右下角图所示。

如果从较专业图像处理的角度,可以如下方法:(前两种网上和《数字图像处理》书中较多实现。本文第三种)

1.对频谱图设置一个阈值二值化进行阈值分割,然后通过膨胀腐蚀等操作找到这些亮斑(代码点此)

2.巴特沃斯陷波带阻滤波器传递函数乘以傅里叶变换的结果(左下图)(参见数字图像处理207页)

3.手动圈选特定位置,将选定位置的值设置为频谱图中的最小值,(代码如下)

三.代码实现

非常重要:使用时,通过鼠标选择mask区域,选好一个mask后,按下esc键会进行选下一个。当所有的mask选完时,在第一个图上按esc,再在画mask的图上按esc,程序就往下执行,生成结果图。(欢迎有兴趣的小伙伴改进操作方法)

matlab实现,主要功能为对于图像出现的有规律的网格,网纹,线条状噪声进行移除。

I = imread('test.png'); I = rgb2gray(I); totMask = zeros(size(I)); % accumulate all single object masks to this one f = figure('CurrentCharacter','a'); imshow(I) FFT = fft2(I); myangle = angle(FFT); %相位谱(没有进行移位的) FS = abs(fftshift(FFT)); % 移位,使低频成分集中到图像中心,并得到幅度谱 S = log(1+abs(FS)); figure,imshow(S,[]); small=min(min(FS)) h = imfreehand(gca); setColor(h,'green'); position = wait(h); BW = createMask(h); totMask = totMask | BW; % add mask to global mask while double(get(f,'CurrentCharacter'))~=27 % ask user for another mask h = imfreehand(gca); if isempty(h) % User pressed ESC, or something else went wrong continue end setColor(h,'green'); position = wait(h); BW = createMask(h); totMask = totMask | BW; % add mask to global mask pause(.1) end % show the resulting mask figure; imshow(totMask); title('multi-object mask'); cost3 = FS; cost3(totMask == 1) = small ; FS = cost3; resul_s = ifftshift(FS); % 将处理后的幅度图反移位,恢复到正常状态 result_f = resul_s.*cos(myangle) + resul_s.*sin(myangle).*1i; % 幅度值和相位值重新进行结合,得到复数 result_image = abs(ifft2(result_f )); % 进行傅里叶反变换,得到处理后的时域图像 result = im2uint8(mat2gray(result_image)); figure,imshow(result); %去除网纹成分后的图像 四.测试图

原图:

圈住目标信号:

生成的mask:

结果图:

本文链接:matlab频域滤波处理,手动滤波,图像去网格背景:频域中手动选择目标区域进行滤波,滤掉噪声,灵活地达到理想的效果。_Alocus_的博客-CSDN博客



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有