一種基于稀疏光流法的多角點(diǎn)跟蹤方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于圖像處理技術(shù)領(lǐng)域,尤其涉及一種基于稀疏光流法的多角點(diǎn)跟蹤方法 及裝置。
【背景技術(shù)】
[0002] 目標(biāo)跟蹤是一門融合圖像處理,模式識別,概率論等眾多學(xué)科的復(fù)雜課題,在國防 建設(shè),航空領(lǐng)域,醫(yī)藥行業(yè),智能交通等領(lǐng)域都得到了廣泛的應(yīng)用。
[0003] 在當(dāng)前的目標(biāo)跟蹤算法中,依照目標(biāo)定位的方法首先可以將跟蹤方法分為概率跟 蹤方法和確定性跟蹤算法。概率跟蹤算法采用的是貝葉斯濾波理論解決狀態(tài)估計(jì)問題,通 過對目標(biāo)參數(shù)的預(yù)測和修正過程采用一種遞推方式實(shí)現(xiàn)時(shí)變狀態(tài)的估計(jì),表征目標(biāo)的狀態(tài) 量通常由坐標(biāo),速度等構(gòu)成,狀態(tài)量通過狀態(tài)轉(zhuǎn)移模型向前推進(jìn)實(shí)現(xiàn)狀態(tài)預(yù)測;除去利用概 率論知識的跟蹤方式,剩下的目標(biāo)跟蹤方式被認(rèn)為是確定性跟蹤方式,依照目標(biāo)建模所用 的視覺特征不同,確定性目標(biāo)跟蹤算法又可以分為基于顏色特征的MeanShift跟蹤算法, 基于光流特征的光流跟蹤算法以及基于特征描述子的目標(biāo)跟蹤算法等等類型。
[0004] 智能交通管理系統(tǒng)中的電子警察在進(jìn)行車輛跟蹤時(shí),目標(biāo)背景往往是位于十字路 口,畫面場景往往比較復(fù)雜,對算法在復(fù)雜場景下的跟蹤效果有一定要求,同時(shí)由于圖像在 戶外取景,需要考慮光照變化和天氣變化等各種不同的場景變化,要求跟蹤算法有較強(qiáng)的 魯棒性;同時(shí)電子警察要求實(shí)時(shí)判罰,所以對于算法的性能開銷也有一定的要求。
[0005] 對于電子警察的應(yīng)用,現(xiàn)有的Kalman濾波法是一種基于貝葉斯濾波理論的跟蹤 算法,Kalman濾波模型建立在線性高斯模型基礎(chǔ)上,只能對平穩(wěn)運(yùn)動(dòng)目標(biāo)進(jìn)行有效預(yù)測。若 應(yīng)用在電子警察的十字路口場景中,跟蹤車輛會出現(xiàn)不規(guī)則的啟停和加減速狀態(tài),Kalman 濾波不能得到一個(gè)有效的跟蹤準(zhǔn)確率。同時(shí)由于Kalman濾波包含預(yù)測和修正兩個(gè)過程,在 利用當(dāng)前狀態(tài)模型完成軌跡預(yù)測后,Kalman濾波需要通過修正流程更新當(dāng)前狀態(tài)模型,而 更新流程需要一組目標(biāo)位置的測量值作為輸入,在電子警察的應(yīng)用場景中,很難通過其它 手段得到這樣一組測量值,以致算法很難整體實(shí)現(xiàn)。
[0006] 而Lucas-Kanade稀疏光流跟蹤算法具有較強(qiáng)的抗干擾性,適合在十字路口這種 場景復(fù)雜的環(huán)境中實(shí)現(xiàn)跟蹤算法,但是Lucas-Kanade算法仍然存在一定的不足之處,較大 的運(yùn)動(dòng)或者噪聲的干擾可能導(dǎo)致跟蹤點(diǎn)移出跟蹤窗口,雖然采用金字塔算法后,較大運(yùn)動(dòng) 導(dǎo)致的算法失敗得到改善,由于噪聲或者目標(biāo)形變的影響,但仍存在一定算法失敗的概率。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明的目的是提供一種基于稀疏光流法的多角點(diǎn)跟蹤方法及裝置,適用于復(fù)雜 場景目標(biāo)跟蹤,克服了現(xiàn)有技術(shù)在復(fù)雜場景跟蹤效果差,無法應(yīng)對目標(biāo)的不規(guī)則加減速、跟 蹤魯棒性差,或者不能應(yīng)用于實(shí)時(shí)系統(tǒng)的問題。
[0008] 為了實(shí)現(xiàn)上述目的,本發(fā)明技術(shù)方案如下:
[0009] -種基于稀疏光流法的多角點(diǎn)跟蹤方法,用于對待處理視頻圖像序列進(jìn)行目標(biāo)跟 蹤,該方法包括:
[0010] 結(jié)合參考視頻圖像中K個(gè)角點(diǎn)的鄰域窗口所有像素點(diǎn)的像素值,水平方向?qū)?shù)值 以及垂直方向?qū)?shù)值,在當(dāng)前待跟蹤視頻圖像的當(dāng)前跟蹤窗口中基于稀疏光流法得到所述 K個(gè)角點(diǎn)在待跟蹤視頻圖像中的偏移信息和當(dāng)前位置;
[0011] 判斷所述K個(gè)角點(diǎn)的偏移信息是否可信,如果全部角點(diǎn)的偏移信息都不可信,則 以歷史偏移信息計(jì)算當(dāng)前目標(biāo)位置,否則,利用可信角點(diǎn)的偏移信息計(jì)算當(dāng)前目標(biāo)位置;
[0012] 更新待跟蹤視頻圖像中需要更新的角點(diǎn),保存待跟蹤視頻圖像中更新后K個(gè)角點(diǎn) 的鄰域窗口中所有像素點(diǎn)的像素值,水平方向?qū)?shù)值以及垂直方向?qū)?shù)值,將當(dāng)前待跟蹤 視頻圖像作為參考視頻圖像,轉(zhuǎn)入下一個(gè)待跟蹤視頻圖像進(jìn)行目標(biāo)跟蹤。
[0013] 其中,所述當(dāng)前待跟蹤視頻圖像的當(dāng)前跟蹤窗口通過如下步驟獲得:
[0014] 如果當(dāng)前待跟蹤視頻圖像是第一幀視頻圖像,則獲取目標(biāo)位置,基于目標(biāo)位置作 矩形框作為當(dāng)前跟蹤窗口;如果當(dāng)前待跟蹤視頻圖像不是第一幀視頻圖像,則當(dāng)前跟蹤窗 口與參考視頻圖像的跟蹤窗口大小一致,當(dāng)前跟蹤窗口的中心位置通過參考視頻圖像計(jì)算 獲得的目標(biāo)位置得到,如果沒有參考視頻圖像計(jì)算獲得的目標(biāo)位置,則采用參考視頻圖像 的跟蹤窗口位置作為當(dāng)前跟蹤窗口位置;
[0015] 所述K個(gè)角點(diǎn)通過如下方法獲得:
[0016] 如果當(dāng)前待跟蹤視頻圖像是第一幀視頻圖像,則在當(dāng)前跟蹤窗口內(nèi)以目標(biāo)位置為 中心獲得角點(diǎn)搜索窗口,在角點(diǎn)搜索窗口內(nèi)使用Harris方法計(jì)算角點(diǎn)搜索窗口內(nèi)每個(gè)像 素點(diǎn)的最小特征值,并按照最小特征值排列,從大到小選取K個(gè)像素點(diǎn)作為待跟蹤的角點(diǎn); 如果當(dāng)前待跟蹤視頻圖像不是第一幀視頻圖像,則以參考視頻圖像中的K個(gè)角點(diǎn)為待跟蹤 的角點(diǎn)。
[0017] 本技術(shù)方案所述判斷所述K個(gè)角點(diǎn)的偏移信息是否可信,包括步驟:
[0018] 根據(jù)如下公式為K個(gè)角點(diǎn)設(shè)置偏移置信度T:
[0019] T = MinEig/PixelDiff
[0020] MinEig = A22+An-sqrt ((An-A22) X (An-A22)+4XA12XA12)
[0021] PixelDiff = Σ Σ abs (Icur-Ipre)
[0022]
[0023] 其中MinEig表示該角點(diǎn)的最小特征值,PixelDiff表示待跟蹤視頻圖像與前一幀 視頻圖像角點(diǎn)鄰域窗口內(nèi)像素點(diǎn)像素值差值的和,為待跟蹤視頻圖像中角點(diǎn)鄰域窗口 內(nèi)像素點(diǎn)的像素值,Ipra為前一幀視頻圖像內(nèi)角點(diǎn)鄰域窗內(nèi)像素點(diǎn)的像素值,Ix表示待跟蹤 視頻圖像角點(diǎn)的鄰域窗口中像素值在X方向的導(dǎo)數(shù),Iy表示待跟蹤視頻圖像角點(diǎn)的鄰域窗 口中像素值在Y方向的導(dǎo)數(shù);
[0024] 判斷角點(diǎn)的偏移置信度是否小于指定閾值,如果小于指定閾值,則認(rèn)為該角點(diǎn)的 偏移信息不可信,否則認(rèn)為該角點(diǎn)的偏移信息可信。
[0025] 本發(fā)明為角點(diǎn)設(shè)置偏移置信度,并與指定閾值進(jìn)行比較,判斷待跟蹤視頻圖像中 的角點(diǎn)的偏移信息是否可信,可以避免由于跟蹤算法準(zhǔn)確率限制造成的位置偏離、或者跟 蹤目標(biāo)形變、遮擋等造成的特征減弱以至于不利于跟蹤的影響。
[0026] 本技術(shù)方案所述利用可信角點(diǎn)的偏移信息計(jì)算當(dāng)前目標(biāo)位置,包括步驟:
[0027] 首先根據(jù)偏移置信度按照如下公式計(jì)算角點(diǎn)的偏移權(quán)重值:
[0028] w;= Σ T;
[0029] 然后按照如下公式進(jìn)行加權(quán)求和得到當(dāng)前目標(biāo)偏移:
[0030] Dx =Σ,ψ? · xi Dy = Xw;· y;
[0031] 其中,Dx,Dy分別為跟蹤目標(biāo)的最終X方向偏移和Y方向偏移;Wl為偏移置信度大 于等于指定閾值的角點(diǎn)的偏移權(quán)重值,?\為偏移置信度大于等于指定閾值的角點(diǎn)的偏移置 信度,Xl和yi分別為偏移置信度大于等于指定閾值的角點(diǎn)的水平和垂直方向偏移值;
[0032] 根據(jù)當(dāng)前目標(biāo)偏移Dx,Dy,以及參考視頻圖像中的目標(biāo)位置計(jì)算得到當(dāng)前目標(biāo)位 置。
[0033] 本技術(shù)方案所述更新待跟蹤視頻圖像中需要更新角點(diǎn),為更新待跟蹤視頻圖像中 不可信角點(diǎn),具體包括步驟:
[0034] 對于待跟蹤視頻圖像中的不可信角點(diǎn),根據(jù)當(dāng)前目標(biāo)位置設(shè)置角點(diǎn)搜索窗口,計(jì) 算角點(diǎn)搜索窗口內(nèi)所有像素鄰域窗口的自相關(guān)矩陣,并對每個(gè)像素計(jì)算自相關(guān)矩陣的最小 特征值;
[0035] 對角點(diǎn)搜索窗口內(nèi)所有像素點(diǎn)依照最小特征值排序,輸出最小特征值最大的像素 點(diǎn)作為當(dāng)前更新后的角點(diǎn);
[0036] 其中,所述像素鄰域窗口的自相關(guān)矩陣計(jì)算公式如下:
[0037]
[0038] 其中A為鄰域窗口自相關(guān)矩陣,Ix為鄰域窗口內(nèi)像素水平方向?qū)?shù),仁為鄰域窗 口內(nèi)像素垂直方向?qū)?shù);
[0039] 所述自相關(guān)矩陣的最小特征值計(jì)算公式如下:
[0040]E=A22+An-sqrt((An-A22)X(An-A22)+A12XA12)
[0041] 其中,E為像素自相關(guān)矩陣的最小特征值,An,A12,A21,A22為自相關(guān)矩陣的矩陣元素 值。
[0042] 本發(fā)明還基于偏移置信度提出了角點(diǎn)更新策略,利用角點(diǎn)搜索算法重新在目標(biāo)附 近尋找角點(diǎn)進(jìn)行替換,以提高跟蹤算法的可靠性和準(zhǔn)確率。
[0043] 本發(fā)明同時(shí)還提出了一種基于稀疏光