中抽取出一些特定的幀圖像,對這些抽取出的特定幀圖像進行掃描,得到圖像中所包含的人臉特征信息,這些被掃描的幀圖像就是檢測幀;對于那些沒有進行掃描檢測的幀圖像,可以采用特征跟蹤的方式,在跟蹤幀中查找之前在檢測幀中掃描得到的人臉特征。從而可以得到目標視頻中包含有人臉圖像的幀信息,為下面的人臉識別做準備。
[0133]在步驟102中,對檢測幀進行人臉檢測,獲取檢測幀中所包含的人臉圖像的檢測數(shù)據(jù)。
[0134]具體的,通過對檢測幀進行掃描,判斷該檢測幀中是否存在人臉信息。若存在,記錄人臉圖像的檢測數(shù)據(jù),檢測數(shù)據(jù)包含:區(qū)分不同人臉圖像的人臉標識。在一幀圖像中有可能包含單人的人臉信息,也有可能包含多人的人臉信息,通過人臉標識可以有效區(qū)分掃描出的不同人臉。
[0135]在步驟103中,根據(jù)人臉標識,對跟蹤幀進行人臉跟蹤,確定跟蹤幀中是否包含與人臉標識對應(yīng)的人臉圖像。
[0136]具體的,如前所述,根據(jù)檢測幀中掃描得到的人臉特征,基于人臉標識在跟蹤幀中追蹤是否存在檢測幀中出現(xiàn)過的人臉。
[0137]在步驟104中,從檢測幀和跟蹤幀中提取包含有人臉標識的幀,得到待識別幀圖像。
[0138]具體的,當在檢測幀和跟蹤幀中找到人臉圖像,則將包含有人臉圖像的檢測幀和跟蹤幀從目標視頻中提取出來,作為識別人臉圖像所對應(yīng)人臉身份的待識別幀圖像。
[0139]在步驟105中,基于預(yù)先得到的識別模型,對待識別幀圖像進行人臉識別,得到每幀中人臉圖像的人臉識別結(jié)果。
[0140]具體的,現(xiàn)有技術(shù)中存在多種用于圖像識別的算法,基于不同的算法,可以預(yù)先計算得到用于特定場景下的圖像識別模型,例如,可以利用人工神經(jīng)網(wǎng)絡(luò)對樣本圖像數(shù)據(jù)進行訓(xùn)練,得到具有人工智能學(xué)習(xí)能力的神經(jīng)網(wǎng)絡(luò)模型,再采用該訓(xùn)練好的人工神經(jīng)網(wǎng)絡(luò)模型對待識別圖像進行識別,得到識別結(jié)果。本實施例中的特定場景,是對圖像中的人臉進行身份識別,識別模型的功能就是對輸入的未知人臉圖像進行計算,得到該未知人臉圖像所對應(yīng)人物的身份信息。
[0141]在步驟106中,對待識別幀圖像的所有人臉識別結(jié)果進行篩選,得到目標視頻中出現(xiàn)的人臉圖像的最終識別結(jié)果。
[0142]具體的,對每幀待識別圖像中的人臉識別結(jié)果進行記錄,然后,按照一定的規(guī)則進行篩選,例如同一人臉標識識別出不同的識別結(jié)果;例如人臉標識A對應(yīng)的識別結(jié)果有人物B和人物C,則可以根據(jù)B和C的識別結(jié)果的數(shù)量進行排序,排名第一的為最終的人臉標識A對應(yīng)的人物識別結(jié)果;或者,同一識別結(jié)果對應(yīng)不同的人臉標識;例如識別結(jié)果為演員D,但其所對應(yīng)的人臉標識有E和F,則也可以根據(jù)人臉標識E和F的數(shù)量進行排序,取排名第一的人臉標識為與演員D對應(yīng)的人臉標識。
[0143]本實施例中,通過對待處理目標視頻中的檢測幀進行人臉檢測,定位檢測幀中的人臉圖像;再通過基于檢測得到的人臉信息對待處理目標視頻中的跟蹤幀進行人臉跟蹤,確定跟蹤幀中是否所包含的人臉信息;將包含有人臉信息的檢測幀和跟蹤幀從目標視頻中提取出來,并基于預(yù)先得到的識別模型,對提取出的待識別幀圖像進行人臉識別,并對識別結(jié)果進行篩選,得到最終人臉識別結(jié)果。從而實現(xiàn)了將最終人臉識別結(jié)果向用戶顯示,以提示用戶視頻中所出現(xiàn)演員的信息,該方法有效提高人臉識別效率。
[0144]圖2是根據(jù)另一示例性實施例示出的一種視頻處理方法的流程圖,如圖2所示,本實施例的視頻處理方法可以應(yīng)用于視頻提供商的視頻服務(wù)器中也可以應(yīng)用于接收視頻方的終端(客戶端設(shè)備)中,以下以應(yīng)用于視頻服務(wù)器中來舉例說明,本實施例的方法包括以下步驟:
[0145]在步驟201中,獲取待處理的目標視頻,目標視頻中包含:檢測幀和跟蹤幀。
[0146]可選的,檢測幀為對目標視頻進行預(yù)設(shè)間隔劃分后,各個劃分點所對應(yīng)的幀;跟蹤幀為目標視頻中除去檢測幀外的視頻幀。該預(yù)設(shè)間隔可以為預(yù)設(shè)等間隔或預(yù)設(shè)不等間隔;若為預(yù)設(shè)等間隔,優(yōu)選的,間隔幀數(shù)為5幀。
[0147]具體的,可以根據(jù)各個檢測幀中的人臉圖像檢出率自適應(yīng)地調(diào)整各個檢測幀的間隔,以提供盡可能豐富的包含人臉圖像的待識別幀圖像。
[0148]在步驟202中,按時間先后的順序,對目標視頻中的當前檢測幀進行人臉檢測,獲取當前檢測幀中所包含的人臉圖像的檢測數(shù)據(jù)。
[0149]可選的,對檢測幀進行人臉檢測可以包括:采用AdaBoost迭代算法對檢測幀進行人臉檢測。檢測數(shù)據(jù)包含:區(qū)分不同人臉圖像的人臉標識,具體包含:當前檢測幀對應(yīng)的人臉標識。
[0150]具體的,AdaBoost迭代算法的核心思想是針對同一個訓(xùn)練集訓(xùn)練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構(gòu)成一個更強的最終分類器(強分類器)。從而排除一些不必要的訓(xùn)練數(shù)據(jù)特征,僅保留關(guān)鍵的訓(xùn)練數(shù)據(jù),進行有效提高人臉圖像的檢出效率,同時提高檢測的準確性。
[0151]在步驟203中,將當前檢測幀對應(yīng)的人臉標識與已獲取的人臉標識進行比對,將新增加的人臉標識進行存儲,得到待跟蹤人臉標識。
[0152]具體的,通過對各個檢測幀不斷的檢測,逐漸豐富人臉標識的個數(shù),例如在當前檢測幀中掃描出人臉甲,在下一個檢測幀中掃描出人臉甲和人臉乙,則待跟蹤人臉標識就有甲和乙,對之后的跟蹤幀就可以跟蹤甲和乙兩張人臉圖像。
[0153]在步驟204中,根據(jù)已存儲的待跟蹤人臉標識對當前檢測幀與下一個檢測幀之間的跟蹤幀進行人臉跟蹤,確定跟蹤幀中是否包含與待跟蹤人臉標識對應(yīng)的人臉圖像。
[0154]在步驟205中,更新下一個檢測幀為當前檢測幀,返回執(zhí)行步驟202的方法。
[0155]具體的,例如針對一段目標視頻,對目標視頻的第一幀圖像,采用Adaboost技術(shù)進行人臉檢測,若該第一幀圖像中有人臉圖像,則記錄該人臉圖像的檢測數(shù)據(jù),若不包含人臉圖像,可以繼續(xù)檢測第二幀圖像,直到按照視頻幀的先后順序,找到第一個包含有人臉圖像的幀圖像,記錄掃描該幀圖像后得到的人臉檢測數(shù)據(jù),例如,人臉標識、該人臉圖像的位置信息等。以該包含有人臉圖像的視頻幀作為首幀,對該首幀后的第二幀圖像,不進行人臉檢測,只采用粒子濾波技術(shù)進行人臉跟蹤,如果該第二幀圖像存在人臉圖像,則進行人臉跟蹤,若該第二幀圖像不存在人臉圖像,則不進行處理。隨后可以每間隔5幀,重新啟動一下人臉檢測,這樣可以保證新進來的人臉圖像不會被漏掉。除上述方法外,也可以以目標視頻的第一幀圖像作為首幀,不論其內(nèi)是否包含有人臉圖像,按照預(yù)設(shè)的檢測幀的間隔次序進行幀圖像的掃描檢測,然后帶著逐漸掃描得到的越來越豐富的人臉檢測數(shù)據(jù)對兩個檢測幀之間的各個跟蹤幀進行人臉跟蹤。
[0156]在步驟206中,從檢測幀和跟蹤幀中提取包含有人臉標識的幀,得到待識別幀圖像。
[0157]具體的,在上述步驟202至步驟205的檢測和跟蹤過程中,記錄下所有人臉圖像出現(xiàn)的幀數(shù)。累計出現(xiàn)幀數(shù)大于一定值時,譬如好幾分鐘的視頻,可以收集大概幾百幀以上的人臉圖像,將這些幀存儲下來,這些幀就是待識別幀圖像,之后可以采用預(yù)先得到的識別模型和人臉數(shù)據(jù)庫中收集的明星人臉對這些待識別幀圖像進行比對和識別。
[0158]在步驟207中,基于預(yù)先得到的識別模型,對待識別幀圖像進行人臉識別,得到每幀中人臉圖像的人臉識別結(jié)果。
[0159]具體的,識別模型可以為深度卷積神經(jīng)網(wǎng)絡(luò)。則該方法還包括:采用預(yù)設(shè)數(shù)量人臉圖像的訓(xùn)練樣本對深度卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,得到預(yù)先得到的識別模型。
[0160]深度學(xué)習(xí)(Deep Learning)是機器學(xué)習(xí)研究中的一個新的領(lǐng)域,其動機在于建立、模擬人腦進行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),它模仿人腦的機制來解釋數(shù)據(jù),例如圖像,聲音和文本。深度學(xué)習(xí)的概念由Hinton等人于2006年提出。基于深信度網(wǎng)(DBN)提出非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來希望,隨后提出多層自動編碼器深層結(jié)構(gòu)。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對關(guān)系減少參數(shù)數(shù)目以提尚訓(xùn)練性能。
[0161]卷積神經(jīng)網(wǎng)絡(luò)(Convolut1nal Neural Networks,簡稱:CNN)是人工神經(jīng)網(wǎng)絡(luò)的一種,深度卷積神經(jīng)網(wǎng)絡(luò)就是一種深度的監(jiān)督學(xué)習(xí)下的機器學(xué)習(xí)模型,已成為當前語音分析和圖像識別領(lǐng)域的研究熱點。它的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類似于生物神經(jīng)網(wǎng)絡(luò),降低了網(wǎng)絡(luò)模型的復(fù)雜度,減少了權(quán)值的數(shù)量。當網(wǎng)絡(luò)的輸入是多維圖像時,該優(yōu)點表現(xiàn)得更為明顯,使圖像可以直接作為網(wǎng)絡(luò)的輸入,避免了傳統(tǒng)識別算法中復(fù)雜的特征提取和數(shù)據(jù)重建過程。卷積網(wǎng)絡(luò)是為識別二維形狀而特殊設(shè)計的一個多層感知器,這種網(wǎng)絡(luò)結(jié)構(gòu)對平移、比例縮放、傾斜或者共他形式的變形具有高度不變性。
[0162]可選的,預(yù)設(shè)數(shù)量人臉圖像的訓(xùn)練樣本可以由Μ類人臉圖像,每類人臉圖像由N張人臉圖像構(gòu)成;其中Μ、Ν為自然數(shù)。
[0163]例如,在采用訓(xùn)練樣本對深度卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練的階段,可以準備大量的人臉圖像數(shù)據(jù)。并對這些人臉圖像進行標識標定。譬如:張三的所有人臉圖像的標號都為1 ;李四的所有人臉圖像的標號都為2 ;然后準備譬如20000類的人臉圖像接近60萬張;相當于20000個人,每個人的人臉圖像30張。此時,Μ為20000 ;Ν為30 ;預(yù)設(shè)數(shù)量人臉圖像的訓(xùn)練樣本為60萬張人臉圖像。
[0164]可選的,該預(yù)先得到的識別模型可以通過以下步驟獲取得到,包括:對訓(xùn)練樣本進行歸一化處理,得到標準尺寸的樣本數(shù)據(jù);對標準尺寸的樣本數(shù)據(jù)進行計算,得到ZCA矩陣和均值矩陣;基于ZCA矩陣和均值矩陣,對訓(xùn)練樣本進行預(yù)處理,得到預(yù)處理后的輸入數(shù)據(jù);預(yù)處理包括:ZCA白化處理;將輸入數(shù)據(jù)輸入深度卷積神經(jīng)網(wǎng)絡(luò)中進行訓(xùn)練,得到訓(xùn)練完畢的該預(yù)先得到的識別模型。
[0165]其中,PCA是主成分分析,即 Principal Component Analysis,簡稱 “PCA” 或者主元分析。ZCA是正則化PCA,ZCA白化是在PCA白化的基礎(chǔ)上做了一個旋轉(zhuǎn)操作,使得白化之后的數(shù)據(jù)更加的接近原始數(shù)據(jù)。ZCA白化首先通過PCA去除了各個特征之間的相關(guān)性,然后是輸入特征具有單位方差,此時得到PCA白化后的處理結(jié)果,然后再把數(shù)據(jù)旋轉(zhuǎn)回去,得到ZCA白化的處理結(jié)果,結(jié)果通常以矩陣形式體現(xiàn),得到ZCA矩陣。繼續(xù)以上面的60萬個訓(xùn)練樣本為例,利用這些數(shù)據(jù),訓(xùn)練ZCA矩陣P和均值矩陣E,并利用ZCA矩陣P和E對所有的訓(xùn)練數(shù)據(jù)進行預(yù)處理,然后再利用CNN網(wǎng)絡(luò)進行訓(xùn)練,該CNN網(wǎng)絡(luò)的結(jié)構(gòu)可以參考ImageNet的網(wǎng)絡(luò)結(jié)構(gòu)圖,但需要對ImageNet中的部分參數(shù)進行修改。ImageNet是一個計算機視覺系統(tǒng)識別項目,是目前世界上圖像識別最大的數(shù)據(jù)庫,是美國哈佛的計算機科學(xué)家,模擬人類的識別系統(tǒng)建立的,能夠從圖片識別物體。其中的參數(shù)修改,譬如輸入圖像參數(shù)為100X100像素;最終輸出類別參數(shù)為20000 ;中間的其他數(shù)據(jù)參數(shù)也會略有一些調(diào)整,具體的調(diào)整數(shù)據(jù)由本領(lǐng)域技術(shù)人員根據(jù)識別的具體需要進行設(shè)定,本公開對此不作限制。這樣就完成了 CNN深度學(xué)習(xí)模型以及網(wǎng)絡(luò)的訓(xùn)練。再對60萬張圖像,采用訓(xùn)練好的CNN模型,去掉最后的輸出層,得到4