OPENCV程序内存储器不断增加,求帮助

OPENCV程序内存不断增加,求帮助!

#include "stdafx.h"   
#include"cv.h"   
#include"highgui.h"   
#include"stdio.h"   
#include <iostream>
 using namespace std;
  
// 实现将拍下来的图片缩放一倍   
IplImage* DoPyrDown(IplImage* image, int filter = IPL_GAUSSIAN_5x5)  
{  
//assert(image->width%2==0 && image->height%2==0);
    // 设置大小缩小一倍   
    CvSize size = cvSize(image->width / 2,image->height / 2);  
    //初始化图片   
    IplImage* outImage = cvCreateImage(size,image->depth,image->nChannels);  
//IplImage* outImage1 = cvCreateImage(size,image->depth,image->nChannels);  
    //实现缩放   
    cvPyrDown(image,outImage);  


CvScalar s;
    int sum=0;
    for (int i=0;i<outImage->height;i++)
    {
        for (int j=0;j<outImage->width;j++)
        {
            s =  cvGet2D(outImage,i,j);
            //cout<<s.val[0]<<" "<<s.val[1]<<" "<<s.val[2]<<endl;
            sum = (s.val[0]+s.val[1]+s.val[2])/3;
            if (sum > 128)
            {
                s.val[0]=s.val[1]=s.val[2]=255;
                cvSet2D(outImage,i,j,s);
            }
            else
            {
                s.val[0]=s.val[1]=s.val[2]=0;
                cvSet2D(outImage,i,j,s);

            }
        }
    }
//cvCvtColor(outImage,outImage1,CV_RGB2RGBA);

return outImage;
}  

  
int main(int argc, char** argv)  
{  
    cvNamedWindow("vedio");  
    CvCapture* capture;  
     // 首先是要通过摄像设备来得到一个CvCapture对象   
    if(1 == argc)  
    {  
        capture = cvCreateCameraCapture(0);  
    }  
    else  
    {  
        capture = cvCreateCameraCapture(atoi(argv[1]));  
    }