(0)总览

运动目标检测是指在序列图像中检测出变化区域并将运动目标从背景图像(背景层)中提取出来。通常情况下,目标分类、跟踪和行为理解等后处理过程仅仅考虑图像中对应于运动目标的像素区域(前景层),因此运动目标的正确检测与分割对于后期处理非常重要。

然而,由于场景的动态变化,如天气、光照、阴影及杂乱背景干扰等的影响,使得运动目标的检测与分割变得相当困难。根据摄像头是否保持静止,运动检测分为静态背景运动背景两类。

大多数视频监控系统是摄像头固定的,因此基于静态背景下运动目标检测算法受到广泛关注,常用的方法有帧差法、光流法、背景减除法等。

(1)帧差法
    帧差法是最为常用的运动目标检测和分割方法之一,基本原理就是在图像序列相邻两帧或三帧间采用基于像素的时间差分通过闭值化来提取出图像中的运动区域。

首先,将相邻帧图像转化为灰度图,

然后,对应像素值相减得到差分图像

然后,对差分图像二值化

在环境亮度变化不大的情况下,如果对应像素值变化小于事先确定的阈值时,可以认为此处为背景像素;

如果图像区域的像素值变化很大,可以认为这是由于图像中运动物体引起的(对应像素值变化大于事先确定的阈值),将这些区域标记为前景像素,利用标记的像素区域可以确定运动目标在图像中的位置。

阈值分割公式如下,B(x,y)为二值图像像素,T为设定的阈值,D(x,y)为差分后得到的图像像素

B还需经过形态学处理、滤波去除图像噪声

优点:由于相邻两帧间的时间间隔非常短,用前一帧图像作为当前帧的背景模型具有较好的实时性,其背景不积累,且更新速度快、算法简单、计算量小

缺点:对环境噪声较为敏感,阈值的选择相当关键,选择过低不足以抑制图像中的噪声,过高则忽略了图像中有用的变化。对于比较大的、颜色一致的运动目标,有可能在目标内部产生空洞,无法完整地提取运动目标。
 (2)光流法
    光流法的主要任务就是计算光流场,即在适当的平滑性约束条件下,根据图像序列的时空梯度估算运动场,通过分析运动场的变化对运动目标和场景进行检测与分割。

通常有基于全局光流场特征点光流场两种方法。

最经典的全局光流场计算方法是L-K(Lueas&Kanada)法和H-S(Hom&Schunck)法,得到全局光流场后通过比较运动目标与背景之间的运动差异对运动目标进行光流分割,缺点是计算量大。

特征点光流法通过特征匹配求特征点处的流速,具有计算量小、快速灵活的特点,但稀疏的光流场很难精确地提取运动目标的形状。

总的来说,光流法不需要预先知道场景的任何信息,就能够检测到运动对象,可处理背景运动的情况但噪声、多光源、阴影和遮挡等因素会对光流场分布的计算结果造成严重影响;而且光流法计算复杂,很难实现实时处理。
(3)背景减除法

从静止的背景中提取移动的前景。如果你有一张背景(仅有背景不含前景)图像,比如没有顾客的房间,没有交通工具的道路等,那就好办了。我们只需要在新的图像中减去背景就可以得到前景对象了。在opencv中为BS(foreground/background segmentation 前景/背景分离)如下图所示

但是在大多数情况下,我们没有这样的(背景)图像,所以我们需要从我们有的图像中提取背景。如果图像中的交通工具还有影子的话,那这个工作就更难了,因为影子也在移动,仅仅使用减法会把影子也当成前景。真是一件很复杂的事情。

背景减除法是一种有效的运动对象检测算法,基本思想是利用背景的参数模型来近似背景图像的像素值,将当前帧与背景图像进行差分比较实现对运动区域的检测,其中区别较大的像素区域被认为是运动区域而区别较小的像素区域被认为是背景区域

背景减除法必须要有背景图像,并且背景图像必须是随着光照或外部环境的变化而实时更新的,因此背景减除法的关键是背景建模及其更新。

针对如何建立对于不同场景的动态变化均具有自适应性的背景模型,减少动态场景变化对运动分割的影响,研究人员已提出了许多背景建模算法,但总的来讲可以概括为非回归递推回归递推两类。

非回归背景建模算法是动态的利用从某一时刻开始到当前一段时间内存储的新近观测数据作为样本来进行背景建模。

非回归背景建模方法有最简单的帧间差分、中值滤波方法、Toyama等利用缓存的样本像素来估计背景模型的线性滤波器、Elg~al等提出的利用一段时间的历史数据来计算背景像素密度的非参数模型等。回归算法在背景估计中无需维持保存背景估计帧的缓冲区,它们是通过回归的方式基于输入的每一帧图像来更新某个时刻的背景模型。这类方法包括广泛应用的线性卡尔曼滤波法、Stauffe与Grimson提出的混合高斯模型

参考:OpenCV-Python 如何使用背景分离方法 | 四十六 - 人工智能遇见磐创 - 博客园

目标检测、追踪梳理:帧差法、光流法、背景减除法相关推荐

  1. 视频处理:帧差法、光流法和背景减除法的视频目标识别

    视频处理:帧差法.光流法和背景减除法的视频目标识别视频处理:帧差法.光流法和背景减除法的视频目标识别视频处理:帧差法.光流法和背景减除法的视频目标识别 1.调用摄像头 函数1:cv2.VideoCap ...

  2. 目标检测YOLO实战应用案例100讲-复杂背景下的红外弱小目标检测方法研究

    目录 复杂背景下的弱小红外目标检测 基于单帧和基于多帧检测方法的比较 ​编辑

  3. Python人工智能实例 │ 使用Haar级联进行人脸检测、使用CAMShift算法、光流法进行人脸追踪

    使用Haar级联进行人脸检测 使用CAMShift算法进行人脸追踪 使用光流法进行人脸追踪 01.背景知识 1.1●Haar级联简介 Haar级联是基于Haar特征的级联分类器.那么级联分类器是什么? ...

  4. 目标跟踪之光流法---光流法简单介绍

    光流的概念是Gibson在1950年首先提出来的.它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系 ...

  5. 目标检测YOLO实战应用案例100讲-低空背景下无人机目标的光谱特征研究及目标检测应用

    目录 前言 2无人机材料光谱特征分析及实验系统搭建 2.1无人机材料光谱特征分析

  6. OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope

    OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...

  7. 目标检测(一):背景差分法

           目标检测是将运动的物体从背景中检测出来,人们希望设计能适用于各种监控环境,不受光照.天气等外界因素影响的目标检测算法.但这种算法难免复杂度大,现有一些算法大多是针对某一类问题提出的,主要 ...

  8. Google又放大招:高效实时实现视频目标检测 | 技术头条

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」,购票请扫码咨询 ↑↑↑ 作者 | 陈泰红,算法工程师,研究方向为机器学习.图像处理 来源 | 极市平台(ID:extrememart) ...

  9. Google又发大招:高效实时实现视频目标检测

    首发于极市平台微信号:Google又发大招:高效实时实现视频目标检测 作者:陈泰红 如有兴趣可以**点击加入极市CV专业微信群**,获取更多高质量干货 图像目标检测是图像处理领域的基础.自从2012年 ...

最新文章

  1. 60+业内技术专家,9大核心技术专题,AI ProCon倒计时一周!
  2. 【C++ Primer】自己动手编写函数 atoi(char *str)
  3. Duplicate entry...for key...
  4. AHB-lite时序详细解读
  5. Acrobat Pro DC 教程,如何填写并签署 PDF 表格?
  6. 推荐一些不错的公众号【一】
  7. javascript---不可靠的“undefined”
  8. MUSIC算法---空间谱估计
  9. 《JAVA并发编程实践》读书笔记(一)
  10. Kubernets:容器日志收集方案
  11. 2022年上半年技术领域TOP 10高薪岗位出炉,第一名月薪4万
  12. “全球化”是一个漫长过程,海尔智家用了20年
  13. 亮度、对比度与饱和度
  14. python之if嵌套
  15. HDU 6447 YJJ's Salesman (dp+树状数组+莫干山算法)
  16. 小福利,用selenium模块爬取qq音乐歌单!
  17. mad离群值_全部关于离群值
  18. linux命令大全——文件编辑相关指令
  19. 【转载】单片机入门经验
  20. zoom html css3,csszoom css zoom标签移动端可以用吗

热门文章

  1. 【论文阅读】Video Generation from Single Semantic Label Map-CVPR2019
  2. 二零年的十一月开始 努力做个极简的人
  3. python打印商品列表_python 列表应用-简单的购物车
  4. 操作系统实验八:页面置换模拟程序设计
  5. c语言wb是标识符,C语言文件 "w+"与"wb+"区别
  6. flex布局(弹性盒子三)
  7. 使用cv2在图片上绘制点
  8. 投资,不能也不想做的太复杂
  9. 什么是推特群控?推特群控的优势是什么?
  10. python公开课乐博学院_乐搏学院 - 主页