DICOM overlay data resolving: metadata.InstanceData. Find the frame time.
4 views (last 30 days)
Show older comments
I have the DICOM file from GE medical system with the modality type 'XA'. The files are the dynamic image sequence so I intend to find the frame time of each image. I cannot find the information record the frame time in the DICOM header information. There is no FrameTime or FrameTimeVector I found on the DICOM file from Philips and Siemens medical system.
However, I can see the frame time information through the overlays. After looking into the code of dicomread, I found the following code at line 1038 to 1044:
fwrite(fid, metadata.InstanceData((1:len) + offset), 'uint8');
fclose(fid);
tmp = onCleanup(@() delete(tempfile));
% Read the data.
X = imread(tempfile);
The size of 'metadata.InstanceData((1:len) + offset)' is 1x389278. It turns out X is a 1024x1024 overlay image shows frame time on it and with uint16 format. Could anyone teach me how is it decode the InstanceData to an overlay image?
The overlay image looks like this.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189541/image.png)
I blurred the upper corner for the protection of patient information and the frame time can be seen in the bottom right corner.
0 Comments
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!