Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
图像二值化时的信息丢失:Matlab_Matlab_Image Processing - Fatal编程技术网

图像二值化时的信息丢失:Matlab

图像二值化时的信息丢失: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

我试图对一些图像进行二值化。在一些图像中,我得到了它的模式,但在一些图像中,我失去了一些模式。我正在使用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 = 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的值