detect MSER output - reduce output
古いコメントを表示
I'm trying to get a reasonable count of the number of busses in a satellite image, using `detectMSER` looks great as a starting point - except for the fact that each region has numerous almost identical ellipsoids that overlap. This is the best I can get it, and I've played around with all the input variables. For example, in the image below I expect to have about a 100 regions but there are over 2200. Each bus has 7 or 8 ellipsoids.
I can use regionprops to, for the most part, remove artifacts, but not sure how to just keep just one region for each bus.
Ive tried rounding together centroid location significant digits, using bounding box overlap, filtering based on orientation, etc, but everything I do seems to remove good values.
This has to scale (I have 20k images to cycle through, so need to automate this). Thanks in advance.
[regions, mserConnComp] = detectMSERFeatures(img_bw, ...
'RegionAreaRange',[300 900], ...
'ThresholdDelta', 3,...
'MaxAreaVariation', 0.2);

採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Image Processing Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
