opencv中会引起内存泄露的情况

内存泄露时,可以用最简单的注释法查找(把代码一部分一部分放开),根据资源管理器查看我们自己编写的程序内存使用情况。


1.

img_temp = cvCloneImage(&imgTmp);//循环使用会引起内存泄露
cvCopy(&imgTmp,img_temp,NULL);  //循环使用不会引起内存泄露


2.

cvFindContours( img_temp, mem_storage, &first_contour,sizeof(CvContour),CV_RETR_CCOMP);  
cvClearMemStorage(mem_storage);//上面函数中的mem_storage,循环使用会使内存泄露,必须使用此函数清除内存区域 
cvReleaseMemStorage(&mem_storage);  //用完最后还要用此函数




3.

img_temp = cvCreateImage(cvGetSize(pFrame), 8, 1); 
cvReleaseImage(&img_temp); //上式中的cvCreateImage与此式配对使用






原文地址:https://www.cnblogs.com/fag888/p/5789140.html