Azzera filtri
Azzera filtri

problem with %d in MATLAB

8 visualizzazioni (ultimi 30 giorni)
naila
naila il 1 Ago 2013
Hi all;
I have image file having 01.dcm, 02.dcm, 03.dcm ... 22.dcm;
I want to read all these images with loop. How can I do it Please. I am just confuse with %d command as it can't recognize 01.dcm etc. it is just recognize 1.dcm, 2.dc, ...

Risposta accettata

David Sanchez
David Sanchez il 1 Ago 2013
for k = 1:22
pic2read = strcat(num2str(k),'.dcm');
if k<10
pic2read = strcat('0',pic2read);
end
imread(pic2read);
end
  5 Commenti
Jan
Jan il 1 Ago 2013
Adding the '0' manually is a really inefficient solution. See Andrei's much nicer and faster sprintf method.

Accedi per commentare.

Più risposte (1)

Andrei Bobrov
Andrei Bobrov il 1 Ago 2013
for k = 1:22, imread(sprintf('%02d.dcm',k)); end
  1 Commento
Jan
Jan il 1 Ago 2013
Modificato: Jan il 1 Ago 2013
+1. This is compact, direct, fast, not prone to typos.

Accedi per commentare.

Categorie

Scopri di più su Historical Contests in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by