How to extract a single field from DICOM Data

2 次查看(过去 30 天)
For my work I have to use DICOMINFO. However from the long list that appears I only need to see one or two lines of this. Is there any way of requesting only this data or a second line of code that I could add after DICOMINFO to extract the information that I need?
  1 个评论
Rik
Rik 2018-10-7
Not as far as I know. I just read the file in binary and then extracted the value that I needed.

请先登录,再进行评论。

回答(1 个)

ILÁN FRANCISCO CARRETERO JUCHNOWICZ
Hi,
I recently contacted MathWorks Support and they have advised me the following solution:
''there is an undocumented way you might be able to extract 'dicominfo' faster. Please see the following example.
>> obj = images.internal.dicom.DICOMFile('CT-MONO2-16-ankle.dcm');
>> info = obj.getAttributeByName('SeriesTime');
This method first creates an object to extract the attributesNames and then use 'getAttributeByName' to read the information of a particular attribute. "
I have tried the commands detailed above and it works really well and faster than the dicominfo function.
I hope it helps you!
  2 个评论
Rik
Rik 2020-6-17
The dicominfo function works well and can handle a lot of damaged or not fully DICOM-compliant files. If you don't need that robustness it is painfully slow.
If you need a much faster version, you can use this FEX submission. I haven't compared the speed of that function with the code you just posted.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 DICOM Format 的更多信息

产品


版本

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by