CN110161513B - 估计道路坡度的方法、装置、存储介质和计算机设备 - Google Patents

估计道路坡度的方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN110161513B
CN110161513B CN201811143089.1A CN201811143089A CN110161513B CN 110161513 B CN110161513 B CN 110161513B CN 201811143089 A CN201811143089 A CN 201811143089A CN 110161513 B CN110161513 B CN 110161513B
Authority
CN
China
Prior art keywords
road
dimensional
value
nodes
point cloud
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
Application number
CN201811143089.1A
Other languages
English (en)
Other versions
CN110161513A (zh
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.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing 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 Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201811143089.1A priority Critical patent/CN110161513B/zh
Publication of CN110161513A publication Critical patent/CN110161513A/zh
Priority to PCT/CN2019/108231 priority patent/WO2020063774A1/zh
Priority to EP19864762.0A priority patent/EP3757613B1/en
Priority to US17/071,605 priority patent/US11370445B2/en
Application granted granted Critical
Publication of CN110161513B publication Critical patent/CN110161513B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • B60W40/076Slope angle of the road
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4808Evaluating distance, position or velocity data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo or light sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • B60W2420/408
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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

Abstract

本申请涉及一种估计道路坡度的方法、装置、存储介质和计算机设备,所述方法包括:获取由二维道路线与道路的激光点云数据所构成的三维道路线;从所述三维道路线上选取多个节点作为样条曲线的控制点;根据所述控制点绘制用于表示道路高程的第一样条曲线;将所述第一样条曲线转换为用于表示道路坡度的第二样条曲线;获取位置信息,根据所述位置信息和所述第二样条曲线确定第一道路坡度。本申请提供的方案可以提高估计道路坡度的精度。

Description

估计道路坡度的方法、装置、存储介质和计算机设备
技术领域
本申请涉及自动驾驶技术领域,特别是涉及一种估计道路坡度的方法、装置、存储介质和计算机设备。
背景技术
在自动驾驶过程中,自动驾驶的机动车需要对当前所处的位置和前方的道路坡度变化及时做出预判,以便于根据前方的道路状况适时调整车速,保证自动驾驶的安全性和舒适性。
对于道路坡度的估计,常用的方法是直接沿着二维道路线,从三维激光点云数据中选取距离二维道路线上各点最近的三维激光点,读取所获取的三维激光点的高程值,然后计算两个三维激光点之间的高程差和水平距离,从而估计出道路坡度。然而,使用二维道路线和三维激光点云数据估计道路坡度时,不可避免的引入水平距离进行道路坡度估计,由于水平坐标存在不稳定性因素,从而降低了估计道路坡度的精度。
发明内容
基于此,有必要针对估计道路坡度的精度低的技术问题,提供一种估计道路坡度的方法、装置、存储介质和计算机设备。
一种估计道路坡度的方法,包括:
获取由二维道路线与道路的激光点云数据所构成的三维道路线;
从所述三维道路线上选取多个节点作为样条曲线的控制点;
根据所述控制点绘制用于表示道路高程的第一样条曲线;
将所述第一样条曲线转换为用于表示道路坡度的第二样条曲线;
获取位置信息,根据所述位置信息和所述第二样条曲线确定第一道路坡度。
一种估计道路坡度的装置,包括:
道路线获取模块,用于获取由二维道路线与道路的激光点云数据所构成的三维道路线;
节点选取模块,用于从所述三维道路线上选取多个节点作为样条曲线的控制点;
曲线绘制模块,用于根据所述控制点绘制用于表示道路高程的第一样条曲线;
曲线转换模块,用于将所述第一样条曲线转换为用于表示道路坡度的第二样条曲线;
位置信息获取模块,用于获取位置信息;
坡度确定模块,用于根据所述位置信息和所述第二样条曲线确定第一道路坡度。
一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述估计道路坡度的方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述估计道路坡度的方法的步骤。
上述的估计道路坡度的方法、装置、存储介质和计算机设备,通过二维道路线与道路的激光点云数据构成三维道路线,在三维道路线中选取多个节点作为控制点来绘制用于表示道路高程的第一样条曲线,并将第一样条曲线转换成用于表示道路坡度的第二样条曲线,由于样条曲线本身的几何连续性和本地约束性,保证了道路坡度数据的一致性和连续性,从而避免了水平方向误差的引入,因此,在根据第二样条曲线估计道路坡度时,可以有效地提升道路坡度的估计精度。
附图说明
图1为一个实施例中估计道路坡度的方法的应用环境图;
图2为一个实施例中估计道路坡度的方法的流程示意图;
图3为一个实施例中二维道路线纵向剖面与三维激光点的示意图;
图4为一个实施例中获得围绕三维道路线的三维激光点云的步骤的流程示意图;
图5为一个实施例中构建圆柱体获得小范围三维激光点云的示意图;
图6为一个实施例中三维激光点云与小范围三维激光点云的示意图;
图7为一个实施例中确定样条曲线的控制点的步骤的流程示意图;
图8为一个实施例中通过代价函数确定样条曲线的控制点的步骤的流程示意图;
图9为一个实施例中根据第一道路坡度和第二道路坡度确定最终的道路坡度的步骤的流程示意图;
图10为另一个实施例中估计道路坡度的方法的流程示意图;
图11为一个实施例中估计道路坡度的装置的结构框图;
图12为另一个实施例中估计道路坡度的装置的结构框图;
图13为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中估计道路坡度的方法的应用环境图。参照图1,该估计道路坡度的方法可以应用于运动终端,也可以应用于服务器。当应用于运动终端时,在自动驾驶的过程中,运动终端可以通过二维道路线与道路的激光点云数据获得三维道路线,从三维道路线上选取多个控制点来绘制高程样条曲线,并将该高程样条曲线转换为坡度样条曲线,然后根据运动终端的位置信息和坡度样条曲线估计出行驶前方的道路坡度,从而根据坡度信息调整运动终端的行驶速度。
当应用于服务器时,在自动驾驶的过程中,服务器与运动终端处于联网状态,服务器可以通过二维道路线与道路的激光点云数据获得三维道路线,从三维道路线上选取多个控制点来绘制高程样条曲线,并将该高程样条曲线转换为坡度样条曲线,然后通过运动终端的定位系统获取运动终端的位置信息,根据位置信息和坡度样条曲线估计出行驶前方的道路坡度,进而向运动终端发出调整指令,以实现调整运动终端的行驶速度。需要说明的是,这里的二维道路线和道路激光点云数据保存于服务器,而位置信息是通过运动终端的定位系统实时获取。二维道路线与位置信息之间具有关联关系,即二维道路线可以是运动终端位置信息附近的道路线,在进行道路坡度估计时,通过由位置信息附近的二维道路线所获得的坡度样条曲线确定道路坡度。
其中,运动终端包括具有自动驾驶功能的机动车,或者具有自动驾驶功能的机动车上的自动驾驶设备。上述的自动驾驶指的是通过自动控制系统实现的无人驾驶,具有自动驾驶功能的机动车在无人操控的情况下,可以自动行驶在道路上,并且能够根据交通路况进行相应的驾驶操作,如前方有慢速行驶的车辆,自动驾驶车可以自动减速或超车。上述自动驾驶功能的机动车包括但不限于家用轿车、SUV(Sport Utility Vehicle,运动型多用途汽车)、客车、货车、电车、电瓶车和摩托车等。
如图2所示,在一个实施例中,提供了一种估计道路坡度的方法。本实施例主要以该方法应用于上述图1中的运动终端来举例说明。参照图2,该估计道路坡度的方法具体包括如下步骤:
S202,获取由二维道路线与道路的激光点云数据所构成的三维道路线。
其中,二维道路线可以称为二维道路导航线,包含有道路的纵向信息和横向信息,横向指的是从道路的中心线向两边的方向,纵向指的是车辆行驶的方向。例如,二维道路线可以是在导航过程中显示在运动终端显示屏上的道路线。激光点云可以是使用三维激光扫描仪或照相式扫描仪道路表面所得激光点的集合。激光点云数据可以是激光点云以及各激光点的信息,例如在三维坐标系中,激光点的信息包括X轴、Y轴和Z轴方向上的信息,其中X轴上的信息可以表示道路的纵向信息,Y轴上的信息可以表示运动终端在行驶方向上道路的横向信息,Z轴上的信息可以表示道路的高程信息。三维道路线可以是在二维道路线上添加了高程信息的道路线。
在一个实施例中,激光点云数据的来源可以是:在制作电子地图时输入至运动终端,或者由运动终端在行驶过程中通过激光器扫描前方道路所得。
在一个实施例中,构建三维道路线的实现方式可以包括:获取二维道路线与道路的激光点云数据;从激光点云数据选取与二维道路线上各节点距离最近的激光点;获取激光点的高程值;将高程值作为二维道路线上对应节点的高程值,获得三维道路线。
在一个实施例中,运动终端可以通过欧式距离计算与二维道路线上各节点最近的激光点。
由于二维道路线不包含道路高程信息,而三维激光点包含高程信息。因此,可以选取道路线最近的三维激光点,将选取的三维激光点的高程信息作为对应道路线节点的高程信息,这样便可获得包含有高程信息的三维道路线。
例如,如图3所示,对于二维道路线上的节点a,可通过计算欧式距离确定与其距离最近的点,如最近点A,然后将最近点A的高程信息作为节点a的高程信息。当将二维道路线上各节点距离最近的激光点都找出来,获取其高程信息,并将这些高程信息作为道路线上对应节点的高程信息,这样便可获得包含高程信息的三维道路线。
S204,从三维道路线上选取多个节点作为样条曲线的控制点。
其中,样条曲线(Spline Curves)是指根据给定的一组控制点而得到的曲线,该曲线的形状由这些控制点进行控制。
在一个实施例中,运动终端可以从三维道路线上随机选取多个节点作为样条曲线的控制点。此外,运动终端也可以按照每隔预设距离从三维道路线上选取一个节点,从而在三维道路线上选取到多个节点,并将这些节点作为样条曲线的控制点。
在一个实施例中,运动终端将选取出来的多个节点作为初始控制点,根据初始控制点绘制用于表示道路高程的初始样条曲线,计算代价函数。其中,该代价函数的变量为:每两个初始控制点之间的曲线与附近三维激光点云的拟合程度,以及每段曲线长度。然后,运动终端不断调整初始控制点的数量,每次调整过程中计算一次代价函数,从而得到代价函数的极小值,将获得极小值时所对应的经过调整后的初始控制点作为最终样条曲线的控制点,从而估计出样条曲线的控制点。
S206,根据控制点绘制用于表示道路高程的第一样条曲线。
其中,样条曲线可以是B样条曲线,如均匀B样条曲线和非均匀B样条曲线。样条曲线的表达式可以是三维三阶的方程式,其表达式中具有基函数。道路高程指的是道路上的某点沿铅垂线方向到绝对基面的距离。高程差是道路上某两个点之间高程的差值。
例如,第一样条曲线的表达式为其中,Ni,4即为第一样条曲线的基函数,该基函数在对应的定义区间内是可导的。而Pi即为样条曲线的控制点。
在一个实施例中,运动终端可以按照样条曲线的规则用曲线将控制点连接起来,获得用于表示道路高程的第一样条曲线。
在一个实施例中,道路高程的测量方式可以包括:水准测量、三角高程测量、GNSS(Global Navigation Satellite System,全球导航卫星系统)高程测量和物理高程测量。其中,水准测量是利用能提供水平视线的仪器(如水准仪),测定地面点间的高差。
S208,将第一样条曲线转换为用于表示道路坡度的第二样条曲线。
其中,道路坡度可以是道路横坡、道路纵坡以及纵横组合坡度。若无特别说明,在后续的实施例中将以道路坡度为道路纵坡为例进行阐述。
道路坡度可视为高程曲线的斜率,因此,可通过对高程曲线进行求导的方式获得道路坡度。在一个实施例中,S208具体可以包括:确定第一样条曲线方程中的基函数;对第一样条曲线方程中的基函数进行求导,将求导后所得的曲线作为用于表示道路坡度的第二样条曲线。
需要说明的是,若道路高程沿坡度上升方向的变化是均匀变化时,对应的道路坡度为一个固定的值。若道路高程沿坡度上升方向的变化是非均匀变化时,对应的道路坡度为一条直线或曲线。
例如,对如下第一样条曲线P(s)进行求导,可以得到如下用于表示道路坡度的第二样条曲线P'(z)。
P(s)=(-s3+3s2-3s+1)p0z+(3s3-6s2+4)p1z+(-3s3+3s2+3s+1)p2z+s3p3z
P'(z)=(-3s2+6s-3)p0z+(9s2-12s)p1z+(-9s2+6s+3)p2z+3s2p3z
其中,p0z、p1z、p2z和p3z是控制点的高程信息。s是0到1之间的值。
S210,获取位置信息。
其中,位置信息指的是运动终端当前所处的位置,该位置信息可以是经纬度值,也可以是将经纬度值从大地坐标系转换为与三维道路线对应的三维直角坐标系中的坐标值。
在一个实施例中,运动终端通过内置的GPS(Global Positioning System,全球定位系统)、或BDS(BeiDou Navigation Satellite System,北斗卫星导航系统)、或伽利略卫星导航系统(Galileo Satellite Navigation System)等定位获得运动终端的位置信息。此外,运动终端还可以将定位所得的位置信息转换为与三维道路线对应的三维直角坐标系中的位置信息。
在另一个实施例中,运动终端通过移动通信基站定位获得运动终端的位置信息。
S212,根据位置信息和第二样条曲线确定第一道路坡度。
在一个实施例中,当位置信息为与三维道路线对应的三维直角坐标系中的位置信息时,将该位置信息与样条曲线上的节点进行相似对比,如该位置信息与样条曲线上的某个节点之间欧式距离最小,表示相似度最大,则将该位置信息代入第二样条曲线的表达式中,从而可以计算出第一道路坡度。其中,s可以是相似度。
在一个实施例中,运动终端可以按照第一道路坡度确定对应的速度值,按照该速度值来调整行驶过程中运动终端的行驶速度。其中,不同大小的道路坡度对应不同的速度值,当道路坡度值较小时,可对应较大的速度值。当道路坡度值较大时,则可对应较大的速度值。从而可以避免在较大坡度的道路上行驶时速度过快,而造成安全性的问题。
上述实施例中,通过二维道路线与道路的激光点云数据构成三维道路线,在三维道路线中选取多个节点作为控制点来绘制用于表示道路高程的第一样条曲线,并将第一样条曲线转换成用于表示道路坡度的第二样条曲线,由于样条曲线本身的几何连续性和本地约束性,保证了道路坡度数据的一致性和连续性,从而避免了水平方向误差的引入,因此,在根据第二样条曲线估计道路坡度时,可以有效地提升道路坡度的估计精度。
在一个实施例中,如图4所示,在S204之前,该方法还包括:
S402,以三维道路线上的各节点为基准点,以预设值为距离值确定柱形区域。
其中,该基准点可以是中心点,如圆心、多边形的中心等。柱形区域可以是圆柱体或多边形柱体中的各区域。
在一个实施例中,运动终端在三维道路线上平均取点,每两个三维道路线的两端节点连接起来,以两端节点为圆心以预设值为半径绘制两个圆,进而可以得到包含该两个圆的圆柱体。
在一个实施例中,运动终端在三维道路线上平均取点,每两个三维道路线的两端节点连接起来,以两端节点为中心点以预设值为最近距离绘制两个多边形,进而可以得到包含该两个多边形的柱体。
S404,从激光点云数据中选取落在柱形区域内的激光点。
柱形区域内框定了激光点云数据中的部分激光点,运动终端可以将落在柱形区域内的激光点保留下来。
S406,将三维道路线上相邻两节点做点云处理,获得围绕三维道路线的三维激光点云;三维激光点云用于与三维道路线进行拟合。
例如,如图5所示,将三维道路线的两个节点连接起来,作为一个圆柱体的两个端点,设定一个半径范围,把落在圆柱体内的点保留下来,从而可以得到小部分的三维激光点云,如图6(b)所示。其中,图6(a)为激光点云数据中关于道路的激光点云,图6(b)是截取圆柱体内的激光点所构成的激光点云。
上述实施例中,通过柱形区域将距离最近、且距离满足预设值的三维激光点保留下来,将距离较远的三维激光点滤除,从而保留下来的三维激光点云可以更好的与三维道路线拟合,提高拟合度,进而提升道路坡度估计的准确性。
在一个实施例中,如图7所示,S204具体可以包括:
S702,从三维道路线中选取多个节点。
在一个实施例中,运动终端可以从三维道路线上随机选取多个节点,或者,也可以按照每隔预设距离从三维道路线上选取一个节点,从而在三维道路线上选取到多个节点。
S704,获取与每相邻两个节点间的子段三维道路线对应的三维激光点云。
其中,子段三维道路线指的是相邻两个节点间所连接的三维道路线。与子段三维道路线对应的三维激光点云指的是:围绕该子段三维道路线的三维激光点云。
在一个实施例中,对于对应三维激光点云的获取,运动终端确定子段三维道路线的两端节点位置,然后截取两端节点位置之间的三维激光点云。
S706,确定各子段三维道路线的长度值,以及各子段三维道路线与对应三维激光点云之间的拟合度值。
在一个实施例中,当选取出多个节点之后,计算各节点之间的子段三维道路的长度值,并且通过计算各子段三维道路线上的节点与对应三维激光点云中的激光点之间的欧氏距离,根据计算出来的欧式距离确定拟合度值。其中,欧式距离越小表示拟合度值越大,即拟合程度高。欧式距离越大表示拟合度值越小,即拟合程度低。拟合度值可以是0到1之间的值,其中,1可以表示100%拟合。
在一个实施例中,运动终端也可以从各子段三维道路线中选取长度值超过预设阈值的子段三维道路线,记录选取出来的子段三维道路线的长度值,当确定子段三维道路线与对应三维激光点云之间的拟合度值时,执行S708。
S708,确定各长度值与各拟合度值之间差值的累加值。
其中,选取出来的节点可作为初始样条曲线的控制点。当累加值足够小时,可以表示将选取出来的多个节点作为控制点所绘制的B样条曲线为最优的曲线。
在一个实施例中,运动终端计算出各子段三维道路线的长度值,以及各子段三维道路线与对应三维激光点云之间的拟合度值之后,将各长度值进行相加求和,得到第一和值。运动终端将各拟合度值进行相加求和,得到第二和值。运动终端将第一和值与第二和值求差,得到差值。其中,得到的差值即为上述的累加值。
在另一个实施例中,运动终端将各个长度值与对应的拟合度值求差,将后将各个求差所得的结果进行相加求和,得到累加值。
S710,当累加值达到预设条件时,将所选取的多个节点作为样条曲线的控制点。
在一个实施例中,该预设条件可以是一个足够小的预设阈值,当累加值小于或等于预设阈值时,将多个节点作为样条曲线的控制点,根据该控制点绘制的B样条曲线为最优的B样条曲线。
上述实施例中,在将选取的多个节点作为控制节点绘制样条曲线时,先判断由各子段三维道路线的长度值,以及该各子段三维道路线与对应三维激光点云之间的拟合度值之间差值的累加值,只有当累加值达到预设条件时,才将选取的多个节点作为样条曲线的控制点,进而根据控制点绘制样条曲线,以获得最优的样条曲线,提升道路坡度的估计准确性。
在一个实施例中,如图8所示,该方法还可以包括:
S802,获取以长度为第一变量,以拟合度为第二变量的代价函数。
在一个实施例中,运动终端建立代价函数,其中,代价函数中的第一变量为长度,第二变量为拟合度。
例如,代价函数如下所示:
E=-α×data_fitting+ε×#length
其中,第一项为每两个节点之间的子段三维道路线与围绕子段三维道路线的三维激光点云的拟合程度,第二项为每段曲线的长度。data_fitting可以是子段三维道路线与三维激光点云之间的欧式距离,α可以是对应的权重系数,α×data_fitting即为拟合程度。#length可以是各子段三维道路线的长度值,也可以是长度超过预设阈值的那部分子段三维道路线的长度值,还可以是长度超过预设阈值的那部分子段三维道路线的数量,ε可以是对应的权重系数。
S804,调整多个节点的数量。
在一个实施例中,运动终端可以随机调整所选取的多个节点的数量,也可以每次按照设定的数量调整所选取的多个节点的数量。
具体地,S804具体可以包括:运动终端增加所选取的多个节点的数量,或者减少所选取的多个节点的数量。其中,对于增加节点数量,运动终端可以随机增加所选取的多个节点的数量,也可以每次按照设定的数量增加所选取的多个节点的数量。此外,对于减少节点数量,运动终端可以随机减少所选取的多个节点的数量,也可以每次按照设定的数量减少所选取的多个节点的数量。
S806,根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定代价函数具有极小值。
在一个实施例中,当增加所选取的多个节点的数量时,S806具体可以包括:确定每次增加节点数量后所形成各子段三维道路线的长度值,以及每次增加节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由增加节点数量所确定的长度值和对应的拟合度值,代价函数先递减后递增,则确定代价函数具有极小值。其中,增加的节点在三维道路线上选取。
在增加节点数量的过程中,所计算出来的代价函数降低,则在原有节点的基础上继续增加节点数量,直至刚好使代价函数递增,如此可以得到极小值,获得极小值所对应的节点即为最终样条曲线的控制点,根据该控制点绘制的样条曲线即为最优的样条曲线。在增加节点数量的过程中,所计算出来的代价函数递增,则按照预设的概率接收本次增加节点的操作,并且在此基础上继续增加节点数量。若代价函数依然递增,则拒绝本次增加节点的操作,并开始减少节点数量,计算代价函数。
在一个实施例中,当减少所选取的多个节点的数量时,S806具体可以包括:确定每次减少节点数量后所形成各子段三维道路线的长度值,以及每次减少节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由减少节点数量所确定的长度值和对应的拟合度值,代价函数先递减后递增,则确定代价函数具有极小值。
在减少节点数量的过程中,所计算出来的代价函数降低,则在原有节点的基础上继续减少节点数量,直至刚好使代价函数递增,如此可以得到极小值,获得极小值所对应的节点即为最终样条曲线的控制点,根据该控制点绘制的样条曲线即为最优的样条曲线。在减少节点数量的过程中,所计算出来的代价函数递增,则按照预设的概率接收本次减少节点的操作,并且在此基础上继续减少节点数量。若代价函数依然递增,则拒绝本次减少节点的操作,并开始增加节点数量,计算代价函数。
S808,将获得极小值时所对应调整的节点作为样条曲线的控制点。
例如,在调整节点数量的过程中,计算代价函数的值,若当调整节点数量为s个时,代价函数的值最小,那么,将该s个节点作为样条曲线的控制点,该控制点即为最优控制点。且根据该控制点绘制样条曲线,即为最优的样条曲线。
上述实施例中,在将选取的多个节点作为控制节点绘制样条曲线之前,调整节点数量,然后判断代价函数是否可以取得极小值,当取得极小值时,表示获得极小值时所对应调整的节点为最优的控制点,根据该控制节点绘制样条曲线即可得到最优的样条曲线,从而提升道路坡度的估计准确性。
在一个实施例中,如图9所示,该方法还可以包括:
S902,通过运动终端中的传感器检测第二道路坡度。
其中,传感器可以是安装在运动终端内的坡度传感器或角度传感器,通过该传感器可以检测出道路的坡度值。
对于确定最终的道路坡度,可以将由用于表示道路坡度的第二样条曲线所得的第一道路坡度,与传感器检测出来的第二道路坡度进行整合,以降低道路坡度的估计误差。
S904,获取与第一道路坡度对应的第一加权系数,以及与第二道路坡度对应的第二加权系数。
其中,第一加权系数与第二加权系数均是0到1之间的值,且第一加权系数与第二加权系数相加所得的和值为1。
在一个实施例中,第一加权系数与第二加权系数的取值,运动终端可以分别根据道路上的车辆数量、或者计算道路坡度所采用方式的准确度来确定。
例如,当道路上的车辆数量较多,运动终端根据传感器检测出来的第二道路坡度可能存在一定的误差,此时该第二加权系数小于第一加权系数。
S906,确定第一加权系数与第一道路坡度之间的第一乘积值。
S908,确定第二加权系数与第二道路坡度之间的第二乘积值。
S910,根据第一乘积值和第二乘积值确定最终的道路坡度。
在一个实施例中,运动终端将第一乘积值和第二乘积值相加求和,将求和所得的结果确定为最终的道路坡度。
在一个实施例中,确定道路坡度之后,该方法还可以包括:检测运动终端在行驶方向上的剩余坡长值;根据剩余坡长值和确定的道路坡度确定用户视场区域;当用户视场区域小于预设视场区域时,获取与第一道路坡度对应的、且与用户视场区域匹配的速度值;按照获取的速度值调整运动终端在道路上的行驶速度。
其中,剩余坡长值指的是:在行驶方向上,运动终端当前所处位置与前方坡度截止时的坡长。用户视场区域可以指用户可视的区域,可以利用用户最大的可视距离来衡量。
例如,运动终端刚好完全进入上坡或下坡的道路时,由于运动终端与具有坡度的道路平行,在运动终端内的用户其视场区域可以是整个具有坡度的道路。当快到上坡或下坡的终点时,其视场区域可能只有剩余那部分坡度道路,这样使得用户的视场区域大大降低,若前方出现车辆将会存在安全威胁,此时应该降低行驶速度。此外,运动终端在具有坡度的道路上,根据道路坡度来调整行驶速度,不同的道路坡度可对应不同的行驶速度。对于道路坡度较大的道路,对应的行驶速度较小。
上述实施例中,将第一道路坡度与传感器检测出来的第二道路坡度进行整合,从而可以降低道路坡度的估计误差。根据剩余坡长值和道路坡度来确定行驶速度,可以防止行驶速度过快与非视场区域的车辆碰撞,从而提高行驶的安全性。
在传统的道路坡度估计方案中,其方法主要是直接沿着二维道路线,从三维激光点云数据中选取距离二维道路线上各点最近的三维激光点,读取所获取的三维激光点的高程值,然后计算两个三维激光点之间的高程差和水平距离,从而估计出道路坡度。
在传统的方案中,存在着以下两个问题:
一方面,上述方案没有考虑采集的道路数据质量问题,例如采集设备本身引入的数据噪声,扫描分辨率导致数据缺失,设备扫描角度导致的数据缺失,定位精度导致的高程数据的杂散性问题。而且,在实际的采集数据过程中,由于其它车辆的遮挡而引起数据缺失,从而在数据中估计高程时存在数据不稳定,精度差的问题。
另一方面,用二维道路线进行高程信息的提取时,二维道路线数据本身不可避免的在水平方向引入误差,水平的坐标也会产生不稳定性,导致进行高程信息的提取引入误差。
因此,为了解决上述问题,本发明实施例提出了一种估计道路坡度的方法,如图10所示,该方法的具体内容可以包括:
(1)找到与二维道路线上各节点最近的激光点,构成三维道路线。
对于二维道路线上的每个节点,找到三维激光点云中欧式距离最近的激光点,用找到的激光点的高程值作为二维道路线上对应节点的高程值,这样就将二维道路线转换成三维道路线。
(2)根据三维道路线,在三维激光点云中提取一个较小邻域内的所有激光点。
将三维道路线上的每两个节点连接起来,并将连接的两个节点作为圆柱体的两个端点,设定圆柱体截面圆的半径范围,得到围绕两节点间三维道路线的圆柱体。把落在圆柱体内的点保留下来,按照每两个相邻的三维道路线的端点做点云的处理,形成一个围绕三维道路线的小范围三维点云。
(3)在这个三维道路线上,构造三维三阶的B样条曲线,通过优化B样条曲线的控制点个数和控制点坐标,实现曲线和激光点的拟合误差最小,同时满足控制点数最少。
在三维道路线上选择多个节点作为B样条曲线的节点(knot),从而估计出B样条曲线的控制点,根据估计出来的控制点构建初始的三维B样条曲线,并计算如下代价函数:
E=-α×data_fitting+ε×#length
其中,第一项为每两个knot点之间的曲线与周围的三维激光点云的拟合程度,第二项为每段曲线的长度。具体地,data_fitting可以是knot点之间的曲线与三维激光点云之间的欧式距离,α可以是对应的权重系数,则α×data_fitting即为拟合程度。#length可以是长度超过预设阈值的那部分曲线的个数,ε可以是对应的权重系数。
通过随机扰动knot点,使得代价函数最低。扰动的方式,采取随机增加knot点,或随机减少knot点。其中,增加的knot点在三维道路线上选取。
在扰动过程中,如果代价函数降低,则接受这种扰动。如果代价函数增加,则按照一定概率接受或拒绝。接受的概率随着迭代的次数逐渐降低。在迭代结束后,得到最优的B样条曲线。
(4)根据拟合后的三维B样条曲线,在行进方向提取高程样条曲线,以及对高程样条曲线求导得到纵坡样条曲线。
沿着拟合后的三维B样条曲线,以固定间隔将三维B样条曲线离散化,取每个点的高程值构成高程曲线。
每一段的高程样条曲线的表达式为:
P(s)=(-s3+3s2-3s+1)p0z+(3s3-6s2+4)p1z+(-3s3+3s2+3s+1)p2z+s3p3z
通过对高程样条曲线的表达式求导,得到纵坡样条曲线的表达式为:
P'(z)=(-3s2+6s-3)p0z+(9s2-12s)p1z+(-9s2+6s+3)p2z+3s2p3z
通过纵坡样条曲线可以估计出一个道路坡度。在自动驾驶过程中,若需要根据道路坡度调整自动驾驶的行驶速度时,还需要通过传感器检测出动态的道路坡度,将两个道路坡度进行加权求和,得到一个最终的道路坡度。然后,根据最终得到的道路坡度调整自动驾驶的形式速度。
本方案可有效对抗数据噪声和数据缺失,实现工业级的数据精度要求。使用本方案获得的高程值和道路坡度,可以广泛应用于自动驾驶和高级辅助驾驶,对行驶前方由于坡度造成的视线遮挡做出提前预警,适时调整车速。一方面防止车速过快与视场区域外的车辆碰撞,提高安全性;另一方面保证在坡度地区道路行驶的舒适性,提高用户的行驶体验。
图2、4、7-9为一个实施例中估计道路坡度的方法的流程示意图。应该理解的是,虽然图2、4、7-9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4、7-9中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图11所示,在一个实施例中,提供了一种估计道路坡度的装置,该装置具体包括:道路线获取模块1102、节点选取模块1104、曲线绘制模块1106、曲线转换模块1108、位置信息获取模块1110和坡度确定模块1112;其中:
道路线获取模块1102,用于获取由二维道路线与道路的激光点云数据所构成的三维道路线;
节点选取模块1104,用于从三维道路线上选取多个节点作为样条曲线的控制点;
曲线绘制模块1106,用于根据控制点绘制用于表示道路高程的第一样条曲线;
曲线转换模块1108,用于将第一样条曲线转换为用于表示道路坡度的第二样条曲线;
位置信息获取模块1110,用于获取位置信息;
坡度确定模块1112,用于根据位置信息和第二样条曲线确定第一道路坡度。
上述实施例中,通过二维道路线与道路的激光点云数据构成三维道路线,在三维道路线中选取多个节点作为控制点来绘制用于表示道路高程的第一样条曲线,并将第一样条曲线转换成用于表示道路坡度的第二样条曲线,由于样条曲线本身的几何连续性和本地约束性,保证了道路坡度数据的一致性和连续性,从而避免了水平方向误差的引入,因此,在根据第二样条曲线估计道路坡度时,可以有效地提升道路坡度的估计精度。
在一个实施例中,如图12所示,该装置还包括:道路线构建模块1114;其中:
道路线构建模块1114用于获取二维道路线与道路的激光点云数据;从激光点云数据选取与二维道路线上各节点距离最近的激光点;获取激光点的高程值;将高程值作为二维道路线上对应节点的高程值,获得三维道路线。
在一个实施例中,如图12所示,该装置还包括:三维激光点云获取模块1116;其中:
三维激光点云获取模块1116,用于在从三维道路线上选取多个节点作为样条曲线的控制点之前,以三维道路线上的各节点为基准点,以预设值为距离值确定柱形区域;从激光点云数据中选取落在柱形区域内的激光点;将三维道路线上相邻两节点做点云处理,获得围绕三维道路线的三维激光点云;三维激光点云用于与三维道路线进行拟合。
上述实施例中,通过柱形区域将距离最近、且距离满足预设值的三维激光点保留下来,将距离较远的三维激光点滤除,从而保留下来的三维激光点云可以更好的与三维道路线拟合,提高拟合度,进而提升道路坡度估计的准确性。
在一个实施例中,节点选取模块1104还用于从三维道路线中选取多个节点;获取与每相邻两个节点间的子段三维道路线对应的三维激光点云;确定各子段三维道路线的长度值,以及各子段三维道路线与对应三维激光点云之间的拟合度值;确定各长度值与各拟合度值之间差值的累加值;当累加值达到预设条件时,将选取的多个节点作为样条曲线的控制点。
上述实施例中,在将选取的多个节点作为控制节点绘制样条曲线时,先判断由各子段三维道路线的长度值,以及该各子段三维道路线与对应三维激光点云之间的拟合度值之间差值的累加值,只有当累加值达到预设条件时,才将选取的多个节点作为样条曲线的控制点,进而根据控制点绘制样条曲线,以获得最优的样条曲线,提升道路坡度的估计准确性。
在一个实施例中,如图12所示,该装置还包括:控制点确定模块1118;其中:
控制点确定模块1118用于获取以长度为第一变量,以拟合度为第二变量的代价函数;调整多个节点的数量;根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定代价函数具有极小值;将获得极小值时所对应调整的节点作为样条曲线的控制点。
在一个实施例中,控制点确定模块1118还用于增加多个节点的数量;确定每次增加节点数量后所形成各子段三维道路线的长度值,以及每次增加节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由增加节点数量所确定的长度值和对应的拟合度值,代价函数先递减后递增,则确定代价函数具有极小值。
在一个实施例中,控制点确定模块1118还用于减少多个节点的数量;确定每次减少节点数量后所形成各子段三维道路线的长度值,以及每次减少节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由减少节点数量所确定的长度值和对应的拟合度值,代价函数先递减后递增,则确定代价函数具有极小值。
上述实施例中,在将选取的多个节点作为控制节点绘制样条曲线之前,调整节点数量,然后判断代价函数是否可以取得极小值,当取得极小值时,表示获得极小值时所对应调整的节点为最优的控制点,根据该控制节点绘制样条曲线即可得到最优的样条曲线,从而提升道路坡度的估计准确性。
在一个实施例中,曲线转换模块1108还用于确定第一样条曲线方程中的基函数;对第一样条曲线方程中的基函数进行求导,将求导后所得的曲线作为用于表示道路坡度的第二样条曲线。
在一个实施例中,坡度确定模块1112还用于通过运动终端中的传感器检测第二道路坡度;获取与第一道路坡度对应的第一加权系数,以及与第二道路坡度对应的第二加权系数;确定第一加权系数与第一道路坡度之间的第一乘积值;确定第二加权系数与第二道路坡度之间的第二乘积值;根据第一乘积值和第二乘积值确定最终的道路坡度。
在一个实施例中,如图12所示,该装置还可以包括:行驶速度调整模块1120;其中:
行驶速度调整模块1120,用于检测运动终端在行驶方向上的剩余坡长值;根据剩余坡长值和确定的道路坡度确定用户视场区域;当用户视场区域小于预设视场区域时,获取与第一道路坡度对应的、且与用户视场区域匹配的速度值;按照获取的速度值调整运动终端在道路上的行驶速度。
上述实施例中,将第一道路坡度与传感器检测出来的第二道路坡度进行整合,从而可以降低道路坡度的估计误差。根据剩余坡长值和道路坡度来确定行驶速度,可以防止行驶速度过快与非视场区域的车辆碰撞,从而提高行驶的安全性。
上述估计道路坡度的装置可以实现为一种计算机程序的形式,该计算机程序可在运动终端(或服务器)上运行。以运动终端为例,运动终端的存储介质中可存储组成该图像处理装置的各个程序模块,比如,图11所示的道路线获取模块1102、节点选取模块1104、曲线绘制模块1106、曲线转换模块1108、位置信息获取模块1110和坡度确定模块1112。各个程序模块构成的计算机程序在被处理器执行时,使得处理器执行本申请各个实施例估计道路坡度的方法中的步骤。
图13示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的运动终端。如图13所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现估计道路坡度的方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行估计道路坡度的方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
上述计算机设备可以是运动终端(或服务器),也可以是运动终端(或服务器)上的用于执行估计道路坡度的方法的设备。
在一个实施例中,本申请提供的11装置可以实现为一种计算机程序的形式,计算机程序可在如图13所示的计算机设备上运行。计算机设备的存储器中可存储组成该估计道路坡度的装置的各个程序模块,比如,图11所示的道路线获取模块1102、节点选取模块1104、曲线绘制模块1106、曲线转换模块1108、位置信息获取模块1110和坡度确定模块1112。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的估计道路坡度的方法中的步骤。
例如,图13所示的计算机设备可以通过如图11所示的估计道路坡度的装置中的道路线获取模块1102执行S202。计算机设备可通过节点选取模块1104执行S204。计算机设备可通过曲线绘制模块1106执行S206。计算机设备可通过曲线转换模块1108执行S208。计算机设备可通过位置信息获取模块1110执行S210。计算机设备可通过坡度确定模块1112执行S212。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述估计道路坡度的方法的步骤。此处估计道路坡度的方法的步骤可以是上述各个实施例的估计道路坡度的方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述估计道路坡度的方法的步骤。此处估计道路坡度的方法的步骤可以是上述各个实施例的估计道路坡度的方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (18)

1.一种估计道路坡度的方法,包括:
获取二维道路线与道路的激光点云数据;从所述激光点云数据选取与所述二维道路线上各节点距离最近的激光点;获取所述激光点的高程值;将所述高程值作为所述二维道路线上对应节点的高程值,获得三维道路线;
从所述三维道路线中选取多个节点;获取与每相邻两个节点间的子段三维道路线对应的三维激光点云;确定各子段三维道路线的长度值,以及所述各子段三维道路线与对应三维激光点云之间的拟合度值;确定各所述长度值与各所述拟合度值之间差值的累加值;当所述累加值达到预设条件时,将选取的多个节点作为样条曲线的控制点;
根据所述控制点绘制用于表示道路高程的第一样条曲线;
确定所述第一样条曲线方程中的基函数;对所述第一样条曲线方程中的基函数进行求导,将求导后所得的曲线作为用于表示道路坡度的第二样条曲线;
获取位置信息,根据所述位置信息和所述第二样条曲线确定第一道路坡度。
2.根据权利要求1所述的方法,其特征在于,所述从所述三维道路线上选取多个节点作为样条曲线的控制点之前,所述方法还包括:
以所述三维道路线上的各节点为基准点,以预设值为距离值确定柱形区域;
从所述激光点云数据中选取落在所述柱形区域内的激光点;
将所述三维道路线上相邻两节点做点云处理,获得围绕所述三维道路线的三维激光点云;所述三维激光点云用于与所述三维道路线进行拟合。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取以长度为第一变量,以拟合度为第二变量的代价函数;
调整所述多个节点的数量;
根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定所述代价函数具有极小值;
将获得所述极小值时所对应调整的节点作为样条曲线的控制点。
4.根据权利要求3所述的方法,其特征在于,所述调整所述多个节点的数量包括:
增加所述多个节点的数量;
所述根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定所述代价函数具有极小值包括:
确定每次增加节点数量后所形成各子段三维道路线的长度值,以及每次增加节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;
当依次代入由增加节点数量所确定的长度值和对应的拟合度值,所述代价函数先递减后递增,则确定所述代价函数具有极小值。
5.根据权利要求3所述的方法,其特征在于,所述调整所述多个节点的数量包括:
减少所述多个节点的数量;
所述根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定所述代价函数具有极小值包括:
确定每次减少节点数量后所形成各子段三维道路线的长度值,以及每次减少节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;
当依次代入由减少节点数量所确定的长度值和对应的拟合度值,所述代价函数先递减后递增,则确定所述代价函数具有极小值。
6.根据权利要求1所述的方法,其特征在于,所述确定各子段三维道路线的长度值,以及所述各子段三维道路线与对应三维激光点云之间的拟合度值包括:
计算各节点之间的子段三维道路的长度值;
计算各子段三维道路线上的节点与对应三维激光点云中的激光点之间的欧氏距离;
根据计算出来的欧式距离确定拟合度值。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过运动终端中的传感器检测第二道路坡度;
获取与所述第一道路坡度对应的第一加权系数,以及与所述第二道路坡度对应的第二加权系数;
确定所述第一加权系数与所述第一道路坡度之间的第一乘积值;
确定所述第二加权系数与所述第二道路坡度之间的第二乘积值;
根据所述第一乘积值和所述第二乘积值确定最终的道路坡度。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述方法还包括:
检测运动终端在行驶方向上的剩余坡长值;
根据所述剩余坡长值和确定的道路坡度确定用户视场区域;
当所述用户视场区域小于预设视场区域时,获取与所述第一道路坡度对应的、且与所述用户视场区域匹配的速度值;
按照获取的速度值调整运动终端在所述道路上的行驶速度。
9.一种估计道路坡度的装置,包括:
道路线构建模块,用于获取二维道路线与道路的激光点云数据;从所述激光点云数据选取与所述二维道路线上各节点距离最近的激光点;获取所述激光点的高程值;将所述高程值作为所述二维道路线上对应节点的高程值,获得三维道路线;
节点选取模块,用于从所述三维道路线中选取多个节点;获取与每相邻两个节点间的子段三维道路线对应的三维激光点云;确定各子段三维道路线的长度值,以及所述各子段三维道路线与对应三维激光点云之间的拟合度值;确定各所述长度值与各所述拟合度值之间差值的累加值;当所述累加值达到预设条件时,将选取的多个节点作为样条曲线的控制点;
曲线绘制模块,用于根据所述控制点绘制用于表示道路高程的第一样条曲线;
曲线转换模块,用于确定所述第一样条曲线方程中的基函数;对所述第一样条曲线方程中的基函数进行求导,将求导后所得的曲线作为用于表示道路坡度的第二样条曲线;
位置信息获取模块,用于获取位置信息;
坡度确定模块,用于根据所述位置信息和所述第二样条曲线确定第一道路坡度。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
三维激光点云获取模块,用于以所述三维道路线上的各节点为基准点,以预设值为距离值确定柱形区域;从所述激光点云数据中选取落在所述柱形区域内的激光点;将所述三维道路线上相邻两节点做点云处理,获得围绕所述三维道路线的三维激光点云;所述三维激光点云用于与所述三维道路线进行拟合。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
控制点确定模块,用于获取以长度为第一变量,以拟合度为第二变量的代价函数;调整所述多个节点的数量;根据每次调整节点数量后所形成各子段三维道路线的长度值,以及每次调整节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值,确定所述代价函数具有极小值;将获得所述极小值时所对应调整的节点作为样条曲线的控制点。
12.根据权利要求11所述的装置,其特征在于,所述控制点确定模块,还用于增加所述多个节点的数量;确定每次增加节点数量后所形成各子段三维道路线的长度值,以及每次增加节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由增加节点数量所确定的长度值和对应的拟合度值,所述代价函数先递减后递增,则确定所述代价函数具有极小值。
13.根据权利要求11所述的装置,其特征在于,所述控制点确定模块,还用于减少所述多个节点的数量;确定每次减少节点数量后所形成各子段三维道路线的长度值,以及每次减少节点数量后所形成各子段三维道路线与对应三维激光点云之间的拟合度值;当依次代入由减少节点数量所确定的长度值和对应的拟合度值,所述代价函数先递减后递增,则确定所述代价函数具有极小值。
14.根据权利要求9所述的装置,其特征在于,所述节点选取模块,还用于计算各节点之间的子段三维道路的长度值;计算各子段三维道路线上的节点与对应三维激光点云中的激光点之间的欧氏距离;根据计算出来的欧式距离确定拟合度值。
15.根据权利要求9所述的装置,其特征在于,所述坡度确定模块,还用于通过运动终端中的传感器检测第二道路坡度;获取与所述第一道路坡度对应的第一加权系数,以及与所述第二道路坡度对应的第二加权系数;确定所述第一加权系数与所述第一道路坡度之间的第一乘积值;确定所述第二加权系数与所述第二道路坡度之间的第二乘积值;根据所述第一乘积值和所述第二乘积值确定最终的道路坡度。
16.根据权利要求9至15任一项所述的装置,其特征在于,所述装置还包括:
行驶速度调整模块,用于检测运动终端在行驶方向上的剩余坡长值;根据所述剩余坡长值和确定的道路坡度确定用户视场区域;当所述用户视场区域小于预设视场区域时,获取与所述第一道路坡度对应的、且与所述用户视场区域匹配的速度值;按照获取的速度值调整运动终端在所述道路上的行驶速度。
17.一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
18.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
CN201811143089.1A 2018-09-28 2018-09-28 估计道路坡度的方法、装置、存储介质和计算机设备 Active CN110161513B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201811143089.1A CN110161513B (zh) 2018-09-28 2018-09-28 估计道路坡度的方法、装置、存储介质和计算机设备
PCT/CN2019/108231 WO2020063774A1 (zh) 2018-09-28 2019-09-26 确定道路坡度的方法、装置、存储介质和计算机设备
EP19864762.0A EP3757613B1 (en) 2018-09-28 2019-09-26 Method and device for determining road gradient, storage medium, and computer device
US17/071,605 US11370445B2 (en) 2018-09-28 2020-10-15 Road gradient determining method and apparatus, storage medium, and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811143089.1A CN110161513B (zh) 2018-09-28 2018-09-28 估计道路坡度的方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN110161513A CN110161513A (zh) 2019-08-23
CN110161513B true CN110161513B (zh) 2023-11-14

Family

ID=67645089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811143089.1A Active CN110161513B (zh) 2018-09-28 2018-09-28 估计道路坡度的方法、装置、存储介质和计算机设备

Country Status (4)

Country Link
US (1) US11370445B2 (zh)
EP (1) EP3757613B1 (zh)
CN (1) CN110161513B (zh)
WO (1) WO2020063774A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110161513B (zh) 2018-09-28 2023-11-14 腾讯科技(北京)有限公司 估计道路坡度的方法、装置、存储介质和计算机设备
CN111998828B (zh) * 2020-09-23 2022-05-10 暨南大学 一种基于便携式gps的道路坡度估算方法
CN112215952B (zh) * 2020-10-26 2021-08-13 湖北亿咖通科技有限公司 曲线绘制方法、计算机存储介质及电子设备
CN112836576B (zh) * 2020-12-30 2021-09-24 北京理工大学 一种越野道路路面模型的快速分析方法
CN112862844B (zh) * 2021-02-20 2024-01-05 园测信息科技股份有限公司 基于车载点云数据的道路边界交互式提取方法
CN112884896A (zh) * 2021-02-23 2021-06-01 中国建筑第八工程局有限公司 基于bim技术的异形坡道三维模型快速生成方法
CN113340304B (zh) * 2021-06-03 2023-02-17 青岛慧拓智能机器有限公司 坡度提取方法及装置
CN114162126A (zh) * 2021-12-28 2022-03-11 上海洛轲智能科技有限公司 车辆控制方法、装置、设备、介质及产品
CN114985300B (zh) * 2022-04-27 2024-03-01 佛山科学技术学院 一种瓦楞纸板生产线出口纸板分类方法及系统
CN114969944B (zh) * 2022-06-17 2024-04-26 滁州学院 一种高精度道路dem构建方法
CN115035138B (zh) * 2022-08-10 2022-11-22 武汉御驾科技有限公司 基于众包数据的路面坡度提取方法
CN115423835B (zh) * 2022-11-02 2023-03-24 中汽创智科技有限公司 杆状物点云数据处理方法、装置、电子设备及存储介质
CN116047464B (zh) * 2023-01-28 2023-08-11 武汉理工大学 一种基于激光雷达的地下矿区坡度检测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001050743A (ja) * 1999-08-05 2001-02-23 Mitsubishi Motors Corp 道路勾配算出装置
GB0910730D0 (en) * 2009-06-22 2009-08-05 Bae Systems Plc Terrain sensing
CN102538754A (zh) * 2010-10-06 2012-07-04 罗伯特·博世有限公司 用于求出街道坡度信息的方法和设备
KR20130096012A (ko) * 2012-02-21 2013-08-29 현대엠엔소프트 주식회사 라이다 데이터를 이용한 도로의 곡선반경, 종단 및 횡단 경사도 산출 방법
CN103711050A (zh) * 2013-12-31 2014-04-09 中交第二公路勘察设计研究院有限公司 一种激光雷达道路改扩建勘测设计方法
CN104123730A (zh) * 2014-07-31 2014-10-29 武汉大学 基于道路特征的遥感影像与激光点云配准方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7007011B1 (en) * 2001-10-03 2006-02-28 Navteq North America, Llc Method for representing the vertical component of road geometry and computing grade or slope
CN101930623B (zh) * 2009-06-26 2012-12-12 比亚迪股份有限公司 一种三维道路模型化方法及装置
CN102201035B (zh) * 2011-05-12 2016-02-03 北京星河易达科技有限公司 一种计算前方道路弯度/坡度的预估方法
JP5088401B2 (ja) * 2010-06-23 2012-12-05 日本電気株式会社 道路構造測定方法および道路面測定装置
US8793035B2 (en) * 2012-08-31 2014-07-29 Ford Global Technologies, Llc Dynamic road gradient estimation
CN105444735A (zh) * 2014-08-22 2016-03-30 北京协进科技发展有限公司 一种道路坡度的确定方法及装置
CN105806347B (zh) * 2014-12-31 2018-10-12 易图通科技(北京)有限公司 一种坡度路段真三维导航方法及一种真三维导航设备
KR102521655B1 (ko) * 2016-09-01 2023-04-13 삼성전자주식회사 자율 주행 방법 및 장치
CN108267747B (zh) * 2017-01-03 2021-10-22 中交宇科(北京)空间信息技术有限公司 基于激光点云的道路特征提取方法和装置
US20190005667A1 (en) * 2017-07-24 2019-01-03 Muhammad Zain Khawaja Ground Surface Estimation
CN107560599B (zh) * 2017-09-04 2020-05-12 清华大学 一种基于特征点采样和曲线拟合的道路坡度数据处理方法
CN110161513B (zh) * 2018-09-28 2023-11-14 腾讯科技(北京)有限公司 估计道路坡度的方法、装置、存储介质和计算机设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001050743A (ja) * 1999-08-05 2001-02-23 Mitsubishi Motors Corp 道路勾配算出装置
GB0910730D0 (en) * 2009-06-22 2009-08-05 Bae Systems Plc Terrain sensing
CN102538754A (zh) * 2010-10-06 2012-07-04 罗伯特·博世有限公司 用于求出街道坡度信息的方法和设备
KR20130096012A (ko) * 2012-02-21 2013-08-29 현대엠엔소프트 주식회사 라이다 데이터를 이용한 도로의 곡선반경, 종단 및 횡단 경사도 산출 방법
CN103711050A (zh) * 2013-12-31 2014-04-09 中交第二公路勘察设计研究院有限公司 一种激光雷达道路改扩建勘测设计方法
CN104123730A (zh) * 2014-07-31 2014-10-29 武汉大学 基于道路特征的遥感影像与激光点云配准方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Road detection from airborne LiDAR point clouds adaptivefor variability of intensity data;Yong Li等;《Optik》;第126卷(第23期);42全文92–4298 *
基于机载激光点云数据的山区道路提取;何锐;何美章;杜志强;朱庆;;地理信息世界(第06期);全文 *
基于线特征的城区激光点云与影像自动配准;何培培;万幼川;杨威;秦家鑫;;光学学报(第05期);全文 *
基于车载激光扫描的城市道路提取方法;张达;李霖;李游;;测绘通报(第07期);全文 *

Also Published As

Publication number Publication date
WO2020063774A1 (zh) 2020-04-02
EP3757613B1 (en) 2023-07-19
EP3757613A1 (en) 2020-12-30
US11370445B2 (en) 2022-06-28
US20210024074A1 (en) 2021-01-28
EP3757613A4 (en) 2021-05-26
CN110161513A (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
CN110161513B (zh) 估计道路坡度的方法、装置、存储介质和计算机设备
CN102208013B (zh) 风景匹配参考数据生成系统和位置测量系统
Hashemi et al. A critical review of real-time map-matching algorithms: Current issues and future directions
CN111161353B (zh) 车辆定位方法、装置、可读存储介质和计算机设备
CN111429716A (zh) 用于确定自车的位置的方法
US11525682B2 (en) Host vehicle position estimation device
EP2956801B1 (en) Positioning in urban canyons
EP2372304A2 (en) Vehicle position recognition system
US10977816B2 (en) Image processing apparatus, image processing program, and driving assistance system
CN102208012A (zh) 风景匹配参考数据生成系统及位置测量系统
KR102441073B1 (ko) 자이로 센싱값 보상 장치, 그를 포함한 시스템 및 그 방법
KR101884018B1 (ko) 라이다 데이터를 이용한 도로의 곡선반경, 종단 및 횡단 경사도 산출 방법
CN112700479B (zh) 一种基于cnn点云目标检测的配准方法
US20220254062A1 (en) Method, device and storage medium for road slope predicating
CN111241224B (zh) 目标距离估计的方法、系统、计算机设备和存储介质
US11002552B2 (en) Map data generation system and method for generating map data
JP2019100924A (ja) 車両軌跡補正装置
US11908206B2 (en) Compensation for vertical road curvature in road geometry estimation
CN115366899B (zh) 一种基于北斗的远程车载路径识别系统
CN109522837B (zh) 一种路面检测方法及装置
Choi et al. Point Cloud-Based Lane Detection for Optimal Local Path Planning
Al-Assaad et al. Statistical modelling of digital elevation models for GNSS-based navigation
KR102568112B1 (ko) Rdp 알고리즘 기반의 도로 구배정보 모델링 장치 및 방법
CN114252081B (zh) 定位方法、装置、设备及存储介质
Zeng et al. The assessment of curved centerline generation in hdmaps based on point clouds

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