【计算机视觉】Lecture 24:视频变化检测

2023-05-16

视频基础

在这里插入图片描述
每秒30帧。每一幅图像的处理时间不会太多。因此,实时算法往往非常简单。

视频图像的主要特征之一是帧间的时间一致性。在1/30秒内帧间变化不大!

检测移动的对象

假设:移动的对象是非常重要的(比如人和车辆)
基本方法:保持一个静态背景的模型。将当前帧与背景进行比较以定位移动的前景对象。

在这里插入图片描述

简单的背景减法

• 背景模型是一个静态图像(假设这时候没有对象)。

• 基于当前帧和背景之间的绝对灰度差阈值,像素被标记为对象(1)或非对象(0)。

在这里插入图片描述

背景观察

如果对象的灰度/颜色与背景有足够的不同,背景减法可以合理地提取对象的形状。

在这里插入图片描述

进入场景并停止的对象将继续被检测到,因此很难检测到经过它们前面的新对象。

在这里插入图片描述

如果假定的静态背景的一部分开始移动,则对象及其负重影(显示的背景) 都会被检测到

在这里插入图片描述

背景减法对光照变化和背景的不重要的移动(例如,风中吹动的树木、汽车或水上反射的阳光)非常敏感。

在这里插入图片描述

背景减法无法处理相机的移动。

在这里插入图片描述

简单的图像帧差分

上一帧的图像替代背景模型

在这里插入图片描述

帧差分观察

帧差分能够非常快速地适应光线或相机运动的变化。

不会再检测到停止的对象。启动的对象不会留下重影。

然而,帧差分只检测均匀颜色对象的前缘和后缘。因此,在对象上很少有像素被标记,并且很难检测到向着相机方向移动或远离相机方向移动的对象。

在这里插入图片描述

差分和时间尺度

注意,当我们调整执行两帧差分的时间尺度(帧率)时会发生什么 ?

在这里插入图片描述

更完整的对象轮廓,但有两个副本(copies)

(一个是过去的对象,一个是现在的对象)

三帧差分

前面的观察是三帧差分背后的动机

在这里插入图片描述

三帧差分的好帧率的选择依赖于对象的大小和速度

在这里插入图片描述

自适应背景减法

• 将当前图像“混合”到具有参数 α 的背景模型中

• α = 0 时产生简单的背景减法,α = 1 时产生帧差分

在这里插入图片描述

自适应背景减法观察

自适应背景减法对光照和相机运动的变化更敏感。

快速移动的小物体分割得很好,但它们留下了短的像素“轨迹”。

停止的对象和开始运动对象留下的重影会在背景中逐渐消失。

大型慢速移动对象的中心也会在背景中开始消失!这可以通过减小混合参数 α 来“修复”,但是这时候停止的对象/对象的重影消失所需的时间会变长。

在这里插入图片描述

持续帧差分(Persistent Frame Differencing)

• 运动图像与一个线性衰减项相结合

• 也被称为运动历史图像(Davis和Bobick)

在这里插入图片描述

持续帧差分观察

持续帧差分也对光照和相机运动变化比较敏感,并且停止的对象/对象的重影也会逐渐消失。

对象会留下逐渐消失的像素轨迹。该轨迹的梯度表示图像中对象运动的视觉方向。

尽管颜色一致对象的中心仍然没有被检测到,但是由于线性衰减,前后边缘变得更宽,因此在感觉上(对人来说)更容易看到整个对象。

在这里插入图片描述

四种方法的比较

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

基本的背景减法的变体

统计学的背景建模

Wren, Azarbayejani, Darrell, Pentland, “Pfinder: Real-time Tracking of the Human Body,” IEEE Pattern Analysis and Machine Intelligence (PAMI), Vol. 19(7), July 1997, pp.780-785.

注意 B(t)=αI(t)+(1-α)B(t-1)
是一个指数移动平均IIR滤波器。

(近似于平均值的一种递归,最近最新的样本权重更高)。

变体:计算每个像素处颜色的平均值和协方差。变化的检测阈值现在应该就是定为统计距离

(又名马哈拉诺比斯Mahalanobis距离)。

这通常效果更好,因为阈值可以自适应。

然而,它基于这样一个假设:在一个像素上观察到的颜色是单峰的(如果是高斯分布,效果最好)。

Chris Stauffer and Eric Grimson, “Adaptive Background Mixture Models for Real-time Tracking,” IEEE Computer Vision and Pattern Recognition (CVPR), June 1999, pp.246-252.

观察:一个像素处的颜色分布通常是多模态的(例如,树叶区域或水面上的涟漪)。它们基于高斯混合(通常为5或6个分量)在每个像素处保持自适应颜色模型。

在这里插入图片描述
非参数颜色分布,核密度估计
Ahmed Elgammal, David Harwood, Larry Davis “Non-parametric Model for Background Subtraction”, 6th European Conference on Computer Vision. Dublin, Ireland, June 2000.

在这里插入图片描述

在每个像素处使用光流 u,v 值,而不是使用灰度/颜色

R.Pless, J.Larson, S.Siebers, B.Westover, “Evaluation of Local Models of Dynamic Backgrounds,” IEEE Computer Vision and Pattern Recognition (CVPR), June 2003

在这里插入图片描述

云台工作,主从伺服

X.Zhou, R.Collins, T.Kanade, P.Metes, “A Master-Slave System to Acquire Biometric Imagery of Humans at a Distance,” ACM SIGMM 2003 Workshop on Video Surveillance , Berkeley, CA, Nov 7, 2003, pp.113-120

• 使用固定的主摄像头检测物体

• 计算附近的摇摄/倾斜摄像机的指向角

在这里插入图片描述

背景色模型

Wenmiao Lu, Yap-Peng Tan, Weiyun Yau, “Video Surveillance System for Drowning Detection”, Technical Sketches, IEEE Conference on Computer Vision and Pattern Recognition, Kauii Hawaii, Dec 2001.

在这里插入图片描述

颜色分割(双色池模型)用于检测游泳者,同时忽略水中波纹和波浪造成的灰度变化。

分层检测

R.Collins, A.Lipton, H.Fujiyoshi and T.Kanade, “Algorithms for Cooperative Multi-Sensor Surveillance,” Proceedings of the IEEE, Vol 89(10), October 2001, pp.1456-1477.

在这里插入图片描述
允许对blob进行分层,这样停止的blob可以被视为新对象检测的背景的一部分,但它们在重新开始移动时不会留下重影。

云台工作

背景减法的一个主要限制是相机必须是静止的,这限制了我们使用摇摄/倾斜相机进行主动跟踪的能力。

方案1:Step-and-Stare 跟踪

在这里插入图片描述

云台工作,相机运动的稳定性

Frank Dellaert and Robert Collins, “Fast Image-Based Tracking by Selective Pixel Integration,” ICCV Workshop on Frame-Rate Vision, Corfu, Greece, Sept 1999.

在这里插入图片描述

通过变换图像,与背景参考图集合对齐,可以消除平移/倾斜相机的视觉运动。

当场景结构主要是平面的时候,也有更一般的相机运动稳定的工作。

将像素分组为块

在这里插入图片描述
动机:变化的检测是一个像素级的过程。

我们希望将描述提升到更高的抽象级别。

动机

如果我们有一个对象级的blob描述,并且我们可以维护场景背景的模型,那么我们可以从视频序列中人为地移除对象。

在这里插入图片描述

Alan Lipton, “Virtual Postman – Real-time, Interactive Virtual Video,” IASTED CGIM, Palm Springs, CA, Octover 1999.

将像素分组为块

在这里插入图片描述

• 中值滤波去除噪声像素

• 连接部分(带间隙)

• 调整滤波器的尺寸以去除小区域

间隙的连接部分

**加粗样式**

边框=包含对象上所有像素的最小矩形。

Blob合并/拆分

在这里插入图片描述
当两个对象彼此靠近时,它们被检测为单个blob。通常,一个物体会被另一个物体挡住。其中一个具有挑战性的问题是在每一个对象再次分开后保持正确的标记。

数据关联

基于blob之间的特征相似度确定blob在帧间的对应关系。

常用特征:位置、大小/形状、速度、外观

例如:可以根据边界框重叠来测量位置、大小和形状相似性:

在这里插入图片描述

通常假设物体以恒定速度运动

在这里插入图片描述
在这里插入图片描述

外观信息

图像模板的互相关性也是一个明显的选择(在帧之间)

在这里插入图片描述

通过颜色直方图的外观

在这里插入图片描述在这里插入图片描述

整体的直方图尺寸为
在这里插入图片描述

比如,R、G和B通道的4位编码会产生的直方图大小为161616 = 4096

更小的颜色直方图

如果我们愿意接受颜色分辨率的损失,直方图信息可以小得多。

在这里插入图片描述在这里插入图片描述

整体的直方图尺寸为
在这里插入图片描述

比如,R、G和B通道的4位编码会产生的直方图大小为 3*16 = 48

颜色直方图例子

在这里插入图片描述

比较颜色分布

给定n-bucket模型直方图{mi | i=1,…,n}和数据直方图{di | i=1,…,n},我们遵循Comanesciu、Ramesh和Meer*使用距离函数:

在这里插入图片描述

为什么用这个?
1) 它与Bayes误差概念共享最优性质

2) 它采用了度量结构

3) 它对对象大小(像素数)是恒定不变的

4) 它适用于任意分布(不只是高斯分布)

Dorin Comanesciu, V. Ramesh and Peter Meer, “Real-time Tracking of Non-Rigid Objects using Mean Shift,” IEEE Conference on Computer Vision and Pattern Recognition, Hilton Head, South Carolina, 2000 (best paper award).

数据关联示例 合并和拆分后

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【计算机视觉】Lecture 24:视频变化检测 的相关文章

  • ESP32学习笔记20-dac

    20 DAC 20 1概述 ESP32 有两个 8 位数模转换器 DAC 通道 分别连接到 GPIO25 通道 1 和 GPIO26 通道 2 每个 DAC 通道可以将数字值 0 255 转换成模拟电压 0 Vref out voltage
  • ESP32学习笔记21-esp32启动流程

    24 esp32启动流程 第一 xff0c 第二阶段启动流程 第三阶段的详细流程

随机推荐

  • ESP32学习笔记22-TWAI-CAN

    22 TWAI CAN 22 1概述 22 1 1参考博客 ESP32 基于自带控制器实现CAN总线通信 上 知乎 zhihu com ESP32 基于自带控制器实现CAN总线通信 下 知乎 zhihu com 22 1 2 ESP32 T
  • Python str和bytes的相互转换

    str0 61 39 abc 39 a 61 bytes str0 39 utf 8 39 print type str0 str0 print type a a print 39 39 c 61 bytes 97 98 99 100 pr
  • wxpython 基本的控件 (按钮)

    在wxPython 中有很多不同类型的按钮 这一节 xff0c 我们将讨论文本按钮 位图按钮 开关按钮 xff08 toggle buttons xff09 和通用 xff08 generic xff09 按钮 如何生成一个按钮 xff1f
  • FreeRTOS系列|处理器利用率

    处理器利用率 1 处理器利用率统计的作用 处理器利用率其实就是系统运行的程序占用的CPU资源 xff0c 表示机器在某段时间程序运行的情况 xff0c 如果这段时间中 xff0c 程序一直在占用CPU的使用权 xff0c 那么可以认为CPU
  • QT 多线程使用QTcpSocket

    本人亲测使用moveToThread xff08 xff09 的方式可以 xff1b 不存在报错 xff0c 警告 include 34 widget h 34 include 34 ui widget h 34 Widget Widget
  • ESP8266天猫精灵接入流程

    Blinker天猫精灵接入流程 设备上线 设置接入的设备类型 设置接入设备的auth Key 设置SSID PSWD 或者选择 ESPTOUCH等配网方式 下载代码等待设备接入上线成功 authKey对应的设备若需要更换接入的设备类型 xf
  • 存储器的分类

    目录 01 ROM 02 非易失性RAM 2 1原理 2 2发展 2 3 摩尔定律 03 易失性RAM 3 1原理 3 2发展 3 3总结 04 总结 储器类型有很多 xff0c 常见的有ROM xff08 Read onlymemory只
  • RT - thread学习(一)

    目录 一 RT thread介绍 二 RT thread移植 首先我们先在官网获取 编辑 对无关的文件进行剪裁 剪裁后的内核文件移植到sdk文件 配置内核文件 一 RT thread介绍 rt thread是国产的一款开源的实时操作系统 这
  • 机器学习基本概念

    文章目录 深度学习和机器学习NLP xff08 Natural language processing xff09 Confusion Matrix 混淆矩阵ROC xff08 Receiver Operator Characteristi
  • ROS Kinetic中OpenCV使用

    ROS Kinetic中OpenCV使用 本文主要记录了ROS Kinetic中OpenCV的使用 xff0c Kinetic完全安装中本身自带了Opencv3 3 1 xff0c 因此在ROS中可以直接用ROS自带的Opencv3 3 1
  • ROS下gazebo不能加载willowgarage世界

    在打开gazebo ros打开williowgarage的时候 xff0c 能够找到willowgarage world的文件 xff0c 但是gazebo不能够加载这个模型 xff0c 主要原因是gazebo的model里面并没有mode
  • Mac OS下安装串口调试工具minicom

    最近在做一个Mac下的ssh调试工具 xff0c 但是出现了一点问题 后来发现居然Mac下有串口调试工具可以用 xff0c 所以果断换串口了 xff0c 是普通PL2303芯片的usb转串口线 接下来说下简单的安装步骤吧 我是勤劳的搬砖工
  • Eclipse等IDE配置Anaconda/Python3开发环境(win10_x64)

    分诊台 正所谓 洞庭揽物 xff0c 各有所怀 xff0c 博客点击 xff0c 也是各有所需 为了能让读者节约时间 xff0c 本小百姓 xff0c 写博客时尽力将博客内容各部分内容解耦 xff0c 但仍保持一定的连贯性 xff0c 并参
  • Linux(树莓派)系统中判断WiFi是否连接上路由器的方法

    之前 xff08 https blog csdn net u010299133 article details 105823339 xff09 介绍过在Linux系统中使用wpa supplicant连接到指定的WiFi路由器的方法 xff
  • FreeRTOS系列|任务相关API函数

    任务相关API函数 1 任务相关API函数 FreeRTOS中有很多与任务相关的API函数 xff0c 大多数是辅助函数 下表是这些与任务相关的API函数功能和描述简介 函数名功能描述uxTaskPriorityGet 查询某个任务的优先级
  • 无人机通信协议:MavLink协议使用

    mavlink的数据封装的结构体以及封装解析的函数都在mavlink代码库中的头文件中 主要的结构体 xff1a E mavlink mavlink include v1 0 mavlink types h MAVPACKED typede
  • 【计算机视觉】Lecture 16:平面单应变换

    动机 xff1a 在平面上的点 回顾 xff1a 正向投影 世界坐标系到相机坐标系的变换 透视矩阵方程 xff08 相机坐标系到成像坐标系 xff09 成像坐标系到像素坐标系 从成像坐标 xff08 x xff0c y xff09 到像素坐
  • 【计算机视觉】Lecture 20:八点法

    提醒 本质 基础矩阵 本质矩阵和基础矩阵都是 3x3 的矩阵 xff0c 用于 编码 两个视图的对极几何 动机 xff1a 给定一张图像中的一个点 xff0c 乘以本质 基础矩阵将告诉我们在第二个视图中沿着哪个极线搜索 本质 基础矩阵总结
  • 【计算机视觉】Lecture 23:光流估计

    流估计 主要概念 xff1a 亮度08好恒定方程 孔径问题 Lucas Kanade算法 回顾 xff1a 由于自身运动产生的场 流 xff08 Flow xff09 xff1a 旋转分量不依赖于场景结构 平移分量随场景 Z 值的变化而变化
  • 【计算机视觉】Lecture 24:视频变化检测

    视频基础 每秒30帧 每一幅图像的处理时间不会太多 因此 xff0c 实时算法往往非常简单 视频图像的主要特征之一是帧间的时间一致性 在1 30秒内帧间变化不大 xff01 检测移动的对象 假设 xff1a 移动的对象是非常重要的 xff0