2016-06-16 16 views
0

フォルダから複数の画像を処理しようとしています。 .nii形式で約200の医用画像があります。MATLABでnii形式の複数の医用画像ファイルを処理する

%% setting up the folder 
fileFolder = fullfile(pwd ,'\project\data_1'); 
files = dir(fullfile(fileFolder ,'*.nii')); 
fileNames ={files.name}; 
%%sample 
img =load_untouch_nii('1.nii'); 
im =img.img; 
classJ =class(im); 

%%reading the files 
I =load_untouch_nii(fullfile(fileFolder,fileNames{1})); 
classI =class(I); 
sizeI =size(I); 
numImages =length(fileNames); 

%% Read slices 
hwaitbar =waitbar(0,'Reading nii files'); 

%%Read 

for i =length(fileNames):-1:1 
    fname =fullfile(fileFolder, fileNames{i}); 
    x(i) = load_untouch_nii(fname); 
    y =x(i).img; 
    figure; imshow(y(:,:,70),[]); %viewing the image to the check code 
    **My Transformation function** 
    waitbar((length(fileNames)-i+1)/length(fileNames)); 
end 
delete(hwaitbar); 

IMG = load_untouch_nii( 'xyz.nii')

負荷構造体の画像{}ヘッダ、画像および他のいくつかの情報が含まれています。 img.img 256 * 256 * 150 uint16形式の画像を抽出します。私の質問は、変換機能が完了したらどのように私は別のフォルダにそれらの画像を保存することができますですか?

答えて

0

あなたが「NIFTIをとツールをANALYZE」持っているように見えるとして、あなたが使用してniftiファイルを保存することができます

nii = make_nii(y, {additional arguments, check help make_nii}); 
    save_nii(nii, 'myfilename.nii') 
+0

..itは、私がイメージにパディングを適用しているようです。パディングを取り除かずに保存することはできますか?私はこのコマンド 'save_untouch_nii(local_deformed_image、 'newimage.nii')' ..しかし、その行のエラーを表示しようとしています...あなたが実際に値を変更した場合は、変換後に先にそれを保存するために書き込む必要があります – decipher

+0

3D行列 'y'のうち、上記のコードはこれらの変更を保存します – sdbonte

関連する問題