一种道路区域检测方法与流程

文档序号:17937459发布日期:2019-06-18 22:44阅读:436来源:国知局
一种道路区域检测方法与流程

本发明涉及自动驾驶领域,特别是涉及一种基于几何边缘分割优化和深度学习特征编解码的道路区域检测方法。



背景技术:

随着深度学习技术和智能车辆技术的快速发展,深度学习已在智能车辆领域中的环境感知和决策规划中得到了应用广泛。道路区域检测作为智能车辆环境感知系统的核心组成部分,是智能车辆进行避障和规划的基础。若使用摄像头传感器数据作为输入,则对于图像通道中的每一个像素点,道路区域检测的目标是判断该像素点类别是属于道路区域,还是非道路区域(障碍物区域)。相比于其它传感器,单目摄像头由于语义特征丰富、可扩展性强、性价比高和具有多任务属性等特点,受到了广泛的关注,得到了深入的研究。

然而,基于单目摄像头的智能车辆行驶道路区域检测这一具体的感知任务,现有研究方法针对的是道路分割问题,缺少对道路类型分类任务的研究,特别是道路分割和分类的融合问题。对道路分割问题,在传统的研究中,常用的方法是采用一种或多种围绕道路几何形状、灰度、边缘和纹理等人为设计特征,并结合最近邻法、k均值聚类和支持向量机等算法进行图像像素的分类,从而实现道路区域分割任务,在结构化道路上能取得较好的分割性能,但无法适应城市无车道线的道路类型。这类传统的道路区域分割方法,虽然简单易于实现和理解,但是具有特征表现能力不足、模型泛化能力受限,以及易受外界光照条件和道路类型等干扰的缺点。针对这些问题,近十年来,具有特征自学习能力的基于深度卷积神经网络(dcnn)的分割方法将用于通用图像语义分割任务的全卷积神经网络进行改进,在损失函数设计中将道路边缘与道路中心像素同等对待,用于道路分割。虽然这些基于dcnn的方法相比于传统方法有了更好的分割性能,但是仍存在道路边缘分割粗糙、对道路类型敏感和分割准确率有限等问题。

总体来说,现阶段针对智能车辆的道路区域检测具有以下几个方面的问题:1)不能普遍适用于复杂的城市道路类型,包括城市无车道线,城市单车道和城市多车道;2)没有充分考虑不同道路区域像素点的特性,没有区别道路边缘与道路中心像素,导致道路边界处的分割效果较差;3)常见公开数据集中,不同道路几何形状的训练样本数量不平衡,导致易受具有不同道路几何结构的道路类型等干扰,导致道路分割鲁棒性不足。

因此,希望有一种技术方案来克服或至少减轻现有技术的上述缺陷中的至少一个。



技术实现要素:

本发明的目的在于提供一种基于几何边缘分割优化和深度学习特征编解码的道路区域检测方法来克服或至少减轻现有技术的上述缺陷中的至少一个。

为实现上述目的,本发明提供一种道路区域检测方法,所述道路区域检测方法包括:s1,设计道路增强数据增强方法,并生成道路数据增强函数;其中,道路增强数据增强方法具体包括像素值变化和图像扭曲变换;s2,采用s1生成的所述道路数据增强函数,输入训练样本,输出增强道路数据,所述增强道路数据包括大小相同的所述训练样本和增强后的样本;其中,所述训练样本包括原始道路rgb图像和与该原始道路rgb图像相对应的真值标注二值化图像;s3,设计并训练生成特征编码网络模型,利用s2得到的所述增强道路数据,通过所述特征编码网络模型,输出编码特征图;s4,设计并训练生成多任务解码网络模型,所述多任务解码网络模型包括道路分割解码模块和道路类型分类解码模块,其中,所述道路分割解码模块对应的优化损失函数为道路分割损失函数lseg(θseg);所述道路类型分类解码模块对应的优化损失函数为道路类型分类损失函数lcls(θcls),组成总的损失函数l(θ);采用所述道路分割解码模块,通过输入s3得到的所述编码特征图,能够输出道路分割结果;采用所述道路类型分类解码模块,通过输入s3得到的所述编码特征图,能够输出道路类型分类结果。

进一步地,s2中的所述道路数据增强函数对所述训练样本的处理过程包括:根据所述训练样本,在所述真值标注二值化图像的轮廓中,随机取出若干轮廓点作为扭曲变形的控制点,对所述原始道路rgb图像和其对应的真值标注二值化图像进行小幅扭曲图像变换,改变道路原有的几何形状。

进一步地,s3中的特征编码网络模型的设计过程包括:s31,采用带有混合空洞卷积的全卷积深度残差网络resnet作为共享的编码网络,其编码网络包括5个卷积层conv和1个最大池化层,conv_i表示网络中的第i阶段卷积,其中,conv_1阶段采用3层连续的3x3的卷积核,conv_2、conv_3阶段分别含有3个和4个resnet中普通的瓶颈模块,conv_4阶段中的6个瓶颈模块采用空洞大小分别为1,2,5,9,2和2的混合空洞卷积核,conv_5阶段中的3个瓶颈模块采用空洞大小分别为5,9,17的混合空洞卷积核;原始图像输入到conv_1,并先后依序通过所述最大池化层、conv_2、conv_3和conv_4,并经由conv_5后输出;

s3中的特征编码网络模型的训练生成过程包括:s32,采用s31设计好的所述特征编码网络模型,输入s2得到的所述增强道路数据,通过所述特征编码网络模型图像特征提取学习,输出所述编码特征图,所述编码特征图表示为h/8×w/8×204。

进一步地,s4包括:s41,设计所述道路分割解码模块,所述道路分割解码模块包括第一1×1卷积通道压缩层,原始图像输入到所述第一1×1卷积通道压缩层,并先后依序通过上采样层、第一1×1卷积分类层和第一softmax层,并经由类别合并后输出;s42,采用所述道路分割解码模块,通过输入s3得到的所述编码特征图输出道路分割结果,所述道路分割结果包括带有道路和背景两类分割结果的rgb图像,该图像中所有像素点中,道路区域标为第一种颜色,背景区域的颜色与所述原始图像相同,s42具体包括:s421,通过所述第一1×1卷积通道压缩层,压缩s32输出的所述h/8×w/8×2048,并输出h/8×w/8×128的多通道特征图;s422,通过所述上采样层利用无参数学习的双线性插值法进行上采样,将所述h/8×w/8×128的多通道特征图采样至s2得到的所述增强道路数据的大小,并输出h×w×128的多通道特征图;s423,先后依序通过所述第一1×1卷积分类层和第一softmax层,得到道路内部像素pin、道路边缘像素pbd、背景内部像素nin和背景边缘像素nbd的概率,并输出h×w×4的多通道特征图;以及s424,合并边缘像素和内部像素的类别,得到所述道路分割结果,表示为h×w×2的二通道特征图,即道路分割像素类别得分图。

进一步地,s4中的所述道路分割损失函数lseg(θseg)表示为式(1):

lseg(θseg)=lin(θseg)+αlbd(θseg)(1)

式(1)中,θseg表示所述道路分割解码模块的学习参数,lin(θseg)表示道路内部和边缘内部的损失函数项,lbd(θseg)表示道路边缘和背景边缘的损失函数项,如下式(2):

式(2)中,gtx,y表示所述原始道路rgb图像中像素(x,y)的真值标签,prx,y(θseg)表示在参数θseg下,像素(x,y)的预测标签,损失函数采用交叉熵损失函数,如式(3)所示:

式(3)中,n表示训练样本的数量,c表示类别个数,表示像素i的真实类别j,yij表示道路分割解码模块前向推导出的i属于该类的概率。

进一步地,s4还包括:s43,采用所述道路分割损失函数lseg(θseg)训练生成所述道路分割解码模块的过程包括:s431,根据道路和非道路两类,将s2中的所述增强道路数据中的所有像素二划分,生成二值化标注的图像;s432,将s431输出的图像中的像素进行四划分,获取二划分的二值标注图像中的连通域边界;其中:对于连通域边界上的每一个像素点,以其为圆心,半径为k的圆包含的像素中,将所述原始道路rgb图像中像素(x,y)的真值标签为道路类别的像素变更为道路边缘像素pbd类别,原始标注为背景类别的像素变更为背景边缘像素nbd类别;对于其它未包含在任意圆内的像素,将原始标注中的道路类别变更为道路内部像素pin,原始标注中的背景类别变更为背景内部像素nin。

进一步地,s4还包括:s44,设计道路类型分类解码模块,所述道路类型分类解码模块包括第二1×1卷积通道压缩层,原始图像输入到所述第二1×1卷积通道压缩层,并先后依序通过下采样层、全局平均池化层和第二1×1卷积分类层,并经由第二softmax层后输出;s45,采用所述道路类型分类解码模块,通过输入s3得到的所述编码特征图输出道路类型分类结果,所述道路类型分类结果为每张s2中的所述训练样本属于三种城市道路类型{uu,um,umm}中某一道路类型的概率,表示为1×1×3的向量,uu为城市无车道线,um为城市单车道,umm为城市多车道,s45其具体包括:s451,通过所述第二1×1卷积通道压缩层,压缩s32输出的所述h/8×w/8×2048,并输出h/8×w/8×64的多通道特征图;s452,通过下采样层利用双线性下采样,降低s451压缩后的编码特征图的尺寸,并输出h/32×w/32×64的多通道特征图;s453,采用所述全局平均池化层,输入h/32×w/32×64的多通道特征图,输出用于分类的1×1×64的列向量形式的特征图;s454,将s453输出的1×1×64的列向量形式的特征图先后依序通过第二1×1卷积分类层和第二softmax层,输出所述道路类型分类结果。

进一步地,s4中的所述道路类型分类损失函数lcls(θcls)采用lseg函数中使用的交叉熵损失函数(3),多任务解码模型的总体损失函数为:

l(θ)=lseg(θseg)+βlcls(θcls)(4)

式(4)中,权重系数β用于调整道路分割和道路场景分类两个子任务的损失权重,l(θ)用于学习各类网络层的权值w和偏值b;

s4还包括:s46,采用所述道路类型分类损失函数lcls(θcls)训练生成所述道路类型分类解码模块的过程。

本发明能够在车辆行驶过程中准确获取行驶道路区域的像素级分割和多类型分类结果,可用于智能车辆的可通行区域检测,也可为智能车辆的避障和路径规划提供依据。

附图说明

图1是本发明实施例所提供的道路区域检测方法的流程图;

图2是本发明实施例所提供的道路区域检测方法中的道形状几何变形数据增强效果示意图;

图3是本发明实施例所提供的道路区域检测方法中的道路分割类别划分方法示意图;

图4是本发明实施例所提供的道路区域检测方法中的特征编码网络模型的结构示意图;

图5是本发明实施例所提供的道路区域检测方法中的多任务解码网络模型的结构示意图。

具体实施方式

在附图中,使用相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面结合附图对本发明的实施例进行详细说明。

在本发明的描述中,术语“中心”、“纵向”、“横向”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。

本发明所提供的基于几何边缘分割优化和深度学习特征编解码的道路区域检测方法可以为智能车辆提供实时更新的行驶道路的类型和区域分割结果,可用于智能车辆的可通行区域检测,也可为智能车辆的避障和路径规划提供依据。

如图1至图3所示,本实施例提供的道路区域检测方法包括:

s1,设计道路增强数据增强方法,并生成道路数据增强函数roaddateupdate。其中,道路增强数据增强方法具体包括像素值变化和图像扭曲变换。像素值变化具体指的是随机高斯模糊,颜色抖动(包括随机小幅改变亮度、饱和度和对比度的),以及随机剪裁、随机尺寸缩放、随机旋转、随机水平镜像翻转等。图像扭曲变换是对输入的原始图像对应标注的轮廓中随机取出若干轮廓点作为扭曲变形的控制点,进而同时对原始图像和其真值标注二值化图像进行小幅的扭曲图像变换,改变道路原有的几何形状。效果示意图如图2所示,图2中的“数据增强”的左侧为原始图像和其真值标注二值化图像,图2中的“数据增强”的右侧为数据增强后的原始图像和其真值标注二值化图像。道路数据增强函数roaddateupdate包括深度学习中数据增强常采用的图像剪裁(每个输入样本是将1242×375像素大小的原始图像随机剪裁为w=800,h=375像素大小的图像块),随机高斯模糊,颜色抖动(包括随机小幅改变亮度、饱和度和对比度的),以及随机尺寸缩放,随机旋转,随机水平镜像翻转一系列的图像处理函数。

s2,采用s1生成的所述道路数据增强函数,输入训练样本,输出增强道路数据,所述增强道路数据包括大小相同的所述训练样本和增强后的样本。其中,所述训练样本从道路检测数据集的训练数据集中获取得到,所述训练样本包括原始道路rgb图像(如图2中的上部分图像)和与该原始道路rgb图像相对应的真值标注二值化图像(如图2中的下部分图像)。“大小”指的是图像的高h和宽w。“大小相同”指的是所述训练样本的高h和宽w与增强后的样本的高h和宽w相同。

s3,设计并训练生成特征编码网络模型roadcodenet,利用s2得到的所述增强道路数据,通过所述特征编码网络模型,输出编码特征图。

s4,设计并训练生成多任务解码网络模型roaddecodenet,所述多任务解码网络模型包括道路分割解码模块和道路类型分类解码模块,其中,所述道路分割解码模块对应的优化损失函数为道路分割损失函数lseg(θseg);所述道路类型分类解码模块对应的优化损失函数为道路类型分类损失函数lcls(θcls),组成总的损失函数l(θ);采用所述道路分割解码模块,通过输入s3得到的所述编码特征图,能够输出道路分割结果;采用所述道路类型分类解码模块,通过输入s3得到的所述编码特征图,能够输出道路类型分类结果。

在一个实施例中,s2中的所述道路数据增强函数对所述训练样本的处理过程包括:

根据所述训练样本,在所述真值标注二值化图像的轮廓中,随机取出若干轮廓点作为扭曲变形的控制点,对所述原始道路rgb图像和其对应的真值标注二值化图像进行小幅扭曲图像变换,改变道路原有的几何形状。本步骤提供的数据增强方法能够扩充道路的几何形状,平衡训练数据集中直道和弯道场景的数量,进而提升训练样本的丰富程度,提高模型的泛化能力。

在一个实施例中,如图4所示,s3中的特征编码网络模型的设计过程包括:

s31,采用带有混合空洞卷积(hdc)的全卷积深度残差网络resnet作为共享的编码网络,用于原始图像特征的提取。其编码网络包括5个卷积层conv和1个最大池化层,conv_i表示网络中的第i阶段卷积,原始图像输入到conv_1,并先后依序通过所述最大池化层、conv_2、conv_3和conv_4,并经由conv_5后输出。conv_1将原始的7×7的卷积核改为3层连续的3×3的卷积核。conv_2、conv_3分别含有3个和4个resnet中普通的瓶颈模块。conv_4中的6个瓶颈模块采用空洞大小分别为1、2、5、9、2和2的混合空洞卷积核。conv_5中的3个瓶颈模块采用空洞大小分别为5、9和17的混合空洞卷积核。

s3中的特征编码网络模型的训练生成过程包括:

s32,采用s31设计好的所述特征编码网络模型,输入s2得到的所述增强道路数据,通过所述特征编码网络模型图像特征提取学习,输出所述编码特征图,所述编码特征图表示为h/8×w/8×2048,h/8×w/8×2048中的h/8指的是所述编码特征图的高是所述增强道路数据的高的1/8,w/8指的是所述编码特征图的宽是所述增强道路数据的宽的1/8,2048指的是所述编码特征图的维度。h/8×w/8×2048作为多任务解码网络的输入。

在一个实施例中,s4包括:

s41,设计所述道路分割解码模块,所述道路分割解码模块包括第一1×1卷积通道压缩层,原始图像输入到所述第一1×1卷积通道压缩层,并先后依序通过上采样层、第一1×1卷积分类层和第一softmax层,并经由类别合并后输出。

s42,采用所述道路分割解码模块,通过输入s3得到的所述编码特征图输出道路分割结果,所述道路分割结果包括带有道路和背景两类分割结果的rgb图像,该图像中所有像素点中,道路区域标为第一种颜色,与原始道路区域的颜色相区别,背景区域的颜色保持不变,s42具体包括:

s421,通过所述第一1×1卷积通道压缩层,压缩s32输出的所述h/8×w/8×2048,并输出h/8×w/8×128的多通道特征图。也就是说,通过所述第二1×1卷积通道压缩层压缩2048通道特征图压缩至128通道特征图。

s422,通过所述上采样层利用无参数学习的双线性插值法进行上采样,将所述h/8×w/8×128的多通道特征图采样至s2得到的所述增强道路数据的大小,并输出h×w×128的多通道特征图。

s423,如图3所示,先后依序通过所述第一1×1卷积分类层和第一softmax层,得到道路内部像素pin(白色区域)、道路边缘像素pbd(深灰色区域)、背景内部像素nin(黑色区域)和背景边缘像素nbd(浅灰区域)的概率,并输出h×w×4的多通道特征图。也就是说,道路内部像素pin、道路边缘像素pbd、背景内部像素nin和背景边缘像素nbd的概率之和为1,属于4类中的每一类的概率最大,就确定为该类别。例如,属于各类别的概率是:背景边缘0.2,背景内部0.1,道路边缘0.3,道路内部0.4,说明该像素点类别为道路内部。

s424,合并边缘像素和内部像素的类别,背景边缘和背景内部均属于背景,道路边缘和道路内部均属于道路,从而得到所述道路分割结果,表示为h×w×2的二通道特征图,即道路分割像素类别得分图,该图是高为h宽为w的二值化图像。

在一个实施例中,s4中的所述道路分割损失函数lseg(θseg)表示为式(1):

lseg(θseg)=lin(θseg)+αlbd(θseg)(1)

式(1)中,θseg表示多任务解码网络模型的学习参数,其用来估量模型的预测值与真实值的不一致程度,以求预测值;θseg是在道路分割解码模块训练中自学习获取,即通过自动调整θseg参数让模型输出的预测值与真实值尽可能接近;lin(θseg)表示道路内部和边缘内部的损失函数项,lbd(θseg)表示道路边缘和背景边缘的损失函数项,如下式(2):

式(2)中,gtx,y表示所述原始道路rgb图像中像素(x,y)的真值标签,prx,y(θseg)表示在参数θseg下,像素(x,y)的预测标签,损失函数采用交叉熵损失函数,如式(3)所示:

式(3)中,n表示训练样本的数量,c表示类别个数(针对道路分割,是道路和非道路两种类别),表示像素i的真实类别j,yij表示道路分割解码模块前向推导出的i属于该类的概率。

在模型训练时,令边缘像素损失权重α>1,则表示道路分割的网络模型更聚焦于边缘区域的分类,以此缓解道路边缘区域分类困难问题。

在一个实施例中,s4还包括:

s43,采用所述道路分割损失函数lseg(θseg)训练生成所述道路分割解码模块的过程包括:

s431,根据道路和非道路(非道路类别也称背景、障碍物)两类,将s2中的所述增强道路数据中的所有像素二划分,生成二值化标注的图像,比如道路区域为1,非道路区域为0。

s432,将s431输出的图像中的像素进行四划分,获取二划分的二值标注图像中的连通域边界;其中:对于连通域边界上的每一个像素点,以其为圆心,半径为k的圆包含的像素中,将所述原始道路rgb图像中像素(x,y)的真值标签为道路类别的像素变更为道路边缘像素pbd类别,原始标注为背景类别的像素变更为背景边缘像素nbd类别;对于其它未包含在任意圆内的像素,将原始标注中的道路类别变更为道路内部像素pin,原始标注中的背景类别变更为背景内部像素nin。

本实施例通过重新划分输入训练样本中的原始的道路rgb图像的道路像素类别,增加道路边缘像素类别损失函数权重和采样频率,将道路区域增强数据进行像素点的四划分,优化道路边缘的分割效果,提供给下一单元训练多任务解码网络模型单元中的道路分割任务学习。

在一个实施例中,如图5所示,s4还包括:

s44,设计道路类型分类解码模块,所述道路类型分类解码模块包括第二1×1卷积通道压缩层,原始图像输入到所述第二1×1卷积通道压缩层,并先后依序通过下采样层、全局平均池化层和第二1×1卷积分类层,并经由第二softmax层后输出。

s45,采用所述道路类型分类解码模块,通过输入s3得到的所述编码特征图输出道路类型分类结果,所述道路类型分类结果为每张s2中的所述训练样本属于三种城市道路类型{uu,um,umm}中某一道路类型的概率,表示为1×1×3的向量,uu为城市无车道线,um为城市单车道,umm为城市多车道,s45其具体包括:

s451,通过所述第二1×1卷积通道压缩层,压缩s32输出的所述h/8×w/8×2048,并输出h/8×w/8×64的多通道特征图。也就是说,通过所述第二1×1卷积通道压缩层,压缩s32输出的2048通道特征图压缩至64通道。

s452,通过下采样层利用双线性下采样,降低s451压缩后的编码特征图的尺寸,并输出h/32×w/32×64的多通道特征图。也就是说,将s451压缩后的编码特征图的尺寸降为原图的1/32。

s453,采用所述全局平均池化层,输入h/32×w/32×64的多通道特征图,输出用于分类的1×1×64的列向量形式的特征图。一个h/32×w/32的特征图全局平均池化后得到一个值,该值为一个特征图所有像素值的平均值。

s454,将s453输出的1×1×64的列向量形式的特征图先后依序通过第二1×1卷积分类层和第二softmax层,输出所述道路类型分类结果。

在一个实施例中,s4中的所述道路类型分类损失函数lcls(θcls)采用lseg函数中使用的交叉熵损失函数(3),多任务解码模型的总体损失函数表示为式(4):

l(θ)=lseg(θseg)+βlcls(θcls)(4)

式(4)中,θ={θseg,θcls}表示多任务网络模型的总体参数;权重系数β用于调整道路分割和道路场景分类两个子任务的损失权重,l(θ)用于学习各类网络层的权值w和偏值b。

s4还包括:

s46,采用所述道路类型分类损失函数lcls(θcls)训练生成所述道路类型分类解码模块的过程。

当然,需要说明的是,上述道路数据增强函数roaddateupdate、道路分割损失函数lseg(θseg)和道路类型分类损失函数lcls(θcls)以及特征编码网络模型roadcodenet和多任务解码网络模型roaddecodenet,均需要进行测试,以判断各函数和模型的性能好坏。鉴于此,本实施例提供的道路区域检测方法还包括:

s5,模型测试:采用道路数据增强函数roaddateupdate对输入的测试样本进行数据增强,然后利用特征编码网络模型roadcodenet对样本数据提取编码特征,接着结合分割损失函数lseg,使用多任务解码网络模型roaddecodenet进行道路分割和道路类型分类两个任务,并输出最终的道路区域检测结果,包括道路分割和道路类型结果。

其中,需要指出的是,测试样本可以有两个来源:一个是训练样本中,单独挑选出来作为验证集,以同时判断训练模型的收敛情况的49张训练样本,同时提供了包括原始的道路rgb图像和对应的真值标注二值化图像两部分,可以在本地利用国际通用的标准评价指标--平均精确率(averageprecision,ap)和最大f1值(maximumf1-measure)等,进行整个模型测试性能的评价;另一个是数据库kitti_road的测试数据集,该测试数据集只提供原始的道路rgb图像,需要利用官方提供的在线服务器进行结果提交和评价。另外,基于像素值变化和几何变形的道路数据增强方法,模型学习时使用,在模型测试中可以不采用,对实际道路分割性能影响不大时,需要采用基于像素值变化和几何变形的道路数据增强方法来扩展训练数据的多样性;而在测试阶段,可以不用采用数据增强方法。

测试时,所述道路分割损失函数lseg(θseg)中的边缘像素权重系数α和多任务解码模型的总体损失函数的权重系数β由多组试验确定。具体地,首先通过改变边缘像素权重系数α寻找较优的α*,然后使用固定的α*和变化的权重系数β寻找较优的β*,最终采用α*=2,β*=0.25的权重系数设置。

最后需要指出的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。本领域的普通技术人员应当理解:可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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