【OpenCV】11th-前景提取,运动追踪

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_36688519/article/details/58296857

视频前景的提取Video
opencv实现运动追踪
OpenCV运动目标检测——帧间差,混合高斯模型方法

#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/video/video.hpp>
 
#include <iostream>
 
using namespace cv;
using namespace std;
 
int main(int argc, char **argv){
	Mat frame; 
	Mat foreground;	// 前景图片
	VideoCapture capture(argv[1]);
 
	if (!capture.isOpened())
	{
		return 0;
	}
 
	namedWindow("Extracted Foreground");
	namedWindow("Source Video");
	// 混合高斯物体
	BackgroundSubtractorMOG mog;
	bool stop(false);
	while (!stop)
	{
		if (!capture.read(frame))
		{
			break;
		}
		// 更新背景图片并且输出前景
		mog(frame, foreground, 0.01);
		// 输出的前景图片并不是2值图片,要处理一下显示  
		threshold(foreground, foreground, 128, 255, THRESH_BINARY_INV);
		// show foreground
		imshow("Extracted Foreground", foreground);
		imshow("Source Video", frame);
		if (waitKey(10) == 27)
		{
			stop = true;
		}
	}
}
展开阅读全文

没有更多推荐了,返回首页