CN117539970B - 车道数据压缩方法、装置、计算机设备和存储介质 - Google Patents
车道数据压缩方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117539970B CN117539970B CN202410028440.1A CN202410028440A CN117539970B CN 117539970 B CN117539970 B CN 117539970B CN 202410028440 A CN202410028440 A CN 202410028440A CN 117539970 B CN117539970 B CN 117539970B
- Authority
- CN
- China
- Prior art keywords
- lane
- shape point
- curve
- edge
- point
- 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 56
- 238000013144 data compression Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 title claims abstract description 35
- 230000006870 function Effects 0.000 claims description 127
- 238000004590 computer program Methods 0.000 claims description 27
- 230000002441 reversible effect Effects 0.000 claims description 22
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000002829 reductive effect Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 238000005457 optimization Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000000670 limiting effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 239000002243 precursor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Abstract
本申请涉及一种车道数据压缩方法、装置、计算机设备和存储介质。该方法可应用于地图领域,可应用在车辆导航、人工智能、智慧交通、辅助驾驶、车载终端等各种场景,方法包括:获取目标车道的原始车道边线;获取目标函数和约束条件,目标函数用于指示原始车道边线与拟合曲线的差异的求解目标,约束条件用于指示拟合曲线的曲线控制点的控制变量的限制条件,目标函数包括控制变量,控制变量指示曲线控制点到原始车道边线的端点的距离情况,拟合曲线与原始车道边线具有共同的端点;根据原始车道边线以及约束条件对目标函数进行求解,得到拟合曲线的曲线控制点的控制参数;将目标车道与拟合曲线的曲线控制点的控制参数对应存储。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种车道数据压缩方法、装置、计算机设备和存储介质。
背景技术
地图应用可提供详尽的地图,用于道路导航。地图中的车道边线即车行道边缘线,是用来指示车道的边缘的线,车道边线的本质是一组有序的形状点,每个形状点通过一个坐标表示。由于道路上道路繁多、道路连接关系复杂,需要生成非常多的车道及其车道边线,导致数据量过大。
发明内容
基于此,有必要针对上述技术问题,提供一种车道数据压缩方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,能够显著降低车道边线数据量。
第一方面,本申请提供了一种车道数据压缩方法。所述方法包括:
获取目标车道的原始车道边线;
获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
第二方面,本申请还提供了一种车道数据压缩装置。所述装置包括:
获取模块,用于获取目标车道的原始车道边线;
建模模块,用于获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
求解模块,用于根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
存储模块,用于将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
在一些实施例中,所述建模模块,还用于基于所述原始车道边线的端点与所述拟合曲线的曲线控制点的控制变量,构建所述拟合曲线的待定曲线控制点;
获取所述原始车道边线的形状点在所述原始车道边线的相对位置;对于每个所述形状点,根据所述端点、所述待定曲线控制点与所述形状点对应的相对位置,确定与所述形状点对应的待定拟合形状点;根据各所述形状点与相应的所述待定拟合形状点的差异,构建目标函数。
在一些实施例中,所述目标车道的原始车道边线的起始形状点为第一车道边线的末尾形状点,所述目标车道的原始车道边线的末尾形状点为第二车道边线的起始形状点,所述目标车道的原始车道边线用于连接所述第一车道边线与所述第二车道边线;所述控制变量包括第一控制变量与第二控制变量;
所述建模模块,还用于从所述第一车道边线的末尾形状点出发,沿着所述第一车道边线的末尾形状点的切线方向延伸第一控制变量,得到所述拟合曲线的第一待定曲线控制点;从所述第二车道边线的起始形状点出发,沿着所述第二车道边线的起始形状点的反切线方向延伸第二控制变量,得到所述拟合曲线的第二待定曲线控制点。
在一些实施例中,所述第一车道边线的末尾形状点的切线方向,是所述第一车道边线的倒数第二个形状点指向所述第一车道边线的末尾形状点的方向;所述第二车道边线的起始形状点的反切线方向,是所述第二车道边线的第二个形状点指向所述第二车道边线的起始形状点的方向。
在一些实施例中,所述建模模块,还用于对于所述原始车道边线的每个形状点,计算所述形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离;将所述原始车道边线的末尾形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,作为所述原始车道边线的边线总长;对于所述原始车道边线的每个形状点,将相应边线距离与所述边线总长的比值,作为所述形状点对应所述原始车道边线的相对位置。
在一些实施例中,所述建模模块,还用于根据所述端点、所述待定曲线控制点生成拟合曲线的待定拟合曲线函数;对于每个所述形状点,将对应的相对位置代入所述待定拟合曲线函数,得到与所述形状点对应的待定拟合形状点。
在一些实施例中,所述建模模块,还用于计算各所述形状点与相应的所述待定拟合形状点之间的偏差;将每个形状点对应的偏差的平方进行求和,得到所述目标函数。
在一些实施例中,所述约束条件包括:
所述第一控制变量大于零且小于或等于第一阈值;所述第一阈值是所述原始车道边线的起始形状点沿着所述第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;
所述第二控制变量大于零且小于或等于第二阈值;所述第二阈值是所述原始车道边线的末尾形状点沿着所述第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;
所述目标交叉点,是所述第一车道边线的末尾形状点的切线方向与所述第二车道边线的起始形状点的反切线方向的交点。
在一些实施例中,所述存储模块,还用于将所述曲线控制点的控制参数,作为所述目标车道的车道边线生成参数;将所述目标车道与所述车道边线生成参数对应存储。
在一些实施例中,所述车道数据压缩装置还包括:
拟合边线生成模块,用于在需要生成所述目标车道的车道边线时,获取关于所述目标车道的拓扑关系数据,根据所述拓扑关系数据确定所述目标车道所连接的车道,根据所述所连接的车道确定所述目标车道的车道边线的两个端点;根据所述所连接的车道、所述两个端点与所述控制参数,确定曲线控制点;根据所述两个端点与所述曲线控制点,生成与所述目标车道的原始车道边线对应的拟合车道边线。
在一些实施例中,所述拟合边线生成模块,还用于获取预设的插值总数,根据所述插值总数确定多个有序的相对位置;根据所述两个端点与所述曲线控制点生成拟合曲线函数,所述拟合曲线函数是形状点随相对位置变化的函数;依次将所述多个有序的相对位置中的每个相对位置代入所述拟合曲线函数,得到多个有序的拟合形状点,所述多个有序的拟合形状点构成与所述目标车道的原始车道边线对应的拟合车道边线。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取目标车道的原始车道边线;
获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取目标车道的原始车道边线;
获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标车道的原始车道边线;
获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
上述车道数据压缩方法、装置、计算机设备、存储介质和计算机程序产品,获取目标车道的原始车道边线后,获取目标函数和约束条件,其中,该目标函数用于指示该原始车道边线与拟合曲线的差异的求解目标,该约束条件用于指示该拟合曲线的曲线控制点的控制变量的限制条件,该目标函数包括该控制变量,该控制变量指示该曲线控制点到该原始车道边线的端点的距离情况,该拟合曲线与该原始车道边线具有共同的端点;根据该原始车道边线以及该约束条件对该目标函数进行求解,得到该拟合曲线的曲线控制点的控制参数,将目标车道与拟合曲线的曲线控制点的控制参数对应存储。该方式中,通过使用拟合曲线来拟合目标车道的原始车道边线,这样只需要存储拟合曲线的曲线控制点的控制参数即可,实现了数据量从车道边线的数据量级别“压缩”至控制参数的数据量级别,显著降低关于目标车道的车道边线的数据量。
附图说明
图1为一个实施例中路口处车道的示意图;
图2为一个实施例中路口处虚拟车道的示意图;
图3为一个实施例中车道数据压缩方法的应用环境图;
图4为一个实施例中车道数据压缩方法的流程示意图;
图5为一个实施例中原始车道边线对应的拟合曲线的示意图;
图6为一个实施例中获取目标函数的流程示意图;
图7为一个实施例中目标交叉点的示意图;
图8为一个实施例中基于控制参数生成拟合车道边线的流程示意图;
图9为一个实施例中车道数据压缩装置的结构框图;
图10为另一个实施例中车道数据压缩装置的结构框图;
图11为一个实施例中计算机设备的内部结构图;
图12为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的车道数据压缩方法,可以应用于高精度虚拟地图、普通精度地图、城市道路模型等各种虚拟地图产品中,可以用于可视化呈现导流岛的道路区域。该车道数据压缩方法,可以理解为是对地图原始数据的编译的过程,即,作为一个承上启下的环节,对原始地图数据(如目标车道的原始车道边线)进行加工、处理,生成更紧凑、更易于使用的文件或数据。编译得到的数据可以提供给上层(如地图导航、定位技术、地图渲染等)调用。示例性的,对目标车道的原始车道边线进行曲线拟合,得到对应的拟合曲线的控制参数,该控制参数与目标车道的端点用于生成与该原始车道边线对应的拟合车道边线,该拟合车道边线可以为导航引擎增强路口处车道的可视化效果,并且还可以为自动驾驶在路口处决策的情况下,或者使用电子地图进行行驶决策时的对象,如驾驶员等提供数据支持,减少车道级路线导航出错,提升自动驾驶的安全性。
本申请提供的车道数据压缩方法,至少涉及以下的智能交通系统、云计算、计算机视觉技术等技术。示例性的,可以通过电子地图中的地图路网数据,生成目标车道的原始道路边线,再利用原始道路边线确定对应的拟合曲线的控制参数,将目标车道与该控制参数对应存储,实现对车道边线数据的压缩,后续在需要获取目标车道的车道边线时,不需要获取原始车道边线,只需要根据该控制参数可以生成拟合曲线,对拟合曲线进行插值可以生成原始道路边线对应的拟合道路边线。
需要获取到目标车道的车道边线的应用场景有很多。例如,电子地图应用在渲染显示目标车道的车道边线时,可以获取对应的控制参数,根据该控制参数可以生成拟合曲线,对拟合曲线进行插值可以生成原始道路边线对应的拟合道路边线。又例如,在电子地图应用在进行路线规划时,也会需要获取到目标车道的车道边线,此时就可以获取对应的控制参数,根据该控制参数可以生成拟合曲线,对拟合曲线进行插值可以生成原始道路边线对应的拟合道路边线。又例如,在计算机设备基于目标车道的车道边线产出其它地图元素的形状点数据时,就可以获取对应的控制参数,根据该控制参数可以生成拟合曲线,对拟合曲线进行插值可以生成原始道路边线对应的拟合道路边线。在一些示例中,也可以利用智能交通系统,以基于目标车道的位置信息、轮廓等为驾驶员等驾驶对象提供智能导航路线服务。或者,终端设备也可以利用计算机视觉技术等,以在导航应用页面或者地图页面中更加真实、清晰的展示导流岛对应的高精度三维图像。
智能交通系统(intelligent traffic system,ITS)又称智能运输系统(Intelligent Transportation System),是将先进的科学技术(信息技术、计算机技术、数据通信技术、传感器技术、电子控制技术、自动控制理论、运筹学、人工智能等)有效地综合运用于交通运输、服务控制和车辆制造,加强车辆、道路、使用者三者之间的联系,从而形成一种保障安全、提高效率、改善环境、节约能源的综合运输系统。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。其中,智慧交通、车联网、自动驾驶、无人驾驶等技术通常包括高精地图、环境感知、行为决策、路径规划、运动控制等技术,目前有着广泛的应用前景。
计算机视觉技术(computer vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、踪迹追溯和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
电子地图应用可提供详尽的地图,用于道路导航。本申请实施例所提及的车道,可以是表示实际道路上存在的车道的数据对象,也可以是基于已有的、表示实际道路的车道数据通过算法生成的、表示虚拟车道的数据对象,也就是说,虚拟车道是基于既有数据进行数据编译得到的产物。表示车道的数据对象至少包括表示车道边线的一组有序的形状点,车道可以有多条车道边线,每条车道边线均通过一组有序的形状点来表示,车道边线可以是车道中间线、车道左右两侧的侧边线。
举例来说明虚拟车道:实际道路上,可能存在缺少车道边线的情况,例如,如图1所示,路口内前驱车道与后继车道(实际道路上存在的车道对应的数据对象)之间的路口内大多数情况下,是不存在车道以及相应的车道边线的,导致前驱车道与后继车道之间的拓扑关系是断裂的,从而容易造成导航出现错误。
为此,相关技术提出了在上述车道之间生成虚拟车道及其车道边线的方式,以达到车道拓扑连通的目的,从而减少导航出错。如图2所示,在电子地图上,前驱车道与后继车道之间通过虚拟车道连通起来,虚拟车道的车道边线,可以是虚拟车道的车道中间线、车道左右两侧的侧边线。
但是,由于路口内道路连接关系复杂,就需要生成非常多的虚拟车道及其车道边线,例如,对于一个十字路口而言,可能就需要生成8条虚拟车道,每个虚拟车道又有多条车道边线,每条车道边线是一组有序的形状点。再加上实际道路上路口数量众多,导致生成的虚拟车道的数量过多,那么关于车道边线的数据量是庞大的。
也就是说,不管是表示实际道路上存在的车道的数据对象,还是表示虚拟车道的数据对象,不仅数据对象的数量多,每个数据对象包括的形状点也非常多。在需要用到这些表示车道的数据对象时,如果这些车道数据是存储在本地,就会占用大量的存储空间,如果这些车道数据是从服务器拉取,就会大大增加用户的流量消耗,而且这些数据存储在服务器也会占用大量的存储空间。
为了解决上述数据量过大的问题,本申请实施例中,用拟合曲线来拟合目标车道的原始车道边线,存储该拟合曲线的控制参数,电子地图应用只需要获取或存储该拟合曲线的控制参数,电子地图应用在显示地图或进行导航路线规划时,根据该控制参数就可以生成与原始车道边线对应的拟合车道边线,不需要存储或从地图服务器获取目标车道的原始车道边线数据,可以在不明显降低目标车道的车道边线的平滑效果的同时,显著降低所需存储或获取的数据量,即从原始车道边线的数据量“压缩”至控制参数的数据量。数据量的减少,在不同应用场景下可以带来不同的有益效果,包括但不限于节省存储空间、减少流量消耗、减少传输数据量,等等。
本申请实施例提供的车道数据压缩方法,可以应用于如图3所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据,例如车道路网数据,包括生成的目标车道的原始车道边线数据,目标车道的拓扑关系数据,等等。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。
在一个实施例中,可以由服务器执行车道数据压缩方法。服务器104可以获取目标车道的原始车道边线;获取目标函数和约束条件,其中,目标函数用于指示原始车道边线与拟合曲线的差异的求解目标,约束条件用于指示拟合曲线的曲线控制点的控制变量的限制条件,目标函数包括控制变量,控制变量指示曲线控制点到原始车道边线的端点的距离情况,拟合曲线与原始车道边线具有共同的端点;根据原始车道边线以及约束条件对目标函数进行求解,得到拟合曲线的曲线控制点的控制参数,服务器可以将该控制参数与目标车道对应存储。可选地,在终端102上的电子地图应用需要获取目标车道的车道边线时,服务器104可以将该控制参数发送至终端102,终端102可以根据控制参数与目标车道的原始车道边线的端点,生成与原始车道边线对应的拟合车道边线。
在一个实施例中,可以由终端102在离线的情况下执行车道数据压缩方法,终端102通过该方法得到拟合曲线的曲线控制点的控制参数之后,将该控制参数与目标车道对应存储在终端本地。在终端102上的电子地图应用需要使用目标车道的车道边线时,就可以根据控制参数与目标车道的原始车道边线的端点,生成与原始车道边线对应的拟合车道边线,而不需要从服务器去拉取目标车道的原始车道边线数据。
举例来说,目标车道的原始车道边线是一组有序的形状点,即点串,假设其包括200个形状点,按照原来的方式,倘若电子地图应用需要使用目标车道的车道边线,就需要在本地存储如此大的数据量(200个形状点的坐标数据)或是从服务器获取如此大的数据量,从服务器拉取将会耗费用户的大量数据流量。本申请实施例,离线时对该原始车道边线进行拟合,确定原始车道边线对应的拟合曲线的控制参数,该控制参数通常是该拟合曲线的曲线控制点的坐标,在本实施例提供的应用场景下,曲线控制点的数量通常只有几个,比如为2个,则电子地图应用只需要在本地存储少量的该控制参数,或是从服务器拉取目标车道对应的拟合曲线的控制参数,就可以根据原始车道边线的端点和该控制参数生成该原始车道边线对应的拟合车道边线。也就是说,通过拟合得到并存储个别数据即控制参数,实现了数据量的压缩,通过该控制参数生成大量数据即目标车道的车道边线,避免在本地存储如此大的数据量或是从服务器获取如此大的数据量。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等,智能车载设备可以车载导航终端和车载电脑等,便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(contentdelivery network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。
本申请实施例中,通过算法拟合目标车道的原始车道边线,仅存储拟合曲线的控制参数,实现了数据量的压缩,在电子地图应用上根据控制参数可确定拟合曲线的曲线控制点,根据曲线控制点与原始车道边线的端点可以确定该拟合曲线,对该拟合曲线进行采样(插值)可以生成原始车道边线对应的拟合车道边线。
拟合原始车道边线的拟合曲线可以是2阶贝塞尔曲线、3阶贝塞尔曲线或是4阶贝塞尔曲线。可以理解,本实施例中,拟合曲线与原始车道边线具有共同的端点,若是2阶贝塞尔曲线,则只需要再确定1个曲线控制点,即可确定该拟合曲线,即控制参数为1个,控制参数可以是该1个曲线控制点的坐标,针对该坐标可以构建一个最优化模型用于描述原始车道边线和拟合曲线的形状偏差,求解这个最优化模型,即可得到最优的该1个曲线控制点的坐标。若是3阶贝塞尔曲线,则只需要再确定2个曲线控制点,即可确定该拟合曲线,即控制参数为2个,控制参数可以用于确定该2个曲线控制点的坐标,针对该2个坐标可以构建一个最优化模型用于描述原始车道边线和拟合曲线的形状偏差,求解这个最优化模型,即可得到最优的该2个曲线控制点的坐标。若是4阶贝塞尔曲线,则只需要再确定3个曲线控制点,即可确定该拟合曲线,即控制参数为3个,控制参数可以用于确定该3个曲线控制点的坐标。
综合考虑拟合曲线的平滑效果、拟合效果与最优化模型构建的复杂度,拟合曲线采用3阶贝塞尔曲线更优。本申请实施例主要以拟合曲线为3阶贝塞尔曲线为例进行说明,即拟合曲线的曲线控制点为2个。需要说明的是,通过其它阶数的贝塞尔曲线来拟合目标车道的原始车道边线以得到控制参数,用于生成对应的拟合车道曲线的方式,也属于本申请的保护范围。
在一个实施例中,如图4所示,提供了一种车道数据压缩方法,以该方法应用于图3中的计算机设备(终端102或服务器104)为例进行说明,包括以下步骤:
步骤402,获取目标车道的原始车道边线。
对于现实场景中道路上的元素,在地图路网数据中都有对应的数据来表示。车道边线的本质是一组有序的形状点,车道边线可以是车道的侧边线,如车道左边线或车道右边线,车道边线还可以是车道的车道中间线。对于实际存在的车道或是生成的目标车道,其存在对应的车道边线,本申请实施例中称为原始车道边线。对于一个目标车道而言,其可能存在一侧边线、双侧边线甚至还存在车道中间线,因此存在一组、两组甚至三组对应的原始车道边线。计算机设备可以从地图路网数据中获取目标车道的原始车道边线,即一组有序的形状点,每个形状点通过坐标表示。关于目标车道的原始车道边线的生成方式,本申请实施例对此不作限制。
目标车道具有两个端点,相应地,每条原始车道边线也具有两个端点,目标车道具有车道方向,相应地,每条原始车道边线也具有方向,边线方向是从起始端点沿着边线到结束端点的方向。计算机设备还可以从地图路网数据中获取目标车道的拓扑关系数据,根据该拓扑关系数据获取该目标车道所连接的两条车道,获取该所连接的两条车道的车道数据,包括但不限制于该目标车道所连接的第一车道与第二车道的车道边线。
参照图2,计算机设备可以根据地图路网数据获取虚拟车道的原始车道边线,还可以根据地图路网数据确定虚拟车道所连接的前驱车道和后继车道,获取虚拟车道的原始车道边线所连接的第一车道边线与第二车道边线。参照图2,位于虚拟车道左侧的原始车道边线AB连接了位于第一车道左侧的第一车道边线CA和位于第二车道左侧的第二车道边线BD。位于虚拟车道右侧的原始车道边线EF连接了位于第一车道右侧的第一车道边线ME和位于第二车道右侧的第二车道边线FN。
本申请实施例中,对于目标车道的每条原始车道边线,均可以通过本申请实施例提供的方法来确定对应的拟合曲线的曲线控制点的控制参数,用于生成对应的拟合车道边线。
步骤404,获取目标函数和约束条件,其中,目标函数用于指示原始车道边线与拟合曲线的差异的求解目标,约束条件用于指示拟合曲线的曲线控制点的控制变量的限制条件,目标函数包括控制变量,控制变量指示曲线控制点到原始车道边线的端点的距离情况,拟合曲线与原始车道边线具有共同的端点。
其中,目标函数是用于求解原始车道边线的拟合曲线的函数,约束条件是目标函数所包括的变量的限制条件,本申请实施例中是指拟合曲线的曲线控制点的控制变量的限制条件。目标函数根据原始车道边线与拟合曲线之间的差异构建而成。
参照图5,以原始车道边线为位于目标车道左侧的原始车道边线P1Pn为例,在拟合该原始车道边线P1Pn时,拟合曲线应当与该原始车道边线P1Pn具有共同的端点P1、Pn,即拟合曲线的端点、方向应与原始车道边线P1Pn一致。基于前文的说明,在已知两个端点的前提下,还需要确定至少一个曲线控制点,该拟合曲线才得以确定。参照图5,本申请实施例主要以,在已知两个端点P1、Pn的前提下,再确定两个曲线控制点P11、Pnn来确定拟合曲线为例进行说明,依据是3阶贝塞尔曲线的曲线函数,3阶贝塞尔曲线上各点的坐标可通过如下公式表达:
,其中t表示各点在曲线上的相对位置。
本申请实施例中,为了拟合目标车道的原始车道边线,通过构建一个最优化模型用于描述原始车道边线和拟合曲线的形状偏差,求解这个最优化模型,即可得到拟合曲线的控制参数,即拟合曲线的曲线控制点的参数。具体地,计算机设备确定关于曲线控制点的控制变量,并确定该控制变量的约束条件,根据该控制变量构造拟合曲线的曲线控制点,根据曲线控制点和端点,构造出待定的拟合曲线,基于该待定的拟合曲线与原始车道边线的差异,构建目标函数。目标函数在上述约束条件的限制下,可取得局部最优解。
步骤406,根据原始车道边线以及约束条件对目标函数进行求解,得到拟合曲线的曲线控制点的控制参数;
步骤408,将目标车道与拟合曲线的曲线控制点的控制参数对应存储。
根据原始车道边线所包括的每个形状点,可以通过上述控制变量表示出每个形状点对应的拟合形状点,从而将目标函数转化为上述控制变量的函数,在控制变量具有上述约束条件的前提下,对该目标函数进行求解,可以找出最优的控制变量的取值,即拟合曲线的曲线控制点的控制参数。计算机设备将目标车道与拟合曲线的曲线控制点的控制参数对应存储,该控制参数与原始车道边线的端点,可共同用于生成原始车道边线的拟合车道边线,避免了直接存储原始车道边线导致数据量过大的问题。
上述车道数据压缩方法中,获取目标车道的原始车道边线后,获取目标函数和约束条件,其中,该目标函数用于指示该原始车道边线与拟合曲线的差异的求解目标,该约束条件用于指示该拟合曲线的曲线控制点的控制变量的限制条件,该目标函数包括该控制变量,该控制变量指示该曲线控制点到该原始车道边线的端点的距离情况,该拟合曲线与该原始车道边线具有共同的端点;根据该原始车道边线以及该约束条件对该目标函数进行求解,得到该拟合曲线的曲线控制点的控制参数,将目标车道与拟合曲线的曲线控制点的控制参数对应存储。该方式中,通过使用拟合曲线来拟合目标车道的原始车道边线,这样只需要存储拟合曲线的曲线控制点的控制参数即可,实现了数据量从车道边线的数据量级别“压缩”至控制参数的数据量级别,显著降低显示目标车道的车道边线所需处理的数据量。
在一个实施例中,如图6所示,获取目标函数,包括如下步骤602至步骤608:
步骤602,基于原始车道边线的端点与拟合曲线的曲线控制点的控制变量,构建拟合曲线的待定曲线控制点。
在一个实施例中,目标车道的原始车道边线的起始形状点为第一车道边线的末尾形状点,目标车道的原始车道边线的末尾形状点为第二车道边线的起始形状点,目标车道的原始车道边线用于连接第一车道边线与第二车道边线;控制变量包括第一控制变量与第二控制变量。拟合曲线为3阶贝塞尔曲线。
参照图5,第一车道边线的末尾形状点为P1,第二车道边线的起始形状点为Pn,目标车道的原始车道边线用于连接第一车道边线与第二车道边线,该原始车道边线的起始形状点即为P1,原始车道边线的末尾形状点即为Pn,即目标车道的原始车道边线的两个端点为P1与Pn。
可选地,参照图6,基于原始车道边线的端点与拟合曲线的曲线控制点的控制变量,构建拟合曲线的待定曲线控制点,包括:
步骤602a,从第一车道边线的末尾形状点出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制变量,得到拟合曲线的第一待定曲线控制点;
步骤602b,从第二车道边线的起始形状点出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制变量,得到拟合曲线的第二待定曲线控制点。
其中,第一车道边线的末尾形状点的切线方向,是第一车道边线的倒数第二个形状点指向第一车道边线的末尾形状点的方向,计算机设备可以根据第一车道边线的倒数第二个形状点的坐标Ps与第一车道边线的末尾形状点P1的坐标,确定Ps指向P1的一个单位向量,作为第一车道边线的末尾形状点的切线方向。第二车道边线的起始形状点的反切线方向,是第二车道边线的第二个形状点指向第二车道边线的起始形状点的方向,计算机设备可以根据第二车道边线的第二个形状点的坐标Pt与第二车道边线的起始形状点Pn的坐标,确定Pt指向Pn的一个单位向量,作为第二车道边线的起始形状点的反切线方向。
具体地,从第一车道边线的末尾形状点出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制变量,得到拟合曲线的第一待定曲线控制点,使得第一待定曲线控制点位于第一车道边线的末尾形状点的切线方向的延长线上;从第二车道边线的起始形状点出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制变量,得到拟合曲线的第二待定曲线控制点,使得第二待定曲线控制点位于第二车道边线的起始形状点的反切线方向的延长线上。这样,生成的拟合曲线与第一车道边线、第二车道边线平滑(相切)连接,从而使得最终生成的拟合车道边线与原始车道边线的形状不会差异过大,保证了拟合效果。
如图5所示,从第一车道边线的末尾形状点P1出发,沿着第一车道边线的末尾形状点的切线方向延伸距离d1,得到拟合曲线的第一待定曲线控制点P11,延伸的距离记为第一控制变量d1,其坐标可通过如下公式表示:
;
从第二车道边线的起始形状点Pn出发,沿着第二车道边线的起始形状点的反切线方向延伸距离d2,得到拟合曲线的第二待定曲线控制点Pnn,延伸的距离记为第二控制变量d2,其坐标可通过如下公式表示:
。
也就是说,在原始车道边线端点P1、以及P1所在的切线方向已知的前提下,曲线控制点P11取决于第一控制变量d1,以及,在原始车道边线端点Pn、以及Pn所在的反切线方向已知的前提下,曲线控制点Pnn取决于第二控制变量d2。从而,得到拟合曲线上任意一点的坐标可通过如下公式表示:
。
上式中,t为任意一点在曲线上的相对位置,取值范围是[0,1],因此上式中仅第一控制变量d1、第二控制变量d2为变量,其余参数均为常数。
基于此,目标函数可以被转化成为上述控制变量的函数。
步骤604,获取原始车道边线的形状点在原始车道边线的相对位置。
为了使拟合曲线能够拟合出原始车道边线的形状,计算机设备还获取原始车道边线的每个形状点在原始车道边线上的相对位置,即每个点对应的t的取值。
在一个实施例中,获取原始车道边线的每个形状点对应原始车道边线的相对位置,包括:
步骤604a,对于原始车道边线的每个形状点,计算形状点沿着原始车道边线到原始车道边线的起始形状点的边线距离;
步骤604b,将原始车道边线的末尾形状点沿着原始车道边线到原始车道边线的起始形状点的边线距离,作为原始车道边线的边线总长;
步骤604c,对于原始车道边线的每个形状点,将相应边线距离与边线总长的比值,作为形状点对应原始车道边线的相对位置。
假设,原始车道边线上有n个形状点,原始车道边线与拟合曲线具有共同的两个端点,因此原始车道边线上的首个形状点即为拟合曲线的起点P1,原始车道边线上的末尾形状点即为拟合曲线的终点Pn。对于原始车道边线的每个形状点Pi,i取值是1到n,计算机设备可以计算形状点Pi沿着原始车道边线到原始车道边线的起始形状点P1的边线距离ri,边线距离ri可以按照如下公式计算:
;
当i取值为n时,对应的形状点为末尾形状点Pn,对于原始车道边线的末尾形状点Pn,沿着原始车道边线到原始车道边线的起始形状点P1的边线距离rn,即为原始车道边线的边线总长,边线总长记为L:
;
倘若用拟合曲线来拟合该原始车道边线,则对于原始车道边线的每个形状点,将相应边线距离与边线总长的比值,作为形状点对应原始车道边线的相对位置,相对位置ti可以按照如下公式计算:
步骤606,对于每个形状点,根据端点、待定曲线控制点与形状点对应的相对位置,确定与形状点对应的待定拟合形状点。
在一个实施例中,对于每个形状点,根据端点、待定曲线控制点与形状点对应的相对位置,确定与形状点对应的待定拟合形状点,包括:根据端点、待定曲线控制点生成拟合曲线的待定拟合曲线函数;对于每个形状点,将对应的相对位置代入待定拟合曲线函数,得到与形状点对应的待定拟合形状点。
基于前面的说明,根据上述的两个端点、待定曲线控制点,可以得到拟合曲线的待定拟合曲线函数为:
对于原始车道边线上的每个形状点Pi,将对应的相对位置代入待定拟合曲线函数,得到其对应的待定拟合形状点pi的坐标可通过如下公式表示:
。
步骤608,根据各形状点与相应的待定拟合形状点的差异,构建目标函数。
计算机设备根据原始车道边线上各形状点与相应的待定拟合形状点之间的差异,构建目标函数。
在一个实施例中,根据各形状点与相应的待定拟合形状点的差异,构建目标函数,包括:计算各形状点与相应的待定拟合形状点之间的偏差;将每个形状点对应的偏差的平方进行求和,得到目标函数。
具体地,根据上述对应的待定拟合形状点pi的坐标,可以得到其对应的坐标分量:
;
;
其中,是切线方向的横坐标分量,是切线方向的纵坐标分量,是反切线方向的横坐标分量,是反切线方向的纵坐标分量,
原始车道边线上一个形状点与相应的待定拟合形状点的偏差,可通过如下公式表示:
;
对于原始车道边线上所有形状点,确定原始车道边线与拟合曲线之间的差异,可通过如下公式表示:
;
本申请实施例中,建模目标是原始车道边线与拟合曲线之间的差异尽可能小,因此建立的目标函数为:在控制变量对应的约束条件下,取f的最小值。
在一个实施例中,约束条件包括:
第一控制变量大于零且小于或等于第一阈值;第一阈值是原始车道边线的起始形状点沿着第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;第二控制变量大于零且小于或等于第二阈值;第二阈值是原始车道边线的末尾形状点沿着第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;目标交叉点,是第一车道边线的末尾形状点的切线方向与第二车道边线的起始形状点的反切线方向的交点。
也即是说,第一控制变量d1应当小于或等于第一阈值,第二控制变量d2应当小于或等于第二阈值,基于此,建立的优化模型如下:
min f ;
s.t. 0≤d1≤D1, 0≤d2≤D2.
求解d1和d2。
上述优化模型中,D1即第一阈值,D2即第二阈值。
本实施例中,为了保证生成的拟合曲线不出现飞线的异常情况,保证拟合车道边线的平滑效果,针对第一控制变量与第二控制变量设定了最大取值。如图7所示,为一个实施例中目标交叉点的示意图,参照图7,目标交叉点是第一车道边线的末尾形状点P1的切线方向与第二车道边线的起始形状点Pn的反切线方向的交点P。对于以P1、Pn为两个端点的拟合曲线,其上所有拟合形状点到P1Pn连线的最远距离,应当小于该交点P到该P1Pn连线的距离,因此该拟合曲线的曲线控制点P11应当在P1、P的连线上,该拟合曲线的曲线控制点Pnn应当在Pn、P之间的连线上,也即,D1=|PP1|,D2=|PPn|。
参照图7,设为从P1指向Pn的单位向量,即:
;
计算与第一车道边线的末尾形状点P1的切线方向之间的夹角α1,计算-与第二车道边线的起始形状点Pn的反切线方向之间的夹角αn:
;
;
连线P1P与连线PnP之间的夹角记为α1n,
。
根据正弦定理:
;
;
从而求得第一阈值D1与第二阈值D2,即:
;
;
其中,|可由端点P1与端点Pn的坐标计算得到,是已知量。
根据上述目标函数f分别求解针对第一控制变量d1与第二控制变量d2的一阶偏导与二阶偏导,根据偏导在上述的约束条件下,可以找到目标函数的局部最优解,比如当f取得局部最小值f_min时d1、d2的取值就记为两个曲线控制点的控制参数。具体推导过程如下:
推导目标函数对每个控制变量的偏导数,即一阶偏导:
;
目标函数的梯度矩阵为:
;
目标函数对每个控制变量二阶偏导为:
由于和是单位向量,则有:
;
;
;
因此,
求得目标函数的海森矩阵(Hessian Matrix)为:
其中,是切线方向的横坐标分量,是切线方向的纵坐标分量,是反切线方向的横坐标分量,是反切线方向的纵坐标分量,d1x是d1的横坐标分量,d1y是d1的纵坐标分量,d2x是d2的横坐标分量,d2y是d2的纵坐标分量。通过对该矩阵进行特征值分析,可以找到目标函数f的局部最优解,比如局部最小值f_min,以及对应的d1、d2的取值。
在一个实施例中,将目标车道与拟合曲线的曲线控制点的控制参数对应存储,包括:将曲线控制点的控制参数,作为目标车道的车道边线生成参数;将目标车道与车道边线生成参数对应存储。
具体地,在求解出曲线控制点的控制参数后,由于该曲线控制点是目标车道的原始车道边线的拟合曲线的曲线控制点,计算机设备可以将该控制参数作为目标车道的车道边线生成参数,并将该目标车道与该车道边线生成参数对应存储。
可选地,对于存在多条原始车道边线的目标车道,计算机设备可以分别对这些原始车道边线进行曲线拟合,生成对应的车厢边线生成参数。例如,计算机设备分别对目标车道的车道中间线、车道左右两侧的车道边线进行曲线拟合,每条车道线均可以生成对应的曲线控制点的两个控制参数,并记录为中间车道边线生成参数med_d1、med_d2,左侧车道边线生成参数left_d1、left_d2,右侧车道边线生成参数right_d1、right_d2。
可选地,控制参数的单位是米,如果将控制参数存储为双精度的浮点数,那么每个控制参数需要64位的存储空间。为了进一步减少数据量,节省存储空间,可以将每个控制参数按照厘米进行存放,即保存控制参数放大100倍后取整的结果,在计算机设备需要使用控制参数生成拟合车道边线时,只需要将读取的控制参数除以100即可。根据经验,控制参数的取值小于150米,即15000厘米,那么存放时可以按14位整数进行存放,而不需要按双精度的浮点数(64位)进行存放,可以节省大量存储空间。例如,一个目标车道有中间车道线、双侧车道边线,每条车道边线有2个控制参数,那么一个目标车道就对应了6个控制参数,一共需要6*14=84位的存储空间。若用双精度浮点数进行存放,则需要6*64=384位的存储空间,数据量可减低78.1%。
如图8所示,在一个实施例中,方法还包括基于控制参数生成拟合车道边线的步骤,具体包括:
步骤802,在需要生成目标车道的车道边线时,获取关于目标车道的拓扑关系数据,根据拓扑关系数据确定目标车道所连接的车道,根据所连接的车道确定目标车道的车道边线的两个端点;
其中,拓扑关系数据指示了目标车道所连接车道的车道标识,根据该车道标识可以确定目标车道所连接的车道,查询该所连接的车道的车道边线数据,可以确定目标车道的车道边线的两个端点。例如,目标车道T2连接的车道是车道T1和车道T3,车道方向是从车道T1驶向车道T3,目标车道T2的车道线的两个端点分别来自于车道T1和车道T3。例如,目标车道的中间车道线的两个端点分别是车道T1的中间车道线的末尾形状点和车道T3的中间车道线的起始形状点。又例如,目标车道的左侧车道边线的两个端点分别是车道T1的左侧车道边线的末尾形状点和车道T3的左侧车道边线的起始形状点。又例如,目标车道的右侧车道边线的两个端点分别是车道T1的右侧车道边线的末尾形状点和车道T3的右侧车道边线的起始形状点。
步骤804,根据所连接的车道、两个端点与控制参数,确定曲线控制点。
根据所连接的车道的车道边线的形状点,计算机设备可以确定所连接的车道边线分别在两个端点处的切线方向。例如,假设所连接的车道为第一车道和第二车道,且方向是第一车道经由目标车道驶向第二车道,上述的控制参数包括第一控制参数与第二控制参数,则计算机设备可以从第一车道边线的末尾形状点出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制参数,得到拟合曲线的第一曲线控制点;从第二车道边线的起始形状点出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制参数,得到拟合曲线的第二曲线控制点。
其中,上述第一车道边线的末尾形状点的切线方向,是第一车道边线的倒数第二个形状点指向第一车道边线的末尾形状点的方向,第二车道边线的起始形状点的反切线方向,是第二车道边线的第二个形状点指向第二车道边线的起始形状点的方向。
在上面的例子中,目标车道的右侧车道边线的两个端点分别是车道T1的右侧车道边线(即上述的第一车道边线)的末尾形状点P1和车道T3的右侧车道边线(即上述的第二车道边线)的起始形状点Pn。计算机设备可以根据车道T1的右侧车道边线的末尾形状点P1、倒数第二个形状点Ps,确定车道T1的右侧车道边线的末尾形状点处的切线方向,即根据该倒数第二个形状点的坐标Ps与末尾形状点P1的坐标,确定Ps指向P1的一个单位向量,作为车道T1的右侧车道边线的末尾形状点的切线方向。计算机设备可以根据车道T3的右侧车道边线的起始形状点Pn、第二个形状点Pt,确定车道T3的右侧车道边线的起始形状点处的反切线方向,即根据该第二个形状点的坐标Pt与起始形状点Pn的坐标,确定Pt指向Pn的一个单位向量,作为车道T3的右侧车道边线的起始形状点的反切线方向。
计算机设备可以从第一车道边线的末尾形状点P1出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制参数d1,得到拟合曲线的第一曲线控制点P11,使得第一曲线控制点位于第一车道边线的末尾形状点的切线方向的延长线上;从第二车道边线的起始形状点Pn出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制参数,得到拟合曲线的第二曲线控制点Pnn,使得第二曲线控制点位于第二车道边线的起始形状点的反切线方向的延长线上。这样,生成的拟合曲线与第一车道边线、第二车道边线平滑(相切)连接,从而使得最终生成的拟合车道边线与原始车道边线的形状不会差异过大,保证了拟合效果。
在从第一车道边线的末尾形状点P1出发,沿着第一车道边线的末尾形状点的切线方向延伸距离d1,得到拟合曲线的第一曲线控制点P11,其坐标可通过如下公式表示:
;
从第二车道边线的起始形状点Pn出发,沿着第一车道边线的起始形状点的反切线方向延伸距离d2,得到拟合曲线的第二曲线控制点Pnn,其坐标可通过如下公式表示:
。
步骤806,根据两个端点与曲线控制点,生成与目标车道的原始车道边线对应的拟合车道边线。
计算机设备可以对该拟合曲线进行插值,得到多个有序的拟合形状点,该多个有序的拟合形状点,可作为原始车道边线对应的拟合车道边线。
可选地,如图8所示,在一个实施例中,根据两个端点与曲线控制点,生成与目标车道的原始车道边线对应的拟合车道边线,包括:
步骤806a,获取预设的插值总数,根据插值总数确定多个有序的相对位置。
具体地,假设需要在两个端点之间插值m个点,则每个点(包括两个端点和插值的m个点)在拟合曲线上的相对位置即t的取值依次为0,1/(m+1),2/(m+1),3/(m+1),……,m/(m+1),1。
步骤806b,根据两个端点与曲线控制点生成拟合曲线函数,拟合曲线函数是形状点随相对位置变化的函数。
生成目标车道的原始车道边线的拟合曲线,拟合曲线上任意一点的坐标可通过如下公式表示:
。
步骤806c,依次将多个有序的相对位置中的每个相对位置代入拟合曲线函数,得到多个有序的拟合形状点,多个有序的拟合形状点构成与目标车道的原始车道边线对应的拟合车道边线。
任意一个拟合形状点的坐标为:
;
其中,ti的取值依次为0,1/(m+1),2/(m+1),3/(m+1),……,m/(m+1),1。
本实施例中,通过读取目标车道对应的控制参数,生成目标车道的原始车道边线对应的拟合曲线,对拟合曲线进行插值可得到原始车道边线对应的拟合车道边线,在不显著降低车道边线的平滑效果的同时,又能够减少读取的数据量,同时能够还原出车道边线。
需要说明的是,在一些实施例中,可以由服务器来执行基于地图路网数据和目标车道的原始车道边线求解拟合曲线的控制参数的步骤,然后由客户端来执行基于控制参数生成拟合车道边线的步骤。在一些实施例中,两者可由同一个计算机设备执行。
在一个具体的实施例中,车道数据压缩方法包括如下步骤:
获取目标车道的原始车道边线;目标车道的原始车道边线用于连接第一车道边线与第二车道边线;目标车道的原始车道边线的起始形状点为第一车道边线的末尾形状点,目标车道的原始车道边线的末尾形状点为第二车道边线的起始形状点;
从第一车道边线的末尾形状点出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制变量,得到拟合曲线的第一待定曲线控制点;其中,第一车道边线的末尾形状点的切线方向,是第一车道边线的倒数第二个形状点指向第一车道边线的末尾形状点的方向;
从第二车道边线的起始形状点出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制变量,得到拟合曲线的第二待定曲线控制点;其中,第二车道边线的起始形状点的反切线方向,是第二车道边线的第二个形状点指向第二车道边线的起始形状点的方向;
对于原始车道边线的每个形状点,计算形状点沿着原始车道边线到原始车道边线的起始形状点的边线距离;
将原始车道边线的末尾形状点沿着原始车道边线到原始车道边线的起始形状点的边线距离,作为原始车道边线的边线总长;
对于原始车道边线的每个形状点,将相应边线距离与边线总长的比值,作为形状点对应原始车道边线的相对位置;
根据端点、待定曲线控制点生成拟合曲线的待定拟合曲线函数;
对于每个形状点,将对应的相对位置代入待定拟合曲线函数,得到与形状点对应的待定拟合形状点;
计算各形状点与相应的待定拟合形状点之间的偏差;
将每个形状点对应的偏差的平方进行求和,得到目标函数;
构建目标函数的约束条件,约束条件包括:第一控制变量大于零且小于或等于第一阈值;第一阈值是原始车道边线的起始形状点沿着第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;第二控制变量大于零且小于或等于第二阈值;第二阈值是原始车道边线的末尾形状点沿着第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;目标交叉点,是第一车道边线的末尾形状点的切线方向与第二车道边线的起始形状点的反切线方向的交点;
根据约束条件对目标函数进行求解,得到拟合曲线的两个曲线控制点各自对应的第一控制参数与第二控制参数;
将目标车道与第一控制参数、第二控制参数对应存储;
在需要生成目标车道的车道边线时,获取关于目标车道的拓扑关系数据,根据拓扑关系数据确定目标车道的原始车道边线所连接的第一车道边线与第二车道边线,以及,读取与目标车道对应存储的第一控制参数、第二控制参数;
从第一车道边线的末尾形状点出发,沿着第一车道边线的末尾形状点的切线方向延伸第一控制参数,得到拟合曲线的第一曲线控制点;
从第二车道边线的起始形状点出发,沿着第二车道边线的起始形状点的反切线方向延伸第二控制参数,得到拟合曲线的第二曲线控制点;
根据第一车道边线的末尾形状点、拟合曲线的第一曲线控制点、拟合曲线的第二曲线控制点和第二车道边线的起始形状点,生成拟合曲线函数;
获取预设的插值总数,根据插值总数确定多个有序的相对位置;
依次将多个有序的相对位置中的每个相对位置代入拟合曲线函数,得到多个有序的拟合形状点,多个有序的拟合形状点构成与目标车道的原始车道边线对应的拟合车道边线。
上述车道数据压缩方法,用拟合曲线来拟合目标车道的原始车道边线,电子地图应用只需要获取或存储该拟合曲线的控制参数,电子地图应用在显示地图或进行导航路线规划时,根据该控制参数就可以生成与原始车道边线对应的拟合车道边线,不需要存储或从地图服务器获取目标车道的原始车道边线数据,可以在不明显降低目标车道的车道边线的平滑效果的同时,显著降低所需存储或获取的数据量。
本申请实施例提供的车道数据压缩方法,可以应用到任一需要车道数据压缩场景中,例如,在高精度地图中,针对路口处生成的目标车道,均可以采用本申请实施例提供的车道数据压缩方法,生成相应的拟合曲线的控制参数,用于还原出原始车道边线对应的拟合车道边线。还例如,在涉及城市道路模型的游戏应用,可直接根据上述的控制参数在路口处渲染显示目标车道相应的拟合车道边线。当然,可应用场景不局限于此。本申请实施例可应用于生成路口处的目标车道的车道边线,目标车道可用于车道级导航、自动驾驶路径规划算法开发、车辆行驶轨迹仿真等多种场景。
在一个具体的应用场景中,可以由服务器获取目标车道的原始车道边线以及拓扑关系数据,根据原始车道边线数据与拓扑关系数据构建目标函数,求解出原始车道边线的拟合曲线对应的控制参数,而后,服务器可以将目标车道与该控制参数对应存储。优选地,在生成该控制参数后,为节省存储空间服务器可以删除对应的原始车道边线。优选地,在生成该控制参数后,为节省存储空间,服务器还可以保存控制参数放大100倍后取整的结果,在计算机设备需要使用控制参数生成拟合车道边线时,只需要将读取的控制参数除以100即可。在终端上运行的地图应用需要渲染显示目标车道的车道边线时,可以从服务器获取该目标车道对应拓扑关系数据以及该目标车道对应的控制参数,而不需要从服务器下载原始车道边线,可以避免终端大量的流量消耗,继而,根据拓扑关系数据确定拟合曲线的两个端点,根据该两个端点和下载的控制参数确定拟合曲线函数后,对拟合曲线函数进行插值,得到多个有序的拟合形状点,即为原始车道边线对应的拟合车道边线,地图应用可以根据该多个有序的拟合形状点显示目标车道的车道边线。
本申请实施例提供的车道数据压缩方法,可以解决相关技术中数据量过大的问题,在不明显降低目标车道平滑效果的同时显著降低渲染现实目标车道所需存储或下载的数据量。同时整个算法流程能够以自动化的流程产出目标车道的拟合车道边线,能够有效地节省人力和时间成本。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的车道数据压缩方法的车道数据压缩装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个车道数据压缩装置实施例中的具体限定可以参见上文中对于车道数据压缩方法的限定,在此不再赘述。
在一个实施例中,如图9所示,提供了一种车道数据压缩装置900,包括:获取模块902、建模模块904和求解模块906,其中:
获取模块902,用于获取目标车道的原始车道边线;
建模模块904,用于获取目标函数和约束条件,其中,所述目标函数用于指示所述原始车道边线与拟合曲线的差异的求解目标,所述约束条件用于指示所述拟合曲线的曲线控制点的控制变量的限制条件,所述目标函数包括所述控制变量,所述控制变量指示所述曲线控制点到所述原始车道边线的端点的距离情况,所述拟合曲线与所述原始车道边线具有共同的端点;
求解模块906,用于根据所述原始车道边线以及所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数,所述控制参数与所述端点用于生成与所述原始车道边线对应的拟合车道边线;
存储模块908,用于将目标车道与拟合曲线的曲线控制点的控制参数对应存储。
在一些实施例中,所述建模模块904,还用于基于所述原始车道边线的端点与所述拟合曲线的曲线控制点的控制变量,构建所述拟合曲线的待定曲线控制点;获取所述原始车道边线的形状点在所述原始车道边线的相对位置;对于每个所述形状点,根据所述端点、所述待定曲线控制点与所述形状点对应的相对位置,确定与所述形状点对应的待定拟合形状点;根据各所述形状点与相应的所述待定拟合形状点的差异,构建目标函数。
在一些实施例中,所述目标车道的原始车道边线的起始形状点为第一车道边线的末尾形状点,所述目标车道的原始车道边线的末尾形状点为第二车道边线的起始形状点,所述目标车道的原始车道边线用于连接所述第一车道边线与所述第二车道边线;所述控制变量包括第一控制变量与第二控制变量;
所述建模模块904,还用于从所述第一车道边线的末尾形状点出发,沿着所述第一车道边线的末尾形状点的切线方向延伸第一控制变量,得到所述拟合曲线的第一待定曲线控制点;从所述第二车道边线的起始形状点出发,沿着所述第二车道边线的起始形状点的反切线方向延伸第二控制变量,得到所述拟合曲线的第二待定曲线控制点。
在一些实施例中,所述第一车道边线的末尾形状点的切线方向,是所述第一车道边线的倒数第二个形状点指向所述第一车道边线的末尾形状点的方向;所述第二车道边线的起始形状点的反切线方向,是所述第二车道边线的第二个形状点指向所述第二车道边线的起始形状点的方向。
在一些实施例中,所述建模模块904,还用于对于所述原始车道边线的每个形状点,计算所述形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离;将所述原始车道边线的末尾形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,作为所述原始车道边线的边线总长;对于所述原始车道边线的每个形状点,将相应边线距离与所述边线总长的比值,作为所述形状点对应所述原始车道边线的相对位置。
在一些实施例中,所述建模模块904,还用于根据所述端点、所述待定曲线控制点生成拟合曲线的待定拟合曲线函数;对于每个所述形状点,将对应的相对位置代入所述待定拟合曲线函数,得到与所述形状点对应的待定拟合形状点。
在一些实施例中,所述建模模块904,还用于计算各所述形状点与相应的所述待定拟合形状点之间的偏差;将每个形状点对应的偏差的平方进行求和,得到所述目标函数。
在一些实施例中,所述约束条件包括:
所述第一控制变量大于零且小于或等于第一阈值;所述第一阈值是所述原始车道边线的起始形状点沿着所述第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;
所述第二控制变量大于零且小于或等于第二阈值;所述第二阈值是所述原始车道边线的末尾形状点沿着所述第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;
所述目标交叉点,是所述第一车道边线的末尾形状点的切线方向与所述第二车道边线的起始形状点的反切线方向的交点。
在一些实施例中,所述存储模块908,还用于将所述曲线控制点的控制参数,作为所述目标车道的车道边线生成参数;将所述目标车道与所述车道边线生成参数对应存储。
在一些实施例中,如图10所示,所述车道数据压缩装置900还包括:
拟合边线生成模块910,用于在需要生成所述目标车道的车道边线时,获取关于所述目标车道的拓扑关系数据,根据所述拓扑关系数据确定所述目标车道所连接的车道,根据所述所连接的车道确定所述目标车道的车道边线的两个端点;根据所述所连接的车道、所述两个端点与所述控制参数,确定曲线控制点;根据所述两个端点与所述曲线控制点,生成与所述目标车道的原始车道边线对应的拟合车道边线。
在一些实施例中,所述拟合边线生成模块910,还用于获取预设的插值总数,根据所述插值总数确定多个有序的相对位置;根据所述两个端点与所述曲线控制点生成拟合曲线函数,所述拟合曲线函数是形状点随相对位置变化的函数;依次将所述多个有序的相对位置中的每个相对位置代入所述拟合曲线函数,得到多个有序的拟合形状点,所述多个有序的拟合形状点构成与所述目标车道的原始车道边线对应的拟合车道边线。
上述车道数据压缩装置900,获取目标车道的原始车道边线后,获取目标函数和约束条件,其中,该目标函数用于指示该原始车道边线与拟合曲线的差异的求解目标,该约束条件用于指示该拟合曲线的曲线控制点的控制变量的限制条件,该目标函数包括该控制变量,该控制变量指示该曲线控制点到该原始车道边线的端点的距离情况,该拟合曲线与该原始车道边线具有共同的端点;根据该原始车道边线以及该约束条件对该目标函数进行求解,得到该拟合曲线的曲线控制点的控制参数,将目标车道与拟合曲线的曲线控制点的控制参数对应存储。该方式中,通过使用拟合曲线来拟合目标车道的原始车道边线,这样只需要存储拟合曲线的曲线控制点的控制参数即可,实现了数据量从车道边线的数据量级别“压缩”至控制参数的数据量级别,显著降低关于目标车道的车道边线的数据量。
上述车道数据压缩装置900中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储目标车道的原始车道边线数据以及相关的拓扑关系数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种车道数据压缩方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种车道数据压缩方法。
本领域技术人员可以理解,图11、图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现本申请实施例提供的车道数据压缩步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现车道数据压缩步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现车道数据压缩步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (17)
1.一种车道数据压缩方法,其特征在于,所述方法包括:
获取目标车道的原始车道边线,所述原始车道边线的起始形状点为第一车道边线的末尾形状点,所述原始车道边线的末尾形状点为第二车道边线的起始形状点,所述原始车道边线用于连接所述第一车道边线与所述第二车道边线;
从所述第一车道边线的末尾形状点出发,沿着所述第一车道边线的末尾形状点的切线方向延伸第一控制变量的距离,得到第一待定曲线控制点,以及,从所述第二车道边线的起始形状点出发,沿着所述第二车道边线的起始形状点的反切线方向延伸第二控制变量的距离,得到第二待定曲线控制点;根据所述第一控制变量与所述第二控制变量的限制条件,构建约束条件,所述约束条件包括:所述第一控制变量大于零且小于或等于第一阈值;所述第一阈值是所述原始车道边线的起始形状点沿着所述第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;所述第二控制变量大于零且小于或等于第二阈值;所述第二阈值是所述原始车道边线的末尾形状点沿着所述第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;所述目标交叉点,是所述第一车道边线的末尾形状点的切线方向与所述第二车道边线的起始形状点的反切线方向的交点;
根据所述原始车道边线的起始形状点、所述第一待定曲线控制点、所述第二待定曲线控制点与所述原始车道边线的末尾形状点,确定拟合曲线;
对于所述原始车道边线的每个形状点,计算所述形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,将所述原始车道边线的末尾形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,作为所述原始车道边线的边线总长,对于所述原始车道边线的每个形状点,将相应边线距离与所述边线总长的比值,作为所述形状点对应所述原始车道边线的相对位置;
对于每个所述形状点,根据所述形状点对应的相对位置,确定所述拟合曲线上与所述形状点对应的待定拟合形状点,根据各所述形状点与相应的所述待定拟合形状点的差异,构建目标函数,所述目标函数包括所述第一控制变量与所述第二控制变量;
基于所述约束条件对所述目标函数进行求解,得到拟合曲线的曲线控制点的控制参数;
将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
2.根据权利要求1所述的方法,其特征在于,所述第一车道边线的末尾形状点的切线方向,是所述第一车道边线的倒数第二个形状点指向所述第一车道边线的末尾形状点的方向;所述第二车道边线的起始形状点的反切线方向,是所述第二车道边线的第二个形状点指向所述第二车道边线的起始形状点的方向。
3.根据权利要求1所述的方法,其特征在于,所述对于每个所述形状点,根据所述形状点对应的相对位置,确定所述拟合曲线上与所述形状点对应的待定拟合形状点,包括:
根据所述原始车道边线的起始形状点、所述第一待定曲线控制点、所述第二待定曲线控制点与所述原始车道边线的末尾形状点,生成拟合曲线的待定拟合曲线函数;
对于每个所述形状点,将对应的相对位置代入所述待定拟合曲线函数,得到与所述形状点对应的待定拟合形状点。
4.根据权利要求1所述的方法,其特征在于,所述根据各所述形状点与相应的所述待定拟合形状点的差异,构建目标函数,包括:
计算各所述形状点与相应的所述待定拟合形状点之间的偏差;
将每个形状点对应的偏差的平方进行求和,得到所述目标函数。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储,包括:
将所述曲线控制点的控制参数,作为所述目标车道的车道边线生成参数;
将所述目标车道与所述车道边线生成参数对应存储。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
在需要生成所述目标车道的车道边线时,获取所述目标车道对应的控制参数,获取关于所述目标车道的拓扑关系数据,根据所述拓扑关系数据确定所述目标车道所连接的车道,根据所述所连接的车道确定所述目标车道的车道边线的两个端点;
根据所述所连接的车道、所述两个端点与获取的所述控制参数,确定曲线控制点;
根据所述两个端点与所述曲线控制点,生成与所述目标车道的原始车道边线对应的拟合车道边线。
7.根据权利要求6所述的方法,其特征在于,所述根据所述两个端点与所述曲线控制点,生成与所述目标车道的原始车道边线对应的拟合车道边线,包括:
获取预设的插值总数,根据所述插值总数确定多个有序的相对位置;
根据所述两个端点与所述曲线控制点生成拟合曲线函数,所述拟合曲线函数是形状点随相对位置变化的函数;
依次将所述多个有序的相对位置中的每个相对位置代入所述拟合曲线函数,得到多个有序的拟合形状点,所述多个有序的拟合形状点构成与所述目标车道的原始车道边线对应的拟合车道边线。
8.一种车道数据压缩装置,其特征在于,所述装置包括:
获取模块,用于获取目标车道的原始车道边线所述原始车道边线的起始形状点为第一车道边线的末尾形状点,所述原始车道边线的末尾形状点为第二车道边线的起始形状点,所述原始车道边线用于连接所述第一车道边线与所述第二车道边线;
建模模块,用于从所述第一车道边线的末尾形状点出发,沿着所述第一车道边线的末尾形状点的切线方向延伸第一控制变量的距离,得到第一待定曲线控制点,以及,从所述第二车道边线的起始形状点出发,沿着所述第二车道边线的起始形状点的反切线方向延伸第二控制变量的距离,得到第二待定曲线控制点;根据所述第一控制变量与所述第二控制变量的限制条件,构建约束条件,所述约束条件包括:所述第一控制变量大于零且小于或等于第一阈值;所述第一阈值是所述原始车道边线的起始形状点沿着所述第一车道边线的末尾形状点的切线方向到达目标交叉点的距离;所述第二控制变量大于零且小于或等于第二阈值;所述第二阈值是所述原始车道边线的末尾形状点沿着所述第二车道边线的起始形状点的反切线方向到达目标交叉点的距离;所述目标交叉点,是所述第一车道边线的末尾形状点的切线方向与所述第二车道边线的起始形状点的反切线方向的交点;根据所述原始车道边线的起始形状点、所述第一待定曲线控制点、所述第二待定曲线控制点与所述原始车道边线的末尾形状点,确定拟合曲线,对于所述原始车道边线的每个形状点,计算所述形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,将所述原始车道边线的末尾形状点沿着所述原始车道边线到所述原始车道边线的起始形状点的边线距离,作为所述原始车道边线的边线总长,对于所述原始车道边线的每个形状点,将相应边线距离与所述边线总长的比值,作为所述形状点对应所述原始车道边线的相对位置,对于每个所述形状点,根据所述形状点对应的相对位置,确定所述拟合曲线上与所述形状点对应的待定拟合形状点,根据各所述形状点与相应的所述待定拟合形状点的差异,构建目标函数,所述目标函数包括所述第一控制变量与所述第二控制变量;
求解模块,用于基于所述约束条件对所述目标函数进行求解,得到所述拟合曲线的曲线控制点的控制参数;
存储模块,用于将所述目标车道与所述拟合曲线的曲线控制点的控制参数对应存储。
9.根据权利要求8所述的装置,其特征在于,所述第一车道边线的末尾形状点的切线方向,是所述第一车道边线的倒数第二个形状点指向所述第一车道边线的末尾形状点的方向;所述第二车道边线的起始形状点的反切线方向,是所述第二车道边线的第二个形状点指向所述第二车道边线的起始形状点的方向。
10.根据权利要求8所述的装置,其特征在于,所述建模模块,还用于根据所述原始车道边线的起始形状点、所述第一待定曲线控制点、所述第二待定曲线控制点与所述原始车道边线的末尾形状点,生成拟合曲线的待定拟合曲线函数;对于每个所述形状点,将对应的相对位置代入所述待定拟合曲线函数,得到与所述形状点对应的待定拟合形状点。
11.根据权利要求8所述的装置,其特征在于,所述建模模块,还用于计算各所述形状点与相应的所述待定拟合形状点之间的偏差;将每个形状点对应的偏差的平方进行求和,得到所述目标函数。
12.根据权利要求8至11任一项所述的装置,其特征在于,所述存储模块,还用于将所述曲线控制点的控制参数,作为所述目标车道的车道边线生成参数;将所述目标车道与所述车道边线生成参数对应存储。
13.根据权利要求8至11任一项所述的装置,其特征在于,所述装置还包括:
拟合边线生成模块,用于在需要生成所述目标车道的车道边线时,获取所述目标车道对应的控制参数,获取关于所述目标车道的拓扑关系数据,根据所述拓扑关系数据确定所述目标车道所连接的车道,根据所述所连接的车道确定所述目标车道的车道边线的两个端点;根据所述所连接的车道、所述两个端点与获取的所述控制参数,确定曲线控制点;根据所述两个端点与所述曲线控制点,生成与所述目标车道的原始车道边线对应的拟合车道边线。
14.根据权利要求13所述的装置,其特征在于,所述拟合边线生成模块,还用于获取预设的插值总数,根据所述插值总数确定多个有序的相对位置;根据所述两个端点与所述曲线控制点生成拟合曲线函数,所述拟合曲线函数是形状点随相对位置变化的函数;依次将所述多个有序的相对位置中的每个相对位置代入所述拟合曲线函数,得到多个有序的拟合形状点,所述多个有序的拟合形状点构成与所述目标车道的原始车道边线对应的拟合车道边线。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410028440.1A CN117539970B (zh) | 2024-01-09 | 车道数据压缩方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410028440.1A CN117539970B (zh) | 2024-01-09 | 车道数据压缩方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117539970A CN117539970A (zh) | 2024-02-09 |
CN117539970B true CN117539970B (zh) | 2024-07-12 |
Family
ID=
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109916416A (zh) * | 2019-01-29 | 2019-06-21 | 腾讯科技(深圳)有限公司 | 车道线数据处理与更新方法、装置及设备 |
CN116433860A (zh) * | 2023-03-27 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 路口面生成方法、装置、设备、存储介质和程序产品 |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109916416A (zh) * | 2019-01-29 | 2019-06-21 | 腾讯科技(深圳)有限公司 | 车道线数据处理与更新方法、装置及设备 |
CN116433860A (zh) * | 2023-03-27 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 路口面生成方法、装置、设备、存储介质和程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102117497B (zh) | 一种三维地形建模方法及系统 | |
CN115346012B (zh) | 路口面的生成方法、装置、设备、存储介质和程序产品 | |
CN116433860A (zh) | 路口面生成方法、装置、设备、存储介质和程序产品 | |
CN113723786B (zh) | 基于三维gis的可视化规划辅助系统 | |
CN114429528A (zh) | 图像处理方法、装置、设备、计算机程序及存储介质 | |
CN113516663B (zh) | 点云语义分割方法及装置、电子设备及存储介质 | |
CN111339599A (zh) | 一种bim模型到gis模型的转换方法 | |
CN116740668B (zh) | 三维目标检测方法、装置、计算机设备和存储介质 | |
CN113505185A (zh) | 一种城市信息模型三维场景渲染与展示方法 | |
CN110689598A (zh) | 一种多层道路三维建模方法及系统 | |
CN116977531A (zh) | 三维纹理图像的生成方法、装置、计算机设备和存储介质 | |
CN117539970B (zh) | 车道数据压缩方法、装置、计算机设备和存储介质 | |
CN116468870B (zh) | 一种城市道路三维可视化建模方法及系统 | |
CN117539970A (zh) | 车道数据压缩方法、装置、计算机设备和存储介质 | |
CN114782926B (zh) | 驾驶场景识别方法、装置、设备、存储介质和程序产品 | |
CN116012805A (zh) | 目标感知方法、装置、计算机设备、存储介质和程序产品 | |
CN118012630B (zh) | 车道线数据处理方法以及相关设备 | |
CN117723073B (zh) | 高程调整方法、装置、设备、存储介质和计算机程序产品 | |
CN114332805A (zh) | 车道位置获取方法、装置、计算机设备和存储介质 | |
Somanath et al. | On procedural urban digital twin generation and visualization of large scale data | |
CN118012630A (zh) | 车道线数据处理方法以及相关设备 | |
CN116659538B (zh) | 变道路径规划方法、装置和车载设备 | |
Liu et al. | Fusing multiscale charts into 3D ENC systems based on underwater topography and remote sensing image | |
CN117146796A (zh) | 一种数据处理方法、装置、设备以及计算机可读存储介质 | |
CN118227717A (zh) | 地图数据处理方法、装置、设备、存储介质和程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |