oencv学习(8)--背景消除
2013-05-23 16:49
246 查看
如果摄像机是固定的,那么我们可以认为场景(背景)大多数情况下是不变的,而只有前景(被跟踪的目标)会运动,这样就可以建立背景模型。通过比较当前帧和背景模型,就能轻松地跟踪目标运动情况了。这里,最容易想到的比较方式就是当前帧减去背景模型了。背景模型的建立最容易想到的就是选取一张没有目标时的图片作为背景模型,但是很多情况下,背景中往往一直会有目标在运动,而且程序在没有经验的情况下又不会知道哪幅图片是有目标的,哪幅图片是没有目标的,程序只是根据我们人为建立的模型去检测目标而已。于是,不难想到,我们可以截取一段目标出现相对较少的视频段(也可叫做图片序列吧。。。),然后对帧求均值,将均值图片作为背景模型。这时候的背景模型总该靠谱一点了吧。
如opencv2.3.1里的以下函数可计算当前帧与背景之差的绝对值
cv::absdiff(backgroundImage,currentImage,foreground);
opencv2.3.1里
void accumulateWeighted(InputArray src, InputOutputArray dst, double alpha, InputArray mask=noArray() )
函数实现该功能:
其参数介绍如下:
Parameters
src – Input image as 1- or 3-channel, 8-bit or 32-bit floating point.
dst – Accumulator image with the same number of channels as input image, 32-bit or 64-bit floating-point.
alpha – Weight of the input image.
mask – Optional operation mask.
The function calculates the weighted sum of the input image src and the accumulator dst so that dst becomes a
running average of a frame sequence:
dst(x, y) ← (1 − alpha) · dst(x, y) + alpha · src(x, y) if mask(x, y) = 0
如opencv2.3.1里的以下函数可计算当前帧与背景之差的绝对值
cv::absdiff(backgroundImage,currentImage,foreground);
opencv2.3.1里
void accumulateWeighted(InputArray src, InputOutputArray dst, double alpha, InputArray mask=noArray() )
函数实现该功能:
其参数介绍如下:
Parameters
src – Input image as 1- or 3-channel, 8-bit or 32-bit floating point.
dst – Accumulator image with the same number of channels as input image, 32-bit or 64-bit floating-point.
alpha – Weight of the input image.
mask – Optional operation mask.
The function calculates the weighted sum of the input image src and the accumulator dst so that dst becomes a
running average of a frame sequence:
dst(x, y) ← (1 − alpha) · dst(x, y) + alpha · src(x, y) if mask(x, y) = 0
相关文章推荐
- Python OpenCV学习笔记之:使用KNN对视频背景消除
- Python OpenCV学习笔记之:使用MOG2视频背景消除
- 干货 | 详解如何用深度学习消除背景,实现抠图
- 学习“背景建模与阴影消除”之后感想
- 自拍抠图抠到手软?详解如何用深度学习消除背景
- 教程 | 如何用深度学习消除背景
- WPF学习笔记——为BUTTON添加背景图片
- WPF学习笔记——设置ListBox选中项的背景颜色
- [原创]java WEB学习笔记40:简单标签概述(背景,使用一个标签,标签库的API,SimpleTag接口,创建一个自定义的标签的步骤 和简单实践)
- Cocos2d-x学习(九):cocos2d-x 无限背景滚动
- 学习在网页中应用大图片背景的20个精美案例
- CSS 3学习——box-sizing和背景
- 鸟哥私房菜学习(一)——Linux背景了解
- CSS学习之“颜色和背景”
- C++学习------类层次结构的实例生成和实例消除
- 《Shell 脚本学习指南 》 -- 背景知识与入门 [第一、二章]
- android样式学习(一) 使用selector改变来动态改变背景颜色
- 构建强化学习系统,你需要先了解这些背景知识
- android在学习——Menu背景图片,背景色的设置
- C 语言 和 C++语言的对比学习 一 背景知识