- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
背景建模练习练习
二帧差法:
#include opencv2/highgui/highgui.hpp
#include opencv2/imgproc/imgproc.hpp
#include opencv2/core/core.hpp
#define threshold_diff 20 //设置简单帧差法阈值
using namespace cv;
using namespace std;
int main(int argc, unsigned char* argv[])
{
Mat img_src1, img_src2, img_dst, gray1, gray2, gray_diff;
bool pause = false;
VideoCapture vido_file(test.avi);//在这里改相应的文件名
namedWindow(foreground, 0);
for (;;)
{
if (!pause)
{
vido_file img_src1; //提取一副图像
cvtColor(img_src1, gray1, CV_BGR2GRAY);//转化为灰度图像
imshow(video_src1, img_src1);
waitKey(5);
vido_file img_src2; //过5毫秒又一副图像
cvtColor(img_src2, gray2, CV_BGR2GRAY);
imshow(video_src2, img_src2);
waitKey(5);
subtract(gray1, gray2, gray_diff); //函数计算两幅灰度图像的差值
for (int i = 0; igray_diff.rows; i++)
for (int j = 0; jgray_diff.cols; j++)//对于整个图像中的每个点如果差值大于阀值则把该点设为白色,否则设为黑色
if (abs(gray_diff.atunsigned char(i, j)) = threshold_diff)
gray_diff.atunsigned char(i, j) = 255;
else gray_diff.atunsigned char(i, j) = 0;
imshow(foreground, gray_diff); //完成对每个点的检测后显示这幅图
}
char c = (char)waitKey(10);
if (c == 27)
{
break;
}
if (c == )
pause = !pause;
}
return 0;
}#includeopencv2/highgui/highgui.hpp
#includeopencv2/imgproc/imgproc.hpp
#includeopencv2/core/core.hpp
#define threshold_diff1 10
#define threshold_diff2 10
using namespace cv;
using namespace std;
int main(int argc, unsigned char* argv[]){
Mat img_src1, img_src2, img_src3;
Mat img_dst, gray1, gray2, gray3;
Mat gray_diff1, gray_diff2;
Mat gray;
bool pause = false;
VideoCapture vido_file(test.avi);
for (;;){
if (!pause){
vido_file img_src1;
cvtColor(img_src1, gray1, CV_BGR2GRAY);
waitKey(5);
vido_file img_src2;
cvtColor(img_src2, gray2, CV_BGR2GRAY);
waitKey(5);
vido_file img_src3;
cvtColor(img_src3, gray3, CV_BGR2GRAY);
subtract(gray2, gray1, gray_diff1);
subtract(gray3, gray2, gray_diff2);
imshow(1, img_src2);
ims
文档评论(0)