How to convert tif stack to dcm series?
24 次查看(过去 30 天)
显示 更早的评论
I have a tif file that contains 1813 pages (images). I want to convert these to DICOM files within a single series. Currently, the code I am using writes over the .dcm file during each loop. How can I fix this?
fname = 'Sample19.tif';
info = imfinfo(fname);
imageStack = [];
numberOfImages = length(info);
for k = 1:numberOfImages
currentImage = imread(fname, k, 'Info', info);
dicomwrite(currentImage,'gear.dcm')
imageStack(:,:,k) = currentImage;
end
回答(1 个)
Walter Roberson
2020-8-10
fname = 'Sample19.tif';
info = imfinfo(fname);
imageStack = [];
numberOfImages = length(info);
for k = 1:numberOfImages
currentImage = imread(fname, k, 'Info', info);
imageStack(:,:,k) = currentImage;
end
dicomwrite(imageStack,'gear.dcm')
However, in practice you almost always need a bunch of dicom metadata. The easiest way to get that is to use dicominfo() on a dcm file that has the same kind of attributes that you are going to need, and pass the resulting metadata to dicomwrite after the file name.
8 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!