How to extract a specific field value from struct

3 views (last 30 days)
I am working in some data, and I have attained a struct (struct.mat) is enclosed.
struct with fields:
Connectivity: 8
ImageSize: [577 601]
NumObjects: 6
PixelIdxList: {[2695×1 double] [2934×1 double] [2877×1 double] [3002×1 double] [2733×1 double] [3078×1 double]}
I am intrested in extracting NumObjects data from this struct, so that I can use this as an input to some place. Kindly advise, how I can specifically extract this info (NumObjects: 6) as an output file, so I can use it as input some other place.
thank you

Accepted Answer

Stephen23
Stephen23 on 14 Jul 2022
Edited: Stephen23 on 14 Jul 2022
load('struct.mat')
cc
cc = struct with fields:
Connectivity: 8 ImageSize: [577 601] NumObjects: 6 PixelIdxList: {[2695×1 double] [2934×1 double] [2877×1 double] [3002×1 double] [2733×1 double] [3078×1 double]}
val = cc.NumObjects
val = 6
  1 Comment
Abdul Hannan Qureshi
Abdul Hannan Qureshi on 14 Jul 2022
Issue resolved, exactly what I was looking for. Thanks alot for quick response.

Sign in to comment.

More Answers (1)

Amritesh
Amritesh on 14 Jul 2022
Edited: Amritesh on 14 Jul 2022
You can extract the NumObjects field using the name of struct/ after loading structName.mat file
NumObjects = structName.NumObjects;
Then, save NumObjects in NumObjects.mat file
save('NumObjects.mat','NumObjects');
You can also save all fields of struct as different variables in a file
save('newstruct.mat','-struct','structName');
Hope this resolves your problem.

Community Treasure Hunt

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

Start Hunting!