车道线检测方法、设备和计算机可读存储介质与流程

文档序号:16856576发布日期:2019-02-12 23:23阅读:138来源:国知局
车道线检测方法、设备和计算机可读存储介质与流程

本发明涉及数字图像处理和模式识别领域,更具体地说,涉及基于深度学习和分段拟合模型的车道线检测方法和设备。



背景技术:

在自然场景中,精确的车道线检测能够帮助高精度地图关键交通要素的生成,是自动驾驶和辅助驾驶的主要依赖技术。通过道路的车道检测,许多应用将是可行和容易的,例如车道离开警告,自适应巡航控制和自动紧急制动。

在现有技术中,一种已知的车道线检测方法包括:基于二维滤波,从图像中识别车道线的图像区域;利用识别得到的图像区域,构造模型训练数据;利用所述模型训练数据,训练基于卷积神经网络的车道线识别模型。然而,在该方法中,车道线的边缘特征主要由传统的滤波方法检测。卷积神经网络主要是验证车道区域。并且,在该方法中,车道模型可以处理直线,但不适合曲线。

另一种已知的车道线分割方法包括:采集车道线图像;利用卷积神经网络对所述车道线图像进行处理,得到粗分割结果;根据所述粗分割结果和所述车道线图像,构建图割模型对所述车道线图像进行细分,确定车道线区域。在该方法中,卷积神经网络主要用于定位车道线区域,仍然需要手工设计的特征。并且,在该方法中,车道模型可以处理直线,但不适合曲线。

然而,在自然场景中,曲线的车道线是特别常见的。因此,仅能够处理作为直线的车道线的检测方法显然无法适应自动驾驶和辅助驾驶中普遍场景的要求。



技术实现要素:

鉴于以上情形,期望提供能够有效地检测直线和曲线的车道线检测方法和设备。

根据本发明的一个方面,提供了一种车道线检测方法,包括:

训练用于检测车道线小块的神经网络;

将采集图像输入至完成训练的神经网络,并通过所述神经网络检测所述采集图像中的多个车道线小块,其中在每个车道线小块中包括一部分车道线;

基于检测到的所述车道线小块,提取对应的车道线特征点;以及

基于分段拟合模型,对提取出的车道线特征点进行线拟合,以获得车道线。

优选地,在根据本发明实施例的车道线检测方法中,训练用于检测车道线小块的神经网络的步骤可以包括:

输入训练图像以及在所述训练图像中人工标注出车道线小块的图像作为训练数据;以及

基于所述训练数据执行所述神经网络的端到端训练。

优选地,在根据本发明实施例的车道线检测方法中,基于分段拟合模型,对提取出的车道线特征点进行线拟合的步骤可以包括:

对提取的车道线特征点进行合并,以获得至少一个车道线特征点组,其中每一个车道线特征点组对应于一条车道线;

针对每一个车道线特征点组,将其中的多个车道线特征点分割为直线部分和曲线部分;以及

针对所述直线部分中的各个点确定拟合直线,并针对所述曲线部分中的各个点确定拟合曲线。

优选地,在根据本发明实施例的车道线检测方法中,针对每一个车道线特征点组,将其中的多个车道线特征点分割为直线部分和曲线部分的步骤可以包括:

针对每一个车道线特征点组,确定使如下成本函数最小的linenum值,并基于该linenum值将该组中的车道线特征点分割为直线部分和曲线部分,

其中linenum为直线部分所包含的点数,δdi为第i个点与针对该linenum个点的拟合直线的距离,λ为正则化参数。

优选地,在根据本发明实施例的车道线检测方法中,以totalnum表示该组中车道线特征点的总数,并且确定使如下成本函数最小的linenum值的步骤可以包括:

第一次假设1个点属于曲线部分且totalnum-1个点属于直线部分,确定针对该totalnum-1个点的拟合直线,并计算所述成本函数的第一值;

第二次假设2个点属于曲线部分且totalnum-2个点属于直线部分,确定针对该totalnum-2个点的拟合直线,计算所述成本函数的第二值;

如此重复直至遍历所有的点数;

确定所述成本函数的最小值,并将当所述成本函数取得最小值对应的直线部分的点数确定为linenum。

根据本发明的另一方面,提供了一种车道线检测设备,包括:

训练装置,用于训练基于深度学习的神经网络,用于检测车道线小块;

车道线小块检测装置,用于基于完成训练的神经网络,检测采集图像中的多个车道线小块,其中在每个车道线小块中包括一部分车道线;

特征点提取装置,用于基于检测到的所述车道线小块,提取对应的车道线特征点;以及

拟合装置,用于基于分段拟合模型,对提取出的车道线特征点进行线拟合,以获得车道线。

优选地,在根据本发明实施例的车道线检测设备中,所述训练装置可以包括:

接收单元,用于接收训练图像以及在所述训练图像中人工标注出车道线小块的图像作为训练数据的输入;以及

训练单元,用于基于所述训练数据执行所述神经网络的端到端训练。

优选地,在根据本发明实施例的车道线检测设备中,所述拟合装置可以包括:

合并单元,用于对提取的车道线特征点进行合并,以获得至少一个车道线特征点组,其中每一个车道线特征点组对应于一条车道线;

分割单元,用于针对每一个车道线特征点组,将其中的多个车道线特征点分割为直线部分和曲线部分;以及

拟合单元,用于针对所述直线部分中的各个点确定拟合直线,并针对所述曲线部分中的各个点确定拟合曲线。

优选地,在根据本发明实施例的车道线检测设备中,所述分割单元可以被配置为:

针对每一个车道线特征点组,确定使如下成本函数最小的linenum值,并基于该linenum值将该组中的车道线特征点分割为直线部分和曲线部分,

其中linenum为直线部分所包含的点数,δdi为第i个点与针对该linenum个点的拟合直线的距离,λ为正则化参数。

优选地,在根据本发明实施例的车道线检测设备中,所述分割单元进一步被配置为:

第一次假设1个点属于曲线部分且totalnum-1个点属于直线部分,确定针对该totalnum-1个点的拟合直线,并计算所述成本函数的第一值;

第二次假设2个点属于曲线部分且totalnum-2个点属于直线部分,确定针对该totalnum-2个点的拟合直线,计算所述成本函数的第二值;

如此重复直至遍历所有的点数;

确定所述成本函数的最小值,并将当所述成本函数取得最小值对应的直线部分的点数确定为linenum。

根据本发明的又一方面,提供了一种车道线检测设备,包括:

处理器;以及

存储器,配置为存储计算机程序指令;

其中,在所述计算机程序指令被所述处理器运行时,执行如上文中所述的车道线检测方法。

根据本发明的再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,其中,所述计算机程序指令被处理器运行时,使得所述处理器执行如上文中所述的车道线检测方法。

在根据本发明实施例的车道线检测方法和设备中,基于神经网络检测固定尺寸的包含一部分车道线的车道线小块,提取车道线小块的中心点作为车道线特征点,将对应于同一条车道线的车道线特征点分割为直线部分和曲线部分,并基于灵活的分段拟合模型来分别拟合直线和曲线,从而能够适应不同种类的车道线检测。

附图说明

图1是图示根据本发明实施例的车道线检测方法的概述的流程图;

图2是示出了神经网络检测到的多个车道线小块的示例的示意图;

图3是示出了基于图2中所示的车道线小块提取的车道线特征点的示例的示意图;

图4是示出了根据本发明实施例的车道线检测方法中车道线拟合算法的流程的流程图;

图5是示出了根据本发明实施例的车道线检测设备的配置的功能性框图;

图6是示出了根据本发明实施例的车道线检测设备中拟合装置的具体配置的功能性框图;

图7是图示根据本公开的实施例的车道线检测设备的硬件框图;以及

图8是图示根据本公开的实施例的计算机可读存储介质的示意图。

具体实施方式

下面将参照附图对本发明的各个优选的实施方式进行描述。提供以下参照附图的描述,以帮助对由权利要求及其等价物所限定的本发明的示例实施方式的理解。其包括帮助理解的各种具体细节,但它们只能被看作是示例性的。因此,本领域技术人员将认识到,可对这里描述的实施方式进行各种改变和修改,而不脱离本发明的范围和精神。而且,为了使说明书更加清楚简洁,将省略对本领域熟知功能和构造的详细描述。

首先,将参照图1描述根据本发明实施例的车道线检测方法的概述。如图1所示,根据本发明实施例的车道线检测方法包括如下步骤。

首先,在步骤s101,训练用于检测车道线小块的神经网络。这里所采用的神经网络可以是现有技术中能够进行目标检测的任意一种神经网络。例如,所述神经网络可以是cnn(卷积神经网络)。卷积神经网络是一种基于深度学习的机器学习模型,能够使用监督式的特征学习和分层特征提取高效算法来替代手工获取特征。在将基于深度学习的卷积神经网络应用于本发明的情况下,可以采用rcnn(region-cnn)、fastrcnn、fasterrcnn模型。当然,本发明并不仅限于此,任何其他类型的神经网络,如rnn(循环神经网络)、dnn(深度神经网络)等也可以类似地应用于本发明,且应理解为包括本发明的范围内。

接下来,在步骤s102,将采集图像输入至完成训练的神经网络,并通过所述神经网络检测所述采集图像中的多个车道线小块。在本发明中,通过所述神经网络检测的车道线小块并不是包含整条车道线的车道线区域。图2是示出了所述神经网络检测到的多个车道线小块的示意图。如图2所示,在每个车道线小块中仅包括一部分车道线。

一般而言,基于神经网络的目标检测的算法要检测不同尺寸、不同大小的物体。然而,在本发明中,神经网络检测的是切块的车道线,因此可以根据训练样本的切块大小,只检测这个大小尺寸的车道线小块。可以按照需要设定检测框的特定参数,比如长宽比为1比0.8到0.8比1之间,长度和宽度根据摄像头摆放位置以及成像特点调整大小,使得检测框能覆盖一小块车道线。

然后,在步骤s103,基于在步骤s102中检测到的所述车道线小块,提取对应的车道线特征点。图3是示出了基于图2中所示的车道线小块提取的车道线特征点的示意图。具体来说,在获取所述车道线小块之后,该小块的中心点可以看作是车道线特征点。

最后,在步骤s104,基于分段拟合模型,对在步骤s103中提取出的车道线特征点进行线拟合,以获得车道线。

在根据本发明实施例的车道线检测方法中,通过神经网络检测分别包含一部分车道线的多个车道线小块,提取对应的车道线特征点,然后通过使用灵活的分段拟合模型来分别拟合车道线的直线部分和曲线部分,以适应不同种类的车道点,从而可以应用于需要线路模型的车辆的任何视觉应用,如车道检测。

用于检测车道线小块的神经网络执行离线训练并进行在线预测。在训练所述神经网络时,需要向所述神经网络提供输入和输出已经确定的训练数据,通过梯度下降算法自动调节参数,获得输入到输出的映射关系,进而完成训练。具体来讲,步骤s101中的训练用于检测车道线小块的神经网络的步骤进一步包括:输入训练图像以及在所述训练图像中人工标注出车道线小块的图像作为训练数据;以及基于所述训练数据执行所述神经网络的端到端训练。所谓端到端训练,是指输入端到输出端的训练。由于其训练步骤可以概括为信号-特征-值,从而不存在人工挑选特征的问题。

在训练完成后,该神经网络能够进行在线预测,即:当向其输入采集图像时,该网络能够预测出如上文中所述的固定尺寸的多个车道线小块。

在下文中,将参照图4详细描述根据本发明实施例的车道线检测方法中车道线拟合算法的流程。

如图4所示,图1中所示的步骤s04进一步包括如下步骤。

首先,在步骤s401,对提取的车道线特征点进行合并,以获得至少一个车道线特征点组,其中每一个车道线特征点组对应于一条车道线。可以理解,在自然场景中所采集的图像可能包含多条车道线。那么,经上文中所述的特征点提取步骤提取出的特征点将分别对应不同的车道线。所谓车道线特征点合并,就是估计出哪些车道线特征点点属于哪条车道线。该步骤的处理可以采用现有技术中任意估计方法,为了避免冗余起见,这里不再赘述。

接下来,在步骤s402,针对一个车道线特征点组,将其中的多个车道线特征点分割为直线部分和曲线部分。

例如,可以设计一个成本函数,通过使得所述成本函数最小化来确定如何分割所述一个车道线特征点组。

具体地,所述成本函数可以设计为如下表达式:

其中linenum为直线部分所包含的点数;

δdi为第i个点与针对该linenum个点的拟合直线的距离;这里,拟合的概念是:如果有一些数据点,它们是离散的,要从中找到这些点的规律,就做一条直线,穿过尽可能多的点,使得这些数据和直线上所的估计的点的方差最小。找到的这条直线就是拟合直线,它代表了数据之间的线性规律。

λ为正则化参数,并且可以根据实际场景调节。

针对每一个车道线特征点组,确定使如下成本函数最小的linenum值,并基于该linenum值将该组中的车道线特征点分割为直线部分和曲线部分。

接下来,将具体描述如何确定使所述成本函数最小的linenum值。

为了便于描述,以totalnum表示该组中车道线特征点的总数。该totalnum个点按照预定次序(例如,从上至下)排列。通过按照所述预定次序逐个选择属于曲线部分的点和属于直线部分的点的分割方式来获得成本函数的值,并选择最小的成本函数值所对应的分割方式。具体来讲,通过如下步骤来确定使所述成本函数最小的linenum值。

首先,第一次假设1个点属于曲线部分且totalnum-1个点属于直线部分,确定针对该totalnum-1个点的拟合直线,并计算所述成本函数的第一值。

然后,第二次假设2个点属于曲线部分且totalnum-2个点属于直线部分,确定针对该totalnum-2个点的拟合直线,计算所述成本函数的第二值。

……

最后,第totalnum-2次假设totalnum-2个点属于曲线部分且2个点属于直线部分,确定针对该2个点的拟合直线,计算所述成本函数的第totalnum-2值。

也就是说,如此重复直至遍历所有的点数。

将上述各种假设之下计算出的成本函数进行比较,确定所述成本函数的最小值,并将当所述成本函数取得最小值对应的直线部分的点数确定为linenum。例如,如果在第n次假设n个点属于曲线部分且totalnum-n个点属于直线部分时计算出的成本函数最小,那么linenum=totalnum-n。

当然,本领域的技术人员能够理解,以上所描述的成本函数以及确定使成本函数最小的linenum的方式仅为示例。任何其他的成本函数和确定使成本函数最小的linenum的方式(例如,不同的遍历方式)都可以类似地应用于本发明,且应该包括在本发明的范围内。

然后,在步骤s403,针对所述直线部分中的各个点确定拟合直线,并针对所述曲线部分中的各个点确定拟合曲线。

接下来,在步骤s404,判断是否还有未处理的车道线特征点组。如果在步骤s404判断为是,则处理返回到步骤s402,以对未处理的车道线特征点组重复类似的处理。另一方面,如果在步骤s404判断为否,即:已经完成了对所有车道线特征点组的分段拟合处理,则处理结束。

也就是说,在根据本发明实施例的车道线检测方法中,分别针对每一个车道线特征点组(对应于每一条完整的车道线),单独地确定如何分割直线部分和曲线部分。即,每一个车道线特征点组的分割方式可能都不相同。在针对直线部分和曲线部分的分段拟合处理之后,能够输出采集图像中包含的完整的车道线。

在上文中,已经参照图1到图4详细描述了根据本发明实施例的车道线检测方法。接下来,将参照图5描述根据本发明实施例的车道线检测设备。

如图5所示,车道线检测设备包括:训练装置501、车道线小块检测装置502、特征点提取装置503和拟合装置504。

训练装置501训练用于检测车道线小块的神经网络。如上文中所述,这里所采用的神经网络可以是现有技术中能够进行目标检测的任意一种神经网络。

车道线小块检测装置502用于基于完成训练的神经网络,检测采集图像中的多个车道线小块,其中在每个车道线小块中包括一部分车道线。在本发明中,通过所述神经网络检测的车道线小块并不是包含整条车道线的车道线区域。如图2所示,在每个车道线小块中仅包括一部分车道线。

特征点提取装置503用于基于检测到的所述车道线小块,提取对应的车道线特征点。如图3所示,在获取所述车道线小块之后,该小块的中心点可以看作是车道线特征点。

拟合装置504用于基于分段拟合模型,对提取出的车道线特征点进行线拟合,以获得车道线。

在根据本发明实施例的车道线检测设备中,通过神经网络检测分别包含一部分车道线的多个车道线小块,提取对应的车道线特征点,然后通过使用灵活的分段拟合模型来分别拟合车道线的直线部分和曲线部分,以适应不同种类的车道点,从而可以应用于需要线路模型的车辆的任何视觉应用,如车道检测。

用于检测车道线小块的神经网络执行离线训练并进行在线预测。在训练所述神经网络时,需要向所述神经网络提供输入和输出已经确定的训练数据,通过梯度下降算法自动调节参数,获得输入到输出的映射关系,进而完成训练。具体来讲,所述训练装置501包括:接收单元(图中未示出),用于接收训练图像以及在所述训练图像中人工标注出车道线小块的图像作为训练数据的输入;以及训练单元(图中未示出),用于基于所述训练数据执行所述神经网络的端到端训练。

在通过所述训练装置501的训练完成后,该神经网络能够进行在线预测,即:当向其输入采集图像时,该网络能够预测出如上文中所述的固定尺寸的多个车道线小块。

在下文中,将参照图6详细描述根据本发明实施例的车道线检测设备中拟合装置的具体配置。

如图6所示,所述拟合装置504包括:合并单元601、分割单元602以及拟合单元603。

合并单元601用于对提取的车道线特征点进行合并,以获得至少一个车道线特征点组,其中每一个车道线特征点组对应于一条车道线。如上文中所述,在自然场景中所采集的图像可能包含多条车道线。那么,经上文中所述的特征点提取装置503提取出的特征点将分别对应不同的车道线。所谓车道线特征点合并,就是估计出哪些车道线特征点点属于哪条车道线。

分割单元602用于针对每一个车道线特征点组,将其中的多个车道线特征点分割为直线部分和曲线部分。

例如,可以设计一个成本函数,所述分割单元602通过使得所述成本函数最小化来确定如何分割所述一个车道线特征点组。

具体地,所述成本函数可以设计为如下表达式:

其中linenum为直线部分所包含的点数;

δdi为第i个点与针对该linenum个点的拟合直线的距离;这里,拟合的概念是:如果有一些数据点,它们是离散的,要从中找到这些点的规律,就做一条直线,穿过尽可能多的点,使得这些数据和直线上所的估计的点的方差最小。找到的这条直线就是拟合直线,它代表了数据之间的线性规律。

λ为正则化参数,并且可以根据实际场景调节。

针对每一个车道线特征点组,所述分割单元602确定使如下成本函数最小的linenum值,并基于该linenum值将该组中的车道线特征点分割为直线部分和曲线部分。

接下来,将具体描述如何确定使所述成本函数最小的linenum值。

为了便于描述,以totalnum表示该组中车道线特征点的总数。该totalnum个点按照预定次序(例如,从上至下)排列。通过按照所述预定次序逐个选择属于曲线部分的点和属于直线部分的点的分割方式来获得成本函数的值,并选择最小的成本函数值所对应的分割方式。具体来讲,所述分割单元602通过如下步骤来确定使所述成本函数最小的linenum值。

首先,第一次假设1个点属于曲线部分且totalnum-1个点属于直线部分,确定针对该totalnum-1个点的拟合直线,并计算所述成本函数的第一值。

然后,第二次假设2个点属于曲线部分且totalnum-2个点属于直线部分,确定针对该totalnum-2个点的拟合直线,计算所述成本函数的第二值。

……

最后,第totalnum-2次假设totalnum-2个点属于曲线部分且2个点属于直线部分,确定针对该2个点的拟合直线,计算所述成本函数的第

也就是说,如此重复直至遍历所有的点数。

将上述各种假设之下计算出的成本函数进行比较,确定所述成本函数的最小值,并将当所述成本函数取得最小值对应的直线部分的点数确定为linenum。例如,如果在第n次假设n个点属于曲线部分且totalnum-n个点属于直线部分时计算出的成本函数最小,那么linenum=totalnum-n。

当然,本领域的技术人员能够理解,以上所描述的成本函数以及确定使成本函数最小的linenum的方式仅为示例。任何其他的成本函数和确定使成本函数最小的linenum的方式(例如,不同的遍历方式)都可以类似地应用于本发明,且应该包括在本发明的范围内。

在根据本发明实施例的车道线检测设备中,分割单元602分别针对每一个车道线特征点组(对应于每一条完整的车道线),单独地确定如何分割直线部分和曲线部分。即,每一个车道线特征点组的分割方式可能都不相同。

拟合单元603用于针对所述直线部分中的各个点确定拟合直线,并针对所述曲线部分中的各个点确定拟合曲线。在针对直线部分和曲线部分的分段拟合处理之后,能够输出采集图像中包含的完整的车道线。

图7是图示根据本公开的实施例的车道线检测设备的硬件框图。如图7所示,根据本公开的实施例的车道线检测设备包括处理器701和存储器702。所述存储器702配置为存储计算机程序指令,所述计算机程序指令在被处理器701运行时执行如上参照以上附图描述的车道线检测方法。

图8是图示根据本公开的实施例的计算机可读存储介质的示意图。如图8所示,根据本公开实施例的计算机可读存储介质800其上存储有计算机程序指令801。当所述计算机程序指令801由处理器运行时,执行参照以上附图描述的根据本公开实施例的车道线检测方法。

迄今为止,已经参照图1到图8详细描述了根据本发明实施例的车道线检测方法和设备。在根据本发明实施例的车道线检测方法和设备中,基于神经网络检测固定尺寸的包含一部分车道线的车道线小块,提取车道线小块的中心点作为车道线特征点,将对应于同一条车道线的车道线特征点分割为直线部分和曲线部分,并基于灵活的分段拟合模型来分别拟合直线和曲线,从而能够适应不同种类的车道线检测。

需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过软件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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