CN103026385B - 使用模板切换和特征适配提供对象跟踪的方法、装置和计算机程序产品 - Google Patents
使用模板切换和特征适配提供对象跟踪的方法、装置和计算机程序产品 Download PDFInfo
- Publication number
- CN103026385B CN103026385B CN201180035913.1A CN201180035913A CN103026385B CN 103026385 B CN103026385 B CN 103026385B CN 201180035913 A CN201180035913 A CN 201180035913A CN 103026385 B CN103026385 B CN 103026385B
- Authority
- CN
- China
- Prior art keywords
- template
- inertia
- incoming frame
- selection
- frame
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/192—Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
- G06V30/194—References adjustable by an adaptive method, e.g. learning
-
- 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
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- 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/20—Special algorithmic details
- G06T2207/20004—Adaptive image processing
-
- 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)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
提供一种方法、装置和计算机程序产品,可使得设备能够提供改进的对象跟踪,例如结合计算机视觉、多媒体内容分析和检索、增强现实、人机交互和基于区域的图像处理。由此,一种方法包括:调节具有目标对象的输入帧的一部分的参数,以匹配模板大小;然后,在输入帧的一部分和活动模板和至少一个选择的不活动模板之间执行基于特征的图像注册。所述方法还可包括:至少基于在输入帧的一部分和选择的不活动模板之间的匹配分数使得选择的不活动模板能够对于随后帧切换至活动模板;和基于活动模板和选择的不活动模板之一确定目标对象在输入帧中的位置。
Description
技术领域
概括地说,本发明的实施例涉及计算机视觉,更具体地,涉及使用在线模板切换和特征适配使得能够进行对象跟踪的装置、方法和计算机程序产品。
背景技术
在当今世界中,电子设备正逐渐普及。无论是用于商业、娱乐、通信、安全或各种其他目的,这种设备的性能不断扩展。随着关于处理能力、呈现技术、存储器、功耗和其他方面做出的演进,各种应用也得到开发,以利用计算设备经过扩展的性能。然而,在寻求进一步发展并开发新应用时,关于这种设备的性能的扩展也引入了新的系列的挑战。
电子计算设备的使用提出新挑战的一个领域涉及计算机视觉。计算机视觉利用机器来观看。由此,例如,计算机视觉通常采用相机和其他元件来建立可获得来自例如视频序列的图像数据的信息、来自多个相机的视图或来自扫描设备的多维数据的系统。计算机视觉可用于许多任务,例如:控制处理或设备运动;检测和/或识别事件、对象、模式或人群;识别信息等。由此,计算机视觉可看作人工视觉系统,其可实现于各种设备和应用的组合中。
在计算机视觉情形下,在视觉帧的系列中对象和/或兴趣区域的跟踪成为了长期存在的问题。具体地,对于可经历明显改变(例如亮度改变、姿态或方位改变、遮蔽等)的对象或兴趣区域,难以提供健壮的跟踪能力。在过去提出了基于图像块和基于特征的对象跟踪方法。一些人将基于图像块的跟踪看作适合于跟踪可经历明显姿态改变的刚性和非刚性对象。然而,传统的基于图像块的方法倾向于遭受漂流模板问题(例如在模板更新中累积错误而导致跟踪失败),并且可能对部分遮蔽敏感。一些人将基于特征的方法看作对部分遮蔽不敏感,但是传统上证明更少用于经历较大姿态改变的跟踪对象。由此,可能期望对象跟踪领域中的改进。
发明内容
因此,提供一种方法、装置和计算机程序产品,使得设备能够提供改进的对象跟踪。具体地,本发明的一些实施例可提供改进的视觉跟踪,例如用于计算机视觉、多媒体内容分析和检索、增强现实、人机交互和基于区域的图像处理。
附图说明
已经概括地描述了本发明,现在参照附图,附图不必按比例绘制,其中:
图1是根据本发明示例性实施例的计算机视觉系统的示意性框图;
图2是根据本发明的示例性实施例的使用模板切换和特征适配提供对象跟踪的装置的示意性框图;和
图3(包括图3A、3B和3C)示出本发明的一个示例性实施例的操作;
图4是根据本发明的示例性实施例的使用模板切换和特征适配提供对象跟踪的方法的流程图;和
图5示出在其上可以实现本发明示例性实施例的芯片集或芯片。
具体实施方式
现在参考其中示出本发明一些而非全部实施例的附图更加完整地描述本发明的示例实施例。当然,本发明可以不同形式实施并且不应该理解为限制为此处所述的实施例;相反,提供这些实施例使得本公开满足适当的法律需求。类似的附图标记通篇表示类似的元件。这里,术语“数据”,“内容”,“信息”和类似的术语可以可交替地使用以表示能够根据本发明实施例被传输,接收,操作和/或存储的数据。因此,任意这些术语的使用不应认为是对本发明实施例的精神和范围的限制。
此处使用的术语“电路”指的是:(a)纯硬件电路实现(例如纯模拟和/或数字电路中的实现);(b)电路和包括软件和/或固件的计算机程序产品(存储于一个或多个计算机可读存储器上)的组合,他们在一起工作从而使得装置执行这里所述的一个或多个功能;和(c)需要软件或固件以进行操作的电路,例如微处理器或微处理器的部分,即使这些软件或固件物理上不存在。“电路”的该定义适用于这个术语在该应用程序中,包括在任意权利要求中的所有应用。作为另一示例,如此处使用的,术语“电路”也包括实现方式,其包括一个或多个处理器和/或一个或多个处理器的部分和附随的软件和/或固件。作为另一示例,此处使用的术语“电路”也包括例如用于移动电话的基带集成电路或应用程序处理器集成电路,或者服务器、蜂窝网络设备、其它网络设备和/或其它计算设备中的类似集成电路。
这里定义的“计算机可读存储介质”(指的是非临时的、物理存储介质(例如易失性或非易失性存储器设备))可区别于“计算机可读传输介质”(指的是电磁信号)。
一些实施例可提供基于健壮性特征的方法,其可延伸至经历明显姿态改变的对象和非刚性对象。一些实施例中,代表性对象外观可在跟踪期间存储为候选模板,并且可选择用于匹配随后帧的特定模板(例如最佳模板)。在跟踪处理期间可增加和切换模板,以保持对象之间的更新关系被跟踪并保持模板用于跟踪。由此,示例性实施例可对于排列不整齐的模板是有弹性的,并且可缓解漂流问题。
示例性实施例可应用于包括固定或移动平台的任意计算机或计算设备的能力。因此,例如,可使用包括图像捕获设备(例如相机电话)和其他移动设备的移动终端来跟踪人脸用于人机交互,跟踪对象(例如,用于增强现实情形,其中跟踪对象并在跟踪的对象上叠加计算机图形),低级图像处理等。然而,可结合网络(例如因特网)提供的服务(例如内容共享或管理服务)来使用示例性实施例。由此,例如,通过自动分析和跟踪上传视频中感兴趣的对象,可使得服务能够通过搜索和共享包括感兴趣的对象的内容来提供印象深刻的用户体验。因此,例如,可提供服务以自动检测、跟踪和通知用户包括用户定义为感兴趣的对象的其他视频剪辑。
如上所述,本发明的实施例可在计算机视觉系统的环境下实践。由此,现在将参照图1说明示例性实施例,图1示出用于采用计算机视觉系统的系统的基本框图。然而,应理解,本发明的实施例可在各种其他环境下实践,并且不限于与计算机视觉系统相关的应用。此外,尽管与计算机视觉系统相关,但是应认识到,图1仅是这样系统的一个基本实例并且不应看作任何方式的限制。
现在参照图1,计算机视觉系统10可包括图像捕获模块20和计算设备30。图像捕获模块20可包括一个或多个相机或配置为捕获图像数据的其他图像捕获传感器。图像数据可以是例如来自一个或多个相应的相机或传感器的视频序列或一个或多个图像的形式。计算设备30可以是计算机(例如个人计算机、膝上型计算机、服务器等)、移动电话、全球定位系统(GPS)设备、个人数字助理(PDA)、寻呼机、移动电视、游戏设备、相机、音频/视频播放器、无线电、或上述的任意组合、和可包括用于执行各种硬件和/或软件处理的处理器和/或存储器的其他类型的电子设备。计算设备30可配置为采用根据以下结合图2的描述更详细说明的本发明实施例的处理。
在图像捕获模块20和计算设备30之间的通信可以是经由有线或无线传输机制的实时或近实时的。一些情况下,图像捕获模块20和计算设备30之间的通信可以是间歇的或延迟的。此外,一些情况下,图像捕获模块20可存储图像数据,其随后可在稍后的时间传送至计算设备30(直接或经由中间设备)。
一些实施例中,图像捕获模块20和计算设备30可以是单独设备(例如移动终端或具有嵌入相机的电话)的一部分。一些情况下,计算设备30可经由网络40与其他设备通信,尽管不需要网络连接。此外,一些情况下,计算设备30可经由网络40与图像捕获模块20通信。例如,一些情形下,图像捕获模块20可以是相机、视觉系统或者甚至经由网络40向服务平台提供图像数据的移动设备的一部分。由此,服务平台(可以是计算机或服务器或服务器库的一部分)可实现为计算设备30,其可托管能够使用模板切换和特征适配进行对象跟踪的装置的实例。
网络40可包括可经由对应的有线和/或无线接口彼此通信的各种不同节点、设备或功能的集合。由此,图1的图示应理解为系统的某些元素的概括图的实例,并非系统或网络40的所有包罗万象或详细视图。例如移动终端或固定计算机终端的一个或多个通信节点(例如计算设备30)可经由网络40彼此通信,并且每个可包括向基础站点(例如接入点)发送信号和从其接收信号的一个或多个天线,基础站点例如可以是作为一个或多个蜂窝或移动网络的一部分的基站或可耦合至如下数据网络的接入点,数据网络例如,局域网(LAN)、城域网(MAN)、和/或广域网(WAN),例如因特网。相应地,例如处理元件的其他设备(如个人计算机、服务器计算机等)可与通信节点耦合。一些实施例中,网络40可采用一个或多个移动接入机制,例如,宽带码分多址(WCDMA)、CDMA2000、全球移动通信系统(GSM)、通用分组无线业务(GPRS)、长期演进(LTE)和/或可支持的类似机制。
现在参照图2,提供根据本发明的示例性实施例的使用在线模板切换和特征适配提供对象跟踪的装置50的示意性框图。装置50可包括处理器70、用户接口72、通信接口74和存储器设备76或与其通信。然而,装置50还可包括以下详述的附加元件。由此,应理解,提供图2的示例性实施例仅用于示例性目的,因此装置50的其他配置也是可能的。此外,图2所示的某些元件可在多个设备(例如以客户端/服务器关系中操作)之间拆分,并且都可在相同设备处实现。
存储器设备76可包括例如一个或多个易失性和/或非易失性存储器。换句话说,例如,存储器设备76可以是电子存储设备(例如计算机可读存储介质),包括配置为存储可由机器(例如计算设备)获取的数据(例如比特)的栅极或其它定义存储器单元的结构。存储器设备76可配置为存储使得装置能够执行根据本发明的示例性实施例的各种功能的信息、数据、应用、指令等。例如,存储器设备76可配置为缓冲由处理器70进行处理的输入数据。附加地或备选地,存储器设备76可配置为存储由处理器70执行的指令。
处理器70可通过多种不同方式实现。例如,处理器70可实现为各种处理部件的一个或多个,例如,协处理器、微处理器、控制器、数字信号处理器(DSP)、具有或不具有附随DSP的处理元件、或各种其他处理设备,包括集成电路,例如ASIC(专用集成电路)、FPGA(场可编程门阵列)、微控制器单元(MCU)、硬件加速器、专用计算机芯片、处理电路等。示例性实施例中,处理器70可配置为执行存储器设备76中存储的或处理器70可访问的指令。备选地或附加地,处理器70可配置为执行硬编码功能。由此,无论是由硬件或软件方法、或由其组合配置,处理器70可代表在相应地配置时能够执行根据本发明实施例的操作的实体(例如,物理实现于电路中)。因此,例如,当处理器70实现为ASIC、FPGA等时,处理器70可为用于进行这里所述的操作的特别地配置的硬件。备选地,作为另一实例,当处理器70实现为软件指令的执行器时,指令可特别地将处理器70配置为当执行指令时执行这里所述的算法和/或操作。然而,一些情况下,处理器70可以是适于通过执行这里所述的算法和/或操作的指令通过处理器70的进一步配置实现本发明的实施例的特定设备(例如移动终端或网络设备)的处理器。通过执行向其提供的或者与处理器70的配置相关联的指令或编程,处理器70可促使对应的功能被执行。处理器70还可包括时钟、算法逻辑单元(ALU)和逻辑门,其配置为支持处理器70的操作。
同时,通信接口74可以是实现在硬件、或硬件和软件的组合中的诸如设备或电路的任意部件,其配置为从/向与装置50通信的网络和/或任意其他设备或模块接收和/或发送数据。由此,通信接口74可包括例如天线(或多个天线)和使得能够与无线通信网络通信的支持硬件和/或软件。在一些环境下,通信接口74可备选地或还可支持有线通信。由此,通信接口74可包括用于支持经由电缆、数字订户线路(DSL)、通用串行总线(USB)、或其他机制进行通信的通信调制解调器和/或其他硬件/软件。
用户接口72可与处理器70通信,以在用户接口72处接收用户输入的指示和/或向用户提供可听、可视、机械或其他输出。由此,用户接口72可包括例如键盘、鼠标、操纵杆、显示器、触摸屏、软键、麦克风、扬声器、或其他输入/输出机制。在装置50实现于服务器或一些其他网络设备的示例性实施例中,用户接口72可被限制、远程定位或消除。然而,在装置50实现于通信设备(例如移动终端)的实施例中,除了其他设备或元素之外,用户接口72可包括扬声器、麦克风、显示器、和键盘等的任意或全部。由此,例如,处理器70可包括用户接口电路,配置为控制例如扬声器、振铃器、麦克风、显示器等的用户接口的一个或多个元件的至少一些功能。处理器70和/或包括处理器70的用户接口电路可配置为通过在处理器70可访问的存储器(例如存储器设备76等)上存储的计算机程序指令(例如软件和/或固件)来控制用户接口的一个或多个元件的一个或多个功能。
一些实施例中,装置50可包括媒体捕获模块(例如图像捕获模块20)或与其通信,例如相机、适配和/或音频模块,与控制器20通信。媒体捕获模块可以是捕获图像、视频和/或音频以用于存储、显示或传输的任意部件。例如,在媒体捕获模块为相机模块78的示例性实施例中,相机模块78可包括能够从捕获的图像形成数字图像文件或从图像帧的序列形成视频内容文件的数码相机。由此,相机模块78可包括所有硬件(例如透镜或其他光学设备)和用于从捕获的图像创建数字图像文件所必要的软件。或者,相机模块78可仅包括浏览图像所需的硬件,而装置50的存储器设备以从捕获的图像创建数字图像文件所必要的软件的形式存储指令以供处理器70执行。示例性实施例中,相机模块78还可包括例如协处理器的处理设备(在处理图像数据时协助处理器70)和编码器和/或解码器(用于压缩和/或解压缩图像数据)。编码器和/或解码器可根据JPEG标准格式或其他格式来编码和/或解码。
示例性实施例中,处理器70可实现为,包括或控制特征适配和模板切换管理器80。由此,一些实施例中,处理器70可以说是,使得、指示或控制归因于这里所述的特征适配和模板切换管理器80的各种功能的执行或出现。特征适配和模板切换管理器80可以是诸如根据软件操作或在硬件或硬件和软件组合中实现的设备或电路的任意部件(例如处理器70在软件控制下操作,处理器70实现为特别地配置为执行这里所述的操作的ASIC或FPGA、或其组合),从而配置该设备或电路以执行这里所述的特征适配和模板切换管理器80的对应功能。因此,在采用软件的实例中,执行软件的设备或电路(例如一个实例中的处理器70)形成与这种部件相关的结构。
特征适配和模板切换管理器80可配置为执行这里所述的特征适配,还执行模板切换以提高对象跟踪性能。由此,特征适配和模板切换管理器80可配置为在跟踪期间使得代表性对象外观存储为候选模板。特征适配和模板切换管理器80还可配置为从候选模板中选择模板以采用所选模板作为在随后帧中匹配的“最佳模板”。由此,特征适配和模板切换管理器80可管理模板的在线增加和切换,以保持关于新对象外观的更新。
特征适配和模板切换管理器80可提供相对简单的机制,以对于初始化为第一视频帧的模板执行对象跟踪,如果期望,能够在随后帧中进行模板对象的跟踪,即使在相对长的时间段上。此外,特征适配和模板切换管理器80可配置为在存在明显改变(例如姿态改变、亮度改变、变形、遮蔽等)时提供相对健壮的对象跟踪。为了实现健壮性跟踪,特征适配和模板切换管理器80可配置为使得能够更新初始模板,从而新对象外观可适当地结合在匹配操作中。根据示例性实施例,代表性对象外观可在跟踪期间被存储,从而可将代表性对象外观用作在随后帧中进行图像匹配的候选模板。由此,可采用基于特征的图像注册方法,依据使用中的图像区域来匹配候选模板。可使用快速类Haar特征来跟踪关键点,并可以提供对每个帧执行多模板匹配操作,同时仍旧实现实时跟踪速度。可选择提供最高或最好匹配分数的模板来确定目标对象的位置。由此,可使用特征适配和模板切换管理器80来控制模板增加和切换以保持关于由于变形、姿态改变等的新对象外观而更新的特征适配和模板切换管理器80。特征适配和模板切换管理器80也可适合于不一致的模板,因此缓解在传统机制中可发生的漂流问题。
根据一些实施例,特征适配和模板切换管理器80由于在对象检测和图像匹配操作中其相对快速的计算可采用基于类Haar特征的匹配。在美国专利申请No.2007/0009159中描述了特征适配和模板切换管理器80可采用的整体类Haar特征匹配的实例,其全部内容通过引用合并于此。示例性实施例中,特征适配和模板切换管理器80可配置为利用从以关键点为中心的预定大小的网格提取的类Haar特征。可对于每个采样点计算类Haar特征分量,其中每个分量代表在不同方向(例如水平、垂直、和左/右对角线方向)排列的邻近块之间的密度(intensity)差。因此,每个关键点可导致多维的类Haar特征向量,以提供简单的机制,由此提供用于关键点跟踪的识别力。每个关键点可包括X-Y图像像素位置,在其周围提取类Haar特征。模板T={(h1,p1),(h2,p2),...,(hN,pN)}可因此表示为类Haar特征h和伴随位置向量p=(x,y)T的组合。
在两组特征点之间的最佳对应性可公式化为线性分配问题,对此由两个类Haar特征向量之间的欧几里得距离给出加权的相邻矩阵的元素。一些实施例中,可由特征适配和模板切换管理器80关于邻近矩阵的列式和行式最小元素做出确定。
由此,特征适配和模板切换管理器80可配置为采用以下算法1所示的最佳最佳匹配策略,以减少评估邻近矩阵的计算成本。如果距离已经超过沿着讨论中的行或列的目前的最小距离,则不必对特征向量距离的所有元素求和,由此可实现成本节省。如果输入图像类似于特定模板,则可期望最佳最佳匹配点的数目与特征点的总数的比相对高(例如>0.5)。这个比可因此用来评估跟踪质量。
给定模板关键点{p1,...pK}和输入图像关键点{p′1,...p′K}之间的对应性,几何模型拟合和异常值去除的目的可以是到模板的几何变形,以最小化由公式(1)指示的重投影误差的中间值
其中,是相似性变形 的参数,ei=||Sμ(pi)-p′i||是重投影误差。
公式(1)中的最小中间值平方(LMS)评估关于异常值是健壮的,并具有大约50%的破坏点。然而,实现高破坏点的LMS算法可通常在计算上是要求高的。由此,可采用叠代过程来评估解。重投影误差在中间值误差以下的内点对应性可用于评估新变形参数μ。由此,μ和内点对应性可被叠代地重评估,直到在预定次数(例如10)个连续叠代中无法实现进一步改进(或不明显)。然后,可将最佳变形Sμ·(·)应用于模板边界框。上述重评估可主要在变形空间中执行爬山,并相对快速地聚集于局部最小值,只要目标对象保持至少部分可见。
示例性实施例中,特征适配和模板切换管理器80可采用跟踪算法,其通过初始剪切、旋转和调节输入帧的跟踪的图像区域的大小来检查对象正被跟踪的每个新视频帧,以产生固定大小的输入图像块。然后,可使用上述基于特征的图像注册依据相同大小的候选模板来匹配图像块。然后,对于下一帧中的跟踪图像区域应用最佳几何变形。由此,特征适配和模板切换管理器80可采用跟踪算法,该算法通过使得能够进行类Haar特征适配和模板切换以及还在跟踪期间提供稳定特征的选择来适合于图像变化。
在通过特征适配和模板切换管理器80采用跟踪算法期间,可通过监视可指示成像匹配质量的各种参数来评估跟踪质量。监视的参数可包括最佳最佳匹配点的数目与模板关键点的总数的比(r)。比(r)的值可以是跟踪质量的相对健壮性指示器。可监视的另一参数可包括在最佳最佳匹配的类Haar特征向量之间的平均欧几里得距离(f),这可量化两个图像之间的纹理差异。另一参数,即在几何拟合期间重投影误差(d)的中间值可捕获两个图像之间的结构性变化。
当跟踪质量被认为良好时(例如当一些实例中r大于0.45时),类Haar特征向量可适于小图像改变。这样的适配可通过用从输入图像提取的对应的类Haar特征向量替换那些匹配的模板关键点的类Haar特征向量来实现。这个适配可用于保持高质量跟踪,即使没有执行模板切换。然而,在一些情况下,特征等级适配可仅为临时的,因此当模板被关闭时,可保留原始特征向量。此外,关键点的位置可保持不变,从而可保持模板对象的几何结构。
当发生明显改变时(例如姿态、光照、遮蔽条件等的改变),特征适配可能不足以提供质量跟踪(例如一些情况下,当r下降到0.45以下时)。根据一些实例,可执行模板切换,以在这些条件下进一步提升对象跟踪。当跟踪质量下降或明显改变的其他指示存在时,当前输入图像可定义为“未来的新模板”,并且可作为新模板来增加。通过自动增加新模板,特征适配和模板切换管理器80可配置为当体验相对大的图像变化时进行自身更新以用于跟踪。
在每个新帧中,特征适配和模板切换管理器80可配置为依据包括活动模板和至少一个不活动模板(例如选择的不活动模板)的至少两个模板来测试输入图像区域或跟踪区域。活动模板可以是至少已基于先前帧打开的模板。选择的不活动模板可以是多个不活动模板之一,他们被存储(例如在存储器设备76中)用于与新帧比较,以提升特征适配和模板切换管理器80的更新性能。示例性实施例中,可基于质量测量(例如其累积的r值)从多个不活动模板选择所述选择的不活动模板。例如,候选模板(包括不活动模板)可具有r值或累积的一些其他质量测量相关的值,并且这样的值可与每个相应的候选模板关联地存储。候选模板可基于质量测量(例如累积的r值)来排名,并且排名最高的模板可识别为“最稳定模板”。具有低质量测量(例如低累积的r值)的不活动模板可能不用于跟踪,因为他们典型地不一致或关于当前图像为假的。
在示例性实施例中,特征适配和模板切换管理器80可配置为将新帧与活动模板和选择的不活动模板两者相比较。如果选择的不活动模板比活动模板更好地与新帧匹配,则选择的不活动模板可打开,并变为下一帧的活动模板。在任意给定时间,可能仅有一个活动模板。一些情况下,每当模板打开并用于跟踪时,可存储和累积模板的对应的r值,以用于上述排名的目的。
一些实施例中,可使用最稳定模板来验证未来的新模板并修正不一致。验证可包括在最稳定模板和未来的新模板之间的推定匹配和几何拟合。一些情况下,如果r、f和d的值具有特定值或满足某些标准(例如不超过某些阈值),则可接受验证。由此,特征适配和模板切换管理器80可提供几何修正,其与模板切换结合可提供对于不一致的模板的弹性和缓解漂流问题。
由于噪声或背景杂乱,模板特征可能并非始终良好的用于跟踪。当可使用基于学习的方法在对象和背景特征之间区分时,一些实施例可将几何地验证的内点特征看作可靠特征以用于跟踪。由此,一些实例中,可关于特征点在几何拟合运算中进行了多少次(c)肯定地(positively)验证的简单计数。
在跟踪期间,如公式(2)所示,可通过向邻近矩阵元素增加偏移项而在匹配运算中青睐具有高计数(c)的特征
其中,||hi-h′j||是类Haar特征之间的欧几里得距离,β是用户指定的参数,c(i)是对应的稳定特征计数,并且是所有模板特征计数的均值。通过使用这样的匹配策略,可提升特征适配和模板切换管理器80的跟踪健壮性。
示例性实施例中,虽有对于特征适配和模板切换的努力,跟踪仍旧难以用于完整的对象遮蔽或快速相机或对象运动。在这样的情况下,可调用完全搜索对象检测处理,以帮助跟踪的重新初始化。一些情况下,完全搜索对象检测处理可包括至少三个操作,包括对于新输入的视频帧从整个图像帧上设置的晶格的网格点提取类Haar特征向量。然后,模板可扫描遍及整个帧(例如,以与网格点之间的间隔匹配的间隔)。然后,可将每个模板类Haar特征向量与从图像帧中最靠近的网格点提取的类Haar特征向量相比较。对于每个向量分量,如果在模板和图像特征之间的差小于给定阈值,可记上一票。可检测具有最高票数(即vmax)的位置,并且也可检测具有至少vmax的预定比(例如0.95*vmax)的所有位置。在所有检测的位置中,最接近先前跟踪位置的位置可用于初始化跟踪器。
因此,本发明的一些实施例可提供相对高的跟踪健壮性。可由之后不再有跟踪从故障恢复的帧的数目指示的跟踪健壮性对于包括照明改变、姿态改变、部分遮蔽等的各个条件可相对高。此外,可在由于某些原因跟踪丢失的情形下进行重新初始化。由此,使用上述的稳定特征匹配策略结合公式(2)以及通过增加和切换至更好的一致模板提供对漂流模板的修正,本发明的一些示例性实施例可在大量条件下为对象跟踪提供对象跟踪的良好精确性,并具有合理量的计算复杂度。提供这种跟踪的计算成本可与被跟踪的特征点的数目成比例,但是对于大多数应用,可实现接近实时跟踪。
图3(包括图3A、3B和3C)示出一个示例性实施例的操作。可提供输入图像帧100,用于图3A所示的分析。实线框102可指示对于这个帧的跟踪结果,其可对应于被跟踪的对象(例如,个体的脸)。同时,虚线框104可指示从先前帧的跟踪结果。与来自先前帧的跟踪结果对应的图像的一部分可被修剪、旋转、和调节大小成图3B所示的图像。然后,与来自先前帧的跟踪结果对应的图像的一部分可与图3C所示的活动模板图像匹配。图3B所示的线段可代表推导的匹配输出。可通过几何拟合来抛弃(reject)异常值对应性(例如在背景杂波中)。
由此,使用本发明的示例性实施例,相比于基于图像块的跟踪,可实施基于特征的匹配方法以提供健壮性跟踪,即使对于部分遮蔽的对象。由此,可应用基于特征的跟踪,通过在模板的集合之间切换来跟踪非平面对象,以解决姿态改变或影响被跟踪的对象的其他因素。
图4是根据本发明示例性实施例的系统、方法和程序产品的流程图。可以理解,可通过各种部件(例如硬件、固件、处理器、电路和/或与包括一个或多个计算机程序指令的软件的执行关联的其它设备)来实现流程图的每个方框以及流程图中的方框的组合。例如,可由计算机程序指令来实现上述一个或多个过程。由此,实现上述过程的计算机程序指令可通过采用本发明实施例的装置的存储器设备来存储,并通过装置的处理器来执行。可以理解,可将任意这种计算机程序指令载入到计算机或其他可编程装置(例如硬件)上,以生成机器,从而产生的计算机或其他可编程装置实现在流程图中指定的功能。这些计算机程序指令还可以存储在引导计算机或其他可编程装置按特定方式运行的计算机可读存储器中,从而在计算机可读存储器中存储的指令产生这样的制品,对该制品的执行实现在流程图中指定的功能。计算机程序指令还可载入到计算机或其他可编程装置中,以使得一系列操作在计算机或其他可编程装置上执行,以产生计算机实现的过程,从而在计算机或其他可编程装置上执行的指令提供用于实现在流程图中指定的功能的操作。
因此,流程图的方框支持用于执行特定功能的部件的组合、用于执行特定功能的操作的组合和用于执行特定功能的程序指令部件。还可以理解,可通过执行指定功能的基于专用硬件的计算机系统、或专用硬件和计算机指令的组合来实现流程图中的一个或多个方框,以及流程图中的方框的组合。
由此,一种能够使用模板切换和特征适配进行对象跟踪的方法的一个实施例,如图4所示,包括:在操作200,调节其中具有目标对象的输入帧的一部分的参数,以匹配模板大小。该方法还可包括:在操作210,在输入帧的一部分和活动模板和至少一个选择的不活动模板之间执行基于特征的图像注册。该方法还可包括:在操作220,至少部分地基于在输入帧的一部分和选择的不活动模板之间的匹配分数对于随后帧使得选择的不活动模板能够切换至活动模板,以及在操作230,基于活动模板和选择的不活动模板之一确定目标对象在输入帧中的位置。
一些实施例中,上述操作中的某些可被修改或进一步放大,如下所述。此外,一些实施例中,可包括附加可选操作,其实例在图4的虚线中示出。可按任意顺序和任意组合来对上述操作执行修改、增加或放大。由此,例如,该方法还可包括:在操作240,增加输入帧的一部分作为候选模板。示例性实施例中,确定模板对象的位置可包括:使用活动模板或选择的不活动模板中提供更能指示与输入帧的一部分匹配的匹配分数的一个来确定位置。一些实施例中,调节输入帧的一部分的参数可包括:对输入帧的一部分进行修剪、旋转和大小调节。示例性实施例中,选择的不活动模板可为与最佳最佳匹配点的数目和模板关键点的总数的比相关计分的多个候选模板的最高排名的不活动模板。一些情况下,可对每个候选模板存储和累积所述比。
在示例性实施例中,执行图4的方法的装置可包括处理器(例如处理器70),配置为执行上述操作(200-240)的一些或每个。处理器例如可配置为,通过执行硬件实现的逻辑功能、执行存储的指令、或执行用于执行每个操作的算法来执行操作(200-240)。或者,装置可包括执行上述每个操作的部件。由此,根据示例性实施例,用于执行操作200-240的部件的实例可包括例如,处理器70、特征适配和模板切换管理器80、和/或用于执行指令或执行用于处理上述信息的算法的设备或电路。
一些情况下,示例性实施例可在芯片或芯片集上实现。图5描述了在其上可以实现本发明实施方式的芯片集300。将芯片集300编程为如此处描述的跟踪对象,并包括例如相对于图2所描述的被并入一个或多个物理封装(例如,芯片)的处理器和存储器组件。通过示例的方式,物理封装包括在结构组装(例如,基板)上的一个或多个材料、组件、和/或导线的布置,从而提供诸如物理强度、大小保持和/或电子交互限制的一个或多个特性。可以预期的是,在特定的实施方式中,芯片集300可在单一的芯片上实现。可以进一步预期的是,在特定的实施方式中,芯片集或芯片300可实现为单独的“片上系统”。可以进一步预期的是,在特定的实施方式中,将不使用单独ASIC,例如,这里公开的所有相关功能可通过一个或多个处理器执行。芯片集或芯片300,或者其一部分,构成用于执行对象跟踪服务的一个或多个步骤的部件。芯片集或芯片800,或者其一部分,构成用于执行跟踪对象的一个或多个步骤的部件。
在一个实施方式中,芯片集或芯片300包括诸如用于在芯片集300的组件之间传递信息的总线301的通信机制。处理器303具有与总线301的连通性以执行例如存储在存储器305中的指令和处理信息。处理器303可包括一个或多个处理核心,其中将每个核心配置为独立地执行。多核心处理器能够在单一物理封装中进行多处理。多核心处理器的实施例包括两个、四个、八个或更多个处理核心。可替换地或另外地,处理器303可包括一个或多个通过总线301串联配置的微处理器,以便能够独立地执行指令、流水线和多线程。处理器303还可配备有一个或多个专用组件以执行特定的处理功能和任务,例如一个或多个数字信号处理器(DSP)307、或一个或多个专用集成电路(ASIC)309。典型地,将DSP307配置为与处理器303独立地实时处理真实世界的信号(例如,声音、视频)。相似地,可将ASIC309配置为执行不能由更通用的处理器容易地执行的专用功能。这里描述的有助于执行本发明功能的其它专用组件可包括一个或多个现场可编程门阵列(FPGA)(没有示出)、一个或多个控制器(没有示出)、或一个或多个其它专用计算机芯片。
在一个实施例中,芯片集或芯片300仅包括一个或多个处理器和支持和/或涉及和/或用于一个或多个处理器的一些软件和/或固件。
处理器303和附带的组件具有经由总线301的与存储器305的连通性。存储器305包括用于存储可执行指令的动态存储器(例如,RAM、磁盘、可写光盘等)和静态存储器(例如,ROM、CD-ROM等),其在被执行时可执行这里描述的创造性步骤以注册带有计数的标识符。存储器305还存储与创造性步骤的执行相关的数据或由创造性步骤的执行所产生的数据。
一些情况下,上述操作(200-240)与任意修改一起可在以下方法中实现,即,便于访问至少一个接口以允许经由至少一个网络访问至少一个服务。这个情况下,至少一个服务可以是至少执行操作200-240。
根据示例性实施例的装置的实例可包括至少一个处理器和包括计算机程序代码的至少一个存储器。至少一个存储器和计算机程序代码可配置为,通过至少一个处理器,使得装置执行操作200-240(可具有或不具有任意组合的上述修改和放大)。
根据示例性实施例的计算机程序产品的实例可包括至少一个计算机可读存储介质,其中存储有计算机可执行程序代码指令,所述计算机可执行程序代码指令可包括用于执行操作200-240的程序代码指令(可具有或不具有任意组合的上述修改和放大)。
这里阐述的本发明的许多修改和其他实施例使得本领域普通技术人员得知这些发明涉及在先前说明书和相关附图中呈现的教导的优点。因此,可以理解,本发明不限于这里公开的特定实施例,并且其修改和其他实施例包括在所附权利要求的范围内。此外,尽管以上描述和相关附图在元件和/或功能的某些示例性组合的环境下描述了示例性实施例,但是可理解,可通过备选实施例提供元件和/或功能的不同组合,而不脱离所附权利要求的范围。由此,例如,与以上明确描述的元件和/或功能的不同组合也认为是在所附权利要求的一些中所阐述的那样。尽管这里采用了特定术语,但是他们的使用仅在于一般性和说明性的意义,而并非限制。
Claims (12)
1.一种用于使用模板切换和特征适配提供对象跟踪的方法,包括:
调节其中具有目标对象的输入帧的一部分的参数,以匹配模板大小;
在输入帧的一部分和活动模板和至少一个选择的不活动模板之间执行基于特征的图像注册;
至少基于在输入帧的一部分和选择的不活动模板之间的匹配分数使得选择的不活动模板能够对于随后帧切换至活动模板;和
基于活动模板和选择的不活动模板之一确定目标对象在输入帧中的位置,其中选择的不活动模板包括:与最佳匹配点的数目和模板关键点的总数的比相关计分的多个候选模板中的最高排名的不活动模板。
2.如权利要求1所述的方法,还包括:增加输入帧的一部分作为候选模板。
3.如权利要求1或2中任一项所述的方法,其中确定目标对象的位置包括:使用活动模板或选择的不活动模板中提供更能指示与输入帧的一部分匹配的匹配分数的一个模板来确定位置。
4.如权利要求1-2中任一项所述的方法,其中调节输入帧的一部分的参数包括:对输入帧的一部分进行修剪、旋转和大小调节。
5.如权利要求1所述的方法,还包括:对每个候选模板累积所述比。
6.一种用于使用模板切换和特征适配提供对象跟踪的装置,包括:
用于调节其中具有目标对象的输入帧的一部分的参数,以匹配模板大小的部件;
用于在输入帧的一部分和活动模板和至少一个选择的不活动模板之间执行基于特征的图像注册的部件;
用于至少基于在输入帧的一部分和选择的不活动模板之间的匹配分数使得选择的不活动模板能够对于随后帧切换至活动模板的部件;和
用于基于活动模板和选择的不活动模板之一确定目标对象在输入帧中的位置的部件,其中选择的不活动模板包括:与最佳匹配点的数目和模板关键点的总数的比相关计分的多个候选模板中的最高排名的不活动模板。
7.如权利要求6所述的装置,还包括:用于增加输入帧的一部分作为候选模板的部件。
8.如权利要求6或7中任一项所述的装置,还包括:用于通过使用活动模板或选择的不活动模板中提供更能指示与输入帧的一部分匹配的匹配分数的一个模板来确定位置,由此确定目标对象的位置的部件。
9.如权利要求6-7中任一项所述的装置,还包括:用于通过对输入帧的一部分进行修剪、旋转和大小调节,由此调节输入帧的一部分的参数的部件。
10.如权利要求6所述的装置,还包括:对每个候选模板累积所述比的部件。
11.如权利要求6-7和10中任一项所述的装置,其中所述装置包括或实现在移动终端上。
12.如权利要求11所述的装置,其中所述移动终端还包括用户接口和配置为控制用户接口的至少一些功能的用户接口电路。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US35731510P | 2010-06-22 | 2010-06-22 | |
US61/357,315 | 2010-06-22 | ||
PCT/IB2011/052527 WO2011161579A1 (en) | 2010-06-22 | 2011-06-09 | Method, apparatus and computer program product for providing object tracking using template switching and feature adaptation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103026385A CN103026385A (zh) | 2013-04-03 |
CN103026385B true CN103026385B (zh) | 2015-09-16 |
Family
ID=45328709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180035913.1A Expired - Fee Related CN103026385B (zh) | 2010-06-22 | 2011-06-09 | 使用模板切换和特征适配提供对象跟踪的方法、装置和计算机程序产品 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8718324B2 (zh) |
EP (1) | EP2591460A1 (zh) |
KR (1) | KR101457313B1 (zh) |
CN (1) | CN103026385B (zh) |
WO (1) | WO2011161579A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2036045A1 (en) * | 2007-07-11 | 2009-03-18 | Cairos technologies AG | Video tracking method and appartus arrangement for performing the method |
JP2012133759A (ja) * | 2010-11-29 | 2012-07-12 | Canon Inc | 侵入物体の検知を行うことができる物体追尾装置、物体追尾方法及び記憶媒体 |
US8306267B1 (en) * | 2011-05-09 | 2012-11-06 | Google Inc. | Object tracking |
JP5719230B2 (ja) * | 2011-05-10 | 2015-05-13 | キヤノン株式会社 | 物体認識装置、物体認識装置の制御方法、およびプログラム |
US8687104B2 (en) * | 2012-03-27 | 2014-04-01 | Amazon Technologies, Inc. | User-guided object identification |
CN103426003B (zh) * | 2012-05-22 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 增强现实交互的实现方法和系统 |
US9064184B2 (en) | 2012-06-18 | 2015-06-23 | Ebay Inc. | Normalized images for item listings |
US10645345B2 (en) | 2012-07-03 | 2020-05-05 | Verint Americas Inc. | System and method of video capture and search optimization |
US8971573B2 (en) * | 2012-09-12 | 2015-03-03 | Xerox Corporation | Video-tracking for video-based speed enforcement |
US9554049B2 (en) | 2012-12-04 | 2017-01-24 | Ebay Inc. | Guided video capture for item listings |
EP2763401A1 (de) * | 2013-02-02 | 2014-08-06 | Novomatic AG | Eingebettetes System zur Videoverarbeitung mit Hardware-Mitteln |
US9406143B2 (en) * | 2013-02-21 | 2016-08-02 | Samsung Electronics Co., Ltd. | Electronic device and method of operating electronic device |
US9684881B2 (en) | 2013-06-26 | 2017-06-20 | Verint Americas Inc. | System and method of workforce optimization |
US9836852B2 (en) * | 2013-12-21 | 2017-12-05 | Qualcomm Incorporated | System and method to stabilize display of an object tracking box |
US10019631B2 (en) | 2015-11-05 | 2018-07-10 | Qualcomm Incorporated | Adapting to appearance variations when tracking a target object in video sequence |
US10636152B2 (en) | 2016-11-15 | 2020-04-28 | Gvbb Holdings S.A.R.L. | System and method of hybrid tracking for match moving |
JP2019017867A (ja) * | 2017-07-20 | 2019-02-07 | 株式会社東芝 | 情報処理装置、情報処理システム、およびプログラム |
AU2017254859A1 (en) | 2017-10-31 | 2019-05-16 | Canon Kabushiki Kaisha | Method, system and apparatus for stabilising frames of a captured video sequence |
US10706561B2 (en) * | 2017-12-21 | 2020-07-07 | 612 Authentic Media | Systems and methods to track objects in video |
US11087129B2 (en) * | 2018-12-19 | 2021-08-10 | International Business Machines Corporation | Interactive virtual simulation system |
CN110322569B (zh) * | 2019-07-03 | 2023-03-31 | 百度在线网络技术(北京)有限公司 | 多模态ar处理方法、装置、设备和可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6529613B1 (en) * | 1996-11-27 | 2003-03-04 | Princeton Video Image, Inc. | Motion tracking using image-texture templates |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE0300774D0 (sv) * | 2003-03-21 | 2003-03-21 | Optillion Ab | Optical modulator |
US7742077B2 (en) * | 2004-02-19 | 2010-06-22 | Robert Bosch Gmbh | Image stabilization system and method for a video camera |
US20060209214A1 (en) * | 2005-03-17 | 2006-09-21 | Xerox Corporation | Digital photo album systems and methods |
US20070009159A1 (en) * | 2005-06-24 | 2007-01-11 | Nokia Corporation | Image recognition system and method using holistic Harr-like feature matching |
US8131014B2 (en) * | 2006-03-01 | 2012-03-06 | Nikon Corporation | Object-tracking computer program product, object-tracking device, and camera |
US7725411B2 (en) * | 2006-04-03 | 2010-05-25 | Nokia Corporation | Method, apparatus, mobile terminal and computer program product for providing data clustering and mode selection |
-
2011
- 2011-06-09 CN CN201180035913.1A patent/CN103026385B/zh not_active Expired - Fee Related
- 2011-06-09 EP EP11797702.5A patent/EP2591460A1/en not_active Withdrawn
- 2011-06-09 WO PCT/IB2011/052527 patent/WO2011161579A1/en active Application Filing
- 2011-06-09 KR KR1020137001565A patent/KR101457313B1/ko not_active IP Right Cessation
- 2011-06-15 US US13/161,428 patent/US8718324B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6529613B1 (en) * | 1996-11-27 | 2003-03-04 | Princeton Video Image, Inc. | Motion tracking using image-texture templates |
Also Published As
Publication number | Publication date |
---|---|
US20110311100A1 (en) | 2011-12-22 |
WO2011161579A1 (en) | 2011-12-29 |
KR20130025944A (ko) | 2013-03-12 |
KR101457313B1 (ko) | 2014-11-04 |
US8718324B2 (en) | 2014-05-06 |
EP2591460A1 (en) | 2013-05-15 |
CN103026385A (zh) | 2013-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103026385B (zh) | 使用模板切换和特征适配提供对象跟踪的方法、装置和计算机程序产品 | |
CN102844771B (zh) | 用旋转不变特征描述符进行跟踪和识别的方法和设备 | |
US10134165B2 (en) | Image distractor detection and processing | |
US9317762B2 (en) | Face recognition using depth based tracking | |
CN102834843B (zh) | 用于面部检测的方法和装置 | |
CN103514432B (zh) | 人脸特征提取方法、设备和计算机程序产品 | |
JP5985622B2 (ja) | オプティカルフローを決定するためのコンテンツ適応型システム、方法、及び装置 | |
CN104094194A (zh) | 用于基于多个传感器信号的融合识别手势的方法和设备 | |
US20120212573A1 (en) | Method, terminal and computer-readable recording medium for generating panoramic images | |
CN106326830A (zh) | 指纹识别方法和设备 | |
CN102640168A (zh) | 用于基于局部二进制模式的面部特征定位的方法和设备 | |
US20190180149A1 (en) | System and method of classifying an action or event | |
CN109074497A (zh) | 使用深度信息识别视频图像序列中的活动 | |
CN111652250A (zh) | 基于多边形的遥感影像建筑物提取方法、装置及存储介质 | |
Li et al. | Aligning discriminative and representative features: An unsupervised domain adaptation method for building damage assessment | |
CN103890782A (zh) | 用于手势识别的方法和设备 | |
CN113378897A (zh) | 基于神经网络的遥感图像分类方法、计算设备及存储介质 | |
CN117690164B (zh) | 基于边缘计算的机场飞鸟识别驱赶方法及系统 | |
CN112825116B (zh) | 监控视频图像人脸检测和追踪方法、装置、介质及设备 | |
Erhan et al. | Patterns of approximated localised moments for visual loop closure detection | |
CN106469437A (zh) | 图像处理方法和图像处理装置 | |
US12026942B2 (en) | Method to detect object | |
CN111652251B (zh) | 遥感影像建筑物特征提取模型构建方法、装置及存储介质 | |
US20220058389A1 (en) | Method To Detect Object | |
US20230410505A1 (en) | Video manipulation detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20151224 Address after: Espoo, Finland Patentee after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Patentee before: Nokia Oyj |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150916 Termination date: 20160609 |