CN112441022B - 一种车道中心线确定方法及装置 - Google Patents
一种车道中心线确定方法及装置 Download PDFInfo
- Publication number
- CN112441022B CN112441022B CN201910823629.9A CN201910823629A CN112441022B CN 112441022 B CN112441022 B CN 112441022B CN 201910823629 A CN201910823629 A CN 201910823629A CN 112441022 B CN112441022 B CN 112441022B
- Authority
- CN
- China
- Prior art keywords
- target
- lane
- determining
- candidate
- equation
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000008569 process Effects 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000003860 storage Methods 0.000 claims description 9
- 238000012804 iterative process Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 description 15
- 230000002093 peripheral effect Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000001914 filtration Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000006399 behavior Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009194 climbing Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请实施例公开了一种车道中心线确定方法及装置,应用于自动驾驶领域,用于准确确定出车道中心线,以便控制智能汽车进行安全行驶。本申请实施例方法包括:首先获取到由表示目标车辆周围的车辆行驶过程中的位置信息的行驶轨迹点,然后,再对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数,准确确定出车道中心线。
Description
技术领域
本申请涉及自动驾驶技术领域,尤其涉及一种车道中心线确定方法及装置。
背景技术
随着智能化***被应用到车辆驾驶领域中,越来越多的车辆上配置了能够实现自动驾驶功能或辅助驾驶功能的自动驾驶***。为了实现自动驾驶功能或辅助驾驶功能,车辆上的自动驾驶***通常需要从车辆周围的道路环境中识别出车道中心线,以确定车辆周围的行驶车道,从而可以做出适当的行为决策,控制车辆进行安全行驶。
目前,自动驾驶***确定车道线的方法通常有两种:一种是通过查询高精度地图,来获得高精度地图中预存的车道线信息,但该方法过度依赖于高精度地图的制作精度、更新和维护频率、以及对车辆定位的准确度,当遇到实际路段与高精度地图出现分歧时,***将无法准确识别出车道线;而另一种常用的识别车道线的方法则是检测视觉图像中的车道线,但该方法过度依赖于车道线的清晰度以及实时的环境条件,容易产生无法准确识别车道线的情况。
当通过上述两种方法均无法准确识别出车道线时,现有的解决方案是选取当前车辆正前方距离最近的车辆作为跟踪车辆,并生成该跟踪车辆的行驶轨迹,进而可以控制当前车辆沿着该行驶轨迹进行行驶。但这种解决方案对前方跟踪车辆的存在性以及驾驶行为依赖性较强,当前方不存在跟踪车辆时,该解决方案将无法生效,或者,在该跟踪车辆做出非常规的驾驶行为时,如该跟踪车辆突然***两侧车道时,若当前车辆仍沿着跟踪车辆的行驶轨迹进行行驶,即,执行同样的换道操作来强行跟随该跟踪车辆,将极有可能会造成与其他车辆的驾驶行为冲突,进而可能带来驾驶风险。
发明内容
本申请实施例提供了一种车道中心线确定方法及装置,用于准确确定出车道中心线,以便控制车辆进行安全行驶。
第一方面,本申请提供了一种车道线确定方法,该方法包括:在确定目标车辆所在道路的车道中心线时,首先可以确定出在目标车辆周围预设区域内的周围车辆,比如图3所示,图3中粗线框的长方形表示目标车辆,虚线框表示以目标车辆所在位置为中心的预设区域,则可以将虚线框中除目标车辆外的车辆均确定为目标车辆周围的车辆。然后,通过目标车辆(或与其具有通信连接关系的服务器、路侧单元等设备)获取到表示位于目标车辆周围的车辆行驶过程中的位置信息的多个行驶轨迹点或由多个行驶轨迹点组成的行驶轨迹点集,比如图4所示,图中白色方框表示目标车辆,白色方框周围车道线上所有白色的点则表示每一辆周围车辆的移动轨迹点随着该周围车辆的行驶而构成的行驶轨迹点集。其中,每一行驶轨迹点的位置信息可以用该行驶轨迹点的坐标来表示。接着,可以通过依次按序遍历每一行驶轨迹点,根据其中每两个在时间上相邻且属于同一个车辆的行驶轨迹点的位置信息(如坐标信息),按照两点确定一条直线的原理,分别确定出对应的多条直线以及每条直线分别对应的方程参数。进而可以根据确定出的每条直线对应的方程参数确定目标方程参数;最后,可以根据确定出的目标方程参数准确确定出车道中心线。
与传统技术相比,本申请实施例在计算出目标车辆周围的车辆的每两个相邻轨迹点确定的直线的方程参数后,可以利用这些周围车辆的行驶轨迹点对应的直线方程参数,进一步拟合出目标车辆所在道路的车道中心线的方程参数,用以准确确定出目标车辆所在道路的车道中心线,从而能够有效提高车辆行驶的安全性,避免带来驾驶风险。
在本申请实施例中,方程可以有如下两种可能的实现方式:
第一种方式是,各条直线对应的方程参数包括斜率。
那么,目标方程参数包括目标斜率,根据各条直线对应的方程参数确定目标方程参数包括:将各条直线对应的方程参数包括的斜率的均值确定为目标斜率。由于目前城市道路中的车道线大多数情况下都是平行且连续的直线,所以各车道中心线对应的斜率值基本是一致的,因此,通过该方式确定出的目标斜率的准确率较高。
在此基础上,一种可能的设计是,根据目标方程参数确定车道中心线包括:获取目标车辆的位置信息;根据目标斜率和目标车辆的位置信息确定目标车辆所在车道的车道中心线。由于当目标方程参数仅包括目标斜率,不包括目标截距(或目标截距为0)时,说明此时对应的周围车辆均位于目标车辆的正前方和正后方,与目标车辆所在车道的车道中心线是一致的,这样,在计算出目标斜率后,仅需要与目标车辆的位置信息进行融合计算,即可确定出车道中心线,不仅可以简化计算过程,还能够提高确定车道中心线的准确率。
进一步的,一种可能的设计是,该方法还包括:根据目标车辆所在车道的车道中心线以及预设车道宽度,得到目标车辆所在车道相邻车道的车道中心线。这样,在确定出目标车辆所在车道的车道中心线后,可以根据预先设置的车道中心线之间的距离应该满足预设的宽度范围(即2.8米至3.5米之间的某一取值),快速确定出该车道相邻车道的车道中心线,提高了确定道路中各个车道中心线的速率,且使得各个车道的宽度即中心线间距符合城市道路的构建特征。
第二种方式是,各条直线对应的方程参数包括斜率和截距。
那么,目标方程参数包括目标斜率和目标截距,根据各条直线对应的方程参数确定目标方程参数包括:将各条直线对应的方程参数包括的斜率的均值确定为目标斜率;对各条直线对应的方程参数包括的截距进行聚类得到目标截距。进而,根据目标方程参数确定车道中心线包括:将根据目标斜率和目标截距确定的直线作为车道中心线。
在本申请实施例中,通过上述方式,将各条直线对应的方程参数包括的各个斜率的平均值作为目标斜率,并通过对各条直线对应的方程参数包括的各个截距进行聚类得到目标截距,来确定车道中心线。可以不受道路上车道线的清晰度的影响,同时也不需要依靠高精度地图和高精度定位,即可准确确定出车道中心线,从而降低了自动驾驶***对高精度定位与高精度地图的依赖,进而也降低了自动驾驶***的成本。
一种可能的实现方式中,对对各条直线对应的方程参数包括的截距进行聚类得到目标截距包括:选取各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点;从各条直线对应的方程参数中确定与初始中心点的差值的绝对值小于或等于第一阈值的截距,并对与初始中心点的差值的绝对值小于或等于第一阈值的截距和所述初始中心点进行标记;将初始中心点与各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将初始中心点与移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到移动距离小于或等于第二阈值,并将在移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集;再次执行上述步骤以进行迭代,得到新的候选中心点;在迭代的过程中,若新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将新的候选中心点加入候选中心点集,否则丢弃候选中心集中与新的候选中心点之间的差值小于第三阈值的候选中心点,并将新的候选中心点加入候选中心点集中;再将候选中心点集中的候选中心点确定为目标截距。
在本申请实施例中,由于车辆通常都是沿车道中心线进行行驶的,因此,无论目标车辆的周围车辆是在哪个车道行驶,基本都是沿着该车道的车道中心线进行行驶的,所以利用沿着同一车道中心线行驶的周围车辆的行驶轨迹点确定的直线方程参数中的截距值应该是相近的,由此,通过上述方式对各条直线对应的方程参数包括的各个截距进行聚类后,能够得到更加准确的目标截距,即,提高了确定目标截距的准确率。
一种可能的实现方式中,根据目标方程参数确定车道中心线包括:获取最近一次用于确定车道中心线的最终方程参数,并根据最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数;再根据本次的最终方程参数确定车道中心线。
这样,在周期性的确定目标车辆所在道路的车道中心线时,通过对每一次对应的方程参数进行滤波的方式,可以稳定每一次对应的方程参数的取值,从而稳定了每一次目标车辆的行车路线,使其不会发生过于频繁的变动,影响车辆行驶的安全性。
一种可能的实现方式中,若车道中心线为多条,则该方法还包括:将多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线。通过该方式可以使得这多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内,进而能够使其满足城市道路规划要求,并确保了确定出的车道中心线结果是正确的。
第二方面,本申请还提供了一种车道中心线确定装置,该装置包括:获取单元,用于获取位于目标车辆周围的车辆的行驶轨迹点,行驶轨迹点表示车辆行驶过程中的位置信息;第一确定单元,用于根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点分别确定对应的直线;第二确定单元,用于根据各条直线对应的方程参数确定目标方程参数;第三确定单元,用于根据目标方程参数确定车道中心线。
一种可能的实现方式中,各条直线对应的方程参数包括斜率,目标方程参数包括目标斜率,第二确定单元具体用于:将方程参数中各个斜率的均值确定为目标斜率。
一种可能的实现方式中,第三确定单元包括:位置信息获取子单元,用于获取目标车辆的位置信息;第三确定子单元,用于根据目标斜率和目标车辆的位置信息确定目标车辆所在车道的车道中心线。
一种可能的实现方式中,该装置还包括:获得单元,用于根据目标车辆所在车道的车道中心线以及预设车道宽度,得到目标车辆所在车道相邻车道的车道中心线。
一种可能的实现方式中,各条直线对应的方程参数包括斜率和截距,目标方程参数包括目标斜率和目标截距,第二确定单元包括:目标斜率确定子单元,用于将各条直线对应的方程参数包括的斜率的均值确定为目标斜率;目标截距获得子单元,用于对各条直线对应的方程参数包括的截距进行聚类得到目标截距;
第三确定单元具体用于:将根据目标斜率和目标截距确定的直线作为车道中心线。
一种可能的实现方式中,目标截距获得子单元包括:选取子单元,用于选取各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点;标记子单元,用于从各条直线对应的方程参数中确定与初始中心点的差值的绝对值小于或等于第一阈值的截距,并对与所述初始中心点的差值的绝对值小于或等于第一阈值的截距和初始中心点进行标记;第一迭代子单元,用于将初始中心点与各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将初始中心点与移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到移动距离小于或等于第二阈值,并将在移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集;第二迭代子单元,用于再次执行上述步骤以进行迭代,得到新的候选中心点;中心点确定子单元,用于在迭代的过程中,若新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将新的候选中心点加入候选中心点集,否则丢弃候选中心集中与新的候选中心点之间的差值小于第三阈值的候选中心点,并将新的候选中心点加入候选中心点集中;目标截距确定子单元,用于将候选中心点集中的候选中心点确定为目标截距。
一种可能的实现方式中,第三确定单元包括:方程参数确定子单元,用于获取最近一次用于确定车道中心线的最终方程参数,并根据最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数;车道中心线确定子单元,用于根据本次的最终方程参数确定车道中心线。
一种可能的实现方式中,若车道中心线为多条,则该装置还包括:第四确定单元,用于将多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线。
第三方面,本申请还提供了一种车道中心线确定设备,该车道中心线确定设备包括:存储器、处理器,
存储器,用于存储指令;处理器,用于执行存储器中的指令,执行上述方法。
第四方面,本申请还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例在确定目标车辆所在道路的车道中心线时,首先获取到表示位于目标车辆周围的车辆行驶过程中的位置信息的行驶轨迹点,然后,再对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数确定出车道中心线。可见,由于车辆通常是沿车道中心线进行行驶的,所以本申请实施例在计算出目标车辆周围的车辆的每两个相邻轨迹点确定的直线的方程参数后,可以利用这些周围车辆的行驶轨迹点对应的直线方程参数,进一步拟合出目标车辆所在道路的车道中心线的方程参数,用以准确确定出目标车辆所在道路的车道中心线,以便控制目标车辆沿该车道中心线进行安全行驶,因此,相较于目前控制目标车辆沿着前方跟踪车辆的行驶轨迹进行行驶的方法而言,能够有效提高车辆行驶的安全性,避免带来驾驶风险。
附图说明
图1为本申请实施例提供的一种硬件场景的示例图;
图2为本申请实施例提供的一种车道中心线确定方法的流程图;
图3为本申请实施例提供的位于以目标车辆所在位置为中心的预设区域内的周围车辆的示意图;
图4为本申请实施例提供的目标车辆周围的车辆的行驶轨迹点的示意图;
图5为本申请实施例提供的各条直线对应的方程参数的分布示意图;
图6为本申请实施例提供的一种车道中心线确定装置的结构框图;
图7为本申请实施例提供的一种车道中心线确定设备的结构示意图。
具体实施方式
本申请实施例提供了一种车道中心线确定方法及装置,用于准确确定出车道中心线,以提高车辆行驶的安全性。
下面结合附图,对本申请的实施例进行描述。
目前在控制车辆进行自动驾驶时,通常是选取当前车辆正前方距离最近的车辆作为跟踪车辆,并控制当前车辆沿着该跟踪车辆的行驶轨迹进行行驶,这种方式对跟踪车辆的存在性以及驾驶行为依赖性较强,容易带来驾驶风险。
为了解决上述问题,本申请提供了一种车道中心线确定方法,先获取到表示位于目标车辆周围的车辆的行驶过程中的位置信息的行驶轨迹点,然后,对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数,准确确定出车道中心线。
参见图1,其示出了本申请实施例提供的一种硬件场景的示例图,如图1所示,该场景中,包括了传感器101和处理器102,其中,处理器102可以是车辆的整车控制器,或者是与整车控制器具有通信连接关系的终端、计算机、服务器等具有数据处理能力的设备。传感器101可以是安装在车辆上的激光雷达、毫米波雷达、平面摄像头等设备,利用传感器101可以获取到当前车辆周围车辆的位置以及速度信息等,比如,可以利用毫米波雷达向周围车辆发送毫米波并接收反射回的毫米波,用以计算出周围车辆所在位置以及行驶速度,并将得到的计算结果发送至处理器102,以便处理器102根据周围车辆的位置以及速度,拟合出当前车辆所在道路的车道中心线的方程参数,用以准确确定出当前车辆所在道路的车道中心线,以处理器102为当前车辆的整车控制器为例,当其接收到传感器101发送的周围车辆的实时位置和速度后,可以根据每一周围车辆在相邻两个时刻不同位置确定出的直线方程参数,拟合出当前车辆所在道路的车道中心线的方程参数,用以准确确定出当前车辆所在道路的车道中心线。
或者,在另一硬件场景中,可以将传感器101和处理器102集成于车辆或与车辆具有通信连接关系的终端、计算机、服务器等具有数据处理能力的设备中,即,可以利用车辆或与车辆具有通信连接关系的终端、计算机、服务器等具有数据处理能力的设备同时实现传感器101和处理器102的上述功能。例如,以与车辆具有通信连接关系的服务器为例,当其获取到车辆的周围车辆的实时位置和速度后,可以根据每一周围车辆在相邻两个时刻不同位置确定出的直线方程参数,拟合出当前车辆所在道路的车道中心线的方程参数,用以准确确定出当前车辆所在道路的车道中心线。
或者,在另一硬件场景中,也可以利用路边设备(如路侧单元)取代传感器101,用以通过车联网的方式与处理器102进行数据通信。具体来讲,可以通过设置在道路两侧指定位置的路侧单元(比如设置在红绿灯处的路侧单元)获取当前车辆周围车辆的实时位置和行驶速度,并将其发送至处理器102,以便处理器102根据周围车辆的位置以及速度,拟合出当前车辆所在道路的车道中心线的方程参数,用以准确确定出当前车辆所在的车道中心线,从而解决了目前无法准确确定出车道中心线的问题。
或者,在另一硬件场景中,也可以利用路边设备(如路侧单元)同时取代传感器101和处理器102,用以同时实现二者的上述功能。具体来讲,首先可以通过设置在路边的路侧单元等路边设备获取当前车辆周围车辆的实时位置和行驶速度,然后该路侧单元可以根据获取到的每一周围车辆的位置以及速度,拟合出当前车辆所在道路的车道中心线的方程参数,用以准确确定出当前车辆所在的车道中心线,从而解决了目前无法准确确定出车道中心线的问题。
需要注意的是,上述几种应用场景仅是为了便于理解本申请而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。
基于以上应用场景,本申请实施例提供了一种车道中心线确定方法,下面对该方法进行介绍。
参见图2,其示出了本申请实施例提供的一种车道中心线确定方法的流程图,该方法可由前述硬件结构来执行,具体可以包括以下步骤:
S201:获取位于目标车辆周围的车辆的行驶轨迹点,其中,行驶轨迹点表示车辆行驶过程中的位置信息。
在本实施例中,将采用本实施例确定其所在道路的车道中心线的任一车辆定义为目标车辆,在确定目标车辆所在道路的车道中心线时,首先需要获取到位于目标车辆周围的车辆的行驶轨迹点,该行驶轨迹点指的是车辆行驶过程中的位置信息,且本申请实施例不限定获取到的行驶轨迹点的个数,比如可以获取到多个行驶轨迹点或者是由多个行驶轨迹点组成的集合等。
其中,本申请实施例中目标车辆周围的车辆指的是位于以目标车辆所在位置为中心的预设区域内的车辆,可以是一辆也可以是多辆,如图3所示,图中粗线框的长方形表示目标车辆,虚线框表示以目标车辆所在位置为中心的预设区域,虚线框中除目标车辆外的车辆均为目标车辆周围的车辆。需要说明的是,该预设区域的取值范围可根据实现情况进行设置,本申请实施例对此不进行限制,比如可以以目标车辆所在位置为中心的前方100米、后方50米、左侧30米、右侧30米的范围设置为预设区域等。
并且,为了提高周围车辆的识别准确率,需要将预设区域内速度大于或等于预设速度的车辆,作为目标车辆周围的车辆,这是为了排除预设区域内停放的车辆(或路面上的石头等其他非车辆物质)或速度特别低的车辆,这些车辆的速度与目标车辆相比,并非正常车速,对后续车道中心线的确定也基本没有作用,所以在确定目标车辆周围的车辆时,需要将这些速度低于预设速度的车辆排除。其中,预设速度指的是用于区分预设区域内目标车辆周围的车辆与非周围的车辆的临界值,若预设区域内某一车辆的速度大于或等于该临界值,则可以将其作为目标车辆周围的车辆,反之,则不能将其作为目标车辆周围的车辆。需要说明的是,该预设速度的取值可根据实际情况进行设置,本申请实施例对此不进行限制,比如可以将预设速度设置为3km/h等。
需要说明的是,在本实施例中,可以将每一周围车辆的同一指定位置的移动轨迹点作为对应周围车辆的行驶轨迹点,比如可以将每一周围车辆的中心位置的移动轨迹点作为对应周围车辆的行驶轨迹点,如图3所示,可以将图中所示的一辆周围车辆中心位置对应的“黑点”作为该周围车辆的一个移动轨迹点,随着该周围车辆的行驶,可以得到多个“黑点”,进而可以利用这些黑点的位置信息表示该周围车辆行驶过程中的位置信息,并将其作为该周围车辆的行驶轨迹点,如图4所示,图中白色方框表示目标车辆,白色方框周围车道线上所有白色的点则表示每一辆周围车辆的移动轨迹点随着该周围车辆的行驶而构成的行驶轨迹点集。其中,每一行驶轨迹点的位置信息可以用该行驶轨迹点的坐标来表示。
具体来讲,可以采用现有或未来出现的位置获取方法,获取周围车辆的多个行驶轨迹点的位置信息,比如,可以利用图1所示的传感器101,如目标车辆上安装的激光雷达、平面摄像头、或毫米波雷达等发射和接收相应的光波,用以计算周围车辆的多个行驶轨迹点的位置信息,具体计算方法与现有方法一致,在此不再赘述。
需要说明的是,将图3所示的周围车辆的中心位置对应的“黑点”作为行驶轨迹点仅仅是一种示例,本领域技术人员可根据实际情况确定出周围车辆的行驶轨迹点的其他表现方式,比如车头位置或车尾位置等,本申请实施例对此不进行限定。但为了便于描述,本申请后续将以周围车辆中心位置对应的行驶轨迹点的坐标信息的集合作为对应周围车辆的行驶轨迹点集,而其它表示形式的行驶轨迹点集的处理方式与之类似,不再一一赘述。
S202:根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点分别确定对应的直线。
在本实施例中,通过步骤S201获取到位于目标车辆周围的车辆的行驶轨迹点后,进一步可以通过对获取到的行驶轨迹点进行数据处理,以根据处理结果确定出对应的直线。
具体来讲,由于获取到的行驶轨迹点表示的是目标车辆周围的车辆行驶过程中的位置信息,即,是表示周围车辆行驶过程中的坐标信息,如图4所示,在获取到的这些行驶轨迹点中,每一车辆各自对应了多个行驶轨迹点,进而可以通过依次按序遍历每一行驶轨迹点,并根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点的坐标信息,按照两点确定一条直线的原理,分别确定出对应的多条直线以及每条直线分别对应的方程参数。
其中,需要说明的是,为了提高周围车辆行驶轨迹点的识别准确率,需要保证获取到的所有行驶轨迹点中属于同一个周围车辆的、相邻两个行驶轨迹点的距离大于或等于预设距离,且该预设距离的具体取值可根据实际情况进行设置,本申请对此不进行限定。
这样,可以有效避免采集到错误的行驶轨迹点,比如,可以避免采集到传感器噪声点等距离较小的移动轨迹点作为行驶轨迹点,从而提高了周围车辆行驶轨迹点的识别准确率。
在本实施例的一种可能的实施方式中,通过本步骤S202确定出的各条直线对应的方程参数可以包括两种实现方式:第一种可以为斜率,并可以利用k'来表示,此时对应的车辆均位于目标车辆的正前方和正后方,与目标车辆所在车道的车道中心线是一致的,进而可以根据该斜率以及目标车辆的当前位置信息确定出车道中心线;第二种可以为斜率和截距,并分别可以利用k'和b'来表示,进而可以将对应的直线表示为y'=k'x+b',此时对应的周围车辆可以位于目标车辆的侧方向,比如,位于目标车辆的左前方或右后方等,与目标车辆所在车道的车道中心线是不一致的。
S203:根据各条直线对应的方程参数确定目标方程参数。
在本实施例中,通过步骤S202确定出多条直线以及每条直线分别对应的方程参数后,进一步可以通过对各条直线对应的方程参数进行数据处理,以根据处理结果确定出目标方程参数,其中,目标方程的参数指的是目标车辆所在道路的车道中心线对应的直线方程的参数。
需要说明的是,由于通过上述步骤S202中确定出的方程参数可以包括两种实现方式,进而可以根据不同的方程参数取值,确定出不同的目标方程参数,当方程参数为斜率k'时,则通过对各个斜率k'的处理,可以确定出目标方程参数也为斜率,并可以利用k来表示;当方程参数为斜率k'和截距b'时,则通过对各个斜率k'和截距b'的处理,可以确定出目标方程参数也为斜率和截距,并可以利用k和b来表示,这两种实现方式确定各自对应的目标方程参数的两种具体实现过程可参见后续实施例的详细介绍。
在本实施例中,通过本步骤S203确定出各条直线对应的方程参数后,进一步还可以利用这些方程参数共同构成方程参数集,用以确定车道中心线。
S204:根据目标方程参数确定车道中心线。
在本实施例中,通过步骤S203确定出目标方程参数后,进一步可利用该目标方程参数确定出车道中心线,其中,当确定出的目标方程参数为斜率k时,则确定出的车道中心线可以表示为:y=kx;当确定出的目标方程参数为斜率k和截距b时,则确定出的车道中心线可以表示为:y=kx+b。
综上,本实施例提供的一种车道中心线确定方法,在确定目标车辆所在道路的车道中心线时,首先获取到表示位于目标车辆周围的车辆行驶过程中的位置信息的行驶轨迹点,然后,再对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数确定出车道中心线。可见,由于车辆通常是沿车道中心线进行行驶的,所以本申请实施例在计算出目标车辆周围的车辆的每两个相邻轨迹点确定的直线的方程参数后,可以利用这些周围车辆的行驶轨迹点对应的直线方程参数,进一步拟合出目标车辆所在道路的车道中心线的方程参数,用以准确确定出目标车辆所在道路的车道中心线,以便控制目标车辆沿该车道中心线进行安全行驶,因此,相较于目前控制目标车辆沿着前方跟踪车辆的行驶轨迹进行行驶的方法而言,能够有效提高车辆行驶的安全性,避免带来驾驶风险。
一种可选的实现方式是,为了提高车道中心线确定结果的准确性,本实施例还可以执行下述步骤A1-A2:
步骤A1:获取最近一次用于确定车道中心线的最终方程参数,并根据最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数。
在本实现方式中,由于是周期性的多次获取目标车辆周围的车辆的行驶轨迹点,用以周期性的确定其所在道路的车道中心线,因此,为了提高车道中心线确定结果的准确性,可以根据最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数。
具体来讲,为了稳定目标车辆的行车路线,使其不会发生过于频繁的变动,可以采用一阶数字滤波的方式,来确定每一次的最终方程参数,使得每一次的最终方程参数更加稳定。具体的,可以先将最近一次确定的车道中心线的最终方程参数和本次确定的车道中心线的目标方程参数分别作为滤波的两个输入值,再将本次的最终方程参数作为滤波的输出值,进行滤波,以确定出本次的最终方程参数,具体计算公式如下:
y(n)=q*x(n)+(1-q)*y(n-1)
其中,y(n)表示本次的最终方程参数;q为滤波系数;x(n)表示本次确定的车道中心线的目标方程参数;y(n-1)表示最近一次确定的车道中心线的最终方程参数。
需要说明的是,在上述计算过程中,本次的最终方程参数类型y(n)与本次确定的车道中心线的目标方程参数x(n)类型和最近一次确定的车道中心线的最终方程参数类型y(n-1)是一致的。例如,若确定出的本次的最终方程参数y(n)为斜率,则滤波时采用的输入为:本次确定的车道中心线的目标方程参数中包括的斜率以及最近一次确定的车道中心线的最终方程参数中包括的斜率;同理,若确定出的本次的最终方程参数y(n)为截距,则滤波时采用的输入为:本次确定的车道中心线的目标方程参数中包括的截距以及最近一次确定的车道中心线的最终方程参数中包括的截距。
步骤A2:根据本次的最终方程参数确定车道中心线。
通过步骤A1确定出本次的最终方程参数后,进一步的,可以利用该本次的最终方程参数中包含的斜率(或斜率和截距),确定出车道中心线。其中,需要说明的是,若确定出的车道中心线为多条,则这多条车道中心线中相邻两条车道中心线的宽度应该在预设宽度范围内,使其满足城市道路规划要求,其中,该预设宽度范围可根据城市道路的特征进行设定,比如可以设定为2.8米至3.5米之间。
这样,在周期性的确定目标车辆所在道路的车道中心线时,通过对每一次对应的方程参数进行滤波的方式,可以稳定每一次对应的方程参数的取值,从而稳定了每一次目标车辆的行车路线,使其不会发生过于频繁的变动,影响车辆行驶的安全性。
另外,为了进一步提高车道中心线确定结果的准确性,在通过本申请实施例的方式确定出车道中心线后,还可以将该确定结果与利用现有确定车道线的两种方式(利用高精度地图和高精度定位的方式、检测视觉图像中的车道线的方式)确定出的结果进行对比分析,以得到更为准确的车道中心线。比如,可以将三个确定结果进行求平均计算,并将计算结果作为最终的确定结果,或者,也可以利用预先为三个确定结果设置的权重,进行加权计算,以计算出最终的确定结果等。
接下来,本实施例将对通过步骤S203“根据各条直线对应的方程参数确定目标方程参数”的两种具体实现过程进行介绍。
需要说明的是,尽管通过上述步骤S202确定出的方程参数可以包括两种实现方式(第一种可以为斜率、第二种可以为斜率和截距),进而可以根据不同的方程参数取值,确定出不同的目标方程参数,但由于目前城市道路中的车道线大多数情况下都是平行且连续的直线,比如高速公路、城市高架道路上的车道线均为平行且连续的直线,所以各车道中心线对应的斜率值基本是一致的,因此,对于上述这两种实现方式中斜率的处理方式是一致的,具体计算过程请参见下述步骤(1)。当方程参数中包括截距(即对应上述第二种实现方式)时,对于截距的处理方式可参见下述步骤(2):
(1)在本实施例的第一种实现方式中,当各条直线对应的方程参数包括斜率时,目标方程参数包括目标斜率,则步骤S203可以包括:将各条直线对应的方程参数包括的斜率的均值确定为目标斜率。
在本实现方式中,当通过步骤S202根据行驶轨迹点确定出的各条直线对应的方程参数包括斜率k'时,目标方程参数也必定会包括目标斜率,并可以利用k来表示。需要说明的是,由于目前城市道路中的车道线大多数情况下都是平行且连续的直线,所以各车道中心线对应的斜率值基本是一致的,因此,在计算目标斜率k时,可以对各条直线对应的方程参数包括的斜率k'进行求平均计算,并将得到的平均值作为目标斜率k的值。
在此基础上,当方程参数仅包括斜率,即目标方程参数仅包括目标斜率,不包括目标截距(或目标截距为0)时,步骤S204可以包括:获取目标车辆的位置信息;根据目标斜率和目标车辆的位置信息确定目标车辆所在车道的车道中心线。
具体来讲,当目标方程参数仅包括目标斜率,不包括目标截距(或目标截距为0)时,说明此时对应的周围车辆均位于目标车辆的正前方和正后方,与目标车辆所在车道的车道中心线是一致的,进而可以在获取到目标车辆的位置信息(如坐标信息)后,根据目标斜率以及该目标车辆的位置信息确定出目标车辆所在车道的车道中心线。
这样,在计算出目标斜率后,仅需要与目标车辆的位置信息进行融合计算,即可确定出车道中心线,不仅可以简化计算过程,还能够提高确定车道中心线的准确率。
进一步的,在确定出目标车辆所在车道的车道中心线后,还可以根据目标车辆所在车道的车道中心线以及预设车道宽度,得到目标车辆所在车道相邻车道的车道中心线。
具体来讲,根据目前城市道路规划要求,对于存在多条车道的道路来说,相邻两条车道中心线的宽度应该在预设宽度范围内,且该预设宽度范围一般设置为2.8米至3.5米之间,即预设的车道宽度一般为2.8米至3.5米之间,因此,在确定出目标车辆所在车道的车道中心线后,可以根据预先设置的车道宽度,确定出该车道相邻车道的车道中心线,且两条车道的车道中心线之间的距离满足预设的宽度范围(即2.8米至3.5米之间的某一取值)。
(2)在本实施例的第二种实现方式中,当各条直线对应的方程参数包括斜率和截距时,目标方程参数包括目标斜率和目标截距,则步骤S203可以包括:将各条直线对应的方程参数包括的斜率的均值确定为目标斜率;对各条直线对应的方程参数包括的截距进行聚类得到目标截距,进而步骤S204可以包括:将根据目标斜率和目标截距确定的直线作为车道中心线。
在本实现方式中,当通过步骤S202根据行驶轨迹点确定出的各条直线对应的方程参数包括截距b'时,则目标方程参数也包括目标截距,并可以利用b来表示。需要说明的是,由于车辆通常都是沿车道中心线进行行驶的,因此,无论目标车辆周围的车辆是在哪个车道行驶,基本都是沿着该车道的车道中心线进行行驶的,所以利用沿着同一车道中心线行驶的车辆的行驶轨迹点确定的直线方程参数中的截距值应该是相近的,进而可利用现有或未来出现的聚类算法,对各条直线对应的方程参数包括的各个截距b'进行聚类,比如,可利用基于核密度估计的爬山算法(Mean shift算法),对各条直线对应的方程参数包括的截距b'进行聚类,并根据得到的聚类结果,确定出目标截距b的值,即,聚类后得到了几个可以作为聚类中心点的截距b',就相当于得到了几个车道中心线对应的方程参数中包含目标截距b的值,进而,可以利用确定出的目标截距b的值以及通过步骤(1)确定出的目标斜率k的值,确定出对应的直线,用以作为车道中心线。其中,对各条直线对应的方程参数包括的截距b'进行聚类的具体聚类过程可以包括下述步骤B1-B6:
步骤B1:选取各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点。
在本申请实施例中,在对各条直线对应的方程参数包括的各个截距b'进行聚类的过程中,首先,从各条直线对应的方程参数中所有未被标记的截距b'中选取一个截距b'作为首次聚类的中心点,即初始中心点,并将其定义为center。
步骤B2:从各条直线对应的方程参数中确定与初始中心点的差值的绝对值小于或等于第一阈值的截距,并对与初始中心点的差值的绝对值小于或等于第一阈值的截距和初始中心点进行标记。
通过步骤B1选取出作为初始中心点center的截距后,可以在各条直线对应的方程参数中,以该初始中心点为圆心,从分布在其四周的截距中,查找出与其的差值的绝对值小于或等于第一阈值的截距,将这些截距归属于初始中心点,形成以初始中心点为中心的簇,并将该簇中这些查找出来的截距和初始中心点对应的截距进行标记,以表明这些截距是已经做过聚类计算的截距。其中,第一阈值的取值可根据实际情况进行设置,本申请对此不进行限定,比如可以将第一阈值取为1.0。
步骤B3:将初始中心点与各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将初始中心点与移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到移动距离小于或等于第二阈值,并将在移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集。
在本实现方式中,可以计算出步骤B1中确定的初始中心点center与各条直线对应的方程参数中每个截距之间的差值之和,并将该值作为移动距离,定义为shift,然后,将步骤B1中确定的初始中心点center与该移动距离shift之和作为新的初始中心点,并将该新的初始中心点定义为center1,则center1=center+shift,进而可以利用该新的初始中心点center1来重复执行步骤B2,在进行多次迭代计算后,直至移动距离shift的取值小于或等于第二阈值时,停止迭代计算,并将此时对应的初始中心点center1作为候选中心点加入候选中心点集。其中,第二阈值的取值可根据实际情况进行设置,本申请对此不进行限定,比如可以将第二阈值取为0.1。
步骤B4:再次执行上述步骤以进行迭代,得到新的候选中心点。
通过步骤B3得到候选中心点集中候选中心点center1后,可再次重复执行上述步骤B3以进行迭代,得到新的候选中心点,并将其加入候选中心点集中。
步骤B5:在迭代的过程中,若新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将该新的候选中心点加入候选中心点集,否则丢弃候选中心集中与该新的候选中心点之间的差值小于第三阈值的候选中心点,并将该新的候选中心点加入候选中心点集中。
在执行上述步骤B4进行迭代计算的过程中,若得到的新的候选中心点与候选中心集中已经存在的候选中心点之间的差值均大于或等于第三阈值,则可以将该新的候选中心点作为一个新的聚类中心点加入到候选中心点集中,否则,若得到的新的候选中心点与候选中心集中某些已经存在的候选中心点之间的差值均小于第三阈值,则可以将该新的候选中心点与候选中心集中这些已经存在的候选中心点进行合并,即,将候选中心集中与该新的候选中心点之间的差值小于第三阈值的候选中心点丢弃的同时,将该新的候选中心点作为一个新的聚类中心点加入到候选中心点集中。其中,第三阈值的取值可根据实际情况进行设置,本申请对此不进行限定,比如可以将第三阈值取为3.0。
步骤B6:将候选中心点集中的候选中心点确定为目标截距。
通过上述步骤B1-B5确定出候选中心点集中的所有的候选中心点后,可以将每一候选中心点分别确定为目标截距的取值,用以确定出对应的车道中心线。
需要说明的是,在确定出同一道路上的多条车道中心线时,应该确保多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内,即,可以将多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线,且该预设宽度范围可根据城市道路的特征进行设定,比如可以设定为2.8米至3.5米之间。若计算出相邻两条车道中心线的宽度未在预设宽度范围内,则表明确定出的车道中心线结果是不正确的。
举例说明:参见图5,其示出了本申请实施例提供的各条直线对应的方程参数的分布示意图,利用上述第(2)种实现方式中的步骤B1-B6对图5上方图中的各个截距进行聚类计算可以得到三个聚类后的中心点值,并可以分别将其作为目标截距的值。同时,通过执行上述第(1)种实现方式中的步骤,对图5下方图中的各个斜率进行求平均计算,再将得到的平均值作为目标斜率的值。进而可以利用得到的目标斜率以及3个目标截距确定出3条车道中心线,且从图5可以看出各条直线对应的方程参数中截距分布的三个峰值间隔在3.5左右,因此得到的3条车道中心线中相邻两条车道中心线的宽度是在预设的宽度范围内,符合城市道路的特征,从而表明车道中心线的确定结果是正确的。
再举例说明:假设利用上述第(2)种实现方式中的步骤B1-B6对各个截距进行聚类计算得到的三个聚类中心点的值分别为-5、0、5,则可以分别将其作为目标截距b1、b2、b3的值,即,b1=-5、b2=0、b3=5,同时,假设通过执行上述第(1)种实现方式中的步骤,计算出目标斜率为则得到的3条车道中心线分别为 通过计算可得这3条车道中心线中相邻两条车道中心线的宽度为3,是在预设的宽度范围内,符合城市道路的特征,从而表明这三条车道中心线的确定结果是正确的,如图4中三条平行的白线所示。
需要说明的是,上述步骤B1-B6所描述的对各条直线对应的方程参数包括的各个截距b'进行聚类的方法并不是唯一的,仅是实现聚类过程的一种示例,也可以采取其他聚类算法进行聚类计算,本申请实施例对此不进行限制。
综上,将各条直线对应的方程参数包括的各个斜率k'的平均值作为目标斜率k,并通过对各条直线对应的方程参数包括的各个截距b'进行聚类得到目标截距,用以确定车道中心线的方式,可以不受道路上车道线的清晰度的影响,同时也不需要依靠高精度地图和高精度定位,即可准确确定出车道中心线,从而降低了自动驾驶***对高精度定位与高精度地图的依赖,进而也降低了自动驾驶***的成本。
为便于更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关装置。请参见图6所示,本申请实施例提供的车道中心线确定装置600。该装置600可以包括:获取单元601、第一确定单元602、第二确定单元603和第三确定单元604。其中,获取单元601用于执行图2所示实施例中的S201。第一确定单元602用于执行图2所示实施例中的S202。第二确定单元603用于执行图2所示实施例中的S203。第三确定单元604用于执行图2所示实施例中的S204。具体的,
获取单元601,用于获取位于目标车辆周围的车辆的行驶轨迹点,行驶轨迹点表示车辆行驶过程中的位置信息;
第一确定单元602,用于根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点分别确定对应的直线;
第二确定单元603,用于根据各条直线对应的方程参数确定目标方程参数;
第三确定单元604,用于根据目标方程参数确定车道中心线。
在本实施例的一种实现方式中,各条直线对应的方程参数包括斜率,目标方程参数包括目标斜率,第二确定单元603具体用于:将方程参数中各个斜率的均值确定为目标斜率。
在本实施例的一种实现方式中,第三确定单元604包括:位置信息获取子单元,用于获取目标车辆的位置信息;第三确定子单元,用于根据目标斜率和目标车辆的位置信息确定目标车辆所在车道的车道中心线。
在本实施例的一种实现方式中,该装置还包括:获得单元,用于根据目标车辆所在车道的车道中心线以及预设车道宽度,得到目标车辆所在车道相邻车道的车道中心线。
在本实施例的一种实现方式中,各条直线对应的方程参数包括斜率和截距,目标方程参数包括目标斜率和目标截距,第二确定单元603包括:
目标斜率确定子单元,用于将各条直线对应的方程参数包括的斜率的均值确定为目标斜率;
目标截距获得子单元,用于对各条直线对应的方程参数包括的截距进行聚类得到目标截距;
第三确定单元604具体用于:将根据目标斜率和目标截距确定的直线作为车道中心线。
在本实施例的一种实现方式中,目标截距获得子单元包括:
选取子单元,用于选取各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点;
标记子单元,用于从各条直线对应的方程参数中确定与初始中心点的差值的绝对值小于或等于第一阈值的截距,并对与所述初始中心点的差值的绝对值小于或等于第一阈值的截距和初始中心点进行标记;
第一迭代子单元,用于将初始中心点与各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将初始中心点与移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到移动距离小于或等于第二阈值,并将在移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集;
第二迭代子单元,用于再次执行上述步骤以进行迭代,得到新的候选中心点;
中心点确定子单元,用于在迭代的过程中,若新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将新的候选中心点加入候选中心点集,否则丢弃候选中心集中与新的候选中心点之间的差值小于第三阈值的候选中心点,并将新的候选中心点加入候选中心点集中;
目标截距确定子单元,用于将候选中心点集中的候选中心点确定为目标截距。
在本实施例的一种实现方式中,第三确定单元604包括:
方程参数确定子单元,用于获取最近一次用于确定车道中心线的最终方程参数,并根据最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数;
车道中心线确定子单元,用于根据本次的最终方程参数确定车道中心线。
在本实施例的一种实现方式中,若车道中心线为多条,则该装置还包括:
第四确定单元,用于将多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线
综上所述,本申请实施例中提供的车道中心线确定装置中,在确定目标车辆所在道路的车道中心线时,首先获取到表示位于目标车辆周围的车辆行驶过程中的位置信息的行驶轨迹点,然后,再对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数确定出车道中心线。可见,由于车辆通常是沿车道中心线进行行驶的,所以本申请实施例在计算出目标车辆周围的车辆的每两个相邻轨迹点确定的直线的方程参数后,可以利用这些周围车辆的行驶轨迹点对应的直线方程参数,进一步拟合出目标车辆所在道路的车道中心线的方程参数,用以准确确定出目标车辆所在道路的车道中心线,以便控制目标车辆沿该车道中心线进行安全行驶,因此,相较于目前控制目标车辆沿着前方跟踪车辆的行驶轨迹进行行驶的方法而言,能够有效提高车辆行驶的安全性,避免带来驾驶风险。
参见图7,本申请实施例提供了一种车道中心线确定设备700,该设备包括存储器701、处理器702和通信接口703,
存储器701,用于存储指令;
处理器702,用于执行存储器701中的指令,执行上述应用于图2所示实施例中的车道中心线确定方法;
通信接口703,用于进行通信。
存储器701、处理器702和通信接口703通过总线704相互连接;总线704可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在具体实施例中,处理器702用于在确定目标车辆所在道路的车道中心线时,获取表示位于目标车辆周围的车辆行驶过程中的位置信息的行驶轨迹点,然后,再对每两个在时间上相邻且属于同一个车辆的行驶轨迹点进行数据处理,以分别确定出对应的直线,接着,可以根据确定出的每条直线对应的方程参数确定出目标方程参数,最后,再根据该目标方程参数确定出车道中心线。该处理器702的详细处理过程请参考上述图2所示实施例中S201、S202、S203和S204的详细描述,这里不再赘述。
上述存储器701可以是随机存取存储器(random-access memory,RAM)、闪存(flash)、只读存储器(read only memory,ROM)、可擦写可编程只读存储器(erasableprogrammable read only memory,EPROM)、电可擦除可编程只读存储器(electricallyerasable programmable read only memory,EEPROM)、寄存器(register)、硬盘、移动硬盘、CD-ROM或者本领域技术人员知晓的任何其他形式的存储介质。
上述处理器702例如可以是中央处理器(central processing unit,CPU)、通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
上述通信接口703例如可以是接口卡等,可以为以太(ethernet)接口或异步传输模式(asynchronous transfer mode,ATM)接口。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述车道中心线确定方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑业务划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各业务单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件业务单元的形式实现。
集成的单元如果以软件业务单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的业务可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些业务存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (8)
1.一种车道中心线确定方法,其特征在于,所述方法包括:
获取位于目标车辆周围的车辆的行驶轨迹点,行驶轨迹点表示车辆行驶过程中的位置信息;
根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点分别确定对应的直线;
将各条直线对应的方程参数包括的斜率的均值确定为目标方程参数包括的目标斜率其中,目标方程参数为所述目标车辆所在道路的车道中心线对应的直线方程的参数;
对各条直线对应的方程参数包括的截距进行聚类得到所述目标方程参数包括的目标截距;
将根据所述目标斜率和所述目标截距确定的直线作为车道中心线;
其中,所述对各条直线对应的方程参数包括的截距进行聚类得到所述目标方程参数包括的目标截距,包括:
选取所述各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点;
从所述各条直线对应的方程参数中确定与所述初始中心点的差值的绝对值小于或等于第一阈值的截距,并对所述与所述初始中心点的差值的绝对值小于或等于第一阈值的截距和所述初始中心点进行标记;
将所述初始中心点与所述各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将所述初始中心点与所述移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到所述移动距离小于或等于第二阈值,并将在所述移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集;
再次执行上述步骤以进行迭代,得到新的候选中心点;
在迭代的过程中,若所述新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将所述新的候选中心点加入所述候选中心点集,否则丢弃所述候选中心集中与所述新的候选中心点之间的差值小于所述第三阈值的候选中心点,并将所述新的候选中心点加入所述候选中心点集中;
将所述候选中心点集中的候选中心点确定为所述目标截距。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标方程参数确定车道中心线包括:
获取最近一次用于确定车道中心线的最终方程参数,并根据所述最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数;
根据本次的最终方程参数确定车道中心线。
3.根据权利要求1或2所述的方法,其特征在于,若所述车道中心线为多条,则所述方法还包括:
将所述多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线。
4.一种车道中心线确定装置,其特征在于,所述装置包括:
获取单元,用于获取位于目标车辆周围的车辆的行驶轨迹点,行驶轨迹点表示车辆行驶过程中的位置信息;
第一确定单元,用于根据每两个在时间上相邻且属于同一个车辆的行驶轨迹点分别确定对应的直线;
第二确定单元,用于根据各条直线对应的方程参数确定目标方程参数;其中,目标方程参数为所述目标车辆所在道路的车道中心线对应的直线方程的参数;
第三确定单元,用于根据所述目标方程参数确定车道中心线;
各条直线对应的方程参数包括斜率和截距,所述目标方程参数包括目标斜率和目标截距,所述第二确定单元包括:目标斜率确定子单元和目标截距获得子单元;
目标斜率确定子单元,用于将各条直线对应的方程参数包括的斜率的均值确定为所述目标斜率;
目标截距获得子单元,用于对各条直线对应的方程参数包括的截距进行聚类得到所述目标截距;
所述第三确定单元具体用于:
将根据所述目标斜率和所述目标截距确定的直线作为车道中心线;
其中,所述目标截距获得子单元包括:
选取子单元,用于选取所述各条直线对应的方程参数中未被标记的其中一个截距作为初始中心点;
标记子单元,用于从所述各条直线对应的方程参数中确定与所述初始中心点的差值的绝对值小于或等于第一阈值的截距,并对所述与所述初始中心点的差值的绝对值小于或等于第一阈值的截距和所述初始中心点进行标记;
第一迭代子单元,用于将所述初始中心点与所述各条直线对应的方程参数中每个截距之间的差值之和确定为移动距离,并将所述初始中心点与所述移动距离之和作为新的初始中心点执行上述步骤,以进行迭代,直到所述移动距离小于或等于第二阈值,并将在所述移动距离小于或等于第二阈值时对应的初始中心点作为候选中心点加入候选中心点集;
第二迭代子单元,用于再次执行上述步骤以进行迭代,得到新的候选中心点;
中心点确定子单元,用于在迭代的过程中,若所述新的候选中心点与候选中心集中的候选中心点之间的差值均大于或等于第三阈值,则将所述新的候选中心点加入所述候选中心点集,否则丢弃所述候选中心集中与所述新的候选中心点之间的差值小于所述第三阈值的候选中心点,并将所述新的候选中心点加入所述候选中心点集中;
目标截距确定子单元,用于将所述候选中心点集中的候选中心点确定为所述目标截距。
5.根据权利要求4所述的装置,其特征在于,所述第三确定单元包括:
方程参数确定子单元,用于获取最近一次用于确定车道中心线的最终方程参数,并根据所述最近一次用于确定车道中心线的最终方程参数和本次确定的目标方程参数,确定本次的最终方程参数;
车道中心线确定子单元,用于根据本次的最终方程参数确定车道中心线。
6.根据权利要求4-5任一项所述的装置,其特征在于,若所述车道中心线为多条,则所述装置还包括:
第四确定单元,用于将所述多条车道中心线中相邻两条车道中心线的宽度在预设宽度范围内的车道中心线确定为目标车道中心线。
7.一种车道中心线确定设备,其特征在于,所述设备包括存储器、处理器;
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的所述指令,执行权利要求1-3任意一项所述的方法。
8.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得所述计算机执行以上权利要求1-3任意一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910823629.9A CN112441022B (zh) | 2019-09-02 | 2019-09-02 | 一种车道中心线确定方法及装置 |
PCT/CN2020/100046 WO2021042856A1 (zh) | 2019-09-02 | 2020-07-03 | 一种车道中心线确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910823629.9A CN112441022B (zh) | 2019-09-02 | 2019-09-02 | 一种车道中心线确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112441022A CN112441022A (zh) | 2021-03-05 |
CN112441022B true CN112441022B (zh) | 2023-02-03 |
Family
ID=74734980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910823629.9A Active CN112441022B (zh) | 2019-09-02 | 2019-09-02 | 一种车道中心线确定方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112441022B (zh) |
WO (1) | WO2021042856A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113721602B (zh) * | 2021-07-28 | 2024-04-05 | 广州小鹏汽车科技有限公司 | 参考线处理方法、装置、设备及存储介质 |
CN113848899A (zh) * | 2021-09-22 | 2021-12-28 | 中国第一汽车股份有限公司 | 车辆横向控制方法、装置、设备及存储介质 |
CN114291086B (zh) * | 2021-12-31 | 2023-05-23 | 高德软件有限公司 | 一种车道中心线生成方法、装置及计算机存储介质 |
CN114291116B (zh) * | 2022-01-24 | 2023-05-16 | 广州小鹏自动驾驶科技有限公司 | 周围车辆轨迹预测方法、装置、车辆及存储介质 |
CN114771518B (zh) * | 2022-04-06 | 2023-08-01 | 北京百度网讯科技有限公司 | 一种车道中心指引线的生成方法、装置、电子设备及介质 |
CN115457767B (zh) * | 2022-08-30 | 2023-08-29 | 同济大学 | 一种基于众包机动车轨迹的车道信息提取方法 |
CN116101327A (zh) * | 2023-04-14 | 2023-05-12 | 北京集度科技有限公司 | 行驶路径规划方法、装置、车辆及存储介质 |
CN117036541B (zh) * | 2023-09-18 | 2024-01-12 | 腾讯科技(深圳)有限公司 | 车道中心线生成方法、装置、电子设备及存储介质 |
CN117128976B (zh) * | 2023-10-26 | 2024-03-12 | 小米汽车科技有限公司 | 道路中心线的获取方法、装置、车辆和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829351A (zh) * | 2017-11-23 | 2019-05-31 | 华为技术有限公司 | 车道信息的检测方法、装置及计算机可读存储介质 |
CN109871752A (zh) * | 2019-01-04 | 2019-06-11 | 北京航空航天大学 | 一种基于监控视频检测车流提取车道线的方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010020984A1 (de) * | 2010-04-20 | 2011-10-20 | Conti Temic Microelectronic Gmbh | Verfahren zur Bestimmung des Fahrbahnverlaufes für ein Kraftfahrzeug |
JP6380766B2 (ja) * | 2016-03-14 | 2018-08-29 | 本田技研工業株式会社 | 車両制御装置、車両制御方法、および車両制御プログラム |
CN106056100B (zh) * | 2016-06-28 | 2019-03-08 | 重庆邮电大学 | 一种基于车道检测与目标跟踪的车辆辅助定位方法 |
CN107229908B (zh) * | 2017-05-16 | 2019-11-29 | 浙江理工大学 | 一种车道线检测方法 |
CN108898672A (zh) * | 2018-04-27 | 2018-11-27 | 厦门维斯云景信息科技有限公司 | 一种制作三维高清道路图车道线的半自动点云方法 |
CN109271857A (zh) * | 2018-08-10 | 2019-01-25 | 广州小鹏汽车科技有限公司 | 一种伪车道线剔除方法及装置 |
CN109816981B (zh) * | 2019-02-20 | 2021-03-19 | 百度在线网络技术(北京)有限公司 | 一种自动驾驶方法、装置及存储介质 |
-
2019
- 2019-09-02 CN CN201910823629.9A patent/CN112441022B/zh active Active
-
2020
- 2020-07-03 WO PCT/CN2020/100046 patent/WO2021042856A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829351A (zh) * | 2017-11-23 | 2019-05-31 | 华为技术有限公司 | 车道信息的检测方法、装置及计算机可读存储介质 |
CN109871752A (zh) * | 2019-01-04 | 2019-06-11 | 北京航空航天大学 | 一种基于监控视频检测车流提取车道线的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112441022A (zh) | 2021-03-05 |
WO2021042856A1 (zh) | 2021-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112441022B (zh) | 一种车道中心线确定方法及装置 | |
CN106407893B (zh) | 一种检测车道线的方法、装置和设备 | |
CN111712731B (zh) | 目标检测方法、***及可移动平台 | |
CN110687539B (zh) | 一种车位检测方法、装置、介质和设备 | |
CN110632617B (zh) | 一种激光雷达点云数据处理的方法及装置 | |
US11501638B2 (en) | Traffic flow estimation apparatus, traffic flow estimation method, and storage medium | |
CN112116809A (zh) | 基于v2x技术的非视距车辆防碰撞方法及装置 | |
Adam et al. | Probabilistic road estimation and lane association using radar detections | |
CN114926540A (zh) | 一种车道线标定的方法、装置、终端设备及可读存储介质 | |
CN110413942B (zh) | 车道线方程筛选方法及其筛选模块 | |
US20220171975A1 (en) | Method for Determining a Semantic Free Space | |
CN113432615B (zh) | 基于多传感器融合可驾驶区域的检测方法、***和车辆 | |
CN108693517B (zh) | 车辆定位方法、装置和雷达 | |
CN111959515B (zh) | 一种基于视觉检测的前向目标选择方法、装置及*** | |
CN112949489A (zh) | 一种道路边界识别方法、装置、电子设备和存储介质 | |
CN114419573A (zh) | 动态占据栅格估计方法及装置 | |
CN116703979A (zh) | 目标跟踪方法、装置、终端及存储介质 | |
CN116224317A (zh) | 非机动车运动轨迹的预测方法、装置及相关设备 | |
CN116052126A (zh) | 一种可行驶区域的检测方法、装置、车辆及存储介质 | |
CN115675472B (zh) | 一种匝道口的确定方法、装置、电子设备和存储介质 | |
CN110930714B (zh) | 位置匹配方法及装置 | |
CN117315938A (zh) | 一种高速公路车辆换道风险估算方法、介质及设备 | |
CN117975728A (zh) | 车辆所属车道识别方法及装置、存储介质及电子设备 | |
CN116485837A (zh) | 一种目标跟踪方法、介质以及电子设备 | |
van Nunen et al. | Implementation of probabilistic risk estimation for VRU safety |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |