CN107077738B - 用于跟踪对象的***和方法 - Google Patents
用于跟踪对象的***和方法 Download PDFInfo
- Publication number
- CN107077738B CN107077738B CN201580058529.1A CN201580058529A CN107077738B CN 107077738 B CN107077738 B CN 107077738B CN 201580058529 A CN201580058529 A CN 201580058529A CN 107077738 B CN107077738 B CN 107077738B
- Authority
- CN
- China
- Prior art keywords
- characteristic point
- electronic device
- frame
- detection
- prediction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明描述一种用于通过电子装置跟踪对象的方法。所述方法包含检测初始帧中的对象位置以产生检测的对象位置。所述方法还包含基于所述检测的对象位置或预测的对象位置测量一或多个特征点位置。所述方法进一步包含基于所述一或多个特征点位置预测后续帧中的所述对象位置。所述方法另外包含确定是否失去对象跟踪。所述方法还包含在维持对象跟踪的情况下,避免执行针对所述后续帧的对象检测。
Description
技术领域
本发明大体涉及电子装置。更具体地说,本发明涉及用于跟踪对象的***和方法。
背景技术
在最近几十年中,电子装置的使用已变得普遍。明确地说,电子技术的进步已减少了日益复杂且有用的电子装置的成本。成本减少和消费者需求已使电子装置的使用剧增,使得其在现代社会中实际上随处可见。由于电子装置的使用已展开,因此具有对电子装置的新且改善特征的需求。更具体地说,人们常常寻求执行新功能和/或更快、更高效或更可靠地执行功能的电子装置。
一些电子装置利用图像。举例来说,智能电话可捕获和处理数字图像。然而,处理图像可涉及需要大量资源(例如,时间和电力)的复杂操作。如从此论述可观测到,改善图像处理的***和方法可为有益的。
发明内容
描述一种用于通过电子装置跟踪对象的方法。所述方法包含检测初始帧中的对象位置以产生检测的对象位置。所述方法还包含基于所述检测的对象位置或预测的对象位置测量一或多个特征点位置。所述方法进一步包含基于所述一或多个特征点位置预测后续帧中的所述对象位置。所述方法另外包含确定是否失去对象跟踪。所述方法还包含在维持对象跟踪的情况下,避免执行针对所述后续帧的对象检测。确定是否失去对象跟踪可基于一或多个特征点位置中的至少一个和对象位置预测。所述方法可在单个图像序列时对一个帧操作。
对象位置检测与对象位置预测可独立。预测所述对象位置可基于来自前一帧的一或多个特征点位置。可预定义所述特征点位置的结构。所述特征点位置可在所述对象的结构内。
在预测期间可利用速度模型,且在测量期间可利用位移模型。所述速度模型和位移模型中的每一个可对应于所述对象的结构。所述速度模型和所述位移模型可不包含任何硬性约束。
所述方法可包含针对从前一帧的特征点的对象位置预测训练速度模型。所述方法可包含针对从在当前帧处的预测的边界框位置或从在所述当前帧处的检测的边界框位置的特征点测量训练位移模型。
还描述一种用于跟踪对象的电子装置。所述电子装置包含处理器和与所述处理器电子通信的存储器。所述电子装置还包含存储于所述存储器中的指令。所述指令可由所述处理器执行以检测初始帧中的对象位置以产生检测的对象位置。所述指令也可由所述处理器执行以基于所述检测的对象位置或预测的对象位置测量一或多个特征点位置。所述指令进一步可由所述处理器执行以基于所述一或多个特征点位置预测后续帧中的所述对象位置。所述指令另外可由所述处理器执行以确定是否失去对象跟踪。所述指令也可由所述处理器执行以在维持对象跟踪的情况下避免执行对于所述后续帧的对象检测。
还描述了一种用于跟踪对象的计算机程序产品。所述计算机程序产品包含具有指令的非暂时性有形计算机可读媒体。所述指令包含用于使电子装置检测初始帧中的对象位置以产生检测的对象位置的代码。所述指令还包含用于使所述电子装置基于所述检测的对象位置或预测的对象位置测量一或多个特征点位置的代码。所述指令进一步包含用于使所述电子装置基于所述一或多个特征点位置预测后续帧中的所述对象位置的代码。所述指令另外包含用于使所述电子装置确定是否失去对象跟踪的代码。所述指令还包含用于使所述电子装置在维持对象跟踪的情况下避免执行针对所述后续帧的对象检测的代码。
还描述一种用于跟踪对象的设备。所述设备包含用于检测初始帧中的对象位置以产生检测的对象位置的装置。所述设备还包含用于基于所述检测的对象位置测量一或多个特征点位置的装置。所述设备进一步包含用于基于所述一或多个特征点位置预测后续帧中的所述对象位置的装置。所述设备另外包含用于确定是否失去对象跟踪的装置。所述设备还包含用于在维持对象跟踪的情况下避免执行针对所述后续帧的对象检测的装置。
附图说明
图1为说明可实施用于跟踪对象的***和方法的电子装置的一个配置的框图;
图2为说明用于跟踪对象的方法的一个配置的流程图;
图3为说明用于跟踪对象的方法的更具体配置的流程图;
图4为说明用于跟踪对象的方法的另一更具体配置的流程图;
图5为说明用于训练预测对象位置的方法的一个配置的流程图;
图6包含说明一组特征点的分布的曲线图;
图7包含说明特征点运动的三个实例;
图8包含特征点图;
图9为说明基于从对象检测器获得的预测的对象位置或边界框的特征点测量的一个实例的图;
图10为说明用于本文中揭示的***和方法的验证的结果的一个实例的曲线图;
图11为说明用于本文中揭示的***和方法的盲测试的结果的一个实例的曲线图;
图12包含说明用于跟踪脸的已知方法的两个流程图;
图13为说明可实施用于跟踪对象的***和方法的无线通信装置的一个配置的框图;
图14说明可包含在电子装置内的某些组件;以及
图15为说明用于训练用于特征点测量的位移模型的方法的一个配置的流程图。
具体实施方式
本文中描述用于跟踪对象的***和方法。举例来说,本文中揭示的***和方法可针对跟踪一系列图像中的一或多个对象(例如,视频、单眼视频等)而实施。在一些配置中,可经由依序采样滤波器的控制的级联执行跟踪。
在已知方法中,对象跟踪机构需要组合对象检测器与如卡尔曼滤波器、粒子滤波器或平均移位滤波器的跟踪滤波器以便维持时间平滑度和改善准确性。这些方法可能需要高的计算需求,因为在多个分辨率和各种姿态下的对象检测是花钱非常多的任务。
在一些配置中,依序采样滤波器的控制的级联可用以克服此问题。本文中揭示的***和方法不需要始终或定期使用对象检测器。在一些配置中,本文中揭示的***和方法可通过使用对象检测器而开始,且接着后来可仅依赖于跟踪机构(例如,只要不失去跟踪)。此外,本文中揭示的***和方法可智能且自动地检测是否已失去考虑中的对象。在此情况下,跟踪可使用对象检测器自动重新初始化,且接着继续跟踪。本文中揭示的***和方法的一些配置可为自动的,且不需要任何手动干预。本文中可使用人脸作为实例对象来描述概念中的一些。然而,应注意,本文中所揭示的***和方法可应用于其它对象。举例来说,本文中揭示的***和方法可应用于具有可辨识特征点的结构或图案的任一对象。本文中也提出分析、比较和测试。
本文中揭示的***和方法可实现特征点跟踪。特征点为对象或形状上的位置或点。在一些配置中,可针对特定对象定义一组特征点。举例来说,用于一或多个脸的一组特征点可包含眼角、虹膜、唇角、鼻角、耳角、面部轮廓点等。应注意,可在其它情境中使用本文中揭示的***和方法。举例来说,一组特征点可包含在可变形或不可变形形状或对象(例如,人脸、全部人体、框、三角形、字母、汽车等)上的一组顶点。
在一些配置中,本文中揭示的***和方法可应用于面部跟踪。假定检测脸,可针对许多应用利用定位对应的密集面部特征点。应用的实例包含自动聚焦、白平衡、面部辨识、脸变换和/或变形(例如,美化)、针对自身有关应用的脸定向估计、基于模型的视频译码和基于化身的视频电话等。本文中揭示的***和方法有利地与已知方法比较。
针对面部跟踪的问题定义描述如下。当脸正在图像(例如,视频)中移动时,对其强加各种变换。变换可包含全局转化、全局缩放和仿射变换(例如,全局旋转和局部运动或变形)。在使用标准跟踪方法(例如,粒子滤波器、卡尔曼滤波器等)中的一些跟踪脸过程中,始终需要使用脸检测器。这可致使计算成本非常高。此外,在已知方法中输出的脸检测器在时间上可能不平滑。用于跟踪脸的另一已知方法(例如,光流)可必须定期使用脸检测器。
本文中揭示的***和方法的一些配置可通过依序采样滤波器的控制的级联来解决这些问题。利用控制的依序采样滤波器的方法可包含预测、测量和控制的一或多个方面。
现在参看图描述各种配置,其中相似参考数字可以指示功能上类似的元件。可以广泛多种不同配置来布置和设计如本文中在各图中大体描述和说明的***和方法。因此,对如各图中所表示的若干配置的以下更详细描述并不希望限制如所主张的范围,而仅表示***和方法。
图1为说明可实施用于跟踪对象的***和方法的电子装置102的一个配置的框图。电子装置102的实例包含智能手机、相机(例如,静态相机、摄像机等)、计算机(例如,台式计算机、手提电脑等)、平板电脑装置、蜂窝式电话、电视、游戏***、电器等。电子装置102可包含图像获得模块104、对象检测模块106、特征点测量模块108、跟踪失去确定模块110和/或对象预测模块112。“模块”可以硬件(例如,电路***)或硬件与软件的组合(例如,处理器与指令)来实施。模块104、106、108、110、112中的一或多个可实施于***中。
图像获得模块104可获得图像(例如,数字图像)。举例来说,图像获得模块104可使用一或多个图像传感器和/或相机来捕获一或多个图像(例如,视频)。图像传感器和/或相机可包含于电子装置102中和/或耦合到电子装置102。另外或替代地,图像获得模块104可从另一装置(例如,存储卡、外部存储装置、网络相机、数码相机、智能电话、计算机、摄像机等)接收一或多个图像(例如,视频)。所述一或多个图像可为视频帧。举例来说,由图像获得模块104获得的一或多个图像中的每一图像可为一连串图像(例如,视频)中的帧。
电子装置102可对初始帧执行一或多个操作。“初始帧”可为一连串帧或图像(例如,视频)中的初始帧或图像。对象检测模块106可检测初始帧中的对象位置以产生检测的对象位置。举例来说,对象检测模块106可确定指示对象的位置和大小的边界框的位置(例如,中心点)和大小。一些对象检测器在此项技术中是已知的。对于脸,实例包含维奥拉-琼斯(Viola-Jones)检测器、OMRON脸检测器和其它。对于一般对象检测器,实例包含像可适于各种对象(例如,人、自行车、汽车等)的可变形部分模型的方法。这些方案可计算在各种图像位置中的特征描述符(例如,梯度正负号的直方图(HSG)、定向梯度的直方图(HOG)、尺度不变特征变换(SIFT)、加速的稳固特征(SURF)、梯度位置和定向直方图(GLOH)、词包BoW)等)。这些方案可使用机器学习方法(例如,支持向量机、增压、动态编程等)发现最可能对应于研究中的对象的位置。
对于初始帧,特征点测量模块108可基于检测的对象位置测量一或多个特征点位置。举例来说,特征点测量模块108可确定对应于图像中的对象的一组特征点的位置。在一些配置中,测量一或多个特征点位置可基于由对象检测模块106确定的边界框。举例来说,在初始帧中或在失去跟踪的帧中,对象检测模块106可确定边界框。边界框可用以测量一或多个特征点位置。在一些配置中,在维持跟踪的帧中(例如,在初始帧后的一或多个帧中),对象检测模块106可不执行对象检测。在此情况下,可基于由(例如)对象预测模块112确定的边界框测量特征点。
在一些配置中,跟踪失去确定模块110可不针对初始帧确定是否失去对象跟踪。在初始帧中,例如,可能未失去跟踪,因为对象检测正由对象检测模块106(例如,对象检测器)执行。
电子装置102可针对一或多个后续帧(例如,在初始帧后的一或多个帧)执行一或多个操作。对象预测模块112可基于一或多个特征点位置预测后续帧中的对象位置。举例来说,对象预测模块112可确定在时间k的帧中的脸位置(给定其先前特征点位置(例如,在帧k-1中)。在一些配置中,可根据等式(1)进行对象位置预测。
pk=g(pk-1)+ε=wT·f(lk-1)+ε (1)
如本文中所使用,p为对象位置向量(例如,脸位置向量、脸边界框的中心等),l为特征点位置向量,f和g为非线性函数,ε为过程噪声,w为权向量,T表示转置算子,且k为帧号。
在一些配置中,对象预测模块112可根据以下来预测对象位置(例如,脸边界框)。倘若给定前一帧中的其特征点的估计,目标为估计新对象位置(例如,脸位置)。可如在等式(2)中所提供来假定以下非线性速度模型。
lk=f(lk-1)=lk-1+M(lk-1)·Φ(lk-1)·Δk+ε (2)
如本文中所使用,ε表示过程噪声,k为时间或帧号,且Δk为帧的时间步或数目(在一些配置中,其可为1)。每一特征点的位移Δlk为在特征点处的特征描述符Φ(lk-1)乘以M(lk-1)的函数,其表示从时间k-1到时间k的特征点的速度模型。特征描述符的实例可包含梯度正负号的直方图(HSG)、定向梯度的直方图(HOG)、尺度不变特征变换(SIFT)、霍夫变换、加速的稳固特征(SURF)、梯度位置和定向直方图(GLOH)等。量M(lk-1)·Φ(lk-1)·Δk可表示像素中的位移Δlk,且量M(lk-1)·Φ(lk-1)可表示速度(以像素/时间步Δk计)。
此表达式的一个问题为,lk和M(lk-1)可为未知的。对此问题的一个解决方案为,如果假定lk通过注释的数据已知,那么可离线获悉M(lk-1)。举例来说,可通过(例如)解决等式(3)在训练期间获得M(lk-1)。
如本文中所使用,γ为预指派的加权因数且|| ||2表示范数。应注意,可替代地利用具有最小值的其它成本函数(例如,使用范数或绝对值替代平方范数,等)。关于训练的额外细节在以下结合图5到8给出。
如下给出关于HSG特征描述符的更多细节。如上所述,HSG为可根据本文中揭示的***和方法利用的特征描述符的一个实例。HSG的基本理念是在标准正交基础中使用边缘组分的正负号。举例来说,可计算(例如,使用索贝尔算子、莎丽算子或另一方法)图像的梯度(例如,图像帧)。边缘正负号组分中的每一个可为正或负。因此,对于两个方向边缘(例如,尺寸),每个像素存在四个可能性。明确地说,每一维度中的每个像素的梯度可具有正负号(正“+”或负“-”)。可以四个不同值来译码这些(例如,--译码为0,+-译码为1,++译码为2,且-+译码为3)。在一些配置中,可译码额外维度(例如,45度)。
特征点测量模块108可测量一或多个特征点位置(例如,在基于预测的脸位置的后续帧中)。在一些配置中,倘若给定预测的对象位置,特征点测量模块108可根据等式(4)测量特征点的新位置。
lk=h(pk)+σ (4)
如本文中所使用,h为非线性函数,且σ为过程噪声。
在一些配置中,可根据以下来测量一或多个特征点。通过预测的对象位置(例如,边界框),可从平均形状(ms)开始测量一或多个特征点(例如,面部特征点)。可如在等式(5)中所提供来假定非线性位移模型。
lk=h(pk)=lk,ms+U(lk,ms)·Φ(lk,ms)+σ (5)
如本文中所使用,σ表示过程噪声,lk,ms为在帧k中的平均形状(ms)处的特征点位置,且U(lk,ms)为特征点从在预测的边界框处的平均形状位置的位移模型。应注意,可进行与在针对训练和在线测量的预测中类似的导出。举例来说,可如结合图15所描述来训练位移模型。
在一些配置中,可针对特征点测量来训练位移模型。举例来说,可基于在当前帧(例如,图像)处的预测的对象位置(例如,预测的边界框位置)或基于在当前帧(例如,图像)处的测量或检测的对象位置(例如,检测的边界框位置)针对特征点测量训练位移模型。测量或检测的边界框位置可由对象检测模块106(例如,对象检测器)提供。预测的边界框位置可由对象预测模块112提供。因此,可通过使用训练的速度模型(例如,来自等式(2))从检测的对象位置或预测的对象位置测量特征点。
在一些配置中,位移和/或速度模型中的任一个的训练可由电子装置102执行。举例来说,电子装置102可包含可与结合图1描述的模块中的一或多个分开或包含于所述模块中的一或多个内的位移模型训练模块。在一些配置中,可如结合图9和15中的一或多个所描述来训练用于特征点测量的位移模型。另外或替代地,电子装置102可包含可与结合图1描述的模块中的一或多个分开或包含于所述模块中的一或多个内的速度模型训练模块。在一些配置中,可如结合图5所描述来训练用于对象位置预测的速度模型。
跟踪失去确定模块110可确定是否失去对象跟踪。这可通过估计是否失去跟踪来提供控制的方面。举例来说,跟踪失去确定模块110可确定一或多个特征点位置是否可能对应于对象。在一些配置中,跟踪失去确定模块110可确定一或多个特征点位置中的一或多个与对应于对象的结构的统计模型一致的程度。如果一或多个特征点位置反映与模型一致的低概率,那么跟踪失去确定模块110可确定已失去跟踪。举例来说,跟踪失去确定模块110可确定一致的概率低于概率阈值。
在一些配置中,统计模型可基于对应于一或多个特征点属性(例如,特征点的局部运动、形状动力学的统计等)的一或多个统计分布。举例来说,模型可基于全局转化的分布、全局尺度的分布和/或全局旋转的分布。举例来说,模型可基于对于全局转化假定15%标准差的高斯分布,和对于全局尺度假定5%标准差的高斯分布。在一些实施方案中,如果当前帧中的特征点指示大于15%的全局转化和/或大于5%的全局缩放,那么跟踪失去确定模块110可确定已失去跟踪。
在维持对象跟踪(例如,不失去)的情况下,电子装置102可避免执行针对后续帧的对象检测。举例来说,如果维持对象跟踪,那么电子装置102(例如,对象检测模块106)可不执行针对后续帧的对象检测。以此方式,举例来说,当维持跟踪时,可利用对象位置预测,替代对象位置检测。此方法可提供改善的准确性,并伴有良好的效率。
在失去跟踪的情况下,对象检测模块106可检测(例如,重新检测)对象位置(例如,脸位置)。举例来说,在失去对象跟踪的情况下(例如,如果跟踪失去确定模块110指示失去对象跟踪),那么对象检测模块106可检测后续帧中的对象位置。
与已知方法相比,本文中揭示的***和方法可提供如下描述的一或多个截然不同的特征。在一些配置中,对象检测与对象预测是独立的。举例来说,可不针对对象预测已维持对象跟踪的帧执行对象位置检测。因此,只要维持对象跟踪,那么在初始帧后可不执行对象检测。此外,对象检测可替换针对失去对象跟踪的帧的对象预测。举例来说,对象预测或对象检测中的仅一个将最终提供用于每一帧中的特征点测量的对象位置(例如,pk)。因此,对象检测模块106(例如,脸检测器)可只在需要时调用。另一截然不同的特征可为,电子装置102(例如,跟踪失去确定模块110)可检测是否失去对象跟踪。另一截然不同的特征可为,特征点可用于对象位置预测(例如,脸姿态预测)。
图2为说明用于跟踪对象的方法200的一个配置的流程图。方法200可由电子装置102执行。电子装置102可检测202初始帧中的对象位置以产生检测的对象位置。这可如上结合图1所描述来实现。
电子装置102可测量204一或多个特征点位置。这可如上结合图1所描述来实现。举例来说,在初始帧中,电子装置102可基于检测的对象位置测量204一或多个特征点位置。举例来说,在维持对象跟踪的后续帧中,电子装置102可基于预测的对象位置测量204一或多个特征点位置。举例来说,在失去对象跟踪的后续帧中,电子装置102可基于检测的(例如,重新检测的)对象位置测量204一或多个特征点位置。
在一些配置中,特征点位置可在对象的结构内。举例来说,每一特征点位置可与结构(例如,面部结构、形状等)上的特定点相关联。可预定义所述特征点位置的结构。举例来说,可在起始对象跟踪前预定义特定结构(例如,面部结构、形状等)。具体地说,可在执行阶段前针对跟踪预定义某一结构(例如,面部结构、虹膜、手、框、三角形、图案等)。
电子装置102可基于一或多个特征点位置预测206后续帧中的对象位置。这可如上结合图1所描述来实现。举例来说,电子装置102可基于特征点位置和和权向量的非线性函数来预测206对象位置(例如,脸位置向量、边界框等)。预测206对象位置可基于来自前一帧(例如,k-1)的一或多个特征点位置。
电子装置102可确定208是否失去对象跟踪。这可如上结合图1所描述来实现。确定208是否失去对象跟踪可基于一或多个特征点位置和/或对象位置预测。举例来说,电子装置102可确定一或多个特征点属性(例如,全局转化、全局尺度、全局旋转等)是否超出一或多个阈值(例如,大于15%的全局转化和/或大于5%的全局缩放)。另外或替代地,电子装置102(例如,跟踪失去确定模块110)可确定预测的对象位置对应于对象的组合概率(例如,基于全局转化、全局尺度和/或全局旋转等)。替代地,举例来说,可基于预测的对象位置从测量的特征点确定组合概率。如果组合概率高于(例如,大于或等于)概率阈值,那么电子装置102(例如,跟踪失去确定模块110)可确定维持跟踪。如果组合概率低于(例如,小于)概率阈值,那么电子装置102(例如,跟踪失去确定模块110)可确定失去跟踪。
在维持对象跟踪的情况下,电子装置102可避免210执行针对后续帧的对象检测。这可如上结合图1所描述来实现。举例来说,在维持对象跟踪的情况下,电子装置102可不针对后续帧执行对象检测。在失去对象跟踪的情况下,电子装置102可针对后续帧检测(例如,重新检测)对象位置。因此,只要维持跟踪,那么电子装置102可不返回检测对象位置。换句话说,电子装置102可不针对任一后续帧检测对象位置,除非失去对象跟踪。
应注意,可以不同次序执行方法200的步骤中的一或多个。举例来说,在一个配置中,电子装置102可在对象位置预测后但在针对一个帧的特征点测量前确定208是否失去对象跟踪。在另一配置中,电子装置102可在针对一个帧的特征点测量后确定208是否失去对象跟踪。在又一配置中,电子装置102可在对象位置预测后且在特征点测量后确定208是否失去对象跟踪。
也应注意,可在跟踪期间利用模型。因此,模型可对应于对象的结构。举例来说,对象可具有可模型化的特定结构(例如,面部结构、形状等)。具体地说,可用彼此之间具有建立的位置关系的一组特征点来模型化对象结构。在一些配置中,可就一或多个概率分布(例如,一个特征点的位置关于另一特征点的位置的条件概率)来说而定义位置关系。在一些配置中,模型可不包含任何硬性约束(例如,主动形状和/或外观模型)。可就软性统计(例如,概率分布)来说而定义模型。
在一些配置中,方法200可对单个图像序列(例如,一个视频)操作。在一些实例中,方法200可在单个图像序列时对一个帧操作。举例来说,每次只对一个帧,可检测202对象位置,可测量204特征点位置,可预测206对象位置,和/或可确定208是否失去对象跟踪。
在一些配置中,方法200可包含针对从前一帧的特征点的对象位置预测和/或针对跟踪训练速度模型。在一些方法中,可离线(例如,在执行阶段前)执行所述训练。
在一些配置中,方法200可包含基于当前帧处的预测的边界框位置或来自当前帧处的检测的边界框位置训练用于特征点测量的位移模型。举例来说,这可结合图1所描述来实现。
图3为说明用于跟踪对象的方法300的更具体配置的流程图。结合图3描述的方法300可为结合图2描述的方法200的一个实例。方法300可由电子装置102执行。电子装置102可检测302对象位置以产生检测的对象位置。这可如上关于图1到2中的一或多个所描述来实现。在一些配置中,电子装置102可针对帧k来检测对象位置pk。
电子装置102可测量304一或多个特征点位置。此可如上结合图1到2中的一或多个所描述来实现。举例来说,在初始帧中,电子装置102可基于针对初始帧的检测的对象位置(例如,边界框)来测量304一或多个特征点位置。在维持对象跟踪的后续帧(例如,在初始帧后的任一帧)中,举例来说,电子装置102可基于预测的对象位置测量304一或多个特征点位置。在失去对象跟踪的后续帧中,举例来说,电子装置102可基于检测的(例如,重新检测的)对象位置测量304一或多个特征点位置。
电子装置102可确定306是否失去对象跟踪。这可如上结合图1所描述来实现。举例来说,电子装置102可基于一或多个特征点位置确定306是否失去对象跟踪。举例来说,电子装置102可基于如上结合图1到2中的一或多个描述的一或多个特征点属性(例如,全局转化、全局尺度、全局旋转等)来确定306是否失去对象跟踪。应注意,在一些配置中,对于初始帧和/或对于已执行对象检测的帧,可跳过(例如,不执行)确定306是否失去对象跟踪。
在维持对象跟踪(例如,未失去对象跟踪)的情况下,电子装置102可针对后续帧避免执行对象检测。如在图3中的配置中所说明,电子装置102可基于一或多个特征点位置预测308后续帧中的对象位置。这可如上结合图1到2中的一或多个所描述来实现。举例来说,电子装置102可基于特征点位置和权向量的非线性函数来预测308对象位置(例如,脸位置向量、边界框等)。电子装置102可返回测量304一或多个特征点位置(对于后续帧),而不返回检测302对象位置。因此,只要维持跟踪,那么电子装置102可不返回检测302对象位置。换句话说,电子装置102可不针对任一后续帧检测对象位置,除非失去对象跟踪。在一些配置中,在确定维持对象跟踪后,帧可递增(例如,k=k+1)。因此,预测308后续帧中的对象位置(例如,后续帧k的对象位置pk)可基于一或多个特征点位置lk-1。在失去对象跟踪的情况下,电子装置102可返回检测302(例如,重新检测)对于后续帧的对象位置。
图4为说明用于跟踪对象的方法400的另一更具体配置的流程图。结合图4描述的方法400可为结合图2描述的方法200的一个实例。方法400可由电子装置102执行。电子装置102可检测402对象位置以产生检测的对象位置。这可如上结合图1到2中的一或多个所描述来实现。
电子装置102可测量404一或多个特征点位置。这可如上结合图1到2中的一或多个所描述来实现。在初始帧中,举例来说,电子装置102可基于针对初始帧的检测的对象位置测量404一或多个特征点位置。举例来说,在维持对象跟踪的后续帧(例如,在初始帧后的任一帧)中,电子装置102可基于预测的对象位置测量404一或多个特征点位置。在失去对象跟踪的后续帧中,举例来说,电子装置102可基于检测的(例如,重新检测的)对象位置测量404一或多个特征点位置。在一些配置中,在测量404一或多个特征点位置后(且在(例如)预测406对象位置前),方法400可前进到下一帧(例如,k=k+1)。
如在图4中的配置中所说明,电子装置102可基于一或多个特征点位置预测406后续帧中的对象位置。这可如上结合图1到2中的一或多个所描述来实现。举例来说,电子装置102可基于特征点位置和权向量的非线性函数来预测406对象位置(例如,脸位置向量、边界框等)。
电子装置102可确定408是否失去对象跟踪。这可如上结合图1到2中的一或多个所描述来实现。举例来说,电子装置102可基于一或多个特征点位置和/或基于预测的对象位置(即,例如,基于一或多个特征点位置)来确定408是否失去对象跟踪。举例来说,电子装置102可基于如上结合图1到2中的一或多个描述的一或多个特征点属性(例如,全局转化、全局尺度、全局旋转等)来确定408是否失去对象跟踪。另外或替代地,电子装置102可基于预测的对象位置(例如,边界框)确定408是否失去对象跟踪。
在维持对象跟踪(例如,未失去对象跟踪)的情况下,电子装置102可针对后续帧避免执行对象检测。电子装置102可返回测量404一或多个特征点位置(对于后续帧),而不返回检测402对象位置。因此,只要维持跟踪,那么电子装置102可不返回检测402对象位置。换句话说,电子装置102可不针对任一后续帧检测对象位置,除非失去对象跟踪。在失去对象跟踪的情况下,电子装置102可针对后续帧返回检测402(例如,重新检测)对象位置。
在一些配置中,如果失去对象跟踪,那么电子装置102可针对同一帧检测402对象位置。在其它配置中,如果失去对象跟踪,那么电子装置102可移动到下一帧(且例如,检测402针对下一帧的对象位置)。在一些实施方案中,可提供两个选项。举例来说,电子装置102是否检测402已失去跟踪的同一帧中的对象位置或电子装置102是否移动到下一帧(且例如,检测402针对下一帧的对象位置)可为可调整或可选择的(例如,由用户和/或基于用户输入)。应注意,如果对象离开所述帧,那么可失去跟踪。在此情境下,电子装置102可尝试使用对象检测器(例如,对象检测模块106)检测对象(例如,新对象)。这可发生在一或多个后续帧中。一旦检测到对象,那么可重新初始化跟踪(例如,可针对一或多个后续帧尝试对象位置预测)。
应注意,在一些配置中,可组合结合图3到4描述的方法。举例来说,在对象位置预测后和且在特征点测量后,电子装置102可确定是否失去跟踪。
图5为说明用于训练预测对象位置的方法500的一个配置的流程图。方法500可由电子装置(例如,结合图1描述的电子装置102)执行。方法500可包含针对从前一帧的特征点的对象位置预测和/或针对跟踪训练速度模型。举例来说,方法500可为训练方法以便获得可用于对象位置预测(例如,脸边界框预测)的速度模型(例如,M(lk-1))和/或权数(例如,w)。在一些配置中,方法500和/或其一或多个步骤可包含在结合图2描述的方法200中。
电子装置102可产生502初始形状位置。举例来说,电子装置102可产生502初始特征点(例如,)。在一些配置中,电子装置102可基于特征点位置的一或多个概率分布产生502初始特征点。举例来说,电子装置102可利用基于一或多个概率分布(例如,全局转化分布、全局尺度分布和/或局部运动分布)随机地产生变形的特征点位置的函数。在一些配置中,这可如结合图6到7所描述来实现。
电子装置102可计算504对象描述符。可基于形状位置(例如,特征点)来计算504对象描述符。举例来说,电子装置102可在每一迭代j计算504对象描述符直到其收敛。对象描述符的一个实例为HSG。对象描述符的其它实例包含HOG、SIFT、霍夫变换、SURF和GLOH。
电子装置102可解出506速度模型。举例来说,电子装置102可解出在一些配置中,可按如上结合等式(3)所描述的以迭代方式解出506速度模型,直到收敛。在此情况下,对于每一迭代j,可计算速度模型
电子装置102可在每一迭代中更新508特征点。举例来说,电子装置102可根据等式(6)在每一迭代中更新508特征点位置。
如本文中所使用,为通过获得的特征点的位移向量。在一些配置中,位移向量可根据以上针对对象预测模块112的等式(2)获得。位移向量可根据以上针对对象测量模块(例如,特征点测量模块108)的等式(5)获得。举例来说,可根据本文中揭示的***和方法执行和/或利用两个形式的训练:一个针对对象位置预测且一个针对特征点测量。
电子装置102可确定510是否已收敛函数(例如,对象描述符举例来说,如果位移向量低于预定义阈值(例如,小于5%改变),那么电子装置102可确定510函数是否收敛。
在函数尚未收敛的情况下,电子装置102可针对下一个迭代返回计算504对象描述符(例如,)。举例来说,可通过更新的特征点来计算504对象描述符(其中将j递增,例如,j=j+1、j++等)。如图5中所说明,可迭代地计算504对象描述符、解出506速度模型和更新508特征点,直到函数收敛。
在函数已收敛的情况下,电子装置102可计算512权数(例如,模型权数值)。举例来说,电子装置102可根据等式(7)计算权数。
在等式(7)中,表示估计的特征点lk与在训练过程中使用的注释值的标准差函数。在如结合图1到4中的一或多个所描述的对象位置预测中,可应用速度模型的集合(例如,)和/或权数(例如,w)。在一些配置中,结合图1描述的电子装置102可执行方法500。在其它配置中,单独的电子装置(例如,计算机)可执行方法500和/或可将训练结果(例如,速度模型的集合和/或权数w)提供到电子装置102。在一些配置中,可“离线”执行方法500(例如,在执行结合图2到4描述的方法200、300、400中的一或多个前,在执行阶段前,等)。
图6包含说明一组特征点的分布的曲线图。特征点的集合的分布还可被称作形状动力学的软统计。以宽度616和高度614(其可涉及例如像素、英寸、毫米等的单位)来说明曲线图。所述曲线图提供训练中每一特征点的对象局部运动初始化的实例(例如,每一特征点相对于对象的其它特征点的移动可能性)。举例来说,对象(例如,脸)运动初始化可包含全局转化、全局尺度和/或由图6指定的每一特征点的条件局部运动。具体地说,曲线图中说明的点的每一群组说明可在图像的序列(例如,视频)中发生的特征点(对应于面部结构)的局部运动(例如,统计变化)。举例来说,在曲线图的左上部分上说明的点618的群组(说明为三角形)说明对应于耳朵与脸的顶部相交的特征点的局部运动。其它符号群组(例如,圆、星号、三角形、倒置三角形、菱形、星形和正方形)表示其它特征点的分布。
在一些配置中,可将特征点的全局转化模型化为高斯分布(例如,具有15%标准差)。可将特征点的全局尺度模型化为高斯分布(例如,具有5%标准差)。特征点的局部运动可用如图6中所说明的形状的动力学的统计来特性化。明确地说,可根据本文中揭示的***和方法来利用基于软统计的模型。模型可反映对应于结构(例如,面部结构、形状等)的变形的特征点的局部运动的统计分布。举例来说,图6中说明的点的群组中的每一个提供关于彼此的条件概率分布。这与假定像主动形状和/或外观模型的硬性约束的已知方法截然不同。特征点中的每一个的概率分布(例如,标准差和/或条件分布)可用以产生形状变形(例如,使用蒙特卡洛分析)。举例来说,基于概率分布的功能可用以使特征点随机地变形。
图7包含说明特征点运动的三个实例720a到c。明确地说,图7说明用于训练的对象(例如,脸)运动初始化的一个方法。在实例720a到c中的每一个中,圆点说明对于一组特征点的(例如,)的注释的实测数据。在实例720a到c中的每一个中,菱形点说明基于特征点的概率分布(例如,如结合图6所描述)产生的一组特征点的不同形状位置。在实例A 720a中,可观测到,特征点位置在对应的实测数据特征点左下方。在实例B 720b中,可观测到,特征点位置在对应的实测数据特征点右上方。在实例C 720c中,可观测到,特征点位置在对应的实测数据特征点左边。这些特征点位置可通过基于以上描述的特征点的概率分布使特征点随机地变形的函数来产生。此外,可观测到,在实例720a到c中任一个中,根据图6中展示的软统计,形状不仅已移位,而且已变形。
图8包含特征点图824。明确地说,图8提供面部结构上的特征点825a-h、827a-j、829a-i、831a-f、833a-g的实例。在一些配置中,脸边界框的预测可如下实现。对于在线特征点预测器且假定n次训练迭代,可如在等式(8)中所说明来表达在每一帧的特征点预测。
可根据等式(9)到(10)来确定脸边界框位置pk和长度sk。
如本文中所使用,xp可为在第一维度中(例如,在水平维度中)的像素位置,yp可为在第二维度中(例如,在垂直维度中)的像素位置。应注意,可从每一特征点的训练误差的分布(例如,如上所述)来估计w。
特征点图824说明对应于面部结构的一组特征点825a-h、827a-j、829a-i、831a-f、833a-g。举例来说,一组特征点可包含对应于眉毛的一或多个特征点825a到h、对应于眼睛的一或多个特征点827a到j、对应于鼻子的一或多个特征点829a到i、对应于嘴唇/嘴的一或多个特征点831a到f和/或对应于面部轮廓(例如,脸颊、下巴、耳朵等)的一或多个特征点833a到g。举例来说,一个特征点833a对应于在特征点图824的左侧上的耳朵与脸之间的上部相交。应注意,每一特征点可具有相关联的权数(例如,正规化权数)。在一些配置中,轮廓特征点833a到g(例如,在面部结构的***上的特征点833a到g)可最不可靠,且因此可与最低权数相关联。应注意,虽然图8说明特征点的一个实例,但根据本文中揭示的***和方法,可利用更少、更多和/或不同的特征点。
图9为说明基于从对象检测器获得的预测的对象位置或边界框的特征点测量的一个实例的图。明确地说,图9说明基于预测的边界框测量脸上的特征点的一个实例。如上结合图1(例如,等式(5))所描述,可从平均形状932开始测量面部特征点。具体地说,针对一组特征点的平均形状932在图像A 930a中说明于边界框934a中。以上结合等式(5)描述的非线性位移模型可用于特征点测量。如在图像B 930b中所说明,测量对应于脸上的正确位置的特征点936。边界框934b也说明于图像B 930b中。
图10为说明用于本文中揭示的***和方法的验证的结果的一个实例的曲线图。具体地说,曲线图说明根据本文中揭示的***和方法的***1042的累加误差分布。所述曲线图的垂直轴表示数据比例1038,且水平轴表示按256乘256脸比例(例如,以像素计)计算的以像素计的均方根误差(RMSE)1040。
***1042的准确性可超过其它方法的准确性。在此实例中,使用注释的训练图像上的2倍交叉验证来获得结果。关于速度,举例来说,本文中揭示的***和方法的一个实例在C实施方案(具有2.6千兆赫(GHz)处理器和8千兆字节(GB)的随机存取存储器(RAM))中平均采用每个脸大致20毫秒(ms)。在此实例中,将六个迭代用于预测,且将四个迭代用于测量。
图11为说明用于本文中揭示的***和方法的盲测试的结果的一个实例的曲线图。具体地说,所述曲线图说明在线视频的盲测试的累加分布误差。所述曲线图说明根据本文中揭示的***和方法的***1142的性能。所述曲线图的垂直轴表示数据比例1138,且水平轴表示按256乘256脸比例(例如,以像素计)计算的以像素计的RMSE 1140(例如,12个特征点的像素)。
***1142的准确性可超过其它方法的准确性。换句话说,与其它方法相比,***1142展现更好的准确性。在此实例中,用于测试的平台是具有8GB的RAM的2.6GHz处理器。表(1)提供就错过的帧的时间和数目来说的***性能的实例。
时间(ms) | 8407中错过的帧的数目 | |
*** | 19.7 | 11(0.13%) |
表(1)
与已知方法相比,本文中揭示的***和方法的一或多个有区别的(例如,新颖)特征如下给出。本文中揭示的***和方法可不利用关于对象(例如,对象模型、脸)的硬性约束。本文中揭示的***和方法可不利用关于特征点的运动的硬性约束。举例来说,一些已知方法假定硬性约束,例如,主动形状和/或外观模型。
可应用本文中揭示的***和方法来检测失去跟踪的时间。根据本文中揭示的***和方法,可只在需要时(例如,只当失去跟踪时)利用(例如,调用)对象检测器。
根据本文中揭示的***和方法,对象位置预测(例如,脸姿态预测)可独立于对象位置检测(例如,脸检测)。本文中揭示的***和方法的一些配置在嵌入式***上实施或实现可为廉价的。在一些配置中,本文中揭示的***和方法可利用HSG描述符,其可比SIFT小一倍。关于速度,当以C编程语言来实施时,本文中揭示的***和方法的一个实施方案采用20毫秒/脸。举例来说,这可允许在笔记本电脑上大于50个脸/秒的跟踪。
关于准确性,本文中揭示的***和方法可胜过已知方法。举例来说,在本文中揭示的***和方法的一个实例中,60%的数据具有≤4个像素的平均RMSE。在已知方法中,仅40%的数据具有≤4个像素的平均RMSE。
图12包含说明用于跟踪脸的已知方法1200a到b的两个流程图。比较起来,本文中揭示的***和方法与这些已知方法1200a到b截然不同。在第一已知方法1200a中,检测1202a脸位置。接着,应用1204a跟踪滤波器(例如,粒子滤波器、卡尔曼滤波器、平均移位滤波器等)。接着,测量1206a特征点。如第一已知方法1200a中所说明,必须在每一帧检测脸位置,以用于跟踪滤波器的应用。这与本文中揭示的***和方法截然不同,在本文中揭示的***和方法中,在维持跟踪的情况下,不在帧中检测对象位置。
在第二已知方法1200b中,检测1202b脸位置。接着,经由光流跟踪1204b脸姿态。接着,测量1206b特征点。如第二已知方法1200b中所说明,必须针对设定的数目个帧定期检测脸位置。这与本文中揭示的***和方法截然不同,在本文中揭示的***和方法中,只要维持跟踪,那么可不检测对象位置(在初始帧后)。
图13为说明可实施用于跟踪对象的***和方法的无线通信装置1302的一个配置的框图。图13中说明的无线通信装置1302可为本文所描述的电子装置中的一或多个的实例。无线通信装置1302可包含应用程序处理器1321。应用程序处理器1321通常处理指令(例如,运行程序)以在无线通信装置1302上执行功能。在一些配置中,应用程序处理器1321可包含对象跟踪模块1392。对象跟踪模块1392可包含结合图1描述的模块中的一或多个和/或可执行结合图1到9描述的功能、程序或步骤中的一或多个。举例来说,对象跟踪模块1392可实施结合图2到5和15中的一或多个描述的方法200、300、400、500、1500中的一或多个。在一些配置中,对象跟踪模块1392可与应用程序处理器1321分开来实施。应用程序处理器1321可耦合到音频译码器/解码器(编解码器)1319。
音频编解码器1319可用于译码和/或解码音频信号。音频编解码器1319可耦合到至少一个扬声器1311、耳机1313、输出插孔1315和/或至少一个麦克风1317。扬声器1311可包含将电或电子信号转换成声信号的一或多个电声换能器。举例来说,扬声器1311可用以播放音乐或输出扬声器电话对话等。耳机1313可为另一扬声器或电声换能器,其可用以向用户输出声信号(例如,语音信号)。举例来说,可使用耳机1313,使得仅用户可可靠地听到声信号。输出插孔1315可用于将其它装置(例如,头戴式耳机)耦合到无线通信装置1302以用于输出音频。扬声器1311、耳机1313和/或输出插孔1315可通常用于从音频编解码器1319输出音频信号。至少一个麦克风1317可为将声信号(例如,用户的话语)转换成提供到音频编解码器1319的电或电子信号的声电换能器。
应用程序处理器1321也可耦合到电力管理电路1394。电力管理电路1394的一个实例为电力管理集成电路(PMIC),其可用以管理无线通信装置1302的电力消耗。电力管理电路1394可耦合到电池1396。电池1396可通常将电力提供到无线通信装置1302。举例来说,电池1396和/或电力管理电路1394可耦合到无线通信装置1302中包含的元件中的至少一个。
应用程序处理器1321可耦合到至少一个输入装置1398以用于接收输入。输入装置1398的实例包含红外传感器、图像传感器、加速度计、触摸传感器、小键盘等。输入装置1398可允许与无线通信装置1302的用户交互。应用程序处理器1321也可耦合到一或多个输出装置1301。输出装置1301的实例包含打印机、投影仪、屏幕、触感装置等。输出装置1301可允许无线通信装置1302产生可由用户体验的输出。
应用程序处理器1321可耦合到应用程序存储器1303。应用程序存储器1303可为能够存储电子信息的任一电子装置。应用程序存储器1303的实例包含双数据速率同步动态随机存取存储器(DDRAM)、同步动态随机存取存储器(SDRAM)、快闪存储器等。应用程序存储器1303可提供用于应用程序处理器1321的存储。举例来说,应用程序存储器1303可存储用于在应用程序处理器1321上运行的程序的发挥功能的数据和/或指令。
应用程序处理器1321可耦合到显示控制器1305,所述显示控制器又可耦合到显示器1307。显示控制器1305可为用以在显示器1307上产生图像的硬件块。举例来说,显示控制器1305可将来自应用程序处理器1321的指令和/或数据转译成可在显示器1307上呈现的图像。显示器1307的实例包含液晶显示器(LCD)面板、发光二极管(LED)面板、阴极射线管(CRT)显示器、等离子显示器等。
应用程序处理器1321可耦合到基带处理器1323。基带处理器1323通常处理通信信号。举例来说,基带处理器1323可解调制和/或解码接收的信号。另外或替代地,基带处理器1323可在准备发射时编码和/或调制信号。
基带处理器1323可耦合到基带存储器1309。基带存储器1309可为能够存储电子信息的任一电子装置,例如,SDRAM、DDRAM、快闪存储器等。基带处理器1323可读取来自基带存储器1309的信息(例如,指令和/或数据)和/或将信号写入到所述基带存储器。另外或替代地,基带处理器1323可使用存储于基带存储器1309中的指令和/或数据来执行通信操作。
基带处理器1323可耦合到射频(RF)收发器1325。RF收发器1325可耦合到功率放大器1327和一或多个天线1329。RF收发器1325可发射和/或接收射频信号。举例来说,RF收发器1325可使用功率放大器1327和至少一个天线1329发射RF信号。RF收发器1325也可使用一或多个天线1329接收RF信号。
图14说明可包含于电子装置1402内的某些组件。结合图14描述的电子装置1402可为本文中描述的电子装置中的一或多个的实例和/或可根据本文中描述电子装置中的一或多个实施。
电子装置1402包含处理器1447。处理器1447可为通用单或多芯片微处理器(例如,ARM)、专用微处理器(例如,数字信号处理器(DSP))、微控制器、可编程门阵列等。处理器1447可被称作中央处理单元(CPU)。尽管在图14的电子装置1402中只展示了单个处理器1447,但在替代配置中,可使用处理器的组合(例如,ARM与DSP)。
电子装置1402还包含与处理器1447电子通信的存储器1431(即,处理器1447可以从存储器1431读取信息和/或将信息写入到存储器1431)。存储器1431可为能够存储电子信息的任一电子组件。存储器1431可为随机存取存储器(RAM)、只读存储器(ROM)、磁盘存储媒体、光学存储媒体、RAM中的快闪存储器装置、与处理器包含在一起的机载存储器、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除PROM(EEPROM)、寄存器等等,包含其组合。
数据1433和指令1435可存储在存储器1431中。指令1435可包含一或多个程序、例程、子例程、函数、程序、代码等。指令1435可包括单个计算机可读语句或许多计算机可读语句。指令1435可以可由处理器1447执行,以实施本文所描述的方法中的一或多个。实行指令1435可涉及存储于存储器1431中的数据1433的使用。图14展示一些指令1435a和数据1433a被加载到处理器1447内。
电子装置1402还可包含发射器1443和接收器1445以允许信号在电子装置1402与远程位置(例如,无线通信装置、基地台等)之间的发射和接收。发射器1443和接收器1445可共同地被称作收发器1441。天线1439可电耦合到收发器1441。电子装置1402还可包含(未图示)多个发射器、多个接收器、多个收发器和/或多个天线。
电子装置1402的各种组件可由一或多个总线耦合在一起,总线可包含电力总线、控制信号总线、状态信号总线、数据总线等。为简单起见,各种总线在图14中说明为总线***1437。
图15为说明用于训练用于特征点测量的位移模型的方法1500的一个配置的流程图。方法1500可由电子装置(例如,结合图1描述的电子装置102)执行。方法1500可包含训练用于特征点测量的位移模型。举例来说,方法1500可为训练方法以便获得可用于特征点测量的位移模型(例如,U(lk))和/或权数(例如,ω)。在一些配置中,方法1500和/或其一或多个步骤可包含在结合图2描述的方法200中。
电子装置102可产生1502初始平均形状位置。举例来说,电子装置102可基于对象位置(例如,边界框)产生1502平均形状(例如,lk,ms)。特征点可开始于同一帧内的平均形状。在一些配置中,电子装置102可基于特征点位置的一或多个概率分布产生1502平均形状。举例来说,平均形状(例如,lk,ms)的初始特征点中的每一个可为对应于那个特征点的概率分布的平均(例如,平均值)。平均形状的一个实例在图9的图像A 930a中给出。
电子装置102可计算1504对象描述符(例如,Φ(lk,ms))。对象描述符可基于特征点位置来计算1504。举例来说,电子装置102可计算1504对象描述符Φ(lk,ms),直到其收敛。对象描述符的一个实例为HSG。对象描述符的其它实例包含HOG、SIFT、霍夫变换、SURF和GLOH。
电子装置102可解出1506位移模型。举例来说,电子装置102可解出1506U(lk,ms)。在一些配置中,可以类似于结合等式(3)针对速度模型给出的方法类似的方式以迭代方式解出1506位移模型,直到收敛。在此情况下,对于每一迭代(例如,i),可计算位移模型U(lk,ms)。
电子装置102可在每一迭代中更新1508特征点。举例来说,电子装置102可根据等式(11)在每一迭代i中更新1508特征点位置。
如本文中所使用,为通过U(lk,ms)·Φ(lk,ms)获得的特征点的位移向量。在一些配置中,可根据以上针对对象测量模块(例如,特征点测量模块108)的等式(5)获得位移向量。
电子装置102可确定1510是否已收敛函数(例如,对象描述符Φ(lk,ms))。举例来说,如果位移向量低于预定义阈值(例如,小于5%改变),那么电子装置102可确定1510函数是否收敛。
在函数尚未收敛的情况下,电子装置102可针对下一个迭代返回计算1504对象描述符(例如,)。举例来说,可通过更新的特征点来计算1504对象描述符(其中将i递增,例如,i=i+1、i++等)。如图15中所说明,可迭代地计算1504对象描述符、解出1506位移模型和更新1508特征点,直到函数收敛。
在函数已收敛的情况下,电子装置102可计算1512权数(例如,模型权数值)。举例来说,电子装置102可根据等式(12)计算权数。
在等式(12)中,表示估计的特征点lk与在训练过程中使用的注释值的标准差函数。在如结合图1到4中的一或多个所描述的特征点测量中,可应用位移模型的集合(例如,)和/或权数(例如,ω)。在一些配置中,结合图1描述的电子装置102可执行方法1500。在其它配置中,单独的电子装置(例如,计算机)可执行方法1500和/或可将训练结果(例如,位移模型的集合和/或权数ω)提供到电子装置102。在一些配置中,可“离线”执行方法1500(例如,在执行结合图2到4描述的方法200、300、400中的一或多个前,在执行阶段前,等)。
在以上描述中,有时已结合各种术语使用参考数字。在术语结合参考数字使用的情况下,这可旨在指代图中的一或多个中展示的具体元件。在无参考数字地使用术语的情况下,这可旨在大体指代所述术语,而不限于任一特定图。
术语“确定”涵盖广泛多种动作,且因此,“确定”可包含计算、运算、处理、推导、研究、查找(例如,在表、数据库或另一数据结构中查找)、确定和类似者。并且,“确定”可包含接收(例如,接收信息)、存取(例如,在存储器中存取数据)和类似者。并且,“确定”可包含解析、选择、挑选、建立和类似者。
除非另有明确指定,否则短语“基于”并不意味着“仅基于”。换句话说,短语“基于”描述“仅基于”和“基于至少”两者。
应注意,在兼容的情况下,结合本文中所描述的配置中的任一个所描述的特征、功能、程序、组件、元件、结构等中的一或多个可与结合本文中所描述的其它配置中的任一个所描述的功能、程序、组件、元件、结构等中的一或多个组合。换句话说,可根据本文中揭示的***和方法来实施本文中所描述的功能、程序、组件、元件等的任何兼容组合。
可将本文中所描述的功能作为一或多个指令而存储在处理器可读或计算机可读媒体上。术语“计算机可读媒体”指可由计算机或处理器存取的任何可用媒体。作为实例而非限制,此媒体可包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、压缩光盘只读存储器(CD-ROM)或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用来以指令或数据结构的形式存储所要的程序代码且可由计算机存取的任一其它媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。应注意,计算机可读媒体可为有形且非暂时性的。术语“计算机程序产品”指计算装置或处理器,结合可由所述计算装置或处理器执行、处理或计算的代码或指令(例如,“程序”)。如本文中所使用,术语“代码”可指可由计算装置或处理器执行的软件、指令、代码或数据。
还可通过传输媒体传输软件或指令。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线路(DSL)或无线技术(例如,红外线、无线电和微波)从网站、服务器或其它远程源传输软件,那么同轴电缆、光纤电缆、双绞线、DSL或无线技术(例如,红外线、无线电和微波)包含在传输媒体的定义中。
本文中所揭示的方法包括用于达成所描述的方法的一或多个步骤或动作。在不脱离权利要求书的范围的情况下,方法步骤和/或动作可彼此互换。换句话说,除非正描述的方法的恰当操作需要步骤或动作的具体次序,否则,在不脱离权利要求书的范围的情况下,可修改具体步骤和/或动作的次序和/或使用。
应理解,权利要求书不限于以上所说明的精确配置和组件。在不脱离权利要求书的范围的情况下,可进行本文中所描述的***、方法和设备的布置、操作和细节的各种修改、改变和变化。
Claims (28)
1.一种用于通过电子装置跟踪对象的方法,包括:
检测初始帧中的对象位置以产生检测的对象位置;
基于所述检测的对象位置或预测的对象位置确定一或多个特征点位置;
针对从前一帧的特征点的对象位置预测训练速度模型,其中所述训练包括:
迭代求解所述速度模型直到所述特征点的位移向量低于预定阈值;
基于所述速度模型和所述一或多个特征点位置预测后续帧中的所述对象位置;
确定是否在当前帧中失去对象跟踪;以及
响应于所述当前帧维持对象跟踪,避免执行针对所述后续帧的对象检测。
2.根据权利要求1所述的方法,其中所述特征点位置在所述对象的结构内。
3.根据权利要求1所述的方法,其中对象位置检测与对象位置预测是独立的。
4.根据权利要求1所述的方法,其中预测所述对象位置是基于来自前一帧的一或多个特征点位置。
5.根据权利要求1所述的方法,其中预定义所述特征点位置的结构。
6.根据权利要求1所述的方法,其中确定是否失去对象跟踪是基于一或多个特征点位置中的至少一个和对象位置预测。
7.根据权利要求1所述的方法,其中在预测期间利用速度模型且在确定所述一或多个特征点位置时利用位移模型,以及其中所述速度模型和位移模型中的每一个对应于所述对象的结构。
8.根据权利要求7所述的方法,其中所述速度模型和所述位移模型不包含任何硬性约束。
9.根据权利要求1所述的方法,其中所述方法在单个图像序列时对一个帧操作。
10.根据权利要求1所述的方法,其进一步包括针对从在当前帧处的预测的边界框位置或从在所述当前帧处的检测的边界框位置的所述一或多个特征点位置的确定训练位移模型。
11.一种用于跟踪对象的电子装置,包括:
处理器;
存储器,其与所述处理器电子通信;以及
指令,其存储于所述存储器中,所述指令可由所述处理器执行以:
检测初始帧中的对象位置以产生检测的对象位置;
基于所述检测的对象位置或预测的对象位置确定一或多个特征点位置;
针对从前一帧的特征点的对象位置预测训练速度模型,其中经执行以训练的所述指令包括经执行以迭代求解所述速度模型直到所述特征点的位移向量低于预定阈值的指令;
基于所述速度模型和所述一或多个特征点位置预测后续帧中的所述对象位置;
确定是否在当前帧中失去对象跟踪;以及
响应于所述当前帧维持对象跟踪,避免执行针对所述后续帧的对象检测。
12.根据权利要求11所述的电子装置,其中所述特征点位置在所述对象的结构内。
13.根据权利要求11所述的电子装置,其中对象位置检测与对象位置预测是独立的。
14.根据权利要求11所述的电子装置,其中预测所述对象位置是基于来自前一帧的一或多个特征点位置。
15.根据权利要求11所述的电子装置,其中所述特征点位置的结构是预定义的。
16.根据权利要求11所述的电子装置,其中确定是否失去对象跟踪是基于一或多个特征点位置中的至少一个和对象位置预测。
17.根据权利要求11所述的电子装置,其中在预测期间利用速度模型且在确定所述一或多个特征点位置时利用位移模型,以及其中所述速度模型和位移模型中的每一个对应于所述对象的结构。
18.根据权利要求17所述的电子装置,其中所述速度模型和所述位移模型不包含任何硬性约束。
19.根据权利要求11所述的电子装置,其中所述电子装置在单个图像序列时对一个帧操作。
20.根据权利要求11所述的电子装置,其中所述指令进一步可由所述处理器执行以针对从在当前帧处的预测的边界框位置或从在所述当前帧处的检测的边界框位置的所述一或多个特征点位置的确定而训练位移模型。
21.一种具有指令的非暂时性有形计算机可读媒体,所述指令在由电子装置执行时致使所述电子装置:
检测初始帧中的对象位置以产生检测的对象位置;
基于所述检测的对象位置或预测的对象位置确定一或多个特征点位置;
针对从前一帧的特征点的对象位置预测训练速度模型,其中用于使所述电子装置训练位移模型的所述指令进一步致使所述电子装置:
迭代求解所述速度模型直到所述特征点的位移向量低于预定阈值;
基于所述位移模型和所述一或多个特征点位置预测后续帧中的所述对象位置;
确定是否在当前帧中失去对象跟踪;以及
响应于所述当前帧维持对象跟踪避免执行针对所述后续帧的对象检测。
22.根据权利要求21所述的非暂时性有形计算机可读媒体,其中所述特征点位置在所述对象的结构内。
23.根据权利要求21所述的非暂时性有形计算机可读媒体,其中对象位置检测与对象位置预测是独立的。
24.根据权利要求21所述的非暂时性有形计算机可读媒体,其中所述电子装置基于来自前一帧的一或多个特征点位置来预测所述对象位置。
25.一种用于跟踪对象的设备,包括:
用于检测初始帧中的对象位置以产生检测的对象位置的装置;
用于基于所述检测的对象位置确定一或多个特征点位置的装置;
用于针对从前一帧的特征点的对象位置预测训练速度模型的装置,其中所述用于训练的装置包括:
用于迭代求解所述速度模型直到所述特征点的位移向量低于预定阈值的装置;
用于基于所述速度模型和所述一或多个特征点位置预测后续帧中的所述对象位置的装置;
用于确定是否在当前帧中失去对象跟踪的装置;以及
用于响应于所述当前帧维持对象跟踪避免执行针对所述后续帧的对象检测的装置。
26.根据权利要求25所述的设备,其中所述特征点位置在所述对象的结构内。
27.根据权利要求25所述的设备,其中对象位置检测与对象位置预测是独立的。
28.根据权利要求25所述的设备,其中用于预测所述对象位置的所述装置是基于来自前一帧的一或多个特征点位置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/539,617 US9665804B2 (en) | 2014-11-12 | 2014-11-12 | Systems and methods for tracking an object |
US14/539,617 | 2014-11-12 | ||
PCT/US2015/055225 WO2016077000A1 (en) | 2014-11-12 | 2015-10-13 | Systems and methods for tracking an object |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107077738A CN107077738A (zh) | 2017-08-18 |
CN107077738B true CN107077738B (zh) | 2018-12-07 |
Family
ID=54360567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580058529.1A Active CN107077738B (zh) | 2014-11-12 | 2015-10-13 | 用于跟踪对象的***和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9665804B2 (zh) |
EP (1) | EP3218873A1 (zh) |
JP (1) | JP2018500645A (zh) |
CN (1) | CN107077738B (zh) |
WO (1) | WO2016077000A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9727786B2 (en) * | 2014-11-14 | 2017-08-08 | Intel Corporation | Visual object tracking system with model validation and management |
US10445885B1 (en) | 2015-10-01 | 2019-10-15 | Intellivision Technologies Corp | Methods and systems for tracking objects in videos and images using a cost matrix |
CN106920251A (zh) | 2016-06-23 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 人手检测跟踪方法及装置 |
US10360456B2 (en) | 2016-08-12 | 2019-07-23 | Qualcomm Incorporated | Methods and systems of maintaining lost object trackers in video analytics |
CN109791615B (zh) * | 2017-05-05 | 2023-07-28 | 京东方科技集团股份有限公司 | 用于检测并跟踪目标对象的方法、目标对象跟踪设备和计算机程序产品 |
KR102256110B1 (ko) * | 2017-05-26 | 2021-05-26 | 라인 가부시키가이샤 | 영상 압축 방법 및 영상 복원 방법 |
US10580148B2 (en) * | 2017-12-21 | 2020-03-03 | Microsoft Technology Licensing, Llc | Graphical coordinate system transform for video frames |
CN108334811B (zh) * | 2017-12-26 | 2021-06-04 | 大唐软件技术股份有限公司 | 一种人脸图像处理方法及装置 |
US10970425B2 (en) * | 2017-12-26 | 2021-04-06 | Seiko Epson Corporation | Object detection and tracking |
US11783707B2 (en) | 2018-10-09 | 2023-10-10 | Ford Global Technologies, Llc | Vehicle path planning |
WO2020114585A1 (en) * | 2018-12-05 | 2020-06-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Object location determination in frames of a video stream |
US11030774B2 (en) | 2019-03-19 | 2021-06-08 | Ford Global Technologies, Llc | Vehicle object tracking |
US11460851B2 (en) | 2019-05-24 | 2022-10-04 | Ford Global Technologies, Llc | Eccentricity image fusion |
US11521494B2 (en) | 2019-06-11 | 2022-12-06 | Ford Global Technologies, Llc | Vehicle eccentricity mapping |
US11662741B2 (en) | 2019-06-28 | 2023-05-30 | Ford Global Technologies, Llc | Vehicle visual odometry |
EP4066087A1 (fr) | 2019-11-03 | 2022-10-05 | ST37 Sport et Technologie | Procede et systeme de caracterisation d'un mouvement d'une entite en mouvement |
US20230343040A1 (en) * | 2020-05-15 | 2023-10-26 | 3M Innovative Properties Company | Personal protective equipment training system with user-specific augmented reality content construction and rendering |
CN112037247A (zh) * | 2020-08-27 | 2020-12-04 | 浙江大华技术股份有限公司 | 一种目标跟踪的方法、装置及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1580684A1 (en) * | 1998-04-13 | 2005-09-28 | Nevenengineering, Inc. | Face recognition from video images |
CN102640168A (zh) * | 2009-12-31 | 2012-08-15 | 诺基亚公司 | 用于基于局部二进制模式的面部特征定位的方法和设备 |
CN103765477A (zh) * | 2011-09-02 | 2014-04-30 | 高通股份有限公司 | 通过图形匹配和环形检测而用自动模型初始化进行线跟踪 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03170805A (ja) * | 1989-11-30 | 1991-07-24 | Olympus Optical Co Ltd | 目標物体の移動位置演算装置 |
GB9019538D0 (en) * | 1990-09-07 | 1990-10-24 | Philips Electronic Associated | Tracking a moving object |
US6064749A (en) * | 1996-08-02 | 2000-05-16 | Hirota; Gentaro | Hybrid tracking for augmented reality using both camera motion detection and landmark tracking |
US6301370B1 (en) * | 1998-04-13 | 2001-10-09 | Eyematic Interfaces, Inc. | Face recognition from video images |
WO1999053443A1 (en) * | 1998-04-13 | 1999-10-21 | Eyematic Interfaces, Inc. | Wavelet-based facial motion capture for avatar animation |
US6643387B1 (en) * | 1999-01-28 | 2003-11-04 | Sarnoff Corporation | Apparatus and method for context-based indexing and retrieval of image sequences |
US6567775B1 (en) * | 2000-04-26 | 2003-05-20 | International Business Machines Corporation | Fusion of audio and video based speaker identification for multimedia information access |
US7148913B2 (en) * | 2001-10-12 | 2006-12-12 | Hrl Laboratories, Llc | Vision-based pointer tracking and object classification method and apparatus |
US7130446B2 (en) * | 2001-12-03 | 2006-10-31 | Microsoft Corporation | Automatic detection and tracking of multiple individuals using multiple cues |
EP1710751A1 (en) * | 2004-01-06 | 2006-10-11 | Sony Corporation | Image processing device and method, recording medium, and program |
JP4478510B2 (ja) * | 2004-06-03 | 2010-06-09 | キヤノン株式会社 | カメラシステム、カメラ、及びカメラの制御方法 |
US7508990B2 (en) | 2004-07-30 | 2009-03-24 | Euclid Discoveries, Llc | Apparatus and method for processing video data |
US20070092110A1 (en) * | 2004-11-08 | 2007-04-26 | Li-Qun Xu | Object tracking within video images |
GB0502369D0 (en) * | 2005-02-04 | 2005-03-16 | British Telecomm | Classifying an object in a video frame |
US7860162B2 (en) | 2005-09-29 | 2010-12-28 | Panasonic Corporation | Object tracking method and object tracking apparatus |
GB0607143D0 (en) * | 2006-04-08 | 2006-05-17 | Univ Manchester | Method of locating features of an object |
TW200919336A (en) * | 2007-10-25 | 2009-05-01 | Ind Tech Res Inst | Method for positioning a non-structural object in a series of continuing images |
JP5446546B2 (ja) * | 2009-07-28 | 2014-03-19 | ソニー株式会社 | 撮像制御装置、撮像制御方法、プログラム、撮像システム |
US8116527B2 (en) * | 2009-10-07 | 2012-02-14 | The United States Of America As Represented By The Secretary Of The Army | Using video-based imagery for automated detection, tracking, and counting of moving objects, in particular those objects having image characteristics similar to background |
JP5488076B2 (ja) | 2010-03-15 | 2014-05-14 | オムロン株式会社 | 対象物追跡装置、対象物追跡方法、および制御プログラム |
US8396268B2 (en) | 2010-03-31 | 2013-03-12 | Isis Innovation Limited | System and method for image sequence processing |
EP2586011B1 (en) * | 2010-06-23 | 2023-07-26 | Nokia Technologies Oy | Method, apparatus and computer program product for tracking face portion |
US9489040B2 (en) * | 2010-07-19 | 2016-11-08 | Smart Technologies Ulc | Interactive input system having a 3D input space |
US9141196B2 (en) | 2012-04-16 | 2015-09-22 | Qualcomm Incorporated | Robust and efficient learning object tracker |
US9852511B2 (en) | 2013-01-22 | 2017-12-26 | Qualcomm Incoporated | Systems and methods for tracking and detecting a target object |
-
2014
- 2014-11-12 US US14/539,617 patent/US9665804B2/en active Active
-
2015
- 2015-10-13 EP EP15787098.1A patent/EP3218873A1/en not_active Withdrawn
- 2015-10-13 JP JP2017525350A patent/JP2018500645A/ja active Pending
- 2015-10-13 WO PCT/US2015/055225 patent/WO2016077000A1/en active Application Filing
- 2015-10-13 CN CN201580058529.1A patent/CN107077738B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1580684A1 (en) * | 1998-04-13 | 2005-09-28 | Nevenengineering, Inc. | Face recognition from video images |
CN102640168A (zh) * | 2009-12-31 | 2012-08-15 | 诺基亚公司 | 用于基于局部二进制模式的面部特征定位的方法和设备 |
CN103765477A (zh) * | 2011-09-02 | 2014-04-30 | 高通股份有限公司 | 通过图形匹配和环形检测而用自动模型初始化进行线跟踪 |
Also Published As
Publication number | Publication date |
---|---|
US9665804B2 (en) | 2017-05-30 |
EP3218873A1 (en) | 2017-09-20 |
CN107077738A (zh) | 2017-08-18 |
US20160133022A1 (en) | 2016-05-12 |
JP2018500645A (ja) | 2018-01-11 |
WO2016077000A1 (en) | 2016-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107077738B (zh) | 用于跟踪对象的***和方法 | |
US10394318B2 (en) | Scene analysis for improved eye tracking | |
CN109584276A (zh) | 关键点检测方法、装置、设备及可读介质 | |
CN103985137B (zh) | 应用于人机交互的运动物体跟踪方法及*** | |
RU2708027C1 (ru) | Способ передачи движения субъекта из видео на анимированного персонажа | |
CN108960090A (zh) | 视频图像处理方法及装置、计算机可读介质和电子设备 | |
US20200286286A1 (en) | Tracking rigged polygon-mesh models of articulated objects | |
CN109034095A (zh) | 一种人脸对齐检测方法、装置和存储介质 | |
CN111107278B (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
CN111783626B (zh) | 图像识别方法、装置、电子设备及存储介质 | |
CN109697689A (zh) | 存储介质、电子设备、视频合成方法及装置 | |
CN111738072A (zh) | 目标检测模型的训练方法、装置及电子设备 | |
JP2017523498A (ja) | 効率的なフォレストセンシングに基づくアイトラッキング | |
CN109840939A (zh) | 三维重建方法、装置、电子设备及存储介质 | |
CN108491808A (zh) | 用于获取信息的方法及装置 | |
CN111589138B (zh) | 动作预测方法、装置、设备及存储介质 | |
EP3262610B1 (en) | Fast adaptive estimation of motion blur for coherent rendering | |
CN111079588B (zh) | 一种图像处理方法、装置及存储介质 | |
CN113160270A (zh) | 视觉地图生成方法、装置、终端及存储介质 | |
CN110189364B (zh) | 用于生成信息的方法和装置,以及目标跟踪方法和装置 | |
Luo et al. | Realtime speech-driven facial animation using Gaussian Mixture Models | |
CN110309712A (zh) | 一种运动类型识别方法及终端设备 | |
CN115205981B (zh) | 起立姿态检测方法、装置、电子设备及可读存储介质 | |
CN110263743A (zh) | 用于识别图像的方法和装置 | |
CN110197230B (zh) | 用于训练模型的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |