OpenCV Set Size中的内存泄漏

时间:2013-10-21 17:59:21

标签: c++ opencv memory-leaks

我在这个简单的OpenCV代码中发现内存泄漏:

VideoCapture* capture = new VideoCapture(0);
Mat frame;
while (true) {
    capture->set( CV_CAP_PROP_FRAME_WIDTH, 1600 );
    capture->set(CV_CAP_PROP_FRAME_HEIGHT, 1200 );
    capture->read(frame);
}

这是整个代码。每次通过while循环时,都会泄漏几个MB。我在阅读之后尝试过frame.release(),但它没有帮助。删除设置大小的行可以解决问题,但在我的实际代码中,我想改变大小,因此这不是一个解决方案。它使图像的大小正确。

我做了些蠢事吗?

顺便说一句,我使用的是Logitech B910网络摄像头。

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否需要更改每帧的读数大小?

设置完成后,相机将生成相同的尺寸,直到您将其重置为止