Help remove unconnected small pixel from image
1 次查看(过去 30 天)
显示 更早的评论
Hello, maybe this question have been ask from other people, but i not fully understand how this code work. when i combine with my code it appear "index exceeds the number of array element" . can u help fix my code and help me understand the function ![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/478648/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/478648/image.png)
0 个评论
采纳的回答
Uday Pradhan
2021-1-7
Hi,
I found the mistake at line 132 of the code you have attached. If you notice, grayImage is already a binary image so thresholding it this way, will lead to binaryImage being a logical array with only zeros, hence the error.
% Threshold the image to binarize it.
binaryImage = grayImage > 100;
I believe you can just take:
% Threshold the image to binarize it.
binaryImage = grayImage ;
and then run the code to get the largest extracted blob. I hope this helps!
更多回答(1 个)
Image Analyst
2022-6-8
You can now use bwareafilt instead of that ExtractNLargestBlobs() function I wrote (before bwareafilt was available) that you are using.
largestBlob = bwareafilt(binaryImage, 1); % Take largest blob only.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!