フィルターのクリア

How to read .hdr files in Matlab?

15 ビュー (過去 30 日間)
Jab
Jab 2015 年 9 月 20 日
コメント済み: Walter Roberson 2015 年 9 月 20 日
All the volumes(image 3D) location are stored in a variable called Fulfilename as
Fulfilename 178*1 cell
'D:\Oasis\Database\disc1\OAS1_0001_MR1\PROCESSED\MPRAGE\T88_111\OAS1_0001_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr '
'D:\Oasis\Database\disc1\OAS1_0003_MR1\PROCESSED\MPRAGE\T88_111\OAS1_0003_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr '
'D:\Oasis\Database\disc1\OAS1_0010_MR1\PROCESSED\MPRAGE\T88_111\OAS1_0010_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr '
'D:\Oasis\Database\disc1\OAS1_0013_MR1\PROCESSED\MPRAGE\T88_111\OAS1_0013_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr ' etc
I need to read all the images in Matlab. I tired with some code. It doesnt help me. Any help is appreciated. My code is the following:-
load Fulfilename;
for p=1:178
V= hdr_read_volume('Fulfilename{p}');
end

採用された回答

Walter Roberson
Walter Roberson 2015 年 9 月 20 日
load Fulfilename;
for p = 1 : length(Fulfilename)
V{p} = hdr_read_volume(Fulfilename{p});
end
  2 件のコメント
Jab
Jab 2015 年 9 月 20 日
編集済み: Walter Roberson 2015 年 9 月 20 日
Thanks for the help Walter. I am getting the error like the following
Error using analyze75open (line 17)
Invalid format ".hdr ". Valid formats include "hdr" and "img".
Error in isanalyze75 (line 26)
fid = analyze75open(filename, 'hdr', 'r');
Error in analyze75info>parseInputs (line 440)
if ~isanalyze75(filename)
Error in analyze75info (line 138)
[args, userSupplied] = parseInputs(filename, varargin{:});
Error in hdr_read_header (line 15)
info=analyze75info(filename);
Error in hdr_read_volume (line 13)
if(~isstruct(info)), info=hdr_read_header(info); end
Error in main (line 68)
V{p} = hdr_read_volume(Fullfilename{p});
Could you please clarify this?
Walter Roberson
Walter Roberson 2015 年 9 月 20 日
Your filename list has trailing blanks on each of the strings. Code that accounts for that is
load Fulfilename;
Fulfilename = strtrim(Fulfilename);
for p = 1 : length(Fulfilename)
V{p} = hdr_read_volume(Fulfilename{p});
end

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

その他の回答 (1 件)

Image Analyst
Image Analyst 2015 年 9 月 20 日
Fulfilename{p} is already a string. So then you're surrounding a string with quotes, but this actually does not evaluate Fulfilename{p} but just puts Fulfilename{p} into the string as a literal. So 'Fulfilename{p}' will be laterally that -- it will not be 'D:\Oasis\Database\disc1\OAS1_0001_MR1\PROCESSED\MPRAGE\T88_111\OAS1_0001_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr'
There you will find out how to use braces and parentheses and quotes. You'd learn that you're supposed to do
V = hdr_read_volume(Fulfilename{p});
because Fulfilename{p} is already a string and you should not put it into quotes.

カテゴリ

Help Center および File ExchangeImport, Export, and Conversion についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by