opencv利用视频的前n帧求平均图像

本文实例为大家分享了opencv利用视频的前n帧求平均图像的具体代码,供大家参考,具体内容如下

自己写的哈,可以用该小程序对视频求解平均模型。

//OpenCV中如何累加多幅图像并取平均值

#include "cv.h"

#include "highgui.h"

int main(int argc,char *argv[])

{

int nframe = 50;//利用前nfram帧求解平均图

CvCapture *capture = cvCreateFileCapture( "3.avi");

if (NULL==capture)

{

printf("没有找到该视频!\n");

return -1;

}

IplImage * Img=cvQueryFrame(capture);

cvNamedWindow("原图",0);

//cvShowImage("原图",Img);

IplImage * img_sum = cvCreateImage(cvGetSize(Img),IPL_DEPTH_32F,3);

cvZero(img_sum);

for(int i = 0;i <nframe;i++)//统计背景模型

{

cvAcc(Img,img_sum);

Img=cvQueryFrame(capture);

cvWaitKey(100);

cvShowImage("原图",Img);

//printf(".");

}

IplImage * img_sum_gray = cvCreateImage(cvGetSize(Img),IPL_DEPTH_8U,3);

cvConvertScale(img_sum,img_sum_gray,1.0/nframe);

cvNamedWindow("img_sum_gray",0);

cvShowImage("img_sum_gray",img_sum_gray);

cvSaveImage("model.jpg",img_sum_gray);

cvWaitKey(0);

cvDestroyAllWindows();

cvReleaseImage(&img_sum);

cvReleaseImage(&img_sum_gray);

return 0;

}

利用前20帧求视频的平均图像,如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是 opencv利用视频的前n帧求平均图像 的全部内容, 来源链接: utcz.com/p/245032.html

回到顶部