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

3 次查看(过去 30 天)
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 个评论
mohd akmal masud
mohd akmal masud 2023-6-27
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)?

请先登录,再进行评论。

采纳的回答

Rik
Rik 2023-6-27
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

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by