具体实施方式
下面对本申请中所涉及的部分术语进行解释,以方便读者理解:
本申请中的摄像机可以为普通单目摄像机,也可以为双目摄像机。其中,双目摄像机是由两个具有相同参数的相机按一定间距放置结合而成的相机,一般的,双目摄像机中的左相机与右相机通常设置在同一水平线上,以达到使得左相机与右相机光轴平行,使得双目摄像机能够用来模拟人眼造成角度差,以此来达到立体成像或者探测景深的效果。
“视差值”,是指双目摄像机中左相机与右相机对同一目标进行拍摄时,得到的两幅图像中针对同一像素点的两个横坐标的差值,即为该像素点的视差值,对应的,这两幅图像中所有像素点的视差值形成视差图。
参照图1a、图1b所示的视差与深度间对应关系示意图可知,若OL为左相机所在位置,OR为有相机所在位置,f用于表示左相机与有相机镜头的焦距,B表示基线距离,等于左相机与右相机的投影中心连线的距离,具体的:
假设左右相机在同一时刻观看空间物体的同一特征点P(xc,yc,zc),zc通常可以认为是该特征点的深度,用于表示该特征点与左右相机所处平面间的距离,该特征点P分别在“左眼”和“右眼”上获取了特征点P的图像,即特征点P在左右相机上的投影点为PL(xL,yL)和PR(xR,yR),若左右相机的图像在同一平面上,则特征点P的Y坐标与图像坐标PL和PR的Y坐标相同,则由三角几何关系得到:
由于视差Disparity=xL-xR。由此可计算出特征点P在相机坐标系下的三维坐标为为:
因此,基于上述公式可以得到,由于对于双目摄像机来说,其基线距离B和焦距F是确定的,即视差值和深度呈反比关系,可以通过视差值来确定该像素点的深度值。
需要说明的是,由于本申请中的双目摄像机是模拟人眼来进行采集图像的,因此,本申请中的双目摄像机中的左相机与右相机设置在同一水平线上,光轴平行,且存在一定间距,因此,本申请所提及的视差主要指水平视差。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。如果不加说明,本文中的“多个”是指两个或两个以上。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
需要说明的是,本申请实施例中,除非另有说明,“多个”的含义是指两个或两个以上。
需要说明的是,本申请实施例中,“的(英文:of)”,“相应的(英文:corresponding,relevant)”和“对应的(英文:corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
下面将结合本申请实施例的说明书附图,对本申请实施例提供的技术方案进行说明。显然,所描述的是本申请的一部分实施例,而不是全部的实施例。需要说明的是,下文所提供的任意多个技术方案中的部分或全部技术特征在不冲突的情况下,可以结合使用,形成新的技术方案。
本申请实施例提供的虚警障碍物检测方法的执行主体可以为虚警障碍物检测装置或者可以用于执行上述虚警障碍物检测方法的电子设备。其中,虚警障碍物检测装置可以为上述电子设备中的中央处理器(Central Processing Unit,CPU)、CPU与存储器等硬件的组合、或者可以为上述终端设备中的其他控制单元或者模块。
示例性的,上述电子设备可以为采用本申请实施例提供的方法对双目摄像机采集的左右视图进行分析的个人计算机((personal computer,PC)、上网本、个人数字助理(英文:Personal Digital Assistant,简称:PDA)、服务器等,或者上述电子设备可以为安装有可以采用本申请实施例提供的方法对双目摄像机采集的左右视图进行处理的软件客户端或软件系统或软件应用的PC、服务器等,具体的硬件实现环境可以通用计算机形式,或者是ASIC的方式,也可以是FPGA,或者是一些可编程的扩展平台例如Tensilica的Xtensa平台等等。例如,上述的电子设备可集成在无人驾驶机、盲人导航仪、无人驾驶车辆、智能车辆、智能手机等需要检测障碍物的设备或仪器中。
基于上述内容,本申请的实施例提供一种虚警障碍物检测方法,如图2所示,该方法包括如下步骤:
S101、获取摄像机t时刻采集的第一视图和t-1时刻采集的第二视图。
其中,t时刻为当前时刻,t-1时刻为当前时刻的前一时刻。
本申请中的第一视图和第二视图为摄像机对预定场景在t时刻和t-1时刻采集的图像。示例性的,本申请中的第一视图与第二视图可以为2D图像,即可以为普通摄像机在t时刻以及t-1时刻采集的视图,也可以为双目摄像机在t时刻以及t-1时刻采集的左视图或右视图;或者,本申请中的第一视图与第二视图也可以为3D图像,即可以为双目摄像机在t时刻采集的左视图或右视图对应的视差图以及双目摄像机在t-1时刻采集的左视图或右视图对应的视差图。这里不做限定。
S102、确定同一待检测障碍物在第一视图以及第二视图中的位置信息。
S103、确定从t-1时刻到t时刻的摄像机的运动信息。
本申请中摄像机的运动信息可以为该摄像机从t-1时刻到t时刻的运动状态信息,也可以第一视图与第二视图中物体的运动信息。示例性的,上述的运动信息包括相邻帧或间隔预定间隔的两帧图像间的仿射矩阵与位移矩阵。
S104、判断待检测障碍物在两幅视图中的位置信息与摄像机的运动信息是否匹配,在不匹配时,判定待检测障碍为虚警障碍物。
可选的,本申请在执行步骤S104时,即在判断该待检测障碍物在摄像机采集的两幅视图中的位置与摄像机的运动信息是否匹配的过程中,可以通过两种实现方式来实现:
第一种实现方式:
在实施例可以直接将待检测障碍物的运动信息与摄像机的运动信息直接进行匹配,确定两者是否满足相同的运动规则,来判定待检测障碍物在两幅视图中的位置信息与摄像机的运动信息是否匹配。
示例性的,如图3所示,步骤S104具体包括如下步骤:
S104a1、根据待检测障碍物在两幅视图中的位置信息确定待检测障碍物的运动信息。
S104a2、判定待检测障碍物的运动信息与摄像机的运动信息是否一致。
S104a3、在不一致时,判定待检测障碍物在两幅视图中的位置信息与摄像机的运动信息不匹配。
第二种实现方式:
在本实现方式中,可以基于摄像机的运动信息来估计待检测障碍物在t时刻的估计位置信息,从而判定将该估计位置信息与该待检测障碍物在t时刻的实际位置信息是否一致,来判定待检测障碍物在两幅视图中的位置信息与摄像机的运动信息是否匹配。
示例性的,如图4所示,步骤S104具体包括如下步骤:
S104b1、根据摄像机的运动信息和待检测障碍物在第二视图中的位置信息,估计待检测障碍物在第一视图中的估计位置信息。
S104b2、判断待检测障碍物在第一视图中的估计位置信息和待检测障碍物在第一视图中的位置信息是否一致。
S104b3、在不一致时,判定待检测障碍物在两幅视图中的位置信息与摄像机的运动信息不匹配。
示例性的,若待检测障碍物在第一视图中的估计位置与障碍物在第一视图中的位置相差较大,则可以确定该待检测障碍物所在区域检测错误,该障碍物为虚警障碍物,并从该第一视图中物体的位置信息列表中将该待检测障碍物的位置信息剔除。
例如,将t-1时刻的第二视图上的某轮廓区域作为待检测障碍物区域,取该待检测障碍物的轮廓区域的坐标P1(x,y),其中(x,y)表示该轮廓左上角的坐标值;然后,将P1(x,y)依据摄像机的运动信息将待检测障碍物投影到t时刻图像上相应位置,记为P1’(x,y);接着,取t时刻的第一视图上的该轮廓区域的坐标P2(x,y);最后,将两坐标P1’(x,y)与P2(x,y)做差,得到两者的绝对差值T。
T=|P1'(x,y)-P2(x,y)| (公式七)
此外,我们还设定了一个判定阈值Tre,当计算所得的阈值T>Tre时,则判定该待检测障碍物区域为虚警区域,在轮廓列表中将其删除。反之,则判定该第二视图上为障碍物区域。这样大大降低了障碍物检测中的虚警问题。
至此,t时刻图像对应的障碍物信息全部进行了虚警剔除操作,去除了虚假障碍物信息。
基于上述内容可知,本方案还可通过对相邻帧或间隔预定间隔的两帧视图图像进行运动估计,从而可以基于该运动信息对障碍物检测中出现的虚警障碍物进行剔除,提高障碍物检测精度。
可选的,若摄像机为双目摄像机,则步骤S101中第一视图为双目摄像机在t时刻采集的左视图和右视图的视差图,第二视图为双目摄像机在t-1时刻采集的左视图和右视图的视差图。例如,如图5a为双目摄像机的左相机在时间t对场景A采集的视图a,图5b为双目摄像机的右相机在时间t对场景A采集的视图b,将视图a与视图b进行立体匹配,得到其对应的视差图c,具体可参照图6。
基于此,步骤S103具体包括如下步骤:
S103a、根据第一视图中待检测障碍物之外的其他物体的位置信息以及第二视图中其他物体的位置信息,确定摄像机的运动信息。
示例性的,在确定摄像机的运动信息时,可以通过以下两种示例所示来获取:
第一种实现方式:
本实施例主要通过常见的2D图像运动目标跟踪方法(如光流法,TLD等),通过跟踪摄像机拍摄的物体的运动信息,来估计出摄像机的运动信息。需要说明的是,常见的2D图像运动目标跟踪方法通常是基于物体在2D图像上的位置信息来估计物体的运动信息的,而物体在2D图像上的位置信息,通常需要根据其在对应的3D图像(如、视差图)上的位置信息来确定。
示例性的,步骤S103a具体包括如下步骤:
A1、根据第一视图中待检测障碍物之外的其他物体的位置信息以及第二视图中该其他物体的位置信息,确定该其他物体分别在第三视图中的位置信息以及在第四视图中的位置信息。
其中,上述的第三视图为第一视图对应的左视图,第四视图为第二视图对应的左视图;或者,上述的第三视图为第一视图对应的右视图,第四视图为第二视图对应的右视图。
A2、根据该其他物体分别在第三视图中的位置信息以及在第四视图中的位置信息,对第三视图与所述第四视图中该其他物体进行运动估计,得到摄像机的运动信息。
一般的,2D图像运动估计大致可分为特征点检测与特征点跟踪两部分。目前,比较成功的特征点提取算法包括:Harris角点检测算法、SUSAN算法与SIFT算法等。特征点跟踪匹配算法包括:KLT(Kannade-Lucas-Tomasi)算法。需要说明的是,由于上述的特征点提取算法以及特征点跟踪匹配算法为比较成熟的特征点提取算法,可以参见现有的特征点提取算法的描述,这里不再赘述。
在提取出一帧图像中的特征点之后,必须在后续图像中进行跟踪匹配,获取潜在的对应点。
若以KLT算法为例;
假设连续两帧图像为I(x,y)和J(x,y)中的位置满足:
j(Ax+d)=I(x)(公式八)
假设
表示2×2的放射变换矩阵,d=[d
1d
2]为平移矩阵。另外,假设I(x,y)的特征窗口为A(x),J(x,y)的特征窗口为B(x),则有:
α=∫∫w[B(Ax+d)-A(x)]2w(x) (公式九)
当上式子取最小值时,通过求导方式,可以解出仿射矩阵A和位移矩阵d。
第二种实现方式:
本实施例中摄像机的运动信息可以基于vSLAM或者IMU的方法,直接计算出摄像头t时刻和t-1时刻的运动状态信息。
在现有技术中,由于噪声、误差等影响,导致障碍物检测的过程中所检测出的障碍物中存在虚假因子,即虚假障碍物,为了剔除虚假障碍物,本申请所提供的方案,通过获取摄像机t时刻采集的第一视图和t-1时刻采集的第二视图,然后,确定同一待检测障碍物在第一视图以及第二视图中的位置信息,并确定从t-1时刻到t时刻的摄像机的运动信息,接着,通过判断待检测障碍物在两幅视图中的位置信息与摄像机的运动信息是否匹配,来判定该待检测障碍物是否为虚警障碍物,并在不匹配时,判定该待检测障碍为虚警障碍物,从而将该虚假障碍物进行剔除,保证了障碍物检测的准确性。
本申请实施例提供一种基于障碍物检测方法,该方法主要通过来对视差图进行分割的方式,来计算出不同深度阈值的障碍物的位置信息。需要说明的是,上述实施例中的待检测障碍物的在第一视图以及第二视图中的位置信息可以基于本方案所提供的方法来实现。
本方案所提供的虚警障碍物检测方法的基本原理为:利用双目摄像机分别采集同一场景的左右视图,然后,将采集到的左右视图进行立体匹配得到该场景下的视差图,并对该视差图进行滤波等图像预处理操作,除去噪声获得最终视差图,接着,将获取的视差图依据该视差图的视差值范围的不同子视差值范围分割出一幅或几幅子视差图,然后,对上述获取的子视差图分别进行轮廓检测,得到对应子视差图中障碍物轮廓的轮廓信息,最后,基于得到的轮廓信息、相机的内外参数以及每幅子视差图对应的深度信息计算场景中障碍物的大小、距离与位置等信息。
下述的目标视差图为第一视差图或第二视差图中的任一视差图。
参照图7所示,该方法包括如下步骤:
S201、基于目标视差图的视差值范围划分成的子视差值范围,将目标视差图中不在子视差值范围内的视差值设置为第一视差阈值,以生成所述目标视差图的子视差图。
本申请实施例中的子视差图中处于对应子视差值范围外的视差值为第一视差阈值,即该子视差图中主要呈现出处于该子视差值范围的像素点的视差值。示例性的,上述的预定视差阈值可以设定为0或255,当然,0或255仅为一种示例,还可以将该子视差值范围外的任意视差值设置为视差阈值,这里不做限定。
需要说明的是,本申请中视差图中像素点的视差值即该像素点的像素值。
在一种示例中,由于视差值与深度呈反比,因此,为了将立体场景按照距离分割成不同距离,可以通过将视差值的视差值范围按照一定预定间隔阈值,将整个视差值范围划分为多个子视差值范围,进一步能够获取到不同子视差值范围对应的视差图。
基于此,在步骤S201之前对视差值范围的划分过程具体包括如下步骤:
S201a、从第一视差图的视差值范围中获取与预定深度值范围对应的目标视差值范围;其中,第一视差图中的像素点的视差值与像素点的深度值成反比。
S201b、按照预定间隔阈值将目标视差值范围划分为一个或多个子视差值范围。
例如,假设双目摄像机可探测的距离范围为[0.5m,10.5m],其对应的视差为[255,0]。障碍物检测一般是距离较近的物体是关注重点,例如,可设定[0.5m,4.5m]为检测的范围,即预定深度值范围为[0.5m,4.5m],对应的目标视差值范围为[255,151]。首先,将视差图中值小于161的全部设为0,得到了新的视差图D。接着,将检测范围内的场景依据距离均匀分割,以1m为一个间隔,对应的子深度值范围分别为[0.5m,1.5m]、[1.5m,2.5m]、[2.5m,3.5m]与[3.5m,4.5m],对应的视差值的预定间隔阈值为26,对应的4个子视差值范围分别[255,229]、[229,203]、[203,177]与[177,151]。
基于步骤SA1和步骤SA2,若上述步骤SA2中的目标视差值范围是由一个或多个范围不交叠的子视差值范围组成时,即若步骤A2是将整个目标视差值范围分割为多个范围不交叠的子视差值范围时,可以按照步骤102来获取第一视差图的每个子视差值范围对应的子视差图。
例如,假设某一视差值的目标视差值范围为[255,151],对应深度值范围为[0.5m,4.5m],以1m为一个间隔,分割为[0.5m,1.5m]、[1.5m,2.5m]、[2.5m,3.5m]与[3.5m,4.5m],对应的子视差图分别为[255,229]、[229,203]、[203,177]与[177,151]这4个子视差值范围。分别获取每个子视差值范围对应的子视差图。例如,可以先对视差图D中值小于229全部设置为0,得到了第一幅子视差图D1;然后,将视差图D中值小于203的设置为0得到视差图D1’,将其与D1做差,获取第二子视差图图D2;再将视差图D中值小于177的设置为0,得到视差图D2’,将其与D1’做差,得到第三子视差图D3;最后,将视差图D与视差图D2’做差,得到第四子视差图D4。例如,参照图6所示的视差图,其对应的4个深度层次的子视差图分别为图8a所示的第一子视差图、图8b所示的第二子视差图、图8c所示的第三子视差图、图8d所示的第四子视差图。
S202、对子视差图进行轮廓检测,获取子视差图中障碍物的轮廓信息。
在一种示例中,若按照上述实例,得到同一场景下的视差图的不同深度层次上的子视差图(如,上述的D1、D2、D3、D4)后,可以对每幅子视差图进行轮廓检测,得到每幅子视差图中轮廓信息,即障碍物的轮廓信息。示例性的,可以定义每幅子视差图中的每个检测到的轮廓返回的信息格式为:{“Contour”:x,y,width,height},其中x,y表示轮廓左上角(这里仅是一种示例,还可以设定获取轮廓右上角、右下角、左下角等位置)的像素位置坐标,分别对应于所在的列与行;width和height分别表示轮廓的宽度与高度,其值的单位均为像素。
S203、根据子视差图中障碍物的轮廓信息及子视差图中每个像素点的视差值,确定障碍物的位置。
例如,参照图9,若以图8a、8b、8c、8d所示的子视差图为例,分别对这4幅图进行轮廓检测,从而得到每种深度对应的障碍物信息,具体障碍物位置如9所示。
在一种示例中,在具体计算某一子视差图中障碍物的位置信息时,可以基于步骤S103获取的各个不同轮廓的坐标与尺寸信息,双目系统的参数以及上面获取的稠密视差图D,场景中障碍物的一些位置、尺寸与距离信息很容易计算获得。
例如,以某个轮廓C为例,其左上角坐标为(x
0,y
0)
其宽度为w0,高度为h0。进而可以获取轮廓右上角与轮廓中心点的图像坐标为(x
0+w
0,y
0)和
首先根据公式六:
依据图像的坐标从视差图中读出各点的视差值,进而可以获取轮廓的左上角与右上角以及中心位置对应的场景与双目摄像机之间的距离Z0,Z1,Z'。再根据公式七:[u,v,1]
T=P[X,Y,Z,1]
T(物点与像点之间的投影关系),可以分别计算出轮廓左上角与右上角在世界坐标系中的坐标(X
0,Y
0,Z
0)与(X
1,Y
1,Z
1),即轮廓左上角与右上角对应的实际物点的坐标。至此,该轮廓内的物体信息全部获取,定义其为{“Obstacle”:X
L,X
R,Width,Height,Distance},其中,X
L表示障碍物最左侧距离相机的横向距离,X
L=X
0;X
R表示障碍物最右侧距离相机的横向距离,X
R=X
1;Width表示障碍物的宽度,Width=X1-X0;Height表示障碍物的高度,Height=Y
0=Y
1;Distance表示障碍物距离左右相机的轴向距离,Distance=Z'。进而获取避障所需要的全部障碍物信息。
由于视差图中像素点的视差值与该像素点的深度呈反比,因此,根据双目摄像机采集的左右视图对应的视差图中每个像素点的视差值,便可获取双目摄像机采集的同一场景下的左右视图对应的视差图的不同深度范围的子视差图,通过对不同深度层次的子视差图进行轮廓检测,基于从而能够根据不同深度层次上的轮廓的轮廓信息确定出不同深度层次的障碍物的位置,从而精确地定位出障碍物与双目摄像机间的相对距离。本方案通过对视差图进行简单分割,从而对不同深度的子视差图进行轮廓检测,这样不仅缩短了检测时间,也提高了检测精度。
需要说明的是,在控制双目摄像机采集左视图与右视图之前,通常需要预先对双目摄像机进行一定的调整(例如,离线标定、图像校正等相机调整操作),以保证左相机与右相机光轴平行。然后,测量左右相机光轴之间的基线长度,并记录双目摄像机的焦距,并保证该基线长度和焦距不会发生改变,从而保证双目摄像机采集图像的同步性,避免不必要的误差。
1)相机标定
本申请中的相机标定通常指相机离线标定。通常情况下,由于双目摄像机的光轴位于相机内部,在相机装配时很难保证光轴严格平行,一般情况下存在一定的偏差,因此,通常可以对搭建成功的双目摄像机进行离线标定,来获取相机的内参(焦距、基线长度、图像中心,畸变参数等)和外参(旋转矩阵R与平移矩阵T)。
在一种示例中,可采用张正友棋盘格标定方法来对双目摄像机的镜头进行离线标定。
在对相机进行离线标定时,可以先对左相机进行标定,获取左相机的内外参数;其次,对右相机进行标定,获取右相机的内外参数;最后,对双目摄像机进行标定,获取左右相机之间的旋转平移关系。
假设世界坐标系中的任一点W=[X,Y,Z]T,该点在图像平面上对应点为m=[u,v]T,物点与像点之间的投影关系为:
[u,v,1]T=P[X,Y,Z,1]T (公式十);
其中,P为3×4的投影矩阵,其可以由旋转与平移矩阵来表示:
P=A[Rt] (公式十一);
其中,R为3×3旋转矩阵,t是平移矢量,这两个矩阵表示双目视觉的外部参数,一个表示位置,一个表示方向,这样就能确定图像上每个像素点在世界坐标系中的位置,其中A矩阵表示相机内部参数矩阵,可以表示为如下:
上式中(uo,uo)为图像中心点的坐标;fu和fv分别表示水平、垂直像素单位表示的焦距长度,β表示倾斜因子。
上述离线标定过程中得到的一些参数在图像校正与障碍物计算过程均有应用。
2)图像校正
由于镜头畸变会造成镜头采集的图像发生畸变,因此,通常可以在双目摄像机采集图像之前对双目摄像机进行畸变矫正和极线校正。假设没有畸变的基准图像为f(x,y),具有较大几何畸变的图像为g(x’,y’),两幅图像坐标系之间的集合畸变可以表示为:
将上述式子用二元多项式来表示:
其中,n为多项式的系数,i和j表示像素点在图像中的具体位置,aij和bij为各项系数。通过上面的公式得到了畸变校正的图像。
对于图像的极线校正操作,根据相机离线校正中获取的左右相机的旋转与平移矩阵,假设左相机旋转平移矩阵为R1和t1,右相机的旋转平移矩阵为R2和t2,其旋转与平移矩阵均可在离线校正是获取。基于左右相机的旋转与平移矩阵,利用Bouguet的极线校正方法,使得左右相机图像的对应极线平行。大大降低了立体匹配的时间复杂度,简化了视差计算过程。
上述主要从虚警障碍物检测装置、以及该装置所应用的终端角度对本申请实施例提供的方案进行了介绍。可以理解的是,该装置为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对虚警障碍物检测装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
下面说明本申请实施例提供的与上文所提供的方法实施例相对应的装置实施例。需要说明的是,下述装置实施例中相关内容的解释,均可以参考上述方法实施例。
在采用对应各个功能划分各个功能模块的情况下,图10示出了上述实施例中所涉及的虚警障碍物检测装置的一种可能的结构示意图,该装置4包括:获取模块31、确定模块32、判断模块33。获取模块31用于支持虚警障碍物检测装置执行图2中的步骤S101;确定模块32用于支持虚警障碍物检测装置执行图2中的步骤S102、S103;判断模块33用于支持该装置执行图2中的步骤S104。进一步的,判断模块33具体用于支持该装置执行图3中的步骤SA1、S104a1~S104a3。进一步的,判断模块33具体用于支持该装置执行图4中的步骤S104b1~S104b3。进一步的,确定模块31还用于支持该装置执行图7中的步骤S201~S203。进一步的,确定模块31还用于支持该装置执行上文中的步骤S103a。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在硬件实现上,上述的获取模块31、确定模块32、判断模块33可以是处理器。上述虚警障碍物检测装置所执行的动作所对应的程序均可以以软件形式存储于该装置的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图11示出了本申请的实施例中所涉及的一种电子设备的可能的结构示意图。该装置4包括:处理器41、存储器42、系统总线43和通信接口44。存储器42用于存储计算机执行代码,处理器41与存储器42通过系统总线43连接,当装置运行时,处理器41用于执行存储器42存储的计算机执行代码,以执行本申请实施例提供的任意一种虚警障碍物检测方法,如,处理器41用于支持该装置执行图3中的全部步骤,和/或用于本文所描述的技术的其它过程,具体的虚警障碍物检测方法可参考下文及附图中的相关描述,此处不再赘述。
本申请实施例还提供一种存储介质,该存储介质可以包括存储器42。
本申请实施例还提供一种计算机程序,该计算机程序可直接加载到存储器42中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述的虚警障碍物检测方法。
处理器41可以是一个处理器,也可以是多个处理元件的统称。例如,处理器41可以为中央处理器(central processing unit,CPU)。处理器41也可以为其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specificintegrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。处理器41还可以为专用处理器,该专用处理器可以包括基带处理芯片、射频处理芯片等中的至少一个。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。进一步地,该专用处理器还可以包括具有该装置其他专用处理功能的芯片。
结合本申请公开内容所描述的方法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(英文:random access memory,缩写:RAM)、闪存、只读存储器(英文:read only memory,缩写:ROM)、可擦除可编程只读存储器(英文:erasableprogrammable ROM,缩写:EPROM)、电可擦可编程只读存储器(英文:electrically EPROM,缩写:EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于终端设备中。当然,处理器和存储介质也可以作为分立组件存在于终端设备中。
系统总线43可以包括数据总线、电源总线、控制总线和信号状态总线等。本实施例中为了清楚说明,在图11中将各种总线都示意为系统总线43。
通信接口44具体可以是该装置上的收发器。该收发器可以为无线收发器。例如,无线收发器可以是该装置的天线等。处理器41通过通信接口44与其他设备,例如,若该装置为该终端设备中的一个模块或组件时,该装置用于与该终端设备中的其他模块之间进行数据交互。
本申请实施例还提供一种机器人,该机器人包括图10、11对应的虚警障碍物检测装置。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
最后应说明的是:以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。