利用多个立体相机的对象检测结果定位对象的方法和装置制造方法

文档序号:6499794阅读:183来源:国知局
利用多个立体相机的对象检测结果定位对象的方法和装置制造方法
【专利摘要】公开了一种利用多个立体相机的对象检测结果来定位对象的方法和装置。所述方法包括:获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息;针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹;以及通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置。上述方法和装置能够避免在采用多个立体相机对对象进行检测和定位时发生融合结果分裂和融合歧义,从而精确地检测和定位对象。
【专利说明】利用多个立体相机的对象检测结果定位对象的方法和装置
【技术领域】
[0001]本发明总体涉及图像处理,具体涉及利用多个立体相机的对象检测结果来定位对象的方法和装置。
【背景技术】
[0002]目前已知一些使用单台立体相机来对对象进行检测和定位的技术。比如,MichaelHarville 在 2003 年发表的文章 “Stereo Person Tracking with Adaptive Plan-ViewTemplates of Height and Occupancy Statistics” 中对此进行了阐述。
[0003]但是,使用一个立体相机,检测的视角受限,而且检测率不够高。因此,人们逐渐开始考虑使用多个立体相机来对对象进行检测和定位。使用多个立体相机可以增大检测的覆盖区域,更重要的是,可以提高检测精度。但是,目前对于如何使用多个立体相机进行对象的检测和定位的研究还相对较少。
[0004]使用多个立体相机进行对象检测和定位的关键之一是多个相机的检测结果的融合。当使用多个立体相机进行对象检测和定位时,所使用的多个立体相机的视野相互重叠,从而有些区域可能被多于一个相机拍到。由于每个相机均单独地进行对象的检测和定位,因此当某个对象被多台相机检测到时,需要进行融合处理来将不同相机检测到的有关同一个对象的检测结果合并,以得到最终的检测结果。
[0005]目前,对于如何进行融合处理,已经有一些已知的方法。一个传统的方法是比较不同相机的检测结果中对象之间的距离,如果距离非常近,就认为它们对应于同一个对象;反之,如果距离较远,则认为它们对应于不同对象。但是,由于检测结果和真实位置存在误差,这一方法往往存在融合结果分裂和融合歧义的问题。以下将参考图1A、1B和图2对此进行简要介绍。
[0006]图1A示出了两个立体相机对预定空间中的对象的检测结果在统一世界坐标系下的示意图。如图1A所示,图中顶部和底部的两个小三角形分别表示两个相机的位置,两条折线分别表示对应相机的视野。小圆圈表示其中一个相机的对象检测结果,黑色的圆点表示另一个相机对象检测结果。显然,真实的结果是预定空间中应该有4个对象。图1B示意性地示出了使用传统的融合方法出现的融合结果分裂现象。图1B中的每一个黑色的菱形表示融合的对象位置,可以看出,其中有一个真实的对象被错误的处理成为2个对象。
[0007]图2示出了两个立体相机对预定空间中的对象的检测结果在统一世界坐标系下产生融合歧义的示意图。与图1A类似,图2中顶部和底部的两个小三角形分别表示两个相机的位置,两条折线分别表示对应相机的视野,小圆圈表示其中一个相机的对象检测结果,黑色的圆点表示另一个相机对象检测结果。可以看到,在一个小范围内,有3个小圆圈和2个黑色的圆点距离非常近,在该情况下很难判定哪个小圆圈和哪个黑色的圆点对应于同一个对象,由此产生了融合歧义。
[0008]因此,需要一种能够避免在采用多个立体相机对对象进行检测和定位时发生融合结果分裂和融合歧义的技术,从而精确地检测和定位对象。
【发明内容】

[0009]产生上述融合结果分裂和融合歧义现象的原因是在融合时仅仅将两个立体相机的单帧检测结果进行比较。也就是说,在融合各个相机的检测结果时仅考虑了空间的关系。基于这一认识,本发明人提出一种新的利用多个立体相机的对象检测结果来检测和定位对象的方法。在该方法中,不是只比较各个立体相机的单帧检测结果,而是将由各个相机的多帧的检测结果形成的轨迹进行比较。轨迹是由多帧的检测结果组成的点集,其不但能表示空域关系还能表示时域关系,因此是一种更加稳定的特性。通过利用轨迹进行融合处理,较好地解决了在采用多个立体相机对对象进行检测和定位时的融合结果分裂和融合歧义问题。
[0010]根据本发明的一个方面,提供了一种利用多个立体相机的对象检测结果来定位对象的方法,包括:获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息;针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹;以及通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置。
[0011]根据本发明的另一个方面,提供了一种利用多个立体相机的对象检测结果来定位对象的装置,包括:位置信息获取部件,获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息;轨迹生成部件,针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹;以及定位部件,通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置。
【专利附图】

【附图说明】
[0012]从下面结合附图对本发明实施例的详细描述中,本发明的这些和/或其它方面和优点将变得更加清楚并更容易理解,其中:
[0013]图1A示出了两个立体相机对预定空间中的对象的检测结果在统一世界坐标系下的示意图。
[0014]图1B示意性地示出了使用传统的融合方法出现的融合结果分裂现象。
[0015]图2示出了两个立体相机对预定空间中的对象的检测结果在统一世界坐标系下产生融合歧义的示意图。
[0016]图3示出了应用根据本发明实施例的对象定位技术的系统的示意图。
[0017]图4示出了根据本发明第一实施例的利用多个立体相机的对象检测结果来定位对象的方法的总体流程图。
[0018]图5示出了根据本发明第一实施例的生成对应于一定时间长度的轨迹的处理的流程图。
[0019]图6示出了根据本发明第一实施例的将对应于不同立体相机的对象轨迹相互融合来确定对象的位置的示例处理的流程图。
[0020]图7示出了根据本发明实施例的利用多个立体相机的对象检测结果定位对象的装置的总体配置图。
[0021]图8示出了根据本发明实施例的利用多个立体相机的对象检测结果来定位对象的系统的总体硬件框图。
[0022]图9中例示了轨迹在2维空间的示意图。
【具体实施方式】
[0023]为了使本领域技术人员更好地理解本发明,下面结合附图和【具体实施方式】对本发明作进一步详细说明。
[0024]首先需要说明的是,作为应用根据本发明的利用多个立体相机的对象检测结果来定位对象的技术的前提条件,假设所有的立体相机都已经将各自的坐标系转换到一个统一的世界坐标系内,在该坐标系中,X-Z平面与地面重合,Y轴为相对于地面的高度。如何进行这一转换是本领域中公知,此处不进行具体描述。在本发明的描述中,各个对象的位置坐标均是指在该世界坐标系 内的坐标。
[0025]另外,本发明适用于两个及两个以上的立体相机的情况,但是为了便于描述,在后面的实施例中以两个立体相机为例进行描述。
[0026]下面,将结合图3,对应用根据本发明实施例的对象定位技术的示意系统进行描述。如图3中所示,该系统包含多个(双目)立体相机。对于每个立体相机,捕捉的对象视频帧经由对象检测和跟踪处理而产生位置信息11。这一对象检测和跟踪处理可以采用任何已有的技术,例如,Michael Harville在2003年发表的文章〃Stereo Person Trackingwith Adaptive Plan-View Templates of Height and Occupancy Statistics"描述了一种可能的处理方法。所产生的位置信息11通过有线或无线方式传送到根据本发明的对象定位装置12,该对象定位装置12对位置信息进行根据本发明实施例的处理,最终确定对象的位置。根据需要,可以输出包含最终确定的各个对象的位置的列表13。
[0027]如前所述,位置信息11表示的是对象在统一的世界坐标系内的位置。为了便于后面的描述,本文中将该位置信息的格式定义为:
[0028]
Data:= {timestamp, (M1,Xwl, Yw1,Zw1),(id2, Xw2,Yw2,Zw2),.,Xwm, Ywm,Zwm)} (I)
object!ohjecTlobjectm
[0029]其中Data表示作为检测结果的位置信息11 ;timestamp是时间戳,表示相机捕获视频帧的具体时刻;m表示检测出的对象的数量;idj(j=0, I,..., m)表示被跟踪检测的对象的编号;XWj, Ywj, Zwj表示对象j的头顶在统一世界坐标系下的3维坐标,其中Xwj, Zwj表示对象j在地面的投影点的坐标位置,Ywj表示对象j的高度。容易理解,位置信息11可以采用任意格式来表示,上述定义的格式仅仅是其中的一个示例。例如,可以使用2维坐标,即不使用Yw坐标,而是利用表示对象在地面的投影点的位置的Xw,Zw坐标来代表该对象的位置。
[0030]<第一实施例>
[0031]图4示出了根据本发明第一实施例的利用多个立体相机的对象检测结果来定位对象的方法的总体流程图。
[0032]如图4所示,在步骤S41中,获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息。
[0033]由于每个立体相机对于对象进行持续的跟踪检测,因而对于每个相机检测到的每个对象,将获得对应于不同的检测时间的多个位置信息。例如,以使用两个立体相机A和B进行跟踪检测为例,采用表达式(I)定义的格式,通过相机A的跟踪检测而产生的位置信息表示如下:
[0034]
[0035]{tAl,(idA1,Xw^11, Yw1ai , Zw1m ),Qdi2, Xw1a2,Ywii2,Zw142 ),...,},
[0036]{tA2,(idAl,Xw2il,Yw24l,Zw^1),Qd42,Xw2i2,Yur2,Zw^2(2 )
[0037]......,
[0038]{tAn, (idM, Xwn41, Ywn4l, Zw11m ), (idA2, Xw1^2, YwnA2, Zw1^2
[0039]其中,tAi(i=0, I,..., n)表示按时序排列的时间戳值,Xw1ai, Yw1ai, Zw1ai表示对象Al的头顶在tAi时刻在统一世界坐标系下的3维坐标。每行的数据为单帧的跟踪结果。需要说明的是,由于在跟踪检测过程 中,新的对象可能会进入到检测区域中或已有对象可能会离开检测区域,因此在不同帧中,检测到的对象的数量以及检测到的具体对象可能会不同。
[0040]类似的,由相机B的跟踪检测而产生的位置信息如下:
[0041 ] {(B0, (idBl, Xw0bi , Yw0bi, Zw0n), {idB1, Xw032, Yw0b2 ,Z^82),
[0042]{tBl,Qdm,-Xwfll,Y^b-1 , 2wm ),(idB2, ,YwB2, Ζμ.Β2 )”..,},
[0043]{tB2,(idm, Xw2m, Yw2m, ZMjjl), (idB2, Xw1b2, Yw2b2 , Zw^2(3)
[0044].....,
[0045]{tBn Aidmy Xwnmy Ywnm, Zw^1 ),{idB2, XwnB2, Ywn32,Zwna2
[0046]在步骤S42中,针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹。
[0047]一条轨迹描述一个对象,并由该对象在多个检测时间的多个位置信息组成。例如,图9中例示了所述轨迹在2维空间的示意图(事实上,一条轨迹表示的是一段时间内的三维位置的集合,但是为了可视化以及更简单易懂,图9中示出的是2维空间是的情况)。其中,水平坐标轴表示时间,每个黑色圆点表示在某个时刻的位置,该位置是通过将三维坐标系中的位置投影到地面(Xw和Zw平面)得到的。
[0048]容易理解,对于每一个立体相机,其在跟踪检测过程中检测到多少个对象,就应当形成多少条轨迹。在本实施例中,对象轨迹的格式如下所示:
[0049]Trajectory: = {id, (t1; Xw1id, Yw1id, Zw1id), (t2, Xw2id, Yw2id, Zw2id),..., (tn, Xw2id,Yw2id, Zw2idM (4)
[0050]其中Trajectory表示所形成的轨迹,id表示跟踪检测的对象的编号,ti(i=0, I,..., η)表示按时序排列的时间戳值,Xw1id, Yw1id, Zw1id表示对象id在时刻在统一的世界坐标系内的位置坐标。
[0051]考虑到执行根据本发明实施例的定位对象的方法所需的计算量、计算时间以及输出由此确定的对象位置的可接受的延迟,作为一种优选的方式,可以仅生成对应于一定时间长度的轨迹。下面,将结合图5对该优选的方式进行具体的描述。
[0052]首先,在步骤S421,确定轨迹对应的时间长度。该时间长度可以根据具体情况来确定。一个可能的时间长度是I秒,其既是上述可接受的延迟时间,同时在这一时间内也能观察到对象明显的移动。[0053]随后,在步骤S422中,针对每个立体相机,对于其跟踪检测的每个对象,从所产生的多个位置信息中截取在所述时间长度内的位置信息。
[0054]在该步骤中,对于每个立体相机跟踪检测到的位置信息,均执行截取操作。通过位置信息中包含的时间戳,可以确定应当截取的位置信息。例如,以立体相机A为例,对应于立体相机A的位置信息如表达式(2)所示,需要从中找到一个时间戳tAi (OS i〈n),以满足:
[0055](tAn-tAi) < 时间长度,且) > 时间长度 (5)
[0056]其中tAn为相机A跟踪检测到的位置信息中最新的时间戳。
[0057]如果找到符合表达式(5)的tAi,则可以在后面的步骤中使用从tAi时刻到^时刻的数据来组成轨迹,否则,说明相机A跟踪检测到的位置信息不足,还无法组成轨迹,因此需要等待相机A继续进行跟踪检测。
[0058]最后,在步骤S423,针对每个立体相机跟踪检测的每个对象,采用所截取的位置信息形成一条对象轨迹。
[0059]再次回到图4,在形成对象轨迹之后,在步骤S43中,通过将对应于不同立体相机的所形成的对象轨迹相互融合来确定对象的位置。更明确的说,该步骤中将由不同立体相机检测到的有关同一个对象的检测结果(轨迹)进行合并,从而最终确定该对象的位置。
[0060]该步骤可以通过以下具体操作来执行:将对应于不同立体相机的所形成的对象的轨迹进行匹配,从而对于每一个对象,确定与其对应的各条相互匹配的轨迹;当对于某一对象存在多条与其相对应的相互匹配的轨迹时,将该多条轨迹各自的最新的位置信息进行合并来确定该对象的位置;当对于某一对象仅存在一条轨迹时,则基于该条轨迹的最新的位置信息确定该对象的位置。
[0061]容易想到,上述操作可以通过各种适当的方式来实现。下面将参考图6描述一种实现上述操作的具体方法。应当注意,该具体方法并非是对发明的限制,而是为了使得本发明更加清楚易懂而给出的一种示例性描述。
[0062]如图6所示,在步骤S431,对于每个立体相机,创建一个轨迹列表,并将对应于该立体相机的所形成的各条轨迹存储在该轨迹列表中。例如,对于立体相机A,创建轨迹列表A,并将在前述步骤S42中形成的、分别对应于立体相机A跟踪检测的各个对象的各条轨迹存储在轨迹列表A中。类似的,对于立体相机B,创建轨迹列表B,并将在前述步骤S42中形成的、分别对应于立体相机B跟踪检测的各个对象的各条轨迹存储在轨迹列表B中。
[0063]在步骤S432,从任一个轨迹列表中选择任意一条轨迹,将该选择的轨迹与其他轨迹列表中存储的轨迹进行比较,以查找与该选择的轨迹匹配的轨迹。
[0064]例如,当选择了列表A中的轨迹Tra jectorya时,将该轨迹与其他列表B、列表C……列表N中存储的轨迹依次进行比较,以查找列表B、列表C……列表N中所有与轨迹Trajectorya匹配的轨迹。
[0065]随后,在步骤S433中确定,在其他轨迹列表中是否存在与选择的轨迹匹配的轨迹。当存在匹配的轨迹时执行步骤S434,当不存在匹配的轨迹时执行步骤S435。
[0066]在步骤S434中,从相应的轨迹列表中删除该选择的轨迹以及与该选择的轨迹匹配的轨迹;将该选择的轨迹以及与其匹配的轨迹各自的最新的位置信息进行合并来确定对应对象的位置。[0067]例如,假设通过步骤S432确定仅在轨迹列表B中存在与轨迹Trajectorya匹配的轨迹Trajectoryb,轨迹Trajectorya和Trajectoryb对应于对象Objectl,并具有如下格式:
【权利要求】
1.一种利用多个立体相机的对象检测结果来定位对象的方法,包括: 获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息; 针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹;以及 通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置。
2.如权利要求1所述的对象定位方法,其中所述对象的位置信息包括时间戳、对象编号以及对应于该时间戳的对象的位置坐标。
3.如权利要求2所述的对象定位方法,其中基于所产生的多个位置信息形成该对象的轨迹进一步包括: 指定重采样的时间戳; 通过对所述产生的多个位置信息进行插值来计算该对象在指定的时间戳时的位置坐标; 基于指定的时间戳和在该时间戳时的位置坐标形成该对象的轨迹。
4.如权利要求2所述的对象定位方法,其中所述针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹进一步包括: 确定轨迹对应的时间长度; 针对每个所述立体相机,对于其跟踪检测的每个对象,从所产生的多个位置信息中截取该时间长度内的位置信息; 采用所截取的位置信息形成对象的轨迹。
5.如权利要求4所述的对象定位方法,其中所述时间长度的终点为最新的时间戳。
6.如权利要求1-5中任一项所述的对象定位方法,其中通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置进一步包括: 将对应于不同立体相机的所形成的对象的轨迹进行匹配,从而对于每一个对象,确定与其对应的各条相互匹配的轨迹, 当对于某一对象存在多条与其相对应的相互匹配的轨迹时,将该多条轨迹各自的最新的位置信息进行合并来确定该对象的位置;当对于某一对象仅存在一条轨迹时,则基于该条轨迹的最新的位置信息确定该对象的位置。
7.如权利要求1-5任一项所述的对象定位方法,其中通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位置进一步包括步骤: a.对于每个立体相机,创建一个轨迹列表,并将对应于该立体相机的所形成的各条轨迹存储在该轨迹列表中; b.从各个所述轨迹列表中的任一个轨迹列表中选择任意一条轨迹,将该选择的轨迹与其他轨迹列表中存储的轨迹进行比较,以查找与该选择的轨迹匹配的轨迹; c.当存在与该选择的轨迹匹配的轨迹时,从相应的轨迹列表中删除该选择的轨迹以及与该选择的轨迹匹配的轨迹;将该选择的轨迹以及与其匹配的轨迹各自的最新的位置信息进行合并来确定对应对象的位置; d.当不存在与该选择的轨迹匹配的轨迹时,从相应的轨迹列表中删除该选择的轨迹;基于该选择的轨迹的最新的位置信息确定对应对象的位置;e.重复执行步骤b-d,直到各个轨迹列表均为空。
8.如权利要求6或7所述的对象定位方法,其中通过轨迹之间的相关性来确定轨迹是否是匹配的。
9.一种利用多个立体相机的对象检测结果来定位对象的装置,包括: 位置信息获取部件,获取每个所述立体相机对于对象进行持续的跟踪检测而产生的对象的多个位置信息; 轨迹生成部件,针对每个所述立体相机,对于其跟踪检测的每个对象,基于所产生的多个位置信息形成该对象的轨迹;以及 定位部件,通过将对应于不同立体相机的所形成的对象的轨迹相互融合来确定对象的位 置。
【文档编号】G06T7/00GK103971359SQ201310045700
【公开日】2014年8月6日 申请日期:2013年2月5日 优先权日:2013年2月5日
【发明者】王鑫, 范圣印 申请人:株式会社理光
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1