Eliminate small areas in a binary image

Hi all,
I have several binary images with small , middle and large areas. I want to remove small areas and for this I used the bwareaopen function. But the small size of some areas in an image is the middle size areas of others images . I wanted eliminate small areas using as parameter of function bwareaopen the value of the minimum area. For this, I wrote this code:
STATS = regionprops(BW, 'Area'); allareas=[STATS.Area]; min_area=min(allareas); BW2=bwareaopen(BW,min_area+1);
But the statement "min_area=min(allareas);" gives the error: "Index exceeds matrix dimensions."
Can someone tell me why the error? And how can I eliminate small for all images automatically?

 採用された回答

Sean de Wolski
Sean de Wolski 2012 年 1 月 5 日

0 投票

That means you've accidentally defined min or bwareaopen as a variable before.
whos min
clear min
And rename the variable in the line that overwrites it.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeConvert Image Type についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by