均值漂移跟踪算法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在无人驾驶车辆测试平台上利用均值漂移跟踪算法实现移

动图像的实时跟踪

Benjamin Gorry, Zezhi Chen, Kevin Hammond, Andy Wallace, and Greg Michaelson

摘要:本文描述了一种用来跟踪移动目标的新型计算机视觉算法,该算法是作为

无人驾驶车辆长期研究的一部分而被发展的。我们将介绍在视频序列中利用变量核

进行跟踪的研究结果。其中,均值漂移目标跟踪算法是我们工作的基础;对于一个

移动目标,该算法通常用来在初始帧中确定一个矩形目标窗口,然后利用均值漂移

分离算法处理该窗口中的数据,将跟踪目标从背景环境中分离出来。我们并没有使

用标准的Epanechnikov内核,而是利用一个倒角距离变换加权内核来提升目标表

示和定位的精度,利用Bhattacharyya系数使RGB色彩空间中两个分布之间的距离

最小化。实验结果表明,相对于标准算法,本算法在跟踪能力和通用性上有一定的

提升。这些算法已经运用在机器人试验平台的组成部分中,并证明了这些算法的有

效性。

关键词:Hume,函数程序设计,无人驾驶车辆,先驱者机器人,视觉

I.引言

本文比较和对比了在视觉序列中跟踪移动目标的三种计算机视觉算法。对于很多无人驾驶车辆(A V)来说,在复杂背景中检测和跟随移动目标的应用是至关重要的。例如,这可以让一个全尺寸无人驾驶车辆跟踪行人或者移动车辆并避免与之相撞。同时对于机器人而言,这项技术也可以提升导航性能和增强安全性。对单个移动目标的良好隔离,将便于我们针对感兴趣的目标进行应用开发。而所有的这些应用都要求我们能够实时的处理全彩色的视频序列。

我们的工作是在基于先驱者P3-AT全地形机器人的无人驾驶车辆测试平台上进行的,它是一个英国项目的一部分。这个庞大的项目是由国防科学技术中心(DTC)下辖的无人系统工程(SEAS)为了开发新型无人驾驶车辆传感器技术而建立的。国防科学技术中心的无人系统工程是由英国工业联盟操作管理,旨在通过采取系统工程的方法在整个系统和子系统

层次上,研究有关无人系统的创新性技术,以此达到利用科学技术进步促进军事能力发展的目的。

本文有许多独到之处。第一,基于之前探讨的均值漂移算法,我们介绍了在复杂、混乱的背景下追踪移动图像的新算法。第二,我们展示了我们的算法能够在全尺寸视频图像中实时地追踪移动目标。第三,我们以先驱者P3-AT全地形机器人为基础,介绍了如何在一个简易无人车辆测试平台上配置新算法。最后,我们的实现方式是与众不同的,因为我们采用新颖的Hume[1,2]编程语言来编写程序。这一语言的新奇之处在于将函数式编程概念与编写实时反应系统的有限状态自动机有机结合起来。

B. Gorry, Z. Chen, G. Michaelson来自苏格兰瑞卡顿的赫瑞瓦特大学计算机科学系。

K. Hammond来自苏格兰圣安德鲁斯的圣安德鲁斯大学计算机科学学院。

A. Wallace来自苏格兰瑞卡顿的赫瑞瓦特大学电子与计算机工程系

II.均值漂移视觉算法

A.均值漂移分离算法

我们将介绍利用不同内核对视频序列中移动目标实时跟踪的研究结果。这些内核是由Comaniciu和Meer[4,5,6]第一次应用于图像分离处理,其具有如下特征,底层的、简单的、鲁棒性的以及不同的均值漂移、聚类算法[3]。对于在无人驾驶车辆上的应用,我们首先通过分割及交互式的选择确定一个感兴趣的目标,然后当该目标在摄像机视野范围内移动时对其实施跟踪。设计均值漂移算法是用来寻找数据的众数(或者说数据高度集中区域的中心),而这些数据是由任意维向量表示的。该算法处理过程如下所示[7]。

●选择搜索窗口的半径

●选择窗口的初始位置(中心点)

●重复如下步骤

计算整个窗口数据点的均值,然后将窗口中心点平移到该均值点

●直到中心点的平移距离小于预设的阀值

特征空间中的高密度区域对应于在图像域中色彩/饱和度有限范围内拥有的足够大数量的像素。因此,这些像素就形成了连通区域(这种情况在相对平滑图像中是很常见的);该算法本质上就是为了找到在对比度/色彩上基本无变化的相对较大的连通区域(被人们理解

并定义的区域)。事实上,本算法是这样进行处理的,每一次随机地放置一个搜索窗口,找到相应的众数,然后将所有特征向量从特征空间移动到最终窗口中。因此,人们总是希望能够快速找到较大区域。

(a)一个320×240的彩色图像

(b)对应的RGB图像

(c)对应的Luv色彩空间

图1 图像,RGB和Luv之间的关系

在实现过程中,我们将通常在RGB色彩空间中呈现的像素映射到Luv色彩空间,Luv色彩空间有一个通过L表示的亮度分量和两个通过u和v表示的色度分量。通常认为后一个色彩空间等方性更好,因而更适合用在众数寻找算法中。最后,当我们定义了一个可变核,该可变核就会在显示跟踪结果时被约束在我们之前提到的矩形窗口中。

图1举例说明了图像和特征空间之间的关系。图2展示了分别在RGB与Luv空间中的分离结果。至少主观上,我们可以看到在这个实例中利用Luv参数化所带来的提升。通过Hume 编程语言将RGB映射到Luv的实现流程图如图3所示。图4是均值漂移分离算法的流程图。

(a)在RGB色彩空间中分离结果

(b)在Luv色彩空间中分离结果

图2 分离结果

图3 RGB到Luv的流程图(Hume)

图4 均值漂移分离算法流程图(Hume)

B. 均值漂移目标跟踪算法

在初始帧中,首先针对目标区域定义一个矩形窗口。然后在Luv 色彩空间中运用均值漂移算法,将跟踪目标从背景中分离出来。当目标移动时,利用独特的倒角距离变换加权内核来提升目标表示和定位的精度,同时利用Bhattacharyya 系数使两个颜色分布之间的距离最小化。在通过彩色图像序列跟踪目标的过程中,假设我们能够利用色彩空间中某一区域的样本离散分布将目标表示出来,并利用一个能够确定当前位置的内核进行定位。因此,我们就要找到函数ρ分布中的最大值。该函数是相对于之前的模版图像,在候选图像中目标位置(漂移)的函数,用来计算加权色彩分布之间的相似度。而Bhattacharyya 系数[8]

是重叠数量的估算值。如果能够得到相对密度p (x )和q ( x )的两组参数,则Bhattacharyya 系数定义如下: ()()p x q x d x ρ=⎰ (1) 因此,我们在处理从彩色图像中得到的离散采样数据时,我们就使用在模版和候选图像中应用以m 进制直方图存放的离散密度。模版图像的离散密度定义如下:

{}1,1,2,,1m

u u u q q u m q ===⋅⋅⋅=∑ (2)

同样地,在随后帧中的给定位置y 处,候选图像的预估直方图是:

()(){}1,1,2,,1m

u u u p y p y u m p ===⋅⋅⋅=∑ (3)

根据方程(1)的定义,Bhattacharyya 系数的样本估计定义如下:

()()()1,m

u u u y p y q p y q ρρ===⎡⎤⎣⎦∑ (4)

由色彩密度函数()f x 得到一组独立的随机样本{}12,,,n x x x ⋅⋅⋅。如果K 是标准的内核函数,那么内核密度估计由下式给出:

()()1n

n i i i q K X b X u δ==-⎡⎤⎣⎦∑ (5)

用这种方式估算色彩密度时,那么均值漂移算法就用来在目标帧中不断移动位置y ,以此来寻找Bhattacharyya 系数分布的众数(方程4)。围绕u p (0y )展开泰勒级数,则Bhattacharyya 近似为[8]

相关文档
最新文档