本發明屬于視頻監控技術領域,具體地說,本發明涉及一種找出不同視頻中的相同行人的方法。
背景技術:
在一些重要場所如車站、廣場、機場等,一個單一的監控攝像機難以實現對全場景的監控,其監控場景往往由多個攝像機組成。在這種多個攝像機組成的監控網絡中,重點關注行人目標,通過行人檢測得到每個行人對象在每個攝像機中的捕獲圖像,進一步將這些圖像關聯起來,獲得每個行人對象在整個監控場景中的出現軌跡。如追蹤一個被拐賣的兒童,就可以通過該兒童的出現軌跡,迅速發現其活動軌跡以及最后出現的時間和地點,同時還可以獲得同行的犯罪嫌疑人的特征以便進一步追蹤,而當前的操作往往是人工辨識,效率低,速度慢,經常錯過最好救援時機。同樣的,對重要嫌疑人的追蹤,或是其他的重要目標如車、財物等的追蹤也是可行的。
但實際上每個行人對象在整個監控場景中出現的次數未知且差異較大,現有的方法,見文獻[zhao,rui,ouyang,wanli,wang,xiaogang.unsupervisedsaliencelearningforpersonre-identification[c]//2013:3586-3593.],是對行人目標進行關聯排序,對輸入行人圖像返回一個按相似度排序的行人圖像序列,但這種方法存在一個局限:返回的行人圖像序列不能給出其中哪些圖像是與輸入圖像來自同一行人對象的判斷,也不能進一步得到每個行人在整個監控場景中的出現軌跡。
本發明的目的在于解決這個局限,實現在整個監控場景中獲得行人個數和每個行人對象的活動軌跡,為進一步的應用需求提供支撐。
我們通過對比行人圖像兩兩間的相似度得到一個相似度矩陣(可看做全連接的有權無向圖),對這個相似度矩陣進行改造,得到一個有權、無向、稀疏的圖,圖中點代表行人圖像,圖中邊代表行人圖像之間的相似度。然后用圖聚類的觀點來看待這個圖像分類問題,每個聚類結果為一個行人對象的出現序列,將這個出現序列按時間先后的順序排列,得到該行人對象的時空軌跡。
技術實現要素:
本發明的目的在于,使用聚類的方法解決自動獲取每個行人對象在整個監控場景中的出現軌跡問題,每個聚類類別對應一個行人對象在整個監控場景(如來自不同攝像機的視頻或相同攝像機不同時段的視頻)中的出現序列,代表其在整個監控場景中的出現軌跡。
本發明的技術解決方案是:檢測出整個監控場景中的所有行人出現,存儲行人出現的局域圖像及相關信息;對所有的局域圖像進行提取特征形成多維描述子,利用多維描述子計算局域圖像兩兩之間的相似度,得到相似度矩陣;利用p-近鄰方法對相似度矩陣進行稀疏;再利用圖聚類的方法對稀疏后的相似度矩陣進行聚類,使用模塊度指標確定類別個數,每個類別代表這個監控網絡中的所有出現序列,根據這個序列得到該行人對象在整個監控場景中的出現軌跡。
與現有技術相比,本發明的有益效果在于:
本發明使用聚類的方法自動獲取每個行人在整個監控場景中的出現軌跡,每個聚類類別對應一個行人對象在整個監控場景中的出現序列,代表其在整個場景中的出現軌跡。因此,本發明不需設定檢索門限,根據每個行人在整個監控場景中實際出現的次數返回相應的序列。同時,本發明可以同時自動獲取多個行人在整個監控場景中出現軌跡。
此外,本發明通過檢測行人出現,只存儲行人出現的局域圖像,可以有效對視頻信息進行濃縮,節省存儲空間;基于局部圖像進行特征提取,提高計算效率;用p-近鄰方法對相似度矩陣進行稀疏,再進行聚類的做法減少了聚類計算量,有效提高了計算效率。
附圖說明
圖1為本發明技術方案詳解圖;
圖2為本發明對視頻中的行人圖像的存儲形式示意圖;
圖3為本發明中行人圖像聚類結果示意;
圖4為本發明中最終得到的行人活動軌跡示意圖。
具體實施方式
本發明的技術方案如圖1所示,下面結合附圖和具體實施例,對本發明提供的基于圖聚類的跨視頻行人重識別方法作進一步詳細的解釋。
步驟(一):檢測出整個監控場景中的所有行人出現,存儲行人出現的局域圖像及相關信息。
利用現有的方法將輸入視頻中的所有行人檢測出來,形成行人出現的局域圖像及相關信息,相關信息包括局域圖像所屬視頻的幀號、在視頻所在幀的視場中的位置。其中,局域圖像是指行人在攝像機監控場景中出現到離開的過程中,捕獲其在中間幀中的瞬時動作作為一次出現的代表,使用一個完全包含行人身體部分的最小矩形框將行人局部圖像截取出來得到的圖像,如圖2所示,同時存儲下該矩形框的左上和右下坐標以及該圖像被捕獲時的時間信息。
步驟(二):對所有的局域圖像提取特征形成多維描述子,利用多維描述子計算局域圖像兩兩之間的相似度,得到相似度矩陣。
(2a)在具體的圖像重識別實現過程中,對局域圖像進行分塊特征表示,實現步驟如下:
1、將所有局域圖像調整為同一尺寸,本實施例取64×32;
2、用稠密的網格將局域圖像劃分成若干矩形塊。如在本實施例中,每個
矩形塊大小為10×10,步長為4,每個局域圖像被劃分為14×6的塊矩陣。
(2b)對局域圖像中的每個塊計算特征向量,得到整幅局域圖像的多維特征描述子。
計算圖像塊的特征向量時,可以使用現有的各種類型的特征或特征組合。本實施例中使用顏色直方圖和sift特征的組合作為的特征向量。特征向量來自兩個部分,第一部分是lab顏色直方圖,對l,a,b三個通道分別計算32個方向(劃分區間數可以隨應用需求調整)的顏色梯度,在每個通道上再進行三個層次的降采樣,這樣特征維度將達到32×3×3=288;第二部分是sift特征,同樣也在3個顏色通道中進行分別計算,這樣特征維度達到128×3=384。這樣,最終的特征向量的維度為384+288=672。
假設局域圖像被劃分為a×b的塊矩陣,整幅局域圖像的多維描述子由所有塊的特征向量組成,其大小為a×b×672。
(2c)相似度矩陣構建
假設在所有視頻中一共捕獲到n幅局域圖像,通過步驟(2b)得到所有局域圖像中每個塊的特征向量,并以局域圖像的多維描述子形式存儲。計算局域圖像p與q之間的相似度步驟具體如下:
1、使用公式(1)計算塊
2、使用公式(2)計算局域圖像p與q之間的相似度sim(p,q)
sp,q為塊
對所有n副局域圖像計算兩兩之間的相似度,得到一個n×n的相似度矩陣。
步驟(三):利用p-近鄰方法對相似度矩陣進行稀疏。
對步驟(二)得到的n×n相似度矩陣,使用p-近鄰方法進行稀疏,在本發明中,p值取為5*log(n)向上取整。
步驟(四):利用圖聚類的方法對稀疏后的相似度矩陣進行聚類,通過模塊度值確定類別數。得到每個行人對象在這個監控網絡中的所有出現序列,根據這個序列得到該行人對象在整個監控場景中的出現軌跡。
(4a)對相似矩陣進行聚類
對步驟(三)中得到的稀疏后的相似度矩陣,將其看作一個相似圖,相似圖中的點代表局域圖像,邊代表局域圖像間的相似度。設定類別數k(初始值通常為2),使用圖聚類的方法進行聚類,可以選用的圖聚類方法很多,在本實施例中,使用基于合同近似的方法(cac_n)見文獻[任維雅.圖劃分準則下基于圖的學習方法研究[d].長沙:國防科學技術大學,2015:55-64.]實現圖聚類。聚類得到的每個類別中的所有點代表某個行人對象在監控場景中的所有被捕獲到的局域圖像,如圖3所示。
(4b)行人個數發現
在步驟(4a)中不斷增大類別數k進行多次聚類,得到不同k值對應的聚類結果。應用圖分割理論中的模塊度概念,對每次聚類結果,計算相應類別數對應的模塊度值。當模塊度值達到最大值后停止增加k值重復步驟(4a),并取這個最大模塊度值對應的類別數為本發明得到的行人個數,對應的聚類結果為最終返回的行人聚類結果。模塊度計算方法如下:
假設計算n幅局域圖像兩兩之間的相似度值得到的相似矩陣被劃分為k個類別,如步驟(4a)所述。那么定義k*k的對稱矩陣e,其中的元素ecv表示連接類別c與類別v中節點數的邊數占矩陣中所有邊數的比例。這個矩陣的跡tre=∑cecc表示圖中所有連接類別內部節點邊數占矩陣中所有邊數的比例。定義行(或列)的加總值ac=∑vecv,表示所有連接了類別c中的節點邊數占總邊數的比例。由ecv和ac的定義可知ecv=ac×av。從而,模塊度q的計算公式為:
其中||e2||為矩陣e2的模,即矩陣e2中元素的總和。
(4c)生成行人活動軌跡
對得到的行人聚類結果,利用其時間信息進行排序。根據行人圖像的時間信息和其對應視頻編號信息,在監控場景中將這些行人圖像定位到對應的攝像機位置,根據時間信息將這些位置連接起來,得到行人對象在整個監控場景中的出現軌跡。如圖4所示,圖中展示了兩個行人對象的軌跡,圖中上部為兩個行人圖像的聚類結果序列,下部分別為兩個行人對象在整個監控場景中的活動軌跡,圖中虛線表示上部左側男子的活動軌跡,圖中實線表示上部右側男子的活動軌跡。