dicomファイルの​連続したトリミング画​像をdicomファイ​ルに保存したい。

13 Ansichten (letzte 30 Tage)
秋葉
秋葉 am 22 Mär. 2023
Kommentiert: 秋葉 am 28 Mär. 2023
あるフォルダに入っている複数枚のdicomファイルを同じ座標でそれぞれトリミングし、トリミングした画像を指定したフォルダ内にdicomフォルダに保存したいです。
下記のスクリプトを実行しているのですが、dicomwriteの場所でエラーになってしまいます。
改善法をご教示いただけないでしょうか。
%% pnameに編集したい画像の入っているフォルダのパスを設定
pname = 'トリミングしたい画像が入っているフォルダのパス'; %% 実験ごとに変更の必要
DD = dir([pname,'/','A(画像名の共通部分)*']);%% IM-...などのdcmファイルに共通している名前を記載する
ff = size(DD,1); % N of folder (= sections)
mkdir folder %%カットしてできたdcmファイルを保存するフォルダを作成する
s = dicomread('A1.dcm');
[J,rect] = imcrop(s);
%% 以下for文で全フォルダ内のデータを計算する。
for i = 1:ff %ff
dir_name=DD(i).name;
pname_dir=[pname,'/']
list_dicom = dir([pname_dir,'*.dcm'])
gg=size(list_dicom,1); % N of slices
for j = 1:gg
I = dicomread(DD(j).name);
I2 = imcrop(I,[rect])
dicomwrite(I2,['folder','Acut',num2str(i),'.dcm']);
end
end

Akzeptierte Antwort

Kojiro Saito
Kojiro Saito am 22 Mär. 2023
dicomwriteのエラー内容の情報もあると確実ですが、取り急ぎ気付きとしてフォルダーfolderの下に出力されるようになっていないので、以下のように修正が必要と思います。
dicomwrite(I2, fullfile('folder', ['Acut',num2str(i),'.dcm']));
  3 Kommentare
Atsushi Ueno
Atsushi Ueno am 24 Mär. 2023
横やり失礼致します。
もしかすると、この MATLAB Answers の MATLAB Online 環境では、フォルダ作成は出来てもその内部にファイルを書き込む事が許可されていないのかもしれません。(同じエラーが出たので)
なんか質問に挙げられたプログラムの意図が良く分からないので、MATLABの持っているデータを使って取り敢えず動く形にしたのですが、意図した動きになっていますか?
%% pnameに編集したい画像の入っているフォルダのパスを設定
pname = '/MATLAB/toolbox/images'; %% 実験ごとに変更の必要
DD = dir([pname,'/','imd*']); % 適当なdcmファイルを含むフォルダ(imdata)を選ぶ様にした
ff = size(DD,1); % N of folder (= sections)
mkdir folder %%カットしてできたdcmファイルを保存するフォルダを作成する
rect = [10,10,30,30]; % 手作業で指定する代わりに適当な範囲に固定
%% 以下for文で全フォルダ内のデータを計算する。
for i = 1:ff % この例ではff=1になる
dir_name=DD(i).name;
pname_dir=[pname,'/',dir_name,'/']
list_dicom = dir([pname_dir,'*e.dcm']); % 適当なdcmファイルを選ぶ様にした
gg=size(list_dicom,1); % N of slices
for j = 1:gg % この例ではgg=1になる
list_dicom(j).name
I = dicomread(list_dicom(j).name);
I2 = imcrop(I,[rect]);
dicomwrite(I2, ['Acut',num2str(j),'.dcm']);
end
end
pname_dir = '/MATLAB/toolbox/images/imdata/'
ans = 'CT-MONO2-16-ankle.dcm'
ls -la % dcmファイルが書き込まれた
total 16 drwxr-xr-x 3 mluser worker 4096 Mar 24 08:04 . drwx------ 1 mluser worker 4096 Mar 24 08:04 .. -rw-r--r-- 1 mluser worker 2830 Mar 24 08:04 Acut1.dcm drwxr-xr-x 2 mluser worker 4096 Mar 24 08:04 folder 
秋葉
秋葉 am 28 Mär. 2023
ありがとうございます。
解決しました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu DICOM Format finden Sie in Help Center und File Exchange

Produkte


Version

R2023a

Community Treasure Hunt

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

Start Hunting!