一种行驶区域检测的方法和设备与流程

文档序号:17624603发布日期:2019-05-10 23:31阅读:139来源:国知局
一种行驶区域检测的方法和设备与流程

本发明涉及自动驾驶技术领域,特别涉及一种行驶区域检测的方法和设备。



背景技术:

近年来随着汽车产业的高速发展,交通事故已经成为全球性的问题,全世界每年交通事故的死伤人数估计超过50多万人,因此集自动控制、人工智能、模式识别等技术于一体的无人驾驶应用而生。为了实时可靠的感知环境信息,无人驾驶汽车上装备了各种主动传感器与被动传感器,包括相机、激光雷达、毫米波雷达和gps(globalpositioningsystem,全球定位系统),行驶区域检测是无人驾驶技术中的关键部分之一。

基于图像的行驶区域检测技术主要基于相机传感器,通过图像视频分析技术,比如图像像素级的语义分割技术,是在图像语义分割的基础上,提取路面特征的像素点,最终得到的结果是图像平面上的像素点,没办法得到真实的行驶区域空间信息,需要训练大量的标签数据来解决多场景适用问题,还需要严格的相机标定过程,来获取行驶区域信息。基于图像信息的行驶区域检测,图像有丰富的成像信息,但存在缺点:第一,无法得到有效准确的三维距离信息;第二、在成像恶劣的条件下,抗干扰性较差,比如低照度,明暗交替的地方,无法取得理想的分割效果;第三、针对不同场景需要标注大量的训练数据,难以满足l3、l4级别的自动驾驶技术指标。

综上所述,目前基于相机传感器的行驶区域检测无法得到有效准确的三维距离信息,且受环境影响大,无法准确的检测到行驶区域。



技术实现要素:

本发明提供一种行驶区域检测的方法和设备,用以解决现有技术中存在目前基于相机传感器的行驶区域检测无法得到有效准确的三维距离信息,且受环境影响大,无法准确的检测到行驶区域的问题。

第一方面,本发明实施例提供的一种行驶区域检测的方法包括:

根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

上述方法,提出基于深度学习的行驶区域检测方法,其中的点云地图是根据激光雷达扫描得到的点云数据构建的三维地图,可以实现在3维空间上对路面信息和路肩信息的检测,为自动驾驶提供可靠的感知信息,并且基于深度学习的行驶区域检测方法受外界干扰因素影响小,鲁棒性强,通过已训练的神经网络模型准确检测路面点、路肩点,并且通过几何模型拟合确定行驶区域,可以有效的完成实际交通场景中行驶区域的检测,准确的描述出汽车的安全通行区域,具有很好的易用性和鲁棒性。

在一种可能的实现方式中,通过下列方式确定所述点云地图:

根据第n帧图像对应的imu(inertialmeasurementunit,惯性测量单元)数据集确定所述第n帧图像对应的用于表示车辆行驶状态的里程计信息,其中所述第n帧图像中的点云数据是通过激光雷达扫描车辆周边道路确定的,所述第n帧图像对应的imu数据集是在确定所述第n帧图像的同时测量得到的,n为正整数;

根据所述第n帧图像对应的里程计信息对所述第n帧图像中的点云数据进行坐标转换得到所述第n帧图像的点云地图坐标;

根据连续多帧图像的点云地图坐标确定所述点云地图。

上述方法,引入高精度组合imu来提供位姿信息,通过连续多帧图像对点云数据进行叠加建图,其中imu可以提供车辆的位置和姿态信息,这些可以通过imu测量得到的数据确定,且定位精度达厘米级,由于车在运动过程中不同时刻采集到的点云坐标系原点不相同,通过imu数据集确定出用于表示车辆行驶状态的里程计信息后,根据里程计信息对激光雷达扫描得到的点云数据进行坐标转换,将连续多帧图像中的点云数据转换到统一坐标系下,构建点云地图,不需要再进行点云匹配,大大减小了计算量,适用于环境感知,行驶区域检测。

在一种可能的实现方式中,所述神经网络分割模型包括输入层、编码层和解码层组,其中所述解码层组包括至少一个解码层;

其中,所述输入层用于将所述鸟瞰特征图输入到所述神经网络分割模型;

所述编码层用于对所述输入层输入的鸟瞰特征图进行编码输出编码后的鸟瞰特征图;

所述解码层用于对所述编码后的鸟瞰特征图进行解码,以使所述解码层组中最后一个解码层输出的鸟瞰特征图与所述输入层输入的鸟瞰特征图的分辨率相同。

上述方法,提出了一种神经网络分割模型架构,包括输入层、编码层以及解码层组(包括至少一个解码层),其中的解码层用于对经过编码处理得到的鸟瞰特征图进行解码处理,通过至少一个解码层进行解码处理,使得最后一个解码层输出的鸟瞰特征图与输入层输入的鸟瞰特征图的分辨率相同,便于根据第一特征信息确定出原始鸟瞰特征图(输入到神经网络分割模型的鸟瞰特征图)中的路面点,以及根据第二特征信息确定出原始鸟瞰特征图中的路肩点,进而确定在点云地图中与鸟瞰特征图中的路面点相对应的路面点以及与鸟瞰特征图中的路肩点相对应的路肩点,在神经网络分割模型输入的鸟瞰特征图与输出的鸟瞰特征图分辨率大小一致时可以准确的根据第一特征信息及第二特征信息确定出点云地图中的路面点以及路肩点。

在一种可能的实现方式中,通过下列方式确定所述鸟瞰特征图中栅格的高度编码特征:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体在所述点云地图中表示高度的方向进行等间距划分得到多个小立方体,并确定所述多个小立方体的高度编码特征,其中所述高度编码特征用于表示所述小立方体是否存在点;

根据所述多个小立方体的高度编码特征确定所述立方体对应的栅格的高度编码特征;和/或

通过下列方式确定所述鸟瞰特征图中栅格的平均反射强度:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体中所有点的反射强度的平均值作为所述立方体对应的栅格的平均反射强度。

上述方法,在确定鸟瞰特征图的任意一个栅格的高度编码特征时,通过对立方体的划分得到多个小立方体后,根据每个小立方体中是否存在点确定每个小立方体的高度编码特征,进而根据多个小立方体的高度编码特征以及这多个小立方体的高度之间的关系确定立方体对应的栅格的高度编码特征,通过高度的等间距划分使得鸟瞰特征图的特征维度增加,丰富了神经网络分割模型输入参数,便于进行特征提取。

在一种可能的实现方式中,所述将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域,包括:

通过最小二乘法对所述点云地图中的路面点进行拟合得到表示路面的三维平面,以及对所述点云地图中的路肩点进行拟合得到表示路肩的三维曲线;

根据所述表示路面的三维平面以及所述表示路肩的三维曲线确定行驶区域。

上述方法,通过最小二乘法将点拟合成平面或曲线,最终根据拟合形成的平面或曲线确定三维行驶区域,采用最小二乘法通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小,通过最小二乘法拟合出的平面或曲线更加真实可靠。

第二方面,本发明实施例提供的一种行驶区域检测的设备包括:至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行下列过程:

根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

在一种可能的实现方式中,所述处理单元还用于通过下列方式确定所述点云地图:

根据第n帧图像对应的imu数据集确定所述第n帧图像对应的用于表示车辆行驶状态的里程计信息,其中所述第n帧图像中的点云数据是通过激光雷达扫描车辆周边道路确定的,所述第n帧图像对应的imu数据集是在确定所述第n帧图像的同时测量得到的,n为正整数;

根据所述第n帧图像对应的里程计信息对所述第n帧图像中的点云数据进行坐标转换得到所述第n帧图像的点云地图坐标;

根据连续多帧图像的点云地图坐标确定所述点云地图。

在一种可能的实现方式中,所述神经网络分割模型包括输入层、编码层和解码层组,其中所述解码层组包括至少一个解码层;

其中,所述输入层用于将所述鸟瞰特征图输入到所述神经网络分割模型;

所述编码层用于对所述输入层输入的鸟瞰特征图进行编码输出编码后的鸟瞰特征图;

所述解码层用于对所述编码后的鸟瞰特征图进行解码,以使所述解码层组中最后一个解码层输出的鸟瞰特征图与所述输入层输入的鸟瞰特征图的分辨率相同。

在一种可能的实现方式中,所述处理单元还用于通过下列方式确定所述鸟瞰特征图中栅格的高度编码特征:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体在所述点云地图中表示高度的方向进行等间距划分得到多个小立方体,并确定所述多个小立方体的高度编码特征,其中所述高度编码特征用于表示所述小立方体是否存在点;

根据所述多个小立方体的高度编码特征确定所述立方体对应的栅格的高度编码特征;和/或

通过下列方式确定所述鸟瞰特征图中栅格的平均反射强度:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体中所有点的反射强度的平均值作为所述立方体对应的栅格的平均反射强度。

在一种可能的实现方式中,所述处理单元具体用于:

通过最小二乘法对所述点云地图中的路面点进行拟合得到表示路面的三维平面,以及对所述点云地图中的路肩点进行拟合得到表示路肩的三维曲线;

根据所述表示路面的三维平面以及所述表示路肩的三维曲线确定行驶区域。

第三方面,本发明实施例还提供一种行驶区域检测的设备,该设备包括第一确定模块、第二确定模块和第三确定模块:

第一确定模块,用于根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

第二确定模块,用于根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

第三确定模块,用于将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

第四方面,本申请还提供一种计算机存储介质,其上存储有计算机程序,该程序被处理单元执行时实现第一方面所述方法的步骤。

另外,第二方面至第四方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种行驶区域检测的方法示意图;

图2为本发明实施例提供的一种划分小立方体的方法示意图;

图3为本发明实施例提供的一种神经网络分割模型框架结构示意图;

图4为本发明实施例提供的一种行驶区域检测的完整方法示意图;

图5为本发明实施例提供的一种行驶区域检测的设备示意图;

图6为本发明实施例提供的另一种行驶区域检测的设备示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

下面对文中出现的一些词语进行解释:

1、本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

2、本发明实施例中术语“yolov2(youonlylookonce-version2)”是目标检测模型yolo的一个改进版本,在yolov1的基础上,使用新的网络结构和技巧,提高了检测速度和检测精度。

3、本发明实施例中术语“栅格化”,是ps(photoshop,图形处理软件)中的一个专业术语,栅格即像素,栅格化即将矢量图形转化为位图(栅格图像)。最基础的栅格化算法将多边形表示的三维场景渲染到二维表面。

4、本发明实施例中术语“鸟瞰特征图”指根据透视原理,用高视点透视法从高处某一点俯视地面起伏绘制成的立体图(二维图像)。简单地说,就是在空中俯视某一地区所看到的图像,比平面图更有真实感。在本发明实施例中的鸟瞰特征图中每个栅格中存储了激光雷达扫描得到的点云数据的反射强度和高度值数据等统计信息。

5、本发明实施例中术语“鲁棒性”是指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性。根据对性能的不同定义,可分为稳定鲁棒性和性能鲁棒性。

本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

如图1所示,本发明实施例的一种行驶区域检测的方法,具体包括以下步骤:

步骤100:根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

步骤101:根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

步骤102:将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

通过上述方案,提出基于深度学习的行驶区域检测方法,其中的点云地图是根据激光雷达扫描得到的点云数据构建的三维地图,可以实现在3维空间上对路面信息和路肩信息的检测,为自动驾驶提供可靠的感知信息,并且基于深度学习的行驶区域检测方法受外界干扰因素影响小,鲁棒性强,通过已训练的神经网络模型准确检测路面点、路肩点,并且通过几何模型拟合确定行驶区域,可以有效的完成实际交通场景中行驶区域的检测,准确的描述出汽车的安全通行区域,具有很好的易用性和鲁棒性。

在本发明实施例中,首先需要实时构建点云地图,具体的:

第一步:根据第n帧图像对应的imu数据集确定第n帧图像对应的用于表示车辆行驶状态的里程计信息,其中第n帧图像中的点云数据是通过激光雷达扫描车辆周边道路确定的,第n帧图像对应的imu数据集是在确定第n帧图像的同时测量得到的,n为正整数。

第二步:根据第n帧图像对应的里程计信息对第n帧图像中的点云数据进行坐标转换得到第n帧图像的点云地图坐标。

第三步:根据连续多帧图像的点云地图坐标确定点云地图。

其中,点云数据是指在一个三维坐标系统中的一组向量的集合。这些向量通常以x,y,z三维坐标的形式表示,代表几何位置信息,而且一般主要用来代表一个物体的外表面形状。例如,pi={xi,yi,zi}表示空间中的一个点,(i=1,2,3,……,n),则pointcloud={p1,p2,p3,……,pn}表示一组点云数据。

在本发明实施例中,imu数据集由至少一个imu数据组成的,其中imu数据包括但不限于下列的部分或全部:

速度、加速度、航向角。

例如,采用的装置是velodyne-32线激光雷达和诺瓦泰高精度组合惯导单元imu,imu可达到厘米级定位精度。通过激光雷达扫描车辆周边道路后输出的就是第n帧图像中的点云数据,与第n帧图像对应的imu数据集表示在确定第n帧图像的同时通过imu测量得到的imu数据组成的集合,例如激光雷达数据输出频率是10赫兹,imu输出的频率是100赫兹,则输出第n帧图像中的点云数据的时间内对应输出10组imu数据(假设一组imu包括一个加速度,一个速度以及一个航向角),这10组imu数据(30个imu数据)组成一个imu数据集,即与第n帧图像对应的imu数据集。

在本发明实施例中,确定里程计信息之前还需要判断imu数据集是否处于非失锁状态,即判断imu数据集中的imu数据是否都不处于失锁状态(其中失锁状态表示测量得到imu数据集时其中的imu数据的状态)。

具体的,根据诺瓦泰组合惯导单元的输出信号来确定,其中每输出一组imu数据对应一组输出信号,假设一组输出信号为(a,b),其中a表示gps(globalpositioningsystem,全球定位系统)状态,b表示系统状态,若a为4,b为1时,则表示这一组imu数据不处于失锁状态;若一个imu数据集包含30个imu数据(即10组数据),则当这30个imu数据都不处于失锁状态,此时imu数据集处于非失锁状态。

当第n帧图像对应的imu数据集处于非失锁状态时,则根据imu数据集确定第n帧图像对应的用于表示车辆行驶状态的里程计信息,具体的:根据第n帧图像对应的第一位移平移、第二位移平移及旋转量确定rt矩阵,并将rt矩阵作为第一里程计信息;其中,第一位移平移为第n帧图像对应的imu数据集中所有加速度的和与imu数据测量时间间隔的乘积,第二位移平移为第n帧图像对应的imu数据集中所有速度的和与imu数据测量时间间隔的乘积,旋转量为根据第n帧图像对应的imu数据集中的imu数据的时间戳确定的最后一次测量得到的航向角,即根据imu航向角和速度、加速度信息,得到里程计信息。

例如,一个imu数据集包含10组imu数据(30个imu数据)

{(vx1,vy1,yaw1);(vx2,vy2,yaw2);…;(vx10,vy10,yaw10)}。

其中,vxi表示测量得到第n帧图像对应的imu数据集时第i次测量的加速度,vyi表示测量得到第i次测量的速度,yawi表示第i次测量的航向角,i=1,2,…,10;(vx1,vy1,yaw1)的时间戳为t1,(vx2,vy2,yaw2)的时间戳为t2,…,(vx10,vy10,yaw10)的时间戳为t10,且t1<t2<…<t10,则(vx10,vy10,yaw10)即这一imu数据集中最后一次测量输出的imu数据,最后一次输出的航向角即yaw10,imu数据测量时间间隔为t=t2-t1=t3-t2=t4-t3=…=t10-t9。

则第一位移平移为offx=(vx1+vx2+vx3+…+vx10)*t;第二位移平移为offy=(vy1+vy2+vy3+…+vy10)*t;旋转量为θ=yaw10。

根据第n帧图像对应的第一位移平移、第二位移平移及旋转量确定rt(rotationaltranslation,旋转平移)矩阵。

例如,根据旋转量θ确定旋转矩阵r,假设r为4*4矩阵:r=[cosθ,sinθ,0,0;-sinθ,cosθ,0,0;0,0,1,0;0,0,0,1],即绕z轴旋转,将点p(x,y,z)绕z轴旋转θ角得到点p′(x′,y′,z′):

x′=ysinθ+xcosθ;y′=ycosθ−xsinθ;z′=z。

用向量表示为p=[x,y,z,1],p′=[x′,y′,z′,1],rp=p′。

根据第一位移平移以及第二位移平移确定平移矩阵t,假设第n帧图像中某一点q(x,y,z),则对q进行平移变换后得到q′(x′,y′,z′),三个坐标轴的移动分量分别为dx=offx,dy=offy,dz=0,则:

x′=x+offx;y′=y+offy;z′=z。

用向量表示为q=[x,y,z,1],q′=[x′,y′,z′,1],则tq=q′,其中t=[1,0,0,offx;0,1,0,offy;0,0,1,0;0,0,0,1]。

在本发明实施例中,对点p先旋转后平移可以表示为:t*r*p。

可选的,若第n帧图像对应的imu数据集处于失锁状态时(即第n帧图像对应的imu数据集中的至少一个imu数据处于失锁状态),则根据第n帧图像中的点云数据确定第n帧图像对应的用于表示车辆行驶状态的里程计信息。

具体的:确定第n帧图像中的点云数据对应的点的曲面特征,其中某一点的曲面特征表示该点与该点周围最近邻k个点欧式距离的和,k为正整数;根据点的曲面特征通过非极大值抑制对第n帧图像中的点云数据对应的点进行筛选,并将筛选后剩余的点对应的点云数据作为最佳点云数据;通过icp(iterativeclosestpoint,迭代最近点)算法对最佳点云数据进行点云匹配确定第n-1帧图像中与最佳点云数据匹配的点云数据;根据第n帧图像中的最佳点云数据以及第n-1帧图像中与最佳点云数据匹配的点云数据确定rt矩阵,并将rt矩阵作为里程计信息。

其中,在确定rt矩阵时,采用罗德里杰斯公式将旋转矩阵r展开然后求导,求解雅克比矩阵,最后使用lm(levenberg-marquardt,列文伯格-马夸尔特法)的非线性方法进行优化得到rt矩阵。即将θ、offx、offy看做变量,通过优化问题求解的方式,找到最优的θ,以及offx、offy,最后确定rt矩阵。

在本发明实施例中,确定第n帧图像对应的里程计信息后,根据确定的里程计信息对第n帧图像中的点云数据进行坐标转换(即根据rt矩阵对点云数据进行旋转平移变换),确定第n帧图像中的点云数据进行坐标转换后得到的点云地图坐标;在确定连续多帧图像的点云地图坐标后,由连续多帧图像的点云地图坐标确定点云地图。

在本发明实施例中,得到稠密的点云地图(高精度地图)之后,将点云地图进行栅格化处理转换为鸟瞰特征图,具体的:

将三维空间的点云地图划分为多个立方体(等比例划分成一个立方体一个立方体的形式),根据激光雷达点云数据的反射强度和高度值数据等,计算每个立方体空间的统计分量(包括平均反射强度和高度编码特征),其中在转换为二维鸟瞰特征图时,一个立方体对应一个栅格,确定每一个栅格对应的编码和平均反射强度。

在本发明实施例中,通过下列方式确定鸟瞰特征图中栅格的高度编码特征:针对任意一个立方体,将立方体在点云地图中表示高度的方向进行等间距划分得到多个小立方体,并确定多个小立方体的高度编码特征,其中高度编码特征用于表示小立方体是否存在点;根据多个小立方体高度编码特征确定立方体对应的栅格的高度编码特征。

例如,将点云地图划分得到的立方体按照点云地图中表示物体高度的方向进行等间距划分,如图2所示z轴方向,图2中表示将一个立方体按点云地图中表示高度的方向等间距划分为了30个小立方体。

在本发明中激光雷达安装的高度假设为1.5米高,则在-2米到1米的高度范围内,将立方体划分为30个小立方体,每个小立方体对应的高度范围为0.1米,统计每个小立方体的点云信息,在确定小立方体的高度编码特征时用0和1表示,如果小立方体空间内存在点,则该小立方体对应的高度编码特征设为1,否则设为0;通过每个小立方体的高度编码特征以及这30个小立方体之间的高度关系确定这一立方体对应的栅格的高度编码特征,按照高度从低到高的顺序对应的高度编码特征分别为:0、1、0、1、0、1、0、1、0、1、1、0、1、0、1、1、1、0、1、0、1、0、1、0、1、0、1、1、1、1,则这一立方体对应的栅格的高度编码特征为0、1、0、1、0、1、0、1、0、1、1、0、1、0、1、1、1、0、1、0、1、0、1、0、1、0、1、1、1、1,对应30个特征通道。

在本发明实施例中,通过下列方式确定鸟瞰特征图中栅格的平均反射强度:

将点云地图划分为多个立方体;针对任意一个立方体,将所述立方体中所有点的反射强度的平均值作为所述立方体对应的栅格的平均反射强度。

例如,一个立方体中有10个点,则这10个点的反射强度的平均值作为这一立方体对应的栅格的平均反射强度,假设这10个点的反射强度分别为:10、23、14、15、13、25、10、9、8、10,这10个点的反射强度和为137,则栅格的平均反射强度为13.7。

需要说明的是,本发明实施例中所列举的确定栅格的高度编码特征及平均反射强度的方式只是举例说明,任何一种确定栅格的高度编码特征及平均反射强度的方式都适用于本发明实施例。

在本发明实施例中,通过栅格化处理得到鸟瞰特征图之后,根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息。

可选的,神经网络分割模型包括输入层、编码层和解码层组,其中解码层组包括至少一个解码层;其中,输入层用于将鸟瞰特征图输入到神经网络分割模型;编码层用于对输入层输入的鸟瞰特征图进行编码输出编码后的鸟瞰特征图;解码层用于对编码后的鸟瞰特征图进行解码,以使解码层组中最后一个解码层输出的结果图与输入层输入的鸟瞰特征图的分辨率相同。

如图3所示为本发明实施例提供的一种神经网络分割模型架构,其中输入层为300包含31个特征通道,编码层301可以是卷积神经网络结构,由卷积层、池化层等组成的,主要用于对输入的图像进行特征提取和编码,解码层组302包括5个解码层,假设神经网络分割模型采用yolov2模型,在现有的yolov2框架结构的基础上改进成编码-解码(encoder-decoder)网络结构。如图3所示的神经网络分割模型中有5个解码层,在根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息时,通过31个特征通道(其中30个通道为高度编码特征通道,剩余1个通道为平均反射强度特征通道)将鸟瞰特征图以1024*512*31的形式输入神经网络分割模型,其中1024*512表示分辨率(一个栅格看做一个像素),31表示鸟瞰特征图的特征通道数;通过神经网络分割模型的输入层将鸟瞰特征图输入到神经网络分割模型后,通过编码层(可以是卷积神经网络,包括卷积层、池化层等)对输入的鸟瞰特征图进行特征提取(卷积、池化等)和编码后得到32*16*1024的鸟瞰特征图(编码后的鸟瞰特征图,其中32*16表示分辨率,1024表示特征通道,特征图像素降低32倍,而channels(特征通道)增加33倍),之后通过解码层组的5个解码层对编码层的输出结果通过反卷积进行5次2倍上采样,经过解码层1解码后输出的鸟瞰特征图为64*32*512,再将64*32*512的鸟瞰特征图输入解码层2后输出的鸟瞰特征图为128*64*216,最终经过解码层5后输出的鸟瞰特征图为1024*512*3,其分辨率1024*512与输入神经网络分割模型的鸟瞰特征图的分辨率大小一致。其中解码层5可看做是图3所示神经网络分割模型的输出层。

最后输出的鸟瞰特征图中的每一个像素(栅格)都对应有表示该像素是路面点,或是路肩点或是其它点的特征信息,即确定鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息。

假设特征信息为1表示像素为路面点,特征信息为2表示像素为路肩点,特征信息为3表示像素既不是路面点也不是路肩点,则确定出第一特征信息1以及第二特征信息2即可确定出鸟瞰特征图中的路面点以及路肩点。

在本发明实施例中,根据神经网络分割模型确定第一特征信息以及第二特征信息后,根据特征信息为第一特征信息1的栅格(像素)确定该栅格对应的立方体,将立方体中所有的点都看做是路面点,即确定在点云地图中与鸟瞰特征图中的路面点相对应的路面点,以及根据特征信息为第二特征信息2的栅格(像素)确定该栅格对应的立方体,将立方体中所有的点都看做是路肩点,即确定在点云地图中与鸟瞰特征图中的路肩点相对应的路肩点。

之后,将点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域时,首先通过最小二乘法对点云地图中的路面点进行拟合得到表示路面的三维平面,以及对点云地图中的路肩点进行拟合得到表示路肩的三维曲线;最后根据表示路面的三维平面以及表示路肩的三维曲线确定行驶区域。

具体的,通过最小二乘法对点云地图中的路面点进行拟合得到多条表示路面的三维平面,由多条表示路面的三维平面组成路面,同样的方式,通过最小二乘法对点云地图中的路肩点进行拟合得到多条表示路肩的三维曲线,由多条表示路肩的三维曲线组成路肩;最后通过路面和路肩确定行驶区域(即两个路肩之间的路面上的区域)。

如图4所示,本发明实施例提供的一种行驶区域检测的完整方法包括:

步骤400、构建点云地图;

步骤401、将点云地图进行栅格化处理,确定栅格的平均反射强度和高度编码特征,得到鸟瞰特征图;

步骤402、根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息;

步骤403、根据第一特征信息确定在点云地图中与鸟瞰特征图中的路面点相对应的路面点,以及根据第二特征信息确定在点云地图中与鸟瞰特征图中的路肩点相对应的路肩点;

步骤404、通过最小二乘法对点云地图中的路面点进行拟合得到表示路面的三维平面,以及对点云地图中的路肩点进行拟合得到表示路肩的三维曲线;

步骤405、将点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

基于相同的发明构思,本发明实施例中还提供了一种行驶区域检测的设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图5所示,本发明实施例还提供一种行驶区域检测的设备,该设备包括:至少一个处理单元500、以及至少一个存储单元501,其中,所述存储单元501存储有程序代码,当所述程序代码被所述处理单元500执行时,使得所述处理单元500执行下列过程:

根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

可选的,所述处理单元500还用于通过下列方式确定所述点云地图:

根据第n帧图像对应的imu数据集确定所述第n帧图像对应的用于表示车辆行驶状态的里程计信息,其中所述第n帧图像中的点云数据是通过激光雷达扫描车辆周边道路确定的,所述第n帧图像对应的imu数据集是在确定所述第n帧图像的同时测量得到的,n为正整数;

根据所述第n帧图像对应的里程计信息对所述第n帧图像中的点云数据进行坐标转换得到所述第n帧图像的点云地图坐标;

根据连续多帧图像的点云地图坐标确定所述点云地图。

可选的,所述神经网络分割模型包括输入层、编码层和解码层组,其中所述解码层组包括至少一个解码层;

其中,所述输入层用于将所述鸟瞰特征图输入到所述神经网络分割模型;

所述编码层用于对所述输入层输入的鸟瞰特征图进行编码输出编码后的鸟瞰特征图;

所述解码层用于对所述编码后的鸟瞰特征图进行解码,以使所述解码层组中最后一个解码层输出的鸟瞰特征图与所述输入层输入的鸟瞰特征图的分辨率相同。

可选的,所述处理单元500还用于通过下列方式确定所述鸟瞰特征图中栅格的高度编码特征:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体在所述点云地图中表示高度的方向进行等间距划分得到多个小立方体,并确定所述多个小立方体的高度编码特征,其中所述高度编码特征用于表示所述小立方体是否存在点;

根据所述多个小立方体的高度编码特征确定所述立方体对应的栅格的高度编码特征;和/或

通过下列方式确定所述鸟瞰特征图中栅格的平均反射强度:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体中所有点的反射强度的平均值作为所述立方体对应的栅格的平均反射强度。

可选的,所述处理单元500具体用于:

通过最小二乘法对所述点云地图中的路面点进行拟合得到表示路面的三维平面,以及对所述点云地图中的路肩点进行拟合得到表示路肩的三维曲线;

根据所述表示路面的三维平面以及所述表示路肩的三维曲线确定行驶区域。

基于相同的发明构思,本发明实施例中还提供了一种行驶区域检测的设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图6所示,本发明实施例还提供一种行驶区域检测的设备,该设备包括:第一确定模块600、第二确定模块601和第三确定模块602:

第一确定模块600,用于根据鸟瞰特征图中栅格的平均反射强度和高度编码特征,通过神经网络分割模型确定所述鸟瞰特征图中的路面点的第一特征信息及路肩点的第二特征信息,其中所述鸟瞰特征图是对点云地图进行栅格化处理得到的;

第二确定模块601,用于根据所述第一特征信息确定在所述点云地图中与所述鸟瞰特征图中的路面点相对应的路面点,以及根据所述第二特征信息确定在所述点云地图中与所述鸟瞰特征图中的路肩点相对应的路肩点;

第三确定模块602,用于将所述点云地图中的路面点及路肩点进行几何模型拟合确定行驶区域。

可选的,所述第一确定模块600还用于通过下列方式确定所述点云地图:

根据第n帧图像对应的imu数据集确定所述第n帧图像对应的用于表示车辆行驶状态的里程计信息,其中所述第n帧图像中的点云数据是通过激光雷达扫描车辆周边道路确定的,所述第n帧图像对应的imu数据集是在确定所述第n帧图像的同时测量得到的,n为正整数;

根据所述第n帧图像对应的里程计信息对所述第n帧图像中的点云数据进行坐标转换得到所述第n帧图像的点云地图坐标;

根据连续多帧图像的点云地图坐标确定所述点云地图。

可选的,所述神经网络分割模型包括输入层、编码层和解码层组,其中所述解码层组包括至少一个解码层;

其中,所述输入层用于将所述鸟瞰特征图输入到所述神经网络分割模型;

所述编码层用于对所述输入层输入的鸟瞰特征图进行编码输出编码后的鸟瞰特征图;

所述解码层用于对所述编码后的鸟瞰特征图进行解码,以使所述解码层组中最后一个解码层输出的鸟瞰特征图与所述输入层输入的鸟瞰特征图的分辨率相同。

可选的,所述第一确定模块600还用于通过下列方式确定所述鸟瞰特征图中栅格的高度编码特征:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体在所述点云地图中表示高度的方向进行等间距划分得到多个小立方体,并确定所述多个小立方体的高度编码特征,其中所述高度编码特征用于表示所述小立方体是否存在点;

根据所述多个小立方体的高度编码特征确定所述立方体对应的栅格的高度编码特征;和/或

通过下列方式确定所述鸟瞰特征图中栅格的平均反射强度:

将所述点云地图划分为多个立方体;

针对任意一个立方体,将所述立方体中所有点的反射强度的平均值作为所述立方体对应的栅格的平均反射强度。

可选的,所述第三确定模块602具体用于:

通过最小二乘法对所述点云地图中的路面点进行拟合得到表示路面的三维平面,以及对所述点云地图中的路肩点进行拟合得到表示路肩的三维曲线;

根据所述表示路面的三维平面以及所述表示路肩的三维曲线确定行驶区域。

本发明实施例还提供一种计算机可读非易失性存储介质,包括程序代码,当所述程序代码在计算终端上运行时,所述程序代码用于使所述计算终端执行上述本发明实施例行驶区域检测的方法的步骤。

以上参照示出根据本申请实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。

相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1