天天看點

diy作品——視覺追蹤小車介紹

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

首先上圖,小車車身:

diy作品——視覺追蹤小車介紹
diy作品——視覺追蹤小車介紹
diy作品——視覺追蹤小車介紹

電腦端圖傳顯示界面:

diy作品——視覺追蹤小車介紹

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

diy作品——視覺追蹤小車介紹

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

diy作品——視覺追蹤小車介紹

接下來是技術的介紹

主要核心:採用Altera公司的SoC晶片,結合了FPGA和一塊雙核Cortex-A9處理器。和Xilinx的Zynq架構上類似,開發流程也非常類似。

小車驅動闆:採用雙L9110S晶片的電機驅動子產品。發熱少,但電流小。導緻小車馬力不太足,但在平地上夠了。

攝像頭:採用OV7725攝像頭,這個攝像頭640*480分辨率下幀率60幀,但缺點是畫質有點差,轉接線稍長噪聲就大。但手上僅僅有這個攝像頭了。僅僅能用它。

片上系統架構。如圖:

diy作品——視覺追蹤小車介紹

系統主要還是ARM端,它嵌了Linux作業系統。上電首先載入VDMA的驅動(實際上就是配置設定可用的DDR緩存區)。FPGA部分採集攝像頭的初始像素。完畢RGB像素的拼接,經過ST子產品轉換成ST總線,經過圖像縮小、灰階化,進入到VDMA。此處的VDMA就是一個ST總線轉MM(memory map),由于ARM端的DDR控制器和FPGA端的接口就是MM總線。FPGA端和ARM端通過VDMA能夠共用一片記憶體。這樣FPGA預處理後的圖像就能夠給ARM端接着處理。

繼續閱讀