DICOMヘッダーの抽出
8 views (last 30 days)
Show older comments
DICOM画像からdicominfoにてヘッダー情報を構造体配列として抽出できたのですが、これをxlsxファイルとして出力する方法をご享受ください。
0 Comments
Accepted Answer
Kojiro Saito
on 8 Sep 2022
構造体配列はwritestructでXML形式に出力できますが、そのままではExcel形式にならないので、struct2tableを使って構造体をテーブルに変換してからwritetableでファイル出力します。
サンプルコードです。
dataInfo = dicominfo('CT-MONO2-16-ankle.dcm');
dataInfoTbl = struct2table(dataInfo, 'AsArray', true);
writetable(dataInfoTbl, 'out.xlsx')
このDICOMデータではNameOfPhysiciansReadingStudyやOperatorsNameが構造体の入れ子になっているので、それもファイルに出力するには以下のように入れ子の構造体を配列に変換しておきます。
dataInfo = dicominfo('CT-MONO2-16-ankle.dcm');
fieldsNames = fieldnames(dataInfo);
for n=1:length(fieldsNames)
if isstruct(dataInfo.(fieldsNames{n}))
dataInfo.(fieldsNames{n}) = struct2array(dataInfo.(fieldsNames{n}));
end
end
dataInfoTbl = struct2table(dataInfo, 'AsArray', true);
writetable(dataInfoTbl, 'out.xlsx')
More Answers (0)
See Also
Categories
Find more on DICOM Format 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!