opencv视频逐帧提取,然后图像叠加得出一个图像要用到什么函数?
2个回答
展开全部
初始化时使用
CvCapture *capture;
IplImage *imgV;
IplImage *img1,*img2;
capture = cvCreateCameraCapture(CV_CAP_VFW);
取每帧
cvGrabFrame(capture );
imgV = cvRetrieveFrame( capture);
img1 = cvCloneImage(imgv);
cvGrabFrame(capture );
imgV = cvRetrieveFrame( capture);
img2 = cvCloneImage(imgv);
叠加
cvAddWeighted(img1,0.5,img2,0.5,1.0,img1);
CvCapture *capture;
IplImage *imgV;
IplImage *img1,*img2;
capture = cvCreateCameraCapture(CV_CAP_VFW);
取每帧
cvGrabFrame(capture );
imgV = cvRetrieveFrame( capture);
img1 = cvCloneImage(imgv);
cvGrabFrame(capture );
imgV = cvRetrieveFrame( capture);
img2 = cvCloneImage(imgv);
叠加
cvAddWeighted(img1,0.5,img2,0.5,1.0,img1);
更多追问追答
追问
cvAddWeighted用于两幅图片的融合 可是我想提取的帧全部叠加 可以设置一个for循环进行叠加吗?
追答
可以
两幅图片直接叠加,或多幅直接叠加,亮度会溢出,所以用加权,每幅图像加权值 0.5
上面的例子是 图像1 图像2 加权后 放入 图像1
你再用图像2 取第三幅,与图像1叠加
循环,加多少都可以
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询