hi, I'm running a code in matlab to read data from a file which has a 512*512*512 volume by fread command. when i run it for the 512*512 amount of the file it works, but when I want to read the whole data to be able to image them it doesn't work and display 'out of memory error'. so I really need to have all data together to image them. do you think what this error happen and how i can fix it. my laptop'RAM is 3GB and my system is 32-bit. i'm looking to hearing from you. Thanks

 採用された回答

Ryan
Ryan 2014 年 12 月 10 日

0 投票

You could use a memmapfile. I'm not entirely sure how it works, but a memory map does not actually load the data into memory. That way you can process pieces parts, if that's what you want to do. Check out
doc memmapfile

1 件のコメント

lilish
lilish 2014 年 12 月 11 日
Thanks

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

その他の回答 (2 件)

Sean de Wolski
Sean de Wolski 2014 年 12 月 10 日

1 投票

Either buy a bigger computer with 64 bit OS and MATLAB, or downsample your data.
Matt J
Matt J 2014 年 12 月 10 日

1 投票

Maybe you can read the image in as uint8, or some other type smaller than double,
A = fread(fileID, 512^3, 'double=>uint8');

カテゴリ

ヘルプ センター および File ExchangeLarge Files and Big Data についてさらに検索

タグ

質問済み:

2014 年 12 月 10 日

コメント済み:

2014 年 12 月 11 日

Community Treasure Hunt

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

Start Hunting!

Translated by