CvCapture使用的一点说明

通过OpenCV读视频或是(摄像头)的时候,通常会使用CvCapture和IplImage *。一个典型的代码如下:

 

CvCapture *cap; IplImage *frame; const char ESC = 27; if ((cap = cvCreateCameraCapture(0)) != 0) { cvNamedWindow("Camera"); while ((frame = cvQueryFrame(cap)) != 0 && cvWaitKey(20) != ESC) { frame = cvQueryFrame(cap); cvShowImage("Camera", frame); } cvReleaseCapture(&frame); /* cvReleaseImage(&frame); * 注意,这里不能释放,释放会出错 */ cvDestroyWindow("Camera"); } 

 

注意程序中注释掉的那个地方。在读视频(摄像头)时,不用也不能去释放frame,否则会出错。

即使我们在if  创建了 frame 对像,也不能释放,因为这样也会出错。

实际上,在读视频(摄像头)的时候,没有必要使用 cvCreateImage 创建一个图片对像。

 

 

你可能感兴趣的:(CvCapture使用的一点说明)