Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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
Image 如何准确计算白色碎片或补丁的数量?_Image_Matlab_Image Processing - Fatal编程技术网

Image 如何准确计算白色碎片或补丁的数量?

Image 如何准确计算白色碎片或补丁的数量?,image,matlab,image-processing,Image,Matlab,Image Processing,Hi尝试使用此代码消除噪声和模糊 J = double(imread('C:\Users\sai_praneeth7777\Desktop\project\real123.jpg')); L= imnoise(J,'salt & pepper',0.02); k = im2bw(I); se=strel('disk',1); bw=imopen(k,se); imshow(bw); cc = bwconncomp(bw,4); number1 = cc.NumObjects; disp

Hi尝试使用此代码消除噪声和模糊

J = double(imread('C:\Users\sai_praneeth7777\Desktop\project\real123.jpg'));
L= imnoise(J,'salt & pepper',0.02);
k = im2bw(I);
se=strel('disk',1);
bw=imopen(k,se);
imshow(bw);
cc = bwconncomp(bw,4);
number1  = cc.NumObjects;
display(number1);
BW1 = imfill(bw,'holes');
cc = bwconncomp(BW1,4);
number2  = cc.NumObjects;
figure;
imshow(L);
display(number2);
imshow(I);
这是原始图像

这是经过处理的图像


问题是仍然存在一些噪声,而且一些分区不清晰,比如右上角的分区消失了。我想计算白色部分的数量,因此我会得到错误的答案。我对matlab和图像处理是新手。

我会从中值滤波器开始,然后,你可以使一个开口稍微大一点,然后是一个小的关闭,以便调整轮廓。但由于边界模糊,因此无法进行非常精确/整洁的分割


如果要分离不同的组件,可以计算距离贴图,并在分水岭中使用局部最大值。

顺便说一句,距离贴图中最大值的数量将给出所需的片段数。