本發(fā)明屬于模式識別領(lǐng)域,涉及圖像處理和計算機視覺等技術(shù),特別是基于壓縮跟蹤算法與IHDR增量學習機制的視頻人臉在線識別方法
背景技術(shù):
隨著視頻監(jiān)控系統(tǒng)在眾多領(lǐng)域的普及,基于視頻的人臉識別技術(shù)也得到了長足的進步與發(fā)展,該技術(shù)對于智能交通、門禁、安防監(jiān)控等領(lǐng)域起到了非常重要的作用,目前越來越多的場合都對視頻中的人臉識別技術(shù)提出了更高的要求,較高的人臉識別率、實時性以及易用性是視頻人臉識別算法最重要的技術(shù)指標。目前視頻人臉識別方法主要有基于視頻序列、基于圖像集以及基于字典學習等方法。以上這些傳統(tǒng)的視頻人臉識別方法都需要手工的選取人臉訓練樣本對人臉識別模型進行訓練,若要添加新的人臉樣本與人臉類別,則需要重新對識別模型進行訓練,從而導致算法的實時性與易用性不足。由于人臉姿態(tài)的易變性,光照、背景以及距離等外在因素的變化,都對算法的識別率會造成嚴重影響。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于解決在視頻人臉識別過程中存在的以下問題:(1)人臉姿態(tài)出現(xiàn)大幅度偏轉(zhuǎn)容易導致識別算法失效;(2)當需要為人臉識別模型添加新樣本或類別時需要重新訓練模型;(3)以及由于算法開銷過大導致算法實時性不足的問題。
為了解決上述技術(shù)問題,本發(fā)明提供如下技術(shù)方案:
一種基于壓縮跟蹤與IHDR增量學習的視頻人臉在線識別方法,其特征在于:結(jié)合人臉檢測算法與壓縮跟蹤算法對多姿態(tài)人臉進行檢測,使用基于IHDR算法的增量學習機制對人臉特征庫進行構(gòu)建,采用該人臉特征庫實現(xiàn)對人臉樣本與類別的在線更新;在進行視頻人臉識別時,利用人臉在視頻中是連續(xù)運動的特點,基于人臉特征庫檢索進行人 臉識別,當人臉被準確識別出來后,啟用壓縮跟蹤算法對目標人臉進行跟蹤。
上述技術(shù)方案中,主要包含以下步驟:
步驟S1:通過人臉檢測與壓縮跟蹤算法對攝像頭中所捕獲視頻圖像中的多姿態(tài)人臉進行檢測;
步驟S2:對所檢測到的人臉進行圖像預(yù)處理以及CSLBP特征提??;
步驟S3:將所提取出來的CSLBP人臉特征作為檢索向量對IHDR增量學習樹進行搜索;
步驟S4:給定人臉檢索的有效閾值α,設(shè)定當前所檢測到的人臉特征與IHDR學習樹所檢索到的人臉特征的相似度為s,若相似度s≤α,且連續(xù)3幀都為該人臉,則判斷當前檢索是有效的;在視頻幀中的目標人臉上輸出該人臉標簽,同時啟用壓縮跟蹤算法對該人臉進行跟蹤;在進行人臉跟蹤過程中,不斷判斷當前人臉是否超出視頻采集的邊界,若沒有,繼續(xù)跟蹤人臉,若超出邊界,則跳轉(zhuǎn)至步驟S1重新執(zhí)行以上步驟;
步驟S5:若相似度α<s≤β,則判斷當前人臉識別錯誤,重新進行人臉識別,轉(zhuǎn)至步驟S1重新執(zhí)行以上步驟;步驟S6:若相似度s>β,則判斷當前人臉未曾學習過,給定該人臉標簽,同時提取該人臉的CSLBP特征,應(yīng)用分層聚類算法對人臉特征庫進行在線增量更新;當所采集的人臉樣本數(shù)達到所設(shè)定的閾值時,跳轉(zhuǎn)至步驟S1重新執(zhí)行以上步驟。
上述技術(shù)方案中,步驟S1通過人臉檢測與壓縮跟蹤算法對攝像頭中所捕獲視頻圖像中的多姿態(tài)人臉進行檢測,主要包含以下步驟:
步驟S11:使用攝像頭對圖像進行采集,獲取攝像頭所捕獲的當前圖像幀,應(yīng)用Haar特征與Adaboost算法對圖像幀中的人臉進行檢測;
步驟S12:若人臉檢測成功,獲取該人臉位置坐標,啟動壓縮跟蹤算法對該人臉進行跟蹤,在跟蹤過程中不斷判斷跟蹤窗口是否超出視頻框,若跟蹤窗口超出視頻框未超出視頻框,則保持對當前人臉的跟蹤;若跟蹤窗口超出視頻框,轉(zhuǎn)至步驟S11順序執(zhí)行;
步驟S13:若人臉檢測失敗,轉(zhuǎn)至步驟S11順序執(zhí)行。
上述技術(shù)方案中,步驟S2圖像預(yù)處理與特征提取按如下步驟進行:
步驟S21:使用以下幾種方式對人臉區(qū)域進行預(yù)處理:直方圖均衡化、雙邊濾波、背景圖像去除以及圖像尺度歸一化;
步驟S22:對經(jīng)過圖像預(yù)處理后的人臉圖像,進行CSLBP特征提取。
上述技術(shù)方案中,步驟S3對IHDR增量學習樹進行搜索的過程如下:
步驟S31:從IHDR增量學習樹的第一層開始,計算出待檢索向量與當前所在層所有聚類中心的歐式距離d;
步驟S32:給定IHDR樹的檢索精度λ,選取歐式距離最小的前λ個聚類,設(shè)置為活躍聚類,將所計算出來的歐氏距離值與所設(shè)置的檢索敏感系數(shù)進行比較,若小于則停止檢索,返回該聚類所對應(yīng)的Y空間中的人臉標簽yi;若大于則取消當前聚類的活躍標志,將該聚類的下一層子聚類作為活躍節(jié)點,并重復上述的迭代過程,直至滿足所有條件直到搜索至IHDR樹的葉子節(jié)點,輸出葉子節(jié)點中的人臉標簽yi,并返回該人臉與葉子節(jié)點樣本的相似度s。
上述技術(shù)方案中,步驟S6應(yīng)用分層聚類算法對人臉特征庫進行在線增量更新的過程如下:
步驟S61:根據(jù)所設(shè)定的聚類敏感系數(shù)η,將輸出空間向量y1,y2,y3,...,yn劃分為b個類,且b≤q,q為每個節(jié)點所能分裂的最大聚類個數(shù);
步驟S62:根據(jù)輸出空間的類別數(shù)b,將X輸入空間中人臉訓練樣本的類別數(shù)也設(shè)定為b個類,應(yīng)用歐氏距離對X空間中所有人臉訓練樣本進行聚類;
步驟S63:根據(jù)步驟S62所計算出的X空間的聚類結(jié)果,并結(jié)合X空間到Y(jié)空間的映射關(guān)系,重新對Y空間的聚類進行調(diào)整,計算出Y空間元素之間的歐式距離D;
步驟S64:若D>η,則將X空間中的聚類i進行下一層節(jié)點的聚類劃分,使聚類變得更加細化;通過不斷迭代執(zhí)行步驟S62和步驟S63,直到所有聚類的條件滿足設(shè)定值,則停止迭代,構(gòu)樹成功;
步驟S65:由于在不斷學習過程中,陸續(xù)增加的學習樣本會對整個IHDR增量學習樹的葉子節(jié)點的均值與協(xié)方差造成影響,因此需要引入遺忘函數(shù)進行更新;
步驟S66:當需要在線添加新的訓練樣本時,從根節(jié)點出發(fā),計算出該樣本與當前所在層所有聚類中心的歐氏距離D,將所計算出來的距離值以遞增方式排序,選取距離值最小的類,不斷循環(huán)執(zhí)行上述過程,直至將新增的訓練樣本插入到葉子節(jié)點中,完成當前樣本的在線增量學習更新。
由于視頻中的人臉會受到姿態(tài)的偏轉(zhuǎn)等因素影響,因此容易導致識別算法失效。本發(fā)明公開的基于壓縮跟蹤算法與IHDR(Incremental Hierarchical Discriminant Regression,增量分層判別回歸)增量學習機制的視頻人臉在線識別方法,首先將人臉檢測算法與壓縮跟蹤算法相結(jié)合實現(xiàn)對多姿態(tài)人臉的進行檢測,應(yīng)用CSLBP(center-symmetric local binary patterns中心對稱局部二進制模式)特征提取算子對所跟蹤到的人臉區(qū)域進行特征提取,將所提取到的人臉特征存入由分層聚類算法所構(gòu)建的IHDR增量學習樹中,從而完成人臉特征庫的構(gòu)建,采用該人臉特征庫實現(xiàn)對人臉樣本與類別的在線更新,使得該人臉特征庫具有在線學習能力,當需要添加新樣本或類別時,無需對人臉識別模型重新訓練,具有較好的易用性和實時性。在進行人臉識別時,采用分層聚類算法對IHDR增量學習樹進行檢索,若檢索成功則完成對當前人臉的識別,由于人臉在視頻中具有連續(xù)運動的特點,當一個人臉在連續(xù)多幀的視頻幀中都識別為同一個人,則可認定當前視頻中的人臉為該人,此時啟用壓縮跟蹤算法對該人臉進行跟蹤,使用該方法就無需一幀一幀的對人臉進行識別;若人臉離開視頻采集框,則需重新啟動人臉識別算法;因此能夠提高視頻人臉識別算法的實時性與識別率。
附圖說明
圖1是本發(fā)明基于壓縮跟蹤與IHDR增量學習的視頻人臉在線識別方法流程圖;
圖2是本發(fā)明人臉檢測算法與壓縮跟蹤相結(jié)合的多姿態(tài)人臉檢測流程圖;
圖3是本發(fā)明IHDR增量學習樹的檢索流程圖;
圖4是本發(fā)明IHDR增量學習樹的在線增量更新流程圖。
具體實施方式
為了進一步說明本發(fā)明的技術(shù)方案與優(yōu)勢,通過具體案例并結(jié)合附圖,對本發(fā)明進行詳細的說明。
圖1為本發(fā)明基于壓縮跟蹤與IHDR(Incremental Hierarchical Discriminant Regression,增量分層判別回歸)增量學習的視頻人臉在線識別方法流程圖,該方法包含以下步驟:
步驟S1:通過人臉檢測與壓縮跟蹤算法對攝像頭中所捕獲視頻圖像中的多姿態(tài)人臉進行檢測;
將人臉檢測算法與壓縮跟蹤算法相結(jié)合實現(xiàn)對多姿態(tài)人臉檢測,主要包含了以下步驟,具體流程如圖2所示:
步驟S11:使用攝像頭對圖像進行采集,獲取攝像頭所捕獲的當前圖像幀,應(yīng)用Haar特征與Adaboost算法對圖像幀中的人臉進行檢測;
步驟S12:若人臉檢測成功,獲取該人臉位置坐標,啟動壓縮跟蹤算法對該人臉進行跟蹤,在跟蹤過程中不斷判斷跟蹤窗口是否超出視頻框,若跟蹤窗口超出視頻框未超出視頻框,則保持對當前人臉的跟蹤;若跟蹤窗口超出視頻框,程序跳轉(zhuǎn)至步驟S11順序執(zhí)行;
壓縮跟蹤算法的具體實現(xiàn)包含以下步驟:
步驟S121:構(gòu)建一個隨機投影矩陣E,使用該投影矩陣E對當前采集到的樣本進行特征提取,其具體計算方法如下式所示:
Feature=Sample×E (1)
式(1)中E∈Rm×n(m<<n)為隨機投影降維矩陣,且符合壓縮感知RIP條件(restricted isometry property,有限等距約束),m為樣本未降維時的維數(shù),n為樣本降維后的維數(shù),Sample為原始的圖像。通過使用公式(1)能夠?qū)⒏呔S的原始輸入圖像信號Sample∈Rn×1經(jīng)過投影矩陣E變換后,被壓縮成低維的輸出圖像特征信號Feature∈Rm×1,輸出圖像特征信號的壓縮程度取決于投影矩陣E的稀疏程度,投影矩陣E中元素可定義為:
式(2)中p為投影矩陣E中元素ki,j取得相應(yīng)值的概率。在該算法中其中w是[2,4]內(nèi)隨機生成的整數(shù),這樣就使得在投影矩陣E中只需要計算不多于4個元素的值,在投影矩陣E中只要保存其中的非零元素,因此算法的計算量可得到極大的降低。
步驟S122:將所得到的壓縮特征輸入至樸素貝葉斯分類器,通過所有檢測子窗口的概率值,選取概率值最大的子窗口中的特征即為目標的特征,即可確定出目標在圖像中的位置。該步驟中的樸素貝葉斯的分類模型為:
在式(3)中v為樣本的低維表示,可以表示為v=(u1,...,un)T,y∈{0,1}為所需分類樣本的類別,當y=1時代表為正樣本標簽,y=0時為負樣本標簽。由于p(ui|y=1)與p(ui|y=0)符合高斯分布,因此其概率分布可表示為:
在式(4)中,和分別代表第i個正樣本的均值與標準差,和分別代表第i個負樣本的均值與標準差。為了適應(yīng)目標在運動過程中的變化,式(4)中參數(shù)的具體更新方法為:
式(5)和(6)中λ>0是學習參數(shù),用于表示參數(shù)更新速度,式中μ1和σ1表示當前圖像幀中第i個正樣本特征的均值與標準差,r為樣本的個數(shù);μ0和σ0的更新與式(5)和(6)類似。
步驟S13:若人臉檢測失敗,程序跳轉(zhuǎn)至步驟S11順序執(zhí)行;
步驟S2:對所檢測到的人臉進行圖像預(yù)處理以及CSLBP特征提?。?/p>
步驟S21:對人臉區(qū)域進行預(yù)處理,使用了以下幾種方式預(yù)處理:直方圖均衡化、雙邊濾波、背景圖像去除以及圖像尺度歸一化;
步驟S22:對經(jīng)過圖像預(yù)處理后的人臉圖像,進CSLBP特征提??;
步驟S3:將所提取出來的CSLBP人臉特征作為檢索向量對IHDR增量學習樹進行搜索;
IHDR增量學習樹搜索方法如圖3所示,具體包含以下步驟:
步驟S31:從IHDR增量學習樹的第一層開始,計算出待檢索向量xd(xd1,xd2,...,xdn)與當前所在層所有聚類中心的歐式距離d,具體計算方法如式(7)所示。
式(7)中a為當前所在層的樣本數(shù),xtj為當前所在層中的樣本,xij為當前所在層的候選聚類中心
步驟S32:給定IHDR樹的檢索精度λ,選取歐式距離最小的前λ個聚類,設(shè)置為活躍聚類,將所計算出來的歐氏距離值與所設(shè)置的檢索敏感系數(shù)進行比較,若小于則停止檢索,返回該聚類所對應(yīng)的Y空間中的人臉標簽yi。若大于則取消當前聚類的活躍標志,將該聚類的下一層子聚類作為活躍節(jié)點,并重復上述的迭代過程,直至滿足所有條件直到搜索至IHDR樹的葉子節(jié)點,輸出葉子節(jié)點中的人臉標簽yi,并返回該人臉與葉子節(jié)點樣本的相似度s。
步驟S4:給定人臉檢索的有效閾值α,若當前所檢測到的人臉特征與IHDR學習樹所檢索到的人臉特征的相似度為s,若相似度s≤α,且連續(xù)3幀都為該人臉,則判斷當前檢索是有效的。在視頻幀中的目標人臉上輸出該人臉標簽,同時啟用壓縮跟蹤算法對該人臉進行跟蹤。在進行人臉跟蹤過程中,不斷判斷當前人臉是否超出視頻采集的邊界,若沒有,繼續(xù)跟蹤人臉,若超出邊界,則程序跳轉(zhuǎn)至步驟S1順序執(zhí)行。
步驟S5:若相似度α<s≤β,則判斷當前人臉識別錯誤,重新進行人臉識別,程序跳轉(zhuǎn)至步驟S1順序執(zhí)行。
步驟S6:若相似度s>β,則判斷當前人臉未曾學習過,給定該人臉標簽,同時提取該人臉的CSLBP特征,應(yīng)用分層聚類算法對人臉特征庫進行在線增量更新。當所采集的人臉樣本數(shù)達到所設(shè)定的閾值時,程序跳轉(zhuǎn)至步驟S1順序執(zhí)行;
人臉特征庫的在線增量更新流程如圖4所示,具體的執(zhí)行步驟如下所示:
步驟S61:根據(jù)所設(shè)定的聚類敏感系數(shù)η,將輸出空間向量y1,y2,y3,...,yn劃分為b個類,且b≤q,q為每個節(jié)點所能分裂的最大聚類個數(shù)。
步驟S62:根據(jù)輸出空間的類別數(shù)b,將X輸入空間中人臉訓練樣本的類別數(shù)也設(shè)定為b個類,應(yīng)用歐氏距離對X空間中所有人臉訓練樣本進行聚類。
步驟S63:根據(jù)步驟S62所計算出的X空間的聚類結(jié)果,并結(jié)合X空間到Y(jié)空間的映射關(guān)系,重新對Y空間的聚類進行調(diào)整,使用式(7)的計算方法計算出Y空間元素之間的歐式距離D;
步驟S64:若D>η,則將X空間中的聚類i進行下一層節(jié)點的聚類劃分,使聚類變得更加細化。通過不斷迭代執(zhí)行步驟S62和步驟S63,直到所有聚類的條件滿足設(shè)定值,則停止迭代,構(gòu)樹成功。
步驟S65:由于在不斷學習過程中,陸續(xù)增加的學習樣本會對整個IHDR增量學習樹的葉子節(jié)點的均值與協(xié)方差造成影響,因此需要引入遺忘機制對其進行更新,具體遺忘函數(shù)σ(x)如式(8)所示:
式(8)中t1,t2,e,h為預(yù)置的遺忘參數(shù)。
步驟S66:當需要在線添加新的訓練樣本時,從根節(jié)點出發(fā),計算出該樣本與當前所在層所有聚類中心的歐氏距離D,將所計算出來的距離值以遞增方式排序,選取距離值最小的類,不斷循環(huán)執(zhí)行上述該過程,直至將新增的訓練樣本插入到葉子節(jié)點中,完成當前樣本的在線增量學習。
綜上,本發(fā)明所提出的基于壓縮跟蹤算法與IHDR增量學習機制的視頻人臉在線識別方法,能夠?qū)崿F(xiàn)對視頻中的人臉進行實時識別,具有以下優(yōu)點:(1)在傳統(tǒng)的人臉檢測算法中結(jié)合使用了壓縮跟蹤算法,能夠?qū)崿F(xiàn)對多姿態(tài)人臉的檢測,具有較好魯棒性;(2)使用了IHDR增量學習機制進行人臉識別,當需要新增人臉類別或人臉樣本時,能夠?qū)崿F(xiàn)在線增量的訓練人臉識別模型,而無需重新使用所有樣本對人臉識別模型進行訓練,具有較好的實時性。(3)當多幀視頻幀的人臉識別都確認為該人時,使用壓縮跟蹤算法對該人臉進行跟蹤,而無需一幀一幀的進行人臉檢測,該方法的使用能有效提高算法的準確率與實時性。