蜜雪儿 发表于 2008-4-15 20:31

如何在matlab中创建大型矩阵

Matlab不能创建一个很大的Matrix。比如一个512*512*512的Matrix : 。比如,我们从一组100幅DICOM文件中读出一个512*512*100的三维数据, : 需要插值成为一个512*512*300的数据。如果利用Interp3插值函数,我们需 : 要用到一个叫meshgrid的函数,由这个 : 函数创建一个512*512*300的网格。这时候就会出现下列错误信息: : Out of memory. Type HELP MEMORY for your options. : 通过观察我们发现这是因为在Matlab中不能创建很大的Matrix,遇见这样的情况,怎么处理呢

[ 本帖最后由 eight 于 2008-4-16 10:29 编辑 ]

sigma665 发表于 2008-4-15 21:22

矩阵太大了,考虑下分块呢

蜜雪儿 发表于 2008-4-15 21:27

其实我试了一下就算是在100×100×100以内的数都有问题

eight 发表于 2008-4-16 10:29

原帖由 蜜雪儿 于 2008-4-15 21:27 发表 http://www.chinavib.com/forum/images/common/back.gif
其实我试了一下就算是在100×100×100以内的数都有问题 版面搜索一下吧,这个问题讨论过很多次了,搜 out of memory 估计就能找到

aiguo 发表于 2008-4-16 14:25

回复 2楼 的帖子

主任怎么分,你有这方面的资料没?

sigma665 发表于 2008-4-16 14:37

搜索关键字out of memory

[ 本帖最后由 sigma665 于 2008-4-17 08:40 编辑 ]

蜜雪儿 发表于 2008-4-17 08:06

小西,你给的这个链接地址不存在

aiguo 发表于 2008-4-17 17:03

回复 6楼 的帖子

小西主任,小弟搜这方面的相关内容和资料几乎没有。

[ 本帖最后由 eight 于 2008-4-17 19:37 编辑 ]

2365215 发表于 2008-4-17 19:20

我在文件中function里面不能建立一个大矩阵

但是在命令行窗口中可以,这是为什么?

是不是和c一样,内存溢出的问题?

eight 发表于 2008-4-17 19:39

原帖由 2365215 于 2008-4-17 19:20 发表 http://www.chinavib.com/forum/images/common/back.gif
我在文件中function里面不能建立一个大矩阵

但是在命令行窗口中可以,这是为什么?

是不是和c一样,内存溢出的问题? 估计在命令窗口能申请是因为只有这个变量,而在function中不能是因为还有其他变量。一般情况下,要不都能申请,要不都不能申请

eight 发表于 2008-4-17 19:43

搜不到,总该看到吧:matlab版区热门问题索引帖这个帖子置顶的,为何不看呢?看过的话,为何找不到呢?点击上述帖子,就看到:

matlab版区问题索引
一、如何有效地使用 matlab 进行编程,包括矢量化编程的技巧、提高运行速度、节省存储空间等问题
二、神经网络的使用问题
三、积分方程、微分方程、(非)线性方程的求解问题
四、绘图问题
五、图像处理问题
以上问题请参考:matlab 版讨论较多的主题小结

跟你提问相关是第一点,所以看 matlab 版讨论较多的主题小结 1楼,就会发现以下两个帖子:[原创]提高matlab运行速度和节省空间的一点心得(之三)、matlab 的内存如何管理?

2365215 发表于 2008-4-17 22:58

原帖由 eight 于 2008-4-17 19:39 发表 http://chinavib.com/forum/images/common/back.gif
估计在命令窗口能申请是因为只有这个变量,而在function中不能是因为还有其他变量。一般情况下,要不都能申请,要不都不能申请

function中没有其它冲突的变量,我是直接按F5运行的,然后就会在定义的那一行出错

我把代码拷到下面运行就没问题。

[ 本帖最后由 eight 于 2008-4-18 10:28 编辑 ]

eight 发表于 2008-4-18 10:29

原帖由 2365215 于 2008-4-17 22:58 发表 http://www.chinavib.com/forum/images/common/back.gif
function中没有其它冲突的变量,我是直接按F5运行的,然后就会在定义的那一行出错

我把代码拷到下面运行就没问题。
不一定是冲突的变量,因为其他变量会占用内存空间,如果确实出现这个问题,那你就在命令窗口运行吧
页: [1]
查看完整版本: 如何在matlab中创建大型矩阵