Problem with defining a path to a MATLAB function

I've got a problem in defining a path in load_untouch_nii function. My code looks like this:
%define the path to the current folder
path = ('~/Desktop/Data/pat01_t1/');
%load the nifti images
Brain = load_untouch_nii(path, 'Brain.nii');
When I try to run the above code I get the following error:
Error using load_nii_hdr (line 47)
Cannot find file "~/Desktop/Data/pat01_t1/.hdr".
Error in load_untouch_nii (line 103)
[nii.hdr,nii.filetype,nii.fileprefix,nii.machine] = load_nii_hdr(filename);
Error in Brain_segmentations (line 4)
data = load_untouch_nii(path, 'Brain.nii');
Can someone please help?

 採用された回答

Stephen23
Stephen23 2022 年 12 月 16 日
編集済み: Stephen23 2022 年 12 月 16 日

1 投票

P = '~/Desktop/Data/pat01_t1/'; % do NOT use PATH as a variable name.
Brain = load_untouch_nii(fullfile(P,'Brain.nii'));
Most likely the function you are calling requires the filename (whether absolute or relative) as one input argument, not two separate inputs.

1 件のコメント

Jan
Jan 2022 年 12 月 16 日
編集済み: Jan 2022 年 12 月 16 日
Two brains - one thought. I love it.

サインインしてコメントする。

その他の回答 (1 件)

Jan
Jan 2022 年 12 月 16 日

1 投票

Maybe you mean:
folder = '~/Desktop/Data/pat01_t1/';
Brain = load_untouch_nii(fullfile(folder, 'Brain.nii'));
The first input is the file name, not just the folder. fullfile joins the names of the folder and the file.
Note that "path" is a bad choice for a variable, because this shadows an important built-in function. This can cause very strange side-effects during debugging.

1 件のコメント

Demy
Demy 2022 年 12 月 16 日
Great! Thank you both guys :)

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeNeuroimaging についてさらに検索

質問済み:

2022 年 12 月 16 日

コメント済み:

2022 年 12 月 16 日

Community Treasure Hunt

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

Start Hunting!

Translated by