基於FPGA的實時移動目標的追蹤

基於FPGA的實時移動目標的追蹤

1 背景知識

如圖1所示,交通攝像頭對公路上移動的汽車進行實時的定位,隨着小汽車的移動,紅色框也跟隨小汽車移動,實時將小汽車框起來。
基於實時物體移動的靜態圖像背景中移動目標檢測是計算機視覺領域的研究熱點,在安防、監控、智能交通、機器智慧、以及軍事領域等社會生活和軍事防禦等諸多領域都有較大的實用價值。移動目標檢測的實質是從實時圖像序列中將圖像的變化區域從整體圖像中分割提取出來。由於圖像的後期處理,比如移動目標的分類、跟蹤、測距、判斷大小以及行爲動作分析等,主要考慮的是移動目標區域的像素信息,所以對移動目標的準確檢測和有效分割是整個檢測跟蹤系統的重要基礎。
在這裏插入圖片描述

圖1 公路上的運動汽車

目前逐漸形成三種運動目標的檢測算法:

1)幀間差分法 是採用視頻序列中的相鄰兩幀圖像做差的方法,來檢測視頻序列中的移動目標。但是受運動目標和背景變化的影響,檢測過程中有可能出現僞目標或者目標中出現“空洞”,在目標運動不是太快時可以有效的檢測到目標。
2)背景減除法首先在沒有目標的場景中獲取背景圖像,然後利用實時視頻序列和背景圖像做差,來實現地移動目標的檢測。如何獲得背景是背景減除法的關鍵。
3)光流法是通過給圖像中每個像素點賦予一個速度矢量的方法建立光流場,利用光流場中矢量運動的連續性來檢測移動目標。該方法的計算量通常很大,難以實現實時性的檢測。

2 FPGA實現

本節實驗將實現對鏡頭內移動物體(無論變大變小左右移動)的實時邊界進行跟蹤,爲後期基於FPGA的人臉位置識別,字符識別(字符在鏡頭內任意位置)等打下基礎。本節顆也是走向人工智能,機器識別的重要一課。
算法實現:對於彩色圖像直接使用FPGA進行邊界查找難度比較大,所以我們一般對圖像傳感器採集來的圖像進行預處理。如圖2所示,首先進行灰度化來減少圖像數據量,然後使用幀差法對兩幅不同時刻的圖像進行差值(此步暫未進行)。然後我們對得到的圖像二值化。最終對二值圖像進行邊界查找將結果顯示到lcd顯示屏上。

在這裏插入圖片描述

圖2 基於FPGA的移動目標追蹤系統

FPGA部分源碼:

在這裏插入圖片描述
結果展示:
在這裏插入圖片描述

圖3 實驗圖1

在這裏插入圖片描述

圖4 實驗圖2

在這裏插入圖片描述

圖5 對6的邊界追蹤

在這裏插入圖片描述

圖6 對圓的邊界跟蹤

在這裏插入圖片描述

圖7 對菱形的邊界追蹤

結果分析:
如圖5,6,7所示我們完成了對數字6、圖形圓、以及菱形的最大邊界的實時定位,無論圖像形狀大小,均準確定位到了圖像的上下左右邊界。對目標成功進行了實時的定位。這將爲我們後期的各種準確識別打下堅實的基礎。
歡迎關注微信公衆號:FPGA開源工作室
獲取更多學習資料。
FPGA開源工作室

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章