我的代码读取7个图像文件夹并提取7个矩阵中的特征,并使用" vertcat"在一个大矩阵中收集所有7个矩阵。总共我有一个包含1745个图像和i的特征的矩阵想要使用Multi-SVM分类器对它们进行分类。 这是错误:
使用vertcat内存不足时出错。键入HELP MEMORY以获取选项。
我如何解决这个问题?请。
答案 0 :(得分:0)
不幸的是,MATLAB在尝试连接矩阵时实际上耗尽了内存。你可以做一些记忆技巧,试图让这个过程变得更顺畅(在启动matlab之前杀死某些程序)。理想情况下,在尝试此操作时,您可能希望尽可能少地运行。
当您运行memory
时,您可以看到项目列表
>> memory
Maximum possible array: 4577 MB (4.800e+009 bytes) *
Memory available for all arrays: 4577 MB (4.800e+009 bytes) *
Memory used by MATLAB: 330 MB (3.458e+008 bytes)
Physical Memory (RAM): 3503 MB (3.674e+009 bytes)
* Limited by System Memory (physical + swap file) available.
您可能遇到的是MATLAB max可能的数组大小对于您的阵列来说不够大。您可以尝试优化代码以在连接后释放单个阵列,但很可能您唯一的选择是购买更多RAM或使用更小的阵列。