CN105096290B - 在空间的平面图中标定至少一个立体相机的方法和装置 - Google Patents
在空间的平面图中标定至少一个立体相机的方法和装置 Download PDFInfo
- Publication number
- CN105096290B CN105096290B CN201410157668.7A CN201410157668A CN105096290B CN 105096290 B CN105096290 B CN 105096290B CN 201410157668 A CN201410157668 A CN 201410157668A CN 105096290 B CN105096290 B CN 105096290B
- Authority
- CN
- China
- Prior art keywords
- particle
- camera
- plan
- space
- stereoscopic camera
- 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
Landscapes
- Processing Or Creating Images (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明的实施例提供了一种在空间的平面图中标定立体相机的方法和装置。根据本发明实施例的在空间的平面图中标定立体相机的方法,包括:将立体相机在空间中拍摄的深度图转换为顶视图;将顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子;根据利用立体相机获得的在空间中行进的对象的位置和/或运动轨迹以及平面图中显示的空间中障碍物的位置,更新每个相机粒子的粒子权重;以及根据更新后的相机粒子在平面图中标定立体相机。
Description
技术领域
本发明涉及标定立体相机的方法和装置,更具体地,本发明涉及在空间的平面图中标定至少一个立体相机的方法和装置。
背景技术
近年来例如三维重建、虚拟现实之类的技术已被广泛使用。在三维重建、虚拟现实等技术中,通过在空间中设置的立体相机对该空间进行拍摄,以获得例如人、动物等目标对象在该空间中的位置。具体地,在现有的目标对象位置确定方法中,首先可根据立体相机所拍摄的关于空间的图像确定目标对象相对于立体相机的位置,然后可根据立体相机在预先给定的空间的平面图中的位置和立体相机的光轴与平面图的坐标轴之间的夹角,将目标对象在立体相机所拍摄的图像中的位置映射到空间的平面图中,从而确定目标对象在空间中的位置。
在现有的标定立体相机的方法中,需要根据立体相机的设置位置,在空间的平面图中对相机进行手动标定。然而,在手动标定过程中容易产生误差,导致在空间的平面图中标定的立体相机不准确,并进而影响根据在平面图中标定的立体相机计算出的目标对象在空间中位置的准确性。
发明内容
本发明实施例的目的在于提供一种在空间的平面图中标定至少一个立体相机的方法和装置,以解决上述问题。
本发明的一个实施例提供了一种在空间的平面图中标定立体相机的方法,包括:将立体相机在空间中拍摄的深度图转换为顶视图;将顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子,其中该相机粒子包括当该对关键特征匹配时立体相机在平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重,并且粒子权重的初始值为该对关键特征的匹配值;根据利用所述立体相机获得的在空间中行进的对象的位置和/或运动轨迹以及平面图中显示的空间中障碍物的位置,更新每个相机粒子的粒子权重;以及根据更新后的相机粒子在平面图中标定立体相机。
本发明的另一实施例提供了一种在空间的平面图中标定立体相机的装置,包括:图像转换单元,配置来将所述立体相机在所述空间中拍摄的深度图转换为顶视图;粒子生成单元,配置来将所述顶视图中显示的所述空间的关键特征和所述平面图中显示的所述空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子,其中该相机粒子包括当该对关键特征匹配时所述立体相机在所述平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重,并且所述粒子权重的初始值为该对关键特征的匹配值;粒子更新单元,配置来根据利用所述立体相机获得的在所述空间中行进的对象的位置和/或运动轨迹以及所述平面图中显示的所述空间中障碍物的位置,更新每个相机粒子的粒子权重;以及相机标定单元,配置来根据更新后的相机粒子在所述平面图中标定所述立体相机。
在上述发明实施例提供的在空间的平面图中标定立体相机的方法和装置中,可根据在空间中行进的对象的运动轨迹,自动地在空间的平面图中标定在该空间中设置的立体相机,而不需要手动地在平面图中对立体相机进行标定,从而避免了由于在手动标定过程中产生的误差所导致的在平面图中标定的相机位置的不准确性,并且提高了根据在平面图中标定的立体相机确定的目标对象在空间中位置的准确性。
附图说明
图1是描述了根据本发明一个实施例的在空间的平面图中标定立体相机的方法的流程图;
图2a是示出立体相机在空间中拍摄的深度图。
图2b是示出根据本发明的一个示例,由图2a中所示的深度图转换的并且去除天花板带来的影响的深度图。
图3是示出了根据本发明一个示例,以设置在空间中的多个立体相机中的一个作为参照物用来定义该空间的观测坐标系的示意性说明图。
图4a是示出的根据本发明一个示例的空间的平面图。
图4b是示出的根据本发明一个示例对平面图进行二值化操作后获得的二值化的平面图。
图5a和图5b是示出了根据本发明,将顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征进行匹配的一个示例情形的说明图。
图6是示出根据本发明的一个示例的更新每个相机粒子的粒子权重的方法的流程图。
图7是示出根据本发明的另一示例的更新每个相机粒子的粒子权重的方法的流程图。
图8是示出了根据本发明的一个实施例的在空间的平面图中标定立体相机的装置的示范性结构框图。
图9是示出了根据本发明的一个实施例的粒子更新单元的示范性结构框图。
图10是示出了根据本发明的另一实施例的粒子更新单元的示范性结构框图。
图11是示出了根据本发明的一个实施例的相机标定单元的示范性结构框图。
图12是示出按照本发明实施例的在空间的平面图中标定立体相机的硬件系统的总体硬件框图。
具体实施方式
为了使本领域技术人员更好地理解本发明,将参考附图详细描述本发明的优选实施例。注意,在本说明书和附图中,具有基本上相同步骤和元素用相同的附图标记来表示,且对这些步骤和元素的重复解释将被省略。
图1是描述了根据本发明一个实施例的在空间的平面图中标定立体相机的方法100的流程图。下面,将参照图1来描述根据本发明实施例的在空间的平面图中标定立体相机的方法。在根据本发明的实施例中,立体相机是指能够采集深度图的相机,立体相机的具体形式包括但不限于双目相机。此外,在根据本发明的实施例中,在空间中活动或行进的对象具体形式包括但不限于人、动物、例如机器人的电子装置等。
如图1所示,在步骤S101中,将立体相机在空间中拍摄的深度图转换为顶视图。根据本发明的一个示例,在步骤S101中,可对立体相机在空间中拍摄的深度图中的每一个像素进行坐标转换,以计算该像素在顶视图中的坐标,从而获得与所拍摄的深度图对应的顶视图。
当立体相机被设置在例如办公室、会议室、客厅或卧室等室内空间中时,立体相机所拍摄的深度图可能包括该室内空间的天花板。在此情况下,深度图中的天花板的部分也会被包括在转换后的顶视图中,对后续操作造成不利的影响。鉴于此,优选地根据本发明的一个示例,在将深度图转换为顶视图时可去除深度图中的天花板部分,以避免天花板带来的影响。
具体地,在顶视图中,可将高度不在预定高度范围内的物体所对应的像素的像素值设置为零。图2a是示出立体相机在空间中拍摄的深度图210。图2b是示出根据本发明的一个示例,由图2a中所示的深度图210转换的并且去除天花板带来的影响的深度图220。在图2a和图2b所示的示例中,由于通常在80cm至200cm的之间可拍摄到例如桌子、隔断、墙之类的空间中的障碍物和在空间中活动的对象,并且室内空间的天花板高度通常高于200cm,因此,可将预定高度范围设置为80cm至200cm。如图2b所示,在深度图210转换为顶视图220时,在顶视图220中可将高度小于80cm或者大于200cm的物体所对应的像素的像素值设置为零。
此外,在空间中存在多个立体相机的情况下,在步骤S101中,在将立体相机在空间中拍摄的深度图转换为顶视图时,可根据该立体相机与空间中的其它立体相机之间的位置关系来执行图像转换。例如,在当在空间中存在多个立体相机时,可以多个立体相机中的一个立体相机的为参照物,并且通过例如偏移量和相机拍摄方向之间的夹角之类的相机外部参数来确定其它立体相机与作为参照物的立体相机之间的位置关系。
以下,将结合图3说明根据本发明的一个示例的获得相机外部参数的方法。图3是示出了根据本发明一个示例,以设置在空间中的多个立体相机中的一个作为参照物用来定义该空间的观测坐标系的示意性说明图。在图3所示的示例中,在空间中设置了三个立体相机310、320和330。在本示例中,以相机310在竖直方向所在的直线上的某一点为原点o建立观测坐标系,在所述观测坐标系中,以相机310在水平方向上所在的直线为x轴,以相机310在竖直方向上所在的直线为y轴并且以相机310拍摄方向(即,相机310的光轴)所在的直线为z轴。
可使得高度已知的对象在各个相机均能够拍摄到的范围内走动,并且通过以下公式(1)来计算立体相机320和330的相机外部参数R和T:
其中,Xo,Yo,Zo为对象在以相机310为原点o的观测坐标系中的坐标,Yo的值等于对象的高度,Xc,Yc,Zc为通过除了作为原点的相机310以外的其它相机(即,相机320或330)拍摄的深度图像获得的、对象在以该其它相机为原点的相机坐标系中的坐标;T包括在X轴,Y轴和Z轴方向相机320或330相对于相机310的偏移量;并且R包括在X轴,Y轴和Z轴方向相机320或330的拍摄方向与相机310的拍摄方向之间的夹角。
在步骤S101中,当将立体相机在空间中拍摄的深度图转换为顶视图时,可首先利用立体相机的相机外部参数,将该立体相机的所拍摄的、其坐标系为以该立体相机自身为原点的坐标系的深度图旋转和/或平移到以作为参照物的立体相机为原点的观测坐标系中,然后将旋转和/或平移后的深度图转换为顶视图。
返回图1,在步骤S102中,将在步骤S101中获得的顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子。关键特征可指示空间中的例如障碍物(例如隔断)之类的标志性物体。在根据本发明的示例中,关键特征可以是拐角、一条或多条线段或者其它易于识别的图案。此外,空间的平面图可以是预先给定的。根据本发明的示例,在步骤S102中对顶视图中显示的空间的一个关键特征和平面图中显示的空间的一个关键特征的进行配对,直到对于所有可能配对的组合都生成了相应的相机粒子。
相机粒子包括当与该相机粒子对应的一对关键特征匹配时立体相机在平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重。在根据本发明的实施例中,顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征匹配可以指将顶视图中显示的空间的一个关键特征对应于平面图中显示的空间的一个关键特征,换言之,顶视图中显示的空间的一个关键特征和平面图中显示的空间的一个关键特征对应于空间中的同样的物体。一对关键特征之间的夹角为当该对关键特征匹配时,立体相机的拍摄方向与给定的平面图的坐标轴之间夹角。此外,粒子权重的初始值为该对关键特征的匹配值。粒子权重指示立体相机位于该相机粒子的位置坐标并且立体相机的拍摄方向与平面图的坐标轴之间夹角为该相机粒子的夹角的可能性。权重越大则该可能性越高,反之可能性越小。
优选地,根据本发明的一个示例可根据空间中的障碍物和可行走的区域将空间的平面图二值化。图4a是示出的根据本发明一个示例的空间的平面图410。图4b是示出的根据本发明一个示例对平面图410进行二值化操作后获得的二值化的平面图420。在二值化的平面图420中,黑色区域为空间中的例如墙壁、柱子之类的障碍物所在的区域,除了黑色区域以外的区域为对象能够在其中活动的区域。通过图4a和图4b可以看出,在经过二值化的平面图中,能够更清楚地显示空间的障碍物和可行走的区域。在步骤S102中,可将顶视图中显示的空间的关键特征和经过二值化的平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子。
图5a和图5b是示出了根据本发明,将顶视图510中显示的空间的关键特征和平面图520中显示的空间的关键特征进行匹配的一个示例情形的说明图。在图5a和图5b所示的示例中,将以关键特征为线段或者与线段近似的图案为例进行描述。具体地,如图5a所示,在顶视图510中显示了空间的关键特征511和512。如图5b所示,在经过二值化的平面图520中显示了空间的关键特征521、522和523。
在步骤S102中,可将在顶视图510中的关键特征511和512与顶视图520中的关键特征521、522和523逐一进行匹配,并且在每次匹配时对于参与匹配的每对关键特征生成相机粒子。更具体地,当关键特征511和关键特征521进行匹配时,生成与关键特征511和关键特征521对应的相机粒子P。相机粒子P包括在关键特征511对应于关键特征521的情况下,立体相机在平面图520中的位置坐标、关键特征511和关键特征521之间的夹角、以及初始值为关键特征511和关键特征521的匹配值的粒子权重。
例如,可通过以下公式(2)来计算关键特征511和关键特征521之间的夹角θ:
其中,kA为关键特征511的斜率,并且kB为关键特征521的斜率。
又例如,可将对键特征511和关键特征521求卷积所获得的卷积值作为关键特征511和关键特征521的匹配值。
当关键特征511和关键特征522进行匹配时,可与相机粒子P类似地生成与关键特征511和关键特征522对应的相机粒子。当关键特征511和关键特征523进行匹配时,可与相机粒子P类似地生成与关键特征511和关键特征523对应的相机粒子。此外,对于关键特征512也可与关键特征511类似地,分别生成与关键特征512和关键特征521对应的相机粒子、与关键特征512和关键特征522对应的相机粒子和与关键特征512和关键特征523对应的相机粒子。
返回图1,为了方便运算,根据本发明的一个示例,在执行步骤S103之前可将对所有相机粒子的粒子权重进行归一化处理。在步骤S103中,根据利用立体相机获得的在空间中行进的对象的位置和/或运动轨迹以及平面图中显示的空间中障碍物的位置,更新每个相机粒子的粒子权重。例如,当对象在空间行进时,可通过立体相机对该空间进行拍摄以获得该空间的深度图,并且从所获得的深度图中提取对象的位置。然后如在步骤S101中所述,将对象在深度图中的位置转换为该对象在顶视图中的位置。此外,可根据对象在一段时间内在空间中的位置获得该对象的运动轨迹。
图6是示出根据本发明的一个示例的更新每个相机粒子的粒子权重的方法600的流程图。如图6所示,在步骤S601中,对于每个相机粒子,根据对象在顶视图中的位置以及该粒子的位置坐标和夹角计算对象在平面图中的位置。例如,可通过以下公式(3)计算对象在平面图中的位置坐标(up,vp):
其中坐标(u,v)为相机粒子的位置坐标,θ为相机粒子的夹角,坐标(x,y)为对象在顶视图中的位置坐标。
在步骤S602中,确定所计算的对象在平面图中的位置是否与空间中障碍物的位置重叠。因为对象不可能走进障碍物中,所以当所计算的对象在平面图中的位置与空间中障碍物的位置重叠时,说明使用相机粒子的位置坐标和夹角计算出的对象在平面图中的位置坐标有误,即,该相机粒子对应的一对关键特征匹配关系不正确。因此,当所计算的对象在平面图中的位置与空间中障碍物的位置重叠时,在步骤S603中,降低该相机粒子的粒子权重。例如,可将该相机粒子的粒子权重设置为一个很小的值(例如,0.01)。
图7是示出根据本发明的另一示例的更新每个相机粒子的粒子权重的方法700的流程图。如图7所示,在步骤S701中,根据运动轨迹,在顶视图中获得对象在运动中的运动方向拐点。例如,可通过以下公式(4)计算对象的运动方向σt:
其中σt表示在当前时刻对象的运动方向,xt和zt表示在当前时刻对象在顶视图中的坐标,xt-1和zt-1表示在上一时刻对象在顶视图中的坐标。此外又例如可通过以下公式(5)计算对象的运动方向拐点turning_point(x,z):
turning_point(x,z)≡|σt-σt-1|>φ……(5)
其中σt表示在当前时刻对象的运动方向,σt-1表示在前一时刻对象的运动方向,φ为预先确定的角度阈值。例如,当转向大于或等于90度时可认为方向发生明显变化,即,转向大于90度的点为运动方向拐点。此时,可预先确定φ等于90度。
然后在步骤S702中,对于每个相机粒子,根据运动方向拐点在顶视图中的位置以及该粒子的位置坐标和夹角计算运动方向拐点在平面图中的位置。例如,在步骤S702中,可通过上述公式(3)来计算运动方向拐点在平面图中的位置坐标。
在步骤S703中可确定运动方向拐点在平面图中的位置是否位于平面图中显示的空间中障碍物的附近。因为对象在接近障碍物时其行进方向很可能发生明显改变,所以当所计算的运动方向拐点在平面图中的位置位于平面图中显示的空间中障碍物的附近时,说明使用相机粒子的位置坐标和夹角计算出的对象在平面图中的位置坐标很可能是正确的,即,该相机粒子对应的一对关键特征匹配关系正确。因此,当运动方向拐点在平面图中的位置位于平面图中显示的空间中障碍物的附近时,在步骤S704中增加该相机粒子的粒子权重。例如,可将该相机粒子的粒子权重乘以1.1倍。
应注意,图6和图7中所示的更新每个相机粒子的粒子权重的方法仅为步骤S103的示例。此外,根据本发明的另一示例,在步骤S103中可以执行图6中所示的方法600和图7中所示的方法700二者。
返回图1,在步骤S104中,根据更新后的相机粒子在所述平面图中标定该立体相机。根据本发明的一个示例,在步骤S104中可对更新了权重的相机粒子进行采样以获得采样粒子,并且确定采样粒子是否满足收敛条件。当满足收敛条件时,在步骤S104中根据收敛的采样粒子的位置坐标和夹角确定立体相机在平面图中的位置坐标和立体相机的拍摄方向,以在空间的平面图中标定立体相机。例如,可将满足收敛条件的采样粒子的位置坐标的平均值作为立体相机在平面图中的位置坐标,并且将满足收敛条件的采样粒子的夹角的平均值作为立体相机的光轴与给定的平面图的坐标轴之间的夹角,从而在空间的平面图中标定立体相机。另一方面当不满足收敛条件时,可重复执行步骤S103和S104,直到采样粒子满足收敛条件为止。
在上述发明实施例提供的在空间的平面图中标定立体相机的方法中,可根据在空间中行进的对象的运动轨迹,自动地在空间的平面图中标定在该空间中设置的立体相机,而不需要手动地在平面图中对立体相机进行标定,从而避免了由于在手动标定过程中产生的误差所导致的在平面图中标定的相机位置的不准确性,并且提高了根据在平面图中标定的立体相机确定的目标对象在空间中位置的准确性。
此外,在根据本发明实施例提供的在空间的平面图中标定立体相机的方法中,根据顶视图中的关键特征和平面图中的关键特征的匹配确定用于标定立体相机的各个相机粒子在初始值,从而与对所有的相机粒子赋予的相同的初始值的情况相比,有效地减少了标定立体相机所需要的运算,并且缩短了标定立体相机所需要的时间。
下面,参照图8说明本发明的实施例的在空间的平面图中标定立体相机的装置。图8是示出了根据本发明的一个实施例的在空间的平面图中标定立体相机的装置800的示范性结构框图。如图8中所示,本实施例的在空间的平面图中标定立体相机的装置800包括图像转换单元810、粒子生成单元820、粒子更新单元830和相机标定单元840。在空间的平面图中标定立体相机的装置800的各个单元可分别执行上述图1中的在空间的平面图中标定立体相机的方法100的各个步骤/功能。因此,以下仅对在空间的平面图中标定立体相机的装置800的主要部件进行了描述,而省略了以上已经结合图1描述过的细节内容。
图像转换单元810将立体相机在空间中拍摄的深度图转换为顶视图。根据本发明的一个示例,图像转换单元810可对立体相机在空间中拍摄的深度图中的每一个像素进行坐标转换,以计算该像素在顶视图中的坐标,从而获得与所拍摄的深度图对应的顶视图。
当立体相机被设置在例如办公室、会议室、客厅或卧室等室内空间中时,立体相机所拍摄的深度图可能包括该室内空间的天花板。在此情况下,深度图中的天花板的部分也会被包括在转换后的顶视图中,对后续操作造成不利的影响。鉴于此,优选地根据本发明的一个示例,在将深度图转换为顶视图时可去除深度图中的天花板部分,以避免天花板带来的影响。具体地,在顶视图中,可将高度不在预定高度范围内的物体所对应的像素的像素值设置为零。
此外,在空间中存在多个立体相机的情况下,图像转换单元810可在将立体相机在空间中拍摄的深度图转换为顶视图时,可根据该立体相机与空间中的其它立体相机之间的位置关系来执行图像转换。例如,在当在空间中存在多个立体相机时,可以多个立体相机中的一个立体相机的为参照物,并且通过例如偏移量和相机拍摄方向之间的夹角之类的相机外部参数来确定其它立体相机与作为参照物的立体相机之间的位置关系。例如,图像转换单元810可利用上述公式(1)来计算立体相机的相机外部参数。
当将立体相机在空间中拍摄的深度图转换为顶视图时,图像转换单元810可首先利用立体相机的相机外部参数,将该立体相机的所拍摄的、其坐标系为以该立体相机自身为原点的坐标系的深度图旋转和/或平移到以作为参照物的立体相机为原点的观测坐标系中,然后将旋转和/或平移后的深度图转换为顶视图。
粒子生成单元820可将通过图像转换单元810获得的顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子。关键特征可指示空间中的例如障碍物(例如隔断)之类的标志性物体。在根据本发明的示例中,关键特征可以是拐角、一条或多条线段或者其它易于识别的图案。此外,空间的平面图可以是预先给定的。根据本发明的示例,粒子生成单元820可对顶视图中显示的空间的一个关键特征和平面图中显示的空间的一个关键特征的进行配对,直到对于所有可能配对的组合都生成了相应的相机粒子。
相机粒子包括当与该相机粒子对应的一对关键特征匹配时立体相机在平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重。在根据本发明的实施例中,顶视图中显示的空间的关键特征和平面图中显示的空间的关键特征匹配可以指将顶视图中显示的空间的一个关键特征对应于平面图中显示的空间的一个关键特征,换言之,顶视图中显示的空间的一个关键特征和平面图中显示的空间的一个关键特征对应于空间中的同样的物体。一对关键特征之间的夹角为当该对关键特征匹配时,立体相机的拍摄方向与给定的平面图的坐标轴之间夹角。此外,粒子权重的初始值为该对关键特征的匹配值。粒子权重指示立体相机位于该相机粒子的位置坐标并且立体相机的拍摄方向与平面图的坐标轴之间夹角为该相机粒子的夹角的可能性。权重越大则该可能性越高,反之可能性越小。
优选地,根据本发明的一个示例可根据空间中的障碍物和可行走的区域将空间的平面图二值化,以便于能够更清楚地显示空间的障碍物和可行走的区域。粒子生成单元820可将顶视图中显示的空间的关键特征和经过二值化的平面图中显示的空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子。以上已结合图5a和图5b描述了生成相机粒子的具体示例,为了简洁,在此不再赘述。此外,为了方便后续运算,根据本发明的一个示例,粒子生成单元820还可对所有相机粒子的粒子权重进行归一化处理。
粒子更新单元830可根据利用立体相机获得的在空间中行进的对象的位置和/或运动轨迹以及平面图中显示的空间中障碍物的位置,更新每个相机粒子的粒子权重。例如,当对象在空间行进时,可通过立体相机对该空间进行拍摄以获得该空间的深度图,并且从所获得的深度图中提取对象的位置。然后如在关于图像转换单元810的描述中所提到的,将对象在深度图中的位置转换为该对象在顶视图中的位置。此外,可根据对象在一段时间内在空间中的位置获得该对象的运动轨迹。
图9是示出了根据本发明的一个实施例的粒子更新单元的示范性结构框图。如图9所示,粒子更新单元900包括位置计算模块910、重叠确定模块920和权重更新模块930。粒子更新单元900的各个模块可分别执行上述图6中的更新每个相机粒子的粒子权重的方法600的各个步骤/功能。因此,以下仅对粒子更新单元900的主要部件进行了描述,而省略了以上已经结合图6描述过的细节内容。
位置计算模块910可对于每个相机粒子,根据对象在顶视图中的位置以及该粒子的位置坐标和夹角计算对象在平面图中的位置。例如,位置计算模块910可通过上述公式(3)计算对象在平面图中的位置坐标。
重叠确定模块920可确定所计算的对象在平面图中的位置是否与空间中障碍物的位置重叠。因为对象不可能走进障碍物中,所以当所计算的对象在平面图中的位置与空间中障碍物的位置重叠时,说明使用相机粒子的位置坐标和夹角计算出的对象在平面图中的位置坐标有误,即,该相机粒子对应的一对关键特征匹配关系不正确。因此,当所计算的对象在平面图中的位置与空间中障碍物的位置重叠时,权重更新模块930可降低该相机粒子的粒子权重。例如,可将该相机粒子的粒子权重设置为一个很小的值(例如,0.01)。
图10是示出了根据本发明的另一实施例的粒子更新单元的示范性结构框图。如图10所示,粒子更新单元1000包括拐点获取模块1010、位置计算模块1020、拐点确定模块1030和权重更新模块1040。粒子更新单元1000的各个模块可分别执行上述图7中的更新每个相机粒子的粒子权重的方法700的各个步骤/功能。因此,以下仅对粒子更新单元1000的主要部件进行了描述,而省略了以上已经结合图7描述过的细节内容。
拐点获取模块1010可根据运动轨迹,在顶视图中获得对象在运动中的运动方向拐点。例如,拐点获取模块1010可通过上述公式(4)计算对象的运动方向,并且可通过上述公式(5)计算对象的运动方向拐点。
然后位置计算模块1020可对于每个相机粒子,根据运动方向拐点在顶视图中的位置以及该粒子的位置坐标和夹角计算运动方向拐点在平面图中的位置。例如,位置计算模块1020可通过上述公式(3)来计算运动方向拐点在平面图中的位置坐标。
拐点确定模块1030可确定运动方向拐点在平面图中的位置是否位于平面图中显示的空间中障碍物的附近。因为对象在接近障碍物时其行进方向很可能发生明显改变,所以当所计算的运动方向拐点在平面图中的位置位于平面图中显示的空间中障碍物的附近时,说明使用相机粒子的位置坐标和夹角计算出的对象在平面图中的位置坐标很可能是正确的,即,该相机粒子对应的一对关键特征匹配关系正确。因此,当运动方向拐点在平面图中的位置位于平面图中显示的空间中障碍物的附近时,权重更新模块1040可增加该相机粒子的粒子权重。例如,权重更新模块1040可将该相机粒子的粒子权重乘以1.1倍。
应注意,图9和图10中所示的粒子更新单元900和1000仅为粒子更新单元830的示例。此外,根据本发明的另一示例,粒子更新单元830可以包括能够执行能够实现粒子更新单元900和1000二者的功能的模块。
返回图8,相机标定单元840可根据更新后的相机粒子在平面图中标定该所述立体相机。图11是示出了根据本发明的一个实施例的相机标定单元的示范性结构框图。如图11所示,相机标定单元1100可包括采样模块1110、收敛确定模块1120和标定模块1130。具体地,采样模块1110可对更新了权重的相机粒子进行采样以获得采样粒子。收敛确定模块1120可确定采样粒子是否满足收敛条件。当满足收敛条件时,标定模块1130可根据收敛的采样粒子的位置坐标和夹角确定立体相机在平面图中的位置坐标和立体相机的拍摄方向,以在空间的平面图中标定立体相机。例如,标定模块1130可将满足收敛条件的采样粒子的位置坐标的平均值作为立体相机在平面图中的位置坐标,并且将满足收敛条件的采样粒子的夹角的平均值作为立体相机的光轴与给定的平面图的坐标轴之间的夹角,从而在空间的平面图中标定立体相机。另一方面当收敛确定模块1120确定不满足收敛条件时,可指示粒子更新单元830重复更新粒子权重的操作,并且采样模块1110可对更新了权重的相机粒子进行重采样,直到收敛确定模块1120确定采样粒子满足收敛条件为止。
在上述发明实施例提供的在空间的平面图中标定立体相机的装置中,可根据在空间中行进的对象的运动轨迹,自动地在空间的平面图中标定在该空间中设置的立体相机,而不需要手动地在平面图中对立体相机进行标定,从而避免了由于在手动标定过程中产生的误差所导致的在平面图中标定的相机位置的不准确性,并且提高了根据在平面图中标定的立体相机确定的目标对象在空间中位置的准确性。
此外,在根据本发明实施例提供的在空间的平面图中标定立体相机的装置中,根据顶视图中的关键特征和平面图中的关键特征的匹配确定用于标定立体相机的各个相机粒子在初始值,从而与对所有的相机粒子赋予的相同的初始值的情况相比,有效地减少了标定立体相机所需要的运算,并且缩短了标定立体相机所需要的时间。
此外,根据本发明的另一示例,本发明还可以通过一种在空间的平面图中标定立体相机的硬件系统来实施。图12是示出按照本发明实施例的在空间的平面图中标定立体相机的硬件系统1200的总体硬件框图。如图12所示,在空间的平面图中标定立体相机的硬件系统1200可以包括:输入设备1210,用于从外部输入有关图像或信息,例如摄像机拍摄的深度图、平面图、对象高度等,例如可以包括键盘、鼠标器、以及通信网络及其所连接的远程输入设备等等;处理设备1220,用于实施上述的按照本发明实施例的在空间的平面图中标定立体相机的方法,例如可以包括计算机的中央处理器或其它的具有处理能力的芯片等等,此外,处理设备1220还可以连接到诸如因特网的网络(未示出),根据处理过程的需要向远程传送处理后的结果等等;输出设备1230,用于向外部输出实施上述在空间的平面图中标定立体相机过程所得的结果,例如可以包括显示器、打印机、以及通信网络及其所连接的远程输出设备等等;以及存储设备1240,用于以易失或非易失的方式存储上述在空间的平面图中标定立体相机过程所涉及的诸如深度图、顶视图、平面图、对象高度、对象运动轨迹等数据,例如可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘、或半导体存储器等等的各种易失或非易失性存储器。
所属技术领域的技术人员知道,本发明可以实现为系统、装置、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“组件、“模块”、“装置”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上面参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种在空间的平面图中标定立体相机的方法,包括:
将所述立体相机在所述空间中拍摄的深度图转换为顶视图;
将所述顶视图中显示的所述空间的关键特征和所述平面图中显示的所述空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子,其中该相机粒子包括当该对关键特征匹配时所述立体相机在所述平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重,并且所述粒子权重的初始值为该对关键特征的匹配值;
根据利用所述立体相机获得的在所述空间中行进的对象的位置和/或运动轨迹以及所述平面图中显示的所述空间中障碍物的位置,更新每个相机粒子的粒子权重;以及
根据更新后的相机粒子在所述平面图中标定所述立体相机。
2.如权利要求1所述的方法,其中所述根据在所述空间中行进的对象的位置和/或运动轨迹以及所述平面图中显示的所述空间中障碍物的位置,更新每个相机粒子的粒子权重包括:
对于每个相机粒子,根据所述对象在所述顶视图中的位置以及该粒子的位置坐标和夹角计算所述对象在所述平面图中的位置;
确定所计算的所述对象在所述平面图中的位置是否与所述空间中障碍物的位置重叠;以及
当所计算的所述对象在所述平面图中的位置与所述空间中障碍物的位置重叠时,降低该相机粒子的粒子权重。
3.如权利要求1所述的方法,其中所述根据在所述空间中行进的对象的位置和/或运动轨迹以及所述平面图中显示的所述空间中障碍物的位置,更新每个相机粒子的粒子权重包括:
根据所述运动轨迹,获得所述对象在运动中的运动方向拐点;
对于每个相机粒子,根据所述运动方向拐点在所述顶视图中的位置以及该粒子的位置坐标和夹角计算所述运动方向拐点在所述平面图中的位置;
确定所述运动方向拐点在所述平面图中的位置是否位于所述平面图中显示的所述空间中障碍物的附近;以及
当所述运动方向拐点在所述平面图中的位置位于所述平面图中显示的所述空间中障碍物的附近时,增加该相机粒子的粒子权重。
4.如权利要求1至3中任意一项所述的方法,其中所述根据更新后的相机粒子在所述平面图中标定该立体相机包括:
对更新了权重的相机粒子进行采样,并获得采样粒子;
确定所述采样粒子是否满足收敛条件;以及
当满足所述收敛条件时,根据收敛的采样粒子的位置坐标和夹角确定所述立体相机在所述平面图中的位置坐标和所述立体相机的拍摄方向,以在空间的平面图中标定立体相机。
5.如权利要求1至3中任意一项所述的方法,其中所述将所述立体相机在所述空间中拍摄的深度图转换为顶视图包括:
根据所述立体相机与所述空间中的其它立体相机之间的位置关系,将所述立体相机在所述空间中拍摄的深度图转换为顶视图。
6.一种在空间的平面图中标定立体相机的装置,包括:
图像转换单元,配置来将所述立体相机在所述空间中拍摄的深度图转换为顶视图;
粒子生成单元,配置来将所述顶视图中显示的所述空间的关键特征和所述平面图中显示的所述空间的关键特征进行匹配,以对于参与匹配的每对关键特征生成相机粒子,其中该相机粒子包括当该对关键特征匹配时所述立体相机在所述平面图中的位置坐标、该对关键特征之间的夹角、以及粒子权重,并且所述粒子权重的初始值为该对关键特征的匹配值;
粒子更新单元,配置来根据利用所述立体相机获得的在所述空间中行进的对象的位置和/或运动轨迹以及所述平面图中显示的所述空间中障碍物的位置,更新每个相机粒子的粒子权重;以及
相机标定单元,配置来根据更新后的相机粒子在所述平面图中标定所述立体相机。
7.如权利要求6所述的装置,其中所述粒子更新单元包括:
位置计算模块,配置来对于每个相机粒子,根据所述对象在所述顶视图中的位置以及该粒子的位置坐标和夹角计算所述对象在所述平面图中的位置;
重叠确定模块,配置来确定所计算的所述对象在所述平面图中的位置是否与所述空间中障碍物的位置重叠;以及
权重更新模块,配置来当所计算的所述对象在所述平面图中的位置与所述空间中障碍物的位置重叠时,降低该相机粒子的粒子权重。
8.如权利要求6所述的装置,其中所述粒子更新单元包括:
拐点获取模块,配置来根据所述运动轨迹,获得所述对象在运动中的运动方向拐点;
位置计算模块,配置来对于每个相机粒子,根据所述运动方向拐点在所述顶视图中的位置以及该粒子的位置坐标和夹角计算所述运动方向拐点在所述平面图中的位置;
拐点确定模块,配置来确定所述运动方向拐点在所述平面图中的位置是否位于所述平面图中显示的所述空间中障碍物的附近;以及
权重更新模块,配置来当所述运动方向拐点在所述平面图中的位置位于所述平面图中显示的所述空间中障碍物的附近时,增加该相机粒子的粒子权重。
9.如权利要求6至8中任意一项所述的装置,其中所述相机标定单元包括:
采样模块,配置来对更新了权重的相机粒子进行采样,并获得采样粒子;
收敛确定模块,配置来确定所述采样粒子是否满足收敛条件;以及
标定模块,配置来当满足所述收敛条件时,根据收敛的采样粒子的位置坐标和夹角确定所述立体相机在所述平面图中的位置坐标和所述立体相机的拍摄方向,以在空间的平面图中标定立体相机。
10.如权利要求6至8中任意一项所述的装置,其中
所述图像转换单元根据所述立体相机与所述空间中的其它立体相机之间的位置关系,将所述立体相机在所述空间中拍摄的深度图转换为顶视图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410157668.7A CN105096290B (zh) | 2014-04-18 | 2014-04-18 | 在空间的平面图中标定至少一个立体相机的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410157668.7A CN105096290B (zh) | 2014-04-18 | 2014-04-18 | 在空间的平面图中标定至少一个立体相机的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105096290A CN105096290A (zh) | 2015-11-25 |
CN105096290B true CN105096290B (zh) | 2018-01-16 |
Family
ID=54576638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410157668.7A Expired - Fee Related CN105096290B (zh) | 2014-04-18 | 2014-04-18 | 在空间的平面图中标定至少一个立体相机的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105096290B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110314377B (zh) * | 2018-03-28 | 2022-10-28 | 苏宁易购集团股份有限公司 | 三维空间中物体移动路径随机生成方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101629806A (zh) * | 2009-06-22 | 2010-01-20 | 哈尔滨工程大学 | 结合激光发射器的非线性ccd三维定位装置及定位方法 |
CN101692283A (zh) * | 2009-10-15 | 2010-04-07 | 上海大学 | 无人旋翼机仿生着陆系统的摄像机外参数在线自标定方法 |
KR20120011653A (ko) * | 2010-07-29 | 2012-02-08 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
CN102650514A (zh) * | 2012-05-03 | 2012-08-29 | 秦毅 | 一种立体视觉系统及其实时监控三维安全警示区域的应用 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI394097B (zh) * | 2009-10-12 | 2013-04-21 | Nat Univ Tsing Hua | 移動物體的偵測方法以及偵測系統 |
-
2014
- 2014-04-18 CN CN201410157668.7A patent/CN105096290B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101629806A (zh) * | 2009-06-22 | 2010-01-20 | 哈尔滨工程大学 | 结合激光发射器的非线性ccd三维定位装置及定位方法 |
CN101692283A (zh) * | 2009-10-15 | 2010-04-07 | 上海大学 | 无人旋翼机仿生着陆系统的摄像机外参数在线自标定方法 |
KR20120011653A (ko) * | 2010-07-29 | 2012-02-08 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
CN102650514A (zh) * | 2012-05-03 | 2012-08-29 | 秦毅 | 一种立体视觉系统及其实时监控三维安全警示区域的应用 |
Also Published As
Publication number | Publication date |
---|---|
CN105096290A (zh) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106803271B (zh) | 一种视觉导航无人机的摄像机标定方法及装置 | |
US9386297B2 (en) | Image generating apparatus generating reconstructed image, method, and computer-readable recording medium | |
EP4307233A1 (en) | Data processing method and apparatus, and electronic device and computer-readable storage medium | |
CN110704562B (zh) | 地图融合方法及装置、设备、存储介质 | |
CN111208783B (zh) | 一种动作模仿方法、装置、终端及计算机存储介质 | |
CN110232706B (zh) | 多人跟拍方法、装置、设备及存储介质 | |
CN110617814A (zh) | 单目视觉和惯性传感器融合的远距离测距系统及方法 | |
CN110969665B (zh) | 一种外参标定方法、装置、系统及机器人 | |
CN107945103A (zh) | 无人机图像的隐私遮挡方法、装置及无人机 | |
CN109523615B (zh) | 用于虚拟动画人物动作的数据处理方法及装置 | |
Sellers et al. | Markerless 3D motion capture for animal locomotion studies | |
CN113587934A (zh) | 一种机器人、室内定位方法、装置和可读存储介质 | |
AU2021297896A1 (en) | Systems and methods for fine adjustment of roof models | |
CN116486038A (zh) | 一种三维构建网络训练方法、三维模型生成方法以及装置 | |
US8509522B2 (en) | Camera translation using rotation from device | |
CN114092646A (zh) | 模型生成方法、装置、计算机设备及存储介质 | |
CN113610702B (zh) | 一种建图方法、装置、电子设备及存储介质 | |
KR20220100813A (ko) | 자율주행 차량 정합 방법, 장치, 전자 기기 및 차량 | |
CN115797451A (zh) | 一种穴位识别方法、装置、设备及可读存储介质 | |
CN110455292A (zh) | 飞行轨迹确定方法、设备、飞行轨迹推演系统及存储介质 | |
CN105096290B (zh) | 在空间的平面图中标定至少一个立体相机的方法和装置 | |
Kim et al. | Implementation of an omnidirectional human motion capture system using multiple kinect sensors | |
CN113160270A (zh) | 视觉地图生成方法、装置、终端及存储介质 | |
CN117352126A (zh) | 肌肉受力可视化方法、装置、计算机设备以及存储介质 | |
CN116429112A (zh) | 多机器人协同定位方法和装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20180116 |
|
CF01 | Termination of patent right due to non-payment of annual fee |