OpenX系列标准:OpenDRIVE标准简述
1.概述
? 作為一個(gè)完整的仿真測(cè)試場(chǎng)景描述方案,OpenX系列標(biāo)準(zhǔn)包括:OpenDRIVE、OpenSCENARIO和OpenCRG。
| OpenDRIVE | .xodr | 靜態(tài)部分(如道路拓?fù)浣Y(jié)構(gòu)、交通標(biāo)志標(biāo)線等) |
| OpenDRIVE | .tdo | 保存ROD項(xiàng)目時(shí)生成的文件,是ROD項(xiàng)目的可編輯模式 |
| OpenDRIVE | .osgb | 通過(guò)ROD項(xiàng)目生成的貼圖與路面紋理文件 |
| OpenSCENARIO | .xosc | 動(dòng)態(tài)部分(如交通車(chē)的行為) |
| OpenCRG | .crg | 靜態(tài)部分(道路的表面細(xì)節(jié),如坑洼、卵石路等) |
2.OpenDRIVE簡(jiǎn)介
? ASAM OpenDRIVE格式提供了用可擴(kuò)展標(biāo)記語(yǔ)言(XML)語(yǔ)法描述道路網(wǎng)絡(luò)的通用基礎(chǔ),使用文件擴(kuò)展名xodr。 存儲(chǔ)在ASAM OpenDRIVE文件中的數(shù)據(jù)描述了道路、車(chē)道和物體的幾何形狀,如道路上的路標(biāo),以及道路沿線的特征,如信號(hào)。ASAM OpenDRIVE文件中描述的道路網(wǎng)絡(luò)可以是合成的,也可以是基于真實(shí)數(shù)據(jù)的。
? ASAM OpenDRIVE的主要目的是提供一個(gè)道路網(wǎng)絡(luò)描述,它可以被送入模擬,以開(kāi)發(fā)和驗(yàn)證ADAS和AD功能。在ASAM OpenDRIVE的幫助下,這些道路網(wǎng)絡(luò)描述可以在不同的模擬器之間進(jìn)行交流。為道路描述提供一個(gè)標(biāo)準(zhǔn)化的格式,也使行業(yè)能夠減少為其開(kāi)發(fā)和測(cè)試目的創(chuàng)建和轉(zhuǎn)換這些文件的成本。道路數(shù)據(jù)可以從道路網(wǎng)絡(luò)編輯器、地圖數(shù)據(jù)的轉(zhuǎn)換中手動(dòng)創(chuàng)建,或源于現(xiàn)實(shí)世界道路的轉(zhuǎn)換掃描。
? OpenDRIVE是一種高精地圖格式,2006年由德國(guó)VIRES公司發(fā)布,并反復(fù)迭代,期間德國(guó)戴姆勒駕駛模擬器部門(mén)和德國(guó)宇航中心DLR也發(fā)揮了很大作用。OpenDRIVE 1.5版本于2019年發(fā)布。2018年9月,OpenDRIVE的開(kāi)發(fā)團(tuán)隊(duì)將維護(hù)工作轉(zhuǎn)交給德國(guó)ASAM標(biāo)準(zhǔn)化組織,1.6及之后的版本由ASAM負(fù)責(zé)。1.6版本已由ASAM在2020年3月發(fā)布,本文使用該版本進(jìn)行介紹。
? OpenDRIVE開(kāi)發(fā)起因是VIRES公司在提供駕駛模擬器方案時(shí),發(fā)現(xiàn)不同工具的道路數(shù)據(jù)格式中需要包含邏輯內(nèi)容是基本一致的,為了方便在不同的駕駛模擬器間進(jìn)行道路數(shù)據(jù)的傳遞,VIRES公司與Daimler Driving Simulator部門(mén)決定開(kāi)發(fā)OpenDRIVE格式。轉(zhuǎn)交給ASAM組織后,ASAM組織同樣把OpenDRIVE定位為用于仿真測(cè)試的地圖格式。
? OpenDRIVE文件按XML格式編寫(xiě),文件擴(kuò)展名為.xodr。
3.OpenDRIVE實(shí)例
3.1簡(jiǎn)介
節(jié)點(diǎn)
? 該格式被組織在節(jié)點(diǎn)中,可以用用戶定義的數(shù)據(jù)進(jìn)行擴(kuò)展。這有利于個(gè)別應(yīng)用(通常是模擬)的高度專(zhuān)業(yè)化,同時(shí)保持不同應(yīng)用之間交換數(shù)據(jù)所需的互操作性。
參考線
? ASAM OpenDRIVE道路網(wǎng)是沿著參考線建模的,它是每條道路的核心部分。道路、車(chē)道,包括它們的高程剖面,都附著在參考線上。
Elements of ASAM OpenDRIVE? 代表特征的對(duì)象,如信號(hào)燈,可以通過(guò)使用參考線或全局坐標(biāo)系來(lái)放置,路網(wǎng)被放置在其中。這在上圖中可以看到。參考線(中間的藍(lán)線)位于道路的中心,車(chē)道(藍(lán)色和淺綠色)連接到這條參考線。道路旁邊的標(biāo)志被放置在s/t坐標(biāo)系中。
? 在ASAM OpenDRIVE中,幾條道路構(gòu)成了一個(gè)道路網(wǎng)絡(luò),并可以被連接起來(lái)。ASAM OpenDRIVE可以被看作是不同路段的建筑套件。整個(gè)道路網(wǎng)絡(luò)是由相互連接的各個(gè)部分組成的。
? 上圖顯示了各個(gè)路段是如何相互連接的,例如與一個(gè)交叉口。所示的XML片段簡(jiǎn)要介紹了如何在ASAM OpenDRIVE中使用道路段的鏈接。這些鏈接可以支持模擬交通的駕駛邏輯,特別是出于路由的目的,將更多的資源留給驗(yàn)證和開(kāi)發(fā)AD駕駛功能的實(shí)際工作。在路口,入口道路之間的每個(gè)可能的連接都通過(guò) "連接道路 "連接。由于這種機(jī)制,連接道路是ASAM OpenDRIVE中唯一具有重疊表面的道路。
? 在ASAM OpenDRIVE中,不僅道路被鏈接,而且道路之間的車(chē)道也被鏈接。這些車(chē)道鏈接可以再次支持模擬交通。當(dāng)連接道路的參考線和進(jìn)入路口的道路不一定對(duì)齊時(shí),它們對(duì)道路網(wǎng)的可視化也很重要(例如在路口的情況)。
與其他標(biāo)準(zhǔn)的關(guān)系
? ASAM OpenDRIVE的描述格式包含了道路網(wǎng)絡(luò)的所有靜態(tài)對(duì)象,可以真實(shí)地模擬車(chē)輛在道路上行駛。為了渲染完整的環(huán)境,需要額外的靜態(tài)三維路邊物體的描述格式,如樹(shù)木和建筑物。路面輪廓包括來(lái)自ASAM OpenCRG文件格式。駕駛模擬的動(dòng)態(tài)內(nèi)容,如車(chē)輛機(jī)動(dòng),可以用ASAM OpenSCENARIO來(lái)描述。這三個(gè)標(biāo)準(zhǔn)相互補(bǔ)充,涵蓋了環(huán)內(nèi)車(chē)輛模擬應(yīng)用的靜態(tài)和動(dòng)態(tài)內(nèi)容。
市場(chǎng)相關(guān)性
? ASAM OpenDRIVE是一個(gè)用于描述道路網(wǎng)絡(luò)的成熟標(biāo)準(zhǔn)。它已經(jīng)被許多知名的制造商和開(kāi)發(fā)ADAS和AD功能的公司使用,或在全球范圍內(nèi)進(jìn)行高精度的運(yùn)動(dòng)學(xué)測(cè)量。它正被用于公路和鐵路網(wǎng)絡(luò)。
參與的公司
? BMW AG, Daimler AG, AVL List GmbH, dSPACE GmbH, RA Consulting GmbH, Vector Informatik GmbH, VIRES Simulationstechnologie GmbH, virtualcitySYSTEMS GmbH, RWTH Aachen
其他語(yǔ)言
? ASAM OpenDRIVE V1.6.0現(xiàn)在有了中文版本。請(qǐng)?jiān)谟疫叺乃{(lán)色下載框中下載中文版本。中文版本將很快在C-ASAM網(wǎng)站上提供。
較早的版本
? ASAM在2018年被委托進(jìn)一步開(kāi)發(fā)OpenDRIVE(閱讀全文)。ASAM發(fā)布的第一個(gè)版本是ASAM OpenDRIVE V1.6。為了完整起見(jiàn),我們?cè)诰W(wǎng)站上提供了之前的版本OpenDRIVE V1.5和OpenDRIVE V1.4:
? OpenDRIVE V1.5和OpenDRIVE V1.4.是由VIRES Simulationstechnologie GmbH發(fā)布。這些版本是VIRES Simulationstechnologie GmbH的知識(shí)產(chǎn)權(quán)。ASAM e.V.不對(duì)完整性、正確性或任何其他問(wèn)題承擔(dān)任何責(zé)任。對(duì)于責(zé)任索賠、問(wèn)題或其他事項(xiàng),請(qǐng)聯(lián)系VIRES Simulationstechnologie GmbH(info(at)vires.com)。
? OpenDRIVE 1.6版包含了在1.5版中出現(xiàn)過(guò)的元素,但這些元素與1.4版不兼容。為了確保能與1.4版和1.5版兼容,這些元素在1.6版的XML模式中從技術(shù)上被定義為可選。在UML模型的注釋中,它們被標(biāo)記為“向后兼容的可選”。
3.2 實(shí)例
以Crossing8Course.xodr為例,闡述xodr的文件架構(gòu)。
其中橙色為必須部分,淡橙色為選填部分。
(1)header
<header> 元素是中的第一個(gè)元素。
header用于對(duì)文件的整體屬性進(jìn)行說(shuō)明。說(shuō)明了主版本(revMajor)、子版本(revMinor)、本路網(wǎng)的版本號(hào)(version)、數(shù)據(jù)庫(kù)創(chuàng)建時(shí)間/日期(date)、最大慣性y值(north)、最小慣性y值(east)、最小慣性x值(west)和最小慣性x值(west)
該版本為1.1
(2)road
路網(wǎng)在OpenDRIVE中用 <road> 元素來(lái)表示。每條道路都沿一條道路參考線延伸。一條道路必須(shall)擁有至少一條寬度大于0的車(chē)道。
OpenDrive中的道路可以(may)與真實(shí)路網(wǎng)中或?yàn)閼?yīng)用而設(shè)的路網(wǎng)中的道路相提并論。每條道路由一個(gè)或多個(gè) <road> 元素描述。一個(gè) <road> 元素可以(may)覆蓋一條長(zhǎng)路、交叉口之間較短的路,或甚至多條道路。只有在道路的屬性不能在先前 <road> 元素中得到描述或需要一個(gè)交叉口的情況下,才應(yīng)(should)開(kāi)始一個(gè)新的 <road> 元素。
road用于對(duì)路網(wǎng)中的道路進(jìn)行說(shuō)明。包括道路連接信息(link)、道路參考線信息(planView)、超高程信息(lateralProfile)、高程信息(elevationProfile)、車(chē)道信息(lanes)和表面信息(surface)以及道路上的物理和交通信號(hào)的信息(objects和signals)等。
(2.1)link
在OpenDRIVE中,道路連接用 <road> 元素里的 <link> 元素來(lái)表示。 <predecessor> 以及 <successor> 元素在 <link> 元素中被定義。對(duì)于虛擬和常規(guī)的交叉口來(lái)說(shuō), <predecessor> 以及 <successor> 元素必須使用(shall)不同的屬性組。
描述了本道路與其他道路的連接關(guān)系。中描述了本道路之前的道路id,中描述了本道路之后的道路id。(2.2)type
道路類(lèi)型(例如高速公路以及鄉(xiāng)村公路)定義了道路的主要用途以及相關(guān)的交通規(guī)則。道路類(lèi)型對(duì)于整個(gè)道路橫截面均有效。
通過(guò)在沿參考線的給定點(diǎn)上定義不同道路類(lèi)型,可(may)在 <road> 元素中根據(jù)需要改變道路類(lèi)型。道路類(lèi)型將持續(xù)有效,直到另一個(gè)道路類(lèi)型被定義。
在OpenDRIVE中,道路類(lèi)型用元素中的 <type> 元素來(lái)表示。道路類(lèi)型本身在@type屬性中被給定。
(2.3)planView
在OpenDRIVE中,參考線的幾何形狀用元素里的 <geometry> 元素來(lái)表示。
<planView> 元素是每個(gè) <road> 元素里必須要用到的元素。
(2.4)elevationProfile
The elevation profile record contains a series of elevation records which define the characteristics of the road’s elevation along the reference line.
高程剖面記錄包含一系列的高程記錄,定義了道路沿參考線的高程特征。
elevationProfile用來(lái)描述參考線上給定點(diǎn)處的高程元素(elevation)等信息,必須沿參考線按升序?qū)υ剡M(jìn)行定義。
(2.5)lateralProfile
The lateral profile record contains a series of superelevation and crossfall records which define the characteristics of the road surface’s banking along the reference line.
橫向剖面記錄包含一系列的超高程和橫斷面記錄,這些記錄定義了沿參考線的道路表面的銀行特征。
在OpenDRIVE中,超高程用元素中的 <superelevation> 元素來(lái)表示。
該屬性被定義為圍繞著s軸的路段傾斜角。必須(must)沿參考線按升序定義元素。元素的參數(shù)將持續(xù)有效,直到下一個(gè)元素開(kāi)始或道路參考線結(jié)束。道路的超高程程默認(rèn)為零。
lateralProfile用來(lái)描述超高程(superelevation)、形狀信息(shape)等信息,超高程從數(shù)學(xué)角度被定義為圍繞參考線的道路橫截面的傾斜角。這意味著超高程對(duì)于向右邊傾斜的道路具有正值,對(duì)于向左邊傾斜的道路具有負(fù)值。該屬性被定義為圍繞著s軸的路段傾斜角。必須沿參考線按升序定義元素。元素的參數(shù)將持續(xù)有效,直到下一個(gè)元素開(kāi)始或道路參考線結(jié)束。道路的超高程程默認(rèn)為零。shape屬性被定義為相對(duì)于參考水平面路段的路面。一個(gè)擁有不同t值的s位置上可存在多個(gè)形狀,從而對(duì)道路的彎曲形狀進(jìn)行描述。
(2.6)lanes
在OpenDRIVE中,車(chē)道用 <road> 元素里的 <lanes> 元素來(lái)表示。
中描述了道路的不同車(chē)道的信息。在OpenDRIVE中,所有道路都包含了車(chē)道。車(chē)道用 road元素里的lanes元素來(lái)表示。Lanes描述了車(chē)道組屬性(laneSection)。Type屬性描述了車(chē)道類(lèi)型,車(chē)道類(lèi)型描述了車(chē)道的主要用途及與其相對(duì)應(yīng)的交通規(guī)則。Link屬性描述了車(chē)道之間的連接情況。Width屬性定義了車(chē)道的寬度。Speed屬性定義了給定車(chē)道上允許的最大行駛速度。Border屬性是用來(lái)描述車(chē)道寬度的另一種方法,它并不會(huì)直接定義寬度,而是在獨(dú)立于其內(nèi)部邊界參數(shù)的情況下,對(duì)車(chē)道的外部界限進(jìn)行定義。material元素用來(lái)表示車(chē)道材質(zhì)。Access可以用來(lái)讓車(chē)道局限于特定的道路使用者。height元素可以用來(lái)表示車(chē)道高度。roadMark屬性可以用來(lái)定義車(chē)道外邊界線條的樣式。laneOffset元素可以來(lái)表示車(chē)道偏移。
(2.7)objects
在OpenDRIVE 中,物體用 <object> 元素中的 <objects> 元素來(lái)表示。其按每個(gè) <road> 元素被定義。
(2.8)signals
在OpenDRIVE中,標(biāo)志用 <road> 元素里的 <signals> 元素來(lái)表示。
對(duì)于交通信號(hào),中分別描述了不同交通信號(hào)的位置、高度和id等信息。
(3)controller
在OpenDRIVE中,控制器用 <OpenDRIVE> 元素里的 <controller> 元素來(lái)表示。
被引用標(biāo)志的ID存儲(chǔ)在 <controller> 元素的 <control> 元素中。
road標(biāo)簽中定義了紅綠燈的id和位置等,為了方便實(shí)現(xiàn)對(duì)紅綠燈相位的控制,需要配置。該標(biāo)簽中定義了controller的id和name,其下的control中,可以指定多個(gè)signal的id,從而實(shí)現(xiàn)對(duì)多個(gè)紅綠燈的同步控制。controller的相位順序和時(shí)長(zhǎng)需要在場(chǎng)景文件及OpenSCENARIO中配置。如下圖:
(4)junction
在OpenDRIVE中,交叉口用 <junction> 元素來(lái)表示。聯(lián)接道路則用 <junction> 元素中的 <connection> 元素來(lái)表示。OpenDRIVE并未特意將去路定義為元素或?qū)傩?#xff0c;來(lái)路也可被視作為去路,因此二者在此處可被相提并論。通往該道路的聯(lián)接道路將此類(lèi)道路隱性地定義為去路。
道路的描述中對(duì)不同的道路分別給出了其前后連接的道路,這對(duì)于一般的道路足以描述其連接關(guān)系,但是對(duì)于路口道路的連接,卻不能清楚的描述,于是需要使用junction。
junction包括交叉口的名稱(chēng)(name)、ID、類(lèi)型(type)、聯(lián)接道路信息(connection)等。incomingRoad為該連接路的來(lái)路的id,connectingRoad為該連接路的id。laneLink中描述來(lái)路和連接路的車(chē)道的連接關(guān)系,from為來(lái)路的車(chē)道id,to為與其連接的連接路的車(chē)道id。
參考文獻(xiàn)
OpenX系列標(biāo)準(zhǔn)介紹(1):OpenDRIVE介紹
ASAM OpenDRIVE?
OpenDRIVE 1.6 CN
OpenDRIVE 1.4-1.5
總結(jié)
以上是生活随笔為你收集整理的OpenX系列标准:OpenDRIVE标准简述的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: opendrive文件结构
- 下一篇: Eclipse 语言包安装 地址