<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于OpenCV的實(shí)時(shí)停車(chē)地點(diǎn)查找

          共 2389字,需瀏覽 5分鐘

           ·

          2020-10-05 08:23

          點(diǎn)擊上方AI算法與圖像處理”,選擇加"星標(biāo)"或“置頂”

          重磅干貨,第一時(shí)間送達(dá)

          簡(jiǎn)介

          我們常常會(huì)在停車(chē)場(chǎng)周?chē)奶幮旭偤芏啻蝸?lái)尋找一個(gè)停車(chē)位,如果我們的電話可以準(zhǔn)確告訴我們最近的停車(chē)位在哪里,那是不是很方便!

          事實(shí)證明,使用深度學(xué)習(xí)和OpenCV解決這個(gè)問(wèn)題相對(duì)容易。所需要的只是停車(chē)場(chǎng)的鳥(niǎo)瞰圖,我們的模型中將突出顯示LA機(jī)場(chǎng)停車(chē)場(chǎng)上的所有可用停車(chē)位,并顯示可用停車(chē)位的數(shù)量,而且具有很好的實(shí)時(shí)性。


          實(shí)時(shí)停車(chē)位檢測(cè)

          步驟概述

          建立此停車(chē)檢測(cè)模型的主要步驟有兩個(gè):

          ? 檢測(cè)所有可用停車(chē)位的位置

          ? 識(shí)別停車(chē)位是否空置或有人占用

          由于這里安裝了攝像機(jī)視圖,因此我們可以使用OpenCV對(duì)每個(gè)停車(chē)位進(jìn)行一次映射。一旦知道了每個(gè)停車(chē)位的位置,便可以使用深度學(xué)習(xí)來(lái)預(yù)測(cè)其是否空置。

          檢測(cè)所有可用停車(chē)位的位置

          我用來(lái)檢測(cè)停車(chē)位的基本思想是,這里的所有停車(chē)位分隔線都是水平線,列中的停車(chē)位之間的間距大致相等。我首先使用Canny邊緣檢測(cè)來(lái)獲取邊緣圖像。我還掩蓋了沒(méi)有停車(chē)位的區(qū)域。見(jiàn)下文:

          卡尼邊緣檢測(cè)輸出

          然后,我們?cè)谶吘増D像上進(jìn)行了hough線變換,繪制出了所有可以識(shí)別的線。僅通過(guò)選擇斜率接近零的線來(lái)隔離水平線。請(qǐng)參見(jiàn)下面的霍夫變換輸出:

          使用HoughLines進(jìn)行線檢測(cè)

          如大家所見(jiàn),hough線在識(shí)別停車(chē)線方面做得相當(dāng)不錯(cuò),但是輸出并不干凈-多次檢測(cè)到多條停車(chē)線,而有些漏掉了。那么我們?nèi)绾吻謇砟兀?/span>

          使用線返回的坐標(biāo),我們對(duì)x觀測(cè)值進(jìn)行了聚類,以識(shí)別主要的停車(chē)車(chē)道。聚類邏輯通過(guò)識(shí)別檢測(cè)到的車(chē)道線的x坐標(biāo)中的間隙來(lái)工作。這使我可以在此處識(shí)別12條停車(chē)道。見(jiàn)下文

          通過(guò)將hough線的x坐標(biāo)聚類來(lái)識(shí)別停車(chē)道

          如果所有這些看起來(lái)都很復(fù)雜,請(qǐng)不要擔(dān)心-我們已經(jīng)逐步記錄了代碼:

          https://github.com/priya-dwivedi/Deep-Learning/blob/master/parking_spots_detector/identify_parking_spots.ipynb

          現(xiàn)在,我對(duì)所有停車(chē)位都非常了解,因此我通過(guò)假設(shè)所有停車(chē)位的大小相同來(lái)確定每個(gè)停車(chē)位,這是一個(gè)合理的假設(shè)。我仔細(xì)觀察了結(jié)果,以確保盡可能準(zhǔn)確地捕捉到斑點(diǎn)之間的邊界。我們終于能夠劃出每個(gè)停車(chē)位。

          標(biāo)出每個(gè)停車(chē)位

          現(xiàn)在完成了—我們可以為每個(gè)位置分配一個(gè)ID,并將其坐標(biāo)保存在字典中。我腌了這本字典,以便以后可以檢索。這是可能的,因?yàn)橐呀?jīng)安裝了相機(jī),我們不需要一次又一次地計(jì)算視圖中每個(gè)點(diǎn)的位置。

          識(shí)別斑點(diǎn)是否被標(biāo)記

          現(xiàn)在我們有了停車(chē)地圖,我們認(rèn)為有幾種方法可以確定該地點(diǎn)是否有人居?。?/span>

          ? 使用OpenCV檢查斑點(diǎn)的像素顏色是否與空的停車(chē)點(diǎn)的顏色對(duì)齊。這是一種簡(jiǎn)單的方法,但容易出錯(cuò)。例如,照明的改變將改變一個(gè)空的停車(chē)位的顏色,這將使這種邏輯難以全天工作。同樣,如果有可能,邏輯將使灰色的汽車(chē)混淆為空的停車(chē)位

          ? 使用對(duì)象檢測(cè)來(lái)識(shí)別所有汽車(chē),然后檢查汽車(chē)的位置是否與停車(chē)位重疊。我做了嘗試,發(fā)現(xiàn)可以實(shí)時(shí)工作的對(duì)象檢測(cè)模型在檢測(cè)小尺寸對(duì)象方面確實(shí)遇到了困難。被檢測(cè)到的汽車(chē)中不超過(guò)30%

          ? 使用CNN查看每個(gè)停車(chē)位,并預(yù)測(cè)是否有人占用。這種方法最終效果最佳

          要構(gòu)建CNN,我們需要具有和不具有汽車(chē)的停車(chē)位圖像。我提取了每個(gè)斑點(diǎn)的圖像并將其保存在文件夾中,然后將這些圖像分組為是否占用。培訓(xùn)文件夾可以在以下鏈接中找到:

          https://github.com/priya-dwivedi/Deep-Learning/tree/master/parking_spots_detector

          由于在尺寸為1280x720的圖像中有近550個(gè)停車(chē)位,因此每個(gè)停車(chē)位的大小僅為15x60像素。請(qǐng)參見(jiàn)下面的空白圖片:

          占用地點(diǎn)

          空點(diǎn)

          但是,由于占用的位置和空的位置看起來(lái)很不一樣,因此對(duì)于CNN來(lái)說(shuō),這不是一個(gè)具有挑戰(zhàn)性的問(wèn)題

          但是,對(duì)于這兩個(gè)類,我們只有大約550張圖像,因此決定使用轉(zhuǎn)移學(xué)習(xí),方法是獲取VGG的前10層,并在VGG模型的輸出中添加一個(gè)softmax層。大家可以在以下鏈接中找到此遷移學(xué)習(xí)模型的代碼。該模型的驗(yàn)證精度為94%。見(jiàn)下文:

          https://github.com/priya-dwivedi/Deep-Learning/blob/master/parking_spots_detector/CNN_model_for_occupancy.ipynb

          CNN模型測(cè)試和訓(xùn)練精度

          現(xiàn)在,我們將停車(chē)位檢測(cè)與CNN預(yù)測(cè)器結(jié)合起來(lái),構(gòu)建了一個(gè)停車(chē)位檢測(cè)器。

          空點(diǎn)預(yù)測(cè)

          結(jié)論

          現(xiàn)在,鏈接不同的工具并使用深度學(xué)習(xí)來(lái)構(gòu)建實(shí)際應(yīng)用變得如此容易,令我們感到十分驚訝。我們可以在兩個(gè)下午完成這項(xiàng)工作。

          進(jìn)一步拓展的幾個(gè)其他想法:

          ? 如果可以使用深度學(xué)習(xí)將停車(chē)位檢測(cè)邏輯擴(kuò)展到在任何停車(chē)地圖上工作,那就太好了。OpenCV的局限性在于需要針對(duì)每個(gè)用例進(jìn)行調(diào)整

          ? CNN中使用的VGG模型相當(dāng)繁重。很想嘗試重量更輕的模型

          代碼鏈接:https://github.com/priya-dwivedi/Deep-Learning/tree/master/parking_spots_detector



          下載1:OpenCV黑魔法


          AI算法與圖像處公眾號(hào)后臺(tái)回復(fù):OpenCV黑魔法,即可下載小編精心編寫(xiě)整理的計(jì)算機(jī)視覺(jué)趣味實(shí)戰(zhàn)教程


          下載2 CVPR2020

          AI算法與圖像處公眾號(hào)后臺(tái)回復(fù):CVPR2020,即可下載1467篇CVPR?2020論文
          個(gè)人微信(如果沒(méi)有備注不拉群!
          請(qǐng)注明:地區(qū)+學(xué)校/企業(yè)+研究方向+昵稱


          覺(jué)得有趣就點(diǎn)亮在看吧


          瀏覽 34
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美成人18 | 西西444WWW无码视频 | 欧美在线成人网站 | 奇米色色网 | 久久久aaa |