CN106558067B - 对象跟踪方法、装置和系统 - Google Patents

对象跟踪方法、装置和系统 Download PDF

Info

Publication number
CN106558067B
CN106558067B CN201510622651.9A CN201510622651A CN106558067B CN 106558067 B CN106558067 B CN 106558067B CN 201510622651 A CN201510622651 A CN 201510622651A CN 106558067 B CN106558067 B CN 106558067B
Authority
CN
China
Prior art keywords
convex closure
previous
limbs
current
principal direction
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
Application number
CN201510622651.9A
Other languages
English (en)
Other versions
CN106558067A (zh
Inventor
游赣梅
鲁耀杰
陈超
刘殿超
师忠超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to CN201510622651.9A priority Critical patent/CN106558067B/zh
Priority to EP16185664.6A priority patent/EP3147820B1/en
Publication of CN106558067A publication Critical patent/CN106558067A/zh
Application granted granted Critical
Publication of CN106558067B publication Critical patent/CN106558067B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/752Contour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle

Abstract

一种在视差图中进行对象跟踪的方法、装置和系统,该方法包括:抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。

Description

对象跟踪方法、装置和系统
技术领域
本技术涉及立体视觉、计算机检测和跟踪领域,且更具体地,涉及一种在视差图中进行对象跟踪的方法、装置和系统。
背景技术
应用领域与辅助驾驶,自动识别和跟踪,驾驶预警等领域相关。在用于智能驾驶的立体视觉项目中,跟踪行人或动物等对象是很重要的,尤其是在城市场景中。但是,由于对象的姿势的变化和背景变化以及对象的距离变化,跟踪运动的对象是很难的。
因此,需要一种在视差图中进行对象跟踪的技术。
发明内容
根据本发明的一个方面,提供一种在视差图中进行对象跟踪的方法,包括:抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。
根据本发明的另一个方面,提供一种在视差图中进行对象跟踪的装置,包括:凸包抽取器,被配置为抽取先前帧的对象模板中的先前凸包;对象躯干位置凸包定位器,被配置为在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;其中,所述凸包抽取器还被配置为在所述当前躯干部分周围的区域中抽取各个当前四肢凸包,所述装置还包括:对象凸包匹配器,被配置为根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致并寻找与一个先前四肢凸包匹配的旋转后的当前四肢凸包,对象定位器,被配置为根据匹配结果,定位当前帧中的对象的四肢位置,以确定当前帧中的对象模板以实现对象跟踪。
根据本发明的另一个方面,提供一种在视差图中进行对象跟踪的系统,包括:处理器;存储器,耦接于所述处理器,且存储计算机可执行指令,所述计算机指令在由处理器执行时进行如下步骤:抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。
附图说明
图1示出应用根据本发明的实施例的对象跟踪算法的硬件场景图。
图2示出了应用根据本发明的实施例的对象跟踪算法的示意图。
图3示出了根据本发明的实施例的对象跟踪系统的模块图。
图4示出了根据本发明的一个实施例的对象跟踪方法的示例流程图。
图5示出了根据本发明的一个实施例的对象跟踪方法的系统序列图。
图6示出了示例的先前对象模板灰度图及其视差图以及当前帧灰度图及其视差图的示意图。
图7示出了凸包抽取器的模块图。
图8A-8D示出了抽取凸包以及获得凸包的梯度主方向的过程的示意图。
图9A-9B示出了在当前帧的躯干周围的区域中抽取四肢凸包的过程的示意图。
图10示出了将当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致的过程的示意图。
图11示出了在新的当前帧中检测到的对象结果的示意图。
图12示出了用根据本发明的实施例的对象跟踪算法的计算机系统/服务器的示意图。
具体实施方式
现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于所述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。
注意,接下来要介绍的示例仅是一个具体的例子,而不作为限制本发明的实施例必须为如下具体的步骤、数值、条件、数据、顺序等等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。
图1示出应用根据本发明的实施例的对象跟踪算法的硬件场景图。
输入设备(1100)输入视差图和道路消失曲线,中央处理单元(CPU)(1200)实现跟踪对象算法;输入和中间结果可以被存储在存储设备(1300),最后从输出设备(1400)输出跟踪到的对象。
图2示出了应用根据本发明的实施例的对象跟踪算法的示意图。
具体地,图2示出了安装了双目相机的车辆,利用双目相机获得左图和右图,通过芯片来处理对象跟踪算法。
图3示出了根据本发明的实施例的对象跟踪系统的模块图。
如图3所示,输入历史帧(或先前帧)中已经能够检测到的对象模板和新的当前帧图像的各自的视差图和灰度图,并将它们读取到内存(101)中。在本文中,例如,利用行人模板作为对象模板的例子,但是对象模板不限于此,对象还可以包括动物等具有躯干和四肢的对象。
在CPU(102)中用如下5个模块来处理数据:凸包抽取器(103),对象躯干位置凸包定位器(104),对象凸包匹配器(105),对象定位器(106)和可选的(而非必须的)对象模板更新器(107)。输出的是新的当前帧图像中检测到的行人对象。
凸包抽取器(103)抽取先前帧的对象模板中的先前凸包,该先前凸包可以至少包括先前躯干凸包和先前四肢凸包。具体地,该凸包抽取器(103)可以抽取视差连通区域和它们的视差外轮廓,然后抽取视差外轮廓的梯度主方向;最后根据梯度主方向抽取凸包。抽取凸包的处理有两次。一次是在先前帧的行人模板中抽取先前凸包,另一次是在新的当前帧中抽取当前躯干周围的凸包。
凸包的概念是在凸包中任意两点所在的线段上的点都在该凸包中。抽取凸包的方式可以采用已知的数学算法,例如Gift wrapping method、Graham-Scan、Melkman等,在此不详述其细节。
对象躯干位置凸包定位器(104)根据先前帧的躯干凸包的灰度特征和/或视差特征来搜索新的一帧来定位当前帧中的躯干部位。
然后,该凸包抽取器(103)可以进行上述另一次抽取,在新的当前帧中抽取当前躯干部位周围的凸包。
对象凸包匹配器(105)可以首先计算先前行人视差模板的每个凸包的梯度主方向和当前帧中的躯干周围的所有凸包的梯度主方向之间的差异,然后旋转当前帧中躯干周围的凸包使得其梯度主方向和先前模板中的凸包的梯度主方向一致,最后计算当前帧中躯干周围的凸包内的图像和先前行人视差模板的凸包内的图像的相似性。可以将最相似的凸包确定为匹配的凸包。总之,输入的是先前行人视差模板的各凸包和当前帧中躯干周围的各凸包;输出的是先前行人视差模板的各凸包对应的匹配的当前帧中躯干周围的凸包。
对象定位器(106)根据所有匹配的凸包来在当前帧中定位行人。输入的是匹配的凸包;输出的是当前帧中检测到的行人。
对象模板更新器(107)更新行人模板,使得模板显示当前帧的行人,以便作为后续帧的历史模板信息。输入的是当前帧中检测到的行人和先前(或历史)行人模板;输出的是更新的当前行人模板。
图4示出了根据本发明的一个实施例的对象跟踪方法的示例流程图。
输入的是先前对象模板和当前帧中的视差图像以及灰度图像。
首先,抽取先前帧的对象模板中的先前凸包(步骤S101),其次在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分(步骤S102),并在所述当前躯干部分周围的区域中抽取各个当前四肢凸包(步骤S103),然后根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致并寻找与一个先前四肢凸包匹配的旋转后的当前四肢凸包(步骤S104),最后根据匹配结果,定位当前帧中的对象的四肢位置,以确定当前帧中的对象模板以实现对象跟踪(步骤S105),并可选地(而非必须的)更新对象模板(步骤S106),输出当前帧中的对象。
结合图3,抽取先前帧的对象模板中的先前凸包(步骤S101)可以在凸包抽取器(103)处理,在当前帧中搜索躯干部位的凸包(步骤S102)可以在对象躯干位置凸包定位器(104)中处理,将躯干周围的区域分割成凸包(步骤S103)可以在凸包抽取器(103)处理,根据方向匹配模板凸包和当前帧躯干周围的凸包(步骤S104)可以在对象凸包匹配器(105)处理,最后定位行人(步骤S105)可以在对象定位器(106)中处理,更新的行人模板(步骤S106)可以在对象模板更新器(107)中处理。
如此,由于对象的躯干部分在对象移动时通常不产生变化,因此利用先前帧的对象模板来在当前帧中检测躯干部分来粗略定位当前帧中的对象的可能位置是更为准确且简易的。而且在当前帧中的躯干部分周围抽取凸包,能够更大概率且更准确地抽取到四肢凸包,而排除一些噪声凸包、例如路面的垃圾桶、路旁的自行车等。而且,通过分析当前帧的抽取到的凸包与先前帧的已知四肢凸包的梯度主方向的差异,将当前帧的各个凸包的梯度主方向旋转至与先前帧的已知四肢凸包(例如,已知右腿凸包)的梯度主方向一致,从而更容易在同样的位置和方向的情况下比较当前帧的凸包是否与先前帧的已知四肢凸包匹配,从而能够更准确地确定当前帧的各个凸包匹配于先前帧的哪些已知四肢凸包,从而确定当前帧的对象的四肢的具体位置来定位当前帧的对象。更新这种更准确的对象模板,使得下一帧的对象检测和跟踪也变得更准确和容易。这样,通过本申请的各个实施例,使得对象的检测和跟踪过程准确、容易、计算量小等等。
以下为了便于说明和更容易理解,用行人作为对象来阐述本申请的各个实施例的具体过程,但这并非限制。
图5示出了根据本发明的一个实施例的对象跟踪方法的系统序列图。
如图5所示,输入设备(1100)输入历史帧(先前帧)中检测到的行人模板(步骤S41)和当前帧的视差图和灰度图(步骤S42)。在行人跟踪系统(步骤S43)中,凸包抽取器(步骤S44)抽取先前帧中的行人模板中的凸包;行人躯干部位凸包定位器(步骤S45)定位当前帧中的躯干;行人凸包匹配器(步骤S46)匹配先前模板中的各凸包和当前帧中检测到躯干部位周围抽取的凸包;行人定位器(步骤S47)根据匹配到的行人模板的各凸包来定位当前帧中的行人并输出检测到的行人(步骤S48);行人模板更新器(步骤S49)更新行人的模板。
图6示出了示例的先前对象模板灰度图及其视差图以及当前帧灰度图及其视差图的示意图。
如图6的上部示出了先前帧的行人模板的灰度图和视差图。该先前帧的行人模板是已知的,其可以是从外部输入的、人为划出的、或根据本发明的各个实施例更新了的行人模板。
图6的下部示出了当前帧的灰度图及其视差图。本申请的各个实施例可以在当前帧中检测到匹配已知行人模板的行人的位置。
图7示出了凸包抽取器的模块图。
输入的是视差图。该视差图通常是稀疏视差图。稀疏视差图是相对于稠密视差图而言的。稀疏视差图可以简单地通过传统的方式、例如图像预处理、提取特征、特征点的匹配来获得。而不需要使用利用差值估计来获得稠密视差图。因此,这也进一步减少了计算量,并加快了运算速度。
输出的是凸包。
具体地,视差连通区域抽取器(1031)从视差图中抽取视差连通区域。视差连通区域轮廓抽取器(1032)抽取视差连通区域的轮廓。视差连通区域轮廓梯度主方向抽取器(1033)抽取轮廓的梯度主方向。凸包抽取器(1034)根据轮廓梯度主方向抽取凸包。
图8A-8D示出了抽取凸包以及获得凸包的梯度主方向的过程的示意图。
在如图4所示的步骤S101中,从行人模板的视差图中抽取凸包。如前所述,凸包的特性是在凸包中任意两点所在的线段上的点都在该凸包中。抽取凸包的方式可以采用已知的数学算法,例如Gift wrapping method、Graham-Scan、Melkman等,在此不详述其细节。
由于凸包的上述特性,从行人模板的视差图中抽取的凸包可以很好地表示行人的躯干和四肢(手、腿等)以及头部等等。另外,由于凸包的特性,四肢、例如手和腿的弯折部分可以被抽取为分离的凸包、例如大臂凸包、小臂凸包、手掌凸包、大腿凸包、小腿凸包、脚部凸包等。例如,手的大臂和小臂是弯折的情况下,例如弯折的夹角是120度,可以将手抽取为包括大臂的一个凸包和包括小臂的另一个凸包,这两个凸包的夹角可以是120度。如此,即使在新的一帧中,行人的手臂的弯折程度是不同的,例如,弯折的夹角是150度,在传统方式中,如果要匹配行人的整个手臂,则可能发生手臂匹配不上的情况,因为手臂的形状和特征都发生了巨大的改变,而在本发明的各个实施例中,由于分离整个手臂为大臂和小臂的两个凸包,因此,即使两个凸包的弯折夹角不同,但是,只要经过上述提到的旋转的步骤,将例如小臂、大臂、小腿、大腿等的凸包旋转至前一帧的小臂的凸包一致的方向上,则可以很容易地进行匹配或不匹配的确定,因为旋转之后的凸包与前一帧的小臂凸包方向一致,形状和特征也一致,因此,很容易地准确地匹配得到与前一帧的小臂凸包对应的后一帧的凸包作为后一帧的小臂凸包的位置。
在步骤S101中,具体地,视差连通区域抽取器(1031)从视差图中抽取视差连通区域。视差连通区域轮廓抽取器(1032)抽取视差连通区域的外轮廓。视差连通区域轮廓梯度主方向抽取器(1033)抽取外轮廓的梯度主方向。凸包抽取器(1034)根据外轮廓的梯度主方向抽取凸包。
接下来详细描述上述具体步骤。
首先,利用连通域分析(Connected Component Analysis,CCA)方法在视差图中抽取视差连通区域。为了找到图的所有的连通区域,可以采用宽度优先方法,当发现一个新顶点时,开始一个新的宽度优先遍历。该宽度优先方法可以参考如下网页(由于其是公知的,因此在此不赘述其具体实现方式)https://en.wikipedia.org/wiki/Connected_component_(graph_theory)。如此,图8A中的每个圈内为一个视差连通区域。
其次,抽取每个视差连通区域的视差外轮廓,如图8B所示。
然后,抽取每个视差外轮廓的灰度的梯度主方向,如图8C所示。
在灰度图中,视差外轮廓的每个像素点都具有灰度值。根据如下公式(1),计算每个像素点的灰度梯度gradient(x,y)(如图8C的左图所示)。g(x,y)是像素(x,y)的灰度值。
可以按角度将360度空间划分为多个区间,例如每隔20度是一个区间,则给360度空间被划分为譬如[0,20]、[20,40]等。如此,累计灰度梯度位于各区间内的像素点的个数,并选择具有最大像素点个数的区间作为梯度主方向(如图8C的右图所示,在相对垂直的方向上、即例如[80,100]度的区间中,具有的像素点个数最多,其中,白色线的点相当于位于该区间中的像素点,而白色线越长,表示像素点个数越多)。
当然,上述公式(1)和梯度主方向都是二维的。但是,本技术不限于此,实际上,由于知道视差图,因此可以知道距离信息,即也可以采用三维的梯度主方向,且同理,后续的旋转的过程也是三维空间旋转。
在三维的情况下,根据如下公式(2)和(3),计算每个像素点的三维灰度梯度:
其中,公式(2)可以推出θ,(x,y平面的角度),而公式(3)可以推出α,(z,y平面的角度)。所以,后续的旋转过程也可以先后在x-y平面和z-y平面内分别旋转,以达到在空间上旋转的目的,从而能够更精准地将当前凸包旋转到先前凸包所在的三维空间中的方向内,从而能够得到更精准的匹配结果。
然后,抽取凸包。具体地,根据梯度主方向分割出连通区域,使得每个连通区域中只有一个梯度主方向。于是,可以得到凸包(如图8D所示)。在此,根据本实施例,通过凸包中的像素值的灰度的梯度主方向来反映该凸包的方向。例如,垂直放置的大臂的凸包的梯度主方向也是垂直的,而水平放置的小臂的凸包的梯度主方向也是水平的,如此,可以简单地通过梯度主方向来推测四肢凸包的朝向(通常指的是凸包的长边所在的方向)。
如此,通过上述步骤,可以快捷地同时得到各个抽取的凸包和凸包中的梯度主方向。
如前所述,该抽取凸包的处理可以进行两次,一次是在先前帧的行人模板中抽取先前凸包,另一次是在新的当前帧中抽取当前躯干周围的凸包。在步骤S101中,仅进行在先前帧的行人模板中抽取先前凸包。如此,得到了先前帧的行人模板中的各个凸包,包括躯干凸包和四肢(手、腿等)凸包以及头部凸包等等。
接下来,图9A-9B示出了在当前帧的躯干周围的区域中抽取四肢凸包的过程的示意图。
首先,根据先前帧的行人模板中的先前躯干凸包,在当前帧中搜索当前躯干部位的凸包(步骤S102)。
在此,可以利用视差图中得到的先前躯干凸包的距离信息来确定当前帧中的感兴趣区域。通常,该感兴趣区域的距离范围应与先前躯干凸包的距离相差较小的距离。这是因为,行人等对象的行走速度或移动速度是可以推测的,有一定的范围,而通过该行走速度来推测在两帧之间的时间中可能行走的距离也是有一定的范围的,因此,在预定的范围内的感兴趣区域中搜索当前躯干部位的凸包能够更有效率、更节省时间和计算量、且提高搜索准确率。
上述在当前帧中搜索当前躯干部位的凸包可以用基于先前帧的躯干部分的颜色的模板匹配来在当前帧中找到相应的躯干部位。由于行人的躯干部分在行人行走时通常不产生变化,因此利用先前帧的行人模板来在当前帧中检测躯干部分来粗略定位当前帧中的行人的可能位置是更为准确且简易的。
接下来,将当前帧中的躯干周围的区域分割成凸包(步骤S103)。
具体地,使用先前参考图7和图8描述的抽取凸包的算法将当前帧中的躯干部位周围的区域分割成凸包。在此,在当前帧中的躯干部分周围抽取凸包,能够更大概率且更准确地抽取到四肢凸包,而排除一些噪声凸包、例如路面的垃圾桶、路旁的自行车等。
图10示出了将当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致的过程的示意图。
首先,根据梯度主方向来匹配先前帧的行人模板凸包和当前帧的躯干周围的凸包(步骤S104)。
以左小腿为例。输入是当前帧中躯干周围的感兴趣区的凸包和模板中左小腿凸包(见图10的上部)。对先前帧的左小腿的凸包,在之前的凸包抽取过程中已经得到它的外轮廓和梯度主方向。于是,计算该先前帧的左小腿的凸包和当前帧的躯干周围(或优选地,在感兴趣区域)中的两个凸包的梯度主方向之间的差异,见图10中差异分别是θ2、θ3,根据差异旋转当前帧中的各凸包(θ2,θ3)使得当前帧中的各凸包的梯度主方向和先前帧的行人模板中的左小腿凸包的梯度主方向一致,然后进行图像匹配。从而找到最相似的旋转后的凸包为跟踪到的当前帧中的左小腿。当然,在此,图像匹配的方式有很多已知的方法,可以基于颜色特征、形状特征、梯度特征等等,在此不详述。
更优选地,可以不仅考虑图像匹配的最相似的凸包,还考虑先前帧中的左小腿的凸包的位置信息,来寻找在位置上也适合、在相似度上也较大的当前帧的左小腿凸包。例如,如果先前帧中的是左小腿的凸包,那么就可以考虑在当前帧中的躯干部位的下方的相似度较大的凸包,而如果当前帧中与先前帧的左小腿凸包相似度最大的凸包位于躯干旁边、而非躯干下方,则该凸包有可能是大臂或小臂凸包,而通常不可能是左小腿凸包,因为即使在行人行走或做任何动作的情况下,左小腿都很低概率会移动到躯干旁边、而非躯干下方的位置。如此,如果进一步考虑先前帧的四肢凸包的位置信息,能够更准确地得到真正匹配的凸包,从而确定当前帧中的行人的各个四肢凸包的位置,从而定位行人。
接下来,根据匹配到的行人的各个凸包来定位行人(步骤S105)。当然,不一定要匹配到所有四肢凸包才能定位行人,通常,可以仅需要定位几个四肢凸包,例如左小腿、左脚和左胳膊的部位的对应凸包,就已经可以得到整个行人的位置了,如此可以进一步加快行人检测和跟踪的速度。再例如,可以仅定位右小腿、右脚和右胳膊的部位的对应凸包,就已经可以得到整个行人的位置了。甚至在要求速度优先的情况下,也可以仅定位右小腿或右脚的部位,就判断整个行人的位置,如此可以进一步加快行人检测和跟踪的速度。
图11示出了在新的当前帧中检测到的对象结果的示意图。
图11示出了检测到的更新的行人模板。于是得知了最新的行人状态,解决了现实世界中由行人运动和距离变化引起图像中行人形状、尺寸变化等问题,而且还减少了计算量、节省了计算成本和时间。
图12示出了用根据本发明的实施例的对象跟踪算法的计算机系统/服务器的示意图。
该计算机系统/服务器可以包括处理器(H1);存储器(H2),耦接于所述处理器(H1),且在其中存储计算机可执行指令,用于在由所述处理器执行时进行如图4所示的方法的步骤:抽取先前帧的对象模板中的先前凸包,述先前凸包至少包括先前躯干凸包和先前四肢凸包;在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。
处理器(H1)可以包括但不限于例如一个或者多个处理器或者或微处理器等。
存储器(H2)可以包括但不限于例如,随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬碟、软碟、固态硬盘、可移动碟、CD-ROM、DVD-ROM、蓝光盘等。
除此之外,运动估计优化系统1000还可以包括数据总线(H3)、输入/输出(I/O)总线(H4),显示器(H5)以及输入/输出设备(H6)(例如,键盘、鼠标、扬声器等)等。
处理器(H1)可以通过I/O总线(H4)经由有线或无线网络(未示出)与外部设备(H5、H6等)通信。
存储器(H2)还可以包括至少一个指令,在由处理器(H1)执行时实施本技术的各实施例的各个功能或方法的步骤。
存储器(H2)还可以存储至少一个计算机可执行指令,用于在由处理器(H1)执行时本技术所描述的实施例中的各个功能和/或方法的步骤。
当然,上述的具体实施例仅是例子而非限制,且本领域技术人员可以根据本发明的构思从上述分开描述的各个实施例中合并和组合一些步骤和装置来实现本发明的效果,这种合并和组合而成的实施例也被包括在本发明中,在此不一一描述这种合并和组合。
注意,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
本公开中的步骤流程图以及以上方法描述仅作为例示性的例子并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
另外,本文中的各个实施例中的步骤和装置并非仅限定于某个实施例中实行,事实上,可以根据本发明的概念来结合本文中的各个实施例中相关的部分步骤和部分装置以构思新的实施例,而这些新的实施例也包括在本发明的范围内。
以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于硬件的电路、专用集成电路(ASIC)或处理器。
可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(DSP)、ASIC、场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合,多个微处理器、与DSP核协作的一个或多个微处理器或任何其他这样的配置。
结合本公开描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬碟、可移动碟、CD-ROM等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。
在此公开的方法包括用于实现所述的方法的一个或多个动作。方法和/或动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。
所述的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是可以由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟存储、磁碟存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,碟(disk)和盘(disc)包括紧凑盘(CD)、激光盘、光盘、数字通用盘(DVD)、软碟和蓝光盘,其中碟通常磁地再现数据,而盘利用激光光学地再现数据。
因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。
软件或指令也可以通过传输介质而传输。例如,可以使用诸如同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或诸如红外、无线电或微波的无线技术的传输介质从网站、服务器或者其他远程源传输软件。
此外,用于进行在此所述的方法和技术的模块和/或其他适当的手段可以在适当时由用户终端和/或基站下载和/或其他方式获得。例如,这样的设备可以耦接到服务器以促进用于进行在此所述的方法的手段的传送。或者,在此所述的各种方法可以经由存储部件(例如RAM、ROM、诸如CD或软碟等的物理存储介质)提供,以便用户终端和/或基站可以在耦接到该设备或者向该设备提供存储部件时获得各种方法。此外,可以利用用于将在此所述的方法和技术提供给设备的任何其他适当的技术。
其他例子和实现方式在本公开和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。而且,如在此使用的,包括在权利要求中使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本发明的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (10)

1.一种在视差图中进行对象跟踪的方法,包括:
抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;
在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;
在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;
根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;
寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;
根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。
2.根据权利要求1所述的方法,其中,抽取所述先前凸包以及抽取所述当前四肢凸包的步骤包括:
从视差图中抽取连通区域;
对于每个连通区域,抽取其外轮廓;
利用所述外轮廓的灰度图的每个像素点的灰度值,获得每个像素点的灰度梯度;
将空间划分为多个区间;
累计灰度梯度位于各个区间内的像素点的个数;
选择具有最大像素点个数的区间作为梯度主方向;
根据所述梯度主方向,从连通区域中抽取凸包使得每个凸包只有一个梯度主方向。
3.根据权利要求1所述的方法,其中,所述在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分的步骤包括:
根据所述先前躯干凸包在视差图中计算的距离,来在当前帧中确定感兴趣区域,其中,所述感兴趣区域的距离与所述先前躯干凸包的距离小于第一预定阈值;
基于颜色模板来在当前帧中的所述感兴趣区域中检测与所述先前躯干凸包匹配的部分作为当前躯干部分。
4.根据权利要求1所述的方法,其中,所述根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致的步骤包括:
针对一个先前四肢凸包,来在当前帧中确定感兴趣区域,所述感兴趣区域的距离与所述先前四肢凸包的距离小于第二预定阈值;
将在当前帧中的所述感兴趣区域中的当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致。
5.根据权利要求1所述的方法,其中,所述寻找与一个先前四肢凸包匹配的旋转后的当前四肢凸包的步骤包括:
考虑先前四肢凸包的位置,来寻找与一个先前四肢凸包匹配的旋转后的当前四肢凸包,
其中,匹配的旋转后的当前四肢凸包的位置处于所述先前四肢凸包可能移动到的位置范围内。
6.根据权利要求1所述的方法,其中,所述旋转步骤在二维空间中进行,或者所述旋转步骤在三维空间中进行。
7.根据权利要求1所述的方法,其中,所述视差图是稀疏视差图。
8.根据权利要求1所述的方法,其中,根据四肢凸包中的一个或多个的匹配结果,来确定当前帧中的对象模板以实现对象跟踪,而不需要四肢凸包中的所有凸包的匹配结果。
9.一种在视差图中进行对象跟踪的装置,包括:
凸包抽取器,被配置为抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;
对象躯干位置凸包定位器,被配置为在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;
其中,所述凸包抽取器还被配置为在所述当前躯干部分周围的区域中抽取各个当前四肢凸包,
所述装置还包括:
对象凸包匹配器,被配置为根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致并寻找与一个先前四肢凸包匹配的旋转后的当前四肢凸包,
对象定位器,被配置为根据匹配结果,定位当前帧中的对象的四肢位置,以确定当前帧中的对象模板以实现对象跟踪。
10.一种在视差图中进行对象跟踪的系统,包括:
处理器;
存储器,耦接于所述处理器,且存储计算机可执行指令,所述计算机指令在由处理器执行时进行如下步骤:
抽取先前帧的对象模板中的先前凸包,所述先前凸包至少包括先前躯干凸包和先前四肢凸包;
在当前帧中检测与所述先前躯干凸包匹配的部分作为当前躯干部分;
在所述当前躯干部分周围的区域中抽取各个当前四肢凸包;
根据当前四肢凸包和先前四肢凸包的各自的梯度主方向,针对一个先前四肢凸包,将各个当前四肢凸包的梯度主方向旋转至与该先前四肢凸包的梯度主方向一致;
寻找与所述一个先前四肢凸包匹配的旋转后的当前四肢凸包;
根据匹配结果,来确定当前帧中的对象模板以实现对象跟踪。
CN201510622651.9A 2015-09-25 2015-09-25 对象跟踪方法、装置和系统 Expired - Fee Related CN106558067B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510622651.9A CN106558067B (zh) 2015-09-25 2015-09-25 对象跟踪方法、装置和系统
EP16185664.6A EP3147820B1 (en) 2015-09-25 2016-08-25 Object tracking method, device, and system as well as relevant program and non-transitory computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510622651.9A CN106558067B (zh) 2015-09-25 2015-09-25 对象跟踪方法、装置和系统

Publications (2)

Publication Number Publication Date
CN106558067A CN106558067A (zh) 2017-04-05
CN106558067B true CN106558067B (zh) 2019-08-09

Family

ID=56979346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510622651.9A Expired - Fee Related CN106558067B (zh) 2015-09-25 2015-09-25 对象跟踪方法、装置和系统

Country Status (2)

Country Link
EP (1) EP3147820B1 (zh)
CN (1) CN106558067B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683710B (zh) * 2018-12-20 2019-11-08 北京字节跳动网络技术有限公司 一种手掌法向量确定方法、装置、设备及存储介质
JP7260499B2 (ja) * 2020-03-12 2023-04-18 日立Astemo株式会社 物体検出装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003134B1 (en) * 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information
US7613324B2 (en) * 2005-06-24 2009-11-03 ObjectVideo, Inc Detection of change in posture in video
CN102074034B (zh) * 2011-01-06 2013-11-06 西安电子科技大学 多模型人体运动跟踪方法
CN102799857B (zh) * 2012-06-19 2014-12-17 东南大学 一种视频多车辆轮廓检测方法
CN103761746A (zh) * 2013-12-25 2014-04-30 浙江慧谷信息技术有限公司 基于感兴趣区域相似性特征和根据极值选取参考帧的周期行为的检测方法

Also Published As

Publication number Publication date
EP3147820A1 (en) 2017-03-29
CN106558067A (zh) 2017-04-05
EP3147820B1 (en) 2020-05-13

Similar Documents

Publication Publication Date Title
EP3742113B1 (en) System and method for marking images for three-dimensional image generation
JP4677046B2 (ja) 多次元ブースト回帰を経た外観及び動作を使用する高速人間姿勢推定
Huang et al. TP-LSD: Tri-points based line segment detector
CN108229386A (zh) 用于检测车道线的方法、装置和介质
CN109410316B (zh) 物体的三维重建的方法、跟踪方法、相关装置及存储介质
KR102347239B1 (ko) 라이다와 카메라를 이용하여 이미지 특징점의 깊이 정보를 향상시키는 방법 및 시스템
US20220051425A1 (en) Scale-aware monocular localization and mapping
Chen et al. NDT-LOAM: A real-time LiDAR odometry and mapping with weighted NDT and LFA
CN110148179A (zh) 一种训练用于估计图像视差图的神经网络模型方法、装置及介质
US10984222B2 (en) Method, apparatus and system for 3D face tracking
CN107507188B (zh) 一种基于机器学习提取图像信息的方法及装置
CN104899918A (zh) 一种无人机的三维环境建模方法及系统
Yang et al. Multi-view semantic learning network for point cloud based 3D object detection
Shiratori et al. Efficient large-scale point cloud registration using loop closures
US20210333124A1 (en) Method and system for detecting changes in road-layout information
CN107134006A (zh) 创建物理场景模型的方法和装置、辅助驾驶的方法和装置
CN106558067B (zh) 对象跟踪方法、装置和系统
Cheng et al. Hierarchical visual localization for visually impaired people using multimodal images
CN104700620A (zh) 一种基于交通卡口的套牌车辆识别方法和装置
Wu et al. An efficient visual loop closure detection method in a map of 20 million key locations
CN109115232B (zh) 导航的方法和装置
CN106339659A (zh) 检测道路分割物的方法和装置
Peng et al. Traffic flow detection and statistics via improved optical flow and connected region analysis
CN110345924A (zh) 一种距离获取的方法和装置
Jaramillo et al. 6-DoF pose localization in 3D point-cloud dense maps using a monocular camera

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190809

CF01 Termination of patent right due to non-payment of annual fee