tag 标签: 地图

相关帖子
相关博文
  • 热度 4
    2024-6-19 12:12
    480 次阅读|
    0 个评论
    引言 随着自动驾驶技术的快速发展,基于高精地图的自动驾驶功能已初步落地应用,并持续迭代升级。在研发测试阶段,多方面因素导致测试人员可能无法拿到控制器内部高精地图对应的OpenDRIVE文件 ①,使得仿真场景与控制器内部高精地图无法完全匹配,自动驾驶功能受限,得不到有效的测试验证;而实车道路测试风险和成本高、周期长、覆盖度低等问题,很难保证自动驾驶系统的可靠性和安全性。 针对这一核心技术痛点,本文提出了基于外部数据注入的高精地图仿真方案,提高自动驾驶功能研发阶段的测试有效性,可以大幅降低实车道路测试的风险和成本,加速自动驾驶功能的研发和部署,确保自动驾驶系统的可靠性和安全性。 什么是高精地图? 高精地图,很容易被误解为相对于普通的导航电子地图精度更高的一种地图,实则两者有着完全不同的含义。 图1:左-导航电子地图、右-高精地图 导航地图(SD MAP) ,是一种面向驾驶员使用的电子地图,它存储的主要是道路级别元素信息,如道路形状等,精度为5m-10m左右。 高精地图(HD MAP) ,是一种专为自动驾驶汽车设计的地图,它拥有精确(厘米级精度)的车辆位置信息和丰富的道路元素数据信息,如交通标志、地面标志、车道线、信号灯以及道路坡度、曲率等,可以帮助汽车预知路面复杂信息,是实现自动驾驶功能的关键技术之一,主要体现在一下几个方面: 精确定位: 高精度地图提供了精确的道路信息和地标数据,帮助车辆实现精确定位,包括车辆当前位置等信息。 环境感知: 基于高精度地图数据,车辆能够更准确地感知周围环境,包括道路标志、交通信号、障碍物等,从而提高交通场景的感知能力。 路径规划: 高精度地图为自动驾驶系统提供了详细的道路网络数据,帮助系统规划最优路径,避开拥堵区域,优化行驶路线。 决策制定: 基于高精度地图和环境感知数据,自动驾驶系统可以进行智能决策,比如避让障碍物、调整车速、安全变道等,以确保行驶安全。 高精地图仿真方案 在搭建虚拟仿真环境进行自动驾驶功能测试验证过程中,需要确保仿真场景地图和自动驾驶控制器内部高精地图完全重合(车道级精度:误差小于1cm),提高车辆的定位精确性、传感器模型输出的道路元素信息与高精地图匹配性,才能保证自动驾驶控制器融合定位及环境感知结果准确,为路径规划和决策制定提供精确的输入信息,提高自动驾驶功能研发阶段的测试有效性。 不同的测试背景及需求对应不同的仿真方案: 方案一:如测试人员拿到控制器内部高精地图对应的OpenDRIVE文件时,可以采用基于OpenDRIVE文件的定位仿真,简单有效; 方案二:针对无法拿到对应OpenDRIVE文件的情况(方案一失效),北汇信息创新地提出基于外部数据注入的高精地图仿真解决方案。 方案一:基于OpenDRIVE文件的定位仿真方案 当测试人员能够拿到控制器内部高精地图对应的OpenDRIVE文件时,直接将OpenDRIVE文件导入到场景仿真软件中,自动生成高精地图中交通标志、地面标志、车道线、信号灯以及道路坡度、曲率等信息;仿真流程如下图所示: VTD(场景仿真软件)可输出精确的车辆位置信息(UTM坐标系),并通过Ethernet送至CANoe(测试管理软件); GCJ02坐标系,并通过Ethernet/CANFD发送至控制器。 图2 基于OpenDRIVE文件的定位仿真原理图 方案二:基于外部数据注入的高精地图仿真方案 当测试人员拿不到控制器内部高精地图对应的OpenDRIVE文件时,无法保证仿真场景地图与控制器内部高精地图完全匹配,自动驾驶功能受限。因此,针对自动驾驶仿真测试,提出基于外部数据注入的高精地图仿真方案,使得控制器内部地图数据与仿真场景中的道路元素信息一致,如下图所示: 图3 基于外部数据注入的高精地图仿真原理图 屏蔽控制器内部地图模块组件,截断控制器内部地图模块与融合规控模块组件之间的数据传输,使用外部自制地图模块替代。 分析地图模块输出接口协议(通信协议、数据封装协议),基于Linux环境开发中间件(与控制器内部中间件保持一致、如DDS)及应用程序MapComponent(地图组件),建立与控制器内部组件之间的通信 基于场景仿真软件VTD开发MapPlugin(高精地图插件),解析提取OpenDRIVE中的道路元素信息并写入共享内存 MapComponent读取MapPlugin写入到共享内存中的道路元素信息,并根据接口协议封装数据,通过中间件(如DDS)发送至控制器内部。 地图解析插件MapPlugin开发原理 图4 地图解析插件MapPlugin代码框架 如上图所示: MapPlugin插件主要通过数据预处理模块提取Ego车运动状态、位置等信息 在此基础上,开发地图解析模块提取Ego车周围车道信息、车道线信息、道路边界信息、交通灯信息; 将 MapPlugin 代码编译成Plugin(.so文件),在VTD中加载运行 OpenDrive中的道路元素信息有很多,需要提取哪些数据取决于控制器内部高精地图组件输出接口协议,一般包含两类数据:静态地图数据(如车道线、车道信息等)、动态地图数据(如Ego车到匝道口、收费站的距离等)。 地图组件MapComponent开发原理 图5 MapComponent框架原理 如上图所示:MapComponent包括共享内存数据读取(SHMRead)和中间件数据封装发送(MapAgent、如DDS)两块内容 SHMRead:读取MapPlugin写入到共享内容中的道路元素信息,二次处理后对Proto中的接口信号赋值 MapAgent:封装proto接口数据、序列化处理后发布(MapAgent的开发需适配控制器内部环境框架)。 Map.yaml:应用程序配置,包括通信端口、任务使能、接口数据管理等 高精地图仿真案例 下面展示的是一个基于外部数据注入实现高精地图仿真,结合其它传感器仿真(如Lidar、Camera、Radar、USS),完成高速领航功能(自动下高速、上匝道)的仿真测试案例。 图6 左-VTD仿真场景、右-注入到控制器内部的高精地图 如上图所示:左图为VTD仿真场景(OpenDRIVE格式地图),右图是MapPlugin解析提取VTD仿真场景道路元素信息,通过MapComponent注入到控制器内部后生成的高精地图;右图中绿色实线为道路边界,蓝色实线为车道线,黑色实线为推荐导航路径,粉红色实线为非推荐路线。 Ego车在高速路上行驶,导航终点设置在高速路出口,领航功能激活后,车辆会自动超车、绕障、变道、驶入匝道,到达目的地附近后请求驾驶员接管,完成领航任务。 总结 高精地图作为自动驾驶的关键技术之一,在产品研发阶段,测试人员无法拿到控制器内部高精地图对应的OpenDRIVE文件在一定程度上阻碍了自动驾驶功能的测试验证,北汇信息提出的基于外部数据注入的高精地图仿真方案能够有效解决这一技术痛点,加速自动驾驶功能的研发测试。 高精地图技术加速了自动驾驶功能的落地应用,与此同时,高精地图的实时性、数据准确性、范围覆盖度、隐私和安全性在一定程度上也限制了自动驾驶的推广,以特斯拉为代表的纯视觉无图自动驾驶方案已展现出一定的竞争力。随着新技术的发展与突破,自动驾驶方案也在不断迭代更新,自动驾驶功能离我们越来越近。 北汇信息作为Vector的技术合作伙伴,覆盖自动驾驶MiL/SiL/HiL/ViL测试、车联网测试,传感感知测试等,针对性地为客户提供优质的自动驾驶测试解决方案、系统集成测试和测试服务,助力自动驾驶产品的研发测试和快速迭代。 ①OpenDRIVE是一种用于描述道路网络和交通环境的开放标准文件格式。它提供了一种统一的描述道路几何结构、车道信息、交通标志、交通灯等元素的方式,可用于创建高精度地图,供自动驾驶系统使用。
  • 热度 15
    2013-11-6 10:04
    1367 次阅读|
    0 个评论
      基于微处理器的车载导航电子地图的设计和实现 来源:上海皇华信息科技有限公司   摘要 : 摘要: 针对车辆远程终端仪中车载导航的硬件构成和GIS软件开发进行了探讨。给出了以Renesas Electronics公司SH7764微处理器为核心的电路图,对嵌入式电子地图的体系结构、数据管理等进行了论述。同时介绍了在MapXMobi ...     摘要 : 针对车辆远程终端仪中车载导航的硬件构成和GIS软件开发进行了探讨。给出了以Renesas Electronics公司SH7764微处理器为核心的电路图,对嵌入式电子地图的体系结构、数据管理等进行了论述。同时介绍了在MapXMobile 下进行二次集成开发的过程。此系统在上海泛亚汽车技术有限公司实验用车上运行了两年,实际证明系统运行可靠,能满足生产的基本需求。   车辆远程诊断仪的主要功能是导航。导航功能的重点是行车路线设计、自动车辆定位、综合信息服务、路径引导服务等。导航功能是GIS技术、通讯技术、嵌入式技术和GPS定位等技术相结合的综合应用系统。系统通过对GPS定位全天候、高精度、实时性强的特点,可实现对车辆准确实时的跟踪,通过应用GLS技术,则可在电子地图上显示车辆的定位信息,明确用户所在的准确位置。文中在介绍了典型的导航系统软硬件构成的基础上,重点探讨了车载导航电子地图设计和实现,对于车载导航的进一步优化具有现实意义。    1 车载导航电子地图的体系结构    1.1 系统硬件设计方案   嵌入式系统作为电子地图的载体时,硬件系统需采用32位的微处理器,工作频率在400 HMz以上,以便能够处理大量的数据和流畅的运行操作系统。硬件系统需能够支持多媒体功能,支持LCD触摸屏输入、具有大容量SD卡的加载功能,所选取的操作系统应具有信息数据库和地图数据库的管理功能。   SH7764作为诊断仪的核心处理器,其最高工作频率为324MHz,可实现583MI/S的处理性能。FPU支持单、双精度运算,可实现 2.3GFLOPS的最高性能。并具有丰富的硬件资源,包括硬件音频解码功能、正玄/余玄操作以及向量元算操作功能。外设执行存储功能包括NAND闪存控制器和存储卡控制器、以太网控制器(10/100BASE—T)、USB接口(全速/高速)、I2C总线接口、带有FIFO的串行通讯接口,显示支持功能是由2D图形引擎、LCD控制器和数字RGB输出功能提供的。   SH7764高速的数据处理性能和丰富的外设功能,使得SH7764处理器可以低廉的成本构成一个高性能的车载诊断处理系统。使用SH7764构成车载远程诊断仪时,电路框图如图1所示。     图1 使用SH7764构成车载远程诊断仪时的电路框图    1.2 操作系统   WinCE操作系统是一个功能强、可裁剪、易移植的系统,且具备了系统所必须的用户信息数据库和数字地图数据库的存储及管理功能。   在WinCE操作系统中,虚拟专用网络(Virtual Private Network,VPN)的操作性和适用性较强,其主要是利用公用网络作为用户信息传输的媒体,通过附加的隧道封装、信息加密、用户认证和访问控制等技术实现对信息传输过程的安全保护,从而向用户提供类似专用网络的安全性能。相对而言安全性大幅提升,因此这种基于网络信息安全系统一般会采用复杂的密码身份验证机制,得以保证系统账户的安全。系统采用严格的权限管理,用以确保系统运行的安全性。   (1)网络操作系统层:通过网络和操作系统的管理机制并借助相应的管理软件和防火墙技术,防止病毒和黑客入侵企业的信息管理网络,对重要的数据和传输的数据进行加密处理,防止非法人员登录数据库和应用系统,保障在网络环境下的各项业务顺利进行。   (2)数据库系统层:通过数据库操作系统ORACLE等管理机制和相应的管理软件,实现对登录数据库用户的检验,数据各种操作权限的控制,数据及时备份和历史数据的管理。   (3)系统应用层:主要是系统平台提供的管理功能测试,有功能权限设置、数据权限设置、时间权限设置、应用控制机制和操作日志管理。    1.3 GIS软件设计   GIS软件的设计基础在于数据结构以及数据库结构的定义两方面,其直接决定了系统的稳定性、合理性、功能完整性、可扩充性等方面。GIS软件所具备的查询检索功能、图像功能、分析功能均依次为基础来进行开发的。 1.3.1 电子地图的文件格式与数据组织   在电子地图地理信息系统中,实行属性数据与空间数据的分开储存。其中,空间数据以电子地图的自身格式在文件中进行保存,而属性则以数据链形式在一份表中实现储存。且两者利用一定索引机制便可有效地关联。电子地图以土层为依据进行地理管理。每个图层均由属性数据表结构文件、属性数据文件、交叉索引文件、空间数据文件多个基本文件构成。空间数据包括空间对象的颜色信息、坐标信息、几何类型等,当用户对索引字段加以规定后,索引文件便会在地理信息系统中自动生成。   电子地图通过“Table”的形式来建立属性数据与空间实体间的对应关系,并以此为基础建立起电子地图的查询检索系统。通过定义空间数据结构,对空间实体类型进行确定。数据库关系模型选用一组逻辑严密、结构简单的二维平面表为操作对象,Table中严禁重复存储,从而保障空间内唯一的实体记录。在描述空间实体类型的多种属性时,将其进行多个Table的分解,从而使其形成多重的链表关系,多个Table属性信息同空间实体发生联系,进而构成属性数据同空间实体间多重对应的关系。    1.3.2 电子地图的数据索引机制   电子地图数据索引机制的索引设计过程如下:当从属性信息中进行空间信息的查询时,电子地图首先应在属性文件中找到数据库中的相应数据。此时就可在索引文件中选取相应指针,其所指的地图对象即为同数据库记录空间相对应的对象。从而能够在空间信息中进行属性信息的查询。(如对于某一空间对象已在地图上查出,电子地图便可在空间文件中读出同空间信息相对应的记录号,以此为依据,便可实现该地图对象底性信息在属性数据文件中的查询。)而 MapInfo地理信息数据格式的应用,则可较好地落实上述索引思路,且能够按照土层间的叠加关系进行存放与显示。    1.3.3 电子地图的图层与图元   在MapX中,对于MapInfo表的地图标示均是以图层的形式进行显示的,这些图层中除有地物元素位置外,默认为透明。叠加图层后,便可看到地图的各种方面。图元则包括区域对象、点对象、线对象。在MapX中,通过对Feature对象的利用便可实现对上述地图对象的房问题,可完成创建、自定义、编辑、显示等操作。    1.3.4 应用Geoset,实现地图管理   对于满意的地图,便可进行保存,在驱动器中将其写入Geoset文件当中。将Geoset文件打开,全部地图的设置和土层均为保存时状态。此时,可应用MapX自带工具Geoset Manager可对.gst文件进行管理,来对管理缩放级别、图层、表和其他属性进行修改。    2 电子地图模块的二次开发   基于Active技术的MapX控件为开发人员的二次开发提供了方便。在VC++等可视化开发环境中,将MapX控件嵌入到窗体中即可进行编程、设置属性等操作,完成空间数据查询,地理空间数据的可视化,编码等地图信息系统功能。    2.1 安装MapX mobile   在MapX安装完毕后,添加MapX空间便可对地图进行显示。具体设计步骤为:建立标准exe于编程环境当中,从“工程”菜单中选取“部件”,随即将“部分对话框打开”,于部件列表内,将“MapX mobile V5.02”找到,完成复选后,点击“确定”。随后工具栏中便会将Map空间图标显示出来,此时,单击“控件”,便完成了工程中Map空间的引入。    2.2 地图的基本操作   车载嵌入式车载导航中,主要通过DataSet对象和Layer对象操作来完成MapX地图操作。对同此类型对象的应用,仍可将地图土层添加到应用程序当中。而属性数据操作的完成,则可通过建立数据绑定、数据源设置的方式实现。而电子地图的加载主要通过以下两种设计形式实现。一是在 MapX中加载一个Geoset对象,加载完成后,MapX将各个图层自动打开,在地图窗口中进行叠加,并对图层属性信息进行设置。二是在MapX中加载一个图层,该种方法是对一个MapInfo文件的直接加载,待图层打开后,其将在地图窗口内完成自动的叠加。    2.3 地图的刷新   MapX首先绘制动态图层以外的全部图层,并在某一地方进行存储,当其他图层未变而动态图层发生变化时,便可通过已存储的动态图层和数据来实施覆盖处理,进而现实处理结果。地图的刷新过程设计为依次全部刷新的形式,从最小外界矩形窗口区域开始,来完成整合刷新过程。该方法的优点是相比于整个地图窗口的刷新形式要更加快速。同时,因受地图刷新速度的影响,MapX难以同时完成多目标的刷新,这时iju可进行统一刷新闹钟的设置,从而使每个一定时间间隔,目标地图便会自动刷新一次。    2.4 地图调用   首先,在工程中加入MaoX.cpp和MapX.h文件。在菜单“Project”中选择“Files”命令,随后将对话框打开选取 MaoX.cpp和MapX.h文件加入到MapX系统当中。将MapX对象头文件加入到视图(包含MapX)中。针对MapX进行一个资源ID的创建,通过“新建一名称输入”的操作来完成。进行消息映射函数SIZE和CREATE的创建,在“视图/类导向”中选择视图类,并将两个信息在消息框中完成分别选择,之后通过函数的条件,来对代码进行编辑,导入地图。通过类向导,来进行SETFOCUS映射函数的创建,使得窗口在获得焦点的同时,地图空间也可获取焦点。    2.5 图层的控制   GIS软件中,通常需对图层属性进行设置,而通过对显示图层控制方法的应用便可实现此项功能,借助于MapX中可选择、可显示、自动标注、可编辑的四种属性设置来实现地理信息维护与查询功能的发挥。    2.6 鹰眼图的实现   鹰眼图是基于嵌入式车载导航电子地图的一项基本功能,其实现思路为:进行一个无模式对话框的创建,确立HAWK为ID。建立MapX空间来对鹰眼图进行控制,并创建一新图层于鹰眼图中,以此添加矩形框,对主视图中地图作出表示,且该矩形框的位置和大小不随主视图边界变化而发生变化。添加一个按钮于对话框,依据按钮下的相应函数来操作鹰眼图MapX空间,从而使其对Map空间的操作得以实现,且当按下对话框按钮后,便可对CLICK信息进行发送。依靠此设计程度的鹰眼图可在EVC模拟器上运行,并具备了车载导航电子地图的基本功能。    3 结束语   嵌入式车载导航在车载导航领域中有广泛的应用,随着社会信息化的发展,嵌入式车载导航电子地图的功能必将进一步完善。因此,嵌入式车载导航的应用前景将十分广阔。  
相关资源