Filter löschen
Filter löschen

I have a dicom file of size 256*256*3. However, when I read this file using dicomread command in matlab the size of the dicom file is 256*256? How to fix this ?

3 Ansichten (letzte 30 Tage)
close all;
clear all;
clear all;
bb=8; % block size
RR=4; % redundancy factor
K=RR*bb^2; % number of atoms in the dictionary
%here we are reading the image and adding noise into that image.
sigma = 25;% standard deviation
P ='C:\Users\kitty\Dropbox\denoise_ksvd\ADNI';
D=dir(fullfile(P,'*.dcm'));
C=cell(size(D));
for k=1:numel(D)
C=dicomread(fullfile(P,D(k).name));
IMin0(:,k)=C(:);
  2 Kommentare
Stephen23
Stephen23 am 12 Mär. 2018
Bearbeitet: Stephen23 am 12 Mär. 2018
@kitty Varghese: please show the outputs of these commands:
size(C)
info = dicominfo(fullfile(P,D(k).name));
info.ColorType
info.Width
info.Height
Note that this line is totally superfluous, as you redefine C on each loop iteration:
C = cell(size(D)); % this line does nothing!
for k = 1:numel(D)
C = dicomread(fullfile(P,D(k).name)); % because of this line.
...
end
kitty varghese
kitty varghese am 12 Mär. 2018
I updated the code and now my code is as shown below.
P = 'C:\Users\kitty\Dropbox\denoise_ksvd';
S = dir(fullfile(P,'ADNI','*.dcm'));
I = cell(1,numel(S));
for k = 1:numel(S)
I{k} = dicomread(fullfile(P,'ADNI',S(k).name));
end
M = cell2mat(cellfun(@(m)m(:),I(:).','uni',0));
then size(I)= 1 21
info = dicominfo(fullfile(P,'ADNI',S(k).name))
info.ColorType= grayscale
info.Width=256
info.Height=256

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 12 Mär. 2018
Bearbeitet: Stephen23 am 12 Mär. 2018
According to the dicomread documentation "For single-frame grayscale images, X is an M-by-N array". In your response to my comment you wrote
info.ColorType= grayscale
so therefore I would expect the imported image to have size MxN, just as the dicomread help states. If all of the other images are also grayscale, then all of them will be 2D matrices. You can check this yourself in the loop.
In the original question title you wrote "I have a dicom file of size 256*256*3": how are you checking this? With what tool or command?

Weitere Antworten (0)

Kategorien

Mehr zu DICOM Format 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