Info

This question is closed. Reopen it to edit or answer.

Dicom metadata mxArray fault

1 view (last 30 days)
MikeSv
MikeSv on 23 Oct 2015
Closed: MATLAB Answer Bot on 20 Aug 2021
Hello everyone. Iam trying to read metadata from a DICOM file and display them.in a listbox.
I read the data with
info = dicominfo(filename);
Then I tried to display the data with
Set(handles.listbox1,'string',info);
Unfortunately that does not work. Matlab says something about a mxArray.
So my question is how can I read the data from the mxArray in a listbox?
Thanks in advance,
Mike

Answers (1)

Walter Roberson
Walter Roberson on 23 Oct 2015
dicominfo() does not return a string: it returns a structure. You will need to convert the parts of the structure to strings to display them.
A quick and dirty method would be to use an edit box instead of a text box, and to use
Set(handles.editbox1, 'string', evalc(disp(info)) );
  3 Comments
Walter Roberson
Walter Roberson on 23 Oct 2015
I do not know what the "value" would represent there?
If you want to loop over the field names you can do so:
fn = fieldnames(info);
for K = 1 : length(fn)
thisvalue = info.(fn{K});
... do something with thisvalue
end
MikeSv
MikeSv on 25 Oct 2015
Thank you very much Walter. This works to a certain point. I seems like there are some nested structures inside the DICOM as well...

This question is closed.

Tags

Community Treasure Hunt

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

Start Hunting!