我有一个三相图像,我使用自动阈值(multithresh)和“imquantize”函数对其进行了分割。在没有任何过滤操作的情况下,我确实在图像中有很多洞。然而,当我使用中值滤波器时,这些漏洞会减少,尽管尽管进行了滤波,但仍有相当多的漏洞。
从这一点应用“填充”功能会导致“过度填充”,如下图红色圆圈部分所示。
代码如下:
%# Read in image
I = imread(‘original_image.jpg');
figure, imshow(I),axis off, title('Original Image');
%# Filter image
I = medfilt2(I);
% figure, imshow(I), title('Median-filtered image')
%# Segment image
thresh = multithresh(I, 2);
BW = imquantize(I, thresh);
figure, imshow(BW,[]),axis off, title('Segmented Image');
%# Fill holes
BW2 = imfill(BW,'holes');
figure, imshow(BW2, []); title('Filled holes image');
我只是想知道是否有更好的方法来处理这种情况。您认为使用“multithresh”和“imquantize”功能对分割是否足够好?分水岭可以做得更好吗?这里甚至有必要吗?
一般来说,请问我可以做些什么来提高输出图像的质量?
我问的原因是因为如果你缩放原始图像的“imshow”,你会注意到大部分黑色相接触固体(白色相)。然而,自动分割并不能准确地捕捉到这一点,因为分割的图像在固相周围有中间(灰色)相环。我该如何处理?
非常感谢您的预期帮助/建议。