国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

百度Apollo中軌跡的表示方式

這篇具有很好參考價(jià)值的文章主要介紹了百度Apollo中軌跡的表示方式。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

? ? 本文只是對(duì)于初學(xué)者的一種直觀普及,以及對(duì)于規(guī)劃路徑可視化的另外一種體會(huì)。對(duì)于做規(guī)劃控制的工程師來(lái)說(shuō)太簡(jiǎn)單。只是本人初學(xué)者,在學(xué)習(xí)控制模塊時(shí)候?qū)τ谀K輸入?yún)?shù)有所迷惑。所以記錄一下。

? ? 首先明確軌跡表達(dá)的方式,以及對(duì)于控制模塊輸入的軌跡表達(dá)方式:

message ADCTrajectory
{
    .......
    repeated apollo.common.TrajectoryPoint trajectory_point;
    repeated apollo.common.PathPoint path_point;
    .......
}

message TrajectoryPoint
{
? ? // path point
? ? optional PathPoint path_point = 1;
? ? // linear velocity
? ? optional double v = 2;? // in [m/s]
? ? // linear acceleration
? ? optional double a = 3;
? ? // relative time from beginning of the trajectory
? ? optional double relative_time = 4;
? ? // longitudinal jerk
? ? optional double da = 5;
? ? // The angle between vehicle front wheel and vehicle longitudinal axis
? ? optional double steer = 6;
}
message PathPoint
{
? ? // coordinates
? ? optional double x = 1;
? ? optional double y = 2;
? ? optional double z = 3;

? ? // direction on the x-y plane
? ? optional double theta = 4;
? ? // curvature on the x-y planning
? ? optional double kappa = 5;
? ? // accumulated distance from beginning of the path
? ? optional double s = 6;
? ? // derivative of kappa w.r.t s.
? ? optional double dkappa = 7;
? ? // derivative of derivative of kappa w.r.t s.
? ? optional double ddkappa = 8;
? ? // The lane ID where the path point is on
? ? optional string lane_id = 9;
? ? // derivative of x and y w.r.t parametric parameter t in CosThetareferenceline
? ? optional double x_derivative = 10;
? ? optional double y_derivative = 11;
}

? ? 可以看到ADCTrajectory表示一次規(guī)劃的結(jié)果,其中的repeated字段表示數(shù)組。有多個(gè)軌跡點(diǎn)和路徑點(diǎn)組成一段規(guī)劃的路徑。

1,這里有個(gè)理解的誤區(qū):ADCTrajectory也可以用來(lái)表示參考線,也可以用來(lái)表示EGO的實(shí)際運(yùn)行路徑。

2,TrajectoryPoint中既有Frenet坐標(biāo)系下的參數(shù):方位角以及曲率也有實(shí)際的笛卡爾坐標(biāo)系下的位置。以上所有信息都來(lái)自上游的規(guī)劃模塊。

3,這些軌跡點(diǎn)中包含該點(diǎn)的速度加速度以及在該點(diǎn)的距離信息。這個(gè)距離后面會(huì)分析。

? ? 有了以上信息后,發(fā)現(xiàn)控制模塊的很多參數(shù)是已知的,比如速度,距離等信息。所有后端的控制模塊的邏輯只需要更具這些軌跡中的要求去執(zhí)行。至于規(guī)劃的路徑中各個(gè)點(diǎn)的速度,距離,方位角信息就是規(guī)劃模塊計(jì)算處理的結(jié)果。在做模擬測(cè)試的時(shí)候可以模擬路徑,按照設(shè)計(jì)來(lái)規(guī)劃,同時(shí)預(yù)期的結(jié)果可以通過(guò)數(shù)值分析看看是不是正確。

? ? 分析一下control中的

? ? apollo_baidu-master/modules/control/testdata/lateral_controller_test/1_planning.pb.txt文件。

? ? 這個(gè)文件是測(cè)試文件,記錄了一段完整的規(guī)劃路徑。這個(gè)文件是txt文件格式,可以通過(guò)protobuf的API解析?!?strong>Apollo中的proto消息太多,又相互include。所以編譯的時(shí)候發(fā)現(xiàn)proto轉(zhuǎn)換后的.cc文件太多,編譯太費(fèi)事。其實(shí)可以學(xué)習(xí)百度使用Bazel的編譯方式,每個(gè)最小化模塊都編譯為動(dòng)態(tài)庫(kù)。只要做增量編譯就行,縮短了后續(xù)編譯的時(shí)間。】

? ? 首先解析的X,Y的笛卡爾坐標(biāo):

百度Apollo中軌跡的表示方式,算法

? ? ?發(fā)現(xiàn)是一條近似的直線,也驗(yàn)證了這條規(guī)劃軌跡是做縱向控制的。這個(gè)圖的坐標(biāo)單位沒(méi)有統(tǒng)一,所以無(wú)法從圖片中獲取斜率。斜率的計(jì)算比較粗略。應(yīng)為認(rèn)為是直線,在線上任取三個(gè)點(diǎn),三個(gè)點(diǎn)分別和前一個(gè)點(diǎn)(path_point)做delt(x)和delt(y),隨后求出delt(y)/delt(x)。計(jì)算出斜率:3.681。

? ? 其次看一下速度:

百度Apollo中軌跡的表示方式,算法

? ? 速度從0時(shí)刻到424時(shí)刻也為線性增加,后面趨于平穩(wěn)??梢院竺娴募铀俣茸鲆幌陆Y(jié)合分析。

? ? 加速度:

百度Apollo中軌跡的表示方式,算法

? ? ?V= a(t)的速度公式可以看出:隨著時(shí)間的增加,只要a>0,么V是增加的。在0-104區(qū)間 加速度減小,128-250區(qū)間加速度增加。粗略看下速度的變化圖:速度變化變得平緩。從區(qū)間 410開(kāi)始到結(jié)束,加速度又波動(dòng),但是基本在沒(méi)有加速的數(shù)值間震蕩。通過(guò)速度圖我們看到速度區(qū)域平緩,沒(méi)有明顯增加。

? ? 這里有兩個(gè)問(wèn)題:

? ? (1)加速度抖動(dòng)會(huì)不會(huì)影響直接的控車(chē)效果,車(chē)輛會(huì)不會(huì)出現(xiàn)抖動(dòng)。

? ? (2)加速度數(shù)值和V的計(jì)算關(guān)系不能完全安V = a(t)來(lái)獲取??赡芤禂?shù)用來(lái)矯正,或者采樣的精度不夠。

? ? 最后看下距離圖:

百度Apollo中軌跡的表示方式,算法

? ? 這應(yīng)該就是S-T,距離的累加呈線性增加關(guān)系。表示車(chē)輛在坐標(biāo)系的運(yùn)動(dòng)沒(méi)有橫向的的分量。做的直線運(yùn)動(dòng)。隨著時(shí)間的增加,距離在增加。

? ? ?最后講一下Frenet坐標(biāo)系的理解。公式不推了網(wǎng)上很多。問(wèn)題在為什么用這個(gè)笛卡爾和Frenet轉(zhuǎn)換的公式,以及什么地方使用。

? ? SL坐標(biāo)和frenet坐標(biāo)系沒(méi)有直接關(guān)系。frenet是自然坐標(biāo)系的一種表示,就是把物體的運(yùn)動(dòng)做切向和法線方向的兩個(gè)分解。在空間中還有第三個(gè)分量,垂直于平面的一個(gè)分量。和笛卡爾坐標(biāo)系的關(guān)系如圖:

百度Apollo中軌跡的表示方式,算法

? ??給定一個(gè)點(diǎn),就可以判斷這個(gè)點(diǎn)在參考線上的投影點(diǎn)之間的距離(法線方向),至于路程距離(S),其實(shí)沒(méi)明白為什么可以通過(guò)參考線的frenet坐標(biāo)推算出車(chē)輛行駛距離(S)。車(chē)輛完全可以不按照參考路徑來(lái)行駛。

? ? XYZ就是笛卡爾坐標(biāo)系,xyz就是運(yùn)動(dòng)軌跡上一點(diǎn)的切線和法線以及垂直這個(gè)平面的z向量。這個(gè)坐標(biāo)系通過(guò)積分可以計(jì)算出曲線上兩個(gè)點(diǎn)的距離。就是我們說(shuō)的S。對(duì)于S求導(dǎo)可以得到速度,在對(duì)于S求二階導(dǎo)可以得到加速度。

? ? 我們經(jīng)??吹絊L坐標(biāo)系,這個(gè)坐標(biāo)系僅僅只是和frenet的計(jì)算結(jié)果有關(guān)系(距離)。這里推薦一篇“古月居”的博客,其中的效果圖演示了SL的關(guān)系。

Frenet坐標(biāo)系下的無(wú)人車(chē)軌跡規(guī)劃詳細(xì)講解與ROS實(shí)現(xiàn) - 古月居 (guyuehome.com)

? ?S代表了路程的的累加,如同前文分析的情況:當(dāng)車(chē)輛直線勻速運(yùn)動(dòng)時(shí),S會(huì)隨時(shí)間的增加呈線性增加的關(guān)系。這里其實(shí)還有一點(diǎn)當(dāng)車(chē)輛沿直線變加速度后,雖然法線方向沒(méi)有分量,但是單位時(shí)間內(nèi)行駛的距離一定會(huì)變化,因此S的斜率會(huì)改變。SL坐標(biāo)中的S變換不能體現(xiàn)出車(chē)輛的實(shí)際運(yùn)行情況。只能判斷行駛距離。應(yīng)為ST的橫坐標(biāo)是時(shí)間,而SL的橫坐標(biāo)是參考點(diǎn)法線方向的距離。

? ?L代表了法線方向的位移距離,當(dāng)法線方向有加速度后。L就會(huì)有數(shù)值(橫向距離)。 這里開(kāi)始疑惑了:參考線SL的坐標(biāo)形式是曲線還是直線?希望知道的老師可以回答一下,謝謝。任意一個(gè)參考線上的點(diǎn)L的位移是0。

百度Apollo中軌跡的表示方式,算法

? ?可以看下這個(gè)函數(shù)內(nèi)部如何使用公式。目睹其實(shí)求出S L?以及SL各自的導(dǎo)數(shù)。

void TrajectoryAnalyzer::ToTrajectoryFrame(const double x, const double y,
													const double theta, const double v,
													const PathPoint &ref_point,
													double *ptr_s, double *ptr_s_dot,
													double *ptr_d,
													double *ptr_d_dot) const 

? ? 文章很多知識(shí)點(diǎn)還沒(méi)有徹底說(shuō)明白,如果有誤歡迎指正交流,謝謝。

? ? 隨后推薦一篇文章:

? ??Frenet坐標(biāo)系及其與笛卡爾坐標(biāo)轉(zhuǎn)換(1)原理 - 知乎 (zhihu.com)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-637116.html

到了這里,關(guān)于百度Apollo中軌跡的表示方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 百度Apollo:自動(dòng)駕駛技術(shù)的未來(lái)應(yīng)用之路

    隨著科技的不斷進(jìn)步,自動(dòng)駕駛技術(shù)正逐漸成為現(xiàn)實(shí),顛覆著我們的出行方式。作為中國(guó)領(lǐng)先的自動(dòng)駕駛平臺(tái),百度Apollo以其卓越的技術(shù)和開(kāi)放的合作精神,正在引領(lǐng)著自動(dòng)駕駛技術(shù)的未來(lái)應(yīng)用之路。本文將從城市交通、出行體驗(yàn)和環(huán)境保護(hù)等方面,為您解析百度Apollo在自動(dòng)

    2024年02月11日
    瀏覽(25)
  • 百度Apollo:引領(lǐng)自動(dòng)駕駛技術(shù)創(chuàng)新的先鋒

    大家好,我是蘿卜頭不吃蘿卜頭,今天和大家分享一下我學(xué)習(xí)百度Apollo自動(dòng)駕駛的心得。 在七月份的時(shí)候,我收到了Apollo開(kāi)發(fā)者社區(qū)的邀請(qǐng),進(jìn)行學(xué)習(xí)Apollo自動(dòng)駕駛汽車(chē)的2023星火培訓(xùn)訓(xùn)練,在剛收到的時(shí)候覺(jué)得自己作為一名前端開(kāi)發(fā)人員,學(xué)習(xí)這個(gè)領(lǐng)域有點(diǎn)胡鬧,在自己的

    2024年02月11日
    瀏覽(30)
  • 百度Apollo:引領(lǐng)自動(dòng)駕駛技術(shù)的創(chuàng)新與突破

    隨著科技的迅猛發(fā)展,自動(dòng)駕駛技術(shù)正成為未來(lái)交通領(lǐng)域的重要發(fā)展方向。在這個(gè)領(lǐng)域中,百度Apollo作為中國(guó)領(lǐng)先的自動(dòng)駕駛平臺(tái),以其卓越的創(chuàng)新能力和開(kāi)放合作精神,在推動(dòng)自動(dòng)駕駛技術(shù)的發(fā)展上有著舉足輕重的地位。本文將從技術(shù)創(chuàng)新、開(kāi)放合作、生態(tài)建設(shè)和安全可靠

    2024年02月11日
    瀏覽(23)
  • 百度Apollo學(xué)習(xí)心得:探索自動(dòng)駕駛技術(shù)的前沿之旅

    百度Apollo是一項(xiàng)引領(lǐng)自動(dòng)駕駛技術(shù)發(fā)展的開(kāi)放平臺(tái),通過(guò)深度學(xué)習(xí)、感知與決策、定位與控制等關(guān)鍵技術(shù),為開(kāi)發(fā)者提供了豐富的工具和資源。在學(xué)習(xí)百度Apollo的過(guò)程中,我深刻認(rèn)識(shí)到自動(dòng)駕駛技術(shù)的重要性和挑戰(zhàn),并積累了寶貴的學(xué)習(xí)心得。本文將分享我的學(xué)習(xí)心得,希望

    2024年02月11日
    瀏覽(28)
  • Apollo 7周年大會(huì):百度智能駕駛的展望與未來(lái)

    Apollo 7周年大會(huì):百度智能駕駛的展望與未來(lái)

    本心、輸入輸出、結(jié)果 編輯 | 簡(jiǎn)簡(jiǎn)單單 Online zuozuo 地址 | https://blog.csdn.net/qq_15071263 個(gè)人簡(jiǎn)介 : 簡(jiǎn)簡(jiǎn)單單Online zuozuo,目前主要從事 Java 相關(guān)工作,商業(yè)方向?yàn)?B、G 端,主要使用Java、Python 進(jìn)行日常開(kāi)發(fā),喜歡探索各個(gè)方面的內(nèi)容,對(duì)很多的方向、內(nèi)容感興趣 :目前對(duì) AIGC、云

    2024年04月28日
    瀏覽(22)
  • 內(nèi)卷的上海車(chē)展上,百度Apollo帶來(lái)新型開(kāi)放整零關(guān)系

    內(nèi)卷的上海車(chē)展上,百度Apollo帶來(lái)新型開(kāi)放整零關(guān)系

    /nbsp; 導(dǎo)讀 nbsp;/ 汽車(chē)的智能化發(fā)展已然成為了當(dāng)前市場(chǎng)最有熱度的話題,更有希望引領(lǐng)新一代產(chǎn)業(yè)革命的浪潮。百度作為最早探索智能駕駛領(lǐng)域的企業(yè)之一,多年來(lái)始終打磨技術(shù)產(chǎn)品,已經(jīng)形成了全棧的解決方案,從而幫助企業(yè)造好車(chē)。 在上海車(chē)展前夕,百度Apollo也舉辦了汽

    2023年04月24日
    瀏覽(26)
  • 使用百度地圖路書(shū)為騎行視頻添加同步軌跡

    使用百度地圖路書(shū)為騎行視頻添加同步軌跡

    使用 gopro 記錄騎行過(guò)程 (參考《使用二手 gopro 做行車(chē)記錄儀 》),事后將視頻文件導(dǎo)出來(lái)回顧整個(gè)旅程,會(huì)發(fā)現(xiàn)將它們與地圖對(duì)應(yīng)起來(lái)是一件困難的事。想要視頻和地圖對(duì)應(yīng),首先需要上報(bào)每個(gè)時(shí)刻的位置,gopro 本身是支持的,然而要到版本 5 才可以,我的 3+ 太老了沒(méi)這能力

    2024年02月16日
    瀏覽(23)
  • JAVA開(kāi)發(fā)(通過(guò)Apollo注入配置信息的幾種方式)

    JAVA開(kāi)發(fā)(通過(guò)Apollo注入配置信息的幾種方式)

    在springCloud中有一個(gè)重要的組件就是配置中心,config:server,用于配置springboot中需要注入的各種配置項(xiàng)。但是現(xiàn)在發(fā)現(xiàn)越來(lái)越多的企業(yè)使用Apollo進(jìn)行集成。博主在開(kāi)發(fā)中也是使用Apollo進(jìn)行配置。本文總結(jié)Apollo的的使用,集成到springboot,和注入方式等。 ? Apollo是攜程框架部門(mén)研

    2024年02月09日
    瀏覽(23)
  • Apollo星火計(jì)劃學(xué)習(xí)筆記——Apollo開(kāi)放空間規(guī)劃算法原理與實(shí)踐

    Apollo星火計(jì)劃學(xué)習(xí)筆記——Apollo開(kāi)放空間規(guī)劃算法原理與實(shí)踐

    Apollo星火計(jì)劃課程鏈接如下 星火計(jì)劃2.0基礎(chǔ)課:https://apollo.baidu.com/community/online-course/2 星火計(jì)劃2.0專(zhuān)項(xiàng)課:https://apollo.baidu.com/community/online-course/12 ????開(kāi)放空間算法的配置主要在 valet_parking_config.pb.txt 中,分為4個(gè)部分: OPEN_SPACE_ROI_DECIDER 、 OPEN_SPACE_TRAJECTORY_PROVIDER 、 OPE

    2023年04月10日
    瀏覽(26)
  • 圖的分類(lèi)及表示方式

    圖的分類(lèi)及表示方式

    圖是描述復(fù)雜事務(wù)的數(shù)據(jù)表示形式,由節(jié)點(diǎn)和邊組成,數(shù)學(xué)上一般表述為G(V,E)。其中的V(vertical)代表節(jié)點(diǎn),可被理解為事物;E(edge)代表邊,描述的是兩個(gè)事物之間的關(guān)系。例如一個(gè)圖的社交網(wǎng)絡(luò)圖,每個(gè)人都可視為節(jié)點(diǎn),而人與人之間的關(guān)系可被視為邊。 節(jié)點(diǎn)的鄰

    2024年02月11日
    瀏覽(19)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包