最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

使用OpenCV實現(xiàn)道路車輛計數(shù)

2023-06-13 20:18 作者:AI精品課程搬運工  | 我要投稿

我們將從以下四個方面進行介紹:

1. 用于物體檢測的背景減法算法主要思想。

2. OpenCV圖像過濾器。

3. 利用輪廓檢測物體。

4. 建立進一步數(shù)據(jù)處理的結構。

背景扣除算法

有許多不同的背景扣除算法,但是它們的主要思想都很簡單。

假設有一個房間的視頻,在某些幀上沒有人和寵物,那么此時的視頻基本為靜態(tài)的,我們將其稱為背景(background_layer)。因此要獲取在視頻上移動的對象,我們只需要:用當前幀減去背景即可。

由于光照變化,人為移動物體,或者始終存在移動的人和寵物,我們將無法獲得靜態(tài)幀。在這種情況下,我們從視頻中選出一些圖像幀,如果絕大多數(shù)圖像幀中都具有某個相同的像素點,則此將像素作為background_layer中的一部分。

我們將使用MOG算法進行背景扣除

原始幀

代碼如下所示:

處理后得到下面的前景圖像

去除背景后的前景圖像

我們可以看出前景圖像上有一些噪音,可以通過標準濾波技術可以將其消除。

濾波

針對我們現(xiàn)在的情況,我們將需要以下濾波函數(shù):Threshold、Erode、Dilate、Opening、Closing。

首先,我們使用“Closing”來移除區(qū)域中的間隙,然后使用“Opening”來移除個別獨立的像素點,然后使用“Dilate”進行擴張以使對象變粗。代碼如下:

處理后的前景如下:

利用輪廓進行物體檢測

我們將使用CV2.findContours函數(shù)對輪廓進行檢測。我們在使用的時候可以選擇的參數(shù)為:CV2.CV_RETR_EXTERNAL------僅獲取外部輪廓。

CV2.CV_CHAIN_APPROX_TC89_L1------使用Teh-Chin鏈逼近算法(更快)代碼如下:

建立數(shù)據(jù)處理框架

我們都知道在ML和CV中,沒有一個算法可以處理所有問題。即使存在這種算法,我們也不會使用它,因為它很難大規(guī)模有效。例如幾年前Netflix公司用300萬美元的獎金懸賞最佳電影推薦算法。有一個團隊完成這個任務,但是他們的推薦算法無法大規(guī)模運行,因此其實對公司毫無用處。但是,Netflix公司仍獎勵了他們100萬美元。

接下來我們來建立解決當前問題的框架,這樣可以使數(shù)據(jù)的處理更加方便

首先我們獲取一張?zhí)幚砥鬟\行順序的列表,讓每個處理器完成一部分工作,在案順序完成執(zhí)行以獲得最終結果。

我們首先創(chuàng)建輪廓檢測處理器。輪廓檢測處理器只需將前面的背景扣除,濾波和輪廓檢測部分合并在一起即可,代碼如下所示:

現(xiàn)在,讓我們創(chuàng)建一個處理器,該處理器將找出不同的幀上檢測到的相同對象,創(chuàng)建路徑,并對到達出口區(qū)域的車輛進行計數(shù)。代碼如下所示:

上面的代碼有點復雜,因此讓我們一個部分一個部分的介紹一下。

上面的圖像中綠色的部分是出口區(qū)域。我們在這里對車輛進行計數(shù),只有當車輛移動的長度超過3個點我們才進行計算

我們使用掩碼來解決這個問題,因為它比使用矢量算法有效且簡單得多。只需使用“二進制和”即可選出車輛區(qū)域中點。設置方式如下:

現(xiàn)在我們將檢測到的點鏈接起來。

對于第一幀圖像,我們將所有點均添加為新路徑。

接下來,如果len(path)== 1,我們在新檢測到的對象中找到與每條路徑最后一點距離最近的對象。

如果len(path)> 1,則使用路徑中的最后兩個點,即在同一條線上預測新點,并找到該點與當前點之間的最小距離。

具有最小距離的點將添加到當前路徑的末端并從列表中刪除。如果在此之后還剩下一些點,我們會將其添加為新路徑。這個過程中我們還會限制路徑中的點數(shù)。

現(xiàn)在,我們將嘗試計算進入出口區(qū)域的車輛。為此,我們需獲取路徑中的最后2個點,并檢查len(path)是否應大于限制。

最后兩個處理器是CSV編寫器,用于創(chuàng)建報告CSV文件,以及用于調試和精美圖片的可視化。

結論

正如我們看到的那樣,它并不像許多人想象的那么難。但是,如果小伙伴運行腳本,小伙伴會發(fā)現(xiàn)此解決方案并不理想,存在前景對象存在重疊的問題,并且它也沒有按類型對車輛進行分類。但是,當相機有較好位置,例如位于道路正上方時,該算法具有很好的準確性。

為大家準備了OpenCV項目實戰(zhàn)資源!深度學習以及計算機視覺學習資料!可論文指導1對1付費咨詢!

可添加VX公眾號:AI技術星球,回復333免費領學習資料!

【1】人工智能學習課程及配套資料

【2】超詳解人工智能學習路線圖及學習大綱

【3】學人工智能必看優(yōu)質書籍電子書匯總

【4】人工智能面試題庫大全以及問題總結

【5】人工智能經(jīng)典論文100篇+解讀+復現(xiàn)教程

【6】計算機視覺技術教學課程+YOLO等項目教學

【7】人工智能最新行業(yè)報告??


使用OpenCV實現(xiàn)道路車輛計數(shù)的評論 (共 條)

分享到微博請遵守國家法律
武陟县| 奉新县| 易门县| 阿合奇县| 惠安县| 许昌市| 凤冈县| 称多县| 剑河县| 南丹县| 武隆县| 宁德市| 大城县| 邵武市| 杭锦旗| 岳西县| 寻乌县| 金沙县| 辽阳县| 会同县| 临夏县| 吉林省| 伊金霍洛旗| 广灵县| 石泉县| 会昌县| 松阳县| 沅陵县| 宜春市| 黄大仙区| 茶陵县| 玉溪市| 慈溪市| 望江县| 北海市| 电白县| 闻喜县| 惠东县| 本溪| 容城县| 织金县|