发明内容
本公开的目的是提供一种检测地面障碍物的方法、装置、可读存储介质及电子设备,以实现对地面障碍物进行准确地检测。
为了实现上述目的,本公开提供一种检测地面障碍物的方法,包括:
通过图像获取装置获取目标范围内的目标图像;
获取所述目标图像对应的深度图、RGB图以及所述图像获取装置对应的姿态角;
根据所述深度图和所述姿态角,确定第一地面区域;
根据所述第一地面区域和所述RGB图,确定第二地面区域;
根据所述第二地面区域在所述RGB图上检测是否存在障碍物。
可选地,所述根据所述第一地面区域和所述RGB图,确定第二地面区域包括:
以所述第一地面区域为基础,对所述RGB图进行地面分割,得到所述第二地面区域。
可选地,所述以所述第一地面区域为基础,对所述RGB图进行地面分割,得到所述第二地面区域包括:
将所述RGB图转换为HSX图,并将所述HSX图分割成多个尺寸相同的子图像,X为明度V或强度I;
根据所述第一地面区域的子图像得到第二地面区域。
可选地,所述根据所述第一地面区域的子图像得到第二地面区域包括:
分别计算每个所述子图像的图像参数的均值和方差;
将所述第一地面区域的子图像对应的区域中的任一区域作为种子区域,循环执行区域生长步骤,直至满足循环终止条件;所述区域生长步骤包括:确定所述种子区域的相邻区域,并获取所述相邻区域对应的目标子图像;根据所述种子区域对应的子图像的图像参数的均值和方差,以及所述目标子图像的图像参数的均值和方差,确定满足第一预设条件的目标子图像,并将所述目标子图像对应的区域作为目标区域,并将所述目标区域作为更新的种子区域;所述循环终止条件包括所有满足第一预设条件的目标子图像对应的区域,均被作为所述目标区域;
将所述目标区域对应的子图像进行融合,得到所述第二地面区域。
可选地,所述图像参数包括色调、饱和度和X,所述第一预设条件包括:
所述色调的均值和方差、饱和度的均值和方差以及X的均值和方差,均满足以下公式:
其中,EHSX[i]、VarHSX[i]用于分别表征种子区域i对应的子图像的图像参数的均值、方差,EHSX[j]、VarHSX[j]用于分别表征与所述种子区域i对应的子图像的相邻的子图像j对应的图像参数的均值、方差,δE表征预设的均值阈值,δVar表征预设的方差阈值。
可选地,所述根据所述第二地面区域在所述RGB图上检测是否存在障碍物包括:
提取所述RGB图中的封闭轮廓;
根据所述封闭轮廓和所述第二地面区域,检测是否存在所述障碍物。
可选地,所述根据所述封闭轮廓和所述第二地面区域,检测是否存在所述障碍物包括:
将所述封闭轮廓在所述第二地面区域内对应的子区域,作为待定障碍物区域;
根据所述待定障碍物区域和所述深度图对应的世界坐标系下的点云,确定所述待定障碍物区域的区域面积和第一平均高度;
根据所述第二地面区域和所述点云,确定所述第二地面区域的第二平均高度;
根据所述区域面积、所述第一平均高度以及所述第二平均高度,判断所述待定障碍物区域是否存在障碍物。
可选地,所述根据所述区域面积、所述第一平均高度以及所述第二平均高度,判断所述待定障碍物区域是否存在障碍物包括:
若所述待定障碍物区域满足第二预设条件,则确定所述待定障碍物区域存在障碍物;所述第二预设条件包括:
δminArea<AreaVobso[k]<δmaxArea
δminH<|HVobso[k]-HGnd|<δmaxH
其中,AreaVobso[k]表征第k个待定障碍物区域的区域面积,δminArea、δmaxArea为预设的地面障碍物区域的最小区域面积阈值、最大区域面积阈值,HVobso[k]表征第k个待定障碍物区域的第一平均高度,HGnd表征所述第二地面的第二平均高度,δminH、δmaxH为预设的地面障碍物区域的第一平均高度与第二地面的第二平均高度的最小高度差阈值、最大高度差阈值。
可选地,在根据所述第二地面区域在所述RGB图上检测地面障碍物之后,所述方法还包括:
若确定所述第二地面区域在所述RGB图上存在障碍物,输出提示信息。
本公开还提供一种检测地面障碍物的装置,包括:
第一获取模块,用于通过图像获取装置获取目标范围内的目标图像;
第二获取模块,用于获取所述目标图像对应的深度图、RGB图以及所述图像获取装置对应的姿态角;
第一确定模块,用于根据所述深度图和所述姿态角,确定第一地面区域;
第二确定模块,用于根据所述第一地面区域和所述RGB图,确定第二地面区域;
第三确定模块,用于根据所述第二地面区域在所述RGB图上检测是否存在障碍物。
可选地,所述第二确定模块,还用于以所述第一地面区域为基础,对所述RGB图进行地面分割,得到所述第二地面区域。
可选地,所述第二确定模块包括:
转换子模块,用于将所述RGB图转换为HSX图,并将所述HSX图分割成多个尺寸相同的子图像,X为明度V或强度I;
获得子模块,用于根据所述第一地面区域的子图像得到第二地面区域。
可选地,所述获得子模块包括:
图像参数计算子模块,用于分别计算每个所述子图像的图像参数的均值和方差;
种子区域确定子模块,用于将所述第一地面区域的子图像对应的区域中的任一区域作为种子区域;
循环子模块,用于循环执行区域生长步骤,直至满足循环终止条件;所述区域生长步骤包括:确定所述种子区域的相邻区域,并获取所述相邻区域对应的目标子图像;根据所述种子区域对应的子图像的图像参数的均值和方差,以及所述目标子图像的图像参数的均值和方差,确定满足第一预设条件的目标子图像,并将所述目标子图像对应的区域作为目标区域,并将所述目标区域作为更新的种子区域;所述循环终止条件包括所有满足第一预设条件的目标子图像对应的区域,均被作为所述目标区域;
第二地面区域获得子模块,用于将所述目标区域对应的子图像进行融合,得到所述第二地面区域。
可选地,述图像参数包括色调、饱和度和X,所述第一预设条件包括:
所述色调的均值和方差、饱和度的均值和方差以及X的均值和方差,均满足以下公式:
其中,EHSX[i]、VarHSX[i]用于分别表征种子区域i对应的子图像的图像参数的均值、方差,EHSX[j]、VarHSX[j]用于分别表征与所述种子区域i对应的子图像的相邻的子图像j对应的图像参数的均值、方差,δE表征预设的均值阈值,δVar表征预设的方差阈值。
可选地,所述第三确定模块包括:
提取子模块,用于提取所述RGB图中的封闭轮廓;
检测子模块,根据所述封闭轮廓和所述第二地面区域,检测是否存在所述障碍物。
可选地,所述检测子模块包括:
待定障碍物区域确定子模块,用于将所述封闭轮廓在所述第二地面区域内对应的子区域,作为待定障碍物区域;
面积高度确定子模块,用于根据所述待定障碍物区域和所述深度图对应的世界坐标系下的点云,确定所述待定障碍物区域的区域面积和第一平均高度;
高度确定子模块,用于根据所述第二地面区域和所述点云,确定所述第二地面区域的第二平均高度;
障碍物判断子模块,用于根据所述区域面积、所述第一平均高度以及所述第二平均高度,判断所述待定障碍物区域是否存在障碍物。
可选地,所述障碍物判断子模块还用于若所述待定障碍物区域满足第二预设条件,则确定所述待定障碍物区域存在障碍物;所述第二预设条件包括:
δminArea<AreaVobso[k]<δmaxArea
δminH<|HVobso[k]-HGnd|<δmaxH
其中,AreaVobso[k]表征第k个待定障碍物区域的区域面积,δminArea、δmaxArea为预设的地面障碍物区域的最小区域面积阈值、最大区域面积阈值,HVobso[k]表征第k个待定障碍物区域的第一平均高度,HGnd表征所述第二地面的第二平均高度,δminH、δmaxH为预设的地面障碍物区域的第一平均高度与第二地面的第二平均高度的最小高度差阈值、最大高度差阈值。
可选地,所述装置还可以包括:
输出模块,用于若确定所述第二地面区域在所述RGB图上存在障碍物,输出提示信息。
本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开所提供的所述方法的步骤。
本公开还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开所提供的所述方法的步骤。
采用上述技术方案,根据目标图像对应的深度图和图像获取装置对应的姿态角,确定第一地面区域,并根据该第一地面区域和RGB图,确定第二地面区域,进而根据该第二地面区域在RGB图上检测是否存在障碍物。这样,基于目标图像对应的深度图、RGB图以及图像获取装置对应的姿态角,可以获得无空洞且完整的第二地面区域,进而在该无空洞且完整的第二地面区域中检测障碍物,可以准确地检测出地面障碍物。此外,本公开基于深度图和姿态角确定第一地面区域,使得该检测地面障碍物的方法具有极强的自适应能力,对复杂环境具有更好的鲁棒性,可以极大的提高算法对复杂环境的适应能力。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1是根据一示例性实施例示出的一种检测地面障碍物的方法的流程图。如图1所示,该方法包括以下步骤:
在步骤11中,通过图像获取装置获取目标范围内的目标图像。
图像获取装置可以为单目相机、双目相机、深度相机等视觉传感器。目标范围可以是图像获取装置所能获取到的最大范围,也可以是用户设置的范围。通常情况下,在设置有上述图像获取装置的移动设备行进过程中,该目标图像为该移动设备前方地面的图像。
在一种实施例中,该方法可以应用于机器人设备、移动头盔以及无人驾驶车辆等移动设备,该图像获取装置可以安装在该移动设备上,在图像获取装置拍摄到目标地面的地面图像时,将该地面图像发送至移动设备进行处理。在另一种实施例中,该方法还可以应用于服务器,在图像获取装置获取到目标地面的地面图像时,将该地面图像发送至服务器进行处理。
在步骤12中,获取目标图像对应的深度图、RGB图以及图像获取装置对应的姿态角。
其中,深度图、RGB图可以直接通过视觉传感器、RGB-D相机等现有的图像获取装置直接获取得到的,也可以是根据图像获取装置获取到的目标图像后期处理得到的,本公开中对于该深度图和该RGB图的来源不做限制,只要该深度图和该RGB图是对应于目标图像即可。图像获取装置对应的姿态角可以通过姿态传感器获取得到。
在步骤13中,根据深度图和姿态角,确定第一地面区域。
需要说明的是,根据深度图和姿态角确定出的第一地面区域可能是一个也可能是多个,本公开对此不作具体限定。根据深度图和姿态角确定第一地面区域属于现有技术,此处不再赘述。
由于深度图通常会存在较大空洞,所以,依据该深度图和姿态角确定的第一地面区域是存在空洞且不完整的地面区域。若在该地面区域检测障碍物,可能会导致漏检,无法将位于前方地面上的障碍物完全检测出来,因此,本公开在确定出第一地面区域后,执行步骤14。
在步骤14中,根据第一地面区域和RGB图,确定第二地面区域。
考虑到仅基于RGB图检测地面时,需要地面上的一些标志物(例如,地面上的车道线、路沿等标志物)作为参考,且RGB图在过曝、过暗、弱纹理环境下会产生较多的噪声,以及,基于深度图和姿态角所检测到的地面具有空洞和不完整的缺点,因此,在本公开中,在基于深度图和姿态角确定出第一地面区域后,还需根据该第一地面区域和RGB图,确定第二地面区域,该第二地面区域为无空洞且完整的地面区域。
在步骤15中,根据第二地面区域在RGB图上检测是否存在障碍物。
采用上述技术方案,根据目标图像对应的深度图和图像获取装置对应的姿态角,确定第一地面区域,并根据该第一地面区域和RGB图,确定第二地面区域,进而根据该第二地面区域在RGB图上检测是否存在障碍物。这样,基于目标图像对应的深度图、RGB图以及图像获取装置对应的姿态角,可以获得无空洞且完整的第二地面区域,进而在该无空洞且完整的第二地面区域中检测障碍物,可以准确地检测出地面上的障碍物。此外,本公开基于深度图和姿态角确定第一地面区域,使得该检测地面障碍物的方法具有极强的自适应能力,对复杂环境具有更好的鲁棒性,可以极大的提高算法对复杂环境的适应能力。
可选地,根据第一地面区域和RGB图确定第二地面区域的实施方式可以为:以第一地面区域为基础,对RGB图进行地面分割,得到第二地面区域。具体地,首先,将RGB图像转换为HSX图,并将该HSX图分割成多个尺寸相同的子图像,其中,X为明度V或强度I。
通常情况下,对彩色图像进行处理时,需要将RGB颜色空间转换到HSI颜色空间或者HSV颜色空间,因此,在该实施例中,在对图像进行地面分割之前,首先将该RGB图转换为HSX图,其中,H表征颜色的波长,可称为色调,S表征颜色的深浅,可称为饱和度,I称为强度,V表征明度。在将RGB图转换为HSX图之后,可以将该HSX图分割成多个尺寸相同子图像。示例地,可以对HSX图的宽和高分别进行分割,以得到M×N个大小相同的子图像。
需要说明的是,在一种实施方式中,可以预先设定子图像的数量,进而根据该数量对HSX图进行分割,示例地,子图像的数量为3×4,进而可以对该HSX图的宽进行四等分,对该HSX图的高进行三等分,从而分割成12个尺寸相同的子图像。在另一种实施方式中,可以预设设定子图像的尺寸,进而根据该预设的子图像的尺寸,对HSX图进行分割。
然后,根据该第一地面区域的子图像得到第二地面区域。其中,该第一地图区域的子图像可以是包含有部分第一地面区域的子图像,也可以是包含有全部第一地面区域的子图像。
上文所确定出的第一地面区域可能是多个也可能是一个,在将HSX图分割成多个子图像时,该多个或一个第一地面区域可能会位于不同的子图像中。示例地,如图2所示,假设该第一地面区域为两个,分别为Gnd0和Gnd1,该HSX图被分割成3×4个尺寸相同的子图像,该子图像分别为子图像1、子图像2、子图像3……子图像12。如图2所示,Gnd0分别位于子图像1、子图像2、子图像5以及子图像6对应的区域中,Gnd1位于子图像7对应的区域中。其中,子图像1、子图像2、子图像5、子图像6以及子图像7为第一地面区域的子图像。
根据该第一地面区域的子图像得到第二地面图像的具体实施方式可以包括以下步骤。
步骤(1):分别计算每个子图像的图像参数的均值和方差。
其中,该子图像的图像参数可以是色调、饱和度和X,其中,每个子图像的图像参数的均值和方差为每个子图像的色调的均值和方差、饱和度的均值和方差、以及X的均值和方差。
具体地,针对每个子图像,分别计算该子图像中包括的像素点的色调数值、饱和度数值、以及X数值,进而根据色调数值、饱和度数值、以及X数值,分别计算该子图像的均值和方差、饱和度的均值和方差、以及X的均值和方差。
步骤(2):将该第一地面区域的子图像对应的区域中的任一区域作为种子区域。
为了保证在区域生长时,可以将与第一地面区域有相似属性(如强度、灰度级、纹理颜色等)的相邻区域合并至该第一地面区域,在本公开中,在区域生长初始时,以第一地面区域的子图像对应的区域中的任一区域作为种子区域。
示例地,如图2所示,该第一地面区域的子图像对应的区域为多个,如子图像1、子图像2、子图像5、子图像6以及子图像7分别对应的区域。在一种实施方式中,可以从该多个区域中选取任一区域作为种子区域,例如,可以将子图像1、子图像2、子图像5、子图像6以及子图像7分别对应的区域中的任意一区域作为区域生长初始时的种子区域。
在另一种实施例中,可以根据第一地面区域的子图像包括的第一地面区域的面积大小确定区域生长初始时的种子区域,若子图像7包括的第一地面区域的面积大于子图像6包括的第一地面区域的面积,则将子图像7对应的区域作为区域生长初始时的种子区域。
由于在确定第二地面区域时需要依次遍历每个子图像(包括第一地面区域的子图像),所以,在本公开中,为了减少工作量,无需进一步确定每个第一地面区域的子图像的面积,直接将第一地面区域的子图像对应的区域中的任一区域作为种子区域即可。
步骤(3):循环执行区域生长步骤,直至满足循环终止条件。该区域生长步骤可以包括:
步骤(31):确定种子区域的相邻区域,并获取相邻区域对应的目标子图像。示例地,如图2所示,若种子区域为子图像6对应的区域,则相邻区域对应的目标子图像分别为:子图像1、子图像2、子图像3、子图像5、子图像7、子图像9、子图像10以及子图像11。若种子区域为子图像1对应的区域,则相邻区域对应的目标子图像分别为:子图像2、子图像5和子图像6。
步骤(32):根据种子区域对应的子图像的图像参数的均值和方差,以及目标子图像的图像参数的均值和方差,确定满足第一预设条件的目标子图像,并将目标子图像对应的区域作为目标区域。
其中,第一预设条件可以为:色调的均值和方差、饱和度的均值和方差以及X的均值和方差中的至少一者满足以下公式。但是,为了准确地确定出与种子区域属性相似的其他区域,在本公开中,该第一预设条件为:色调的均值和方差、饱和度的均值和方差以及X的均值和方差,均满足以下公式:
其中,EHSX[i]、VarHSX[i]用于分别表征种子区域i对应的子图像的图像参数的均值、方差,EHSX[j]、VarHSX[j]用于分别表征与种子区域i对应的子图像的相邻的子图像j对应的图像参数的均值、方差,δE表征预设的均值阈值,δVar表征预设的方差阈值。
示例地,以种子区域为子图像1对应的区域为例,则在上述公式中种子区域i即为子图像1对应的区域,子图像j可以为子图像2、子图像5或子图像6。分别计算子图像1、子图像2、子图像5和子图像6各自的色调的均值和方差、饱和度的均值和方差以及X的均值和方差,在子图像2、子图像5和子图像6中,确定色调的均值和方差、饱和度的均值和方差以及X的均值和方差均满足上述公式的子图像,并将该子图像确定为目标子图像。需要说明的是,满足第一预设条件的每个子图像均可以确定为目标子图像,并将目标子图像对应的区域作为目标区域。
步骤(33):将目标区域作为更新的种子区域。
按照上述方式确定出的目标区域,与种子区域的属性相似度较高,可认为该目标区域为地面区域,例如,可以将该目标区域标记为地面区域。同时,还可以将该目标区域作为更新的种子区域,并根据该更新的种子区域循环执行上述步骤(31)至步骤(33),直到满足循环终止条件。
该循环终止条件包括所有满足第一预设条件的目标子图像对应的区域,均被作为目标区域。在本公开中,可以对每个子图像对应的区域进行判断,判断该区域是否满足第一预设条件,若满足该第一预设条件则将该区域作为目标区域,直到所有满足第一预设条件的目标子图像对应的区域,均被作为目标区域,结束循环。即,在HSX图中找出了所有的地面区域。
步骤(4):将目标区域对应的子图像进行融合,得到第二地面区域。
按照上文所述的方式确定出的目标区域为地面区域,本公开中,将HSX图中的所有地面区域进行融合,可以得到无空洞且完整的第二地面区域。
至此,可以确定出无空洞且完整的第二地面区域。之后,可以根据该第二地面区域在RGB图上检测是否存在障碍物。
具体地,首先,提取该RGB图中的封闭轮廓,示例地,如图3所示,黑色虚线框表征第二地面区域,黑色实线框表征提取的封闭轮廓,在图3中,提取的封闭轮廓分别为轮廓1、轮廓2、轮廓3和轮廓4。然后,根据封闭轮廓和第二地面区域,检测是否存在障碍物。
需要说明的是,在图像中物体(如凸起、路桩、建筑物等)对应的轮廓均为封闭轮廓,因此,本公开首先在RGB图中提取出所有的封闭轮廓,即,提取出RGB图中的物体轮廓。此外,在移动设备行进的实施例中,第二地面区域为移动设备行进的路面区域,在该实施例中只需要检测出路面区域内是否存在障碍物即可,而在RGB图中,物体轮廓对应的物体可能位于RGB图中第二地面区域内如路桩对应的封闭轮廓,也可能位于第二地面区域之外如建筑物对应的封闭轮廓,因此,在该实施例中,还需进一步根据封闭轮廓和第二地面区域,检测是否存在障碍物,该障碍物是指位于第二地面区域内的障碍物。
在本公开中,可首先检测第二地面区域内是否存在封闭轮廓对应的子区域,若存在,则表明该第二地面区域内存在障碍物,此时,可将封闭轮廓在第二地面区域内对应的子区域,作为待定障碍物区域,该待定障碍物区域可以包括大障碍物区域,也可以包括小障碍物区域。如图3所示,轮廓1对应的区域位于该第二地面区域内,则该轮廓1对应的区域即为待定障碍物区域。若第二地面区域内不存在封闭轮廓对应的子区域,则确定该第二地面区域内不存在障碍物。
接着,在确定该第二地面区域内存在待定障碍物区域之后,可以进一步确定该待定障物区域是否存在满足第二预设条件的障碍物。示例地,根据待待定障碍物区域和深度图对应的世界坐标系下的点云,确定待定障碍物区域的区域面积和第一平均高度。其中,可以根据现有的确定点云的方法确定深度图对应的世界坐标系下的点云,由于RGB图和深度图是对齐的,所以,可以基于深度图对应的点云的位置坐标,确定出RGB图中待定障碍物区域的区域面积和第一平均高度。然后,根据第二地面区域和点云,确定第二地面区域的第二平均高度。同样地,按照上述方法也可以确定出第一地面区域的第二平均高度。最后,根据待区域面积、第一平均高度以及第二平均高度判断该待定障碍物区域是否存在障碍物。
示例地,根据区域面积、第一平均高度以及第二平均高度,判断待定障碍物区域是否存在障碍物的具体实施例方式可以为:若待定障碍物区域满足第二预设条件,则确定待定障碍物区域存在障碍物,否则,确定该待定障碍物区域不存在障碍物。第二预设条件包括:
δminArea<AreaVobso[k]<δmaxArea
δminH<|HVobso[k]-HGnd|<δmaxH
其中,AreaVobso[k]表征第k个待定障碍物区域的区域面积,δminArea、δmaxArea为预设的地面障碍物区域的最小区域面积阈值、最大区域面积阈值,HVobso[k]表征第k个待定障碍物区域的第一平均高度,HGnd表征所述第二地面的第二平均高度,δminH、δmaxH为预设的地面障碍物区域的第一平均高度与第二地面的第二平均高度的最小高度差阈值、最大高度差阈值。
上文中所确定出的待定障碍物区域可以是多个也可以是一个,若为多个,则对每一个待定障碍物区域,进行判断是否满足第二预设条件,并确定满足第二预设条件的待定障碍物区域存在障碍物。
需要说明的是,在第二预设条件是基于小障碍物的参数设定的情况下,若待定障碍物区域满足第二预设条件,则确定该待定障碍物区域存在小障碍物。其中,根据交通部《公路沥青路面养护技术规范》中定义的影响行进安全的坑洼凸起最小面积为30cm2,与地面的最小平均高度差为1cm,因此,在本公开中δminArea=30cm2,δminH=1cm,δmaxArea、δmaxH可以根据实际需求设定。如此,可以检测到地面中存在的小障碍物,进一步保证移动设备的行进安全。
此外,在本公开中,若待定障碍物区域满足以下公式,还可以确定该待定障碍物区域存在大障碍物,在本公开中对于大障碍物的检测不作具体说明:
AreaVobso[k]>δmaxArea
|HVobso[k]-HGnd|>δmaxH
其中,下述公式中的各个变量已在第二预设条件中进行说明,此处不再赘述。
在一种实施例中,若确定第二地面区域在RGB图上存在障碍物,输出提示信息。
通常情况下,移动设备或者视障人士在障碍物处行进时易发生危险,为了进一步避免危险的发生,在本公开中,在检测到第二地面区域在RGB图上存在障碍物时,还可以输出提示信息,对视障人士、自动驾驶车辆内的人员进行提示。其中,输出提示消息可以通过语音、蜂鸣声、灯光等各种方式来实施。
采用上述技术方案,在检测到第二地面区域在RGB图上存在障碍物时,可以进一步输出提示信息对用户进行提示,使用户提前预知前方地面存在障碍物,并及时调整行进姿态和方式,以进一步避免危险的发生。
基于同一发明构思,本公开还提供一种检测地面障碍物的装置。图4是根据一示例性实施例示出的一种检测地面障碍物的装置的框图。如图4所示,该装置可以包括:
第一获取模块41,用于通过图像获取装置获取目标范围内的目标图像;
第二获取模块42,用于获取所述目标图像对应的深度图、RGB图以及所述图像获取装置对应的姿态角;
第一确定模块43,用于根据所述深度图和所述姿态角,确定第一地面区域;
第二确定模块44,用于根据所述第一地面区域和所述RGB图,确定第二地面区域;
第三确定模块45,用于根据所述第二地面区域在所述RGB图上检测是否存在障碍物。
可选地,所述第二确定模块44,还用于以所述第一地面区域为基础,对所述RGB图进行地面分割,得到所述第二地面区域。
可选地,所述第二确定模块44可以包括:
转换子模块,用于将所述RGB图转换为HSX图,并将所述HSX图分割成多个尺寸相同的子图像,X为明度V或强度I;
获得子模块,用于根据所述第一地面区域的子图像得到第二地面区域。
可选地,所述获得子模块可以包括:
图像参数计算子模块,用于分别计算每个所述子图像的图像参数的均值和方差;
种子区域确定子模块,用于将所述第一地面区域的子图像对应的区域中的任一区域作为种子区域;
循环子模块,用于循环执行区域生长步骤,直至满足循环终止条件;所述区域生长步骤包括:确定所述种子区域的相邻区域,并获取所述相邻区域对应的目标子图像;根据所述种子区域对应的子图像的图像参数的均值和方差,以及所述目标子图像的图像参数的均值和方差,确定满足第一预设条件的目标子图像,并将所述目标子图像对应的区域作为目标区域,并将所述目标区域作为更新的种子区域;所述循环终止条件包括所有满足第一预设条件的目标子图像对应的区域,均被作为所述目标区域;
第二地面区域获得子模块,用于将所述目标区域对应的子图像进行融合,得到所述第二地面区域。
可选地,述图像参数包括色调、饱和度和X,所述第一预设条件包括:
所述色调的均值和方差、饱和度的均值和方差以及X的均值和方差,均满足以下公式:
其中,EHSX[i]、VarHSX[i]用于分别表征种子区域i对应的子图像的图像参数的均值、方差,EHSX[j]、VarHSX[j]用于分别表征与所述种子区域i对应的子图像的相邻的子图像j对应的图像参数的均值、方差,δE表征预设的均值阈值,δVar表征预设的方差阈值。
可选地,所述第三确定模块45可以包括:
提取子模块,用于提取所述RGB图中的封闭轮廓;
检测子模块,根据所述封闭轮廓和所述第二地面区域,检测是否存在所述障碍物。
可选地,所述检测子模块可以包括:
待定障碍物区域确定子模块,用于将所述封闭轮廓在所述第二地面区域内对应的子区域,作为待定障碍物区域;
面积高度确定子模块,用于根据所述待定障碍物区域和所述深度图对应的世界坐标系下的点云,确定所述待定障碍物区域的区域面积和第一平均高度;
高度确定子模块,用于根据所述第二地面区域和所述点云,确定所述第二地面区域的第二平均高度;
障碍物判断子模块,用于根据所述区域面积、所述第一平均高度以及所述第二平均高度,判断所述待定障碍物区域是否存在障碍物。
可选地,所述障碍物判断子模块,还用于若所述待定障碍物区域满足第二预设条件,则确定所述待定障碍物区域存在障碍物;所述第二预设条件包括:
δminArea<AreaVobso[k]<δmaxArea
δminH<|HVobso[k]-HGnd|<δmaxH
其中,AreaVobso[k]表征第k个待定障碍物区域的区域面积,δminArea、δmaxArea为预设的地面障碍物区域的最小区域面积阈值、最大区域面积阈值,HVobso[k]表征第k个待定障碍物区域的第一平均高度,HGnd表征所述第二地面的第二平均高度,δminH、δmaxH为预设的地面障碍物区域的第一平均高度与第二地面的第二平均高度的最小高度差阈值、最大高度差阈值。
可选地,所述装置还可以包括:
输出模块,用于若确定所述第二地面区域在所述RGB图上存在障碍物,输出提示信息。
本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图5是根据一示例性实施例示出的一种电子设备的框图。其中,该电子设备可以是机器人设备或者移动头盔等。如图5所示,该电子设备500可以包括:处理器501,存储器502。该电子设备500还可以包括多媒体组件503,输入/输出(I/O)接口504,以及通信组件505中的一者或多者。
其中,处理器501用于控制该电子设备500的整体操作,以完成上述的检测地面障碍物的方法中的全部或部分步骤。存储器502用于存储各种类型的数据以支持在该电子设备500的操作,这些数据例如可以包括用于在该电子设备500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器502或通过通信组件505发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的检测地面障碍物的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的检测地面障碍物的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器502,上述程序指令可由电子设备500的处理器501执行以完成上述的检测地面障碍物的方法。
图6是根据另一示例性实施例示出的一种电子设备600的框图。例如,电子设备600可以被提供为一服务器。参照图6,电子设备600包括处理器622,其数量可以为一个或多个,以及存储器632,用于存储可由处理器622执行的计算机程序。存储器632中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器622可以被配置为执行该计算机程序,以执行上述的检测地面障碍物的方法。
另外,电子设备600还可以包括电源组件626和通信组件650,该电源组件626可以被配置为执行电子设备600的电源管理,该通信组件650可以被配置为实现电子设备600的通信,例如,有线或无线通信。此外,该电子设备600还可以包括输入/输出(I/O)接口658。电子设备600可以操作基于存储在存储器632的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的检测地面障碍物的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器632,上述程序指令可由电子设备600的处理器622执行以完成上述的检测地面障碍物的方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的检测地面障碍物的方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。