CN117755312A - 车道线拟合方法、电子设备及存储介质 - Google Patents
车道线拟合方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117755312A CN117755312A CN202311821054.XA CN202311821054A CN117755312A CN 117755312 A CN117755312 A CN 117755312A CN 202311821054 A CN202311821054 A CN 202311821054A CN 117755312 A CN117755312 A CN 117755312A
- Authority
- CN
- China
- Prior art keywords
- point
- control
- segment
- reference curve
- control points
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000005070 sampling Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 238000005457 optimization Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000764238 Isis Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Abstract
本申请的实施方式提供了一种车道线拟合方法、电子设备及存储介质,其中车道线拟合方法包括:基于车道线的点云数据确定多个控制点的初始坐标,并根据多个控制点得到多个控制点分段,其中每个控制点分段由相邻的K个控制点构成,其中K为正整数;分别根据每个控制点分段中的K个控制点的初始坐标,得到每个控制点分段对应的目标参考曲线段;以及依次连接各目标参考曲线段,得到用于表示车道线形状的目标参考曲线。该方法能够实现对各种长度和形状的车道线的有效拟合,提升车道线拟合的适用性。
Description
技术领域
本申请涉及智能驾驶技术领域,尤其涉及车道线拟合方法、电子设备及存储介质。
背景技术
为了保证自动驾驶车辆在行驶过程中的安全性,通常要求对车道线的走向和形状有准确的感知。车道线拟合技术是自动驾驶感知识别和制作高精地图的基础。利用车道线检测技术,对车载相机拍摄的图像或者雷达传感器采集的三维点云图进行预处理后,通过车道线拟合获取车道线的走向和形状。
相关技术中车道线拟合主要包括参数化模型和最优化计算两部分。目前常见的几类参数化模型有:三次多项式、螺旋线、贝塞尔曲线。其中,多项式拟合、螺旋线拟合这两类参数化模型对于曲线拟合的适用性不高,对于复杂形状的曲线无法拟合;而贝塞尔曲线模型的控制点并不经过贝塞尔曲线本身,因而在应用中拟合效果不够直观。
发明内容
本申请提供的技术方案至少部分地解决了以上的技术问题。
根据本申请的第一方面提供了一种车道线拟合方法,包括:基于车道线的点云数据确定多个控制点的初始坐标,并根据多个控制点得到多个控制点分段,其中每个控制点分段由相邻的K个控制点构成,其中K为正整数;分别根据每个控制点分段中的K个控制点的初始坐标,得到每个控制点分段对应的目标参考曲线段;以及依次连接各目标参考曲线段,得到用于表示车道线形状的目标参考曲线。
在一些实施方式中,多个控制点包括第一端点、第二端点,以及位于第一端点和第二端点之间的多个中间点;中间点至少包括与第一端点相邻的第一中间点、以及与第二端点相邻的第二中间点。
在一些实施方式中,基于车道线的点云数据确定多个控制点的初始坐标,包括:从车道线的点云数据中选择一个起点数据和一个终点数据分别作为控制点中的第一中间点和第二中间点的初始坐标;从第一中间点开始,沿点云数据的方向每隔固定的距离选取一个点云数据,作为一个中间点的初始坐标,并以第二中间点的初始坐标作为最后一个中间点的初始坐标;以及将第一中间点和第二中间点分别向外侧延伸预设距离,得到第一端点和第二端点的初始坐标。
在一些实施方式中,根据多个控制点得到多个控制点分段,包括:从第一端点开始,沿点云数据的方向,分别以每个控制点为起点,将相邻的四个控制点确定为一个控制点分段,其中最后一个控制点分段的终点为第二端点。
在一些实施方式中,分别根据每个控制点分段中的K个控制点的初始坐标,得到每个控制点分段对应的目标参考曲线段,包括:根据控制点分段中的四个控制点的初始坐标,确定用于表示车道线的形状的第一参考曲线段;基于点云数据确定多个用于表征点云数据与第一参考曲线段之间的一致性的观测点;以及基于观测点与四个控制点之间的残差约束关系对四个控制点的初始坐标进行优化,根据优化后得到的四个控制点的目标坐标确定控制点分段对应的目标参考曲线段。
在一些实施方式中,基于观测点与四个控制点之间的残差约束关系对控制点的初始坐标进行优化包括:构建GTSAM因子图,其中,以每个控制点的初始坐标作为因子图的变量节点,以每个观测点的坐标作为因子图的观测因子;确定每个观测点到第一参考曲线段的距离,以距离作为残差;以及基于残差约束关系更新四个控制点的坐标值,根据更新的坐标值更新第一参考曲线段,并根据更新的第一参考曲线段重新确定距离以迭代计算残差,直至残差收敛至预定的最小值,将四个控制点的当前坐标作为优化后的目标坐标。
在一些实施方式中,确定每个观测点到第一参考曲线段的距离,包括:对第一参考曲线段进行均匀采样,得到每两个相邻的采样点之间的多条折线段;将每个观测点分别与多条折线段中的其中一条对应,并计算每个观测点到对应的折线段的距离,作为每个观测点到第一参考曲线段的距离。
在一些实施方式中,观测点与控制点之间的残差约束关系为观测点对控制点的雅克比矩阵。
在一些实施方式中,上述方法还包括:在因子图中,针对第一中间点和第二中间点添加先验约束因子。
在一些实施方式中,车道线的点云数据包括:基于自动驾驶车辆的雷达感知的三维点云图投影到地面所得到的车道线的二维点云集。
根据本申请的第二方面还提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请第一方面的方法。
根据本申请的第三方面还提供了一种计算机可读存储介质,其上存储有机器可执行指令,机器可执行指令在被执行时使机器执行根据本申请第一方面的方法。
根据本申请的实施例提供的车道线拟合方法、电子设备及存储介质,根据车道线的点云数据确定多个控制点,并通过构造多个控制点分段对车道线的形状进行分段描述,能够实现对各种长度和形状的车道线的有效拟合,从而能够提升车道线拟合的适用性。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,并不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显。附图用于更好地理解本方案,不构成对本申请的限定。在附图中:
图1是根据可以应用本申请实施方式提供的车道线拟合方法的示例性系统架构图;
图2是根据本申请的车道线拟合方法的一个实施例的流程示意图;
图3是根据本申请的车道线拟合方法的另一实施例的流程示意图;
图4是根据本申请的实施例的基于车道线的点云数据确定的多个控制点的示意图;
图5是根据本申请的实施例的一个控制点分段中的相邻的四个控制点的示意图;
图6A是根据本申请的一些实施方式的未添加先验约束因子的车道线拟合效果示意图;
图6B是根据本申请的实施例的添加先验约束因子的车道线拟合效果示意图;
图7是根据本申请的实施例的观测点到第一参考曲线段的折线段的距离的示意图;
图8A是根据本申请的实施例的基于点云数据确定的多个控制点的初始坐标的示意图;
图8B是根据本申请的实施例的根据控制点的初始坐标确定的第一参考曲线的示意图;
图8C是图8B中的第一参考曲线的局部放大图;
图9A是根据本申请的实施例的优化后的多个控制点的目标坐标的示意图;
图9B是根据本申请的实施例的根据控制点的目标坐标确定的目标参考曲线的示意图;
图9C是图9B中的目标参考曲线的局部放大图;以及
图10是根据本申请的实施例的电子设备的组成示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的车道线拟合方法或装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括自动驾驶车辆101,网络102和服务器103。网络102用以在自动驾驶车辆101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
自动驾驶车辆101上可以安装有各种传感器,例如相机传感器、激光雷达传感器等。
服务器103可以提供各种服务。例如,服务器103可以对从自动驾驶车辆101获取的激光点云数据信息进行分析和处理,并生成处理结果。
需要说明的是,服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的车道线拟合方法一般由服务器103执行,相应地,车道线拟合电子设备一般设置于服务器103中。
应该理解,图1中的自动驾驶车辆、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的自动驾驶车辆、网络和服务器。
图2示出了根据本申请的车道线拟合方法的一个实施例的流程200。该车道线拟合方法200可包括以下步骤:
步骤201,基于车道线的点云数据确定多个控制点的初始坐标,并根据多个控制点得到多个控制点分段;
步骤202,分别根据每个控制点分段中的K个控制点的初始坐标,得到每个控制点分段对应的目标参考曲线段,其中K为正整数;以及
步骤203,依次连接各目标参考曲线段,得到用于表示车道线形状的目标参考曲线。
下面将对上述步骤201-203进行进一步的描述。
如图2所示,车道线拟合方法200从步骤201开始,基于车道线的点云数据确定多个控制点的初始坐标,并根据多个控制点得到多个控制点分段。在本实施例中,车道线拟合方法的执行主体(例如图1所示的服务器103)可以基于车道线的点云数据来确定多个控制点的初始坐标值,并可根据多个控制点得到多个控制点分段,其中每个控制点分段由相邻的K个控制点构成。
在示例性实施方式中,上述执行主体可获取自动驾驶车辆的雷达(例如激光雷达)采集的激光点云,该激光点云为三维点云图。一般而言,自动驾驶车辆上安装有多个传感器,例如激光雷达和相机传感器,用于采集和感知周围环境的信息。相机传感器可用于采集当前环境的图像。激光雷达对地面扫描获得地面反射点的三维坐标,每个地面反射点按三维坐标以点的形式分布在三维空间中,称为扫描点。激光点云为扫描点的集合。
在一些实施方式中,上述执行主体还可将感知的车道线的三维点云图投影到地面,得到车道线的点云数据,该点云数据可以是转到UTM(Universal TransverseMercator,通用横墨卡托网格系统)或者Odom坐标系(里程计坐标系)下的二维点云集。进而可根据车道线的二维点云集确定多个控制点的初始坐标。
在示例性实施方式中,多个控制点包括第一端点、第二端点,以及位于第一端点和第二端点之间的多个中间点。该中间点至少包括与第一端点相邻的第一中间点、以及与第二端点相邻的第二中间点。
作为示例,基于车道线的点云数据确定多个控制点的初始坐标,可包括:从车道线的点云数据中选择一个起点数据和一个终点数据分别作为控制点中的第一中间点和第二中间点的初始坐标;从第一中间点开始,沿点云数据的方向每隔固定的距离选取一个点云数据,作为一个中间点的初始坐标,并以第二中间点的初始坐标作为最后一个中间点的初始坐标;以及将第一中间点和第二中间点分别向外侧延伸预设距离,得到第一端点和第二端点的初始坐标。
作为示例,根据多个控制点得到多个控制点分段,可包括:从第一端点开始,沿点云数据的方向,分别以每个控制点为起点,将相邻的K个控制点确定为一个控制点分段,其中最后一个控制点分段的终点为第二端点。
接着,在步骤202中分别根据每个控制点分段中的K个控制点的初始坐标,得到每个控制点分段对应的目标参考曲线段。在示例性实施方式中,将相邻的四个控制点确定为一个控制点分段,并可以基于Catmull-Rom(卡特穆尔-罗姆)曲线作为基本参数模型,根据控制点分段中的四个控制点的初始坐标,来生成经过控制点的曲线段,作为该控制点分段对应的目标参考曲线段,该目标参考曲线段用于表示当前控制点分段的车道线形状。需要说明的是,本申请的实施方式中并不限定参数模型只能采用Catmull-Rom曲线,也可以采用其他多种参数模型。
作为示例,对于每个控制点分段,该步骤202可包括以下子步骤:
步骤2021,根据控制点分段中的四个控制点的初始坐标,确定用于表示车道线的形状的第一参考曲线段;
步骤2022,基于点云数据确定多个用于表征点云数据与第一参考曲线段之间的一致性的观测点;以及
步骤2023,基于观测点与四个控制点之间的残差约束关系对四个控制点的初始坐标进行优化,根据优化后得到的四个控制点的目标坐标确定该控制点分段对应的目标参考曲线段。
最后在步骤203中依次连接各目标参考曲线段,得到用于表示车道线形状的目标参考曲线。
根据步骤202中得到的每个控制点分段对应的目标参考曲线段,按照点云数据的方向依次进行连接,得到可用于表示车道线形状的完整的目标参考曲线。
根据本实施例的车道线拟合方法,基于车道线的点云数据确定多个控制点,并通过构造多个控制点分段对车道线的形状进行分段描述,能够实现对各种长度和形状的车道线的有效拟合,避免因车道线形状较为复杂导致无法进行有效拟合的问题,从而能够提升车道线拟合的适用性。
此外,上述方法还利用车道线的点云数据作为观测点对表示车道线形状的初始参考曲线段进行约束,并基于观测点与控制点的残差约束关系对控制点的初始坐标进行优化,根据优化后的控制点的目标坐标确定出更符合实际点云数据的目标参考曲线,从而使得车道线形状的拟合效果和精准度大为提升。
图3示出了根据本申请的车道线拟合方法的另一个实施例的流程300。
如图3所示,该车道线拟合方法300包括以下步骤:
步骤301,根据获取的车道线的点云数据,确定多个控制点的初始坐标。
在本实施例中,车道线拟合方法的执行主体(例如图1所示的服务器103)可基于自动驾驶车辆的激光雷达感知的车道线的三维激光点云,将三维激光点云投影到地面,并转换至UTM或者Odom坐标系下,得到车道线的二维点云数据。需要说明的是,这里的点云数据可以是聚合了多帧的点云,其可以为任意长度、形状,并且允许中间断开。
结合图4所示,本实施例中通过多个控制点P0,P1,P2,P3……PN来对当前路段的车道线形状进行描述,其中,P0为第一端点,PN为第二端点,P1,P2,P3……PN-1为位于第一端点P0和第二端点PN之间的中间点,我们将与第一端点P0相邻的中间点P1称为第一中间点,将与第二端点PN相邻的中间点PN-1称为第二中间点。
作为示例,该步骤301具体可包括如下子步骤:
步骤3011,从车道线的点云数据(例如基于UTM坐标系下投影到地面的车道线的点云数据)中选择一个起点数据和一个终点数据分别作为第一中间点P1和第二中间点P2的初始坐标。
步骤3012,从第一中间点P1开始,沿点云数据的方向每隔固定的距离(例如每隔10米、20米等,但不限于此)选取一个点云数据,作为一个中间点P2,P3……的初始坐标,并以第二中间点PN-1的初始坐标作为最后一个中间点的初始坐标。
如果点云数据中间有断开,则可以在断开处任意选择一个点作为控制点,而不必严格遵守上述间隔距离。
步骤3013,将第一中间点P1和第二中间点P2分别向外侧延伸预定距离,得到第一端点P0和第二端点PN的初始坐标。例如可将P1和P2分别向外延伸10-20m获取两个点云数据点分别作为P0和PN的初始坐标。
通过上述步骤301可以得到控制点序列X={P0,P1,P2,P3,,Pi,,PN}的初始值。
步骤302,根据多个控制点得到多个控制点分段。
作为示例性实施方式,从第一端点P0开始,每四个相邻的控制点确定为一个控制点分段,例如,P0,P1,P2和P3为第一控制点分段,P1,P2,P3和P4为第二控制点分段,……以此类推,得到多个控制点分段,其中最后一个控制点分段的终点为第二端点PN。
其中,根据每个控制点分段中的四个控制点的初始坐标,可以确定出与控制点分段对应的第一参考曲线段。例如,根据第一控制点分段P0,P1,P2和P3的初始坐标确定出位于P1和P2之间的第一参考曲线段,根据第二控制点分段P1,P2,P3和P4可以确定出位于P2和P3之间的第二参考曲线段,……如此,得到多个用于表示车道线形状的第一参考曲线段。
结合图5所示,本实施例中基于三阶Catmull-Rom(卡特穆尔-罗姆)曲线确定第一中间点P1和第二中间点P2之间的曲线C(t)。三阶Catmull-Rom曲线可通过如下公式(1)进行表示:
公式(1)中,t为0到1之间的参数,τ用于描述曲线在控制点的弯曲程度,通常取τ=0.5。
上述实施方式中是基于Catmull-Rom曲线作为基本参数模型,根据确定的多个控制点的初始坐标,来生成经过控制点的曲线段,作为表示车道线形状的第一参考曲线段。该第一参考曲线段可视为初始参考曲线段。需要说明的是,本申请的实施方式中并不限定参数模型只能采用Catmull-Rom曲线,也可以采用其他多种参数模型。
步骤303,基于车道线的点云数据确定多个观测点,并将观测点对应到其中一个控制点分段。
在本实施例中,基于UTM坐标系下投影到地面的车道线的点云数据确定多个观测点,该多个观测点用于表征点云数据与第一参考曲线段的一致性。如图4中所示的Pn1,Pm1,Pn2,Pm2,Pn3,Pm3等。可将M个观测点记为观测点集P={pm|m=1,2,3,,M}。
在本实施例中,还将每个观测点pm与上述的多个控制点分段中的其中一个相关联。
示例性地,基于控制点序列X={P0,P1,P2,P3,,Pi,,PN}的初始值,对于观测点集P={pm|m=1,2,3,,M}中的每一个点pm,通过距离计算,找到对应的距离最近的4个控制点,从而将每个观测点关联到一个由相邻的4个控制点构成的控制点分段。每个观测点用于对关联的控制点分段中的控制点的坐标(包括方向、位置等)进行约束调整。
步骤304,构建GTSAM因子图,并输入控制点的初始坐标值以及观测点的坐标值。
在本实施例中,利用车道线的点云数据确定的多个观测点对每个控制点分段的初始坐标所确定的第一参考曲线段进行约束,并通过构建最优化模型来对相应控制点的初始坐标进行优化,从而根据优化后的控制点的目标坐标拟合出最符合实际点云数据的曲线,作为表示车道线形状的目标参考曲线段。
在示例性实施方式中,可通过构建GTSAM非线性因子图模型,将控制点序列X={P0,P1,P2,P3,,Pi,,PN}中的每一个控制点的初始坐标作为一个优化变量,将观测点集P={pm|m=1,2,3,,M}中的每一个观测点的坐标作为观测因子,并基于观测点与控制点之间的残差约束关系对相应的控制点的初始坐标进行优化。
作为示例,以第一控制点分段X={P0,P1,P2,P3}为例,对于每个控制点分段,该步骤304具体可包括如下子步骤:
步骤3041,构建GTSAM因子图。
步骤3042,向因子图中添加变量节点。
根据确定的控制点添加变量节点,变量节点的初始值即为控制点X={P0,P1,P2,P3}的初始坐标值。
步骤3043,添加四元因子。
该步骤3043中,向因子图中添加四元因子,并以该第一控制点分段相关联的第一观测点集P1={pm|m=1,2,3,,n}中的每一个观测点的坐标为四元因子赋值。
在构建因子图模型以后,还需要指定因子连接到哪些变量。为此,基于GTSAM的多元因子类继承构建一类四元因子,该四元因子同时与上述四个控制点相关联。
根据上述步骤3041~3043所构建的因子图中,节点是待优化的变量,因子是相应的观测约束,而优化过程就是调用因子图以及相应图节点的值,计算因子的残差,并通过因子对相关图节点的残差约束关系进行迭代优化。从而将控制点的优化问题转换为求解因子图的最优解,例如可使用GTSAM非线性优化器迭代计算,得到控制点X={P0,P1,P2,P3}的最优值。以下步骤305-309描述了对控制点的初始坐标进行优化的具体过程。
此外,在实际的实验测试中发现,仅仅使用四元因子约束,Catmull-Rom样条曲线的自由度还是比较高,如图6A所示,控制点与车道线的点云数据的两端会存在沿曲线滑动的现象。
针对上述问题,结合图4所示,作为可选的实施方式,本实施例中针对控制点中的第一中间点P1,第二中间点PN-1(图4中的P4)分别添加了一个先验约束因子,以对多个控制点的端点自由度进行限制。如图6B所示,添加了先验约束因子后,控制点与车道线点的点云数据两端实现了“绑定”,而不会出现沿曲线滑动的现象。
步骤305,根据控制点的当前坐标值生成第一参考曲线段。
在本实施例中,可以基于Catmull-Rom曲线作为基本参数模型,根据控制点的当前坐标值生成第一参考曲线段。例如,可根据输入的控制点的初始坐标值,使用上述公式(1)中的Catmull-Rom曲线模型确定出用于表示车道线形状的初始参考曲线段。
Catmull-Rom曲线是一种经过控制点本身的样条曲线,其不受坐标系的限制,可以近似表达空间中任意形状的曲线。对于车道线而言,可以在同一个坐标系内全局地表达任意位置、任意形状的车道线。
将公式(1)中等号右边的前两项矩阵相乘并记作B(t),并将控制点序列X排列为列向量,即
则控制点P1,P2之间的曲线C(t)还可以采用如下公式(2)进行表示:
C(t)=B(t)X (2)
对于曲线C(t)上的任意一个点,可以求解它关于t的导数C'(t),具体如下所示:
或者也可以求解C(t)关于控制点P0,P1,P2,P3的导数,具体如下所示:
步骤306,计算每个观测点到第一参考曲线段的距离作为残差。
本实施例中,使用观测点到第一参考曲线段的距离来对点云数据与Catmull-Rom初始参考曲线段之间的差异进行量化。
参考图7所示,对于任意一个观测点Pm到第一参考曲线段的距离,可通过如下子步骤确定:
步骤3061,根据参数t对初始参考曲线均匀采样N+1个点,记作G,G={g0,g1,…gi,…,gN},将相邻的采样点两两相连,形成N条短的折线段其中,N为正整数,gi为采样点集G中的第i个采样点,/>为第i条折线段,i=0,1,2,……,N。
步骤3062,将观测点集P={pm|m=1,2,3,,n}中的每个观测点与折线段进行对应,并计算观测点Pm到对应的折线段的距离di=f(pm,gi,gi+1),以该距离di作为观测残差。
该实施方式中,在对初始参考曲线段进行离散化采样的基础上,采用以短的直线段代替曲线段的距离计算方法,相较于相关技术中采用高次方程解析的方式,不仅计算量更小,且求解过程更为简单。
步骤307,判断残差是否已收敛,如果未收敛,则继续执行步骤308,如果已收敛,例如当前的残差值已小于预定的最小值,则迭代中止,继续步骤309。
步骤308,根据观测点与控制点之间的残差约束关系调整控制点的坐标值,并返回步骤305,以进行迭代优化。
结合图7所示,残差di与控制点X={P0,P1,P2,P3}之间是一个线性方程。以第一条折线段及其对应的观测点pm(xm,ym)为例,根据采样点g0和g1的坐标使用两点式确定所在的直线方程:
得到观测点Pm到折线段的距离d0:
据此,我们可以构建出所有观测点P={pm|m=1,2,3,...,n}与控制点X的最优化方程:
其中,X*是控制点X的最优估计值。在构建非线性因子图模型后,GTSAM非线性因子图需要建立因子与变量的残差约束关系。本实施例中,通过推导观测点关于控制点的一阶导数,以得到的一阶求导雅克比矩阵作为观测点与控制点之间的残差约束关系。该过程具体描述如下:
本实施例中,观测点到对应的折线段的距离(点到直线的距离)是一个标量,通过去掉绝对值符号,采用带正负号的距离d,正d表示点在直线的左边,负d表示点在直线的右边。为了得到雅可比矩阵,我们需要计算观测残差d对状态量X的导数。将所有观测点Pm到对应的折线段的距离di的集合记作D,根据链式求导法则:
可以把di对X的导数分解为di对采样点G的导数和采样点G对控制点X的导数的乘积。其中采样点G对控制点X的导数可以通过公式(6)直接计算得到,下面重点介绍di对采样点G的导数。
同样以第一条折线段及其对应的观测点pm(xm,ym)为例,根据公式(6),分别计算/>可以得到:
再根据链式求导法则与全微分的定义可以得到:
并整理为如下所示的向量相乘的形式:
根据公式(6),第i个采样点gi(gix,giy)对控制点X的雅可比矩阵为:
其中,[Ci1,Ci2,Ci3,Ci4]即为的具体计算结果。
对于一组{g0x,g0y,g1x,g1y},对控制点X的雅可为:
d0对控制点X的导数为:
以此类推,记采样点集G的子集Gi,i+1为{gi,gi+1},
则可以简记为:
以上描述了根据一个观测点到一段折线段的距离确定的残差。在实际应用中,如果同一个折线段对应有多个观测点,则可以从中任意选一个观测点进行计算即可,从而可以减小计算量。将N个折线段以及对应的观测点全部考虑,则所有的观测点对控制点的一阶导数可以组成一个雅可比矩阵,如下所示:
通过以上推导,即可得到观测点pm对控制点X的雅克比矩阵,从而建立了观测点与控制点之间的残差约束关系,即一阶雅克比关系。
需要说明的是,以上推导过程仅为说明如何建立观测点与控制点之间的残差约束关系,根据本实施例的车道线拟合方法中直接使用上述公式(16)中的雅克比矩阵即可。
在建立了观测点与控制点之间的残差约束关系后,可以使用GTSAM非线性优化器进行迭代计算,得到控制点X={P0,P1,P2,P3}的最优解。
作为示例性实施方式,该步骤308中,根据雅克比矩阵指示的梯度方向对控制点的当前坐标值进行调整,得到更新后的控制点的坐标值,并返回步骤305。继续根据更新的控制点的坐标值更新第一参考曲线段,并根据更新的第一参考曲线段重新计算残差(即重新确定观测点到该更新的第一参考曲线段的距离),如此,根据雅克比矩阵不断调整优化控制点的坐标值并迭代计算残差,直至残差收敛至预定的最小值,或者残差不再明显变化为止,完成对控制点坐标的优化。
步骤309,以优化后的控制点的坐标值作为目标值,生成目标参考曲线段。
如果当前的残差已收敛至最小值,则将控制点的当前坐标作为优化后的目标坐标,并根据该目标坐标确定出目标参考曲线段,以该目标参考曲线段作为该控制点分段对应的车道线形状曲线。
步骤310,依次连接各目标参考曲线段,得到用于表示车道线形状的目标参考曲线。
按照上述步骤305-309分别对每个控制点分段中的控制点的初始坐标进行优化,并根据优化后的控制点的目标坐标确定出对应的目标参考曲线段以后,通过依次连接各目标参考曲线段,即可得到用于表示车道线形状的完整的目标参考曲线。
根据本实施例提供的上述车道线拟合方法,基于车道线的点云数据确定多个观测点并关联至每个控制点分段,对于每个控制点分段,通过观测点对根据控制点的初始坐标得到的第一参考曲线段进行调整约束,进而根据优化调整后的控制点坐标得到表示车道线形状的目标参考曲线段,从而使得拟合得到的曲线形状更加贴近实际点云数据,且具有计算量小的特点;此外,以Catmull-Rom曲线作为参数模型,使得控制点直接经过拟合的目标参考曲线本身,有效提升了车道线的拟合效果。
以一组中间有断开,整体可分为三段的点云数据为例,图8A示出了基于获取的点云数据所确定的多个控制点的示意图。图8B示出了基于该多个控制点的初始坐标得到的第一参考曲线段,连接而成的初始参考曲线(图8B中的虚线部分)的示意图。如图8C的局部放大图所示,虚线部分的初始参考曲线与控制点之间会有偏离。
图9A示出了对多个控制点的初始坐标进行优化后得到的目标坐标的示意图。图9B示出了根据多个控制点的目标坐标得到的目标参考曲线段连接而成的目标参考曲线(图9B中的虚线部分)。如图9C的局部放大图所示,对控制点的初始坐标进行优化后,控制点的位置发生变化,进而根据控制点的目标坐标得到的目标参考曲线与控制点之间完美贴合,即得到的用于表示车道线形状的目标参考曲线经过控制点本身。
根据本申请实施例的车道线拟合方法所确定的目标参考曲线,能够直观有效的拟合各种不同形状的车道线,例如横向S形、纵向S形、C形等形状,且控制点经过拟合的目标参考曲线本身,不依赖于局部坐标系。综上,基于本申请提出的车道线拟合方法能够有效拟合不同形状的车道线,且拟合的目标参考曲线更贴近实际点云数据。
此外,根据本申请的实施例还提供了一种电子设备和一种计算机可读存储介质。
图10示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如车道线拟合方法。例如,在一些实施例中,车道线拟合方法可被实现为计算机软件程序,其被有形地包含于机器可读存储介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的车道线拟合方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车道线拟合方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读存储介质可以是机器可读信号介质或机器可读储存介质。机器可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域邻域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (12)
1.一种车道线拟合方法,包括:
基于车道线的点云数据确定多个控制点的初始坐标,并根据所述多个控制点得到多个控制点分段,其中每个所述控制点分段由相邻的K个控制点构成,其中K为正整数;
分别根据每个所述控制点分段中的K个控制点的初始坐标,得到每个所述控制点分段对应的目标参考曲线段;以及
依次连接各所述目标参考曲线段,得到用于表示车道线形状的目标参考曲线。
2.根据权利要求1所述的方法,其中,所述多个控制点包括第一端点、第二端点,以及位于所述第一端点和所述第二端点之间的多个中间点;所述中间点至少包括与所述第一端点相邻的第一中间点、以及与所述第二端点相邻的第二中间点。
3.根据权利要求2所述的方法,其中,所述基于车道线的点云数据确定多个控制点的初始坐标,包括:
从所述车道线的点云数据中选择一个起点数据和一个终点数据分别作为所述控制点中的所述第一中间点和所述第二中间点的初始坐标;
从所述第一中间点开始,沿所述点云数据的方向每隔固定的距离选取一个点云数据,作为一个所述中间点的初始坐标,并以所述第二中间点的初始坐标作为最后一个中间点的初始坐标;以及
将所述第一中间点和所述第二中间点分别向外侧延伸预设距离,得到所述第一端点和所述第二端点的初始坐标。
4.根据权利要求3所述的方法,其中,所述根据所述多个控制点得到多个控制点分段,包括:从所述第一端点开始,沿所述点云数据的方向,分别以每个所述控制点为起点,将相邻的四个控制点确定为一个所述控制点分段,其中最后一个控制点分段的终点为所述第二端点。
5.根据权利要求4所述的方法,其中,所述分别根据每个所述控制点分段中的K个控制点的初始坐标,得到每个所述控制点分段对应的目标参考曲线段,包括:
根据所述控制点分段中的四个控制点的初始坐标,确定用于表示车道线的形状的第一参考曲线段;
基于所述点云数据确定多个用于表征所述点云数据与所述第一参考曲线段之间的一致性的观测点;以及
基于所述观测点与所述四个控制点之间的残差约束关系对所述四个控制点的初始坐标进行优化,根据优化后得到的所述四个控制点的目标坐标确定所述控制点分段对应的所述目标参考曲线段。
6.根据权利要求5所述的方法,其中,基于所述观测点与所述四个控制点之间的残差约束关系对所述控制点的初始坐标进行优化包括:
构建GTSAM因子图,其中,以每个所述控制点的初始坐标作为所述因子图的变量节点,以每个所述观测点的坐标作为所述因子图的观测因子;
确定每个所述观测点到所述第一参考曲线段的距离,以所述距离作为残差;以及
基于所述残差约束关系更新所述四个控制点的坐标值,根据更新的坐标值更新所述第一参考曲线段,并根据更新的所述第一参考曲线段重新确定所述距离以迭代计算所述残差,直至所述残差收敛至预定的最小值,将所述四个控制点的当前坐标作为优化后的所述目标坐标。
7.根据权利要求6所述的方法,其中,所述确定每个所述观测点到所述第一参考曲线段的距离,包括:
对所述第一参考曲线段进行均匀采样,得到每两个相邻的采样点之间的多条折线段;
将每个所述观测点分别与所述多条折线段中的其中一条对应,并计算每个所述观测点到对应的所述折线段的距离,作为每个所述观测点到所述第一参考曲线段的距离。
8.根据权利要求6所述的方法,其中,所述观测点与所述控制点之间的所述残差约束关系为所述观测点对所述控制点的雅克比矩阵。
9.根据权利要求6所述的方法,其中,所述方法还包括:
在所述因子图中,针对所述第一中间点和所述第二中间点添加先验约束因子。
10.根据权利要求1-9中的任一项所述的方法,其中,所述车道线的点云数据包括:基于自动驾驶车辆的雷达感知的三维点云图投影到地面所得到的车道线的二维点云集。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中的任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-10中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311821054.XA CN117755312A (zh) | 2023-12-27 | 2023-12-27 | 车道线拟合方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311821054.XA CN117755312A (zh) | 2023-12-27 | 2023-12-27 | 车道线拟合方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117755312A true CN117755312A (zh) | 2024-03-26 |
Family
ID=90325430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311821054.XA Pending CN117755312A (zh) | 2023-12-27 | 2023-12-27 | 车道线拟合方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117755312A (zh) |
-
2023
- 2023-12-27 CN CN202311821054.XA patent/CN117755312A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022160787A1 (zh) | 一种机器人手眼标定方法, 装置, 可读存储介质及机器人 | |
CN112927328B (zh) | 表情迁移方法、装置、电子设备及存储介质 | |
CN117036422A (zh) | 车道线跟踪的方法、装置、设备及存储介质 | |
CN110838122A (zh) | 点云的分割方法、装置及计算机存储介质 | |
WO2022192291A1 (en) | Evolutional deep neural networks | |
Geiping et al. | Composite optimization by nonconvex majorization-minimization | |
CN105654460A (zh) | 点云拼接系统及方法 | |
CN111707262B (zh) | 基于最近点向量投影的点云匹配方法、介质、终端和装置 | |
CN111339724A (zh) | 用于生成数据处理模型和版图的方法、设备和存储介质 | |
CN113870215A (zh) | 中线提取方法及装置 | |
CN111833391B (zh) | 图像深度信息的估计方法及装置 | |
CN113436233A (zh) | 自动驾驶车辆的配准方法、装置、电子设备和车辆 | |
CN110728359B (zh) | 搜索模型结构的方法、装置、设备和存储介质 | |
CN117475399B (zh) | 车道线拟合方法、电子设备及可读介质 | |
US20230206595A1 (en) | Three-dimensional data augmentation method, model training and detection method, device, and autonomous vehicle | |
CN117755312A (zh) | 车道线拟合方法、电子设备及存储介质 | |
CN110956131A (zh) | 单目标追踪方法、装置及系统 | |
CN116385733A (zh) | 用于斗轮机的高精度定位系统及其方法 | |
CN115320642A (zh) | 车道线建模方法、装置、电子设备及自动驾驶车辆 | |
CN115127565A (zh) | 高精地图数据生成方法、装置、电子设备及存储介质 | |
CN110705695B (zh) | 搜索模型结构的方法、装置、设备和存储介质 | |
WO2020217620A1 (ja) | 訓練装置、推定装置、訓練方法、推定方法及びプログラム | |
CN114663524B (zh) | 多相机在线标定方法、装置、电子设备和计算机可读介质 | |
US20230252763A1 (en) | Model generation method, model generation device, and inference device | |
CN114399555B (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 |