diy作品 視覺追蹤小車介紹

2022-09-02 02:39:07 字數 1528 閱讀 4192

最近剛剛完畢了乙個追蹤功能的小車。大體功能例如以下:小車能通過網線給電腦傳圖(抱歉。臨時沒搞wifi驅動)。並在電腦端通過滑鼠選中待跟蹤的目標,然後小車就開始追蹤。由於追蹤框有縮放功能。所以也能推斷物體離的遠近(否則也就不能實現追蹤了)。

首先上圖,小車車身:

電腦端圖傳顯示介面:

滑鼠選中待跟蹤區域後,顯示了乙個跟蹤框:

小車運動後。方框仍然追蹤先前選中的物體:

接下來是技術的介紹

主控核心:採用altera公司的soc晶元,結合了fpga和一塊雙核cortex-a9處理器。和xilinx的zynq架構上類似,開發流程也非常類似。

小車驅動板:採用雙l9110s晶元的電機驅動模組。發熱少,但電流小。導致小車馬力不太足,但在平地上夠了。

攝像頭:採用ov7725攝像頭,這個攝像頭640*480解析度下幀率60幀,但缺點是畫質有點差,轉接線稍長雜訊就大。但手上僅僅有這個攝像頭了。僅僅能用它。

片上系統架構。如圖:

系統主控還是arm端,它嵌了linux作業系統。上電首先載入vdma的驅動(實際上就是分配可用的ddr快取區)。fpga部分採集攝像頭的初始畫素。完畢rgb畫素的拼接,經過st模組轉換成st匯流排,經過影象縮小、灰度化,進入到vdma。此處的vdma就是乙個st匯流排轉mm(memory map),由於arm端的ddr控制器和fpga端的介面就是mm匯流排。fpga端和arm端通過vdma能夠共用一片記憶體。這樣fpga預處理後的影象就能夠給arm端接著處理。

linux部分跑了乙個tld的追蹤演算法,關於tld的演算法原理本人水平有限,只是多介紹。推薦看這人的部落格:的框架就是追蹤、檢測、學習三者一體。對於長時間的目標追蹤,效果非常好,缺點就是速度慢。本人在tld的**裡,將檢測窗體數量。以及學習樣本庫的數量做了些限制,達到了一定程度上提高幀率的目的。

linux端通過網線給電腦傳輸影象,而且電腦也能夠通過滑鼠畫框。將框的資訊發給arm。協議是udp。

終於。小車追蹤效果比預想的差一點,主要原因有兩個:1.攝像頭畫質實在較差,而且攝像頭不能自己主動變焦。導致畫面模糊的情況下easy丟失目標;2.幀率,眼下也就3~5幀的水平。

diy作品 視覺追蹤小車介紹

最近剛剛完畢了乙個追蹤功能的小車。大體功能例如以下 小車能通過網線給電腦傳圖 抱歉。臨時沒搞wifi驅動 並在電腦端通過滑鼠選中待跟蹤的目標,然後小車就開始追蹤。由於追蹤框有縮放功能。所以也能推斷物體離的遠近 否則也就不能實現追蹤了 首先上圖,小車車身 電腦端圖傳顯示介面 滑鼠選中待跟蹤區域後,顯示...

Oracle Pro C程式設計系列 小輝作品

oracle pro c程式設計系列 1 對oracle程式設計進行了概述,給大家展示了第乙個簡單的pro c的例子,非常易懂 oracle pro c程式設計系列 2 對pro c程式設計中的變數和變數轉換進行了全面的闡述 oracle pro c程式設計系列 3 講述了pro c程式設計中的一些...

雲淵結課 小作品

劇場介紹 精彩花絮 可愛瞬間 感悟算是最後自己學了這有段時間的交代吧,直接衝衝衝!外掛程式swiper 接著是官方的套式,可以根據需要自行更改。html js 最後套用的我們js 進行的背景引入進行輪播,由於較多,則可用迴圈去完成。採用ul的標籤進行設計,內嵌了乙個小標題和主要內容,主要內容為插圖和...