Help remove unconnected small pixel from image

4 ビュー (過去 30 日間)
MOHAMMAD AZRUL AIMAN
MOHAMMAD AZRUL AIMAN 2021 年 1 月 4 日
回答済み: Image Analyst 2022 年 6 月 8 日
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

採用された回答

Uday Pradhan
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
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.

カテゴリ

Help Center および File ExchangeImage Processing and Computer Vision についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by