Clear Filters
Clear Filters

How to convert 'Structure' ?!

2 views (last 30 days)
Mariam Sheha
Mariam Sheha on 29 Jun 2013
Hi everybody;
I am trying to get feature value out of structure array..
for example:
glcms = graycomatrix(CG,'Offset',[0 1]);
Cont_RGB = graycoprops(glcms,'Contrast');
F=Cont_RGB;
F= Contrast: 0.2546 % i wana to remove word contrast and get the number only!
How can i get the number?
Thank you

Accepted Answer

Walter Roberson
Walter Roberson on 30 Jun 2013
If your
Cont_RGB = graycoprops(glcms,'Contrast');
is returning a Cont_RGB which is a structure array, and you want to extract the field named "Contrast" from the first member of that structure array, you would use
Cont_RGB(1).Contrast
and in the cast where the structure array only has a single member (so Cont_RGB(2) does not exist) then you can abbreviate that to
Cont_RGB.Contrast
In the above, the period is part of the syntax.
If Cont_RGB is a structure array, so Cont_RGB(2).Contrast and so on exist, and you are trying to get a vector equivalent to
[Cont_RGB(1).Contrast Cont_RGB(2).Contrast Cont_RGB(3).Contrast ....]
then use
[Cont_RGB.Contrast]
In this, the [] and the period are part of the syntax.

More Answers (2)

Matthew Eicholtz
Matthew Eicholtz on 29 Jun 2013
Try
F.Contrast
  2 Comments
Mariam Sheha
Mariam Sheha on 29 Jun 2013
can you tell me what does 'F','contrast' represent
Walter Roberson
Walter Roberson on 30 Jun 2013
Cont_RGB = graycoprops(glcms,'Contrast');
Cont_RGB.Contrast
The "." between the variable name and "Contrast" is literal, part of the syntax.

Sign in to comment.


Image Analyst
Image Analyst on 29 Jun 2013
theNumber = F.Contrast;
  3 Comments
Image Analyst
Image Analyst on 30 Jun 2013
All 3 people answered with the same thing, and you accepted the third response, so I think we all knew what you meant. Hopefully you're now using Walter's answer, and are not doing unnecessary operations like converting to a cell array and then converting the cell array to a matrix. You may find it helpful to read the FAQ: http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F
Mariam Sheha
Mariam Sheha on 30 Jun 2013
Thanks for you all replaying me,
Walter's mentioned his answer,and so i get the point once i read discussion..
yes i do using the method now instead of using useless operation..
Also, Thanks for the doc. it's helpful
Really you are all helpful and creative...:)

Sign in to comment.

Categories

Find more on Images in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!