How to split DICOM to individual slices?
12 ビュー (過去 30 日間)
古いコメントを表示
Here I have attached a stacked dicom file comprising 28 slices. How can I save individual dicom files for each slice?
0 件のコメント
回答 (1 件)
Gautam
2025 年 3 月 7 日
To save individual DICOM files for each slice from a stacked DICOM file in MATLAB, you can use the "dicomread" function to read the stacked DICOM file and then iterate through each slice to save it as a separate DICOM file using the "dicomwrite" function.
stackedFileName = 'path_to_stacked_dicom.dcm';
volumeData = dicomread(stackedFileName);
info = dicominfo(stackedFileName);
numSlices = size(volumeData, 3);
for sliceIdx = 1:numSlices
sliceData = volumeData(:, :, sliceIdx);
info.InstanceNumber = sliceIdx;
info.SliceLocation = sliceIdx; % Update slice location if necessary
% Construct a filename for the slice
sliceFileName = sprintf('slice_%02d.dcm', sliceIdx);
% Write the slice to a new DICOM file
dicomwrite(sliceData, sliceFileName, info);
end
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!