回忆:Blob合并/拆分


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

数据关联

更一般地,我们寻求在帧之间匹配一组blob,以保持个体的连续性并生成轨迹。

数据关联场景

多帧匹配(将新帧中的观测值匹配到一组跟踪轨迹中)


如何确定哪个观测要添加到哪个轨迹?

跟踪匹配

直觉:预测每个跟踪轨迹上的下一个位置。

直觉:匹配应接近预测位置

直觉:有些匹配是非常不可能的

门控Gating

一种从一开始就不太可能进行几何匹配的修剪方法。允许我们将匹配分解为更小的子问题。

滤波框架

离散时间状态空间滤波

我们希望在每次接收到测量值时递归地估计当前状态。

两步法:

1) 预测:在考虑过程噪声的情况下,及时向前传播状态概率密度函数(平移、变换以及传播概率密度函数)

2) 更新:使用Bayes定理基于当前测量值来修正预测的概率密度函数

预测

卡尔曼滤波是一种常用的方法。

系统模型和测量模型是线性的。

噪声为零均值高斯分布

概率密度函数(pdf)都是高斯函数

1)系统模型

2)测量模型

卡尔曼滤波器

所有的概率密度函数(pdf)都是高斯函数(注:高斯分布的所有边缘分布都是高斯分布)

预测:

更新:

例子

更简单的预测/门限

恒定位置 + 最大帧间运动的限制

恒定位置预测

三帧恒定速度预测

旁白:相机运动

假设:只要我们首先补偿任何背景相机运动的影响,恒定速度目标运动模型就足够了。

将两帧之间一个目标的观测位移分解,分解为仅基于相机运动的分量和仅基于目标运动的分量

相机运动估计

方法:

用Lucas-Kanade算法(KLT)估计稀疏光流

估计场景图像运动的参数化模型(仿射变换)

注:这提供了一个低计算成本的图像变换和帧差分方法。

用于运动预测和变焦检测

目标运动估计

方法:补偿相机运动之后估计恒定速度

全局最近邻(GNN)

评估轨迹门限区域内的每一个观测。

选择 “最佳” 的一个融入轨迹。

a1j=观测 j 与轨迹1匹配的分数

可以基于欧几里德(Euclidean)或马哈拉诺比斯(Mahalanobis)距离预测位置(例如exp{-d2})。也可以基于外观的相似性(例如图像模板互相关性得分)

数据关联

我们好像一直在讨论我们的目标物体是点。(如果我们跟踪的是角点特征或雷达光点的话)。但我们的物体是团块blobs——它们是一个图像区域,并且有一个区域。

恒定速度:假设V(t) = V(t+1)

及时将目标区域向前映射以预测新区域。

数据关联

基于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).

全局最近邻(GNN)

评估轨迹门限区域内的每一个观测。

选择 “最佳” 的一个融入轨迹。

ai1=观测 i 与轨迹1匹配的分数
选择最佳匹配 am1 = max{a11, a21, a31, a41}

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

全局最近邻(GNN)

问题:如果对每个轨迹单独执行,可能会导致对相同观测值的竞争。


两个轨迹都尝试请求观测 o4

线性分配问题Linear Assignment Problem

我们在前一帧中有 N 个目标,在当前帧中有 M 个目标。我们可以建立一张匹配得分表格 m(i, j),i = 1…N 和 j = 1…M。现在假设M = N。

问题:选择一个 1-1 对应关系,使所有匹配得分之和最大化

分配问题

数学定义:给定 NxN 利益数组{Xai},确定 NxN 置换矩阵(permutation matrix) Mai,使得总分最大化 :

置换矩阵中每一列的和为1,每一行的和为1
置换矩阵确保我们只能从每行和每列中选择一个数字。

例子

5*5 匹配得分矩阵

从左到右操作,从每一列中选择一个数字,确保没有从已经选择了数字的行中选择数字。

我们有多少种方法可以做到这一点?
5 x 4 x 3 x 2 x 1 = 120 (N的阶乘)

贪心策略

流程:
选择最大的值并标记它
i = 1 到 N - 1
在未标记的行/列中选择下一个最大剩余值
结束

不如我们现在最好的猜测(下图)!

一些(可能的)解决方法

这是一个0-1整数线性程序的形式。可以用单纯形法求解。然而,差的(指数的)最坏情况的复杂性(0-1整数规划是NP难的)

一些(可能的)解决方法

在加权二部图中也可以被看作是最大匹配问题,而加权二部图又可以被看作是最大流问题。

回顾:软分配

我们将用一种有效的方法,叫做 软分配 SoftAssign,根据以下的工作:
J. Kosowsky and A. Yuille. The invisible hand algorithm: Solving the assignment problem with statistical physics. Neural Networks, 7:477-490, 1994.

主要概念:

• 将0,1约束放宽为 0<=Mai<=1

• 初始化 Mai=exp(B*score)。这确保了为正,并在(B接近无穷大)时传播分数

• 执行重复的行和列规范化以获得双随机矩阵(行和列总和为1)

在实际应用中,应采用迭代的方法来避免大B的数值问题。

为什么有用?考虑 SoftMax

Softmas是一种类似的算法,但只对单个数字向量进行操作。

exp() 函数的作用是确保所有数字都是正数(甚至负数通过 exp 会映射成正数;
随着B的增加,与最大元素相关联的mi接近1,而所有其他mi值接近0 。

软分配


在本例中,我们可以穷举搜索所有120个分配。

全局最大值确实是4.26

处理丢失的匹配

通常情况下,轨迹的数目与观测值数目不同。有些观测结果可能与任何轨迹都不匹配。有些轨迹可能没有任何观测。

引入一行一列的“松弛变量”以吸收任何外点误匹配。

【计算机视觉】Lecture 28:跟踪简介相关推荐

  1. Interview:人工智能岗位面试—人工智能职位之计算机视觉算法工程师的简介、知识结构、发展方向之详细攻略

    Interview:人工智能岗位面试-人工智能职位之计算机视觉算法工程师的简介.知识结构.发展方向之详细攻略 目录 计算机视觉算法工程师的简介 计算机视觉算法工程师的知识结构 计算机视觉算法工程师的发 ...

  2. Sysinternals Suite 2012.06.28软件简介

    Sysinternals Suite 2012.06.28软件简介 Sysinternals Suite是微软发布的一套非常强大的免费工具程序集.Sysinternals Suite一共包括将近70个 ...

  3. 计算机视觉——bbox的格式简介

    计算机视觉--bbox的格式简介 一.Itwh 二.xywh 前提知识: 左上角为坐标原点 一.Itwh 全程:(left,top,weight,height) 二.xywh 全程:(x,y,weig ...

  4. [深度学习基础] 斯坦福CS231n李飞飞计算机视觉Lecture 7笔记

    内容列表 Lecture 7 Convolutional Neural Networks 卷积神经网络历史 卷积神经网络具体结构 卷积层 池化层 全连接层 神经网络架构发展 LeNet AlexNet ...

  5. 计算机视觉基础-1——直观简介

    一.计算机视觉三大任务 三大任务之目标识别(目标分类) 基础目标识别: 从视频或图片中识别出主体的类别,或其中包含有哪些物体. 精细目标识别:例如车牌识别,人脸识别等 三大任务之目标检测 Object ...

  6. 计算机视觉常识(研究方向简介、需要的知识储备)

    计算机视觉的一些常识 1.计算机视觉的主要研究领域 计算机视觉领域包括的主要领域有图像分割(图像信息预处理).三维重建和模式识别(包括对静态.动态物体的识别与理解). (1)图像分割:图像分割是图像识 ...

  7. 计算机视觉:目标跟踪论文推荐

    声明: 1.论文覆盖时间段:2019年12月31日-2020年02月19日 2.在此推荐大家关注 计算机视觉论文速递 知乎专栏,可以快速了解到最新优质的CV论文 [1]旷视Detection组开源:视 ...

  8. [深度学习基础] 斯坦福CS231n李飞飞计算机视觉Lecture 1笔记

    前言:目前做深度学习也有一段时间了,系统的知识也学了很多,但是大多数都是自己在网上所获得的零散的知识,最近看了李飞飞的斯坦福网上公开课,觉得可以好好的巩固一下基础,对每个Lecture做一下笔记,De ...

  9. [深度学习基础] 斯坦福CS231n李飞飞计算机视觉Lecture 5笔记

    内容列表 Lecture 5 Training Neural Networks,Part I 神经网络的历史 训练神经网络 激活函数 数据预处理 权重初始化 批量归一化 检查学习过程 超参数优化 小结 ...

  10. 【计算机视觉】PnP算法简介与代码解析-柴政(solvepnp理论篇)

    PnP算法简介与代码解析-柴政 PnP求解算法是指通过多对3D与2D匹配点,在已知或者未知相机内参的情况下,利用最小化重投影误差来求解相机外参的算法.PnP求解算法是SLAM前端位姿跟踪部分中常用的算 ...

最新文章

  1. Pytorch v0.4.1发布:添加频谱范数,自适应Softmax,优化CPU处理速度,添加异常检测NaN等
  2. 【Linux】ps命令
  3. docker 安装nginx_使用 Docker 在你的 mac 上搭建个服务器
  4. nginx代理设置域名跳转/域名重定向
  5. (pytorch-深度学习系列)pytorch避免过拟合-dropout丢弃法的实现-学习笔记
  6. 现代计算机主要有哪些方面的应用,现代汉字主要应用于哪些方面;汉字的整理有哪些内容?...
  7. (3)Spring框架----Bean实例化的几种方式对比
  8. 数据库SQL(基础代码)
  9. android httpclient基本用法
  10. termux安装ubuntu
  11. sonic 架构学习
  12. 高数 | 【多元函数微分学】如何判断二元微分式是否为全微分
  13. 【windows】找不到MSVCR100.dll、VCRUNTIME140.dll
  14. Objective-C学习笔记(二)——OC基本语法概述
  15. 《守望先锋》中的网络同步技术
  16. 用Html+css写一个渐变背景的个人名片
  17. websphere mq 8死信队列测试--队列满了场景
  18. UE5 Android 打包
  19. 解除EA(Origin)平台与STEAM平台的关联
  20. vscode php 语法检查,vscode如何关闭eslint的语法检查

热门文章

  1. 3DLut表实现log视频的后期调色原理
  2. cortana连不上网络_Alexa,为什么Cortana仍在我的计算机上?
  3. egret eui.Button改变文本、背景色及是否可点击
  4. CMOS图像传感器OV7725数据手册
  5. html什么用于创建表格的标题,在HTML页面中,()标记用于为表格中的一列指定一个标题(选一项)...
  6. 微信h5支付 php sdk_TP5专用微信支付SDK使用简介
  7. 海思AI芯片(35xx):板端运行报错
  8. 美国如何保护关键信息基础设施
  9. 人民的名义关系可视化展示
  10. mysql学习记录_秦路天善智能Mysql学习笔记