How to display DICOM RT structure
31 views (last 30 days)
Show older comments
Hello everyone,
I have some DICOM files with RS structure such as GTV and PTV from radiation therapy planning.
Then, I want to display it as a volume. First, I have done with 'dicominfo' to take any information and looking at GTV contour already.
I have seen the data with how many slice and others, but I don't know how to display. Just only one slice with coordinate is OK.
please help
Sandra
4 Comments
Walter Roberson
on 28 Sep 2018
Perhaps https://www.mathworks.com/matlabcentral/answers/120098-how-to-read-dicom-rt-structure#answer_127021 would help read the files.
Answers (1)
Jesper Brovall
on 14 Mar 2019
In my current project I'm reading RT-structures, transforming them into a nwe fram of reference and distort them. Here's some of my code for reading the RT-structures and displaying them using the plot3 command.
matlabFolder = pwd;
MyDirInfo=dir(pathway to your file); % Ex. 'C:\username\documents\....\rtstructure.dcm'
cd('C:\username\documents\....\rtstructurefolder')
info=dicominfo(MyDirInfo(1).name);
cd(matlabFolder)
structures=fieldnames(info.ROIContourSequence); %Lists all the structures
num_cont=size(structures,1); %Says how many it is
for n=1:num_cont %Loops through all structures
curr_struct=structures{n};
%Lists all the ROI-layers within a structure
ROIlayers=fieldnames(info.ROIContourSequence.(curr_struct).ContourSequence);
num_layers=size(ROIlayers,1);
for i=1:num_layers %Går igenom alla lager och hämtar deras positioner
currROIlayer=ROIlayers{i};
item_pos=info.ROIContourSequence.(curr_struct).ContourSequence.(currROIlayer).ContourData;
item_pos=reshape(item_pos, [3 length(item_pos)/3]);
item_pos_all=[item_pos_all, item_pos];
end
figure(n)
hold on
plot3(item_pos_all(1,:), item_pos_all(2,:), item_pos_all(3,:))
end
1 Comment
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!