日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

车道线曲线拟合方法

發(fā)布時間:2023/11/28 生活经验 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 车道线曲线拟合方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

車道線曲線擬合方法

一.車道線擬合算法

背景技術(shù):在車輛行駛過程中,為了更好的了解并預(yù)測周圍的環(huán)境信息,對車道線的曲線擬合是必要的。將采集來的車道線數(shù)據(jù)進行曲線擬合可以很好的估計車道線的參數(shù)信息,得知偏移量、傾斜角、曲率半徑等信息,從而預(yù)測車道線的走向,為駕駛員或車輛自動控制系統(tǒng)提供幫助。現(xiàn)有的主流算法是將采集的車道線數(shù)據(jù)投影到鳥瞰圖后直接用最小二乘法做三次曲線的擬合。這樣做的優(yōu)點是簡單快捷,但缺點包括:視頻中同一條車道線在連續(xù)幾幀的圖像中擬合的結(jié)果有較大的差別,結(jié)果不穩(wěn)定,遠端有擺動的情況。

經(jīng)典擬合算法

一種車道線曲線擬合方法。本方法的步驟主要包括五步:

第一步從視頻中獲取當前幀和前2?5幀圖像中各條車道線的像素坐標,并將它們投影到鳥瞰圖上;

第二步對于每條車道線,利用當前幀和前2?5幀的鳥瞰圖坐標用最小二乘法進行三次曲線擬合;

第三步對于每條車道線,保留第二步中結(jié)果的一部分參數(shù)以及計算時用到的系數(shù)矩陣;

第四步在第二步中保留的參數(shù)的基礎(chǔ)上,聯(lián)立所有幀中的所有車道線,用最小二乘法做最終的擬合,其中計算所需的矩陣由第三步中保留的參數(shù)和矩陣直接得到;

第五步通過第四步的計算結(jié)果,得到當前幀各條車道線的最終擬合結(jié)果。本發(fā)明用于車道線曲線擬合。

車道線檢測實驗筆記

二. 基于Catmull_Rom樣條曲線的車道線檢測

  1. 樣條曲線模型引入

Catmull_Rom樣條曲線擬合是曲線插值技術(shù)的一種,該插值技術(shù)能經(jīng)過所給的所有控制點。BY THE WAY,很多插值技術(shù)可以參考Catmull_Rom樣條曲線擬合方法需要至少四個控制點,公式如下:

其中,t屬于[0,1](也就是0-1中每個t值可能對應(yīng)所求曲線中的某點,其取值越多,曲線越密)。實際上,四個控制點,曲線只會經(jīng)過其中兩個控制點,如現(xiàn)在有控制點A,B,C,D,則最后的曲線擬合結(jié)果將如下:

得到的事BC之間的擬合曲線。那么若要得到ABCD的擬合曲線應(yīng)該怎么辦呢。實際上,引入兩個新的控制點A’,D’即可,A’由AB計算而得,D’由CD計算而得,例如,A’計算如下:

A’.x = A.x + (A.x - B.x)

A’.y = A.y + (A.y - B.y)

B’點計算類似。于是,由A’ABC可以得到AB曲線,由ABCD可以得到BC曲線,由BCDD’可以得到CD曲線,經(jīng)過三次計算,可以得到ABCD曲線。

在一張空白圖上,計算經(jīng)過(50,50),(90,120),(70,200)三點的Catmull_Rom樣條曲線。

貝塞爾曲線只會穿過首尾兩個控制點而不過中間的控制點,在某些場合希望曲線穿過所有控制點的話可以使用catmull-rom spline(簡稱CR-Spline)

CR-Spline需要至少4個控制點,首尾兩個控制點為輔助點,曲線不會穿過,其余控制點在t=[0,1]之間曲線會穿過(我喊作路徑點),t=0時值等于第2個頂點,而t=1時值等于倒數(shù)第2個頂點

為了接口友好,通常都會約定傳遞給插值函數(shù)的參數(shù)為曲線所經(jīng)過的路徑點而不包含輔助點,兩個輔助點可以根據(jù)已有的路徑點計算出來。

一般情況計算兩個輔助點只需要分別在首尾方向作延伸就行了:p0=p1+(p1-p2),pN+1=pN+(pN-pN-1)

如果傳入的控制點首尾相等形成閉合環(huán),那么不用計算,直接取值p0=pN-1,pN=p1就行

  1. 基于Catmull_Rom樣條曲線的車道線檢測

2.1. 基本思路

有了Catmull_Rom樣條曲線的基礎(chǔ),那么車道線檢測實際上就是找到合適的控制點!

給出基于Catmull_Rom樣條曲線的車道線檢測的基本方法(除去預(yù)處理過程):

(1)Hough變換直線檢測,將兩條主車道線檢測出來,直線記為L1,L2;

(2)判斷是車道線是直線還是曲線;

(3)若車道線是曲線,找到三個控制點P1,P2,P3;

(4)通過三個控制點,擬合Catmull_Rom樣條曲線,得到結(jié)果

2.2. 實驗示例

按照此特性,若從上往下檢測(即從(x = 0,y = 0)開始 x++,y++到(x = w,y = h)),直線的Hough檢測結(jié)果將會基本吻合實際結(jié)果,即在檢測結(jié)果點的周圍,都將有實際點的存在;而曲線的Hough檢測結(jié)果,將會先出現(xiàn)檢測結(jié)果周圍沒有實際點,檢測結(jié)果點周圍才會有實際點存在。

定義:檢測結(jié)果點吻合:若檢測點周圍八領(lǐng)域內(nèi)存在實際點,則代表檢測點結(jié)果吻合。

于是該問題轉(zhuǎn)化為:從圖頂向下搜索,能否找到P3點,使得P3點上部分一段區(qū)域(給定一個長度閾值alph1)檢測結(jié)果點都不吻合(引入容錯因子,防止噪聲theta),P3點下部分一段區(qū)域(同樣給定一個長度閾值alph2)檢測結(jié)果點吻合。若能找到P3點,則該車道線是曲線,否則,該車道線是直線!

找到控制點P1,P2,P3:

P3控制點:實際上,步驟(2)中已經(jīng)找到了其中一個控制點P3,P3點可以作為直線部分和曲線部分的分界點,P3以上部分擬合曲線,P3一下部分保留Hough變換的直線檢測結(jié)果;

P1控制點:我們注意到,可以取遠端兩車道的消失點作為控制點P1。

具體搜索方法:

1>找到Hough變換得到的兩直線的交點O。

2>從O點所在行向下搜索,找到P1。(從左往右搜索,第一個遇到的點即為P1點)

P2控制點:得到了P1,P3兩點,則取P1,P3中間的一行搜索兩車道的P2點!

經(jīng)過三個控制點P1,2,3,使用Catmull_Rom樣條曲線擬合得到結(jié)果:

結(jié)論:

(1)從結(jié)果上來看,能得到曲線,擬合效果并不是很好,但是提升空間很大,比如增多控制點會讓曲線擬合更為精準!

(2)控制點尋找的方法仍需要斟酌,因為道路的情況及其復(fù)雜,所以需要針對可想的所有情況進行模擬!

總結(jié)

以上是生活随笔為你收集整理的车道线曲线拟合方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。