【问题标题】:OpenCv, Insufficient memory errorOpenCv,内存不足错误
【发布时间】:2013-03-03 14:37:41
【问题描述】:

我在 Opencv 中创建了这段代码,大约 900 帧后,出现了这个错误:

OpenCV Error: Insufficient memory (Failed to allocate 921600 bytes) in function, file ..\..\..\..\ocv\opencv\src\cxcore\cxalloc.cpp, line 52

但我已经初始化了一次变量。 代码如下:

int _tmain(int argc, _TCHAR* argv[])
{
     IplImage * image;
     CvCapture * capture = cvCaptureFromCAM ( 0 );
     while ( 1 ){
         image = cvCreateImage ( cvSize ( 640,480 ) , 8, 3 );
         image = cvQueryFrame ( capture );
         cvShowImage ( "test", image );
         cvWaitKey ( 10 );
     }
}

【问题讨论】:

    标签: c++ opencv computer-vision


    【解决方案1】:

    您不断地使用cvCreateImage 创建新图像,而无需使用,更重要的是,无需在任何地方发布它们。

    只需删除这一行(它除了吃掉你的记忆之外没有任何作用):

    image = cvCreateImage ( cvSize ( 640,480 ) , 8, 3 );
    

    【讨论】:

      【解决方案2】:

      您有时需要致电cvReleaseImage

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-23
        • 1970-01-01
        • 1970-01-01
        • 2013-07-25
        • 2016-06-16
        • 1970-01-01
        相关资源
        最近更新 更多