DICOM overlay data resolving: metadata.InstanceData. Find the frame time.

3 ビュー (過去 30 日間)
Jia-Sheng Hong
Jia-Sheng Hong 2018 年 4 月 17 日
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.
I blurred the upper corner for the protection of patient information and the frame time can be seen in the bottom right corner.

回答 (0 件)

カテゴリ

Help Center および File ExchangeDICOM Format についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by