0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用攝像頭圖像的車道檢測實(shí)用算法

新機(jī)器視覺 ? 來源:決策智能與機(jī)器學(xué)習(xí) ? 作者:Ethon ? 2022-07-05 15:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

車道識(shí)別是自動(dòng)駕駛領(lǐng)域的一個(gè)重要問題,今天介紹一個(gè)利用攝像頭圖像進(jìn)行車道識(shí)別的實(shí)用算法。該算法利用了OpenCV庫和Udacity自動(dòng)駕駛汽車數(shù)據(jù)庫的相關(guān)內(nèi)容。

該算法包含以下步驟:

攝像頭校準(zhǔn),以移除鏡頭畸變(Lens distortion)的影響

圖像前處理,用于識(shí)別車道線

道路視角變換(Perspective transform)

車道線檢測

車輛定位和車道半徑計(jì)算

01 攝像頭校準(zhǔn)

攝像頭輸出的視頻可以看做一系列圖像的時(shí)間序列。鏡頭的結(jié)構(gòu)特性造成利用針孔攝像機(jī)拍攝的圖像容易發(fā)生徑向畸變,導(dǎo)致根據(jù)物體與光軸的距離而導(dǎo)致不一致的放大。

以下圖片展示了兩種典型的徑向偏差。

32121006-fa0d-11ec-ba43-dac502259ad0.jpg

為了 正確的識(shí)別圖像中的車道,首先需要消除圖像中的徑向偏差。計(jì)算機(jī)視覺專家們找到了一種有效的方式來修正徑向偏差:首先將圖像轉(zhuǎn)換成棋盤模型,然后校正攝像頭,使獲得的圖像中白色和黑色格子達(dá)到相同規(guī)尺度。 為了修正失真效應(yīng),需要識(shí)別棋盤的中心并利用期望的棋盤尺度來計(jì)算失真系數(shù),并用其來消除圖像的徑向失真。

3226477e-fa0d-11ec-ba43-dac502259ad0.jpg

在上圖中,最左邊的圖像顯示了原始的失真圖像,最右側(cè)的圖可以看出圖像頂部的角度扭曲,中間的圖像是經(jīng)過攝像頭校準(zhǔn)后的未失真圖像。 OpenCV的findChessBoardCorners和calibrateCamera函數(shù)可以用來實(shí)現(xiàn)以上的攝像頭校準(zhǔn)過程。 校準(zhǔn)完攝像頭后,我們用真實(shí)的汽車攝像頭圖像來驗(yàn)證下效果,結(jié)果如下。

32357f78-fa0d-11ec-ba43-dac502259ad0.jpg

02 圖像預(yù)處理

解決了攝像頭圖像失真問題后,我們繼續(xù)探索檢測車道的算法。在計(jì)算機(jī)視覺領(lǐng)域,分離和檢測對(duì)象的一種常用方法是使用顏色變換和梯度來生成一個(gè)具有過濾閾值的二值化圖像。

對(duì)于顏色變換,我們嘗試了HSL、LAB和LUA三種顏色空間,以找出哪一種最適合于過濾在道路上的車道線的像素。HSL:通過對(duì)色相(H)、飽和度(S)、明度(L)三個(gè)顏色通道的變化以及它們相互之間的疊加來得到各式各樣的顏色的LAB:由亮度(L)和有關(guān)色彩的A, B三個(gè)要素組成。L表示亮度(Luminosity),A表示從洋紅色至綠色的范圍,B表示從黃色至藍(lán)色的范圍LUV:由CIE XYZ空間經(jīng)簡單變換得到,具視覺統(tǒng)一性。L表示物體亮度,U和V是色度 經(jīng)過試驗(yàn),我們發(fā)現(xiàn)LAB的B道和LUV的L通道是識(shí)別車道線的最佳組合。 接下來,我們?cè)囼?yàn)了Sobel梯度濾波器。圖像梯度度量了顏色變化的方向強(qiáng)度。Sobel是一種利用高斯平滑和微分運(yùn)算來降低噪聲影響的梯度濾波器。

3243e4aa-fa0d-11ec-ba43-dac502259ad0.jpg

03 視角變換

車道檢測的難點(diǎn)在于準(zhǔn)確獲得車道線的方向以及角度。在攝像頭的默認(rèn)視角下,遠(yuǎn)離攝像機(jī)的物體顯得更小,同時(shí)車道線在遠(yuǎn)離汽車的方向逐漸相交,這和實(shí)際情況是不符的。解決這種視點(diǎn)扭曲的一種方法是改變圖像的視角,比如可以從上往下看(鳥瞰圖)。

OpenCV提供了getPerspectiveTransform 和 warpPerspective函數(shù),可用于進(jìn)行圖像的視角變換。首先,我們?cè)趫D像中選擇想要變換的區(qū)域,在下圖中,我們選擇了汽車前面的車道線部分。

3250774c-fa0d-11ec-ba43-dac502259ad0.jpg

接下來,選擇代表目標(biāo)空間的點(diǎn)集,在本例中,任何矩形內(nèi)的點(diǎn)集都可以。我們可以使用warpPerspective函數(shù)將選定區(qū)域變換到我們選擇的視角中。 下圖顯示了兩條不同路段的車道線進(jìn)行視角變換后的結(jié)果。

325c969e-fa0d-11ec-ba43-dac502259ad0.jpg

04 車道檢測

下面,我們正式開始進(jìn)行車道檢測。在前面的各步驟中,我們進(jìn)行了圖像的二元閾值化和視角變換,最終獲得一個(gè)黑白圖像,其中白色的像素代表我們?cè)噲D檢測的車道線的部分。

接下來,我們需要找到一個(gè)最佳起始點(diǎn)來尋找屬于左車道線的像素和屬于右車道線的像素。一種有效的方法是生成圖像中車道線像素的直方圖。直方圖應(yīng)該有兩個(gè)尖峰,各代表一條車道線,左邊的尖峰是左邊的車道線,右邊的尖峰是右邊的車道線。

3269eeca-fa0d-11ec-ba43-dac502259ad0.png

然后將兩個(gè)峰值的位置作為起始點(diǎn)來搜索屬于每條車道線的像素。我們采用了滑動(dòng)窗口搜索技術(shù),它從底部開始,迭代地掃描到圖像的頂部,并將檢測到的像素添加到列表中。如果在一個(gè)窗口中檢測到足夠數(shù)量的像素,那么下一個(gè)窗口將以它們的平均位置為中心,這樣我們就沿著像素的路徑尋遍整個(gè)圖像。 在我們檢測到每個(gè)車道線的像素之后,我們就可以通過這些點(diǎn)來擬合一個(gè)多項(xiàng)式,從而產(chǎn)生一條平滑曲線,從而實(shí)現(xiàn)車道線的最佳近似。 下面的圖像展示了滑動(dòng)窗口技術(shù)的作用,多項(xiàng)式曲線通過檢測到的車道線像素?cái)M合獲得(紅色為左車道像素,藍(lán)色為右車道像素)。

327d7012-fa0d-11ec-ba43-dac502259ad0.jpg

下面是滑動(dòng)窗口搜索技術(shù)的另一個(gè)視圖,高亮顯示并填充搜索區(qū)域:

3293b5de-fa0d-11ec-ba43-dac502259ad0.png

05 車輛/車道線位置

最后,利用兩個(gè)檢測到的車道線的位置,并假設(shè)攝像頭位于圖像的中心位置,可以計(jì)算出汽車相對(duì)于車道的位置。根據(jù)圖像的分辨率,能夠進(jìn)行從像素到米的換算。

此外,利用尺度測量,我們還可以通過擬合一個(gè)新的多項(xiàng)式到物理空間來計(jì)算車道線的曲率,然后計(jì)算曲率半徑。這條線的曲率半徑就是這兩個(gè)半徑的平均值,下圖顯示了兩條車道線的曲線半徑和中心偏移量(圖像中不可見)。

32b4a6cc-fa0d-11ec-ba43-dac502259ad0.jpg

06 結(jié)果

以上介紹了自動(dòng)駕駛中進(jìn)行車道線檢測的實(shí)用算法,我們通過一個(gè)多邊形投影區(qū)域來顯示檢測結(jié)果,可以看到檢測結(jié)果與實(shí)際非常吻合。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 汽車電子
    +關(guān)注

    關(guān)注

    3036

    文章

    8282

    瀏覽量

    169808
  • 攝像頭
    +關(guān)注

    關(guān)注

    61

    文章

    4964

    瀏覽量

    97937
  • 自動(dòng)駕駛
    +關(guān)注

    關(guān)注

    788

    文章

    14258

    瀏覽量

    170088

原文標(biāo)題:自動(dòng)駕駛 | 車道檢測實(shí)用算法

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    企業(yè)必看!手機(jī)攝像頭氣密性檢測儀提升生產(chǎn)效益

    的準(zhǔn)確性。它采用先進(jìn)傳感技術(shù)與精密算法,能精準(zhǔn)檢測攝像頭微小的泄漏問題。相比傳統(tǒng)檢測方法,如人工目測或簡單泡水測試,可大大減少誤判與漏判,避免不良品流入下一道工序,
    的頭像 發(fā)表于 06-04 14:03 ?149次閱讀
    企業(yè)必看!手機(jī)<b class='flag-5'>攝像頭</b>氣密性<b class='flag-5'>檢測</b>儀提升生產(chǎn)效益

    一文聊聊自動(dòng)駕駛攝像頭

    [首發(fā)于智駕最前沿微信公眾號(hào)]自動(dòng)駕駛車輛的攝像頭是感知模塊的重要組成,其成本低、分辨率高且能捕捉豐富的語義信息,使其在車道識(shí)別、障礙物檢測、交通標(biāo)志和信號(hào)燈識(shí)別等任務(wù)中不可或缺。不同類型的
    的頭像 發(fā)表于 05-05 09:59 ?205次閱讀
    一文聊聊自動(dòng)駕駛<b class='flag-5'>攝像頭</b>

    使用RTSP攝像頭執(zhí)行多攝像頭多目標(biāo)Python演示,缺少輸出幀是怎么回事?

    使用 RTSP 攝像頭執(zhí)行 多攝像頭多目標(biāo) Python 演示 。 現(xiàn)場視頻每 5 秒出現(xiàn)一次啟動(dòng)和抖動(dòng),但幀缺失。 輸出生產(chǎn)低 FPS (1 至 0.3 FPS)。 人員檢測發(fā)生在各種位置,因?yàn)閷?shí)時(shí)視頻缺少幀。
    發(fā)表于 03-06 07:55

    TVP5151是否可以將lost lock detect作為與攝像頭連接狀態(tài)的檢測?

    需求:在視頻輸入處,想要檢測攝像頭連接情況。如果連接不正常,給出告警或其他處理。 方案:從tvp5151的手冊(cè)來看,有如下寄存器,僅找到這部分內(nèi)容,其他內(nèi)容尚未找到。 疑問:是否可以將lost lock detect作為與攝像頭
    發(fā)表于 01-10 08:37

    安防監(jiān)控攝像頭氣密性測試案例-連拓精密#攝像頭氣密檢測設(shè)備

    攝像頭
    連拓精密科技
    發(fā)布于 :2024年12月11日 15:00:21

    多光譜火焰檢測攝像頭

    隨著工業(yè)化進(jìn)程的加快,火災(zāi)安全問題日益受到重視。傳統(tǒng)的火焰檢測技術(shù)主要依賴于溫度傳感器和煙霧探測器,但這些方法在某些情況下存在響應(yīng)慢、誤報(bào)率高等缺陷。為了解決這些問題,多光譜火焰檢測攝像頭應(yīng)運(yùn)而生
    的頭像 發(fā)表于 12-11 10:50 ?663次閱讀
    多光譜火焰<b class='flag-5'>檢測</b><b class='flag-5'>攝像頭</b>

    攝像頭及紅外成像的基本工作原理

    本文介紹了攝像頭及紅外成像的基本工作原理,攝像頭可以將看到的圖像真實(shí)的呈現(xiàn)出來,所見即所得! 攝像頭如何工作? 攝像頭可以將看到的
    的頭像 發(fā)表于 11-25 09:28 ?2162次閱讀
    <b class='flag-5'>攝像頭</b>及紅外成像的基本工作原理

    利用Premier參考圖像傳感器模塊簡化攝像頭開發(fā)

    ? ? ? ? ? ? ? 開發(fā)智能、高性能的視覺系統(tǒng)非常復(fù)雜,通常耗時(shí)半年左右。加快此類視覺系統(tǒng)上市并優(yōu)化工程資源,對(duì)于復(fù)雜視覺設(shè)計(jì)的成功至關(guān)重要。為了更好地支持攝像頭開發(fā), 安森美(onsemi
    的頭像 發(fā)表于 11-02 19:30 ?1521次閱讀
    <b class='flag-5'>利用</b>Premier參考<b class='flag-5'>圖像</b>傳感器模塊簡化<b class='flag-5'>攝像頭</b>開發(fā)

    《DNK210使用指南 -CanMV版 V1.0》第二十六章 攝像頭圖像捕獲實(shí)驗(yàn)

    第二十六章 攝像頭圖像捕獲實(shí)驗(yàn) 本章將介紹CanMV下攝像頭的使用,能通過攝像頭實(shí)時(shí)地采集攝像頭捕獲到的
    發(fā)表于 10-23 10:05

    氣密性檢測儀:怎樣判斷攝像頭的密封性-岳信儀器

    氣密性檢測儀在評(píng)估攝像頭密封性方面起著至關(guān)重要的作用。隨著智能汽車技術(shù)的快速發(fā)展,汽車攝像頭的密封性能直接關(guān)系到其使用壽命和成像質(zhì)量。以下是一篇關(guān)于如何使用氣密性檢測儀來判斷
    的頭像 發(fā)表于 10-21 14:02 ?519次閱讀
    氣密性<b class='flag-5'>檢測</b>儀:怎樣判斷<b class='flag-5'>攝像頭</b>的密封性-岳信儀器

    用于環(huán)視和CMS攝像頭系統(tǒng)的四通道攝像頭應(yīng)用程序

    電子發(fā)燒友網(wǎng)站提供《用于環(huán)視和CMS攝像頭系統(tǒng)的四通道攝像頭應(yīng)用程序.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 10:02 ?0次下載
    用于環(huán)視和CMS<b class='flag-5'>攝像頭</b>系統(tǒng)的四通道<b class='flag-5'>攝像頭</b>應(yīng)用程序

    人流量檢測識(shí)別攝像頭

    人流量檢測識(shí)別攝像頭是一種結(jié)合了監(jiān)控攝像技術(shù)和智能分析技術(shù)的先進(jìn)設(shè)備,旨在通過實(shí)時(shí)監(jiān)測和分析監(jiān)控畫面中人員的數(shù)量、密度、流動(dòng)方向等信息,識(shí)別不同人群特征并進(jìn)行統(tǒng)計(jì)分析。這種攝像頭在商業(yè)
    的頭像 發(fā)表于 09-25 10:58 ?763次閱讀
    人流量<b class='flag-5'>檢測</b>識(shí)別<b class='flag-5'>攝像頭</b>

    智能化升級(jí):機(jī)載無人機(jī)攝像頭如何自動(dòng)識(shí)別目標(biāo)?

    機(jī)載無人機(jī)攝像頭在智能化升級(jí)的過程中,自動(dòng)識(shí)別目標(biāo)的能力得到了顯著提升。這一過程涉及多個(gè)關(guān)鍵技術(shù)和算法,以下是關(guān)于機(jī)載無人機(jī)攝像頭如何自動(dòng)識(shí)別目標(biāo)的詳細(xì)解析: 一、圖像采集與預(yù)處理 高
    的頭像 發(fā)表于 09-19 15:23 ?1586次閱讀
    智能化升級(jí):機(jī)載無人機(jī)<b class='flag-5'>攝像頭</b>如何自動(dòng)識(shí)別目標(biāo)?

    基于FPGA的攝像頭心率檢測裝置設(shè)計(jì)

    時(shí)間很長,且對(duì)環(huán)境要求較為嚴(yán)格。 基此,我們對(duì)其算法進(jìn)行優(yōu)化,設(shè)計(jì)出更快運(yùn)算速度, 可在更復(fù)雜環(huán)境較準(zhǔn)確測心率的攝像頭心率檢測裝置。本系統(tǒng)著眼機(jī)器視覺,是集合圖像處理技術(shù)、HDMI
    發(fā)表于 07-01 17:58

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品