【问题标题】:How can i solve "Error using vertcat Out of memory"?如何解决“使用 vertcat 内存不足时出错”?
【发布时间】:2016-11-09 15:37:50
【问题描述】:

我的代码读取 7 个图像文件夹并提取 7 个矩阵中的特征,并使用“vertcat”将所有 7 个矩阵收集在一个大矩阵中,我总共有一个包含 1745 个图像特征的矩阵,我想使用它们对它们进行分类多 SVM 分类器。 这是错误:

使用 vertcat 时出错 内存不足。键入 HELP MEMORY 作为您的选项。

我该如何解决这个问题?请。

  • 我的操作系统是 Windows 7 64Bit
  • 4 GB 内存
  • Matlab 2016a 64Bit

【问题讨论】:

    标签: matlab out-of-memory


    【解决方案1】:

    不幸的是,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 最大可能数组大小对于您的数组来说不够大。您可以尝试稍微优化代码以在连接单个数组后释放它们,但很可能您唯一的选择是购买更多 RAM 或使用较小的数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-13
      • 1970-01-01
      • 1970-01-01
      • 2014-03-15
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      相关资源
      最近更新 更多