我有一张三相图像,我使用自动阈值分割(multithresh)和'imquantize'函数进行了分割。在没有任何过滤操作的情况下,图像中有很多空洞。然而,当我使用中值滤波器时,这些空洞会减少,尽管过滤后仍然有相当多的空洞。
从这个点应用“imfill”函数会导致过度填充,如下图所示的红色圆圈部分。
代码如下:
我在想是否有更好的方法来处理这种情况。你认为使用'multithresh'和'imquantize'函数对分割足够好吗?分水岭可以做得更好,甚至在这里是必要的吗?
总体而言,请问我该如何提高输出图像的质量?
我之所以问这个问题是因为如果你缩放原始图像的'imshow',你会发现大部分黑色相位与实心(白色相位)接触。然而,自动分割并没有准确捕捉到这一点,因为分割图像周围有中间(灰色)相位的环。我该如何处理这个问题?
非常感谢您预期的帮助/建议。
![原始图像](https://istack.dev59.com/L2gz4.webp)
![FilledHoles image](https://istack.dev59.com/sKfom.webp)
%# 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',你会发现大部分黑色相位与实心(白色相位)接触。然而,自动分割并没有准确捕捉到这一点,因为分割图像周围有中间(灰色)相位的环。我该如何处理这个问题?
非常感谢您预期的帮助/建议。