Info

この質問は閉じられています。 編集または回答するには再度開いてください。

How to change the pixel value (type image int16) to new value (cps = counts per second)?

1 回表示 (過去 30 日間)
mohd akmal masud
mohd akmal masud 2022 年 5 月 7 日
閉鎖済み: mohd akmal masud 2022 年 5 月 7 日
Dear All,
I have image dicom. as attached. dimension is 128x128, have 45 frame. the type is int16.
I want to convert all the pixel value with new value IMG_cps as code below (the last one).
Anyone can help me?
clc
clear all
close all
Image_name = 'SPECTCTLD_EM_IRNCRR001_DS.dcm'; % add your file name
%% read dicom image
IMG = dicomread(Image_name);
IMG = double(IMG); % chage data type double
%% read dicom information
INFO = dicominfo(Image_name);
% time per projection
Time_per_projection = double(INFO.RotationInformationSequence.Item_1.ActualFrameDuration); % in msec
Time_per_projection = Time_per_projection/1000; % convert to sec
% number of projection
Num_projection = double(INFO.RotationInformationSequence.Item_1.NumberOfFramesInRotation);
% calculate acquisition time
Acquistion_duration = Time_per_projection * Num_projection; % sec
%% calculate cps in each pixel
IMG_cps = IMG/Acquistion_duration;
  2 件のコメント
Voss
Voss 2022 年 5 月 7 日
What's the problem?
mohd akmal masud
mohd akmal masud 2022 年 5 月 7 日
tq sir. the problem is settled.

回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by