How to convert tif stack to dcm series?

22 vues (au cours des 30 derniers jours)
Alena Schwartz
Alena Schwartz le 9 Août 2020
Commenté : Braian Adair le 20 Fév 2024
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 commentaire
Amine Adjoud
Amine Adjoud le 16 Nov 2022
I encouter the same problem. Did you find a solution?

Connectez-vous pour commenter.

Réponses (1)

Walter Roberson
Walter Roberson le 10 Août 2020
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 commentaires
Amine Adjoud
Amine Adjoud le 16 Nov 2022
I encouter the same problem, did you get a solution?
Braian Adair
Braian Adair le 20 Fév 2024
Thank you Julianna Mather you solved my four days problem!

Connectez-vous pour commenter.

Catégories

En savoir plus sur DICOM Format dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by