当前位置: 首页 > 专利查询>中山大学专利>正文

基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法技术

技术编号:29403030 阅读:14 留言:0更新日期:2021-07-23 22:41
本发明专利技术公开ResNeSt和自注意力蒸馏的智能车辆车道线检测方法,该方法基于深度学习,以卷积神经网络和编码‑解码框架为核心,设计了一个车道线检测网络;使用ResNeSt作为主干网络,并采用自注意力蒸馏技术,以增强网络的特征提取能力;利用传感器获取的图像作为输入,对输入图像进行预处理,以提高网络的速度和精度;网络设计了两个分支,利用二进制分支实现车道线的语义分割,利用嵌入分支实现车道线的实例分割,获取每一条车道线的实例。本发明专利技术的方法可在不同的因素影响下,提高车道线检测的准确性和鲁棒性,为驾驶员辅助系统和智能车辆系统提供更准确的感知信息。

【技术实现步骤摘要】
基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法
本专利技术涉及智能车辆的车道线检测领域,特别是涉及基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法。
技术介绍
随着智能车辆的快速发展,车道线检测在高级辅助驾驶系统和智能驾驶系统中起着至关重要的作用。环境感知是智能车辆系统的基础,是车辆进行后续决策、规划的前提。其中对道路进行感知的车道线检测是环境感知的重要组成部分,可靠的车道线检测能帮助后续的车道偏离和轨迹规划决策做出正确判断,让车辆正确地行驶在车道内,保障行车安全;而效果不佳的车道线检测则可能导致车辆在行驶过程中出现错误判断,影响车辆行驶安全。另一方面,由于车道线标记种类繁多,路况复杂多变,车道线标记固有的细长特征等诸多因素影响,车道线检测算法成为一项具有挑战性的任务。目前的车道线检测方法大致可以分为两类:一类是基于传统的计算机视觉,另一类是基于深度学习的。基于传统视觉的车道线提取方法大多是通过对车道标线的边缘特征、颜色特征和几何特征的分析来提取车道线区域,这种方法在特定场景下可以很好地工作,但是需要手动调整滤波算子,当情况发生较大变化时,这些方法可能存在缺陷,严重影响识别精度;而基于深度学习的车道检测方法可以通过对特征的自动分析和学习来检测车道线,具有较好的鲁棒性,例如公开号为:CN111814623A、公开日为2020/10/23的中国专利:一种基于深度神经网络的车辆车道偏离视觉检测方法,该专利公布的检测方法基于神经网络进行识别,精度较高,但是环境复杂时,不能很好地识别输入的图片,存在较大误差,该神经网络模型存在一定的缺陷,因此,需要设计一种更精确识别的车辆车道线检测方法。
技术实现思路
本专利技术提供一种基于ResNeSt和自注意力蒸馏(SelfAttentionDistillation,SAD)的车道线检测方法。该方法可在不同的照明条件、道路上车辆的遮挡、道路上的其他标记等多种因素影响下,提高车道线检测的准确性和鲁棒性,为驾驶员辅助系统和智能车辆系统提供更准确的感知信息。本专利技术的技术方案如下:基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法,包括以下步骤:S1、对训练图像进行预处理;S2、制作训练集:对每一张图像制作两个标签作为训练集的数据,其中一个作为训练二进制分支的真实标签,另一个作为训练嵌入分支的真实标签;S3、将训练集的图像输入多分支卷积神经网络进行训练:卷积神经网络设有编码-解码结构;编码器对训练数据进行编码,编码器中使用ResNeSt作为主干网络,并设有自注意力蒸馏路径;解码器对编码器输出的特征图进行反卷积,实现上采样和分类;解码器的最后一层,设有两个分支,分别为二进制分支和嵌入分支,利用二进制分支进行语义分割、嵌入分支进行实例分割,两个分支均使用卷积核为1×1的卷积层降低特征映射的维数,作为二进制分支和嵌入分支的输出;计算输出的特征图像与输入的真实标签之间的损失,然后使用梯度下降算法更新神经网络模型的参数,训练直至网络收敛;S4、训练完毕后,将实际的道路图片输入多分支卷积神经网络,得到两个输出,一个是通过二进制分支进行语义分割后的输出,另一个是通过嵌入分支进行实例分割后的输出,之后进行后处理,如下:得到语义分割的结果后,用语义分割的结果制作mask过滤掉嵌入分支输出中属于背景的部分,然后对其进行Meanshift聚类即得到属于不同车道线像素的聚类,获得真正的实例分割的结果;得到实例分割的结果后,在拟合车道过程中,采用如下算法:假设第i条车道的点集为Ai,而Ai中的点坐标为(x,y),则有一系列的x(x1,x2,x3,……,xn)对应于相同的y值,然后对这些x计算平均值得到:由此得到点的坐标为根据这一算法,得到每个车道的点集,最后通过三次样条插值得到最终的车道线检测结果输出。进一步,步骤S3中,编码器和解码器都由五个Block组成,每个Block内包含若干层卷积。进一步,对于编码器,使用ResNeSt作为主干网络,ResNeSt使用拆分注意力,将每个块的特征图沿通道维度分成若干组,每个组再拆分成若干个部分,再把每个部分经过不同的卷积,最后每个组的特征表达是其各个部分特征图的加权组合,权重根据全局信息选择。使用这样的拆分注意力块可以实现跨通道、跨组的特征融合,同时不会带来过多的计算。进一步,步骤S3中,在编码器的Block3和Block4之间、以及Block4和Block5之间添加了两条自注意力蒸馏路径。进一步,自注意力蒸馏的实现是通过从Block输出的特征图中提取注意力图,然后让低层的Block的注意力图学习高层Block的表达。进一步,注意力图的提取实际为寻找一个通道上的映射函数,就是将一个通道数*高*宽的特征图映射为一个单通道的高*宽的特征图,其中映射函数为得到的单通道的特征图就称为注意力图;其中Cm为第m个block输出的特征图的通道数,Hm为第m个block输出的特征图的高,Wm为第m个block输出的特征图的高;映射函数通过计算通道上的值的统计信息来构造,进一步演变为下式:其中,Am为第m个block输出的特征图,Ami为Am在通道维度上的第i层;选择上式来提取注意力图,然后,对提取出的注意力图使用softmax,最后使用最小均值误差计算两个注意力图之间的损失。进一步,对于解码器,解码器也包括5个Block,与编码器各Block的变换一一对应,实现特征映射的解码和上采样。进一步,为了在解码时充分利用全局信息,解码器采用分割网络Unet提出的跳跃连接,它将编码对应层的输出和解码块的输出联合起来进行解码。进一步,步骤S3中,特征图像与输入的真实标签之间的损失主要分三个部分;包括语义分割时的损失、实例分割时的损失、以及进行自注意力蒸馏时的损失;对于语义分割时的损失,采用DiceLoss公式作为损失函数;对于实例分割时的损失,采用pixelembedding的方法实现实例分割:训练后,嵌入分支为每个像素输出一个3维向量,属于同一车道的向量之间的距离很小,不同车道线像素的向量之间的距离很大,所以使用修正后的损失函数,如下式:式中,C表示聚类的个数,即车道线的条数;Nc为聚类C中的像素数量;μc为聚类C中的向量平均值;Xi为第i个像素的嵌入向量;δv为超参数,仅在向量与其聚类中心的距离大于δv时,才计算损失;δd为超参数,仅当聚类中心之间的距离小于δd时,才计算损失;[x]+表示max(0,x);下标A和B表示两个不同的车道线;方差损失Lvar将属于同一条车道线的像素点的嵌入向量拉向这条车道线向量的平均值,即让同一条车道线的像素之间的嵌入向量距离更近,形成一个聚类中心;距离损失Ldist将聚类中心彼此推开,即让不同车道线的像素的向量之间的距离变大;对于进行自注意力蒸馏时的损失,过程如下:在通过自本文档来自技高网
...

【技术保护点】
1.基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法,其特征在于,包括以下步骤:/nS1、对训练图像进行预处理;/nS2、制作训练集:/n对每一张图像制作两个标签作为训练集的数据,其中一个作为训练二进制分支的真实标签,另一个作为训练嵌入分支的真实标签;/nS3、将训练集的图像输入多分支卷积神经网络进行训练:/n卷积神经网络设有编码-解码结构;编码器对训练数据进行编码,编码器中使用ResNeSt作为主干网络,并设有自注意力蒸馏路径;解码器对编码器输出的特征图进行反卷积,实现上采样和分类;解码器的最后一层,设有两个分支,分别为二进制分支和嵌入分支,利用二进制分支进行语义分割、嵌入分支进行实例分割,两个分支均使用卷积核为1×1的卷积层降低特征映射的维数,作为二进制分支和嵌入分支的输出;计算输出的特征图像与输入的真实标签之间的损失,然后使用梯度下降算法更新神经网络模型的参数,训练直至网络收敛;/nS4、训练完毕后,将实际的道路图片输入多分支卷积神经网络,得到两个输出,一个是通过二进制分支进行语义分割后的输出,另一个是通过嵌入分支进行实例分割后的输出,之后进行后处理,如下:/n得到语义分割的结果后,用语义分割的结果制作mask过滤掉嵌入分支输出中属于背景的部分,然后对其进行Meanshift聚类即得到属于不同车道线像素的聚类,获得真正的实例分割的结果;/n得到实例分割的结果后,在拟合车道过程中,采用如下算法:/n假设第i条车道的点集为A...

【技术特征摘要】
1.基于ResNeSt和自注意力蒸馏的智能车辆车道线检测方法,其特征在于,包括以下步骤:
S1、对训练图像进行预处理;
S2、制作训练集:
对每一张图像制作两个标签作为训练集的数据,其中一个作为训练二进制分支的真实标签,另一个作为训练嵌入分支的真实标签;
S3、将训练集的图像输入多分支卷积神经网络进行训练:
卷积神经网络设有编码-解码结构;编码器对训练数据进行编码,编码器中使用ResNeSt作为主干网络,并设有自注意力蒸馏路径;解码器对编码器输出的特征图进行反卷积,实现上采样和分类;解码器的最后一层,设有两个分支,分别为二进制分支和嵌入分支,利用二进制分支进行语义分割、嵌入分支进行实例分割,两个分支均使用卷积核为1×1的卷积层降低特征映射的维数,作为二进制分支和嵌入分支的输出;计算输出的特征图像与输入的真实标签之间的损失,然后使用梯度下降算法更新神经网络模型的参数,训练直至网络收敛;
S4、训练完毕后,将实际的道路图片输入多分支卷积神经网络,得到两个输出,一个是通过二进制分支进行语义分割后的输出,另一个是通过嵌入分支进行实例分割后的输出,之后进行后处理,如下:
得到语义分割的结果后,用语义分割的结果制作mask过滤掉嵌入分支输出中属于背景的部分,然后对其进行Meanshift聚类即得到属于不同车道线像素的聚类,获得真正的实例分割的结果;
得到实例分割的结果后,在拟合车道过程中,采用如下算法:
假设第i条车道的点集为Ai,而Ai中的点坐标为(x,y),则有一系列的x(x1,x2,x3,......,xn)对应于相同的y值,然后对这些x计算平均值得到:



由此得到点的坐标为根据这一算法,得到每个车道的点集,最后通过三次样条插值得到最终的车道线检测结果输出。


2.根据权利要求1所述的智能车辆车道线检测方法,其特征在于,步骤S3中,编码器和解码器都由五个Block组成,每个Block内包含若干层卷积。


3.根据权利要求2所述的智能车辆车道线检测方法,其特征在于,对于编码器,使用ResNeSt作为主干网络,ResNeSt使用拆分注意力,将每个块的特征图沿通道维度分成若干组,每个组再拆分成若干个部分,再把每个部分经过不同的卷积,最后每个组的特征表达是其各个部分特征图的加权组合,权重根据全局信息选择。


4.根据权利要求2所述的智能车辆车道线检测方法,其特征在于,步骤S3中,在编码器的Block3和Block4之间、以及Block4和Block5之间添加了两条自注意力蒸馏路径。


5.根据权利要求4所述的智能车辆车道线检测方法,其特征在于,自注意力蒸馏的实现是通过从Block输出的特征图中提取注意力图,然后让低层的Block的注意力图学习高层Block的表达。


6.根据权利要求5所述的智能车辆车道线检测方法,其特征在于,注意力图的提取实际为寻找一个通道上的映射函数,就是将一个通道数*高*宽的特征图映射为一个单通道的高*宽的特征图,其中映射函数为得到的单通道的特征图就称为注意力图;其中Cm为第m个block输出的特征图...

【专利技术属性】
技术研发人员:张荣辉吴月颖
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1