本發(fā)明涉及視頻跟蹤技術(shù),尤其涉及行人多目標(biāo)跟蹤方法和裝置。
背景技術(shù):
目前,行人多目標(biāo)跟蹤技術(shù)越來越受到學(xué)術(shù)界和商業(yè)界的關(guān)注。行人多目標(biāo)跟蹤作為一項(xiàng)重要的基礎(chǔ)性技術(shù),通常在安防監(jiān)控、客流統(tǒng)計(jì)等諸多應(yīng)用場景下有著極為重要的價(jià)值。行人多目標(biāo)跟蹤技術(shù)旨在通過計(jì)算機(jī)視覺技術(shù)在監(jiān)控視頻場景中得到每個(gè)目標(biāo)從出現(xiàn)在視野中到從視野中消失的完整運(yùn)動(dòng)軌跡。由于不同監(jiān)控場景下行人存在遮擋、運(yùn)動(dòng)模式復(fù)雜等差異大的問題,行人多目標(biāo)跟蹤一直是圖像識(shí)別中難度較大的領(lǐng)域(技術(shù))。
多目標(biāo)跟蹤研究中的一個(gè)重要處理過程是數(shù)據(jù)關(guān)聯(lián)(dataassociation)。數(shù)據(jù)關(guān)聯(lián)分為基于在線(online)的和基于離線(offline)的方法。基于離線的方法,是在得到一個(gè)時(shí)間段的檢測信息后,再根據(jù)一些最優(yōu)化的策略得到這段時(shí)間內(nèi)各個(gè)目標(biāo)的運(yùn)動(dòng)軌跡,但是這種方法不能在當(dāng)前幀輸出各目標(biāo)軌跡,從而不適用于安防等需要實(shí)時(shí)性比較強(qiáng)的應(yīng)用場景中。而基于在線的數(shù)據(jù)關(guān)聯(lián)方法在得到當(dāng)前視頻幀之后輸出當(dāng)前視頻幀中所有被跟蹤目標(biāo)的運(yùn)動(dòng)軌跡(位置),并在之后不會(huì)修改之前得到的運(yùn)動(dòng)軌跡,雖然不會(huì)產(chǎn)生時(shí)延,但因?yàn)樵摲椒ㄈ鄙俑檶?duì)象“未來”的運(yùn)動(dòng)信息,往往會(huì)出現(xiàn)匹配錯(cuò)誤的情況,造成跟蹤軌跡不連續(xù)、跟蹤軌跡發(fā)生交換等。而現(xiàn)有基于在線的數(shù)據(jù)關(guān)聯(lián)方法也多是從表觀特征的相似性來度量,沒有考慮到軌跡自身的語義信息。
基于深度學(xué)習(xí)的行人檢測方法,相比傳統(tǒng)的行人檢測方法,提高了目標(biāo)檢測的精確度。使用深度神經(jīng)網(wǎng)絡(luò)提取到的行人表觀特征,相比傳統(tǒng)方法手工設(shè)計(jì)出的表觀特征也具有更強(qiáng)的表達(dá)能力和更好的魯棒性。而上述兩方面的進(jìn)展并未被應(yīng)用在行人多目標(biāo)跟蹤方法中。
cn106097391a公布了一種基于深度神經(jīng)網(wǎng)絡(luò)的識(shí)別輔助的多目標(biāo)跟蹤方法,該方法中使用深度神經(jīng)網(wǎng)絡(luò)用于在目標(biāo)消失再現(xiàn)后,進(jìn)行軌跡的恢復(fù),可以改善長距離跟蹤效果,具體來說就是首先使用距離度量進(jìn)行目標(biāo)之間的關(guān)聯(lián),將沒有分配到跟蹤對(duì)象的檢測目標(biāo)通過識(shí)別網(wǎng)絡(luò),識(shí)別出與其對(duì)應(yīng)的跟蹤對(duì)象,從而可以在目標(biāo)消失后重新恢復(fù)跟蹤。但是這種方法對(duì)表觀特征比較依賴,并沒有充分使用跟蹤對(duì)象的運(yùn)動(dòng)和位置信息,另外該方法輸出的軌跡不能夠連續(xù)。
綜上,現(xiàn)有視頻監(jiān)控場景下對(duì)多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋等問題。
技術(shù)實(shí)現(xiàn)要素:
為了克服現(xiàn)有技術(shù)的不足,本發(fā)明的目的之一在于提供一種行人多目標(biāo)跟蹤方法,其能解決現(xiàn)有視頻監(jiān)控場景下對(duì)多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的問題。
本發(fā)明的目的之二在于提供一種行人多目標(biāo)跟蹤裝置,其能解決現(xiàn)有視頻監(jiān)控場景下對(duì)多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的問題。
本發(fā)明的目的之三在于提供一種行人多目標(biāo)跟蹤裝置,其能解決現(xiàn)有視頻監(jiān)控場景下對(duì)多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的問題。
本發(fā)明的目的之一采用以下技術(shù)方案實(shí)現(xiàn):
一種行人多目標(biāo)跟蹤方法,包括以下步驟:
根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象;
若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象;
檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件;
若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
進(jìn)一步地,所述根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象之后,還包括以下步驟:
若檢測到所述重現(xiàn)對(duì)象,則將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡。
進(jìn)一步地,所述根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象之前,還包括以下步驟:
將優(yōu)質(zhì)對(duì)象加入到所述優(yōu)質(zhì)對(duì)象的跟蹤軌跡,所述優(yōu)質(zhì)對(duì)象為跟蹤質(zhì)量符合預(yù)設(shè)條件的所述跟蹤對(duì)象;
將遮擋對(duì)象加入到所述遮擋對(duì)象的跟蹤軌跡,所述遮擋對(duì)象為符合遮擋條件的跟蹤對(duì)象。
進(jìn)一步地,所述根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,具體為:
所述檢測范圍隨所述丟失對(duì)象丟失時(shí)間的增大而增大,且所述檢測范圍不超過上限值。
進(jìn)一步地,所述根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象,具體為:
判斷在所述檢測范圍內(nèi)檢測到的所述跟蹤對(duì)象與所述丟失對(duì)象的表觀特征距離是否小于重現(xiàn)閾值,若是,則為檢測到所述重現(xiàn)對(duì)象,且所述表觀特征距離小于所述重現(xiàn)閾值的跟蹤對(duì)象即為所述重現(xiàn)對(duì)象。
進(jìn)一步地,所述恢復(fù)條件具體為:
所述新生對(duì)象與所述失蹤對(duì)象的表觀特征距離小于恢復(fù)閾值,且所述新生對(duì)象的跟蹤質(zhì)量符合所述預(yù)設(shè)條件。
進(jìn)一步地,所述表觀特征是通過深度神經(jīng)網(wǎng)絡(luò)獲取的;
所述檢測重現(xiàn)對(duì)象和檢測新生對(duì)象是通過fasterr-cnn進(jìn)行檢測的;
所述跟蹤軌跡是通過kcf跟蹤算法進(jìn)行的。
本發(fā)明的目的之二采用以下技術(shù)方案實(shí)現(xiàn):
一種行人多目標(biāo)跟蹤裝置,包括:
擴(kuò)大檢測模塊,用于根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象;
失蹤對(duì)象判定模塊,用于若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象;
新生對(duì)象判斷模塊,用于檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件;
新生對(duì)象跟蹤模塊,用于若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
進(jìn)一步地,所述擴(kuò)大檢測模塊之前,所述行人多目標(biāo)跟蹤裝置還包括遮擋對(duì)象跟蹤模塊和優(yōu)質(zhì)對(duì)象跟蹤模塊;
所述遮擋對(duì)象跟蹤模塊用于將遮擋對(duì)象加入到所述遮擋對(duì)象的跟蹤軌跡,所述遮擋對(duì)象為符合遮擋條件的跟蹤對(duì)象;
所述優(yōu)質(zhì)對(duì)象跟蹤模塊用于將優(yōu)質(zhì)對(duì)象加入到所述優(yōu)質(zhì)對(duì)象的跟蹤軌跡,所述優(yōu)質(zhì)對(duì)象為跟蹤質(zhì)量符合預(yù)設(shè)條件的所述跟蹤對(duì)象。
本發(fā)明的目的之三采用以下技術(shù)方案實(shí)現(xiàn):
一種行人多目標(biāo)跟蹤裝置,包括:
處理器以及用于存儲(chǔ)處理器可執(zhí)行的指令的存儲(chǔ)器;
所述處理器被配置為:
根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象;
若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象;
檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件;
若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
相比現(xiàn)有技術(shù),本發(fā)明的有益效果在于:在多目標(biāo)跟蹤的關(guān)聯(lián)過程提出分階段、多狀態(tài)關(guān)聯(lián)框架。通過使用多個(gè)狀態(tài)來管理跟蹤對(duì)象的生命周期,解決了多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的問題。
附圖說明
圖1為本發(fā)明實(shí)施例一的行人多目標(biāo)跟蹤方法的流程示意圖;
圖2為一種的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實(shí)施例二的行人多目標(biāo)跟蹤方法的流程示意圖;
圖4為本發(fā)明實(shí)施例三的行人多目標(biāo)跟蹤裝置的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例四的行人多目標(biāo)跟蹤裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面,結(jié)合附圖以及具體實(shí)施方式,對(duì)本發(fā)明做進(jìn)一步描述,需要說明的是,在不相沖突的前提下,以下描述的各實(shí)施例之間或各技術(shù)表觀特征之間可以任意組合形成新的實(shí)施例。
實(shí)施例一
多目標(biāo)跟蹤(mot)的主要任務(wù)就是給定一個(gè)圖像序列,找到圖像序列中運(yùn)動(dòng)的多個(gè)目標(biāo),并將不同幀中的運(yùn)動(dòng)目標(biāo)一一對(duì)應(yīng)(identity),然后給出不同目標(biāo)的運(yùn)動(dòng)軌跡。運(yùn)動(dòng)軌跡(trajectory)為多目標(biāo)跟蹤的輸出量,一條軌跡對(duì)應(yīng)著其中某個(gè)特定目標(biāo)在不同時(shí)刻出現(xiàn)在圖像中的位置序列。
數(shù)據(jù)關(guān)聯(lián)(dataassociation)是多目標(biāo)跟蹤任務(wù)中經(jīng)常使用的典型處理過程,用于解決目標(biāo)間的匹配問題,使得最終的輸出運(yùn)動(dòng)軌跡中,一條運(yùn)動(dòng)軌跡只包含同一個(gè)目標(biāo)在不同時(shí)刻的出現(xiàn)位置。本發(fā)明的目的在于將可能處于不同狀態(tài)的同一目標(biāo)的位置相關(guān)聯(lián)起來。
圖像序列的獲取可以由以下方法得到:從監(jiān)控場景視頻中取出來視頻幀;考慮到檢測相對(duì)耗時(shí),所以輸入的視頻幀可以隔幾幀進(jìn)行一次檢測,本實(shí)施例中使用間隔3幀進(jìn)行一次檢測,這樣就可以使得整個(gè)系統(tǒng)運(yùn)行效率更高,達(dá)到實(shí)時(shí)性。
如圖1為一種行人多目標(biāo)跟蹤方法,包括以下步驟:
步驟s110、根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象。
丟失對(duì)象表示丟失(lost)的對(duì)象,可能是因?yàn)闄z測器漏檢,也可能是由于被場景中的背景物體(如墻、樹木等)的遮擋造成的。
進(jìn)一步地,所述根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,具體為:所述檢測范圍隨所述丟失對(duì)象丟失時(shí)間的增大而增大,且所述檢測范圍不超過上限值。上限值可以采用經(jīng)驗(yàn)值。
進(jìn)一步地,所述檢測重現(xiàn)對(duì)象和檢測新生對(duì)象是通過fasterr-cnn進(jìn)行檢測的。
使用性能更優(yōu)的基于深度學(xué)習(xí)的目標(biāo)檢測方法,可以使得對(duì)場景內(nèi)的行人檢測更準(zhǔn)確,減少漏檢和虛警。本發(fā)明中使用的檢測器基于通用的fasterr-cnn模型,使用類zf的網(wǎng)絡(luò)結(jié)構(gòu)在imagenet上進(jìn)行預(yù)訓(xùn)練,并使用實(shí)際監(jiān)控場景視頻數(shù)據(jù)進(jìn)行微調(diào)(fine-tune),得到本發(fā)明中使用的行人檢測器模型以進(jìn)行檢測。
進(jìn)一步地,所述根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象,具體為:判斷在所述檢測范圍內(nèi)檢測到的所述跟蹤對(duì)象與所述丟失對(duì)象的表觀特征距離是否小于重現(xiàn)閾值,若是,則為檢測到所述重現(xiàn)對(duì)象,且所述表觀特征距離小于所述重現(xiàn)閾值的跟蹤對(duì)象即為所述重現(xiàn)對(duì)象。
所述重現(xiàn)閾值可以通過有限次的試驗(yàn)得到或者使用經(jīng)驗(yàn)值。
表觀特征(appearancefeature)為目標(biāo)外在表現(xiàn)出的圖像特征,能夠表征目標(biāo)與目標(biāo)之間的區(qū)別以及目標(biāo)與背景之間的區(qū)別,如行人衣服的顏色、衣服的紋理等,其他常用的圖像特征還包括角點(diǎn)、像素模板、顏色直方圖、基于梯度的特征(典型的如hog特征)等。
作為本發(fā)明的進(jìn)一步改進(jìn),所述表觀特征是通過深度神經(jīng)網(wǎng)絡(luò)獲取的。
表觀特征和其他信息(例如,運(yùn)動(dòng)信息,位置信息)一起被用于判斷跟蹤框與檢測框的數(shù)據(jù)關(guān)聯(lián)。數(shù)據(jù)關(guān)聯(lián)的過程需要融合更多具有鑒別性(discrimination)的信息。由于表觀特征能夠反應(yīng)出目標(biāo)之間的相似性程度,具體是如果兩次檢測框?yàn)橥粋€(gè)對(duì)象則兩者之間的表觀特征相似度大,反之不同的對(duì)象之間表觀特征相似度小。傳統(tǒng)方法設(shè)計(jì)的特征(如hog等)不夠魯棒,所以本方法中使用訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)并用其得到的模型來提取特征。
一種深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,其中兩個(gè)大框圖為可重復(fù)構(gòu)建的結(jié)構(gòu)。測試時(shí)輸出層為全連接層,輸出一個(gè)128維長度的向量用來表示當(dāng)前目標(biāo)的特征。在跟蹤過程中,首先根據(jù)檢測的結(jié)果,將所有檢測框放縮到144x56的大小并輸入到深度神經(jīng)網(wǎng)絡(luò)中提取檢測目標(biāo)對(duì)應(yīng)的表觀特征。
提取到的特征向量在數(shù)據(jù)關(guān)聯(lián)階段,可以用于根據(jù)余弦距離等來衡量兩個(gè)目標(biāo)的表觀特征相似度大小。
余弦距離的大小為向量空間中兩個(gè)向量夾角的余弦值大小,可以作為衡量兩個(gè)個(gè)體間差異大小的度量,余弦距離值越大兩個(gè)個(gè)體越相似。向量,是多維空間中有方向的線段,如果兩個(gè)向量的方向一致,即夾角接近為零,那么這兩個(gè)向量就相近,對(duì)應(yīng)的夾角余弦值越大即余弦距離越大,反之則越小。
步驟s120、若檢測到所述重現(xiàn)對(duì)象,則將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡。
若檢測范圍內(nèi)檢測到的所述跟蹤對(duì)象與所述丟失對(duì)象的表觀特征距離小于重現(xiàn)閾值,即可認(rèn)為檢測到的所述跟蹤對(duì)象就是丟失對(duì)象。
通常在一定時(shí)間段內(nèi),丟失的跟蹤對(duì)象會(huì)在消失位置附近一定范圍內(nèi)重新出現(xiàn),所以這個(gè)階段的目的就是重新找到丟失掉的跟蹤對(duì)象,將跟蹤丟失前的運(yùn)動(dòng)軌跡和重新跟蹤的運(yùn)動(dòng)軌跡進(jìn)行連接,從而保持運(yùn)動(dòng)軌跡的連續(xù)、完整性。處理方法是保留丟失的跟蹤對(duì)象一段時(shí)間,并且在消失位置一定范圍的區(qū)域內(nèi)比較所述跟蹤對(duì)象和丟失對(duì)象之間的表觀特征相似程度。如果相似性大于一定閾值,即說明該檢測框范圍內(nèi)的跟蹤對(duì)象是之前消失的跟蹤對(duì)象,需要將對(duì)應(yīng)跟蹤對(duì)象的軌跡更新到當(dāng)前檢測框。
所述將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡,具體為將重現(xiàn)對(duì)象劃分到重現(xiàn)對(duì)象對(duì)應(yīng)的跟蹤軌跡中,即數(shù)據(jù)關(guān)聯(lián)(dataassociation),從而得到該被跟蹤對(duì)象完整的運(yùn)動(dòng)軌跡。進(jìn)一步地,為了能夠滿足對(duì)實(shí)時(shí)性要求高的應(yīng)用場景如視頻監(jiān)控中,本實(shí)施例中使用的數(shù)據(jù)關(guān)聯(lián)方法是在線的,在得到當(dāng)前視頻幀之后輸出當(dāng)前視頻幀中所有被跟蹤目標(biāo)的運(yùn)動(dòng)軌跡。
進(jìn)一步地,所述跟蹤軌跡是通過kcf跟蹤算法進(jìn)行的。
基于檢測器得到的檢測結(jié)果,在檢測幀之后,對(duì)檢測到的各種對(duì)象使用跟蹤性能較好的kcf方法進(jìn)行跟蹤。kcf是一種基于檢測的跟蹤方法(trackingbydetection),可以跟蹤單目標(biāo)。由于每個(gè)跟蹤目標(biāo)的跟蹤過程是獨(dú)立不相關(guān)的,因而可以將kcf擴(kuò)展到對(duì)多個(gè)目標(biāo)進(jìn)行跟蹤上,這樣在檢測幀之后每個(gè)檢測到的目標(biāo)都會(huì)有對(duì)應(yīng)的跟蹤器進(jìn)行分別跟蹤,并各自得到一個(gè)小段的跟蹤軌跡(tracklets),整體上完成行人多目標(biāo)跟蹤;通過對(duì)遮擋、漂移、丟失問題進(jìn)行處理從而可以進(jìn)一步實(shí)現(xiàn)長時(shí)間跟蹤(long-termtrack)。
步驟s130、若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象。
如果在較長時(shí)間內(nèi),丟失的跟蹤對(duì)象都未能匹配到正確跟蹤對(duì)象,則認(rèn)為該跟蹤對(duì)象可能已經(jīng)出視野,將其歸為失蹤對(duì)象進(jìn)行后續(xù)處理,或者刪除所述丟失的跟蹤對(duì)象。
步驟s140、檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件。
之前沒有被追蹤,現(xiàn)在出現(xiàn)的新的對(duì)象,可能對(duì)應(yīng)的是新進(jìn)入視野的新目標(biāo)、也有可能是誤檢。首先創(chuàng)建跟蹤對(duì)象,待觀察足夠長的時(shí)間后(輸入足夠多的檢測幀),如果該跟蹤對(duì)象都能連續(xù)的被跟蹤到,說明該檢測到的目標(biāo)可能是要跟蹤的目標(biāo),標(biāo)記為新生對(duì)象。
進(jìn)一步地,所述恢復(fù)條件具體為:
所述新生對(duì)象與所述失蹤對(duì)象的表觀特征距離小于恢復(fù)閾值,且所述新生對(duì)象的跟蹤質(zhì)量符合所述預(yù)設(shè)條件。
對(duì)于新生對(duì)象首先使用表觀特征去和失蹤對(duì)象進(jìn)行比較,判斷是否為跟蹤丟失的對(duì)象,如果是則將其跟蹤恢復(fù)并設(shè)置為跟蹤狀態(tài)。
步驟s150、若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
若所述新生對(duì)象與所述失蹤對(duì)象的表觀特征距離大于恢復(fù)閾值,則該新生對(duì)象不是上一階段失蹤的對(duì)象,可以判斷為新目標(biāo),可以將新生對(duì)象加入到跟蹤序列中,創(chuàng)建新的跟蹤軌跡,這樣可以處理新進(jìn)入視野的新目標(biāo)、跟丟的目標(biāo),并一定程度上減少虛警。
本發(fā)明提出了分階段、多狀態(tài)關(guān)聯(lián)框架,在多目標(biāo)跟蹤的關(guān)聯(lián)過程中使用多個(gè)狀態(tài)來管理跟蹤對(duì)象的生命周期,解決了多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤對(duì)象丟失后又復(fù)現(xiàn)、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)等問題。
實(shí)施例二
作為本發(fā)明的進(jìn)一步改進(jìn),如圖3所示的行人多目標(biāo)跟蹤方法,包括以下步驟:
步驟s201、將優(yōu)質(zhì)對(duì)象加入到所述優(yōu)質(zhì)對(duì)象的跟蹤軌跡,所述優(yōu)質(zhì)對(duì)象為跟蹤質(zhì)量符合預(yù)設(shè)條件的所述跟蹤對(duì)象。
優(yōu)質(zhì)對(duì)象指的是跟蹤質(zhì)量比較好、比較可靠的跟蹤目標(biāo)。首先為可靠的跟蹤對(duì)象分配檢測目標(biāo)框,然后可靠跟蹤對(duì)象中未能成功分配的跟蹤對(duì)象和不可靠的跟蹤對(duì)象一起去分配剩下的檢測目標(biāo)框。
進(jìn)一步地,分配時(shí)均使用計(jì)算交并比(iou,兩個(gè)區(qū)域相交部分的面積除以兩個(gè)區(qū)域的面積之和)作為代價(jià)(cost)矩陣,使用匈牙利算法進(jìn)行分配。
匈牙利算法是一種常用來解決實(shí)際中遇到的分配問題或指派問題的算法。它會(huì)在待處理任務(wù)和完成這些任務(wù)的所有待定人員之間求得一個(gè)最佳的匹配,使得完成這些任務(wù)的效率最高(或者代價(jià)最小)。
步驟s202、將遮擋對(duì)象加入到所述遮擋對(duì)象的跟蹤軌跡,所述遮擋對(duì)象為符合遮擋條件的跟蹤對(duì)象。
符合遮擋條件的跟蹤對(duì)象包括發(fā)生部分遮擋的跟蹤對(duì)象。雖然發(fā)生了遮擋,但是檢測器仍然有可能識(shí)別該遮擋對(duì)象,進(jìn)而有效的跟蹤。
進(jìn)一步地,由于目標(biāo)之間遮擋時(shí)根據(jù)位置關(guān)系進(jìn)行分配是不合理的,即檢測器在物體部分遮擋的情況下檢測的結(jié)果通常不準(zhǔn)確,并且發(fā)生遮擋的目標(biāo)之間位置比較接近,此時(shí)使用位置信息(例如交并比或者距離)不能準(zhǔn)確的進(jìn)行檢測框的分配,所以需要在這個(gè)階段使用由深度神經(jīng)網(wǎng)絡(luò)提取到的表觀特征進(jìn)行劃分。通過評(píng)價(jià)檢測到的對(duì)象與跟蹤對(duì)象之間表觀特征的相似程度,將檢測到的對(duì)象歸為遮擋對(duì)象,分配給最相似的跟蹤對(duì)象,即為將遮擋對(duì)象加入到所述遮擋對(duì)象的跟蹤軌跡。
對(duì)于一個(gè)跟蹤目標(biāo)來說,整個(gè)生命周期可能會(huì)包括優(yōu)質(zhì)對(duì)象、遮擋對(duì)象、丟失對(duì)象、重現(xiàn)對(duì)象、失蹤對(duì)象、新生對(duì)象這幾種狀態(tài)。除了上述步驟s201、步驟s202對(duì)優(yōu)質(zhì)對(duì)象、遮擋對(duì)象的處理,后續(xù)還需要對(duì)其他幾種狀態(tài)處理。
步驟s210、根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象;
步驟s220、若檢測到所述重現(xiàn)對(duì)象,則將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡;
步驟s230、若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象;
步驟s240、檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件;
步驟s250、若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
步驟s210-s250,分別對(duì)應(yīng)實(shí)施例一中的s110-s150,不再贅述。
需要說明的是,跟蹤對(duì)象在生命周期中包括的優(yōu)質(zhì)對(duì)象、遮擋對(duì)象、丟失對(duì)象、重現(xiàn)對(duì)象、失蹤對(duì)象、新生對(duì)象多個(gè)狀態(tài)之間會(huì)相互轉(zhuǎn)換。即步驟s201、步驟s202也可在檢測到重現(xiàn)對(duì)象或檢測到新生對(duì)象之后實(shí)施,因?yàn)橹噩F(xiàn)對(duì)象、新生對(duì)象可能被定性為是優(yōu)質(zhì)對(duì)象、遮擋對(duì)象。
在本實(shí)施例中,跟蹤對(duì)象在生命周期中包括優(yōu)質(zhì)對(duì)象、遮擋對(duì)象、丟失對(duì)象、重現(xiàn)對(duì)象、失蹤對(duì)象、新生對(duì)象多個(gè)狀態(tài),結(jié)合該分層次的跟蹤框架設(shè)計(jì)了分階段、多狀態(tài)的數(shù)據(jù)關(guān)聯(lián)方法。進(jìn)一步解決了多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換,無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的如丟失、失蹤等問題。
實(shí)施例三
如圖4所示的行人多目標(biāo)跟蹤裝置,包括:
擴(kuò)大檢測模塊110,用于根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象。
所述擴(kuò)大檢測模塊110包括范圍單元和判斷單元;
所述范圍單元被設(shè)置為:所述檢測范圍隨所述丟失對(duì)象丟失時(shí)間的增大而增大,且所述檢測范圍不超過上限值;
所述判斷單元用于判斷在所述檢測范圍內(nèi)檢測到的所述跟蹤對(duì)象與所述丟失對(duì)象的表觀特征距離是否小于重現(xiàn)閾值,若是,則為檢測到所述重現(xiàn)對(duì)象,且所述表觀特征距離小于所述重現(xiàn)閾值的跟蹤對(duì)象即為所述重現(xiàn)對(duì)象。
重現(xiàn)對(duì)象跟蹤模塊120,用于若檢測到所述重現(xiàn)對(duì)象,則將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡。
失蹤對(duì)象判定模塊130,用于若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象。
新生對(duì)象判斷模塊140,用于檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件。
所述新生對(duì)象判斷模塊140包括恢復(fù)單元,所述恢復(fù)單元被設(shè)置為:所述恢復(fù)條件具體為所述新生對(duì)象與所述失蹤對(duì)象的表觀特征距離小于恢復(fù)閾值,且所述新生對(duì)象的跟蹤質(zhì)量符合所述預(yù)設(shè)條件。
新生對(duì)象跟蹤模塊150,用于若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述擴(kuò)大檢測模塊110之前,所述行人多目標(biāo)跟蹤裝置還包括優(yōu)質(zhì)對(duì)象跟蹤模塊101和遮擋對(duì)象跟蹤模塊102;
所述遮擋對(duì)象跟蹤模塊101用于將遮擋對(duì)象加入到所述遮擋對(duì)象的跟蹤軌跡,所述遮擋對(duì)象為符合遮擋條件的跟蹤對(duì)象;
所述優(yōu)質(zhì)對(duì)象跟蹤模塊102用于將優(yōu)質(zhì)對(duì)象加入到所述優(yōu)質(zhì)對(duì)象的跟蹤軌跡,所述優(yōu)質(zhì)對(duì)象為跟蹤質(zhì)量符合預(yù)設(shè)條件的所述跟蹤對(duì)象。本實(shí)施例中的裝置與前述實(shí)施例中的方法是基于同一發(fā)明構(gòu)思下的兩個(gè)方面,在前面已經(jīng)對(duì)方法實(shí)施過程作了詳細(xì)的描述,所以本領(lǐng)域技術(shù)人員可根據(jù)前述描述清楚地了解本實(shí)施中的系統(tǒng)的結(jié)構(gòu)及實(shí)施過程,為了說明書的簡潔,在此就不再贅述。
為了描述的方便,描述以上裝置時(shí)以功能分為各種模塊分別描述。當(dāng)然,在實(shí)施本發(fā)明時(shí)可以把各模塊的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的模塊或單元可以是或者也可以不是物理上分開的,作為模塊或單元示意的部件可以是或者也可以不是物理模塊,既可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)模塊上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
本發(fā)明可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置中。例如:個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)pc、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等,如實(shí)施例四。
實(shí)施例四
如圖5所示的行人多目標(biāo)跟蹤裝置,包括:處理器200以及用于存儲(chǔ)處理器200可執(zhí)行的指令的存儲(chǔ)器300;
所述處理器200被配置為:
根據(jù)丟失對(duì)象的位置信息擴(kuò)大檢測范圍,并根據(jù)所述丟失對(duì)象的表觀特征在擴(kuò)大后的所述檢測范圍內(nèi)檢測重現(xiàn)對(duì)象;
若檢測到所述重現(xiàn)對(duì)象,則將所述重現(xiàn)對(duì)象加入到所述重現(xiàn)對(duì)象的跟蹤軌跡;
若未檢測到所述重現(xiàn)對(duì)象,則將所述丟失對(duì)象歸為失蹤對(duì)象;
檢測新生對(duì)象,判斷所述新生對(duì)象是否符合恢復(fù)條件;
若所述新生對(duì)象符合所述恢復(fù)條件,則將所述新生對(duì)象加入到所述失蹤對(duì)象的跟蹤軌跡。本實(shí)施例中的裝置與前述實(shí)施例中的方法是基于同一發(fā)明構(gòu)思下的兩個(gè)方面,在前面已經(jīng)對(duì)方法實(shí)施過程作了詳細(xì)的描述,所以本領(lǐng)域技術(shù)人員可根據(jù)前述描述清楚地了解本實(shí)施中的系統(tǒng)的結(jié)構(gòu)及實(shí)施過程,為了說明書的簡潔,在此就不再贅述。
本發(fā)明實(shí)施例提供的行人多目標(biāo)跟蹤裝置,可以通過使用多個(gè)狀態(tài)來管理跟蹤對(duì)象的生命周期,解決了多個(gè)行人目標(biāo)的跟蹤通常存在的跟蹤丟失、跟蹤軌跡發(fā)生交換、跟蹤軌跡不連續(xù)、跟蹤漂移、無法較好的處理短時(shí)間遮擋和長時(shí)間遮擋的問題。
上述實(shí)施方式僅為本發(fā)明的優(yōu)選實(shí)施方式,不能以此來限定本發(fā)明保護(hù)的范圍,本領(lǐng)域的技術(shù)人員在本發(fā)明的基礎(chǔ)上所做的任何非實(shí)質(zhì)性的變化及替換均屬于本發(fā)明所要求保護(hù)的范圍。