之前在学习动态物体的检测时,就想到要编写一个软件,实现远程监控家里的情况,如果自己不在家,却有人进入家里,软件便会自动给我的手机发出警报,基于这个目的,我做出了如下构想
1.判断拍摄到的画面是否发生变化时,要考虑到光线的变化,小动物像虫子等的进入带来的误差,所以我采用了判断前后两张图片的相似度来判断变化。
2.要实现远程连接,必须要经过网络,自己还不具备编写这样软件的能力,那么不妨利用现有的工具,站在巨人的肩膀上总会容易些,所以我利用了qq的上线提醒功能,即电脑登陆qq时,在手机端会有消息提醒。
所以我用了三个函数来实现了这个软件
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include <iostream>
#include<stdlib.h>
#include<stdio.h>
#include "opencv2/opencv.hpp"
using namespace cv;
using namespace std;
int circle(Mat background, Mat frame);
int semple(Mat m1, Mat m2);
int main()
{
int shiyong,flag=0;
VideoCapture video(0);
//VideoCapture video("bike.mp4");
if (!video.isOpened()) //对video进行异常检测