畢棟 邱子威
(湖北汽車工業學院汽車工程師學院 湖北省十堰市 442002)
車輛多目標跟蹤是對傳感器感知的到的信息進行計算與分析,通過確定目標的位置、加速度、速度、位姿等運動參數,并持續估計車輛所在區域,最后實現目標軌跡的跟蹤。目前多目標跟蹤算法研究框架主要基于檢測跟蹤和基于深度學習這兩種框架[1‐2],傳統的數據關聯算法有最近鄰數據關聯算法[3]、概率數據關聯算法[4]、聯合概率數據關聯算法[5]等。
最近鄰數據關聯算法(Nearest Neighbor Data Association,NNDA)最早是由SINGGR 等1971年提出的簡單有效的數據關聯方法,該方法主要就是要解決關聯門的大小和關聯門內目標匹配這兩個問題,關聯門就是以上一幀的跟蹤目標為中心劃分的空間區域。NNDA 算法簡單、計算量小并且易于實現,但在目標比較密集的情況下,算法容易出現對檢測目標誤檢和漏檢的情況。后來很多學者針對NNDA 算法不足做了一些改進,胡朋啟[6]基于最近鄰數據關聯算法提出了一種最近鄰‐點拓撲圖的目標關聯算法,該算法有效地克服了最近鄰方法對系統偏差敏感,顯著提高了存在系統誤差條件下的關聯成功率。
本次研究建立了基于多傳感器融合的車輛多目標跟蹤系統,可實現復雜場景下的多目標跟蹤,有效融合數據關聯算法快速獲取可靠的軌跡數據。實驗結果分析,本文算法可以有效解決目標遮擋、漏檢的問題,并很好地獲取實時目標軌跡,為智能駕駛提供可靠的軌跡數據。
在復雜交通場景下,車與車之間有較高的相似性和交互性,這使得多目標跟蹤難度劇增,其主要是在解決檢測目標集與已形成軌跡集關聯匹配問題的同時,算法也要保證匹配精度和實時性。
本次研究采用最近鄰關聯算法,在檢測目標的同時根據當前幀實時更新狀態軌跡,大大提高匹配精度和實時性。利用激光雷達和攝像頭獲取輸入序列的檢測結果,從第k 幀的檢測結果開始,計算目標檢測集與前一幀已形成軌跡集之間的關聯矩陣,結合關聯判定準則得到三種關聯結果,最后結合卡爾曼對目標軌跡預測及更新,實現目標軌跡的持續跟蹤。
數據關聯多目標跟蹤過程如圖1所示。

圖1:數據關聯多目標跟蹤過程
最近鄰數據關聯主要分為兩步,第一步是檢測每幀中移動的目標,第二步是通過計算損失函數將檢測到的目標與之前正在跟蹤的同一目標進行關聯。損失函數閾值大小直接影響檢測目標與已形成軌跡之間的關聯概率,因此損失函數閾值大小既要使真實檢測目標計算的損失函數小于閾值,又要減少無關的檢測結果,損失函數閾值大小可以根據跟蹤場景的情況進行相應調整。在確定了損失函數閾值之后,車輛多目標跟蹤系統將統計距離最近作為目標檢測集與已形成軌跡集之間的判定準則。
在跟蹤目標i 的損失函數閾值之內,將檢測結果j 與目標航跡預測位置i 這兩者之間的矢量差定義為殘差[7],表示為:

設Sij為殘差信息的協方差矩陣,于是可以得到統計距離平方值:

該值是判斷“最近鄰”的度量標準,利用先驗信息的最大似然概率。假設殘差服從零均值多維正太分布,則殘差的似然函數為:
近年,學生素養教育方面的問題成為高校人才培養和思想政治教育工作中存在的一個較為突出的問題,而職業素養,對于學生求職、就業都起著至關重要的作用,也是大學培養體系不可缺少的部分。目前大學生大多為95后,獨生子女,家庭溺愛下成長,自主學習能力較差,職業素養相對欠缺。作為應用型院校,培養的畢業生大多去企業工作,而企業對員工的品質、綜合能力、職業素養越加重視,這就要求大學生不僅要具備較高的理論素養,更要具備實踐能力及職業素養。

由公式(3)可知,先對其取對數,然后再求導,可計算得到最大似然函數值。于是就能得出殘差似然函數極大值與殘差極小值具有等效關系,它們分別使用gij與eij表示。為此在具體場景中,只要選取距離最近的檢測結果即可。
假設由檢測器得到的軌跡集合和檢測目標集合,p 表示第t 幀中第i 個檢測目標,q 表示第t 幀中第j 個檢測目標,將巴氏距離作為相似性度量:

式中,xp和xq分別為p 和q 的橫坐標;yp和yq分別為p 和q的縱坐標;wq和hq分別為檢測目標的寬和長。
根據關聯判定準則最終三種關聯結果,其分別為:檢測目標與前一幀軌跡匹配成功;前一幀軌跡集中的軌跡未與檢測目標集匹配成功,目標在當前目標檢測集中丟失,可能是目標漏檢或者目標離開當前檢測范圍;目標檢測集中的檢測目標未與前一幀軌跡集匹配成功,這可能是當前幀中出現一個新的跟蹤目標。針對以上三種關聯結果,檢測目標集和前一幀軌跡集的處理分為以下四種方式:
(1)檢測目標與前一幀軌跡匹配成功,則將檢測目標作為新軌跡進行卡爾曼預測并更新,對目標進行持續跟蹤。
(2)設定跟蹤目標連續不可見幀數閾值n,如果跟蹤目標連續不可見幀數小于閾值,則認為目標檢測算法存在漏檢或者短時遮擋,需要將檢測目標重新并入軌跡集中,然后根據目標信息進行位置預測。如果跟蹤目標連續不可見幀數大于閾值,則認為跟蹤目標超出目標檢測算法檢測范圍,刪除當前幀中此軌跡信息,不再對其進行預測和更新。
(4)設定兩跟蹤目標出現遮擋時的距離為l,當跟蹤目標出現遮擋,持續對其進行位置預測,當目標檢測算法再次檢測到跟蹤目標時,重新關聯匹配并更新到軌跡集中。
在包含各種不確定信息的動態系統中,如目標遮擋,卡爾曼濾波依靠運動信息可以很好的對下一幀目標所在位置進行預測,即便存在諸多干擾卡爾曼濾波也能得到接近真實目標的預測位置。在目標的狀態短時間內不會發生劇烈變化的情況下,將目標速度、加速度、位置視作目標狀態矢量,借助于動力學方程來對其狀態變化進行描述,然后通過遞推算式預估出目標狀態。卡爾曼濾波可以借助觀測結果對系統狀態進行最優估計,主要通過檢測與校正這兩步來完成目標位置的估計,在預測階段使用上一幀跟蹤目標的位置和狀態做出對當前幀目標的位置預測,在校正階段利用當前幀的檢測結果狀態來修正預測階段得到預測位置。
由k‐1 時刻到k 時刻,系統狀態預測方程及狀態觀測方程為:

式中,A 表示狀態轉移矩陣;uk表示系統輸入向量;B 表示輸入增益矩陣;wk表示均值為0,協方差矩陣為Q,且服從正太分布的過程噪聲;H 表示測量矩陣;vk表示均值為0,協方差矩陣為R,且服從正太分布的過程噪聲。
通過上一狀態的最優值和將要施加的控制量來預測當前狀態,而高斯噪聲均值為0,可以省略式(5)最后一項得到:

式中,xk為卡爾曼估計值。

卡爾曼濾波本質是最小均方差估計,而均方差是Pk的跡,協方差矩陣求跡并兩邊對卡爾曼增益Kk求導,可得卡爾曼增益:

最后更新估計誤差的協方差矩陣:

以此迭代并更新計算,完成目標位置的持續跟蹤。卡爾曼濾波適用于連續變化的系統中,由于僅需保存前一幀的軌跡集,所以算法運行速度較快,使車輛多目標跟蹤系統有較好的實時性。
本次實驗以MATLAB 為仿真平臺,首先通過代價矩陣計算對關聯結果進行判定,然后將匹配成功的軌跡用卡爾曼濾波進行更新,未匹配成功檢測軌跡更新成新的跟蹤目標,設定不可見幀數閾值為20,新目標連續出現幀數閾值為3,兩跟蹤目標出現遮擋時的距離為1.5m,最后綜合初步確定跟蹤軌跡。MATLAB 多目標跟蹤仿真如圖2所示。

圖2:MATLAB 多目標跟蹤仿真
仿真結果在GUI 顯示界面中顯示,紅色三角表示自身汽車位置,綠色方框及箭頭表示攝像頭跟蹤目標位置及行駛方向,黃色方框及箭頭表示激光雷達跟蹤目標位置及行駛方向,紫色方框及箭頭表示數據關聯后目標位置及行駛方向。圖3 為連續兩幀汽車多目標跟蹤仿真。

圖3:MATLAB 多目標跟蹤仿真
仿真結果顯示本次研究的算法能夠實現車輛多目標的跟蹤,可以實現連續多幀良好的跟蹤效果,并且在行駛過程中,2 號目標和3 號目標短暫遮擋也能通過算法進行識別跟蹤。
本次研究利用最近鄰數據關聯算法來匹配檢測結果與跟蹤目標,首先根據統計距離進行關聯判定,然后結合卡爾曼濾波器的目標遮擋模型,利用卡爾曼濾波更新快,能快速構造預測位置的特點,有效解決短時遮擋問題,多目標跟蹤系統的魯棒性得到顯著提高,最后利用多幀信息對跟蹤目標持續跟蹤,使關聯算法更穩定。多組測試序列檢測結果表明,本文的跟蹤算法可以滿足實時性的要求,可應用到實際工程中,下一步工作重點是提高準確率。