系列文章目录


一、lanelet2简介




目录


系列文章目录


前言


一、lanelet2是什么?


二、lanelet2标准格式


1.node


2.way


3.relation


总结





前言


基本数据类型介绍


lanelet2对每一个基本类A有以下四种数据类型:


Class A


APtr = std::shared_ptr<A>


AConstPtr = std::shared_ptr<A>


APtrs = std::vector<APtr>


AConstPtrs = std::vector<AConstPtr>


常用的基本类A有:


1.PrimitiveData——原始数据


2.PointData——点元素


3.LinestringData——线元素


4.CompoundLineData——复合线组


5.LaneletSequenceData——道路顺序?(不明)


6.LaneletData——道路


7.AreaData——区域


8.LaneletMap——地图






一、lanelet2是什么?


lanelet2是autoware最新的高精地图形式,它使用xml语言描述了道路的全部信息,代替了上一代的vector map,利用高精地图信息辅助实现自动驾驶。xml文件进一步规范化,融合国际通用的OpenStreetMap(osm)规则,将道路抽象成一系列点,再把这些点统一组织形成常见道路的元素,比如:道路边界、道路中心线、红绿灯、停车线、停车场等。


二、lanelet2标准格式


1.node


基本node格式如下



 <node id=”26” lat=”39.74400468564196” lon=”115.83292507791843”>
    <tag k=”mgrs_code” v=”50SMK0000-1”/>
    <tag k=”local_x” v=”6.543”/>
    <tag k=”local_y” v=”-3.9569”/>
    <tag k=”ele” v=”-2.164”/>
  </node>


1.id——该点的唯一标识(其实不止点,对所有元素元素来说id都唯一)


2.lat——纬度


3.lon——经度


4.mgrs_code——该点在地球上的MGRS分区


5.local_X——经纬度转换成的x坐标


6.local_y——经纬度转换成的y坐标(不严格按照经纬度投影关系,与基准点设置有关,元素的相对关系保持不变)


7.ele——海拔


2.way


基本way格式如下



<way id=”55”>
    <nd ref=”27”/>
    <nd ref=”54”/>
    <nd ref=”56”/>
    <nd ref=”57”/>
    <nd ref=”58”/>
    <nd ref=”59”/>
    <nd ref=”60”/>
    <tag k=”type” v=”line_thin”/>
    <tag k=”subtype” v=”solid”/>
  </way>


1.id——标识符


2.<nd ref=”27”/>……——点集,ref=某点的id


3.tag——属性,type道路形式,subtype实线或虚线(?可能)


3.relation


基本relation(表示某完整路段)格式如下



  <relation id=”32”>
    <member type=”way” role=”left” ref=”28”/>
    <member type=”way” role=”right” ref=”31”/>
    <tag k=”type” v=”lanelet”/>
    <tag k=”subtype” v=”road”/>
    <tag k=”speed_limit” v=”20”/>
    <tag k=”location” v=”urban”/>
    <tag k=”one_way” v=”yes”/>
    <tag k=”turn_direction” v=”straight”/>
  </relation>


1.id——标识符


2.member——包含的way元素,role表示该way的定位,比如:左边界、右边界、停止线等


3.tag——属性,type:类别,subtype:具体类别,speed_limit:限速,turn_direction:道路方向……


relation(表示道路标识或红绿灯等)



  <relation id=”272”>
    <member type=”way” role=”refers” ref=”271”/>
    <member type=”way” role=”ref_line” ref=”270”/>
    <tag k=”type” v=”regulatory_element”/>
    <tag k=”subtype” v=”traffic_sign”/>
  </relation>



  <relation id=”283”>
    <member type=”way” role=”refers” ref=”278”/>
    <member type=”way” role=”ref_line” ref=”275”/>
    <member type=”way” role=”light_bulbs” ref=”282”/>
    <tag k=”type” v=”regulatory_element”/>
    <tag k=”subtype” v=”traffic_light”/>
  </relation>




总结


本文仅仅简单介绍了osm高精地图,具体有些细节暂时还未明晰。


欢迎交流,联系Q1456055290