畢棟 邱子威
(湖北汽車工業(yè)學院汽車工程師學院 湖北省十堰市 442002)
車輛多目標跟蹤是對傳感器感知的到的信息進行計算與分析,通過確定目標的位置、加速度、速度、位姿等運動參數(shù),并持續(xù)估計車輛所在區(qū)域,最后實現(xiàn)目標軌跡的跟蹤。目前多目標跟蹤算法研究框架主要基于檢測跟蹤和基于深度學習這兩種框架[1‐2],傳統(tǒng)的數(shù)據(jù)關(guān)聯(lián)算法有最近鄰數(shù)據(jù)關(guān)聯(lián)算法[3]、概率數(shù)據(jù)關(guān)聯(lián)算法[4]、聯(lián)合概率數(shù)據(jù)關(guān)聯(lián)算法[5]等。
最近鄰數(shù)據(jù)關(guān)聯(lián)算法(Nearest Neighbor Data Association,NNDA)最早是由SINGGR 等1971年提出的簡單有效的數(shù)據(jù)關(guān)聯(lián)方法,該方法主要就是要解決關(guān)聯(lián)門的大小和關(guān)聯(lián)門內(nèi)目標匹配這兩個問題,關(guān)聯(lián)門就是以上一幀的跟蹤目標為中心劃分的空間區(qū)域。NNDA 算法簡單、計算量小并且易于實現(xiàn),但在目標比較密集的情況下,算法容易出現(xiàn)對檢測目標誤檢和漏檢的情況。后來很多學者針對NNDA 算法不足做了一些改進,胡朋啟[6]基于最近鄰數(shù)據(jù)關(guān)聯(lián)算法提出了一種最近鄰‐點拓撲圖的目標關(guān)聯(lián)算法,該算法有效地克服了最近鄰方法對系統(tǒng)偏差敏感,顯著提高了存在系統(tǒng)誤差條件下的關(guān)聯(lián)成功率。
本次研究建立了基于多傳感器融合的車輛多目標跟蹤系統(tǒng),可實現(xiàn)復雜場景下的多目標跟蹤,有效融合數(shù)據(jù)關(guān)聯(lián)算法快速獲取可靠的軌跡數(shù)據(jù)。實驗結(jié)果分析,本文算法可以有效解決目標遮擋、漏檢的問題,并很好地獲取實時目標軌跡,為智能駕駛提供可靠的軌跡數(shù)據(jù)。
在復雜交通場景下,車與車之間有較高的相似性和交互性,這使得多目標跟蹤難度劇增,其主要是在解決檢測目標集與已形成軌跡集關(guān)聯(lián)匹配問題的同時,算法也要保證匹配精度和實時性。
本次研究采用最近鄰關(guān)聯(lián)算法,在檢測目標的同時根據(jù)當前幀實時更新狀態(tài)軌跡,大大提高匹配精度和實時性。利用激光雷達和攝像頭獲取輸入序列的檢測結(jié)果,從第k 幀的檢測結(jié)果開始,計算目標檢測集與前一幀已形成軌跡集之間的關(guān)聯(lián)矩陣,結(jié)合關(guān)聯(lián)判定準則得到三種關(guān)聯(lián)結(jié)果,最后結(jié)合卡爾曼對目標軌跡預測及更新,實現(xiàn)目標軌跡的持續(xù)跟蹤。
數(shù)據(jù)關(guān)聯(lián)多目標跟蹤過程如圖1所示。
圖1:數(shù)據(jù)關(guān)聯(lián)多目標跟蹤過程
最近鄰數(shù)據(jù)關(guān)聯(lián)主要分為兩步,第一步是檢測每幀中移動的目標,第二步是通過計算損失函數(shù)將檢測到的目標與之前正在跟蹤的同一目標進行關(guān)聯(lián)。損失函數(shù)閾值大小直接影響檢測目標與已形成軌跡之間的關(guān)聯(lián)概率,因此損失函數(shù)閾值大小既要使真實檢測目標計算的損失函數(shù)小于閾值,又要減少無關(guān)的檢測結(jié)果,損失函數(shù)閾值大小可以根據(jù)跟蹤場景的情況進行相應調(diào)整。在確定了損失函數(shù)閾值之后,車輛多目標跟蹤系統(tǒng)將統(tǒng)計距離最近作為目標檢測集與已形成軌跡集之間的判定準則。
在跟蹤目標i 的損失函數(shù)閾值之內(nèi),將檢測結(jié)果j 與目標航跡預測位置i 這兩者之間的矢量差定義為殘差[7],表示為:
設(shè)Sij為殘差信息的協(xié)方差矩陣,于是可以得到統(tǒng)計距離平方值:
該值是判斷“最近鄰”的度量標準,利用先驗信息的最大似然概率。假設(shè)殘差服從零均值多維正太分布,則殘差的似然函數(shù)為:
近年,學生素養(yǎng)教育方面的問題成為高校人才培養(yǎng)和思想政治教育工作中存在的一個較為突出的問題,而職業(yè)素養(yǎng),對于學生求職、就業(yè)都起著至關(guān)重要的作用,也是大學培養(yǎng)體系不可缺少的部分。目前大學生大多為95后,獨生子女,家庭溺愛下成長,自主學習能力較差,職業(yè)素養(yǎng)相對欠缺。作為應用型院校,培養(yǎng)的畢業(yè)生大多去企業(yè)工作,而企業(yè)對員工的品質(zhì)、綜合能力、職業(yè)素養(yǎng)越加重視,這就要求大學生不僅要具備較高的理論素養(yǎng),更要具備實踐能力及職業(yè)素養(yǎng)。
由公式(3)可知,先對其取對數(shù),然后再求導,可計算得到最大似然函數(shù)值。于是就能得出殘差似然函數(shù)極大值與殘差極小值具有等效關(guān)系,它們分別使用gij與eij表示。為此在具體場景中,只要選取距離最近的檢測結(jié)果即可。
假設(shè)由檢測器得到的軌跡集合和檢測目標集合,p 表示第t 幀中第i 個檢測目標,q 表示第t 幀中第j 個檢測目標,將巴氏距離作為相似性度量:
式中,xp和xq分別為p 和q 的橫坐標;yp和yq分別為p 和q的縱坐標;wq和hq分別為檢測目標的寬和長。
根據(jù)關(guān)聯(lián)判定準則最終三種關(guān)聯(lián)結(jié)果,其分別為:檢測目標與前一幀軌跡匹配成功;前一幀軌跡集中的軌跡未與檢測目標集匹配成功,目標在當前目標檢測集中丟失,可能是目標漏檢或者目標離開當前檢測范圍;目標檢測集中的檢測目標未與前一幀軌跡集匹配成功,這可能是當前幀中出現(xiàn)一個新的跟蹤目標。針對以上三種關(guān)聯(lián)結(jié)果,檢測目標集和前一幀軌跡集的處理分為以下四種方式:
(1)檢測目標與前一幀軌跡匹配成功,則將檢測目標作為新軌跡進行卡爾曼預測并更新,對目標進行持續(xù)跟蹤。
(2)設(shè)定跟蹤目標連續(xù)不可見幀數(shù)閾值n,如果跟蹤目標連續(xù)不可見幀數(shù)小于閾值,則認為目標檢測算法存在漏檢或者短時遮擋,需要將檢測目標重新并入軌跡集中,然后根據(jù)目標信息進行位置預測。如果跟蹤目標連續(xù)不可見幀數(shù)大于閾值,則認為跟蹤目標超出目標檢測算法檢測范圍,刪除當前幀中此軌跡信息,不再對其進行預測和更新。
(4)設(shè)定兩跟蹤目標出現(xiàn)遮擋時的距離為l,當跟蹤目標出現(xiàn)遮擋,持續(xù)對其進行位置預測,當目標檢測算法再次檢測到跟蹤目標時,重新關(guān)聯(lián)匹配并更新到軌跡集中。
在包含各種不確定信息的動態(tài)系統(tǒng)中,如目標遮擋,卡爾曼濾波依靠運動信息可以很好的對下一幀目標所在位置進行預測,即便存在諸多干擾卡爾曼濾波也能得到接近真實目標的預測位置。在目標的狀態(tài)短時間內(nèi)不會發(fā)生劇烈變化的情況下,將目標速度、加速度、位置視作目標狀態(tài)矢量,借助于動力學方程來對其狀態(tài)變化進行描述,然后通過遞推算式預估出目標狀態(tài)??柭鼮V波可以借助觀測結(jié)果對系統(tǒng)狀態(tài)進行最優(yōu)估計,主要通過檢測與校正這兩步來完成目標位置的估計,在預測階段使用上一幀跟蹤目標的位置和狀態(tài)做出對當前幀目標的位置預測,在校正階段利用當前幀的檢測結(jié)果狀態(tài)來修正預測階段得到預測位置。
由k‐1 時刻到k 時刻,系統(tǒng)狀態(tài)預測方程及狀態(tài)觀測方程為:
式中,A 表示狀態(tài)轉(zhuǎn)移矩陣;uk表示系統(tǒng)輸入向量;B 表示輸入增益矩陣;wk表示均值為0,協(xié)方差矩陣為Q,且服從正太分布的過程噪聲;H 表示測量矩陣;vk表示均值為0,協(xié)方差矩陣為R,且服從正太分布的過程噪聲。
通過上一狀態(tài)的最優(yōu)值和將要施加的控制量來預測當前狀態(tài),而高斯噪聲均值為0,可以省略式(5)最后一項得到:
式中,xk為卡爾曼估計值。
卡爾曼濾波本質(zhì)是最小均方差估計,而均方差是Pk的跡,協(xié)方差矩陣求跡并兩邊對卡爾曼增益Kk求導,可得卡爾曼增益:
最后更新估計誤差的協(xié)方差矩陣:
以此迭代并更新計算,完成目標位置的持續(xù)跟蹤??柭鼮V波適用于連續(xù)變化的系統(tǒng)中,由于僅需保存前一幀的軌跡集,所以算法運行速度較快,使車輛多目標跟蹤系統(tǒng)有較好的實時性。
本次實驗以MATLAB 為仿真平臺,首先通過代價矩陣計算對關(guān)聯(lián)結(jié)果進行判定,然后將匹配成功的軌跡用卡爾曼濾波進行更新,未匹配成功檢測軌跡更新成新的跟蹤目標,設(shè)定不可見幀數(shù)閾值為20,新目標連續(xù)出現(xiàn)幀數(shù)閾值為3,兩跟蹤目標出現(xiàn)遮擋時的距離為1.5m,最后綜合初步確定跟蹤軌跡。MATLAB 多目標跟蹤仿真如圖2所示。
圖2:MATLAB 多目標跟蹤仿真
仿真結(jié)果在GUI 顯示界面中顯示,紅色三角表示自身汽車位置,綠色方框及箭頭表示攝像頭跟蹤目標位置及行駛方向,黃色方框及箭頭表示激光雷達跟蹤目標位置及行駛方向,紫色方框及箭頭表示數(shù)據(jù)關(guān)聯(lián)后目標位置及行駛方向。圖3 為連續(xù)兩幀汽車多目標跟蹤仿真。
圖3:MATLAB 多目標跟蹤仿真
仿真結(jié)果顯示本次研究的算法能夠?qū)崿F(xiàn)車輛多目標的跟蹤,可以實現(xiàn)連續(xù)多幀良好的跟蹤效果,并且在行駛過程中,2 號目標和3 號目標短暫遮擋也能通過算法進行識別跟蹤。
本次研究利用最近鄰數(shù)據(jù)關(guān)聯(lián)算法來匹配檢測結(jié)果與跟蹤目標,首先根據(jù)統(tǒng)計距離進行關(guān)聯(lián)判定,然后結(jié)合卡爾曼濾波器的目標遮擋模型,利用卡爾曼濾波更新快,能快速構(gòu)造預測位置的特點,有效解決短時遮擋問題,多目標跟蹤系統(tǒng)的魯棒性得到顯著提高,最后利用多幀信息對跟蹤目標持續(xù)跟蹤,使關(guān)聯(lián)算法更穩(wěn)定。多組測試序列檢測結(jié)果表明,本文的跟蹤算法可以滿足實時性的要求,可應用到實際工程中,下一步工作重點是提高準確率。