opencv 帧差法 absdiff
opencv 帧差法 absdiff
opencv2.3.1里的以下函数可计算当前帧与背景之差的绝对值。
cv::absdiff(backgroundImage,currentImage,foreground);
如果摄像机是固定的,那么我们可以认为场景(背景)大多数情况下是不变的,而只有前景(被跟踪的目标)会运动,这样就可以建立背景模型。通过比较当前帧和背景模型,就能轻松地跟踪目标运动情况了。这里,最容易想到的比较方式就是当前帧减去背景模型了
代码如下:
using namespace std;
using namespace cv;int main(int argc,char * argv())
{//读入视频//VideoCapture capture("CarLights2.avi");VideoCapture capture(0);//namedWindow("camera",WINDOW_AUTOSIZE);//namedWindow("moving area",WINDOW_AUTOSIZE);Mat tempframe, currentframe, previousframe;Mat frame;int framenum = 0;//读取一帧处理while (true){if(!capture.isOpened()){cout << "read video failure" << endl;return - 1;}//tempframe = capture.read(frame);capture >> frame;tempframe = frame;framenum++; if (framenum == 1){cvtColor(tempframe, previousframe, CV_BGR2GRAY);}if (framenum >= 2){Mat currentframe1,currentframe2, currentframe3, currentframe4;cvtColor(tempframe, currentframe, CV_BGR2GRAY);//转化为单通道灰度图,此时currentFrame已经存了tempFrame的内容 absdiff(currentframe,previousframe,currentframe);//做差求绝对值 threshold(currentframe, currentframe, 20, 255.0, CV_THRESH_BINARY);dilate(currentframe, currentframe,Mat());//膨胀erode(currentframe, currentframe,Mat());//腐蚀//显示图像 imshow("camera", tempframe);imshow("moving area", currentframe);}//把当前帧保存作为下一次处理的前一帧 //cvtColor(tempframe, previousframe, CV_BGR2GRAY);waitKey(33);}//end while
}
opencv 帧差法 absdiff相关推荐
- python识别重影验证码_python+opencv实现移动侦测(帧差法)
本文实例为大家分享了python+opencv实现移动侦测的具体代码,供大家参考,具体内容如下 1.帧差法原理 移动侦测即是根据视频每帧或者几帧之间像素的差异,对差异值设置阈值,筛选大于阈值的像素点, ...
- Python与OpenCV(一)——基于帧差法的运动目标检测程序分析
OpenCV提供了强大的图像处理功能,与Python的结合堪称完美... 这一次,我们试一下用帧差法来完成对运动目标的检测与跟踪. 帧差法的原理是这样的:由于摄像机采集的视频序列具有连续性的特点,所以 ...
- opencv进阶-背景建模-(帧差法与混合高斯模型)
背景减除(Background Subtraction)是许多基于计算机视觉的任务中的主要预处理步骤.如果我们有完整的静止的背景帧,那么我们可以通过帧差法来计算像素差从而获取到前景对象.但是在大多数情 ...
- 【opencv】(11) 背景建模,帧差法、混合高斯模型,实战:行人检测,附python完整代码和数据集
各位同学好,今天和大家分享一下opencv背景建模相关操作.主要介绍两种背景建模方法,帧差法和混合高斯模型. 案例简介:现有一份路口摄像机拍摄的行人流视频,通过背景建模方法,区分背景和前景,完成行人识 ...
- 利用python语言实现帧差法,python+opencv实现帧差法
实验效果如下图: 需要的可以下载代码文件直接就可以运行看看效果哦. 帧差法实现运动目标检测
- 相邻帧差法和三帧差法
相邻帧差法和三帧差法 原文地址:https://blog.csdn.net/dcrmg/article/details/52234929 帧间差分法是通过对视频中相邻两帧图像做差分运算来标记运动物体的 ...
- 图像处理+帧差法实现对车辆的识别框选
每一帧一个动作,连接起形成一个动画 帧差法:对每一帧进行分析,对帧内分为动态和静态物体,前一帧与后一帧相对移动的物体识别出. opencv中有专门对帧差的函数,以识别运动中的物体 原视频图像: 函数设 ...
- 运动目标检测 帧差法
帧差法是在连续的图像序列中两个或三个相邻帧间采用基于像素的时间差分并且二值化来提取图像中的运动区域. #include <opencv2/opencv.hpp> using namespa ...
- Python实现视频运动目标检测——帧差法
Python实现视频运动目标检测--帧差法 在许多场景中,我们需要对视频中的运动目标进行检测.而在这个过程中,帧差法是一种常用的方法.本文将详细阐述Python如何利用帧差法实现视频运动目标检测. 首 ...
最新文章
- Java快速教程--vamei 学习笔记(基础篇)
- python是什么学了有什么用处_学python有什么用途 就业方向有哪些
- 电脑进入pe时蓝屏_电脑进入PE会蓝屏是怎么回事?
- 我对CTO的理解 CTO要有技术魅力[转载]
- ndarray对象的建立
- centos连接xrdp桌面黑屏_小鹅通|视频直播桌面共享模式|视频直播OBS使用教程
- 一次失败的做题经历(HDU2112)
- Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的...
- Atitit.ui控件---下拉菜单选择控件的实现select html
- GCC 编译安装在线文档
- 小米5USB 计算机连接,小米手机连接电脑不显示usb选项
- CSS 实现元素固定宽高比
- 无界鼠标 (Mouse without Borders) 一套键鼠控制多台电脑的工具(可跨电脑拷贝/拖放文件)
- python OpenCV与NAOqi库在机器人点球比赛中的应用
- 怎样将动图静图拼在一起?教你在线拼接图片
- (转)网上摘抄:计算数学研究方向及网上资料
- 能够改变一生的5句话
- TeamViewer 无法连接 原因未知 - 轻松解决!
- CBoard框架使用总结七--添加首页图表
- 专家谈房产两难:力图房价回归理性 担心地产崩溃