add a field to structure

Sat1=regionprops(MaskIm, {'Area', 'Eccentricity', 'EulerNumber', 'MajorAxisLength', 'MinorAxisLength', 'Orientation', 'Perimeter'});
How to divide MajorAxisLength with MinorAxisLength and then add it to Sat1 structure under 'AspectRatio' name?

 Risposta accettata

KSSV
KSSV il 12 Ott 2017
MaskIm = imread('text.png');
Sat1=regionprops(MaskIm, {'Area', 'Eccentricity', 'EulerNumber', 'MajorAxisLength', 'MinorAxisLength', 'Orientation', 'Perimeter'});
AR = [Sat1.MajorAxisLength]./[Sat1.MinorAxisLength] ;
[Sat1.AspectRatio] = deal(AR) ;

6 Commenti

Peyman Obeidy
Peyman Obeidy il 12 Ott 2017
Thank you for this. It is adding a double array into each row. Please see the attached photo.
MaskIm = imread('text.png');
Sat1=regionprops(MaskIm, {'Area', 'Eccentricity', 'EulerNumber', 'MajorAxisLength', 'MinorAxisLength', 'Orientation', 'Perimeter'});
AR = [Sat1.MajorAxisLength]./[Sat1.MinorAxisLength] ;
for i = 1:length(AR)
Sat1(i).AspectRatio = AR(i) ;
end
Peyman Obeidy
Peyman Obeidy il 12 Ott 2017
Great. Many thanks for your time.
Cheers
YOu can avoid loop too, check the following:
MaskIm = imread('text.png');
Sat1=regionprops(MaskIm, {'Area', 'Eccentricity', 'EulerNumber', 'MajorAxisLength', 'MinorAxisLength', 'Orientation', 'Perimeter'});
AR = [Sat1.MajorAxisLength]./[Sat1.MinorAxisLength] ;
AR=num2cell(AR);
[Sat1(:).AspectRatio] = deal(AR{:}) ;
Thank you. This is working but then I am not able to filter the region using 'bwpropfilt' anymore.
%
% AR =( [MaskIminFinal_log_properties.MajorAxisLength]./[MaskIminFinal_log_properties.MinorAxisLength])' ;
for i = 1:length(AR)
MaskIminFinal_log_properties(i).AspectRatio = AR(i) ;
end
MaskIminFinal_log_New = bwpropfilt(MaskIminFinal_log, 'AspectRatio', [1, 3]);
Peyman Obeidy
Peyman Obeidy il 12 Ott 2017
I am trying to filter out noise (scanning pattern) on my negative control image (attached).

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by