本發(fā)明涉及信息技術(shù)領(lǐng)域,尤其涉及一種目標(biāo)跟蹤方法及裝置。
背景技術(shù):
目標(biāo)跟蹤是指對圖像序列中的運動目標(biāo)進(jìn)行檢測、提取、識別和跟蹤,獲得運動目標(biāo)的運動參數(shù),如位置、速度、加速度和運動軌跡等,從而進(jìn)行下一步的處理與分析,實現(xiàn)對運動目標(biāo)的行為理解,以完成更高一級的檢測任務(wù)。目標(biāo)跟蹤技術(shù)廣泛應(yīng)用于人機交互、視頻監(jiān)控、機器人和無人機等領(lǐng)域。
大多數(shù)的目標(biāo)跟蹤技術(shù)都是通過檢測兩個相鄰幀的相關(guān)性來確定目標(biāo)的運動方向,以CSK(Circulant Structure of tracking-by-detection with Kernels,基于檢測的目標(biāo)核心跟蹤循環(huán)結(jié)構(gòu))跟蹤器為例,該跟蹤器通過從給定的圖像碎片中得到目標(biāo)核心的最小方形分類器來實現(xiàn)目標(biāo)跟蹤,然而,該跟蹤器在目標(biāo)的尺度變化較大時容易跟丟目標(biāo)?;赟CM(Sparsity-based Collaborative model,稀疏協(xié)同模型)的魯棒目標(biāo)跟蹤器能夠估測目標(biāo)的尺度變化,但該跟蹤器由于稀疏系數(shù)的計算量大且字典更新較慢,導(dǎo)致處理每一幀的速度較慢,不適用于需要實時跟蹤的應(yīng)用場景。
技術(shù)實現(xiàn)要素:
技術(shù)問題
有鑒于此,本發(fā)明要解決的技術(shù)問題是,現(xiàn)有的目標(biāo)跟蹤技術(shù)在目標(biāo)尺度發(fā)生變化的情況下跟蹤效果較差或者不能實時跟蹤目標(biāo)。
解決方案
為了解決上述技術(shù)問題,根據(jù)本發(fā)明的一實施例,提供了一種目標(biāo)跟蹤方法,包括:
從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、所述上一幀的目標(biāo)尺度、所述上一幀的平移模型和所述上一幀的尺度模型;
根據(jù)所述上一幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的平移樣本;
根據(jù)所述當(dāng)前幀的平移樣本和所述上一幀的平移模型確定所述當(dāng)前幀的平移關(guān)聯(lián)值;
將使所述當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為所述當(dāng)前幀的目標(biāo)位置;
根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的尺度樣本;
根據(jù)所述當(dāng)前幀的尺度樣本和所述上一幀的尺度模型確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;
將使所述當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為所述當(dāng)前幀的目標(biāo)尺度。
對于上述方法,在一種可能的實現(xiàn)方式中,在將使所述當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為所述當(dāng)前幀的目標(biāo)尺度之后,所述方法還包括:
確定誤差平方和;
將使所述誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器;
根據(jù)所述最優(yōu)關(guān)聯(lián)濾波器確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系。
對于上述方法,在一種可能的實現(xiàn)方式中,所述方法還包括:
根據(jù)所述當(dāng)前幀的目標(biāo)位置確定所述當(dāng)前幀的目標(biāo)位置HOG特征;
根據(jù)所述當(dāng)前幀的目標(biāo)尺度確定所述當(dāng)前幀的目標(biāo)尺度HOG特征;
根據(jù)所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)位置HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的平移模型,其中,所述當(dāng)前幀的關(guān)聯(lián)輸出根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述當(dāng)前幀的目標(biāo)尺度確定;
根據(jù)所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)尺度HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的尺度模型。
對于上述方法,在一種可能的實現(xiàn)方式中,根據(jù)所述當(dāng)前幀的平移樣本和所述上一幀的平移模型確定所述當(dāng)前幀的平移關(guān)聯(lián)值,具體為:采用式1確定所述當(dāng)前幀的平移關(guān)聯(lián)值;
根據(jù)所述當(dāng)前幀的尺度樣本和所述上一幀的尺度模型確定所述當(dāng)前幀的尺度關(guān)聯(lián)值,具體為:采用式1確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;F-1表示傅里葉反變換;l表示第l個特征維度;d表示特征維度的總個數(shù);λ表示修正參數(shù);在所述上一幀的平移模型為和Bt-1、所述當(dāng)前幀的平移樣本為的情況下,所述當(dāng)前幀的平移關(guān)聯(lián)值為yt;在所述上一幀的尺度模型為和Bt-1、所述當(dāng)前幀的尺度樣本為的情況下,所述當(dāng)前幀的尺度關(guān)聯(lián)值為yt;表示的復(fù)共軛。
對于上述方法,在一種可能的實現(xiàn)方式中,確定誤差平方和,包括:采用式4確定誤差平方和ε;
其中,l表示第l個特征維度;d表示特征維度的總個數(shù);hl表示所述第l個特征維度的關(guān)聯(lián)濾波器;pl表示所述第l個特征維度的HOG特征;g表示關(guān)聯(lián)輸出;λ表示修正參數(shù);
將使所述誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器,具體為:根據(jù)使式4的ε最小的hl確定所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl,所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl如式5所示;
其中,k表示第k個特征維度,pk表示所述第k個特征維度的HOG特征;Pk表示pk的離散傅立葉變換,表示Pk的復(fù)共軛;Pl表示pl的離散傅立葉變換;G表示g的離散傅立葉變換,表示G的復(fù)共軛。
對于上述方法,在一種可能的實現(xiàn)方式中,根據(jù)所述最優(yōu)關(guān)聯(lián)濾波器確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系,包括:
采用式6a和式6b確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;η表示學(xué)習(xí)速率;gt表示所述當(dāng)前時刻的關(guān)聯(lián)輸出,Gt表示gt的離散傅立葉變換,表示Gt的復(fù)共軛;表示所述當(dāng)前時刻第l個特征維度的HOG特征,表示的離散傅立葉變換;表示所述當(dāng)前時刻第k個特征維度的HOG特征,表示的離散傅立葉變換,表示的復(fù)共軛;在所述上一幀的平移模型為和Bt-1的情況下,所述當(dāng)前幀的平移模型為和Bt;在所述上一幀的尺度模型為和Bt-1的情況下,所述當(dāng)前幀的尺度模型為和Bt。
為了解決上述技術(shù)問題,根據(jù)本發(fā)明的另一實施例,提供了一種目標(biāo)跟蹤裝置,包括:
獲取模塊,用于從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、所述上一幀的目標(biāo)尺度、所述上一幀的平移模型和所述上一幀的尺度模型;
平移樣本提取模塊,用于根據(jù)所述上一幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的平移樣本;
平移關(guān)聯(lián)值確定模塊,用于根據(jù)所述當(dāng)前幀的平移樣本和所述上一幀的平移模型確定所述當(dāng)前幀的平移關(guān)聯(lián)值;
目標(biāo)位置確定模塊,用于將使所述當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為所述當(dāng)前幀的目標(biāo)位置;
尺度樣本提取模塊,用于根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的尺度樣本;
尺度關(guān)聯(lián)值確定模塊,用于根據(jù)所述當(dāng)前幀的尺度樣本和所述上一幀的尺度模型確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;
目標(biāo)尺度確定模塊,用于將使所述當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為所述當(dāng)前幀的目標(biāo)尺度。
對于上述裝置,在一種可能的實現(xiàn)方式中,所述裝置還包括:
誤差平方和確定模塊,用于確定誤差平方和;
最優(yōu)關(guān)聯(lián)濾波器確定模塊,用于將使所述誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器;
對應(yīng)關(guān)系確定模塊,用于根據(jù)所述最優(yōu)關(guān)聯(lián)濾波器確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系。
對于上述裝置,在一種可能的實現(xiàn)方式中,所述裝置還包括:
目標(biāo)位置HOG特征確定模塊,用于根據(jù)所述當(dāng)前幀的目標(biāo)位置確定所述當(dāng)前幀的目標(biāo)位置HOG特征;
目標(biāo)尺度HOG特征確定模塊,用于根據(jù)所述當(dāng)前幀的目標(biāo)尺度確定所述當(dāng)前幀的目標(biāo)尺度HOG特征;
平移模型計算模塊,用于根據(jù)所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)位置HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的平移模型,其中,所述當(dāng)前幀的關(guān)聯(lián)輸出根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述當(dāng)前幀的目標(biāo)尺度確定;
尺度模型計算模塊,用于根據(jù)所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)尺度HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的尺度模型。
對于上述裝置,在一種可能的實現(xiàn)方式中,所述平移關(guān)聯(lián)值確定模塊具體用于:采用式1確定所述當(dāng)前幀的平移關(guān)聯(lián)值;
所述尺度關(guān)聯(lián)值確定模塊具體用于:采用式1確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;F-1表示傅里葉反變換;l表示第l個特征維度;d表示特征維度的總個數(shù);λ表示修正參數(shù);在所述上一幀的平移模型為和Bt-1、所述當(dāng)前幀的平移樣本為的情況下,所述當(dāng)前幀的平移關(guān)聯(lián)值為yt;在所述上一幀的尺度模型為和Bt-1、所述當(dāng)前幀的尺度樣本為的情況下,所述當(dāng)前幀的尺度關(guān)聯(lián)值為yt;表示的復(fù)共軛。
對于上述裝置,在一種可能的實現(xiàn)方式中,所述誤差平方和確定模塊具體用于:采用式4確定誤差平方和ε;
其中,l表示第l個特征維度;d表示特征維度的總個數(shù);hl表示所述第l個特征維度的關(guān)聯(lián)濾波器;pl表示所述第l個特征維度的HOG特征;g表示關(guān)聯(lián)輸出;λ表示修正參數(shù);
所述最優(yōu)關(guān)聯(lián)濾波器確定模塊具體用于:根據(jù)使式4的ε最小的hl確定所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl,所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl如式5所示;
其中,k表示第k個特征維度,pk表示所述第k個特征維度的HOG特征;Pk表示pk的離散傅立葉變換,表示Pk的復(fù)共軛;Pl表示pl的離散傅立葉變換;G表示g的離散傅立葉變換,表示G的復(fù)共軛。
對于上述裝置,在一種可能的實現(xiàn)方式中,所述對應(yīng)關(guān)系確定模塊具體用于:
采用式6a和式6b確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;η表示學(xué)習(xí)速率;gt表示所述當(dāng)前時刻的關(guān)聯(lián)輸出,Gt表示gt的離散傅立葉變換,表示Gt的復(fù)共軛;表示所述當(dāng)前時刻第l個特征維度的HOG特征,表示的離散傅立葉變換;表示所述當(dāng)前時刻第k個特征維度的HOG特征,表示的離散傅立葉變換,表示的復(fù)共軛;在所述上一幀的平移模型為和Bt-1的情況下,所述當(dāng)前幀的平移模型為和Bt;在所述上一幀的尺度模型為和Bt-1的情況下,所述當(dāng)前幀的尺度模型為和Bt。
有益效果
通過獲取上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型,提取當(dāng)前幀的平移樣本,確定當(dāng)前幀的平移關(guān)聯(lián)值,并將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置,提取當(dāng)前幀的尺度樣本,確定當(dāng)前幀的尺度關(guān)聯(lián)值,并將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度,根據(jù)本發(fā)明實施例的目標(biāo)跟蹤方法及裝置能夠在目標(biāo)尺度發(fā)生變化的情況下避免跟丟目標(biāo),且能提高跟蹤速度,從而大大提高了跟蹤效果,適用于實時跟蹤的應(yīng)用場景。
根據(jù)下面參考附圖對示例性實施例的詳細(xì)說明,本發(fā)明的其它特征及方面將變得清楚。
附圖說明
包含在說明書中并且構(gòu)成說明書的一部分的附圖與說明書一起示出了本發(fā)明的示例性實施例、特征和方面,并且用于解釋本發(fā)明的原理。
圖1示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的實現(xiàn)流程圖;
圖2示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的一示例性的實現(xiàn)流程圖;
圖3示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的一示例性的實現(xiàn)流程圖;
圖4示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法生成的跟蹤框與根據(jù)現(xiàn)有的目標(biāo)跟蹤方法生成的跟蹤框的示意圖;
圖5示出根據(jù)本發(fā)明另一實施例的目標(biāo)跟蹤裝置的結(jié)構(gòu)框圖;
圖6示出根據(jù)本發(fā)明另一實施例的目標(biāo)跟蹤裝置的一示例性的結(jié)構(gòu)框圖;
圖7示出了本發(fā)明的另一個實施例的一種目標(biāo)跟蹤設(shè)備的結(jié)構(gòu)框圖。
具體實施方式
以下將參考附圖詳細(xì)說明本發(fā)明的各種示例性實施例、特征和方面。附圖中相同的附圖標(biāo)記表示功能相同或相似的元件。盡管在附圖中示出了實施例的各種方面,但是除非特別指出,不必按比例繪制附圖。
在這里專用的詞“示例性”意為“用作例子、實施例或說明性”。這里作為“示例性”所說明的任何實施例不必解釋為優(yōu)于或好于其它實施例。
另外,為了更好的說明本發(fā)明,在下文的具體實施方式中給出了眾多的具體細(xì)節(jié)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,沒有某些具體細(xì)節(jié),本發(fā)明同樣可以實施。在一些實例中,對于本領(lǐng)域技術(shù)人員熟知的方法、手段、元件和電路未作詳細(xì)描述,以便于凸顯本發(fā)明的主旨。
實施例1
圖1示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的實現(xiàn)流程圖。如圖1所示,該方法主要包括:
在步驟S101中,從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型。
需要說明的是,本發(fā)明實施例的執(zhí)行主體可以為無人機,也可以為其他目標(biāo)跟蹤裝置,在此不作限定。
作為本發(fā)明實施例的一個示例,上一幀的目標(biāo)尺度可以為上一幀中目標(biāo)的面積占上一幀的總面積的比例,當(dāng)前幀的目標(biāo)尺度可以為當(dāng)前幀中目標(biāo)的面積占當(dāng)前幀的總面積的比例,以此類推。
在步驟S102中,根據(jù)上一幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的平移樣本。
作為本發(fā)明實施例的一個示例,假設(shè)上一幀的目標(biāo)尺度為M×N,則可以將上一幀的目標(biāo)位置確定為當(dāng)前搜索區(qū)域的幾何中心,并可以確定當(dāng)前搜索區(qū)域的尺度為2M×2N。在當(dāng)前搜索區(qū)域中搜索尺度為M×N的目標(biāo)圖像,并提取當(dāng)前幀的平移樣本。其中,當(dāng)前幀的平移樣本可以為在目標(biāo)尺度不變的情況下,目標(biāo)在當(dāng)前幀中移動得到的樣本。
在步驟S103中,根據(jù)當(dāng)前幀的平移樣本和上一幀的平移模型確定當(dāng)前幀的平移關(guān)聯(lián)值。
在步驟S104中,將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置。
在步驟S105中,根據(jù)當(dāng)前幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的尺度樣本。
其中,當(dāng)前幀的尺度樣本可以為在確定當(dāng)前幀的目標(biāo)位置后,根據(jù)當(dāng)前幀的目標(biāo)位置提取的目標(biāo)的不同尺度的樣本。
在步驟S106中,根據(jù)當(dāng)前幀的尺度樣本和上一幀的尺度模型確定當(dāng)前幀的尺度關(guān)聯(lián)值。
在步驟S107中,將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度。
在一種可能的實現(xiàn)方式中,根據(jù)當(dāng)前幀的平移樣本和上一幀的平移模型確定當(dāng)前幀的平移關(guān)聯(lián)值,具體為:采用式1確定當(dāng)前幀的平移關(guān)聯(lián)值;
根據(jù)當(dāng)前幀的尺度樣本和上一幀的尺度模型確定當(dāng)前幀的尺度關(guān)聯(lián)值,具體為:采用式1確定當(dāng)前幀的尺度關(guān)聯(lián)值;
其中,t表示當(dāng)前時刻,當(dāng)前時刻對應(yīng)的幀為當(dāng)前幀;t-1表示上一時刻,上一時刻對應(yīng)的幀為上一幀;F-1表示傅里葉反變換;l表示第l個特征維度;d表示特征維度的總個數(shù);λ表示修正參數(shù);在上一幀的平移模型為和Bt-1、當(dāng)前幀的平移樣本為的情況下,當(dāng)前幀的平移關(guān)聯(lián)值為yt;在上一幀的尺度模型為和Bt-1、當(dāng)前幀的尺度樣本為的情況下,當(dāng)前幀的尺度關(guān)聯(lián)值為yt;表示的復(fù)共軛。
根據(jù)本發(fā)明實施例的目標(biāo)跟蹤方法大大提高了尺度估測的魯棒性,能夠在目標(biāo)尺度變化、部分遮擋、離面旋轉(zhuǎn)和亮度變化的情況下跟蹤目標(biāo)更精確,從而達(dá)到更好的跟蹤效果。
圖2示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的一示例性的實現(xiàn)流程圖。如圖2所示,該方法包括:
在步驟S201中,從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型。
在步驟S202中,根據(jù)上一幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的平移樣本。
在步驟S203中,根據(jù)當(dāng)前幀的平移樣本和上一幀的平移模型確定當(dāng)前幀的平移關(guān)聯(lián)值。
在步驟S204中,將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置。
在步驟S205中,根據(jù)當(dāng)前幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的尺度樣本。
在步驟S206中,根據(jù)當(dāng)前幀的尺度樣本和上一幀的尺度模型確定當(dāng)前幀的尺度關(guān)聯(lián)值。
在步驟S207中,將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度。
在步驟S208中,確定誤差平方和。
作為本發(fā)明實施例的一個示例,在確定誤差平方和之前,該方法還包括:提取一系列含有目標(biāo)的圖像碎片的HOG(Histogram of Oriented Gradient,方向梯度直方圖)特征p1,p2,……,pt作為訓(xùn)練樣本,對應(yīng)的關(guān)聯(lián)輸出為g1,g2,……,gt,則在時刻t的最優(yōu)關(guān)聯(lián)濾波器ht是通過使式2的誤差平方和ε最小得到的:
其中,j表示第j個時刻;ht表示第t個時刻的關(guān)聯(lián)濾波器,ht的大小為M×N;pj表示第j個時刻的HOG特征,pj的大小為M×N;gj表示第j個時刻的關(guān)聯(lián)輸出,gj的大小為M×N;MN表示pj對應(yīng)的圖像碎片的大小為M×N;Ht表示ht的離散傅立葉變換;表示Ht的復(fù)共軛;Pj表示pj的離散傅立葉變換;Gj表示gj的離散傅立葉變換。其中,圖像碎片可以為視頻幀中含有目標(biāo)的截圖。式2中的是的帕塞瓦爾恒等式。
需要說明的是,關(guān)聯(lián)輸出是通過高斯方程構(gòu)建的。例如,在某一視頻幀中,將目標(biāo)框起來后,框里面是目標(biāo),框外面是背景。本示例構(gòu)建的關(guān)聯(lián)輸出結(jié)果可以為框內(nèi)幾何中心的值為255,框內(nèi)越靠近框邊,值逐漸衰減,框外的值為0,從而形成波峰在pj中心的高斯方程。
根據(jù)使式2的ε最小的ht確定第t個時刻的最優(yōu)關(guān)聯(lián)濾波器Ht,第t個時刻的最優(yōu)關(guān)聯(lián)濾波器Ht如式3所示;
其中,表示Gj的復(fù)共軛;表示Pj的復(fù)共軛。
由于在目標(biāo)跟蹤中,關(guān)聯(lián)濾波器大多是針對多維特征的,因此,可以由式2得到式4。作為本發(fā)明實施例的一個示例,確定誤差平方和,包括:采用式4確定誤差平方和ε;
其中,l表示第l個特征維度;d表示特征維度的總個數(shù);hl表示第l個特征維度的關(guān)聯(lián)濾波器;pl表示第l個特征維度的HOG特征;g表示關(guān)聯(lián)輸出;λ表示修正參數(shù)。
需要說明的是,由于式4只采用了一個時刻的HOG特征,因此可以看成是式2在第一個時刻的特殊情況。對采用式4得到的從第一個時刻到當(dāng)前時刻的誤差平方和進(jìn)行累加,可以得到誤差平方和的累加結(jié)果,將使該誤差平方和的累加結(jié)果最小的當(dāng)前時刻的關(guān)聯(lián)濾波器確定為當(dāng)前時刻的最優(yōu)關(guān)聯(lián)濾波器。其中,對誤差平方和進(jìn)行累加的方式可以參考式2。
在步驟S209中,將使誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器。
作為本發(fā)明實施例的一個示例,將使誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器,具體為:根據(jù)使式4的ε最小的hl確定第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl,第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl如式5所示;
其中,k表示第k個特征維度,pk表示第k個特征維度的HOG特征;Pk表示pk的離散傅立葉變換,表示Pk的復(fù)共軛;Pl表示pl的離散傅立葉變換;G表示g的離散傅立葉變換,表示G的復(fù)共軛。
其中,λ表示修正參數(shù)。由于在P的頻譜中會有頻率為0的部分,為了確保式5的分母不為0,因此加入修正參數(shù)λ。
為了加速計算,根據(jù)使式4的ε最小的hl確定第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl可以包括:對式4進(jìn)行快速傅立葉變換,再對快速傅立葉變換后的式4進(jìn)行一階偏導(dǎo)使其為0,從而得到最優(yōu)關(guān)聯(lián)濾波器Hl。
需要說明的是,由于式5只采用了一個時刻的HOG特征,因此可以看成是式3在第一個時刻的特殊情況。對采用式5得到的從第一個時刻到當(dāng)前時刻的最優(yōu)關(guān)聯(lián)濾波器進(jìn)行累加,可以得到最優(yōu)關(guān)聯(lián)濾波器的累加結(jié)果。其中,對最優(yōu)關(guān)聯(lián)濾波器進(jìn)行累加的方式可以參考式3。
在步驟S210中,根據(jù)最優(yōu)關(guān)聯(lián)濾波器確定當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系。
根據(jù)從第一個時刻到上一時刻的最優(yōu)關(guān)聯(lián)濾波器的累加結(jié)果,以及從第一個時刻到當(dāng)前時刻的最優(yōu)關(guān)聯(lián)濾波器的累加結(jié)果,可以確定當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系,即式6a和式6b。
圖3示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法的一示例性的實現(xiàn)流程圖。如圖3所示,該方法包括:
在步驟S301中,從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型。
在步驟S302中,根據(jù)上一幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的平移樣本。
在步驟S303中,根據(jù)當(dāng)前幀的平移樣本和上一幀的平移模型確定當(dāng)前幀的平移關(guān)聯(lián)值。
在步驟S304中,將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置。
在步驟S305中,根據(jù)當(dāng)前幀的目標(biāo)位置和上一幀的目標(biāo)尺度從當(dāng)前幀中提取當(dāng)前幀的尺度樣本。
在步驟S306中,根據(jù)當(dāng)前幀的尺度樣本和上一幀的尺度模型確定當(dāng)前幀的尺度關(guān)聯(lián)值。
在步驟S307中,將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度。
在步驟S308中,確定誤差平方和。
在步驟S309中,將使誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器。
在步驟S310中,根據(jù)最優(yōu)關(guān)聯(lián)濾波器確定當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系。
在步驟S311中,根據(jù)當(dāng)前幀的目標(biāo)位置確定當(dāng)前幀的目標(biāo)位置HOG特征。
在步驟S312中,根據(jù)當(dāng)前幀的目標(biāo)尺度確定當(dāng)前幀的目標(biāo)尺度HOG特征。
在步驟S313中,根據(jù)當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的目標(biāo)位置HOG特征和當(dāng)前幀的關(guān)聯(lián)輸出計算當(dāng)前幀的平移模型,其中,當(dāng)前幀的關(guān)聯(lián)輸出根據(jù)當(dāng)前幀的目標(biāo)位置和當(dāng)前幀的目標(biāo)尺度確定。
在步驟S314中,根據(jù)當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系、當(dāng)前幀的目標(biāo)尺度HOG特征和當(dāng)前幀的關(guān)聯(lián)輸出計算當(dāng)前幀的尺度模型。
其中,步驟S311可以在步驟S304之后、步驟S313之前執(zhí)行,步驟S312可以在步驟S307之后、步驟S313之前執(zhí)行。
作為本發(fā)明實施例的一個示例,根據(jù)當(dāng)前幀的目標(biāo)位置和當(dāng)前幀的目標(biāo)尺度,可以從當(dāng)前幀中鎖定目標(biāo),從而可以從當(dāng)前幀中提取當(dāng)前幀的目標(biāo)位置HOG特征和當(dāng)前幀的目標(biāo)尺度HOG特征。通過計算得到當(dāng)前幀的平移模型和當(dāng)前幀的尺度模型,可以用于下一幀的目標(biāo)位置和目標(biāo)尺度的估測。
在一種可能的實現(xiàn)方式中,根據(jù)最優(yōu)關(guān)聯(lián)濾波器確定當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系,包括:
采用式6a和式6b確定當(dāng)前幀的平移模型與上一幀的平移模型的對應(yīng)關(guān)系、當(dāng)前幀的尺度模型與上一幀的尺度模型的對應(yīng)關(guān)系;
其中,t表示當(dāng)前時刻,當(dāng)前時刻對應(yīng)的幀為當(dāng)前幀;t-1表示上一時刻,上一時刻對應(yīng)的幀為上一幀;η表示學(xué)習(xí)速率;gt表示當(dāng)前時刻的關(guān)聯(lián)輸出,Gt表示gt的離散傅立葉變換,表示Gt的復(fù)共軛;表示當(dāng)前時刻第l個特征維度的HOG特征,表示的離散傅立葉變換;表示當(dāng)前時刻第k個特征維度的HOG特征,表示的離散傅立葉變換,表示的復(fù)共軛;在上一幀的平移模型為和Bt-1的情況下,當(dāng)前幀的平移模型為和Bt;在上一幀的尺度模型為和Bt-1的情況下,當(dāng)前幀的尺度模型為和Bt。其中,η是用于評估從上一幀到當(dāng)前幀的學(xué)習(xí)速率的參數(shù)。學(xué)習(xí)速率η是人為設(shè)定的,例如可以為0.025,在此不作限定。
圖4示出根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法生成的跟蹤框與根據(jù)現(xiàn)有的目標(biāo)跟蹤方法生成的跟蹤框的示意圖。在圖4中,粗實線表示根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法生成的跟蹤框,細(xì)實線表示根據(jù)現(xiàn)有的目標(biāo)跟蹤方法生成的跟蹤框。由圖4可知,根據(jù)本發(fā)明一實施例的目標(biāo)跟蹤方法大大提高了跟蹤準(zhǔn)確率。
這樣,通過獲取上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型,提取當(dāng)前幀的平移樣本,確定當(dāng)前幀的平移關(guān)聯(lián)值,并將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置,提取當(dāng)前幀的尺度樣本,確定當(dāng)前幀的尺度關(guān)聯(lián)值,并將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度,根據(jù)本發(fā)明實施例的目標(biāo)跟蹤方法能夠在目標(biāo)尺度發(fā)生變化的情況下避免跟丟目標(biāo),且能提高跟蹤速度,從而大大提高了跟蹤效果,適用于實時跟蹤的應(yīng)用場景。
實施例2
圖5示出根據(jù)本發(fā)明另一實施例的目標(biāo)跟蹤裝置的結(jié)構(gòu)框圖。該裝置可以用于運行圖1至圖3所示的目標(biāo)跟蹤方法。為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。
如圖5所示,該裝置包括:獲取模塊501,用于從視頻流中獲取當(dāng)前幀的上一幀的目標(biāo)位置、所述上一幀的目標(biāo)尺度、所述上一幀的平移模型和所述上一幀的尺度模型;平移樣本提取模塊502,用于根據(jù)所述上一幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的平移樣本;平移關(guān)聯(lián)值確定模塊503,用于根據(jù)所述當(dāng)前幀的平移樣本和所述上一幀的平移模型確定所述當(dāng)前幀的平移關(guān)聯(lián)值;目標(biāo)位置確定模塊504,用于將使所述當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為所述當(dāng)前幀的目標(biāo)位置;尺度樣本提取模塊505,用于根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述上一幀的目標(biāo)尺度從所述當(dāng)前幀中提取所述當(dāng)前幀的尺度樣本;尺度關(guān)聯(lián)值確定模塊506,用于根據(jù)所述當(dāng)前幀的尺度樣本和所述上一幀的尺度模型確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;目標(biāo)尺度確定模塊507,用于將使所述當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為所述當(dāng)前幀的目標(biāo)尺度。
圖6示出根據(jù)本發(fā)明另一實施例的目標(biāo)跟蹤裝置的一示例性的結(jié)構(gòu)框圖。該裝置可以用于運行圖1至圖3所示的目標(biāo)跟蹤方法。圖6中標(biāo)號與圖5相同的組件具有相同的功能,為簡明起見,省略對這些組件的詳細(xì)說明。為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。如圖6所示:
在一種可能的實現(xiàn)方式中,所述裝置還包括:誤差平方和確定模塊508,用于確定誤差平方和;最優(yōu)關(guān)聯(lián)濾波器確定模塊509,用于將使所述誤差平方和最小的關(guān)聯(lián)濾波器確定為最優(yōu)關(guān)聯(lián)濾波器;對應(yīng)關(guān)系確定模塊510,用于根據(jù)所述最優(yōu)關(guān)聯(lián)濾波器確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系。
在一種可能的實現(xiàn)方式中,所述裝置還包括:目標(biāo)位置HOG特征確定模塊511,用于根據(jù)所述當(dāng)前幀的目標(biāo)位置確定所述當(dāng)前幀的目標(biāo)位置HOG特征;目標(biāo)尺度HOG特征確定模塊512,用于根據(jù)所述當(dāng)前幀的目標(biāo)尺度確定所述當(dāng)前幀的目標(biāo)尺度HOG特征;平移模型計算模塊513,用于根據(jù)所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)位置HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的平移模型,其中,所述當(dāng)前幀的關(guān)聯(lián)輸出根據(jù)所述當(dāng)前幀的目標(biāo)位置和所述當(dāng)前幀的目標(biāo)尺度確定;尺度模型計算模塊514,用于根據(jù)所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系、所述當(dāng)前幀的目標(biāo)尺度HOG特征和所述當(dāng)前幀的關(guān)聯(lián)輸出計算所述當(dāng)前幀的尺度模型。
在一種可能的實現(xiàn)方式中,所述平移關(guān)聯(lián)值確定模塊503具體用于:采用式1確定所述當(dāng)前幀的平移關(guān)聯(lián)值;所述尺度關(guān)聯(lián)值確定模塊506具體用于:采用式1確定所述當(dāng)前幀的尺度關(guān)聯(lián)值;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;F-1表示傅里葉反變換;l表示第l個特征維度;d表示特征維度的總個數(shù);λ表示修正參數(shù);在所述上一幀的平移模型為和Bt-1、所述當(dāng)前幀的平移樣本為的情況下,所述當(dāng)前幀的平移關(guān)聯(lián)值為yt;在所述上一幀的尺度模型為和Bt-1、所述當(dāng)前幀的尺度樣本為的情況下,所述當(dāng)前幀的尺度關(guān)聯(lián)值為yt;表示的復(fù)共軛。
在一種可能的實現(xiàn)方式中,所述誤差平方和確定模塊508具體用于:采用式4確定誤差平方和ε;
其中,l表示第l個特征維度;d表示特征維度的總個數(shù);hl表示所述第l個特征維度的關(guān)聯(lián)濾波器;pl表示所述第l個特征維度的HOG特征;g表示關(guān)聯(lián)輸出;λ表示修正參數(shù);
所述最優(yōu)關(guān)聯(lián)濾波器確定模塊509具體用于:根據(jù)使式4的ε最小的hl確定所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl,所述第l個特征維度的最優(yōu)關(guān)聯(lián)濾波器Hl如式5所示;
其中,k表示第k個特征維度,pk表示所述第k個特征維度的HOG特征;Pk表示pk的離散傅立葉變換,表示Pk的復(fù)共軛;Pl表示pl的離散傅立葉變換;G表示g的離散傅立葉變換,表示G的復(fù)共軛。
在一種可能的實現(xiàn)方式中,所述對應(yīng)關(guān)系確定模塊510具體用于:采用式6a和式6b確定所述當(dāng)前幀的平移模型與所述上一幀的平移模型的對應(yīng)關(guān)系、所述當(dāng)前幀的尺度模型與所述上一幀的尺度模型的對應(yīng)關(guān)系;
其中,t表示當(dāng)前時刻,所述當(dāng)前時刻對應(yīng)的幀為所述當(dāng)前幀;t-1表示上一時刻,所述上一時刻對應(yīng)的幀為所述上一幀;η表示學(xué)習(xí)速率;gt表示所述當(dāng)前時刻的關(guān)聯(lián)輸出,Gt表示gt的離散傅立葉變換,表示Gt的復(fù)共軛;表示所述當(dāng)前時刻第l個特征維度的HOG特征,表示的離散傅立葉變換;表示所述當(dāng)前時刻第k個特征維度的HOG特征,表示的離散傅立葉變換,表示的復(fù)共軛;在所述上一幀的平移模型為和Bt-1的情況下,所述當(dāng)前幀的平移模型為和Bt;在所述上一幀的尺度模型為和Bt-1的情況下,所述當(dāng)前幀的尺度模型為和Bt。
這樣,通過獲取上一幀的目標(biāo)位置、上一幀的目標(biāo)尺度、上一幀的平移模型和上一幀的尺度模型,提取當(dāng)前幀的平移樣本,確定當(dāng)前幀的平移關(guān)聯(lián)值,并將使當(dāng)前幀的平移關(guān)聯(lián)值最大的位置確定為當(dāng)前幀的目標(biāo)位置,提取當(dāng)前幀的尺度樣本,確定當(dāng)前幀的尺度關(guān)聯(lián)值,并將使當(dāng)前幀的尺度關(guān)聯(lián)值最大的尺度確定為當(dāng)前幀的目標(biāo)尺度,根據(jù)本發(fā)明實施例的目標(biāo)跟蹤裝置能夠在目標(biāo)尺度發(fā)生變化的情況下避免跟丟目標(biāo),且能提高跟蹤速度,從而大大提高了跟蹤效果,適用于實時跟蹤的應(yīng)用場景。
實施例3
圖7示出了本發(fā)明的另一個實施例的一種目標(biāo)跟蹤設(shè)備的結(jié)構(gòu)框圖。所述目標(biāo)跟蹤設(shè)備1100可以是具備計算能力的主機服務(wù)器、個人計算機PC、或者可攜帶的便攜式計算機或終端等。本發(fā)明具體實施例并不對計算節(jié)點的具體實現(xiàn)做限定。
所述目標(biāo)跟蹤設(shè)備1100包括處理器(processor)1110、通信接口(Communications Interface)1120、存儲器(memory)1130和總線1150。其中,處理器1110、通信接口1120、以及存儲器1130通過總線1150完成相互間的通信。
通信接口1120用于與網(wǎng)絡(luò)設(shè)備通信,其中網(wǎng)絡(luò)設(shè)備包括例如虛擬機管理中心、共享存儲等。
處理器1110用于執(zhí)行程序。處理器1110可能是一個中央處理器CPU,或者是專用集成電路ASIC(Application Specific Integrated Circuit),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。
存儲器1130用于存放文件。存儲器1130可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。存儲器1130也可以是存儲器陣列。存儲器1130還可能被分塊,并且所述塊可按一定的規(guī)則組合成虛擬卷。
在一種可能的實施方式中,上述程序可為包括計算機操作指令的程序代碼。該程序具體可用于:實現(xiàn)實施例1中各步驟的操作。
本領(lǐng)域普通技術(shù)人員可以意識到,本文所描述的實施例中的各示例性單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能究竟以硬件還是軟件形式來實現(xiàn),取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以針對特定的應(yīng)用選擇不同的方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
如果以計算機軟件的形式來實現(xiàn)所述功能并作為獨立的產(chǎn)品銷售或使用時,則在一定程度上可認(rèn)為本發(fā)明的技術(shù)方案的全部或部分(例如對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分)是以計算機軟件產(chǎn)品的形式體現(xiàn)的。該計算機軟件產(chǎn)品通常存儲在計算機可讀取的非易失性存儲介質(zhì)中,包括若干指令用以使得計算機設(shè)備(可以是個人計算機、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各實施例方法的全部或部分步驟。而前述的存儲介質(zhì)包括U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。