视频中的移动对象检测的制作方法

文档序号:11288946阅读:290来源:国知局
视频中的移动对象检测的制造方法与工艺

本公开总体上涉及视频处理,并且更具体地涉及视频中的移动对象检测。



背景技术:

检测视频中的诸如人物、汽车等移动对象在诸如智能视频监控、交通监控、车辆导航和人机交互等视频分析中起重要作用。在视频分析过程中,移动对象检测的结果可以被输入到如对象识别、对象跟踪、行为分析等模块中用于进一步处理。因此,移动对象检测的高性能是成功视频分析的关键。

在移动对象检测中,背景的检测是一个基本问题。在很多用于视频中的移动对象检测的传统方法中,由于改变的背景,检测精度受到限制。更具体地,如果视频场景的背景包括水波纹或晃动的树,则移动对象的检测容易出错。此外,背景中的照明变化、相机运动和/或其他类型的噪声也可能对移动对象检测产生负面影响。由于背景的变化,在传统解决方案中,背景的多个部分可能被分类为移动对象,而前景的多个部分可能被归类为背景。



技术实现要素:

总体上,本发明的实施例提供了一种用于视频中的移动对象检测的解决方案。

在一个方面,本发明的一个实施例提供了一种计算机实现的方法。该方法包括:以非线性方式将视频中的多个帧从初始图像空间转换到高维度图像空间;在高维度图像空间中对多个帧的背景建模;以及基于高维度图像空间中的多个帧的背景的建模来检测多个帧中的移动对象。

在另一方面,本发明的一个实施例提供一种计算机实现的装置。该装置包括:被配置为以非线性方式将视频中的多个帧从初始图像空间转换到高维度图像空间的图像转换器;被配置为在高维度图像空间中对多个帧的背景建模的建模器;以及被配置为基于高维度图像空间中的多个帧的背景的建模来检测多个帧中的移动对象的移动对象检测器。

通过以下描述,应当理解,根据本发明的示例实施例,视频中的帧可以被转换到非常高维度的图像空间中。通过使用更强大的用于描述诸如改变的背景、照明变化、相机运动、噪声等复杂因素的非线性模型,本发明的实施例对于在复杂的情况下检测移动对象更加鲁棒和准确。此外,本发明的实施例实现了较少的假警报和高检测率。

附图说明

图1示出了根据本发明的一个实施例的检测视频中的移动对象的方法的流程图;

图2a-图2c示出了通过传统方法和本发明的一个实施例获得的移动对象检测的结果;

图3示出了根据本发明的一个实施例的检测视频中的移动对象的装置的框图;以及

图4示出了适于实现本发明的示例实施例的示例计算机系统的框图。

在整个附图中,相同或相应的附图标记表示相同或相应的部分。

具体实施方式

现在将参考若干示例实现来讨论本发明的示例实施例。应当理解,这些实现被讨论,仅为了使本领域技术人员能够更好地理解并且从而实现本发明的实施例,而不是提出对本发明的范围的任何限制。

如本文中使用的,术语“包括”及其变型应当被视为开放性术语,其意思是“包括但不限于”。术语“或”应当被视为“和/或”,除非上下文另外明确指出。术语“基于”应当被视为“至少部分基于”。术语“一个实现方式”和“实现方式”应当被视为“至少一个实现方式”。术语“另一实现方式”应当被视为“至少一个其他实现方式”。术语“第一”、“第二”、“第三”等可以用于指代不同或相同的对象。下面可以包括其他显式和隐式定义。

传统上,使用线性模型来完成移动对象检测中的背景建模。线性模型的基本假设是背景遵循高斯分布。然而,发明人已经发现,在实践中通常不是这种情况。因此,线性模型无法充分地描述变化的背景、照明、像机运动、噪声等复杂因素。本发明的示例实施例使用非线性模型来对视频中的帧的背景建模。通过使用在描述复杂因素意义上比线性方法更好的非线性模型,可以提高视频中的移动对象检测的准确性和性能。

通常,通过将正被处理的视频的原始帧或图像转换或映射到较高维度空间中来实现背景的非线性建模。通过在该高维度图像空间中对转换后的帧的背景进行建模,可以有效和高效地进行初始背景的非线性建模。

为了讨论,定义如下多个符号。移动对象检测的输入是视频中的一系列帧或图像,表示为其中表示向量化图像,n表示帧中的像素的数目,t表示被考虑的帧的数目。在下文中,术语“图像”和“帧”可以可互换地使用。

目的是找到帧xt中的(多个)移动对象或前景的位置。在本公开的上下文中,术语“前景”和“移动对象”可以可互换地使用。在一个实施例中,前景位置的定位由前景指示符向量s∈{0,1}n来表示。s的像素i是si,其等于0或1,其中si=1表示帧xt中的像素i是前景,而si=0表示帧xt中的像素i是背景。也就是,

可以根据前景指示符向量来确定前景的像素值:

其中ps表示前景提取算子。为了讨论,前景提取算子可以表示为背景的像素值也可以根据前景指示符向量来确定:

其中表示背景提取算子。为了讨论,背景提取算子可以表示为

现在将讨论本发明的一些示例实施例。首先对图1进行参考,图1示出了检测视频中的移动对象的方法100的流程图。根据本发明的实施例,视频可以是任何合适的格式。视频可以通过目前已知的或将来开发的任何合适的技术被压缩或编码。

如图所示,方法100在步骤110进入,在步骤110,以非线性方式将视频中的多个帧[xt-t,xt-t-1,...,xt-2,xt-1,xt]转换到高维度图像空间中。根据本发明的实施例,高维度图像空间的维度m可以非常高。理论上,维度甚至可以无限大。例如,在一个实施例中,可以选择m的值使得m远大于每帧中的像素的数目。以这种方式,可以更好地表征和建模低维度图像空间中的帧之间的非线性相关性。

在一个实施例中,为了转换帧,可以使用被表示为φ的非线性转换或映射函数。可以结合本发明的实施例来使用任何合适的映射函数。具体地,在一个实施例中,可以使用满足mercer定理的映射函数以保证转换的紧凑性和收敛性。

通过应用映射函数,将初始图像空间中的帧转换到高维度图像空间中,从而获得多个转换后的帧[φ(xt-t),…,φ(xt-1),φ(xt)]。具体地,在一个实施例中,通过选择用于映射函数φ(x)的适当参数,转换后的帧[φ(xt-t),…,φ(xt-1),φ(xt)]可以是线性的,并且因此可以更容易地描述,这将在下面讨论。然而,应当理解,转换后的帧[φ(xt-t),…,φ(xt-1),φ(xt)]在高维度图像空间中不一定是线性的。本发明的范围在这方面不受限制。

具体地,在一个实施例中,可以将帧转换到高维度图像空间中而不显式地定义映射函数。例如,在一个实施例中,可以通过使用适当的核函数来描述转换后的帧及其建模。下面将讨论这方面的示例实施例。

然后,方法100进行到步骤120,其中在高维度图像空间中对多个帧的背景进行建模。

传统上,假设帧的背景遵循高斯分布,并且因此通过线性转换矩阵来对其建模,其中d表示基数,并且ui是第i基向量。在这种传统方法中,背景的表示由下式给出:

其中表示背景,u′表示u的转置矩阵。因此,背景近似如下:

从等式(4)和(5)可以看出,背景和基向量之间的关系总是线性的。然而,帧[xt-t,xt-t-1,...,xt-2,xt-1,xt]可能不是线性的,例如,在存在变化的背景、照明、相机运动、噪声等的情况下。本发明人的实验已经发现,传统的线性模型不能鲁棒地描述这种复杂因素。不准确的背景建模又会降低前景中的移动对象的检测率。

相反,根据本发明的实施例,初始帧在步骤110被转换到高维度图像空间中,并且在步骤120在具有非常高的维度的图像空间中被建模。这样,实现了初始帧的背景的非线性建模。就此而言,帧的相关性可以更好地被表征,从而更准确地标识背景和前景(移动对象)。

具体地,如上所述,在一个实施例中,转换后的帧在高维度图像空间中可以是线性的。在本实施例中,基向量uj可以如下计算为转换后的帧的背景的线性和:

其中表示高维度图像空间中的转换后的帧的背景部分,并且其中表示系数。为了讨论,定义了也就是说,在此实施例中,通过在高维度图像空间中使用线性模型对转换后的帧的背景进行建模或近似来实现帧的背景的非线性建模。

这些基向量uj一起形成线性转换矩阵因此,高维度图像空间中每个转换后的帧的背景可以如下表示:

其中表示系数向量。

应当理解,在操作效率和计算复杂性方面,在高维度图像空间中使用线性模型对转换后的帧的背景进行建模将是有益的。但是,这并不是必需的。在备选实施例中,可以在高维度图像空间中使用任何非线性模型来近似转换后的帧的背景。

仍然参考图1,方法100进行到步骤130,其中基于高维度图像空间中的帧的背景的建模来检测一个或多个移动对象(前景)。

在一个实施例中,在步骤130,可以基于在步骤120的建模来定义目标函数。更具体地,目标函数至少表征帧的背景的建模或近似中的误差。作为示例,在以线性方式对转换后的帧的背景建模的实施例中,目标函数可以如下定义:

将等式(6)代入等式(8)得到:

在一些实施例中,可以在目标函数中使用一个或多个其他相关因子。例如,在一个实施例中,可以考虑前景(移动对象)的面积。通常,期望每帧中的移动对象的面积低于预定义的阈值,因为太大的移动对象可能表示不准确的检测。在一个实施例中,面积项可以由下式给出:

larea=||s||1,(10)

其中||·||1表示1-范数算子。

另外地或备选地,在一个实施例中,可以考虑多个帧上的移动对象的连接性。应当理解,移动对象的轨迹在两个相连帧之间通常是连续的。为了测量对象连接性,在一个实施例中,连接性可以如下定义:

其中n(i)是像素i的邻居集合。

在一个实施例中,可以如下将建模误差、前景面积和连接性组合在一起以如下定义目标函数:

l=lbackground+βlarea+γlconnectivity,(12)

其中β和γ表示权重并且可以根据具体的要求和用例来设置。通过将等式(9)、(10)和(11)代入等式(12),目标函数表示为:

应当理解,仅为了说明的目而讨论等式(13)中所示的目标函数,而不提出对本发明的范围的任何限制。在其他实施例中,可以在目标函数中使用任何附加或备选因子。此外,如上所述,可以简单地使用近似误差lbackground作为目标函数。

在一个实施例中,可以通过使目标函数最小化来检测帧的背景。为此,在一个实施例中,可以直接求解可以最小化目标函数l的前景指示符向量s、系数和低维度表示yi。然而,实际上,有时难以直接找到最优解。为了提高效率并且降低计算复杂度,在一个实施例中,可以使用与高维度图像空间相关联的核函数来解决该优化问题。

更具体地,给定诸如等式(13)中所示的目标函数,目的是求解当s和yi固定时的在一个实施例中,可以使用核主成分分析(kpca)来完成该任务。定义了t×t的核矩阵k,其中第ij元素由核函数表示

kij=k(xi,xj)。(14)

核函数可以是任何形式,只要所得到的核矩阵k是半正定的。在一个实施例中,核函数的示例如下所示:

其中σ是可以凭经验选择的参数。应当理解,等式(15)中所示的核函数仅仅出于说明的目的被给出,而没有对本发明的范围提出任何限制。在其他实施例中,也可以使用诸如高斯核函数、径向基函数等任何合适的核函数。

在一个实施例中,可以通过求解以下特征分解问题来实现目标函数的优化:

kα=λα,(16)

其中λ和α分别表示特征值和特征向量。应当理解,存在总共d个特征值λ1,...,λd。在一个实施例中,可以按升序排列特征值,使得λ1>λ2>…λd。特征向量αi对应于特征值λi。αi的元(entry)j是

给定s和可以求解被表示为yi的的低维度版本。也就是说,yi是低维度图像空间中的初始帧的背景。在一个实施例中,yi表示如下:

将等式(6)代入等式(17)得到:

从等式(18)可以看出,可以通过使用核函数来确定yi,而无需明确地定义或应用映射函数。

接下来,在yi和固定的情况下,可以求解s。更具体地,可以从等式(13)确定yi的第j元素是yi。因此,在一个实施例中,背景近似误差lbackground被写为:

其中等式(19)可以通过核函数来计算,因为

因此,等式(19)可以如下被公式化为核函数形式的项:

其中cij表示系数,c表示与数据无关的常数。因此,使用核函数将目标函数的至少一部分(即近似误差lbackground)和帧的背景相关联。

在一个实施例中,如上所述,例如,可以通过在等式(1)中定义的前景指示符s来标识或指示帧中的前景和背景部分。基于等式(21),在一个实施例中,可以至少部分地通过前景指示符来表达目标函数。也就是说,借助于核函数,可以将目标函数与和多个帧中的每个帧中的每个像素相关的前景指示符相关联,其中前景指示符指示相关像素是否属于移动对象(前景)。

为了讨论,假设核函数是等式(15)的形式。通过使用泰勒扩展,可以将核函数近似为:

其中xiz表示帧i中的像素z的值。通过将等式(22)代入等式(23),如等式(19)中定义的lbackground可以表示如下:

其中应当理解,c′是常数,并且因此可以从等式(24)中去除。结果,lbackground表示为:

为了讨论,假设目标函数是等式(13)的形式。也就是说,除了lbackground之外,目标函数还包括与移动对象的面积和连接性有关的项。基于等式(24)和(13),目标函数l可以写为:

其中sz是s的元z。可以看出,等式(26)是图形切割的标准形式。在一个实施例中,通过使用众所周知的图形切割算法,可以有效地获得最佳解s。

在使用核函数的一个实施例中,方法100可以通过下表中所示的伪代码来实现。

表1

应当理解,表1中的伪代码被给出仅用于说明的目的,而没有对本发明的范围提出任何限制。在实践中,可以进行各种修改或变化。

通过使用更强大的用于描述诸如改变的背景(例如,水波纹和晃动的树)、照明变化、相机运动、噪声等复杂因素的非线性模型,本发明的实施例对于在复杂的情况下检测移动对象更加鲁棒和准确。所提出的方法实现了较少的假警报和高检测率。

图2a-图2c示出了移动对象检测的示例。图2a示出了具有动态雨状水点的视频中的帧。图2b是移动对象检测的传统方法的结果。在图2b中可以看出,喷水被错误地分类为移动对象。相反,在通过如图2c所示的本发明的一个实施例获得的结果中,喷水从前景被移除,并且移动的人被正确地检测到。

图3示出了根据本发明的一个实施例的用于移动对象检测的计算机实现的装置的框图。如图所示,装置300包括被配置为以非线性方式将视频中的多个帧从初始图像空间转换到高维度图像空间的图像转换器310;被配置为在高维度图像空间中对多个帧的背景建模的建模器320;以及被配置为基于高维度图像空间中的多个帧的背景的建模来检测多个帧中的移动对象的移动对象检测器330。

在一个实施例中,高维度图像空间的维度大于多个帧中的每个帧中的像素的数目。

在一个实施例中,建模器320可以包括被配置为在高维度图像空间中使用线性模型对多个转换后的帧的背景建模的非线性建模器325,多个转换后的帧通过以非线性方式对多个帧进行转换而被获得。

在一个实施例中,装置300还可以包括被配置为确定表征多个帧的背景的建模的误差的目标函数的目标函数控制器340。在本实施方式中,移动对象检测器330被配置为基于目标函数来检测移动对象。

在一个实施例中,目标函数还可以表征以下中的至少一项:多个帧中的移动对象的面积以及跨多个帧的移动对象的连接性。

在一个实施例中,装置300还可以包括被配置为确定与高维度图像空间相关联的核函数集合的核函数控制器350。在此实施例中,目标函数控制器340被配置为使用核函数集合将目标函数的至少一部分与多个帧的背景相关联,并且移动对象检测器330被配置为通过最小化目标函数来检测移动对象。

在一个实施例中,目标函数控制器340被配置为使用核函数集合来将目标函数与和多个帧中的每个帧中的每个像素相关的前景指示符相关联,其中前景指示符指示相关像素是否属于移动对象。

图4示出了适用于实现本发明的示例实施例的示例计算机系统400的框图。计算机系统400可以是固定类型的机器,诸如台式个人计算机(pc)、服务器、主机等。备选地,计算机系统400可以是移动类型的机器,诸如移动电话、平板pc、膝上型计算机、智能电话、个人数字助理(pda)等。

如图所示,计算机系统400包括诸如中央处理单元(cpu)401等处理器,其能够根据存储在只读存储器(rom)402中的程序或从存储单元408加载到随机存取存储器(ram)403中的程序来执行各种处理。在ram403中,还根据需要存储在cpu401执行各种处理等时所需的数据。cpu401、rom402和ram403经由总线404彼此连接。输入/输出(i/o)接口405也连接到总线404。

以下部件连接到i/o接口405:输入单元406,包括键盘、鼠标等;输出单元407,包括诸如阴极射线管(crt)、液晶显示器(lcd)等的显示器以及扬声器等;存储单元408,包括硬盘等;以及通信单元409,包括网络接口卡,诸如lan卡、调制解调器等。通信单元409经由诸如互联网等网络进行通信处理。驱动器410也根据需要连接到i/o接口405。诸如磁盘、光盘、磁光盘、半导体存储器等可移除介质411根据需要安装在驱动器410上,从而从其中读取的计算机程序根据需要被安装到存储单元408中。

具体地,根据本发明的示例实施例,上面参照图1和表1描述的处理可以由计算机程序来实现。例如,本发明的实施例包括计算机程序产品,其包括在机器可读介质上有形地实施的计算机程序,计算机程序包括用于执行方法100的程序代码和/或表1所示的伪代码。在这样的实施例中,可以经由通信单元409从网络下载和安装计算机程序和/或从可移除介质411安装计算机程序。

至少一部分地由一个或多个硬件逻辑部件来执行本文中描述的功能。例如而非限制,可以使用的说明性类型的硬件逻辑部件包括现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、系统上芯片系统(soc)、复杂可编程逻辑器件(cpld)等。

本发明的各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。一些方面可以以硬件来实现,而其他方面可以以可以由控制器、微处理器或其他计算设备执行的固件或软件来实现。虽然本发明的实施例的各个方面被示出和描述为框图、流程图或使用一些其他图形表示来示出和描述,但是应当理解的是,作为非限制性示例,本文中描述的框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器、或者其他计算设备、或其某种组合来实现。

作为示例,可以在实际或虚拟目标处理器上的设备中执行的机器可执行指令(诸如被包括在程序模块中的指令)的一般上下文中描述本发明的实施例。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。程序模块的功能在各种实现中可以根据需要在程序模块之间组合或分开。用于程序模块的机器可执行指令可以在本地或分布式设备中执行。在分布式设备中,程序模块可以位于本地和远程存储介质中。

用于执行本发明的方法的程序代码可以以一种或多种编程语言的任何组合来编写。这些程序代码可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器或控制器,使得程序代码在由处理器或控制器执行时引起在流程图和/或框图中规定的功能/操作被实现。程序代码可以完全在机器上执行,部分地在机器上执行,作为独立的软件包执行,部分地在机器上并且部分地在远程机器上执行,或者完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是可以包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子、磁性、光学、电磁、红外或半导体系统、装置或设备、或上述的任何合适的组合。机器可读存储介质的更具体示例包括具有一条或多条电线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程读取(eprom或闪速存储器)、光纤、便携式光盘只读存储器(cd-rom)、光存储设备、磁存储设备、或上述的任何合适的组合。

此外,虽然以特定的次序描绘操作,但是这不应被理解为要求以所示的特定次序或顺序执行这样的操作,或者执行所有所示的操作以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。同样地,虽然上述讨论中包含若干具体的实现细节,但是这些不应当被解释为对本发明的范围的限制,而是对可以特定于特定实现方式的特征的描述。在单独实现的上下文中描述的某些特征也可以在单个实现方式中组合地实现。相反,在单个实现方式的上下文中描述的各种特征也可以在多个实现方式中分开地或以任何合适的子组合来实现。

虽然已经以特定于结构特征和/或方法动作的语言描述了本发明,但是应当理解,在所附权利要求中定义的本发明不必限于上述具体的特征或动作。相反,上述具体的特征和动作被公开作为实现权利要求的示例形式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1