图像二值化时的信息丢失:Matlab
我试图对一些图像进行二值化。在一些图像中,我得到了它的模式,但在一些图像中,我失去了一些模式。我正在使用greythresh进行二值化。有没有其他方法可以提高产量图像二值化时的信息丢失:Matlab,matlab,image-processing,Matlab,Image Processing,我试图对一些图像进行二值化。在一些图像中,我得到了它的模式,但在一些图像中,我失去了一些模式。我正在使用greythresh进行二值化。有没有其他方法可以提高产量 I = imread('image.jpg'); I = rgb2gray(I); I = uint8(255*mat2gray(I)); figure,imshow(I); I=imresize(I,[128 128]); figure,imshow(I); I = medfilt2(I,[5 5]); I1 = medfi
I = imread('image.jpg');
I = rgb2gray(I);
I = uint8(255*mat2gray(I));
figure,imshow(I);
I=imresize(I,[128 128]);
figure,imshow(I);
I = medfilt2(I,[5 5]);
I1 = medfilt2(I,[5 5]);
I = adapthisteq(I1,'clipLimit',0.4,'Distribution','rayleigh');
figure,imshow(I);
level = graythresh(I);
BW = im2bw(I, level);
figure,imshow(BW);
输入
输出
在您的情况下,为整个图像设置唯一阈值似乎不好。您应该尝试执行自适应局部阈值,以更好地适应平滑图像强度变化
您可以找到一个matlab示例谢谢您的回答,但我不明白当我们使用不同的图像时,如何选择窗口大小和基于C的值