Filter löschen
Filter löschen

problem with %d in MATLAB

1 Ansicht (letzte 30 Tage)
naila
naila am 1 Aug. 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, ...

Akzeptierte Antwort

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Historical Contests finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by