-1
使用C API(而不是C++),您如何逐帧阅读简单的视频文件,并将此帧(作为CvMat *)传递给处理?如何在OpenCV中逐帧读取视频文件?
使用C API(而不是C++),您如何逐帧阅读简单的视频文件,并将此帧(作为CvMat *)传递给处理?如何在OpenCV中逐帧读取视频文件?
类似以下内容:
CvCapture* cap = cvCreateFileCapture(MyVideoFile);
if (!cap) { /* handle error */ }
for(;;) {
IplImage* frame = cvQueryFrame(cap);
if (!frame) { /* EOF */ break; }
CvMat tempMat;
CvMat* myMat = cvGetMat(frame, &tempMat, 0, 0);
// use myMat
// Note: Don't free the frame returned by cvQueryFrame!
}
cvReleaseCapture(&cap);
谢谢。为什么不释放由cvQueryFrame返回的帧? – Chris
因为[文档](http://opencv.jp/opencv-1.0.0_org/docs/ref/opencvref_highgui.htm#decl_cvQueryFrame)这样说。如果要修改图像(或垫子),请克隆。 – user786653