How to multiply all the pixel number of each slice with their own rescale slope(dicominfo) in each slice

1 visualizzazione (ultimi 30 giorni)
Dear all,
I have the file as attached. the format is dicom (.dcm)
How to multiply all the pixel number of each slice with their own rescale slope(in dicominfo) in each slice?
**that means each slice have their own rescale slope value.
so that the new pixel value will come out when I view this images.
  4 Commenti
mohd akmal masud
mohd akmal masud il 27 Giu 2023
I'm, not sure that sir. That I guess
If just only one rescale slope for all slices, then how to multiply all the pixel number of each slice with rescale slope(in dicominfo)?

Accedi per commentare.

Risposta accettata

Rik
Rik il 27 Giu 2023
In general you should remember to include the intercept as well, although apparently that is 0 for this dataset.
unzip jaszakspect.zip
IM = dicomread('jaszakspect.dcm');
size(IM)
ans = 1×4
64 64 1 64
info = dicominfo('jaszakspect.dcm');
[min(IM(:)) max(IM(:))]
ans = 1×2
0 32767
IM = double(IM)*info.RescaleSlope + info.RescaleIntercept;
[min(IM(:)) max(IM(:))]
ans = 1×2
0 0.0029

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by