CN115187952A - 一种车道线检测方法、装置、电子设备及存储介质 - Google Patents

一种车道线检测方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115187952A
CN115187952A CN202110358313.4A CN202110358313A CN115187952A CN 115187952 A CN115187952 A CN 115187952A CN 202110358313 A CN202110358313 A CN 202110358313A CN 115187952 A CN115187952 A CN 115187952A
Authority
CN
China
Prior art keywords
point
lane line
network model
trend information
initial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110358313.4A
Other languages
English (en)
Inventor
沈振伟
黄泽昊
王乃岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Tusimple Technology Co Ltd
Original Assignee
Beijing Tusimple Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Tusimple Technology Co Ltd filed Critical Beijing Tusimple Technology Co Ltd
Priority to CN202110358313.4A priority Critical patent/CN115187952A/zh
Priority to AU2022201649A priority patent/AU2022201649A1/en
Priority to JP2022043314A priority patent/JP2022159023A/ja
Priority to EP22164920.5A priority patent/EP4083943A1/en
Priority to US17/657,611 priority patent/US20220319196A1/en
Publication of CN115187952A publication Critical patent/CN115187952A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30256Lane; Road marking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

本申请涉及一种车道线检测方法、装置、电子设备及存储介质,属于自动驾驶技术领域。该车道线检测方法包括:获取待检测的图像;确定图像中的初始点集,初始点集在所述图像的车道线上;提取初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息;以及根据走势信息生成包含初始点集的目标车道线。本申请确定道路图像中车道线上的初始点集,采用网络模型对初始点的位置特征进行处理,即可得到车道线的走势信息,之后即可根据该走势信息快速生成道路图像的完整车道线。

Description

一种车道线检测方法、装置、电子设备及存储介质
技术领域
本申请属于自动驾驶技术领域,具体涉及一种车道线检测方法、装置、电子设备及存储介质。
背景技术
随着汽车的发展,越来越多的人工智能技术被应用到自动驾驶技术中,车道线检测作为自动驾驶技术中一个重要的环节。然而,传感器采集的道路图像中,车道线延伸方向可能有遮挡物,使得车道线可能被遮挡,导致无法判断该遮挡物之下是否有车道线。因此,需要对被遮挡的车道线的位置进行预估,得到完整的车道线。
目前针对有遮挡情况的车道线检测大多是针对多幅图像进行处理,或者需要结合深度图以及相机位姿来进行预测。采用多幅图像进行处理由于数据量大,处理时间长,实时性较差。而结合深度图以及相机位姿的方式,由于需要依赖于深度图以及相机位姿,增加了计算复杂度以及成本。
发明内容
鉴于此,本申请的目的在于提供一种车道线检测方法、装置、电子设备及存储介质,以改善现有车道线检测无法快速准确检测出完整车道线的问题。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供了一种车道线检测方法,包括:获取待检测的图像;确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;提取所述初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息;以及根据所述走势信息生成包含所述初始点集的目标车道线。
本申请实施例中,通过获取图像中的车道线上的初始点集,并从中提取至少一个点的位置特征,采用预先训练的第一网络模型对提取的至少一个点的位置特征进行处理,得到相应车道线的走势信息并根据走势信息生成包含初始点集的目标车道线,通过预测车道的走势信息,从而可以快速检测出完整车道线,解决了现有车道线检测方法在遮挡等情况下无法快速准确检测出完整车道线的问题。
结合第一方面实施例的一种可能的实施方式,每条车道线由纵向相隔预定间距的点表示,其中每个点的所述位置特征包括该点的位置坐标和偏移特征;所述偏移特征为表征该点到下一点的位置关系的高维向量,且根据每个点的位置坐标从预先训练的第二网络模型的中间层中提取。
结合第一方面实施例的一种可能的实施方式,所述第一网络模型在对每个点的位置特征进行处理时:所述第一网络模型的输入为当前点的位置坐标、偏移特征、以及所述第一网络模型在上一次学习到的走势信息;所述第一网络模型的输出为当前点到下一点的坐标偏移量、以及本次学习到的走势信息。
结合第一方面实施例的一种可能的实施方式,所述走势信息为高维向量,且所述第一网络模型在第一次预测时所输入的走势信息为预设的初始值。
结合第一方面实施例的一种可能的实施方式,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线,包括:利用所述第一网络模型对当前点的位置坐标、偏移特征以及所述第一网络模型在上一次学习到的走势信息进行处理,输出从当前点到下一点的坐标偏移量,以及本次学习到的走势信息;根据所述坐标偏移量和当前点的位置坐标确定下一点的位置坐标;以下一点的偏移特征、位置坐标以及所述第一网络模型本次学习到的走势信息为模型输入,输出下一点到再下一个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。
结合第一方面实施例的一种可能的实施方式,根据所述坐标偏移量和当前点的位置坐标确定下一点的位置坐标,包括:若下一点的位置坐标与所述初始点集中的某同一高度点在水平方向上的距离小于等于预定像素,则基于该同一高度点对所述下一点的位置坐标进行修正。
结合第一方面实施例的一种可能的实施方式,所述第一网络模型为每一步参数共享的循环神经网络模型,输入第一网络模型的所述位置坐标为归一化后的坐标。
结合第一方面实施例的一种可能的实施方式,所述图像被划分为m*n的图像格子,所述当前点到下一点的坐标偏移量为当前点所在格子的中心点到下一行格子中车道线中点的坐标偏移量。
结合第一方面实施例的一种可能的实施方式,所述第一网络模型包括第一网络分支和第二网络分支;所述第一网络分支用于从第一方向预测相应车道线的走势信息;所述第二网络分支用于从第二方向预测相应车道线的走势信息;其中,所述第一方向与第二方向的方向相反。
结合第一方面实施例的一种可能的实施方式,所述目标车道线包括线段两侧端点到达图像临界线的车道线;所述预设停止位置包括达到预定迭代次数时的位置或者图像临界线;所述图像临界线包括上临界线、下临界线、左临界线和右临界线中的至少一种。
结合第一方面实施例的一种可能的实施方式,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线,包括:采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息,并根据第一方向的走势信息生成多个点,直至到达第一方向上的预设停止位置;从第一方向的预设停止位置开始,采用所述第一网络模型预测出相应车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置,其中,所述第一方向与第二方向的方向相反。
结合第一方面实施例的一种可能的实施方式,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,包括:采用预先训练的第一网络模型对所述初始点集在第一方向上的至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息;采用预先训练的第一网络模型对所述初始点集在第二方向上的至少一个点的位置特征进行处理,得到相应车道线沿第二方向的走势信息,其中,所述第一方向与第二方向的方向相反。
结合第一方面实施例的一种可能的实施方式,所述方法还包括:获取多条车道线的坐标序列;
提取每条车道线中各点到下一点的坐标偏移量和偏移特征,生成第一训练集;以及利用所述第一训练集对初始的第一网络模型进行训练,得到训练后的模型。
结合第一方面实施例的一种可能的实施方式,所述方法还包括:获取第二训练集,所述第二训练集的训练图像标记有多条车道线和每条车道线中各点到下一点的坐标偏移量;采用所述第二训练集对初始的第二网络模型进行训练,得到训练后的模型。
结合第一方面实施例的一种可能的实施方式,当所述初始点集包括多个点时,所述多个点位于同一条车道线上,或者所述多个点分布于多条车道线上。
第二方面,本申请实施例还提供一种车道线检测装置,包括:获取模块、处理模块;获取模块,用于获取包括有车道线的图像;处理模块,用于确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;提取所述初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线。
第三方面,本申请实施例还提供了一种电子设备,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储程序;所述处理器,用于调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出了本申请实施例提供的一种车辆的架构示意图;
图2示出了本申请实施例提供的一种车道线检测方法的流程示意图;
图3示出了本申请实施例提供的一种补全车道线的原理示意图;
图4示出了本申请实施例提供的一张道路图像的示意图;
图5示出了本申请实施例提供的从道路图像识别出的初始车道线的示意图;
图6示出了本申请实施例提供的生成的目标车道线的示意图;
图7示出了本申请实施例提供的一种车道线检测装置的模块框图;以及
图8示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
鉴于现有的车道线检测方法无法准确快速检测出完整的车道线的问题,本申请实施例提供了一种车道线检测方法,通过利用神经网络模型来预测道路图像中的位于车道线上的初始点集,并从中提取至少一个点的位置特征,然后再采用预先训练的第一网络模型对至少一个点的位置特征进行处理,得到相应车道线的走势信息,然后根据走势信息便可快速生成包含初始点集的目标车道线,从而解决了现有的车道线检测方法无法准确快速检测出完整车道线的问题。
本申请实施例提供的车道线检测方法可以应用于车辆,下面将结合图1对本申请涉及的车辆进行说明。其中,图1是可以在其中实现本文公开的各种技术的车辆100的示意图。车辆100可以是轿车、卡车、摩托车、公共汽车、船只、飞机、直升机、割草机、挖土机、摩托雪橇、航空器、旅游休闲车、游乐园车辆、农场装置、建筑装置、有轨电车、高尔夫车、火车、无轨电车,或其它车辆。车辆100可以完全地或部分地以自动驾驶模式进行运行。车辆100在自动驾驶模式下可以控制其自身,例如车辆100可以确定车辆的当前状态以及车辆所处环境的当前状态,确定在该环境中的至少一个其它车辆的预测行为,确定该至少一个其它车辆执行所预测行为的可能性所对应信任等级,并且基于所确定的信息来控制车辆100自身。在处于自动驾驶模式时,车辆100可以在无人交互的情况下运行。
车辆100可以包括各种车辆系统,例如驱动系统142、传感器系统144、控制系统146、用户接口系统148、计算系统150以及通信系统152。车辆100可以包括更多或更少的系统,每个系统可以包括多个单元。进一步地,车辆100的每个系统和单元之间可以是互联的。例如,计算系统150能够与驱动系统142、传感器系统144、控制系统146、用户接口系统148、和通信系统152中的一个或多个进行数据通信。从而,车辆100的一个或多个所描述的功能可以被划分为附加的功能性部件或者实体部件,或者结合为数量更少的功能性部件或者实体部件。在更进一步的例子中,附加的功能性部件或者实体部件可以增加到如图1所示的示例中。驱动系统142可以包括为车辆100提供动能的多个可操作部件(或单元)。在一个实施例中,驱动系统142可以包括发动机或电动机、车轮、变速器、电子系统、以及动力(或动力源)。发动机或者电动机可以是如下装置的任意组合:内燃机、电机、蒸汽机、燃料电池发动机、丙烷发动机、或者其它形式的发动机或电动机。在一些实施例中,发动机可以将一种动力源转换为机械能。在一些实施例中,驱动系统142可以包括多种发动机或电动机。例如,油电混合车辆可以包括汽油发动机和电动机,也可以包括其它的情况。
车辆100的车轮可以是标准车轮。车辆100的车轮可以是多种形式的车轮,包括独轮、双轮、三轮、或者四轮形式,例如轿车或卡车上的四轮。其它数量的车轮也是可以的,例如六轮或者更多的车轮。车辆100的一个或多个车轮可被操作为与其他车轮的旋转方向不同。车轮可以是至少一个与变速器固定连接的车轮。车轮可以包括金属与橡胶的结合,或者是其他物质的结合。变速器可以包括可操作来将发动机的机械动力传送到车轮的单元。出于这个目的,变速器可以包括齿轮箱、离合器、差动齿轮和传动轴。变速器也可以包括其它单元。传动轴可以包括与车轮相匹配的一个或多个轮轴。电子系统可以包括用于传送或控制车辆100的电子信号的单元。这些电子信号可用于启动车辆100中的多个灯、多个伺服机构、多个电动机,以及其它电子驱动或者控制装置。动力源可以是全部或部分地为发动机或电动机提供动力的能源。也即,发动机或电动机能够将动力源转换为机械能。示例性地,动力源可以包括汽油、石油、石油类燃料、丙烷、其它压缩气体燃料、乙醇、燃料电池、太阳能板、电池以及其它电能源。动力源可以附加的或者可选地包括燃料箱、电池、电容、或者飞轮的任意组合。动力源也可以为车辆100的其它系统提供能量。
传感器系统144可以包括多个传感器,这些传感器用于感测车辆100的环境和条件的信息。例如,传感器系统144可以包括惯性测量单元(IMU)、GNSS(全球导航卫星系统)收发器(例如全球定位系统(GPS)收发器)、雷达(RADAR)、激光测距仪/LIDAR(或其它距离测量装置)、声学传感器、超声波传感器以及相机或图像捕捉装置。传感器系统144可以包括用于监控车辆100的多个感应器(例如,氧气(O2)监控器、油量表传感器、发动机油压传感器,以及温度、湿度、压力传感器等等)。还可以配置其它传感器。包括在传感器系统144中的一个或多个传感器可以被单独驱动或者被集体驱动,以更新一个或多个传感器的位置、方向,或者这二者。
IMU可以包括传感器的结合(例如加速器和陀螺仪),用于基于惯性加速来感应车辆100的位置变化和方向变化。GPS收发器可以是任何用于估计车辆100的地理位置的传感器。出于该目的,GPS收发器可以包括接收器/发送器以提供车辆100相对于地球的位置信息。需要说明的是,GPS是全球导航卫星系统的一个示例,因此,在一些实施例中,GPS收发器可以替换为北斗卫星导航系统收发器或者伽利略卫星导航系统收发器。雷达单元可以使用无线电信号来感应车辆100所在环境中的对象。在一些实施例中,除感应对象之外,雷达单元还可以用于感应接近车辆100的物体的速度和前进方向。激光测距仪或LIDAR单元(或者其它距离测量装置)可以是任何使用激光来感应车辆100所在环境中的物体的传感器。在一个实施例中,激光测距仪/LIDAR单元可以包括激光源、激光扫描仪、以及探测器。激光测距仪/LIDAR单元用于以连续(例如使用外差检测)或者不连续的检测模式进行工作。相机可以包括用于捕捉车辆100所在环境的多个图像的装置。相机可以是静态图像相机或者动态视频相机。
控制系统146用于控制对车辆100及其部件(或单元)的操作。相应地,控制系统146可以包括各种单元,例如转向单元、动力控制单元、制动单元和导航单元。
转向单元可以是调整车辆100前进方向的机械的组合。动力控制单元(例如可以为油门),例如可以被用于控制发动机的运转速度,进而控制车辆100的速度。制动单元可以包括用于对车辆100进行减速的机械的组合。制动单元可以以标准方式利用摩擦力来使车辆减速。在其他实施例中,制动单元可以将车轮的动能转化为电流。制动单元也可以采用其它形式。导航单元可以是任何为车辆100确定驾驶路径或路线的系统。导航单元还可以在车辆100行进的过程中动态的更新驾驶路径。控制系统146还可以附加地或者可选地包括其它未示出或未描述的部件(或单元)。
用户接口系统148可以用于允许车辆100与外部传感器、其它车辆、其它计算机系统和/或车辆100的用户之间的互动。例如,用户接口系统148可以包括标准视觉显示装置(例如,等离子显示器、液晶显示器(LCD)、触屏显示器、头戴显示器,或其它类似的显示器),扬声器或其它音频输出装置,麦克风或者其它音频输入装置。例如,用户接口系统148还可以包括导航接口以及控制车辆100的内部环境(例如温度、风扇,等等)的接口。
通信系统152可以为车辆100提供与一个或多个设备或者周围其它车辆进行通信的方式。在一个示例性的实施例中,通信系统152可以直接或者通过通信网络与一个或多个设备进行通信。通信系统152例如可以是无线通信系统。例如,通信系统可以使用3G蜂窝通信(例如CDMA、EVDO、GSM/GPRS)或者4G蜂窝通信(例如WiMAX或LTE),还可以使用5G蜂窝通信。可选地,通信系统可以与无线本地局域网(WLAN)进行通信(例如,使用
Figure BDA0003004486160000101
)。在一些实施例中,通信系统152可以直接与一个或多个设备或者周围其它车辆进行通信,例如,使用红外线,
Figure BDA0003004486160000102
或者ZIGBEE。其它无线协议,例如各种车载通信系统,也在本申请公开的范围之内。例如,通信系统可以包括一个或多个专用短程通信(DSRC)装置、V2V装置或者V2X装置,这些装置会与车辆和/或路边站进行公开或私密的数据通信。
计算系统150能控制车辆100的部分或者全部功能。计算系统150中的自动驾驶控制单元可以用于识别、评估、以及避免或越过车辆100所在环境中的潜在障碍。通常,自动驾驶控制单元可以用于在没有驾驶员的情况下控制车辆100,或者为驾驶员控制车辆提供辅助。在一些实施例中,自动驾驶控制单元用于将来自GPS收发器的数据、雷达数据、LIDAR数据、相机数据、以及来自其它车辆系统的数据结合起来,来确定车辆100的行驶路径或轨迹。自动驾驶控制单元可以被激活以使车辆100能够以自动驾驶模式被驾驶。
计算系统150可以包括至少一个处理器(其可以包括至少一个微处理器),处理器执行存储在非易失性计算机可读介质(例如数据存储装置或存储器)中的处理指令(即机器可执行指令)。计算系统150也可以是多个计算装置,这些计算装置分布式地控制车辆100的部件或者系统。在一些实施例中,存储器中可以包含被处理器执行来实现车辆100的各种功能的处理指令(例如,程序逻辑)。在一个实施例中,计算系统150能够与驱动系统142、传感器系统144、控制系统146、用户接口系统148、和/或通信系统152进行数据通信。计算系统中的接口用于促进计算系统150和驱动系统142、传感器系统144、控制系统146、用户接口系统148、以及通信系统152之间的数据通信。
存储器还可以包括其它指令,包括用于数据发送的指令、用于数据接收的指令、用于互动的指令、或者用于控制驱动系统142、传感器系统144、或控制系统146或用户接口系统148的指令。
除存储处理指令之外,存储器可以存储多种信息或数据,例如图像处理参数、道路地图、和路径信息。在车辆100以自动方式、半自动方式和/或手动模式运行的期间,这些信息可以被车辆100和计算系统150所使用。
尽管自动驾驶控制单元被示为与处理器和存储器分离,但是应当理解,在一些实施方式中,自动驾驶控制单元的某些或全部功能可以利用驻留在一个或多个存储器(或数据存储装置)中的程序代码指令来实现并由一个或多个处理器执行,并且自动驾驶控制单元在某些情况下可以使用相同的处理器和/或存储器(或数据存储装置)来实现。在一些实施方式中,自动驾驶控制单元可以至少部分地使用各种专用电路逻辑,各种处理器,各种现场可编程门阵列(“FPGA”),各种专用集成电路(“ASIC”),各种实时控制器和硬件来实现。
计算系统150可以根据从各种车辆系统(例如,驱动系统142,传感器系统144,以及控制系统146)接收到的输入,或者从用户接口系统148接收到的输入,来控制车辆100的功能。例如,计算系统150可以使用来自控制系统146的输入来控制转向单元,来避开由传感器系统144检测到的障碍物。在一个实施例中,计算系统150可以用来控制车辆100及其系统的多个方面。
虽然图1中显示了集成到车辆100中的各种部件(或单元),这些部件(或单元)中的一个或多个可以搭载到车辆100上或单独关联到车辆100上。例如,计算系统可以部分或者全部地独立于车辆100存在。从而,车辆100能够以分离的或者集成的设备单元的形式而存在。构成车辆100的设备单元之间可以以有线通信或者无线通信的方式实现相互通信。在一些实施例中,可以将附加部件或单元添加到各个系统或从系统中移除一个或多个以上的部件或单元(例如,图1所示的LIDAR或雷达)。
在介绍完本申请涉及的车辆架构后,下面将结合图2,对本申请实施例提供的车道线检测方法进行说明。
步骤S101:获取待检测的图像。
可通过安装于车辆上的相机实时采集车辆在行驶过程中的道路图像,从而获得待检测的图像。
步骤S102:确定所述图像中的初始点集,所述初始点集在所述图像的车道线上。
在获取到待检测的图像后,对图像进行处理,以确定出图像中的位于车道线上的初始点集。初始点集中的点均位于图像车道线的整条沿线上,假设图像中显现出来的车道线段为AB段,则按照AB的走势将AB延长到图像的临界线上,得到完整的CD段,则可取CD段中的任一点或多点作为初始点集中的点。本申请的目的之一就是随机确定一些初始点集,基于这些初始点集生成包含这些点集的完整车道线,例如选取出的CD段中的任一点和多点来生成CD段这条完整车道线。
其中,确定图像中位于车道线上的初始点集的方法可以有多种,本申请不行受限于具体的实现方式,只要能够保证确定出的初始点集中的点均为图像中车道线所在沿线上即可。例如,可以识别图像中的车道线像素点,并从这些车道线像素点中确定出一些初始点构成初始点集。车道线像素点的识别可以采用语义分割方法,例如根据语义分割模型识别每个像素点是否为车道线像素点,并从属于车道线的像素点中选取一个或多个初始点构成初始点集。这里,还可以通过语义分割模型直接识别图像中的初始车道线,并从初始车道线中选取初始点集。或者采用图像处理方法来确定初始点集,例如基于车道线的图像特征,采用特定的图像边缘检测或直线检测方法检测出车道线,并从这些线中提取点作为初始点。
此外,还可以采用枚举的方法确定初始点集,例如,随机选取图像中的一些像素点集作为候选点集,针对每一个选取的点,将该点的位置特征(包括该点的位置坐标和偏移特征)输入到事先训练的走势预测模型,即下文中将会讲到的第一网络模型中,如果预测结果表示下一点还在本像素或者本格子(其中对于后者,在进行车道线检测时,可以将图像划分为m*n的图像格子,n和m均为正整数,如将576x1024像素的图像划分为72x128个格子,具体划分数量并不限于此),则认为该点不是初始点,反之如果能继续预测下去,则可认为该点是初始点。应当理解,如果对候选点集中的所有点进行预测后,发现这些候选点均不是初始点,则代表当前帧图像中没有车道线,因此可以跳过对当前帧图像的车道线补全步骤,而继续对下一帧图像进行预测处理。
其中,初始点集包括至少一个点,当初始点集包括多个点时,多个点可以位于同一条车道线上,或者多个点分布于多条车道线上。初始点集可以包括位于多条车道线上的点,且对于同一条车道线而言,这些点可以连续分布在该条车道线上,也可以离散分布在该条车道线上。
由于每条车道线由纵向相隔预定间距的点表示,因此当初始点集包括多个点时,可以用确定出的初始点集来表示初始车道线,相应地,步骤S102可以理解为:对所述图像进行处理,得到图像中的初始车道线。其中,可以利用事先训练好的语义分割模型来对图像进行处理,得到图像中的初始车道线。
在进行语义分割模型的训练时,可以是利用训练图像对初始语义分割模型进行训练,得到训练后的模型。其中,训练图像包括各像素点或者各像素点所在格子是否属于车道线的标记。需要说明的是,训练图像中任意相邻两个虚线线段之间的空白区域均标记为车道线,以使语义分割模型得到的初始车道线包括虚线车道线中任意相邻两个虚线线段之间的空白区域。
这里,在进行数据标记时,直接将虚线车道线之间的空白区域标记为车道线,则在模型预测时会将虚线车道线之间的空白区域也预测为车道线像素点。本申请采用语义分割模型预测即可将虚线车道线之间准确连接,效率高且准确率高。如果不将虚线车道线之间的空白区域标记为车道线,生成虚线车道线后,还需对虚线车道线之间采取车道线补全方法来补全,大大加大了计算难度,且降低了车道线补全的准确率。
另外,在车道线标记时还可以标记每条车道线在图像的位置属性,例如该条车道线为左侧车道线、中间车道线或右侧车道线等,或者车道线为第1条车道线、第2条车道线、……、第n条车道线等;或者车道线为左1车道线、左2车道线、右1车道线、右2车道线等。具体的标记方式本领域技术人员可以根据需要自行设定,本申请对此不作限制。这样在进行初始车道线的预测时,可以得到每条车道线的位置属性,以便后续容易将同一位置属性的车道线进行连线补全,还可用于对车道线连线结果进行判断检验。具体的训练过程已经为本领域技术人员所熟知,在此不再进行介绍。
步骤S103:提取所述初始点集中至少一个点的位置特征。
在得到图像中的位于车道线上的初始点集后,提取初始点集中至少一个点的位置特征,以便于后续采用预先训练的第一网络模型对提取的至少一个点的位置特征进行处理,得到相应车道线的走势信息。
若初始点集包括位于多条车道线上的点,则在后续进行车道线预测时,可以是并行地对多条车道线同时进行预测,如同时从位于每一条车道线上的初始点集中提取至少一个点的位置特征;也可以是采用串行的方式进行预测,如从位于某一条车道线上的初始点集中提取至少一个点的位置特征进行预测,生成该条车道线的完整线后,再从位于下一条车道线上的初始点集中提取至少一个点的位置特征进行预测,以此类推。
此外,由于每条车道线由纵向相隔预定间距的点表示,因此当初始点集包括多个点时,可以用确定出的初始点集来表示初始车道线,相应地,该步骤也可以理解为:从初始车道线中提取至少一个点的位置特征。进一步地可理解为:识别图像中的初始车道线,从初始车道线中确定初始点集,并提取初始点集中至少一个点的位置特征。
若初始车道线本身即为完整车道线(例如达到图像四边临界线的车道线),则无需进行补全,因此为了节约时间成本,在得到初始车道线后,可以从初始车道线中识别出待补全车道线,然后再从待补全车道线中提取至少一个点的位置特征。这里,可以通过判断初始车道线是否到达图像临界线来识别待补全车道线,如同时到达图像上下临界线、或者同时到达图像上左临界线等均可认为是完整车道线,不用进行补全。初始车道线有一端没有达到图像临界线的,则可以为是待补全车道线。此时初始点集可以包括初始车道线或待补全车道线的两侧端点,当然不限于此。
考虑到每一条初始车道线或待补全车道线在同一水平上可能有多个点,因此本申请在得到初始车道线或待补全车道线后,可以先将车道线粗线变为车道线细线,即对车道线中同一水平高度的点进行删减处理,如只保留车道线同一轴线上的点,例如车道线中线的点。此外,还可以将同一水平高度的多个点的坐标取平均后作为一个新点坐标,并将该新点代替该同一水平高度的多个点。当然,本申请不受限于具体的实现方式,所有能将车道线粗线变为细线的方法均在本申请的保护范围之内,之后即可根据该细线中点进行处理,如确定初始点集、提取至少一个点的特征、基于细线中点的坐标对模型预测后的坐标进行修正等。若待补全车道线有多条,则可以首先选取其中距离最长的待补全车道线,并提取该距离最长的待补全车道线中至少一个点的位置特征,以该距离最长的待补全车道线开始补全。可选地,待生成该距离最长的待补全车道线所在的完整车道线后,再从剩下的待补全车道线中提取距离最长的车道线开始补全,这样可以提高预测的准确性。
其中,待补全车道线为线段两侧端点未达到图像临界线的车道线,只要有一个端点未达到图像临界线,即为待补全车道线。目标车道线即完整车道线,包括线段两侧端点到达图像临界线的车道线。图像临界线包括上临界线、下临界线、左临界线和右临界线中的至少一种。上临界线与图像上边缘相距第一预定距离,下临界线与图像下边缘相距第二预定距离,左临界线与图像上边缘相距第三预定距离,右临界线与图像右边缘相距第二预定距离,依次类推。这四个预定距离可以分别为相同或不同的值,本领域技术人员可以根据经验需要自行进行设定,本申请对此限制。优选地,考虑图像上部一般为天空或海洋,因此第一预定距离可以是天空或海洋在图像中的长度占比值,此时上临界线可认为是天空或海洋在图像的下边缘线。当然,这四个预定距离也可以均为0,例如下左右临界线分别为图像的下左右边缘。其中,每个点的位置特征包括该点的位置坐标和偏移特征,偏移特征为表征该点到下一点的位置关系的高维向量。每个点的偏移特征可以根据每个点的位置坐标从预先训练的第二网络模型的中间层中提取。该第二网络模型可以是语义分割模型,也可以是专门用于提取偏移特征的神经网络模型。
其中,第二网络模型为事先训练好的网络模型,其训练过程可以是:获取第二训练集,第二训练集包括多个标记后的训练图像;采用第二训练集对初始的第二网络模型进行训练,便可得到训练后的模型,即第二网络模型。需要说明的是,第二训练集的训练图像标记有多条车道线和每条车道线中各点到下一点的坐标偏移量。其中,具体的训练过程已经为本领域技术人员所熟知,在此不再详细介绍。
本申请实施例中,通过采用训练的用于提取表征该点到下一点的位置关系的偏移特征的第二网络模型来提取各个点的偏移特征,以此来提高检测精度。
步骤S104:采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,根据所述走势信息生成包含所述初始点集的目标车道线。
在提取到至少一个点的位置特征后,采用预先训练的第一网络模型对至少一个点的位置特征进行处理,得到相应车道线的走势信息,根据走势信息生成包含初始点集的目标车道线。目标车道线可以有一条或多条,初始点集分布在这些目标车道线上,每条目标车道线是完整车道线或者预测达到预设停止位置的车道线。也就是本申请采集到一张道路图像后,图像本身的车道线可能因污迹磨损、有阴影覆盖、像素模糊或者被物体遮挡等多种情况导致车道线未完全显示,经过本申请的车道线检测方法,最终呈现的一般都是直达图像边缘的完整车道线,提高车道线识别精度。基于这些车道线和道路边界线的距离,可以更准确的进行定位。
其中,第一网络模型在对每个点的位置特征进行处理时:第一网络模型的输入为当前点的位置坐标、偏移特征、以及第一网络模型在上一次学习到的走势信息;第一网络模型的输出为当前点到下一点的坐标偏移量、以及本次学习到的走势信息。走势信息为高维向量,且第一网络模型在第一次预测时所输入的走势信息为预设的初始值。本申请实施例中,除了将当前点的位置坐标、偏移特征输入网络模型外,还将模型在上一次学习到的走势信息也输入到网络模型中,通过使模型不停的学习各个点之间的走势信息,从而可以快速准确的补全车道线,得到完整车道线。
一种实施方式下,步骤S104的过程可以是:利用第一网络模型对当前点的位置坐标、偏移特征以及第一网络模型在上一次学习到的走势信息进行处理,输出从当前点到下一点的坐标偏移量,以及本次学习到的走势信息;根据坐标偏移量和当前点的位置坐标确定下一点的位置坐标;以下一点的偏移特征、位置坐标以及第一网络模型本次学习到的走势信息为模型输入,输出下一点到再下一个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。
为了便于理解,举例进行说明,在第一次预测时,将起始点也即第一个点的位置坐标、偏移特征以及预设的走势信息初始值输入第一网络模型中,输出从当前点也即起始点到下一点的坐标偏移量,以及本次学习到的走势信息;在第二次预测时,根据第一次预测得到的坐标偏移量以及第一个点的位置坐标,得到下一个点也即第二个点的位置坐标,然后将下一个点也即第二个点的位置坐标、偏移特征以及本次学习到的走势信息输入第一网络模型中,输出下一点也即第二个点到再下一个点也即第三个点的偏移坐标以及最新走势信息;在第三次预测时,根据第二次预测得到的坐标偏移量以及第二个点的位置坐标,得到第二个点的位置坐标,然后将第三个点的位置坐标、偏移特征以及第二次学习到的走势信息输入第一网络模型中,输出第三个点到第四个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。需要说明的是,每个点的偏移特征可以根据每个点的位置坐标从预先训练的第二网络模型的中间层中提取。
其中,确定到达预设停止位置的过程包括:当迭代预定次数,如迭代100次,或者待补全车道线到达图像临界线时,确定到达预设停止位置。
一种实施方式下,根据坐标偏移量和当前点的位置坐标确定下一点的位置坐标的过程可以是:若下一点的位置坐标与初始点集中的某同一高度点在水平方向上的距离小于等于预定像素(如1个像素点),则基于该同一高度点对下一点的位置坐标进行修正。通过对下一点的位置坐标进行修正,可以减少误差,进而提高检测的准确性。
优选地,若已经识别出了初始车道线,则基于初始车道线中的点预测车道线的走势信息时,根据坐标偏移量和当前点的位置坐标确定下一点的位置坐标的过程可以是:若下一点的位置坐标与初始车道线在水平方向上的距离小于等于预定像素(如1个像素点),则基于该初始车道线上的同一高度点对下一点的位置坐标进行修正。进一步地,若从初始车道线中识别了待补全车道线,则基于待补全车道线中的点预测车道线的走势信息时,根据坐标偏移量和当前点的位置坐标确定下一点的位置坐标的过程可以是:若下一点的位置坐标与待补全车道线在水平方向上的距离小于等于预定像素(如1个像素点),则基于该待补全车道线上的同一高度点对下一点的位置坐标进行修正。
一种实施方式下,图像可以被划分为m*n的图像格子,此时,当前点到下一点的坐标偏移量为当前点所在格子的中心点到下一行格子中车道线中点的坐标偏移量。通过将图像划分为m*n的图像格子的方式,可以更快速的确定每个点的位置坐标,以及每个点到该点的下一个点的坐标偏移量。
一种可选实施方式下,输入第一网络模型的位置坐标为归一化后的坐标,这样可以减少预测误差。当然,这里也可以基于其他上下限值来对第一网络模型的位置坐标进行标准化,本领域技术人员可以根据需要设定标准化的最大值,本申请对此不作限制。
一种实施方式下,为了提高车道线预测的准确性,步骤S104的过程可以是:采用预先训练的第一网络模型对至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息,并根据第一方向的走势信息生成多个点,直至到达第一方向上的预设停止位置;从第一方向的预设停止位置开始,采用第一网络模型预测出相应车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置。该种实施方式下,先沿第一方向,对至少一个点的位置特征进行处理得到相应车道线沿第一方向的走势信息,并根据第一方向的走势信息生成多个点,直至到达第一方向上的预设停止位置,然后再沿相反方向,预测车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置。通过从正反两个方向来预测同一条车道线,由于输入第一网络模型的特征点更多,使得模型可以学习到更准确的走势信息,进而可以提高检测的准确性。
其中,预测每一个方向的车道线的走势信息的过程与上述的过程相同,如利用第一网络模型对当前点的位置坐标、偏移特征以及第一网络模型在上一次学习到的走势信息进行处理,输出从当前点到下一点的坐标偏移量,以及本次学习到的走势信息,根据坐标偏移量和当前点的位置坐标确定下一点的位置坐标,以下一点的偏移特征、位置坐标以及第一网络模型本次学习到的走势信息为模型输入,输出下一点到再下一个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。
为了便于理解,以图3所示的示意图为例进行说明,假设初始点集位于图中线段1部分,则可以沿图中第一方向或第二方向任一方向来预测车道线的走势,如预测第一方向上的车道线的走势,并根据第一方向的走势信息生成多个点,直至到第一方向上的预设停止位置,然后再沿相反方向,也即第二方向的方向,预测车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置。需要说明的是,图3中的第一方向和第二方向可以互换,即向上的方向可以为第二方向,向下的方向可以为第一方向。
一种可选实施方式下,采用预先训练的第一网络模型对至少一个点的位置特征进行处理,得到相应车道线的走势信息的过程可以是:采用预先训练的第一网络模型对初始点集在第一方向上的至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息;采用预先训练的第一网络模型对初始点集在第二方向上的至少一个点的位置特征进行处理,得到相应车道线沿第二方向的走势信息。通过沿两个不同方向,同时对至少一个点的位置特征进行处理,得到相应车道线沿2个方向的走势信息,从而可以开始补全车道线。
为了便于理解,以图3所示的示意图为例进行说明,假设初始点集位于图中线段1部分,则可以沿图中第一方向和第二方向两个方向来预测同一条车道线,如从A点开始,沿第一方向的方向预测第一方向上的车道线的走势;以及从B点开始,沿第二方向的方向预第二方向上的车道线的走势,这样能使输入的初始点更多,从而提高预测精度。
若初始点集包括多个点,则可以表示成初始车道线,若初始车道线为待补全车道线,相应地,则采用预先训练的第一网络模型对至少一个点的位置特征进行处理,得到相应车道线的走势信息的过程可以理解为是:采用预先训练的第一网络模型对待补全车道线在第一方向上的多个点的位置特征进行处理,得到待补全车道线沿第一方向的走势信息;采用预先训练的第一网络模型对待补全车道线在第二方向上的多个点的位置特征进行处理,待补全车道线沿第二方向的走势信息;其中,待补全车道线在第一方向上的多个点与在第二方向上的多个点中存在一个共同点。
此外,若待补全车道线有多条,则可以选取其中距离最长的待补全车道线进行车道线补全,对该距离最长的待补全车道线完成补全后,再从剩下的待补全车道线中选取车道线进行补全。可以是从第一方向补全到预设停止位置后,再从预设停止位置开始沿第二方向,补全到第二方向的预设停止位置;也可以是从第一方向和第二方向同时对该距离最长的待补全车道线进行车道线补全。
例如,从距离最长的待补全车道线中提取的至少一个点的位置特征包括其中第一端点处的第一位置特征和第二端点处的第二位置特征。则从第一方向和第二方向同时对该距离最长的待补全车道线进行车道线补全的过程可以是:采用预先训练的第一网络模型对第一位置特征进行处理,预测待补全车道线从第一端点至第二端点方向上的走势信息;以及采用预先训练的第一网络模型对第二位置特征进行处理,预测待补全车道线从第二端点至第一端点方向上的走势信息。
以图3所示的示意图为例进行说明,假设初始车道线包括图中线段1和线段2两部分,由于线段1和线段2部分均为待补全车道线,且线段1部分相对于线段2部分更长,因此可以选取线段1部分进行车道线补全,如沿第一方向生成多个点,得到线段3部分,沿第二方向生成多个点,得到线段4部分,从而将车道线补全。一种实施方式下,第一网络模型包括第一网络分支和第二网络分支。第一网络分支用于从第一方向预测相应车道线的走势信息;第二网络分支用于从第二方向预测相应车道线的走势信息;其中,第一方向与第二方向的方向相反。该种实施方式下,在预测车道线沿第一方向的走势信息时,利用第一网络分支来进行预测,在预测车道线沿第二方向的走势信息时,利用第二网络分支来进行预测,通过不同的网络分支来预测不同方向的走势信息,可以提高车道线检测的精确,同时使得可以采用两个网络分支同时从不同的方向来补全车道线,可以提高得到完整车道线的速度。其中,第一网络模型为事先训练的走势预测模型,主要用于预测车道线的走势信息。其可以是循环神经网络模型,如可以为每一步参数共享的循环神经网络模型。通过对位置坐标进行归一化,避免参与计算的数据量级相差太大,影响训练精度。其中,循环神经网络模型可以是长短期记忆(Long Short-Term Memory,LSTM)网络模型,也可以是GRU(Gate RecurrentUnit)网络模型等。
其训练过程可以是:获取多条车道线的坐标序列;提取每条车道线中各点到下一点的坐标偏移量和偏移特征,生成第一训练集;以及利用第一训练集对初始的第一网络模型进行训练,得到训练后的模型。利用提取的每条车道线中各点到下一点的坐标偏移量和偏移特征来对初始的第一网络模型进行训练,使第一网络模型学习车道线中各点到下一点的位置关系,进而学习到车道线的走势信息,以便于后续基于该网络模型可以快速检测出车道线。其中,具体训练过程已经为本领域技术人员所熟知,在此不再详细介绍。
为了便于从整体上理解本方案,下面将结合图4-图6所示的示意图,对应用本申请实施例所示的车道线检测方法进行车道线检测的实例进行说明。
图4为本申请的一个道路图像的示意图,从中所识别出的初始车道线如图5所示。其中最左侧的车道线被车辆遮挡,因此初始显示的车道线只有未遮挡部分的。中间为虚线车道线,该虚线车道线虽然达到了图像上临界线,但未达到下临界线,因此需要补全;而且,虚线块之间的空白区域也识别为初始车道线,提高后续车道线补全的效率。右侧为实线车道线,该实线车道线本身已达到图像上下临界线,因此为完整车道线,不用进行补全。经过应用本申请实施例所示的车道线检测方法对图5所示的车道线进行补全后,得到图6所示的结果,其中每条车道线都表示为完整车道线,提高用户体验,也便于根据这些完整车道线来进行车辆定位等后续算法。
基于同一发明构思,本申请实施例还提供了一种车道线检测装置200,如图7所示。该车道线检测装置200包括:获取模块210以及处理模块220。
获取模块210,用于获取包括有车道线的图像。
处理模块220,用于确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;提取所述初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线。所述目标车道线包括线段两侧端点到达图像临界线的车道线。
其中,每条车道线由纵向相隔预定间距的点表示,其中每个点的所述位置特征包括该点的位置坐标和偏移特征;所述偏移特征为表征该点到下一点的位置关系的高维向量,且根据每个点的位置坐标从预先训练的第二网络模型的中间层中提取。
当所述初始点集包括多个点时,所述多个点位于同一条车道线上,或者所述多个点分布于多条车道线上。
所述第一网络模型在对每个点的位置特征进行处理时:所述第一网络模型的输入为当前点的位置坐标、偏移特征、以及所述第一网络模型在上一次学习到的走势信息;所述第一网络模型的输出为当前点到下一点的坐标偏移量、以及本次学习到的走势信息。
所述走势信息为高维向量,且所述第一网络模型在第一次预测时所输入的走势信息为预设的初始值。
一种实施方式下,所述处理模块220,具体用于:利用所述第一网络模型对当前点的位置坐标、偏移特征以及所述第一网络模型在上一次学习到的走势信息进行处理,输出从当前点到下一点的坐标偏移量,以及本次学习到的走势信息;根据所述坐标偏移量和当前点的位置坐标确定下一点的位置坐标;以下一点的偏移特征、位置坐标以及所述第一网络模型本次学习到的走势信息为模型输入,输出下一点到再下一个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。所述预设停止位置包括达到预定迭代次数时的位置或者图像临界线。所述图像临界线包括上临界线、下临界线、左临界线和右临界线中的至少一种。
一种实施方式下,所述处理模块220,具体用于若下一点的位置坐标与所述初始点集中的某同一高度点在水平方向上的距离小于等于预定像素,则基于该同一高度点对所述下一点的位置坐标进行修正。
一种实施方式下,所述第一网络模型为每一步参数共享的循环神经网络模型,输入第一网络模型的所述位置坐标为归一化后的坐标。
一种实施方式下,所述图像被划分为m*n的图像格子,所述当前点到下一点的坐标偏移量为当前点所在格子的中心点到下一行格子中车道线中点的坐标偏移量。
一种实施方式下,所述第一网络模型包括第一网络分支和第二网络分支;所述第一网络分支用于从第一方向预测相应车道线的走势信息;所述第二网络分支用于从第二方向预测相应车道线的走势信息;其中,所述第一方向与第二方向的方向相反。
一种实施方式下,所述处理模块220,具体用于:采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息,并根据第一方向的走势信息生成多个点,直至到达第一方向上的预设停止位置;从第一方向的预设停止位置开始,采用所述第一网络模型预测出相应车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置,其中,所述第一方向与第二方向的方向相反。
一种实施方式下,所述处理模块220,具体用于:采用预先训练的第一网络模型对所述初始点集在第一方向上的至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息;采用预先训练的第二网络模型对所述初始点集在第二方向上的至少一个点的位置特征进行处理,得到相应车道线沿第二方向的走势信息,其中,所述第一方向与第二方向的方向相反。
可选地,获取模块210,还用于获取多条车道线的坐标序列;处理模块220还用于:提取每条车道线中各点到下一点的坐标偏移量和偏移特征,生成第一训练集;以及利用所述第一训练集对初始的第一网络模型进行训练,得到训练后的模型。
可选地,获取模块210,还用于获取第二训练集,所述第二训练集的训练图像标记有多条车道线和每条车道线中各点到下一点的坐标偏移量;处理模块220还用于:采用所述第二训练集对初始的第二网络模型进行训练,得到训练后的模型。
本申请实施例所提供的车道线检测装置200,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
基于同一发明构思,如图8所示,本申请实施例还提供了一种用于执行上述车道线检测方法的电子设备300。所述电子设备300包括:通信接口310、存储器320、通讯总线330以及处理器340。
所述通信接口310、所述存储器320、处理器340各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线330或信号线实现电性连接。其中,通信接口310用于实施一个或多个通信协议(LTE、Wi-Fi等等)。存储器320用于存储计算机程序,如存储有图7中所示的软件功能模块,即车道线检测装置200。其中,车道线检测装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器320中或固化在所述电子设备300的操作系统(operating system,OS)中的软件功能模块。所述处理器340,用于执行存储器320中存储的可执行模块,例如车道线检测装置200包括的软件功能模块或计算机程序。例如,处理器340,用于获取待检测的图像;确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;提取所述初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息;以及根据所述走势信息生成包含所述初始点集的目标车道线。
其中,存储器320可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器340可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器340也可以是任何常规的处理器等。
其中,上述的电子设备300,包括但不限于计算机、服务器以及车辆中的车载电脑等。
本申请实施例还提供了一种非易失性计算机可读取存储介质(以下简称存储介质),该存储介质上存储有计算机程序,该计算机程序被计算机如上述的电子设备300运行时,执行上述所示的车道线检测方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者电子设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (18)

1.一种车道线检测方法,其特征在于,包括:
获取待检测的图像;
确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;
提取所述初始点集中至少一个点的位置特征;
采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息;以及
根据所述走势信息生成包含所述初始点集的目标车道线。
2.根据权利要求1所述的方法,其特征在于,
每条车道线由纵向相隔预定间距的点表示,其中每个点的所述位置特征包括该点的位置坐标和偏移特征;
所述偏移特征为表征该点到下一点的位置关系的高维向量,且根据每个点的位置坐标从预先训练的第二网络模型的中间层中提取。
3.根据权利要求2所述的方法,其特征在于,所述第一网络模型在对每个点的位置特征进行处理时:
所述第一网络模型的输入为当前点的位置坐标、偏移特征以及所述第一网络模型在上一次学习到的走势信息;
所述第一网络模型的输出为当前点到下一点的坐标偏移量以及本次学习到的走势信息。
4.根据权利要求3所述的方法,其特征在于,所述走势信息为高维向量,且所述第一网络模型在第一次预测时所输入的走势信息为预设的初始值。
5.根据权利要求2所述的方法,其特征在于,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线,包括:
利用所述第一网络模型对当前点的位置坐标、偏移特征以及所述第一网络模型在上一次学习到的走势信息进行处理,输出从当前点到下一点的坐标偏移量,以及本次学习到的走势信息;
根据所述坐标偏移量和当前点的位置坐标确定下一点的位置坐标;
以下一点的偏移特征、位置坐标以及所述第一网络模型本次学习到的走势信息为模型输入,输出下一点到再下一个点的偏移坐标以及最新走势信息,以此类推,直至达到预设停止位置。
6.根据权利要求5所述的方法,其特征在于,根据所述坐标偏移量和当前点的位置坐标确定下一点的位置坐标,包括:
若下一点的位置坐标与所述初始点集中的某同一高度点在水平方向上的距离小于等于预定像素,则基于该同一高度点对所述下一点的位置坐标进行修正。
7.根据权利要求2所述的方法,其特征在于,所述第一网络模型为每一步参数共享的循环神经网络模型,输入第一网络模型的所述位置坐标为归一化后的坐标。
8.根据权利要求3所述的方法,其特征在于,所述图像被划分为m*n的图像格子,所述当前点到下一点的坐标偏移量为当前点所在格子的中心点到下一行格子中车道线中点的坐标偏移量。
9.根据权利要求1所述的方法,其特征在于,
所述第一网络模型包括第一网络分支和第二网络分支;
所述第一网络分支用于从第一方向预测相应车道线的走势信息;
所述第二网络分支用于从第二方向预测相应车道线的走势信息;
其中,所述第一方向与第二方向的方向相反。
10.根据权利要求5所述的方法,其特征在于,
所述目标车道线包括线段两侧端点到达图像临界线的车道线;
所述预设停止位置包括达到预定迭代次数时的位置或者图像临界线;
所述图像临界线包括上临界线、下临界线、左临界线和右临界线中的至少一种。
11.根据权利要求1所述的方法,其特征在于,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线,包括:
采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息,并根据第一方向的走势信息生成多个点,直至到达第一方向上的预设停止位置;
从第一方向的预设停止位置开始,采用所述第一网络模型预测出相应车道线沿第二方向的走势信息,并根据第二方向的走势信息生成多个点,直至到达第二方向上的预设停止位置,其中,所述第一方向与第二方向的方向相反。
12.根据权利要求1所述的方法,其特征在于,采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,包括:
采用预先训练的第一网络模型对所述初始点集在第一方向上的至少一个点的位置特征进行处理,得到相应车道线沿第一方向的走势信息;
采用预先训练的第一网络模型对所述初始点集在第二方向上的至少一个点的位置特征进行处理,得到相应车道线沿第二方向的走势信息,其中,所述第一方向与第二方向的方向相反。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取多条车道线的坐标序列;
提取每条车道线中各点到下一点的坐标偏移量和偏移特征,生成第一训练集;以及
利用所述第一训练集对初始的第一网络模型进行训练,得到训练后的模型。
14.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取第二训练集,所述第二训练集的训练图像标记有多条车道线和每条车道线中各点到下一点的坐标偏移量;
采用所述第二训练集对初始的第二网络模型进行训练,得到训练后的模型。
15.根据权利要求1所述的方法,其特征在于,当所述初始点集包括多个点时,所述多个点位于同一条车道线上,或者所述多个点分布于多条车道线上。
16.一种车道线检测装置,其特征在于,包括:
获取模块,用于获取包括有车道线的图像;
处理模块,用于确定所述图像中的初始点集,所述初始点集在所述图像的车道线上;提取所述初始点集中至少一个点的位置特征;采用预先训练的第一网络模型对所述至少一个点的位置特征进行处理,得到相应车道线的走势信息,并根据所述走势信息生成包含所述初始点集的目标车道线。
17.一种电子设备,其特征在于,包括:
存储器和处理器,所述处理器与所述存储器连接;
所述存储器,用于存储程序;
所述处理器,用于调用存储于所述存储器中的程序,以执行如权利要求1-15中任一项所述的方法。
18.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如权利要求1-15中任一项所述的方法。
CN202110358313.4A 2021-04-01 2021-04-01 一种车道线检测方法、装置、电子设备及存储介质 Pending CN115187952A (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202110358313.4A CN115187952A (zh) 2021-04-01 2021-04-01 一种车道线检测方法、装置、电子设备及存储介质
AU2022201649A AU2022201649A1 (en) 2021-04-01 2022-03-09 Method and apparatus for detecting lane lines, electronic device and storage medium
JP2022043314A JP2022159023A (ja) 2021-04-01 2022-03-18 車線検出方法、装置、電子機器及び記憶媒体
EP22164920.5A EP4083943A1 (en) 2021-04-01 2022-03-29 Method and apparatus for detecting lane lines, electronic device and storage medium
US17/657,611 US20220319196A1 (en) 2021-04-01 2022-03-31 Method and apparatus for detecting lane lines, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110358313.4A CN115187952A (zh) 2021-04-01 2021-04-01 一种车道线检测方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115187952A true CN115187952A (zh) 2022-10-14

Family

ID=80979162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110358313.4A Pending CN115187952A (zh) 2021-04-01 2021-04-01 一种车道线检测方法、装置、电子设备及存储介质

Country Status (5)

Country Link
US (1) US20220319196A1 (zh)
EP (1) EP4083943A1 (zh)
JP (1) JP2022159023A (zh)
CN (1) CN115187952A (zh)
AU (1) AU2022201649A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115583243B (zh) * 2022-10-27 2023-10-31 阿波罗智联(北京)科技有限公司 确定车道线信息的方法、车辆控制方法、装置和设备
CN116612417A (zh) * 2023-06-01 2023-08-18 佑驾创新(北京)技术有限公司 利用视频时序信息的特殊场景车道线检测方法及装置
CN117152707B (zh) * 2023-10-31 2024-03-22 武汉未来幻影科技有限公司 一种车辆偏移距离的计算方法、装置以及处理设备

Also Published As

Publication number Publication date
AU2022201649A1 (en) 2022-10-20
JP2022159023A (ja) 2022-10-17
US20220319196A1 (en) 2022-10-06
EP4083943A1 (en) 2022-11-02

Similar Documents

Publication Publication Date Title
CN112050792B (zh) 一种图像定位方法和装置
CN107816976B (zh) 一种接近物体的位置确定方法和装置
US11915492B2 (en) Traffic light recognition method and apparatus
US11227500B2 (en) System and method for determining car to lane distance
EP4083943A1 (en) Method and apparatus for detecting lane lines, electronic device and storage medium
US8527199B1 (en) Automatic collection of quality control statistics for maps used in autonomous driving
CN115690146A (zh) 一种多目标跟踪方法、装置、计算设备和存储介质
US11933617B2 (en) Systems and methods for autonomous route navigation
US20220270377A1 (en) Method and apparatus for detecting corner points of lane lines, electronic device and storage medium
US20240017719A1 (en) Mapping method and apparatus, vehicle, readable storage medium, and chip
EP4293630A1 (en) Method for generating lane line, vehicle, storage medium and chip
CN115205848A (zh) 目标检测方法、装置、车辆、存储介质及芯片
CN114708292A (zh) 一种对象状态估计方法、装置、计算设备和车辆的改进方法
CN113859265A (zh) 一种驾驶过程中的提醒方法及设备
CN115407344B (zh) 栅格地图创建方法、装置、车辆及可读存储介质
US11619950B2 (en) Systems and methods for projecting a three-dimensional (3D) surface to a two-dimensional (2D) surface for use in autonomous driving
CN116659529B (zh) 数据检测方法、装置、车辆及存储介质
CN115035357A (zh) 目标检测模型构建方法、目标检测方法、装置和计算设备
CN114764816A (zh) 一种对象状态估计方法、装置、计算设备和车辆

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination