发明内容
本发明解决的技术问题在于提供一种生成引导线的方法及装置,从而能够实现根据交叉路口处进入车道的停车线和目标车道的停车线,自动拟合生成所述进入车道至所述目标车道的引导线,解决人工绘制引导线成本高,并且交叉路口的引导线导航慢的问题。
为此,本发明解决技术问题的技术方案是:
一种生成引导线的方法,所述方法包括:
获取交叉路口处进入车道的停车线和目标车道的停车线;
从所述目标车道的停车线上选取第一控制点,从所述进入车道的停车线上选取第二控制点,所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等;
根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点,所述车道夹角为所述进入车道和所述目标车道的夹角;
基于所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线,所述贝塞尔曲线为所述进入车道至所述目标车道的引导线。
可选的,所述根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点包括:
获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
获取所述第一基准线和所述第二基准线的交点作为所述贝塞尔控制点;
所述根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线具体为:
根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点利用二次贝塞尔函数拟合生成贝塞尔曲线。
可选的,所述根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点包括:
获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
获取所述第一基准线和所述第二基准线的交点;
获取所述第一基准线上的第三控制点,获取所述第二基准线上的第四控制线,将所述第三控制点和所述第四控制点作为所述贝塞尔控制点,所述第三控制点与所述交点的距离为第一距离,所述第四控制点与所述交点的距离为第二距离,所述第一距离与所述第二距离相等;
所述根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线具体为:
根据所述第一控制点,所述第二控制点,所述第三控制点以及所述第四控制点利用三次贝塞尔函数拟合生成贝塞尔曲线。
可选的,
所述第三控制点为第一线段的中点,所述第一线段以所述第一控制点与所述交点为两个端点;
所述第四控制点为第二线段的中点,所述第二线段以所述第二控制点与所述交点为两个端点。
可选的,
所述第一控制点为所述目标车道的停车线的中点;
所述第二控制点为所述进入车道的停车线的中点。
可选的,所述方法还包括:
对所述贝塞尔曲线在导航面上进行平面拟合,获得所述进入车道至所述目标车道的引导曲面。
一种生成引导线的装置,所述装置包括:
获取单元,用于获取交叉路口处进入车道的停车线和目标车道的停车线;
选取单元,用于从所述目标车道的停车线上选取第一控制点,从所述进入车道的停车线上选取第二控制点,所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等;
确定单元,用于根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点,所述车道夹角为所述进入车道和所述目标车道的夹角;
拟合单元,用于基于所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线,所述贝塞尔曲线为所述进入车道至所述目标车道的引导线。
可选的,所述确定单元包括:
第一获取子单元,用于获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
第二获取子单元,用于获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
第三获取子单元,用于获取所述第一基准线和所述第二基准线的交点作为所述贝塞尔控制点;
所述拟合单元,具体用于:根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点利用二次贝塞尔函数拟合生成贝塞尔曲线。
可选的,所述确定单元包括:
第四获取子单元,用于获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
第五获取子单元,用于获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
第六获取子单元,用于获取所述第一基准线和所述第二基准线的交点;
第七获取子单元,用于获取所述第一基准线上的第三控制点,获取所述第二基准线上的第四控制线,将所述第三控制点和所述第四控制点作为所述贝塞尔控制点,所述第三控制点与所述交点的距离为第一距离,所述第四控制点与所述交点的距离为第二距离,所述第一距离与所述第二距离相等;
所述拟合单元,具体用于:根据所述第一控制点,所述第二控制点,所述第三控制点以及所述第四控制点利用三次贝塞尔函数拟合生成贝塞尔曲线。
可选的,所述装置还包括:
平面拟合单元,用于对所述贝塞尔曲线在导航平面上进行平面拟合,获得所述进入车道至所述目标车道的引导曲面。
通过上述技术方案可知,本发明有如下有益效果:
本发明实施例公开了一种生成引导线的方法及装置,所述方法包括:获取交叉路口处进入车道的停车线和目标车道的停车线;从所述目标车道的停车线上选取第一控制点,从所述进入车道的停车线上选取第二控制点,所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等;根据所述进入车道和所述目标车道的夹角确定贝塞尔控制点;基于所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线,所述贝塞尔曲线为所述进入车道至所述目标车道的引导线。上述生成交叉路口引导线的方法,根据进入车道的停车线和目标车道的停车线,确定引导线上的控制点,对控制点拟合生成的贝塞尔曲线作为引导线。上述自动生成引导线的方法,与人工绘制引导线的方法相比成本低效率快,并且生成的引导线上的控制点少,在交叉路口能够快速引导自动驾驶车辆通过该交叉路口。
具体实施方式
为了给出自动生成引导线的实现方案,本发明实施例提供了一种生成引导线的方法及装置,以下结合说明书附图对本发明的优选实施例进行说明。
对本发明所提供的实施例进行具体说明前,先对本发明所涉及的几个术语进行说明。
进入车道,指的是车辆在交叉路口处进行导航的起点所在的车道。
目标车道,指的是车辆在交叉路口处进行导航的终点所在的车道。
进入车道的停车线,指的是导航地图中模拟的现实中所述进入车道的停车线。
目标车道的停车线,指的是导航地图中模拟的现实中所述目标车道的停车线。
图1为本发明提供的一种生成引导线的方法流程图,所述方法包括:
101:获取交叉路口处进入车道的停车线和目标车道的停车线。
生成交叉路口出所述进入车道至所述目标车道的引导线,即所述引导线的起点位于所述进入车道的停车线上,所述引导线的终点位于所述目标车道的停车线上。可以理解的是,在导航地图中,所述进入车道的停车线和所述目标车道的停车线都是地图上坐标点的集合。
102:从所述目标车道的停车线上选取第一控制点,从所述进入车道的停车线上选取第二控制点,所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等。
从所述目标车道的停车线上选取的所述第一控制点即为所述引导线的终点,从所述进入车道的停车线上选取所述第二控制点即为所述引导线的起点。选取所述第一控制点和所述第二控制点的顺序不进行限定,可以先选取所述第一控制点,也可以先选取所述第二控制点,但是,选取的所述第一控制点和所述第二控制点必须满足如下关系:所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等。
如图2所示,从所述目标车道的停车线S1上选取第一控制点P1,从所述进入车道的停车线S2上选取第二控制点P2,所述第一控制点P1到所述目标车道的边缘线L1的距离为第一距离,所述第二控制点P2到所述进入车道的边缘线L2的距离为第二距离,所述第一距离到所述第二距离相等。
这里需要说明的是,这里设定所述第一距离到所述第二距离相等,是为了保证车辆沿着引导线进入所述目标车道以后,沿着与所述目标车道平行的方向行驶,避免偏离所述目标车道。
可选的,在一个具体实施例中,所述第一控制点为所述目标车道的停车线的中点;所述第二控制点为所述进入车道的停车线的中点。
如图3所示,所述第一控制点P1为所述目标车道的停车线S1的中点,所述第二控制点P2为所述进入车道的停车线S2的中点。这样所选择的所述第一控制点和所述第二控制点可以远离车道的边缘线,避免利用所生成的引导线对车辆进行导航时,车辆行驶太靠近车道的边缘线而产生的行驶安全问题。
103:根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点,所述车道夹角为所述进入车道和所述目标车道的夹角。
104:基于所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线,所述贝塞尔曲线为所述进入车道至所述目标车道的引导线。
所述贝塞尔控制点是决定所生成的引导线的弯曲程度的控制点,与选取所述贝塞尔控制点相关的参数包括:所述第一控制点的位置,所述第二控制点的位置,所述进入车道和所述目标车道的夹角。
所述根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点包括至少两种可能的实现方式:
第一种可能的实现方式,所述贝塞尔控制点包括一个控制点,包括:
获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
获取所述第一基准线和所述第二基准线的交点作为所述贝塞尔控制点;
所述根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线具体为:
根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点利用二次贝塞尔函数拟合生成贝塞尔曲线。
如图4所示,所述贝塞尔控制点P3为第一基准线L3和第二基准线L4的交点。所述第一基准线L3为经过所述第一控制点P1,并且与所述目标车道平行的线。所述第二基准线L3为经过所述第二控制点P2,并且与所述进入车道平行的线。
如图4所示,根据所述第一控制点P1,所述第二控制点P2以及所述贝塞尔控制点P3利用二次贝塞尔函数拟合生成贝塞尔曲线Q1(t),所述二次贝塞尔函数为:
Q1(t)=(1-t)2P1+2t(1-t)P3+t2P2 (1)
第二种可能的实现方式,所述贝塞尔控制点包括两个控制点,包括:
获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
获取所述第一基准线和所述第二基准线的交点;
获取所述第一基准线上的第三控制点,获取所述第二基准线上的第四控制线,将所述第三控制点和所述第四控制点作为贝塞尔控制点,所述第三控制点与所述交点的距离为第一距离,所述第四控制点与所述交点的距离为第二距离,所述第一距离与所述第二距离相等;
所述根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线具体为:
根据所述第一控制点,所述第二控制点,所述第三控制点以及所述第四控制点利用三次贝塞尔函数拟合生成贝塞尔曲线。
如图5所示,所述第三控制点P4为所述第一基准线L3上的点,所述第四控制点P5为所述第二基准线L4上的点,所述第一基准线L3与所述第二基准线L4的交点为P3,所述第三控制点P4到所述交点P3的距离与所述第四控制点P5到所述交点P3的距离相等,即所述第三控制点P4和所述第四控制点P5以所述车道夹角的平分线为轴对称分布。
如图5所示,根据所述第一控制点P1,所述第二控制点P2,所述第三控制点P4和所述第四控制点P5利用三次贝塞尔函数拟合生成贝塞尔曲线Q2(t),所述三次贝塞尔函数为:
Q2(t)=(1-t)3P1+3t(1-t)2P4+3t2(1-t)P5+t3P2 (2)
可选的,在第二种可能的实现方式中,
所述第三控制点为第一线段的中点,所述第一线段以所述第一控制点与所述交点为两个端点;
所述第四控制点为第二线段的中点,所述第二线段以所述第二控制点与所述交点为两个端点。
根据所选取的所述第一控制点,所述第二控制点以及所述贝塞尔控制点,利用贝塞尔函数自动拟合生成贝塞尔曲线作为从所述进入车道到所述目标车道的引导线,与人工绘制引导线相比,节约成本,并且所生成的引导线是平滑的贝塞尔曲线,引导线上的控制点少,采用所述引导线在交叉路口对自动驾驶的车辆进行引导的精确度高,能够快速引导自动驾驶车辆通过该交叉路口。
可选的,所述方法还包括:
对所述贝塞尔曲线在导航面上进行平面拟合,获得所述进入车道至所述目标车道的引导曲面。
此处可以采用现有技术中任意一种将曲线拟合成曲面的方法,这里不再赘述。
图6为本发明提供的一种生成引导线的装置结构示意图,所述装置包括:
获取单元601,用于获取交叉路口处进入车道的停车线和目标车道的停车线。
选取单元602,用于从所述目标车道的停车线上选取第一控制点,从所述进入车道的停车线上选取第二控制点,所述第一控制点到所述目标车道的边缘线的距离为第一距离,所述第二控制点到所述进入车道的边缘线的距离为第二距离,所述第一距离和第二距离相等。
确定单元603,用于根据所述第一控制点,所述第二控制点以及车道夹角确定贝塞尔控制点,所述车道夹角为所述进入车道和所述目标车道的夹角。
拟合单元604,用于基于所述第一控制点,所述第二控制点以及所述贝塞尔控制点拟合生成贝塞尔曲线,所述贝塞尔曲线为所述进入车道至所述目标车道的引导线。
所述确定单元603包括至少两种可能的结构,所述第一种可能的结构包括:
第一获取子单元,用于获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
第二获取子单元,用于获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
第三获取子单元,用于获取所述第一基准线和所述第二基准线的交点作为所述贝塞尔控制点;
所述拟合单元,具体用于:根据所述第一控制点,所述第二控制点以及所述贝塞尔控制点利用二次贝塞尔函数拟合生成贝塞尔曲线。
所述确定单元603第二种可能的结构包括:
第四获取子单元,用于获取经过所述第一控制点并且与所述目标车道平行的线为第一基准线;
第五获取子单元,用于获取经过所述第二控制点并且与所述进入车道平行的线为第二基准线;
第六获取子单元,用于获取所述第一基准线和所述第二基准线的交点;
第七获取子单元,用于获取所述第一基准线上的第三控制点,获取所述第二基准线上的第四控制线,将所述第三控制点和所述第四控制点作为所述贝塞尔控制点,所述第三控制点与所述交点的距离为第一距离,所述第四控制点与所述交点的距离为第二距离,所述第一距离与所述第二距离相等;
所述拟合单元,具体用于:根据所述第一控制点,所述第二控制点,所述第三控制点以及所述第四控制点利用三次贝塞尔函数拟合生成贝塞尔曲线。
可选的,所述第三控制点为第一线段的中点,所述第一线段以所述第一控制点与所述交点为两个端点;
所述第四控制点为第二线段的中点,所述第二线段以所述第二控制点与所述交点为两个端点。
可选的,
所述第一控制点为所述目标车道的停车线的中点;
所述第二控制点为所述进入车道的停车线的中点。
在一个具体的实施例中,所述装置还包括:
平面拟合单元,用于对所述贝塞尔曲线在导航平面上进行平面拟合,获得所述进入车道至所述目标车道的引导曲面。
图6所述的生成引导线的装置是与图2所示的生成引导线的方法所对应的装置,具体实现方式参考图2中对生成引导线的方法的描述,这里不再赘述。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。