消除靠近灰度图像对象的噪点

时间:2014-05-31 11:03:30

标签: matlab

我的图像波纹管有一个主要物体,周围有一些噪音,如烟雾,用红线圈起来。

  1. 是否可以消除这种噪音,尽可能保持主要物体的完好无损?
  2. 我们可以在不使用手动阈值的情况下执行,例如,look here如果有帮助吗?
  3. 我想提一下背景与零值不对应。因此,基于所获得的掩模,应用阈值方法并将相应的点设置为零将破坏背景的平滑度。

    祝你好运, 透特

    编辑:为了可视化目的,我放置了一个输出图像(我只是在圆圈内复制一个背景补丁。)

    enter image description here

1 个答案:

答案 0 :(得分:0)

S.A。

是的,您可以使用某些形态操作(例如

)完成任务
  • 打开
  • 扩张
  • 侵蚀

这是一个可以帮助您的简单代码:

%读取输入图像'img'后:

structuredElement1 = strel('disk',5);
structuredElement2 = strel('disk',3);
imageAfterErosion = imerode(img,structuredElement2);
imageAfterClosing = imclose(imageAfterErosion,structuredElement1);
imageAfterDilation = imdilate(imageAfterClosing,structuredElement1);        
imageAfterDilation = imdilate(imageAfterDilation,structuredElement1); 
imageAfterClosing = imclose(imageAfterDilation,structuredElement1);
binaryImage = imfill(imageAfterClosing, 'holes');  
imshow(binaryImage);