CN106651901B - 对象跟踪方法和设备 - Google Patents
对象跟踪方法和设备 Download PDFInfo
- Publication number
- CN106651901B CN106651901B CN201510441652.3A CN201510441652A CN106651901B CN 106651901 B CN106651901 B CN 106651901B CN 201510441652 A CN201510441652 A CN 201510441652A CN 106651901 B CN106651901 B CN 106651901B
- Authority
- CN
- China
- Prior art keywords
- priority
- objects
- tracking
- tracked
- confidence
- 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
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/16—Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities
-
- 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
-
- 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/30221—Sports video; Sports image
-
- 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/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
公开了一种对象跟踪方法和系统,该方法包括:从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;进行可信高优先级对象的跟踪。
Description
技术领域
本申请涉及图像处理、计算机视觉领域,且更具体地涉及一种对象跟踪方法和设备。
背景技术
基于运动对象跟踪是计算机视觉、数字视频与图像处理和模式识别领域等中一个非常重要和活跃的研究课题。
运动对象跟踪可以基于运动对象检测来进行。运动对象检测的技术已经有很多。例如,已有的运动对象检测方法按照算法的基本原理可以分为三类:帧间差分法、背景减除法和光流法。而运动对象跟踪则可以在当前帧中在先前检测的对象周围一定范围内进行该运动对象的检测,如果检测到了该运动对象,则可以认为跟踪到了该运动对象。
运动对象检测通常基于从摄像头拍摄的连续帧图像、甚至双目摄像头拍摄的立体连续帧图像来进行。如果搭载摄像头的跟踪者也是运动的,则运动对象跟踪可能受到例如搭载摄像头的跟踪者的自身运动的影响。另外,如果存在多个运动对象,则运动对象跟踪还可能受到其他运动对象的遮挡等干扰。
因此,需要一种快速且准确地跟踪运动对象的技术。
发明内容
根据本发明的一个方面,提供一种对象跟踪方法,包括:从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;进行可信高优先级对象的跟踪。
根据本发明的另一个方面,提供一种对象跟踪设备,包括:高优先级对象确定装置,被配置为从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;可信高优先级对象确定装置,被配置为从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;跟踪装置,被配置为进行可信高优先级对象的跟踪。
根据本发明的另一方面,提供一种对象跟踪系统,包括:处理器,耦合于存储器;所述存储器包括指令,其当由所述处理器执行时实施根据本发明的一个方面的方法。
附图说明
图1示出了应用本技术的场景示意图。
图2示出了根据本发明的一个实施例的对象跟踪方法的示意流程图。
图3示出了跟踪高优先级对象的通用跟踪算法300的流程图。
图4示出了根据本发明的一个实施例的对象跟踪方法的步骤201的示意过程。
图5示出了根据本发明的一个实施例的对象跟踪方法的步骤202的示意过程。
图6示出了高优先级对象之间的共存信息的示例示意图。
图7示出了根据本发明的另一个实施例的对象跟踪设备的示意方框图。
图8示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。
具体实施方式
现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于所述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。
注意,接下来要介绍的示例仅是一个具体的例子,而不作为限制本发明的实施例必须为如下具体的步骤、数值、条件、数据、顺序等等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。
图1示出了应用本技术的场景示意图。
在S0处,输入要被跟踪对象或对象(如图1右上图所示),在S1处,设备调用基于优先级的对象跟踪方法,在S2处,设备输出跟踪结果(如图1右下图中的矩形框所示)。在该示意图中,同时跟踪多个被跟踪对象。
图2示出了根据本发明的一个实施例的对象跟踪方法200的示意流程图。
该对象跟踪方法200包括:步骤201,从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;步骤202,从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;步骤203,进行可信高优先级对象的跟踪。
这里要说明的是,关于优先级的定义是多种多样的,不同的跟踪方法和/或设备可以有不同的优先级定义。在本公开的方法和/或设备中,以车载视觉识别系统应用为例,例如,可以将道路场景中的近处车辆、行人对象、或是正前方、稳定运动、持续出现多帧的车辆对象视为高优先级对象。而例如,中远距离、运动不稳定的车辆对象,或远距离、被遮挡对象、或者刚刚出现在画面中的对象可以视为非高优先级对象。
但是,正前方、稳定运动且持续出现的高优先级对象可能随着时间的推移而不再稳定运动、和/或与其他高优先级对象的运动轨迹偏离而变为不可信的高优先级对象。因此,这样的不可信的高优先级对象由于其运动的不稳定性和独特性,则不能作为稳定的跟踪对象。而对于随时间的推移也能保持稳定运动、且与其他高优先级对象的运动轨迹基本一致(例如,相对距离、相对角度、和/或相对运动速度保持基本一致)的可信高优先级对象,如果持续跟踪这种可信高优先级对象,就可以得到稳定的跟踪结果。因此,本方法可以基于高优先级对象、以及可信优先级对象的确定来获得准确且稳定的跟踪结果。
图3示出了跟踪高优先级对象的通用跟踪算法300的流程图。
图3也是通用对象跟踪的通用跟踪算法的流程图。如图3所示,在步骤301,利用对象历史运动信息和其他辅助信息,预测在新的一帧中可能出现的感兴趣区域,在步骤302,利用已有的对象模板或者模型在感兴趣区域内检测该对象,在步骤303,使用当前帧的检测结果更新对象模型。该处的对象跟踪方法也是一个通用的基于检测的跟踪方法流程,无论是高优先级对象、可信高优先级对象、还是非优先级对象,都可以使用该流程,当然对象跟踪的流程不限于此。
在此,对被跟踪对象进行的跟踪算法可以采用现有的已知算法,例如,帧间差分法、背景减除法和光流法等,在此不详细描述。
图4示出了根据本发明的一个实施例的对象跟踪方法的步骤201的示意过程。
在该实施例中,所述从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象的步骤201可以包括:步骤2011,计算被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续两帧之间的变化;步骤2012,确定所述至少一个第一特征的变化小于各自的预定阈值的被跟踪对象作为高优先级对象。
在此,第一特征可以包括空间位置、运动速度、与跟踪者的距离(即,与跟踪者搭载的摄像头的距离)、和/或在摄像头拍摄的图像中的占据区域(例如,在高宽平面上的正面区域)等,但不限于此,例如,也可以包括仅在深度方向上的运动速度(即前进速度)、在深度方向上的远近距离、在高宽平面上的位置(即,正面位置)等。
另外,对于初始化的被跟踪对象,可以将其都设成非高(或低)优先级对象,因为它们属于新对象,没有历史数据分析它们的优先级状态。而随着连续帧的捕获和跟踪的不断进行,可以分析被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续的(或相隔几帧的)两帧(或更多帧)之间的变化,如果这样的变化较小,则说明该被跟踪对象的位置、速度、距离、和/或占据区域等基本不发生变化,即比较稳定,因此,可以初步地将它们选择为高优先级对象。
如此,本方法和/或设备可以根据实时的跟踪结果来评估高优先级对象并进行高优先级和非高优先级之间的状态转换。
当然,除了上述根据实时的跟踪结果、通过第一特征来实时地选择高优先级对象以外,也可以人为地、随机地、或预先自动设置高优先级对象。在此不一一描述。
图5示出了根据本发明的一个实施例的对象跟踪方法的步骤202的示意过程。
在该实施例中,所述从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象的步骤202可以包括:步骤2021,确定高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;步骤2022,确定高优先级对象与其他高优先级对象的相对距离、相对角度、相对运动速度中的至少一个第二特征的变化的第二波动性;步骤2023,基于所述第一波动性和第二波动性中的至少一个,来确定置信度,其中,所述第一波动性和第二波动性越小,则置信度越大;步骤2024,保留置信度大于或等于预定阈值的高优先级对象作为可信高优先级对象。
由于高优先级对象的可信度更高,并且高优先级对象的结果可以用来估计跟踪者搭载的摄像头的运动信息进而帮助其他优先级对象的检测和跟踪。
但是,高优先级对象可能随着时间的推移而不再稳定运动、和/或与其他高优先级对象的运动轨迹偏离而变为不可信的高优先级对象。因此,这样的不可信的高优先级对象由于其运动的不稳定性和独特性,则不能作为稳定的跟踪对象。而对于随时间的推移也能保持稳定运动、且与其他高优先级对象的运动轨迹基本一致(例如,相对距离、相对角度、和/或相对运动速度保持基本一致)的可信高优先级对象,如果持续跟踪这种可信高优先级对象,就可以得到稳定的跟踪结果。
因此,在此,可以基于自身历史信息(例如,位置、速度、距离、占据区域等中的至少一个第一特征)和当前帧对象间的共存信息(例如,与其他对象的相对距离、相对角度、相对运动速度等中的至少一个第二特征),来计算高优先级对象的状态置信度。
高优先级对象的置信度可以在两个方面进行评估计算:如之前提到的,基于自身历史的时间域信息,和基于与其他高优先级对象共存关系的空间域信息。即,自身历史信息可以包括位置、速度、距离、和/或占据区域等的第一特征,且与其他高优先级对象共存关系的空间域信息可以包括与其他对象的相对距离、相对角度、和/或相对运动速度等的第二特征。另外,注意,在此主要考虑包括位置、速度、距离、和/或占据区域等的第一特征的变化的波动性以及包括与其他对象的相对距离、相对角度、和/或相对运动速度等的第二特征的变化的波动性,来估计高优先级对象的基于历史的运动变化情况以及与其他对象的相对运动变化情况。
以占据区域为例,假设该高优先级对象的在第m帧相对第m-1帧占据区域的变化为r(m)。如前所述,占据区域例如是在高宽平面上的正面区域。占据区域的变化可以用例如重叠率来衡量,重叠率的概念可以定义为第m帧的对象位置与第m-1帧的对象位置的共有重叠部分占整个对象面积比例,重叠率越大,占据区域的变化越小。例如,占据区域的变化可以定义为(1-重叠率),或者1/重叠率,等等,在此不一一举例。那么在历史的连续帧序列(例如,第n帧,第n-1帧……第2帧)中,该对象的占据区域的变化的序列可以表示成,
R={r(n),r(n-1),…r(2)} 公式(1)
那么基于自身历史信息的第一置信度P_confidence_self可以用如下公式表示:
P_confidence_self=a*exp(variance(R)) 公式(2)
或者
P_confidence_self=b*mean(R)/max(R) 公式(3)
此处a,b是权重系数。variance(R)是R的方差。其中,variance(R)或max(R)/mean(R)(公式(3)中的mean(R)/max(R)的倒数)可以表示高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性。而该第一置信度P_confidence_self与该第一波动性variance(R)或max(R)/mean(R)成反比,即,第一波动性越小,该第一置信度越大。例如,在公式(2)中,variance(R)越小,则exp(variance(R))越大,则a*exp(variance(R))越大。又例如,在公式(3)中,max(R)/mean(R)越小,则mean(R)/max(R)越大,则b*mean(R)/max(R)越大。
当然,基于波动性的原理,还可以构造除了上述公式(2)和(3)以外的公式来表示第一特征的变化在连续多个帧之间的波动性(例如,利用多次方差等),以及与波动性成反比的置信度。
另外,在此,仅利用一个第一特征(例如,占据区域)来计算第一置信度,但是也可以利用其他第一特征(例如,位置、速度、距离等中的一个或多个)计算置信度。例如,高优先级对象A、B、C、D各自与上一帧的位置的变化分别是10,9,12,50,那么D对象就很有可能是不可信的高优先级对象,A,B,C就可能是可信的高优先级对象。另外,也可以将对每个第一特征计算的各个第一置信度相加、加权、求平均等等来得到综合置信度,等等。
关于与其他高优先级对象共存关系的空间域信息来计算的第二置信度,此处的衡量方法可以包括相对距离d、相对角度l、相对运动速度m、等等的第二特征。在此,相对距离可以包括两个对象之间的空间距离、某个特定方向上的距离等等,相对角度可以包括两个对象的朝向之间的夹角。相对运动速度可以包括两个对象在某个特定方向上的相对运动速度,等等。这些特征的计算方法都可以利用已知的方法来实现,在此不详细描述。
对于与其他高优先级对象共存关系的空间域信息,可以定义相关性Cov(AB)来表示对象A与B之间的上述所有共存关系特征(即第二特征)的变化的集合(该集合可以包括相对距离d、相对角度l、相对运动速度m等等的第二特征中的一个或多个的变化)。
图6示出了高优先级对象之间的共存信息的示例示意图。
如图6所示,假设存在四个高优先级对象A、B、C、D,且假设考虑全部三个第二特征,相对距离d、相对角度l、相对运动速度m。例如,对象A和对象B之间的相关性可以表示成Cov(AB)等于[80,19,104]。具体地,这意味着,对象A和对象B之间的相对距离d的变化为80mm,对象A和对象B之间的相对角度l的变化为19degree(度),对象A和对象B之间的相对运动速度m的变化为104mmps(或mm/s、毫米/秒)。
类似地,对象A和对象C之间的相关性Cov(AC)等于[5,3,2],对象A和对象D之间的相关性Cov(AD)等于[15,0,8],对象B和对象D之间的相关性Cov(BD)等于[105,13,126],对象B和对象C之间的相关性Cov(BC)等于[113,15,95],对象C和对象D之间的相关性Cov(CD)等于[15,10,10]。
当然,具体在计算时,也可以归一化不同的特征值以方便计算。通过比较可以发现B对象的相关性特征与其它的A、C、D对象的相关性特征的变化显著,因此可以将B的置信度设置为较低。例如,可以用如下的公式来计算高优先级对象间相关性的置信度:
P_confidence_cov(B)=k*exp(-mean(Cov(AB),Cov(BC),Cov(BD)/max(Cov(AB),Cov(BC),Cov(CD),Cov(AC),Cov(AD),Cov(BD)))
公式(4)
或者简单写成
P_confidence_cov(B)=k*exp(-mean(COV(BX))/max(COV(XX)) (5)
此处的k是权重系数。X表示A、B、C、D中的任一。
同理,-mean(Cov(AB),Cov(BC),Cov(BD)/max(Cov(AB),Cov(BC),Cov(CD),Cov(AC),Cov(AD),Cov(BD))或-mean(COV(BX))/max(COV(XX)可以表示高优先级对象与其它高优先级对象的相对距离d、相对角度l、相对运动速度m等等中的至少一个第二特征的变化的第二波动性。而该第二置信度P_confidence_cov(B)与该第二波动性成反比,即,第二波动性越小,该第二置信度越大。例如,在公式(4)中,-mean(Cov(AB),Cov(BC),Cov(BD)/max(Cov(AB),Cov(BC),Cov(CD),Cov(AC),Cov(AD),Cov(BD))越小,则exp(-mean(Cov(AB),Cov(BC),Cov(BD)/max(Cov(AB),Cov(BC),Cov(CD),Cov(AC),Cov(AD),Cov(BD)))越大,则第二置信度越大。又例如,在公式(5)中,-mean(COV(BX))/max(COV(XX)越小,则exp(-mean(COV(BX))/max(COV(XX))越大,则第二置信度越大。
当然,基于波动性的原理,还可以构造除了上述公式(4)和(5)以外的公式来表示第二特征的变化的波动性(例如,利用方差等),以及与波动性成反比的置信度。
另外,在此,利用三个第二特征来计算第二置信度,但是也可以利用少于三个或多于三个第二特征来计算第二置信度。
另外,对于第一置信度和第二置信度,可以综合两者(例如,通过两者的和、加权和、平均等来求总置信度)来判断可信高优先级对象,也可以仅对其中一个置信度来判断可信优先级。即,在此,置信度可以包括第一置信度、第二置信度、和/或第一置信度和第二置信度的综合。另外,也可以不考虑置信度的概念,仅考虑第一特征和/或第二特征的波动性来直接判断可信高优先级对象。在此,不一一展开叙述。
当然具体的表达方式不局限于上述提到的公式,同时具体使用的衡量特征与不局限于上述所提到的特征。
然后,可以根据计算获得的对象优先级的状态置信度,来通过预定阈值进行状态之间的转换。例如,高置信度对象A获得置信度为80,而设定的保持高优先级对象置信度阈值为大于或等于50,那么该对象A作为可信高优先级对象仍将被保留在高优先级的状态中进行跟踪。
而置信度小于预定阈值的高优先级对象可以被舍弃,而作为非高优先级对象。
当然,对于非高优先级对象,也可以计算其状态置信度,在此,可以仅仅利用对象自身历史信息,如同公式(2)(3)所示。即,确定除了高优先级对象以外的非高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;基于所述第一波动性,来确定置信度,其中,其中,所述第一波动性越小,则置信度越大;将置信度高于预定阈值的非高优先级对象作为高优先级对象。因此,当非高优先级对象的状态置信度高于预定阈值时,也可以将其上升为高优先级对象。如此,实时地了解被跟踪对象的优先级状态以及其置信度,使得高优先级对象和非高优先级对象可以在适当的情况下转换。状态转换之后,可以输出所有跟踪对象的跟踪结果,并使用最新的优先级状态重新开始新的一帧的对象跟踪。
如此,在初始化跟踪设备之后,所有刚刚进入跟踪设备的对象最开始都可以被设置成低优先级对象(即,非高优先级对象),然后通过观察检测结果以及获得的状态置信度,逐渐转换其优先级状态。低优先级对象有可能转换成高优先级对象,而高优先级对象也可能由于置信度过低被转换为低优先级对象。如此,随着跟踪的不断进行,可以不断地更新高优先级对象,并利用更新的高优先级对象来进行更准确的跟踪。
在一个实施例中,在得知了哪些是可信高优先级对象之后,还可以基于可信高优先级对象的运动情况,估计跟踪者的运动情况;利用跟踪者的运动情况,来跟踪除了可信高优先级对象以外的被跟踪对象。
如此,通过可信的高优先级对象的跟踪结果,可以估计跟踪者的当前帧摄像头的运动信息。此处可以采取基于光流法的点匹配,或者是简单的计算均值位移等方法来计算帧间运动信息。获得了帧间的运动信息,有利于更加准确的预测和检测其他优先级对象,以优化和提高跟踪性能。例如,如果跟踪到可信的高优先级对象都一致的向右转(即,在上一帧的被跟踪对象的右侧检测到当前帧的被跟踪对象),则可以估计跟踪者的当前帧摄像头相对于追踪对象的运动可能是向左转,如此,在跟踪其他对象时,可以也在上一帧的被跟踪对象的右侧来检测当前帧的被跟踪对象。如此,能够更加准确地预测和检测其他优先级对象,以优化和提高所有对象的跟踪性能。
当然,在得知了哪些是可信高优先级对象之后,还可以做其他调整和操作,包括但不限于:相比于除了可信高优先级对象的被跟踪对象的跟踪,对可信高优先级对象的跟踪分配更多的系统资源。如此,来合理地分配系统资源,以对更可信的高优先级对象进行更可靠地跟踪,再通过其跟踪信息来在不增加、甚至减少系统资源的情况下达到进一步优化和提高其他对象的跟踪性能的目的。
在此,注意,跟踪其他优先级对象的方法类似于高优先级对象的跟踪,可以采用常用的跟踪检测方法,如图3所示的基于检测的跟踪方法。然后在利用当前帧的对象跟踪结果,评估所有对象的状态优先级。如此,随着跟踪的进行,各个对象的高优先级状态不断更新,且可信高优先级对象以及其他对象的跟踪性能也不断优化和提高。
图7示出了根据本发明的另一个实施例的对象跟踪设备700的示意方框图。
图7所示的一种对象跟踪设备700包括:高优先级对象确定装置701,被配置为从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;可信高优先级对象确定装置702,被配置为从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;跟踪装置703,被配置为进行可信高优先级对象的跟踪。
因此,本设备可以基于高优先级对象、以及可信优先级对象的确定来获得准确且稳定的跟踪结果。
在一个实施例中,所述高优先级对象确定装置701可以被配置为:计算被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续两帧之间的变化;确定所述至少一个第一特征的变化小于各自的预定阈值的被跟踪对象作为高优先级对象。
在此,第一特征可以包括空间位置、运动速度、与跟踪者的距离(即,与跟踪者搭载的摄像头的距离)、和/或在摄像头拍摄的图像中的占据区域(例如,在高宽平面上的正面区域)等,但不限于此,例如,也可以包括仅在深度方向上的运动速度(即前进速度)、在深度方向上的远近距离、在高宽平面上的位置(即,正面位置)等。
另外,对于初始化的被跟踪对象,可以将其都设成非高(或低)优先级对象,因为它们属于新对象,没有历史数据分析它们的优先级状态。而随着连续帧的捕获和跟踪的不断进行,可以分析被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续的(或相隔几帧的)两帧(或更多帧)之间的变化,如果这样的变化较小,则说明该被跟踪对象的位置、速度、距离、和/或占据区域等基本不发生变化,即比较稳定,因此,可以初步地将它们选择为高优先级对象。
在一个实施例中,所述可信高优先级对象确定装置702可以被配置为:确定高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;确定高优先级对象与其他高优先级对象的相对距离、相对角度、相对运动速度中的至少一个第二特征的变化的第二波动性;基于所述第一波动性和第二波动性中的至少一个,来确定置信度,其中,所述第一波动性和第二波动性越小,则置信度越大;保留置信度大于或等于预定阈值的高优先级对象作为可信高优先级对象。
高优先级对象可能随着时间的推移而不再稳定运动、和/或与其他高优先级对象的运动轨迹偏离而变为不可信的高优先级对象。因此,这样的不可信的高优先级对象由于其运动的不稳定性和独特性,则不能作为稳定的跟踪对象。而对于随时间的推移也能保持稳定运动、且与其他高优先级对象的运动轨迹基本一致(例如,相对距离、相对角度、和/或相对运动速度保持基本一致)的可信高优先级对象,如果持续跟踪这种可信高优先级对象,就可以得到稳定的跟踪结果。
因此,在此,可以基于自身历史信息(例如,位置、速度、距离、占据区域等中的至少一个第一特征)和当前帧对象间的共存信息(例如,与其他对象的相对距离、相对角度、相对运动速度等中的至少一个第二特征),来计算高优先级对象的状态置信度。
在一个实施例中,高优先级对象确定装置701还可以被配置为:确定除了高优先级对象以外的非高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;基于所述第一波动性,来确定置信度,其中,其中,所述第一波动性越小,则置信度越大;将置信度大于或等于预定阈值的非高优先级对象作为高优先级对象。
在一个实施例中,高优先级对象确定装置701还可以被配置为:将置信度小于预定阈值的高优先级对象作为非高优先级对象。
如此,本设备可以根据实时的跟踪结果来评估高优先级对象是否可信并进行高优先级和非高优先级之间的状态转换。
在一个实施例中,跟踪装置703还可以被配置为:基于可信高优先级对象的运动情况,估计跟踪者的运动情况;利用跟踪者的运动情况,来跟踪除了可信高优先级对象以外的被跟踪对象。
如此,在初始化跟踪设备之后,所有刚刚进入跟踪设备的对象最开始都可以被设置成低优先级对象(即,非高优先级对象),然后通过观察检测结果以及获得的状态置信度,逐渐转换其优先级状态。低优先级对象有可能转换成高优先级对象,而高优先级对象也可能由于置信度过低被转换为低优先级对象。如此,随着跟踪的不断进行,可以不断地更新高优先级对象,并利用更新的高优先级对象来进行更准确的跟踪。
在一个实施例中,相比于除了可信高优先级对象的被跟踪对象的跟踪,可以对可信高优先级对象的跟踪分配更多的系统资源。
如此,来合理地分配系统资源,以对更可信的高优先级对象进行更可靠地跟踪,再通过其跟踪信息来在不增加、甚至减少系统资源的情况下达到进一步优化和提高其他对象的跟踪性能的目的。
图8示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图8显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元或微处理器16、存储器28、连接不同组件的总线18。
总线18可以包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可得介质,包括易失性和非易失性介质、可移除的和不可移除的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移除/不可移除的、易失性/非易失性计算机系统存储介质。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器、以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个接口与总线18相连。存储器28可以包括至少一个指令,在由处理器执行时实施本发明各实施例的方法和/或功能。
具有一组(至少一个)程序模块42的程序/实用工具40也可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。
应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
当然,上述的具体实施例仅是例子而非限制,且本领域技术人员可以根据本发明的构思从上述分开描述的各个实施例中合并和组合一些步骤和装置来实现本发明的效果,这种合并和组合而成的实施例也被包括在本发明中,在此不一一描述这种合并和组合。
注意,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
本公开中的步骤流程图以及以上方法描述仅作为例示性的例子并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
另外,本文中的各个实施例中的步骤和装置并非仅限定于某个实施例中实行,事实上,可以根据本发明的概念来结合本文中的各个实施例中相关的部分步骤和部分装置以构思新的实施例,而这些新的实施例也包括在本发明的范围内。
以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于硬件的电路、专用集成电路(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 (8)
1.一种对象跟踪方法,包括:
从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;
从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;
进行可信高优先级对象的跟踪;
其中,所述从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象的步骤包括:
确定高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;
确定高优先级对象与其他高优先级对象的相对距离、相对角度、相对运动速度中的至少一个第二特征的变化的第二波动性;
基于所述第一波动性和第二波动性中的至少一个,来确定置信度,其中,所述第一波动性和第二波动性越小,则置信度越大;
保留置信度大于或等于预定阈值的高优先级对象作为可信高优先级对象。
2.根据权利要求1所述的方法,其中,所述从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象的步骤包括:
计算被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续两帧之间的变化;
确定所述至少一个第一特征的变化小于各自的预定阈值的被跟踪对象作为高优先级对象。
3.根据权利要求1所述的方法,还包括:
确定除了高优先级对象以外的非高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;
基于所述除了高优先级对象以外的非高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性,来确定置信度,其中,所述第一波动性越小,则置信度越大;
将置信度大于或等于预定阈值的非高优先级对象作为高优先级对象。
4.根据权利要求1所述的方法,还包括:
将置信度小于预定阈值的高优先级对象作为非高优先级对象。
5.根据权利要求1所述的方法,还包括:
基于可信高优先级对象的运动情况,估计跟踪者的运动情况;
利用跟踪者的运动情况,来跟踪除了可信高优先级对象以外的被跟踪对象。
6.根据权利要求1所述的方法,其中,
相比于除了可信高优先级对象的被跟踪对象的跟踪,对可信高优先级对象的跟踪分配更多的系统资源。
7.一种对象跟踪设备,包括:
高优先级对象确定装置,被配置为从被跟踪对象中选择正前方、稳定运动且持续出现的被跟踪对象为高优先级对象;
可信高优先级对象确定装置,被配置为从高优先级对象中选择持续运动稳定、且与其他高优先级对象运动一致的高优先级对象为可信高优先级对象;
跟踪装置,被配置为进行可信高优先级对象的跟踪;
其中,所述可信高优先级对象确定装置被配置为:
确定高优先级对象的位置、速度、距离、占据区域中的至少一个第一特征在连续多个帧之间的变化的第一波动性;
确定高优先级对象与其他高优先级对象的相对距离、相对角度、相对运动速度中的至少一个第二特征的变化的第二波动性;
基于所述第一波动性和第二波动性中的至少一个,来确定置信度,其中,所述第一波动性和第二波动性越小,则置信度越大;
保留置信度大于或等于预定阈值的高优先级对象作为可信高优先级对象。
8.根据权利要求7所述的设备,其中,所述高优先级对象确定装置被配置为:
计算被跟踪对象的位置、速度、距离、占据区域中的至少一个第一特征在连续两帧之间的变化;
确定所述至少一个第一特征的变化小于各自的预定阈值的被跟踪对象作为高优先级对象。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510441652.3A CN106651901B (zh) | 2015-07-24 | 2015-07-24 | 对象跟踪方法和设备 |
EP16180340.8A EP3121791B1 (en) | 2015-07-24 | 2016-07-20 | Method and system for tracking objects |
JP2016143476A JP6202158B2 (ja) | 2015-07-24 | 2016-07-21 | 対象追跡方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510441652.3A CN106651901B (zh) | 2015-07-24 | 2015-07-24 | 对象跟踪方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106651901A CN106651901A (zh) | 2017-05-10 |
CN106651901B true CN106651901B (zh) | 2020-08-04 |
Family
ID=56883503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510441652.3A Active CN106651901B (zh) | 2015-07-24 | 2015-07-24 | 对象跟踪方法和设备 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3121791B1 (zh) |
JP (1) | JP6202158B2 (zh) |
CN (1) | CN106651901B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101877232B1 (ko) * | 2017-05-29 | 2018-07-12 | 국방과학연구소 | 영상 유사도 및 추적 지점 변화량 기반의 영상 추적기 시스템 및 그의 추적 안정도 판별 방법 |
US10304207B2 (en) * | 2017-07-07 | 2019-05-28 | Samsung Electronics Co., Ltd. | System and method for optical tracking |
JP6988698B2 (ja) * | 2018-05-31 | 2022-01-05 | トヨタ自動車株式会社 | 物体認識装置 |
US11222218B2 (en) | 2019-03-11 | 2022-01-11 | Subaru Corporation | Vehicle exterior environment detection apparatus |
JP6990222B2 (ja) * | 2019-03-11 | 2022-01-12 | 株式会社Subaru | 車外環境検出装置 |
US11205273B2 (en) * | 2019-03-11 | 2021-12-21 | Velo Software, Llc | Methods and systems of tracking velocity |
CN110691197A (zh) * | 2019-11-04 | 2020-01-14 | 上海摩象网络科技有限公司 | 一种拍摄追踪的方法、装置、电子设备 |
CN110809116A (zh) * | 2019-11-04 | 2020-02-18 | 上海摩象网络科技有限公司 | 一种拍摄追踪的方法、装置、电子设备 |
JP2021099698A (ja) * | 2019-12-23 | 2021-07-01 | ソニーグループ株式会社 | 画像処理装置および方法、並びにプログラム |
CN111665490B (zh) * | 2020-06-02 | 2023-07-14 | 浙江大华技术股份有限公司 | 目标跟踪方法和装置、存储介质及电子装置 |
CN111866389B (zh) * | 2020-07-29 | 2022-07-12 | 努比亚技术有限公司 | 一种视频跟踪拍摄方法、设备及计算机可读存储介质 |
WO2022061615A1 (zh) * | 2020-09-23 | 2022-03-31 | 深圳市大疆创新科技有限公司 | 待跟随目标的确定方法、装置、系统、设备及存储介质 |
CN112911249B (zh) * | 2021-03-23 | 2023-03-24 | 浙江大华技术股份有限公司 | 目标对象的跟踪方法、装置、存储介质及电子装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002007096A1 (fr) * | 2000-07-17 | 2002-01-24 | Mitsubishi Denki Kabushiki Kaisha | Dispositif de recherche d'un point caracteristique sur un visage |
CA2628611A1 (en) * | 2005-11-04 | 2007-05-18 | Clean Earth Technologies, Llc | Tracking using an elastic cluster of trackers |
JP5103665B2 (ja) * | 2008-10-24 | 2012-12-19 | 国立大学法人広島大学 | 物体追跡装置および物体追跡方法 |
US8218819B2 (en) * | 2009-09-01 | 2012-07-10 | Behavioral Recognition Systems, Inc. | Foreground object detection in a video surveillance system |
-
2015
- 2015-07-24 CN CN201510441652.3A patent/CN106651901B/zh active Active
-
2016
- 2016-07-20 EP EP16180340.8A patent/EP3121791B1/en active Active
- 2016-07-21 JP JP2016143476A patent/JP6202158B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN106651901A (zh) | 2017-05-10 |
JP2017027602A (ja) | 2017-02-02 |
JP6202158B2 (ja) | 2017-09-27 |
EP3121791A1 (en) | 2017-01-25 |
EP3121791B1 (en) | 2019-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106651901B (zh) | 对象跟踪方法和设备 | |
US20230077355A1 (en) | Tracker assisted image capture | |
JP6849403B2 (ja) | 単一のカメラを用いた移動物体検出のための方法およびシステム | |
US10077986B2 (en) | Storing trajectory | |
CN104424649B (zh) | 检测运动物体的方法和系统 | |
KR102150776B1 (ko) | 얼굴 위치 추적 방법, 장치 및 전자 디바이스 | |
US9811732B2 (en) | Systems and methods for object tracking | |
US9852511B2 (en) | Systems and methods for tracking and detecting a target object | |
CN111399492A (zh) | 一种机器人及其障碍物感知方法和装置 | |
WO2015053335A1 (ja) | 駐車車両検出装置、車両管理システム及び制御方法 | |
KR20180042254A (ko) | 오브젝트 추적을 위한 시스템들 및 방법들 | |
EP3197147A1 (en) | Event signal processing method and apparatus | |
CN106887021B (zh) | 立体视频的立体匹配方法、控制器和系统 | |
JP6679858B2 (ja) | 対象の遮蔽を検出する方法と装置 | |
CN114426030A (zh) | 一种行人穿行意图估计方法、装置、设备和汽车 | |
US20200202541A1 (en) | Detection of visual tracker divergence | |
CN112734810A (zh) | 一种障碍物追踪方法及装置 | |
JP6834020B2 (ja) | 物体認識装置および物体認識方法 | |
US20130142388A1 (en) | Arrival time estimation device, arrival time estimation method, arrival time estimation program, and information providing apparatus | |
JP2015201010A (ja) | 予測外動き判定装置 | |
JP2023018811A (ja) | 通信状態情報を用いてオクルージョンに対応する端末追跡装置、プログラム及び方法 | |
Ata et al. | Towards computer vision-based approach for an adaptive traffic control system | |
US20230177700A1 (en) | Evaluation system, evaluation method, and program | |
CN114004861B (zh) | 目标跟踪方法及相关系统、存储介质、智能驾驶车辆 | |
CN117576167B (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 |