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

1 view (last 30 days)
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 Comments
mohd akmal masud
mohd akmal masud on 27 Jun 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)?

Sign in to comment.

Accepted Answer

Rik
Rik on 27 Jun 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

More Answers (0)

Categories

Find more on DICOM Format in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!