How to select a regionprops from a popup menu in a GUI?
1 view (last 30 days)
Show older comments
Dear all,
I am building one GUI which include a popup menu for a 'regionprops' function that I need. I am trying to call the type of 'regionprops' after clicking a push button but it is not working. My code is as follows:
popup_2_Value = get(handles.popupmenu2, 'Value');
if popup_2_Value == 1
RegPropType = 'Area';
elseif popup_2_Value == 2
RegPropType = 'MajorAxisLength';
elseif popup_2_Value == 3
RegPropType = 'MinorAxisLength';
elseif popup_2_Value == 4
RegPropType = 'Perimeter';
elseif popup_2_Value == 5
RegPropType = 'Orientation';
end
%
X = im2bw(I); %binary image of the input
CC = bwconncomp(X); %Connected components
mal = regionprops(CC,'RegPropType'); % normal code format is --> mal = regionprops(CC,'Area');
mal = vertcat(mal(:).RegPropType); % normal code format is --> mal = vertcat(mal(:).Area);
This error message appears "Error using regionprops>getPropsFromInput"
Any idea how to solve such problem?
With kind regard,
Meshoo
0 Comments
Accepted Answer
ES
on 23 Jan 2014
From what I see, you should have done
mal = regionprops(CC,RegPropType)
instead of
mal = regionprops(CC,'RegPropType');%Note the missing quotes
Since the variable RegPropType has the required string like 'area' or ' Perimeter' etc. When you pass as 'RegPropType', this string itself is passed, and not the value inside the variable RegPropType.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!