本發(fā)明屬于圖像處理技術(shù)領(lǐng)域,尤其涉及一種實時人臉識別的人臉級聯(lián)檢測及特征提取和匹配方法。
背景技術(shù):
在現(xiàn)有的技術(shù)方案中,更多的是在一個算法框架內(nèi),如何提升某一種算法框架內(nèi)的算法性能。
實時人臉識別在實際的應(yīng)用中指這樣一類型的應(yīng)用:先指定一批待關(guān)注的人員作為關(guān)注人員名單,為后續(xù)描述方面,我們把這個名單定義為目標人員名單,在這個名單確定后,系統(tǒng)把實時采集中的人臉圖片與這個名單中的每個人進行匹配,如果匹配,則進行相關(guān)的消息通知或其它后續(xù)業(yè)務(wù)操作。
將以上基本操作模式應(yīng)用到不同的場景,可以實現(xiàn)不同的業(yè)務(wù)應(yīng)用。如應(yīng)用于的商業(yè)場景,如果將商場/會所的VIP客戶做為目標人員名單,那么在人臉實時識別的基礎(chǔ)上可以實現(xiàn)一個VIP系統(tǒng),在VIP客戶到來的時候可以提供更定制化的迎賓及后續(xù)消費引導(dǎo)服務(wù),實現(xiàn)智慧商業(yè)的的概念;如果應(yīng)用于安防領(lǐng)域,把嫌疑人作為目標人員,則可以建立起對嫌疑人的實時布控體系,在嫌疑人在任何時候出現(xiàn)的時候,系統(tǒng)都能實時發(fā)現(xiàn),從且給相關(guān)的政府部門提供實時準確的信息,從而做出正確的響應(yīng),實現(xiàn)智慧城市的概念;推而廣之的,在物業(yè)管理,商業(yè)防損,無人系統(tǒng)等其它諸多領(lǐng)域,人臉的實時識別都將極大的豐富和改善這些場景的產(chǎn)品體驗。
在這個過程中,一個核心的處理是對視頻或圖片中的人臉進行檢測和特征提取,并特征的匹配操作,這個核心成功率和準確性是系統(tǒng)體驗的一個關(guān)鍵因素。
目前,雖然人臉的檢測成功率,人臉識別的準確率已經(jīng)達到一個比較高的水準,但是在非配合無感知的動態(tài)場景中,且在數(shù)據(jù)規(guī)模的比較在的情況下,錯誤率的在時間和空間上的累積有時候仍會達到一個讓用戶感知到的程度,從而影響客戶體驗。具體的影響體現(xiàn)在:人臉檢測的失敗導(dǎo)致目標人員沒有及時發(fā)現(xiàn),或被遺漏。人臉匹配的錯誤導(dǎo)致誤報。隨著目標人員的庫規(guī)模的增加及實時識別人流量的增大而增大。
在實際的算法模型中,當大量的數(shù)據(jù)訓(xùn)練帶來的性能提升曲線上升到一定的程度后,繼續(xù)增加數(shù)據(jù)的訓(xùn)練量將很難從再獲取進一步的性能提升,不管是在人臉檢測還是在所提取的人臉特征區(qū)分度方面,同時不同的算法模型往往有各自擅長的場景,具體比如:人臉檢測算法,在不同的場景下,如低光照,強光/逆光,低能見度(雨天霧天塵天)在算法的遺漏率,誤檢率方面可能各有優(yōu)劣;人臉特征值的區(qū)分度(對應(yīng)人臉比對時的準確性),兩樣在人臉角度 ,年齡,人臉模糊度,光照條件多種不因素的情況,不同場景/條件下的準確率可能也各有優(yōu)劣。
由于不同的算法的模型采用的描述方案/結(jié)構(gòu)完全不同,進行算法上的融合往往是困難的,或者是根本不可行的,那么怎么要綜合集成,融合和應(yīng)用不同的算法模型的結(jié)果則是一個非常值得考慮的一個問題。
基于以上考慮,本發(fā)明專利提出了一種在實時人臉識別中的人臉級聯(lián)檢測和特征提取和匹配的方法,從以下各個角度對算法進行綜合的級聯(lián)和融合,從而提高在動態(tài)場景中,人臉的檢測的準確性和人臉匹配的準確性。主要的角度如下:圖片尺度和空間及像像素級的變換(如resize, flip, smoth等操作);級聯(lián)多級檢測器;級聯(lián)多級特征提??;級聯(lián)的特征匹配;多圖特征匹配(同一個人的多個特征如不同的角度,表情,年齡);短時間跨度的聚合匹配。
僅從單個算法角度出發(fā)考慮,很難在算法已經(jīng)接近到瓶頸的情況下獲得性能的絕對提升。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種實時人臉識別中級聯(lián)檢測及特征提取和匹配的方法,旨在解決上述的技術(shù)問題。
本發(fā)明是這樣實現(xiàn)的,一種實時人臉識別中級聯(lián)檢測及特征提取和匹配的方法,所述方法包括以下步驟:
A、對檢測器進行級聯(lián)并結(jié)合圖片進行尺度變換,空間變換,像素變換的處理;
B、在級聯(lián)檢測后進行多個檢測結(jié)果對應(yīng)的特征提取;
C、對提取的級聯(lián)特征值進行自適應(yīng)的匹配計算;
D、在實時人臉識別中對同一目標進行多圖匹配;
E、在實時人臉識別中進行短時濾波。
本發(fā)明的進一步技術(shù)方案是:所述步驟A中還包括以下步驟:
A1、對級聯(lián)檢測的圖像進行變換;
A2、對級聯(lián)檢測到的結(jié)構(gòu)進行存儲。
本發(fā)明的進一步技術(shù)方案是:所述步驟A1中包括以下步驟:
A11、對處理的圖像不做任何變換利用多個檢測器對Image(z)進行依次檢測并記錄下檢測結(jié)果;
A12、對圖像進行flip變換并再次利用多個檢測器對對Image(z)_flip進行檢測并記錄flip變換后的檢測結(jié)果;
A13、對圖像進行resize變換并記錄resize變換后的檢測結(jié)果;
A14、對圖像進行smoth變換并對Image(z)_smoth進行檢測且記錄下resize變換后的檢測結(jié)果;
A15、對最后所得到的所述Face結(jié)果和結(jié)合Duplicate(N)進行去重。
本發(fā)明的進一步技術(shù)方案是:所述步驟B中包括以下步驟:
B1、依次讀取人臉檢測結(jié)果并取出其中的一個人臉位置及對應(yīng)的變換信息;
B2、在進行特征提取前,先對圖像Image(z)進行跟蹤檢測同樣的變換;
B3、對人臉圖像進行實際的特征值提取操作;
B4、重復(fù)步驟B1-B3直到所有人臉框均處理完為止。
本發(fā)明的進一步技術(shù)方案是:所述步驟C中包括以下步驟:
C1、利用遍歷待比較兩個級聯(lián)特征的檢測結(jié)果,統(tǒng)計自Feature的個數(shù)和變換的類型;
C2、取兩個級聯(lián)Feature的變換類型的并集并開始以下Feature擴展操作;
C3、如果當前Feature的類型個數(shù)小于步驟C2得到的并集,則進行擴展操作;
C4、對擴展后的特征值進行相似計算,作為最后的兩兩特征值的匹配度。
本發(fā)明的進一步技術(shù)方案是:所述步驟C3中還包括以下步驟:
C31、計算當前級聯(lián)特征中已經(jīng)存在的變換類型的特征值的均值;
C32、對于當前級聯(lián)特征中,不存在的變換的特征值,用C31得到的均值特征值進行填充;
C33、重復(fù)進行C31- C32直到兩個級聯(lián)特征都已經(jīng)擴展完畢。
本發(fā)明的進一步技術(shù)方案是:所述步驟D中包括以下步驟:
D1、在進行目標人中錄入時進行多圖的錄入;
D2、在多圖匹配前利用步驟C過程先進行級聯(lián)的兩兩匹配;
D3、計算所輸入的圖片兩兩匹配結(jié)果的最大值、最小值及均值;
D4、根據(jù)所配置的策略不同,使最大值、最小值及均值為最后匹配的結(jié)果;
D5、輸出最后匹配的多圖匹配結(jié)果。
本發(fā)明的進一步技術(shù)方案是:所述步驟E中包括以下步驟:
E1、在短時濾波匹配前利用步驟C\D先進行級聯(lián)的兩兩匹配和多圖匹配結(jié)果;
E2、根據(jù)輸入的Face中所帶的Face從屬信息緩存收到的兩兩匹配或多圖匹配結(jié)果;
E3、每一個Person的緩存結(jié)果都維護一個超時定時器,并進行邏輯維護;
E4、如查按E3的過程中,維護的超進計數(shù)超過超時門限Threshold(TimeOut),則開始短時濾波的輸出處理。
本發(fā)明的進一步技術(shù)方案是:所述步驟E3中還包括以下步驟:
E31、在收到一個新的匹配接口,超時計數(shù)清0;
E32、在每一個計時周期對超時計數(shù)加1。
本發(fā)明的進一步技術(shù)方案是:所述步驟E4中包括以下步驟:
E41、計算所緩存的所有匹配結(jié)果的最大值、最小值及均值;
E42、根據(jù)所配置的策略不同,使大值、最小值、均值為濾波匹配的結(jié)果。
本發(fā)明的有益效果是:算法的級聯(lián)及濾波處理,在工程實現(xiàn)上簡單易行;人臉檢測器的準確率得到提高;提高了人臉匹配的準確率;該算法在提升性能的同時,并不顯著的提升系統(tǒng)的結(jié)構(gòu)復(fù)雜度和計算復(fù)雜度,同時相比于特定算法方面專用的性能提升方法,本發(fā)明提出的方法普適性高,可以應(yīng)用在任何的基礎(chǔ)性的檢測和提取方法中,得到普適性的性能提升。
附圖說明
圖1是本發(fā)明實施例提供的實時人臉識別中級聯(lián)檢測及特征提取和匹配的方法的流程圖 。
圖2是本發(fā)明實施例提供的級聯(lián)+變換的人臉檢測結(jié)果結(jié)構(gòu)示意圖。
圖3是本發(fā)明實施例提供的級聯(lián)+變換的特征值提取結(jié)果示意圖。
圖4是本發(fā)明實施例提供的多圖的匹配情況的兩兩匹配的中間結(jié)果存儲示意圖。
圖5是本發(fā)明實施例提供的短時濾波緩存結(jié)構(gòu)示意圖。
具體實施方式
圖1示出了本發(fā)明提供的實時人臉識別中級聯(lián)檢測及特征提取和匹配的方法的流程圖,其詳述如下:
步驟S1,對檢測器進行級聯(lián)并結(jié)合圖片進行尺度變換,空間變換,像素變換的處理;檢測器的級聯(lián)并結(jié)合圖片的尺度變換,空間變換,像素變換的處理方法,包含兩核心的組成部分,A1級聯(lián)檢測的圖像變換的過程;A2級聯(lián)檢測結(jié)構(gòu)的存儲;其中A1的過程具體如下:假設(shè)待級聯(lián)的檢測器Dectector(x), Dectector(y), 并定義如下參數(shù)Duplicate(N),其含義為在同一張圖片中的同一張人臉,接受重次檢測的次數(shù)。即在整個級聯(lián)檢測的最后,同一張臉只會選取Duplicate(N)張進行保存。同時定義如下描述,F(xiàn)ace(m,n),其中m表示第幾次檢測,n表示第m次檢測時,得到的所有Face中的第n張臉。在以上定義上,對于一張圖版本Image(z)我們描述級聯(lián)檢測的過程如下:A11 先不做任何變換,利用多個檢測器,對Image(z)進行依次檢測,記錄下每次檢測的結(jié)果。A12 進行圖像的flip變換,再次利用多個檢測器,對Image(z)_flip進行檢測。記錄下flip變換后的檢測結(jié)果。A13 先進行圖像的resize變換。在做resize變換時,存在上變換和下變換的選擇問題。我們定義一個門限Threshold(resize),當大于此門限時,時行下變換,當小于此門限時,進行上變換。利用多個檢測器,對Image(z)_resize進行檢測。記錄下resize變換后的檢測結(jié)果。A14 先對圖像進行smoth變換,對Image(z)_smoth進行檢測。記錄下resize變換后的檢測結(jié)果。A15 當A11~A14步驟完成之后,對所得到的所有Face結(jié)果,結(jié)合Duplicate(N)進行去重。其準則如下:A151初始時,F(xiàn)ace的結(jié)果集合Set(face)為0。A152對于每一個待處理的Face,先跟Set(face)中的每一張臉進行中心點距離計算。如果中心點相距小于兩兩任意其中一個人臉寬度的1/2,則認為是同一張臉,并選擇最附合這個條件,即兩兩距離最近都小于彼此寬度的1/2,則判斷為同一個face,否則為一張新的face。A153對于新的face,則直接加入到Set(face)中,對于已經(jīng)在Set(face)集合中存在的Face,如果這張Face已經(jīng)記錄的數(shù)目沒有超過參數(shù)Duplicate(N),且同一變換中沒有記錄過這張Face,則記錄這張Face,i不滿足以上任意一個,則丟棄當前結(jié)果。A154重復(fù)進行A152和A153兩個步驟直接所有候選Face都處理完畢止。最終形成如圖1所示的級聯(lián)Face檢測結(jié)果如圖2所示。其中包含多個人臉Face, 每個Face中,可能存在一個到Duplicate(N)不同(相近但有微小的差別)的人臉檢測結(jié)果。通過表示為一個圖片的中的某一個矩形區(qū)域范圍。
步驟S2,在級聯(lián)檢測后進行多個檢測結(jié)果對應(yīng)的特征提取;在級聯(lián)檢測的基礎(chǔ)上,進行多個檢測結(jié)果對應(yīng)的特征提取方法,其過程如下:B1依次讀取由圖2所示的人臉檢測結(jié)果。取出其中的一個人臉位置及對應(yīng)的變換信息。B2在進行特征提取前,先對圖像Image(z)進行跟檢測進同樣的變換如(flip/resize/smoth等)B3進行實際的特征值提取操作。B4重復(fù)進行步驟B1~B3,直接所有人臉框都處理完為止。其中得到的與Image(z)相關(guān)的人臉特征值如圖3所示。
步驟S3,對提取的級聯(lián)特征值進行自適應(yīng)的匹配計算;適合的級聯(lián)特征的特征值兩兩匹配方法,其關(guān)鍵的步驟如下:C1遍歷待比較的兩個級聯(lián)特征的檢測結(jié)果,統(tǒng)計自的Feature的個數(shù)和變換的類型。C2取兩個級聯(lián)Feature的變換類型的并集,開始以下的Feature擴展操作;C3如果當前Feature的類型個數(shù)小于步驟C2得到的并集,則需要進行擴展操作。步驟如下:C31計算當前級聯(lián)特征中,已經(jīng)存在的變換類型的特征值的均值;C32對于當前級聯(lián)特征中,不存在的變換的特征值,用C3.1得到的均值特征值進行填充;C33重復(fù)進行C31和C32直到兩個級聯(lián)特征都已經(jīng)擴展完畢。C4對擴展后的特征值進行相似計算,作為最后的兩兩特征值的匹配度。
步驟S4,在實時人臉識別中對同一目標進行多圖匹配;實時人臉識別的多圖識別方法,其關(guān)鍵步驟如下:D1為了提升識別的準確率,在進行目標人中錄入的時候,進行多圖的錄入。但錄入的多圖需要明顯區(qū)分度,如:同一個人不同年齡的圖片;同一個人不同角度的圖片;同一個不同表情的圖片;同一個不同光照條件下的圖片。D2在多圖匹配前,先按本發(fā)明專利中C部分所述的方法,先先進級聯(lián)的兩兩匹配,得到以下的圖4所示的相似度存儲結(jié)果;D3計算所輸入的圖片兩兩匹配結(jié)果的最大值、最小值、均值;D4根據(jù)所配置的策略的不同,使用是大值、最小值、均值為最后匹配的結(jié)果;D5輸出最后匹配的結(jié)果為多圖匹配結(jié)果。
步驟S5,在實時人臉識別中進行短時濾波,;實時人臉識別中的短時濾波方法。其關(guān)鍵步驟如下:E1在短時濾波匹配前,先按本發(fā)明專利中C,/D兩部分所述的方法,先先進級聯(lián)的兩兩匹配和多圖匹配結(jié)果。E2根據(jù)輸入的Face中所帶的Face從屬信息(如在Tracking過程中,對每一個輸入的Face標記有TrackingID, 相同的TrackingID的輸入表示人臉的圖片來自于同一個人,如一個人在鏡頭前徘徊,則可能在短時間內(nèi)采集到其多次,或通過配置Tracking算法的參數(shù),可以在同一個人的一次跟蹤過程中選擇多張人臉做為輸入),緩存收到的兩兩匹配或多圖匹配結(jié)果,緩存結(jié)構(gòu)如圖5所示;E3每一個Person的緩存結(jié)果都維護一個超時定時器,并按如下邏輯進行維護;E31如果收到一個新的匹配接口,超時計數(shù)清0;E32每一個計時周期,超時計數(shù)加1;E4如查按E3的過程中,維護的超進計數(shù)超過超時門限Threshold(TimeOut),則開始短時濾波的輸出處理。過程如下:E41計算所緩存的所有匹配結(jié)果的最大值、最小值、均值;E42根據(jù)所配置的策略的不同,使用是大值、最小值、均值為濾波匹配的結(jié)果。
可以不依賴于檢測器與特征值匹配算法本身的性能提升和改善,實現(xiàn)以下效果:算法的級聯(lián)及濾波處理,在工程實現(xiàn)上簡單易行;人臉檢測器的準確率提升;人臉匹配的準確率提升。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。