路口識別&距離計算

路口識別&距離計算

來自專欄相信簡單的力量59 人贊了文章

項目說明:該項目使用單目攝影機對結構化道路進行路口識別&距離計算,尤其針對自動駕駛場地模型車比賽道路。

路口識別與路口距離計算 https://www.zhihu.com/video/1024705744045817856

目錄

  1. 目標
  2. 限制&條件
  3. 演算法邏輯
    1. 圖像預處理
    2. 特徵提取
    3. 特徵庫建立
    4. 路口識別和分類
    5. 距離計算

1. 目標

  • 判斷前方是否出現路口
  • 若前方出現路口,判斷是何種路口,該項目中主要針對如下圖所示的 4 種路口

圖一 目標路口類型

  • 同時計算路口與汽車的距離,該項目主要計算如圖兩個距離

圖二 待計算距離

2. 限制&條件

  • 使用單目攝影機
  • 路線清晰可見
  • 道路始終等寬

圖三為目標實現場景

圖三 目標實現場景

3.演算法邏輯

整個項目進行分為三部分,圖像預處理,特徵庫建立以及路口識別與定位演算法。

圖四為整個項目的演算法邏輯(德語)

圖四 項目演算法邏輯

  • 圖像預處理

本項目由於使用了廣角鏡頭,存在畸變,首先第一步需要將畸變去掉,效果如圖,去畸變前後效果如圖五

圖五 圖像去畸變前後對比

特徵提取建立在灰度圖上,如圖六所示

圖六 圖像灰度圖

將圖像進行逆透視變換是特徵提取的關鍵,逆透視變換前後對比如圖七所示

圖七 逆透視變換前後對比圖

以上,是每一幀圖片的預處理過程。

  • 特徵提取

該項目使用路口的角點作為特徵,對於不同類型的路口分別提取 4 個角點,角點的具體位置根據不同的路口類型不同,如圖八所示

圖八 特徵角點位置

這裡給出一個使用演算法得到圖片中角點的實例,如圖九所示

圖九 圖片角點提取

項目不需要對所有角點進行提取,只提取圖片部分區域

  • 特徵庫建立

提取出來的角點只需要 4 個作為特徵角點,也就是圖十中紅色圓圈包圍的角點

圖十 提取特徵角點

將得到的特徵角點位置連同路口類型組成一個 list,如下:

[(x_0,y_0),(x_1,y_1),(x_2,y_2),(x_3,y_3),Kreuzung]

將這樣的一個結構存入一個 txt 文件,按照同樣的方法建立好所有路口的特徵庫,特徵庫部分截圖如圖十一所示

圖十一 部分特徵庫截圖

  • 路口識別和分類

特徵庫建立之後,就可以實時判斷路口類型和距離計算,路口類型判斷思路為:實時圖片傳入,進行同樣的圖像預處理,然後提取圖片中固定區域的所有角點 P1, P2, P3, P4, P5···(結合圖十二所示進行理解),這些點與特徵庫裡面第一個特徵進行比較,第一個特徵 4 個角點位置 A1, B1, C1, D1,分別進行實時圖片幀與特徵一中角點 A1, B1, C1, D1 距離最近的點,其距離和 Sum1 為圖片幀與特徵一的距離,然後同樣的方法找出圖片幀與特徵庫所有特徵的距離,將距離最小的特徵對應的路口類型作為該圖片幀的路口類型,如圖十三所示

圖十二 圖片幀與特徵一的距離計算邏輯

圖十三 距離最近的特徵

  • 距離計算

每一種路口類型選取一個特徵角點作為距離計算的參考點,不同路口類型的參考點如圖十四所示

選擇一個路口,按照圖十五所示的原理進行距離計算

對於該路口類型,距離計算公式如下

??=(?????_0)???_??+??_??

??=(??_0???/2)???_??


以上為整個項目大致的設計思路,具體實現很多細節未體現。歡迎轉載請註明出處,謝謝~


推薦閱讀:

App Store 十周年:繁與簡
新技術科技股流失國外上市傷害資本市場發展
如何靠譜地變大(男性篇)———— | 性 情主題站 | 果殼網 科技有意思
IPV6,最好100年後也別用
購買攜帶型標籤印表機的時候應該注意那些參數?

TAG:科技 | 計算機視覺 |