How to plot a 3D DICOM image in millimetre (mm) knowing the voxel size?
2 次查看(过去 30 天)
显示 更早的评论
How can I change the axis to physical units when I plot a 3D dicom image? for example, the DICOM image has dimensions of 200x200x100 where 100 is the number of 2D slices size 200x200. I already know that the voxel size is 3.6458mm x 3.6458mm x 3.27mm.
I am using the following code to plot e.g. a segmented part of the DICOM image, but the axis are 200x200x100. How should I change the axis to mm having the voxel size?
figure;
w = smooth3(Segmented_area,'gaussian', [11 11 11]);
isosurface(w,.1);
view(3)
axis equal
"Segmented_area" is a 3D binary matrix. I would like to plot both DICOM image and segmented area in mm.
0 个评论
采纳的回答
Walter Roberson
2016-6-27
You can pass X, Y, and Z coordinates to isosurface() . You would probably construct those as
[X, Y, Z] = meshgrid( (0 : size(Segmented_area,1)-1) * 3.6458, (0 : size(Segmented_area,2)-1) * 3.6458, (0 : size(Segmented_area,3)-1) * 3.27 );
11 个评论
Walter Roberson
2019-2-1
I do not appear to be eligible to get the MCNP source code, and the user manual itself is considered to be Export Controlled.
When you read in a 3D array from DICOM, the result is already voxels.
Perhaps you are trying to segment a transcranial DICOM image? Transcranial would tend to be MRI modality, but your reference to MCNP suggests to me that you might be working with either CT or with radiation therapy ?
更多回答(1 个)
abdey munaf
2018-12-3
thanks in advance to all of you. can you tell me how you come to know ''the voxel size is 3.6458mm x 3.6458mm x 3.27mm .'' ?
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!