DICOMDIR Parser
A DICOMDIR file describes a collection of (usually cryptically-named) DICOM medical image files and contains rich metadata for these images. Given the path to a DICOMDIR file, this function parses the file and generates a tree of the metadata.
Syntax:
- patient = parseDicomdir(fname);
Arguments:
- fname (string): the filename for a DICOMDIR file.
Returns:
- patient (cell array of structs): the root of a metadata tree with the following levels of nodes: patient, study, series, image. Each node is a struct, with an "info" field containing all the metadata as stored in the DICOMDIR file and another field, named for the next deeper level of nodes, that is a cell array of node structs.
Examples:
After calling the function,
- metadata for the i-th image in the j-th series in the k-th study for the l-th patient described by this DICOMDIR is
patient{l}.study{k}.series{j}.image{i}.info;
- metadata for the k-th study for the l-th patient is
patient{l}.study{k}.info;
- the birth date for the l-th patient is
patient{l}.info.PatientBirthDate;
- the date of the k-th study for the l-th patient is
patient{l}.study{k}.info.StudyDate;
- the description of the j-th series in the k-th study for the l-th patient is
patient{l}.study{k}.series{j}.info.SeriesDescription;
- the relative path from the DICOMDIR file to the actual image file for the i-th image in the j-th series in the k-th study for the l-th patient is
patient{l}.study{k}.series{j}.image{i}.info.ReferencedFileID;
Note that this relative path may be formatted using a path separator different from the one used on your system. For example, if the DICOMDIR was generated on a Windows machine but you're on Linux or Mac OS X,
strrep(patient{l}.study{k}.series{j}.image{i}.info.ReferencedFileID, '\', pathsep)
will give you a properly-formatted relative path, which you can then use as an argument to the fullfile() function to create an absolute path.
The zip file also includes copySeriesFromDicomdir.m, a script that uses parseDicomdir() to copy all images that belong to series matching a certain regular expression to a chosen destination directory.
Cite As
Jadrian Miles (2024). DICOMDIR Parser (https://www.mathworks.com/matlabcentral/fileexchange/27740-dicomdir-parser), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Language Fundamentals > Data Types > Characters and Strings > String Parsing >
- Industries > Medical Devices > DICOM Format >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.