本發(fā)明涉及人臉識別技術,具體涉及一種活體驗證方法及設備。
背景技術:
目前,越來越多的身份驗證系統(tǒng)采用人臉識別技術從而認證用戶身份。特別是隨著移動終端客戶端的普及,越來越多的人臉驗證系統(tǒng)代替?zhèn)鹘y(tǒng)的密碼驗證成為主流。但隨著人臉識別技術的廣泛應用,出現(xiàn)了各種方法冒充活體人臉以通過身份驗證,例如通過照片、視頻等欺騙性識別以通過身份驗證;為了防范越來越多樣、越來越具有欺騙性的攻擊方式,身份驗證系統(tǒng)中的活體人臉識別算法也越復雜,生成的應用容量也會越來越大。而移動終端客戶端的存儲空間有限從而無法容納較大的活體驗證算法;同時,處理器的處理能力偏弱使得數(shù)據(jù)處理的時間更長,這極大的限制了活體人臉驗證系統(tǒng)在移動終端上的應用。
技術實現(xiàn)要素:
為解決現(xiàn)有存在的技術問題,本發(fā)明實施例提供一種活體驗證方法及設備。
為達到上述目的,本發(fā)明實施例的技術方案是這樣實現(xiàn)的:
本發(fā)明實施例提供了一種活體驗證方法,所述方法包括:
基于動作指令獲得圖像數(shù)據(jù),解析所述圖像數(shù)據(jù),識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域;
基于所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域;
抽取所述區(qū)域中的紋理特征;基于所述紋理特征計算表征姿態(tài)的參數(shù);基于所述參數(shù)確定動作;
當所述動作與所述動作指令對應的動作匹配時,確定活體驗證通過。
上述方案中,所述基于所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域,包括:
抽取所述多幀圖像中的第一幀圖像和第二幀圖像,識別所述第一幀圖像中表征人臉所在位置的第一區(qū)域,獲得所述第一區(qū)域?qū)牡谝蛔鴺朔秶?/p>
獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍;
計算所述初始坐標范圍對應的偏移參數(shù);
基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;
其中,所述偏移參數(shù)表征所述第二坐標范圍相對于所述第一坐標范圍的偏移程度。
上述方案中,所述獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍,包括:
按預設步長在所述第一坐標范圍對應的第一區(qū)域內(nèi)選取第一組n個特征點,獲得所述第一組n個特征點中第一特征點的第一坐標;n為正整數(shù);其中,所述第一特征點為所述第一組n個特征點中的任一特征點;
獲得所述第二幀圖像中的第二組n個特征點,所述第二組n個特征點中第二特征點的第二坐標與所述第一組n個特征點中相對應的第一特征點的第一坐標相同;
基于所述第二組n個特征點中每個特征點的第二坐標確定初始坐標范圍。
上述方案中,所述計算所述初始坐標范圍對應的偏移參數(shù),包括:
計算所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù);所述第一偏移參數(shù)表征坐標相同的所述第二特征點與所述第一特征點之間的差異程度;
基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù);所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的偏移程度;
以及,計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征所述匹配特征點與所述第一組n個特征點中、與所述匹配特征點相對應的第四特征點之間的偏移程度;
根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù)。
上述方案中,所述計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù),包括:
分別從所述第二幀圖像所包含的多個匹配特征點中提取多組第一特征點對;所述第一特征點對包括第一匹配特征點和第二匹配特征點,以及從所述第一幀圖像中、與所述多個匹配特征點相對應的源特征點中提取多組第二特征點對,所述第二特征點對包括第一源特征點和第二源特征點;其中,所述第一匹配特征點和所述第二匹配特征點為所述多個匹配特征點中的任意兩個特征點;
計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;
獲得所述第一距離和所述第二距離之間的相對參數(shù);將所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù)。
上述方案中,所述根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù),包括:
將多個第二偏移參數(shù)按第一預設處理規(guī)則進行處理,獲得特定偏移參數(shù);
以及,將多個相對參數(shù)按第二預設處理規(guī)則進行處理,獲得特定相對參數(shù);
將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù)。
上述方案中,所述基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,包括:
基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定所述每個特征點對應的目標特征點,獲得所述目標特征點的第三坐標;
確定所述第一幀圖像中與所述目標特征點相對應的初始特征點;所述初始特征點的第四坐標與所述目標特征點的第三坐標相同;
獲得所述初始特征點相對于所述目標特征點之間的第四偏移參數(shù);
當所述第四偏移參數(shù)達到預設閾值時,確定所述目標特征點為匹配特征點;
當所述第四偏移參數(shù)未達到所述預設閾值時,確定所述目標特征點不是匹配特征點。
上述方案中,所述抽取所述區(qū)域中的紋理特征;基于所述紋理特征計算表征姿態(tài)的參數(shù);基于所述參數(shù)確定動作,包括:
抽取所述區(qū)域中的第一紋理特征和/或第二紋理特征;
基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),和/或,基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù);
基于所述第一參數(shù)確定第一動作,和/或,基于所述第二參數(shù)確定第二動作。
上述方案中,所述抽取所述區(qū)域中的第一紋理特征,包括:
對所述區(qū)域中的特征點按照第三預設處理規(guī)則進行處理,獲得所述區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第一過程參數(shù);
分析所述第一過程參數(shù)獲得表征人臉紋理邊緣的第一紋理特征;
相應的,所述抽取所述區(qū)域中的第二紋理特征,包括:
抽取所述區(qū)域中的第一部分區(qū)域;
對所述第一部分區(qū)域中的特征點按照第四預設處理規(guī)則進行處理,獲得所述第一部分區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第二過程參數(shù);
分析所述第二過程參數(shù)獲得表征眼部紋理邊緣的第二紋理特征。
上述方案中,所述基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),包括:
將所述第一紋理特征輸入預先配置的第一分類模型,獲得表征第一姿態(tài)的第一參數(shù)。
上述方案中,所述基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù),包括:
將所述第二紋理特征輸入預先配置的第二分類模型,獲得表征第二姿態(tài)的第二參數(shù)。
上述方案中,所述基于所述第一參數(shù)確定第一動作,包括:
基于所述多幀圖像分別對應的多個第一參數(shù),判斷所述多幀圖像中第一部分圖像對應的第一參數(shù)是否均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)是否均不滿足所述第一閾值范圍;
當所述多幀圖像中第一部分圖像對應的第一參數(shù)均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)均不滿足所述第一閾值范圍時,確定所述第一參數(shù)對應于第一動作。
上述方案中,所述基于所述第二參數(shù)確定第二動作,包括:
基于所述多幀圖像分別對應的多個第二參數(shù),判斷所述多幀圖像中第三部分圖像對應的第二參數(shù)是否均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)是否均不滿足所述第二閾值范圍;
當所述多幀圖像中第三部分圖像對應的第二參數(shù)均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)均不滿足所述第二閾值范圍時,確定所述第二參數(shù)對應于第二動作。
本發(fā)明實施例還提供了一種活體驗證設備,所述設備包括:檢測單元、跟蹤單元、特征抽取單元、計算單元、動作判定單元和驗證單元;其中,
所述檢測單元,用于基于動作指令獲得圖像數(shù)據(jù),解析所述圖像數(shù)據(jù),識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域;
所述跟蹤單元,用于基于所述檢測單元識別出的所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域;
所述特征抽取單元,用于抽取所述跟蹤單元跟蹤的所述區(qū)域中的紋理特征;
所述計算單元,用于基于所述特征抽取單元抽取的所述紋理特征計算表征姿態(tài)的參數(shù);
所述動作判定單元,用于基于所述計算單元獲得的所述參數(shù)確定動作;
所述驗證單元,用于當所述動作與所述動作指令對應的動作匹配時,確定活體驗證通過。
上述方案中,所述跟蹤單元,用于抽取所述多幀圖像中的第一幀圖像和第二幀圖像,識別所述第一幀圖像中表征人臉所在位置的第一區(qū)域,獲得所述第一區(qū)域?qū)牡谝蛔鴺朔秶?;獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍;計算所述初始坐標范圍對應的偏移參數(shù);基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;其中,所述偏移參數(shù)表征所述第二坐標范圍相對于所述第一坐標范圍的偏移程度。
上述方案中,所述跟蹤單元,用于按預設步長在所述第一坐標范圍對應的第一區(qū)域內(nèi)選取第一組n個特征點,獲得所述第一組n個特征點中第一特征點的第一坐標;n為正整數(shù);其中,所述第一特征點為所述第一組n個特征點中的任一特征點;獲得所述第二幀圖像中的第二組n個特征點,所述第二組n個特征點中第二特征點的第二坐標與所述第一組n個特征點中相對應的第一特征點的第一坐標相同;基于所述第二組n個特征點中每個特征點的第二坐標確定初始坐標范圍。
上述方案中,所述跟蹤單元,用于計算所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù);所述第一偏移參數(shù)表征坐標相同的所述第二特征點與所述第一特征點之間的差異程度;基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù);所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的偏移程度;以及,計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征所述匹配特征點與所述第一組n個特征點中、與所述匹配特征點相對應的第四特征點之間的偏移程度;根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù)。
上述方案中,所述跟蹤單元,用于分別從所述第二幀圖像所包含的多個匹配特征點中提取多組第一特征點對;所述第一特征點對包括第一匹配特征點和第二匹配特征點,以及從所述第一幀圖像中、與所述多個匹配特征點相對應的源特征點中提取多組第二特征點對,所述第二特征點對包括第一源特征點和第二源特征點;其中,所述第一匹配特征點和所述第二匹配特征點為所述多個匹配特征點中的任意兩個特征點;計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;獲得所述第一距離和所述第二距離之間的相對參數(shù);將所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù)。
上述方案中,所述跟蹤單元,用于將多個第二偏移參數(shù)按第一預設處理規(guī)則進行處理,獲得特定偏移參數(shù);以及,將多個相對參數(shù)按第二預設處理規(guī)則進行處理,獲得特定相對參數(shù);將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù)。
上述方案中,所述跟蹤單元,用于基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定所述每個特征點對應的目標特征點,獲得所述目標特征點的第三坐標;確定所述第一幀圖像中與所述目標特征點相對應的初始特征點;所述初始特征點的第四坐標與所述目標特征點的第三坐標相同;獲得所述初始特征點相對于所述目標特征點之間的第四偏移參數(shù);當所述第四偏移參數(shù)達到預設閾值時,確定所述目標特征點為匹配特征點;當所述第四偏移參數(shù)未達到所述預設閾值時,確定所述目標特征點不是匹配特征點。
上述方案中,所述特征抽取單元,用于抽取所述區(qū)域中的第一紋理特征和/或第二紋理特征;
所述計算單元,用于基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),和/或,基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù);
所述動作判定單元,用于基于所述第一參數(shù)確定第一動作,和/或,基于所述第二參數(shù)確定第二動作。
上述方案中,所述特征抽取單元,用于對所述區(qū)域中的特征點按照第三預設處理規(guī)則進行處理,獲得所述區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第一過程參數(shù);分析所述第一過程參數(shù)獲得表征人臉紋理邊緣的第一紋理特征;還用于抽取所述區(qū)域中的第一部分區(qū)域;對所述第一部分區(qū)域中的特征點按照第四預設處理規(guī)則進行處理,獲得所述第一部分區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第二過程參數(shù);分析所述第二過程參數(shù)獲得表征眼部紋理邊緣的第二紋理特征。
上述方案中,所述計算單元,用于將所述第一紋理特征輸入預先配置的第一分類模型,獲得表征第一姿態(tài)的第一參數(shù);和/或,用于將所述第二紋理特征輸入預先配置的第二分類模型,獲得表征第二姿態(tài)的第二參數(shù)。
上述方案中,所述動作判定單元,用于基于所述多幀圖像分別對應的多個第一參數(shù),判斷所述多幀圖像中第一部分圖像對應的第一參數(shù)是否均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)是否均不滿足所述第一閾值范圍;當所述多幀圖像中第一部分圖像對應的第一參數(shù)均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)均不滿足所述第一閾值范圍時,確定所述第一參數(shù)對應于第一動作;和/或,用于基于所述多幀圖像分別對應的多個第二參數(shù),判斷所述多幀圖像中第三部分圖像對應的第二參數(shù)是否均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)是否均不滿足所述第二閾值范圍;當所述多幀圖像中第三部分圖像對應的第二參數(shù)均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)均不滿足所述第二閾值范圍時,確定所述第二參數(shù)對應于第二動作。
本發(fā)明實施例提供的活體驗證方法及設備,所述活體驗證方法包括:基于動作指令獲得圖像數(shù)據(jù),解析所述圖像數(shù)據(jù),識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域;基于所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域;抽取所述區(qū)域中的紋理特征;基于所述紋理特征計算表征姿態(tài)的參數(shù);基于所述參數(shù)確定動作;當所述動作與所述動作指令對應的動作匹配時,確定活體驗證通過。采用本發(fā)明實施例的技術方案,通過主動輸出動作指令、并根據(jù)采集的圖像數(shù)據(jù)判定圖像數(shù)據(jù)中是否包括相應的動作的方式判定是否時活體,從而判定活體驗證是否通過;本發(fā)明實施例的技術方案實現(xiàn)通過區(qū)域追蹤的方式替代人臉識別檢測,方案中僅有在根據(jù)紋理特征計算姿態(tài)對應參數(shù)時需要預先配置的計算模型,且該計算模型容量極小,因此,本發(fā)明實施例提供的活體驗證方案所承載的算法文件較小,大大滿足了移動終端的存儲空間需求;且數(shù)據(jù)處理量大大降低,也滿足了移動終端的處理能力的需求。
附圖說明
圖1為本發(fā)明實施例的活體驗證方法的總體流程示意圖;
圖2為本發(fā)明實施例的活體驗證方法的細節(jié)流程示意圖;
圖3為本發(fā)明實施例的活體驗證方法的流程示意圖;
圖4a至圖4e分別為本發(fā)明實施例的活體驗證方法中的應用顯示示意圖;
圖5為本發(fā)明實施例的活體驗證設備的組成結構示意圖;
圖6為本發(fā)明實施例的活體驗證設備作為硬件的組成結構示意圖。
具體實施方式
下面結合附圖及具體實施例對本發(fā)明作進一步詳細的說明。
在對本發(fā)明實施例的活體驗證方法進行詳細描述之前,首先對本發(fā)明實施例的活體驗證方案的總體實現(xiàn)方式進行說明。圖1為本發(fā)明實施例的活體驗證方法的總體流程示意圖;如圖1所示,本發(fā)明實施例的活體驗證方法可包括以下幾個階段:
階段1:輸入視頻流,也即活體驗證設備獲得圖像數(shù)據(jù)。在輸入視頻流之前,首先需輸出動作指令,以使驗證對象(可以理解為用戶,或者待進行活體驗證的對象)根據(jù)該動作指令執(zhí)行相應動作;基于驗證對象執(zhí)行的相應動作采集圖像數(shù)據(jù)。
階段2:活體驗證設備進行人臉檢測并跟蹤,根據(jù)檢測到的人臉數(shù)據(jù)確定人臉所在的區(qū)域,以及跟蹤所述人臉所在的區(qū)域;在活體驗證設備的圖像輸出單元側可輸出一標識人臉所在區(qū)域的人臉框。本申請中只針對圖像數(shù)據(jù)中的首幀圖像進行人臉識別并檢測,其作用是獲得人臉所在的區(qū)域,也可以理解為獲得“人臉框”的位置;在后采用跟蹤算法對人臉所在區(qū)域進行跟蹤。其中,人臉跟蹤的具體實現(xiàn)過程可參照后續(xù)具體描述實施例中步驟101和步驟102對應的描述所示。
階段3:活體檢測,在檢測結果表明是活體后,進入階段4:將圖像數(shù)據(jù)發(fā)送至后臺進行進一步的人臉驗證;在檢測結果表明不是活體后,重新進入活體檢測階段。其中,活體檢測的具體實現(xiàn)過程可參照后續(xù)具體描述實施例中步驟103和步驟106對應的描述所示。
基于圖1,圖2為本發(fā)明實施例的活體驗證方法的細節(jié)流程示意圖,圖2中主要對活體檢測的實現(xiàn)方式進行細化,具體可參照圖2所示,對于階段3具體可分為紋理特征提取、參數(shù)計算以及動作判斷三個過程;其中,所述紋理特征具體可以包括表征臉部紋理特征的第一紋理特征,和/或,表征眼部紋理特征的第二紋理特征,所計算的參數(shù)可以理解為臉部呈現(xiàn)姿態(tài)的得分,和/或,眼部呈現(xiàn)姿態(tài)的得分;所判斷的動作具體可以理解為轉(zhuǎn)頭動作,和/或,眨眼動作,具體的實現(xiàn)方式可參照后續(xù)具體描述實施例中所述。也就是說,本發(fā)明實施例的技術方案從采集的圖像中判定圖像所包含的頭像(或者說人臉)是否能夠基于指定的動作而進行相應的動作,從而判定是否是活體人臉?;诖耍陔A段3中判定動作為轉(zhuǎn)頭動作和/或眨眼動作后,在階段4中,將所述轉(zhuǎn)頭動作和/或眨眼動作與初始的動作指令相對應的指定動作進行匹配,若匹配一致,則表明是活體,執(zhí)行階段4:將圖像數(shù)據(jù)發(fā)送至后臺進行人臉驗證;若人臉跟蹤失敗,或者動作判斷超時,或者所述轉(zhuǎn)頭動作和/或眨眼動作與初始的動作指令相對應的指定動作不匹配,則表明非活體。
本發(fā)明實施例提供了一種活體驗證方法。圖3為本發(fā)明實施例的活體驗證方法的流程示意圖;如圖3所示,本發(fā)明實施例的活體驗證方法包括:
步驟101:基于動作指令獲得圖像數(shù)據(jù),解析所述圖像數(shù)據(jù),識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域。
步驟102:基于所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域。
步驟103:抽取所述區(qū)域中的紋理特征;基于所述紋理特征計算表征姿態(tài)的參數(shù)。
步驟104:基于所述參數(shù)確定動作。
步驟105:當所述動作與所述動作指令對應的動作匹配時,確定活體驗證通過。
本發(fā)明實施例的活體驗證方法應用于活體驗證設備中。所述活體驗證設備具體可以是具有圖像采集單元的電子設備,以通過所述圖像采集單元獲得圖像數(shù)據(jù);所述電子設備具體可以是手機、平板電腦等移動設備,也可以是個人計算機、配置有門禁系統(tǒng)(所述門禁系統(tǒng)具體為對出入口通道進行管制的系統(tǒng))的門禁設備等等;其中,所述圖像采集單元具體可以是設置在電子設備上的攝像頭。另一方面,所述活體驗證設備還可以是具有音頻輸出單元的電子設備,以通過所述音頻輸出單元輸出動作指令。本發(fā)明實施例的技術方案是通過主動輸出動作指令,進一步采集包含有用戶頭像的圖像數(shù)據(jù),基于采集的圖像數(shù)據(jù)判定用戶是否執(zhí)行相應的動作從而判定活體驗證是否通過。
本實施例中,活體驗證設備(在本發(fā)明以下各實施例中,所述活體驗證設備簡稱為設備)在通過圖像采集單元獲得圖像數(shù)據(jù)后,解析所述圖像數(shù)據(jù);其中,所獲得的圖像數(shù)據(jù)包括多幀圖像。所述識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域,具體為:識別出所述圖像數(shù)據(jù)的第一幀圖像中表征人臉所在位置的區(qū)域,從而在所述第一幀圖像中表征人臉所在位置的區(qū)域的基礎上,基于所述多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域。
針對人臉所在區(qū)域的跟蹤方式,作為一種實施方式,所述基于所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域,包括:抽取所述多幀圖像中的第一幀圖像和第二幀圖像,識別所述第一幀圖像中表征人臉所在位置的第一區(qū)域,獲得所述第一區(qū)域?qū)牡谝蛔鴺朔秶?;獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍;計算所述初始坐標范圍對應的偏移參數(shù);基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;其中,所述偏移參數(shù)表征所述第二坐標范圍相對于所述第一坐標范圍的偏移程度。
本實施例中,為了減少人臉檢測負載,同時避免拼接視頻攻擊,本發(fā)明實施例采用人臉跟蹤方式替代人臉檢測。具體的,設備針對所述圖像數(shù)據(jù)的第一幀圖像進行人臉檢測,具體可采用人臉特征點檢測的方式識別出所述第一幀圖像中的人臉,進而確定所述第一幀圖像中表征人臉所在位置的第一區(qū)域;其中,所述第一區(qū)域可通過第一坐標范圍表示。在具體應用過程中,所述第一區(qū)域在設備的圖像顯示單元中通過顯示的人臉框標識,例如圖4a所示;所述人臉框標識對應的坐標范圍與所述第一坐標范圍相匹配。進一步地,在所述第一幀圖像中的所述第一區(qū)域的基礎上進行跟蹤。其中,所述第一幀圖像可以為針對一目標人物采集的圖像數(shù)據(jù)中的第一幀圖像;本實施例是以前兩幀圖像的處理過程為例進行說明,當然,在實際的圖像數(shù)據(jù)處理過程中,是針對多幀圖像數(shù)據(jù)進行處理,所述多幀圖像數(shù)據(jù)的處理過程可參照本實施例中所述的針對前兩幀圖像數(shù)據(jù)的處理過程。
本實施例中,所述獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍,包括:按預設步長在所述第一坐標范圍對應的第一區(qū)域內(nèi)選取第一組n個特征點,獲得所述第一組n個特征點中第一特征點的第一坐標;n為正整數(shù);其中,所述第一特征點為所述第一組n個特征點中的任一特征點;獲得所述第二幀圖像中的第二組n個特征點,所述第二組n個特征點中第二特征點的第二坐標與所述第一組n個特征點中相對應的第一特征點的第一坐標相同;基于所述第二組n個特征點中每個特征點的第二坐標確定初始坐標范圍。
具體的,對于所述第一幀圖像中的第一區(qū)域,按預設步長選取第一組n個特征點,獲得所述第一組n個特征點中每個特征點的坐標。例如,所述第一區(qū)域滿足m×n,其中,m小于等于所述第一幀圖像的長度/寬度;則n小于等于所述第一幀圖像的寬度/長度;則可按照步長為m×n/(10×10)在所述第一區(qū)域內(nèi)均勻選取100個特征點。其中,所述步長可不限于上述列舉的步長,所述步長可按照等間隔配置,所述步長也可按照不等間隔配置,具體可按照實際需求進行配置。進一步地,按照所述第一幀圖像中的第一組n個特征點中每個特征點的坐標,獲得第二幀圖像中的第二組n個特征點,使得所述第二組n個特征點中每個特征點的坐標與所述第一組n個特征點中相對應的特征點的坐標相同。例如,若按照相同的排列順序并標識,即所述第一組n個特征點和所述第二組n個特征點中的特征點均按照從上到下、從左到右的順序進行排序,則所述第二組n個特征點中的第一個特征點的坐標與所述第一組n個特征點中的第一個特征點的坐標相同,所述第二組n個特征點中的第二個特征點的坐標與所述第一組n個特征點中的第二個特征點的坐標相同,以此類推,則所述第二組n個特征點中任一特征點(即第二特征點)的坐標(即第二坐標)與所述第一組n個特征點中相對應的第一特征點的坐標(即第一坐標)相同。進一步地,基于所述第二組n個特征點中每個特征點的第二坐標確定一坐標范圍,將所述坐標范圍確定為所述初始坐標范圍。
本實施例中,所述計算所述初始坐標范圍對應的偏移參數(shù),包括:計算所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù);所述第一偏移參數(shù)表征坐標相同的所述第二特征點與所述第一特征點之間的差異程度;基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù);所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的偏移程度;以及,計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征所述匹配特征點與所述第一組n個特征點中、與所述匹配特征點相對應的第四特征點之間的偏移程度;根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù)。
其中,所述計算所述第二組n個特征點中每個特征點的第一偏移參數(shù)之前,所述方法還包括:針對所述第一幀圖像和所述第二幀圖像進行處理,分別獲得所述第一幀圖像的第一梯度圖像和所述第二幀圖像的第二梯度圖像。具體的,對于所述第一幀圖像和所述第二幀圖像,分別建立所述第一幀圖像的第一金字塔圖像,建立所述第二幀圖像的第二金字塔圖像;計算所述第一金字塔圖像的第一梯度圖像,以及計算所述第二金字塔圖像的第二梯度圖像;其中,建立圖像的金字塔圖像(例如建立所述第一幀圖像的第一金字塔圖像,又例如建立所述第二幀圖像的第二金字塔圖像等)可以理解為按比例地縮小圖像,以獲得更魯棒性的結果。在具體實施過程中,首先可對圖像進行平滑處理,再對平滑處理后的圖像進行抽樣,從而可獲得尺寸縮小的金字塔圖像。本實施例中,所述第一梯度圖像和所述第二梯度圖像中每個特征點梯度可表示為:
gx(y,x)=img(y,x+1)-img(y,x-1)(1)
gy(y,x)=img(y+1,x)-img(y-1,x)(2)
其中,gx(y,x)表示特征點(y,x)在x軸上的梯度;gy(y,x)表示特征點(y,x)在y軸上的梯度;img(y,x)表示特征點(y,x)的顯示參數(shù);相應的,img(y,x+1)表示特征點(y,x+1)的顯示參數(shù);img(y,x-1)表示特征點(y,x+1)的顯示參數(shù);img(y+1,x)表示特征點(y+1,x)的顯示參數(shù);img(y-1,x)表示特征點(y-1,x)的顯示參數(shù);作為一種實施方式,所述顯示參數(shù)具體可以是灰度值,當然,也可以是其他顯示參數(shù)。
進一步地,所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù)可基于表達式(1)和表達式(2)獲得的相應特征點的梯度計算獲得;其中,所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點指的是:所述第二組n個特征點中的特征點2相對于所述第一組n個特征點中的特征點1,特征點2在所述第二幀圖像中的坐標和特征點1在所述第一幀圖像中的坐標相同;也即所述第一偏移參數(shù)為特征點2相對于特征點1的相對偏移程度。具體的,對于所述第二組n個特征點中的每個特征點,分析每個特征點相對于所述第一組n個特征點中的相應特征點的鄰域特征獲得差異參數(shù)(diff)和梯度參數(shù)(grad),基于所述差異參數(shù)和所述梯度參數(shù)計算獲得第一偏移參數(shù);其中,所述差異參數(shù)表征所述第二組n個特征點中的特征點相對于第一組n個特征點中的相應特征點的差異程度。其中,所述差異參數(shù)和所述梯度參數(shù)具體可通過以下表達式表示:
diff=img1(y1,x1)-img2(y2,x2)(3)
gx=gx(y1,x1)+gx(y2,x2)(4)
gy=gy(y1,x1)+gy(y2,x2)(5)
其中,img1(y1,x1)表示第一組n個特征點中、特征點(y1,x1)的顯示參數(shù);img2(y2,x2)表示第二組n個特征點中、特征點(y2,x2)的顯示參數(shù);其中,所述顯示參數(shù)具體可以是灰度值,當然,也可以是其他顯示參數(shù)。gx表示在x軸方向上的梯度;gy表示在y軸方向上的梯度;gx(y1,x1)表示第一幀圖像中特征點(y1,x1)在x軸方向上的梯度;gx(y2,x2)表示第二幀圖像中與特征點(y1,x1)相對應的特征點(y2,x2)在x軸方向上的梯度,特征點(y1,x1)在第一幀圖像中的坐標與特征點(y2,x2)在第二針圖像中的坐標相同;相應的,gy(y1,x1)表示第一幀圖像中特征點(y1,x1)在y軸方向上的梯度;gy(y2,x2)表示第二幀圖像中與特征點(y1,x1)相對應的特征點(y2,x2)在y軸方向上的梯度。
進一步地,根據(jù)所述差異參數(shù)和所述梯度參數(shù)計算相應特征點的第一偏移參數(shù),所述第一偏移參數(shù)可通過以下表達式表示:
(dy,dx)=f(gxx,gxy,gyy,diff)(6)
其中,確定第一幀圖像中特征點1的梯度參數(shù),記為gx1和gy1;以及確定第二幀圖像中與特征點1相對應的特征點2的梯度參數(shù),記為gx2和gy2;則基于(gx1,gy1)和(gx2,gy2)進行矩陣運算以整合所述特征點1和所述特征點2的梯度;則表達式(6)中,gxx表示特征點1在x軸上的梯度和特征點2在x軸上的梯度的運算結果;gyy表示特征點1在y軸上的梯度和特征點2在y軸上的梯度的運算結果;gxy表示特征點1在x軸上的梯度和特征點2在y軸上的梯度的運算結果,或者表示特征點1在y軸上的梯度和特征點2在x軸上的梯度的運算結果。f()表示特定運算規(guī)則。
在具體實現(xiàn)過程中,基于表達式(6)內(nèi)部的多次迭代,可獲得所述第一幀圖像中的一特征點(y1,x1)在所述第二幀圖像上的匹配特征點(y0,x0),所述匹配特征點滿足以下表達式:
(y0,x0)=(y2+dy,x2+dx)(7)
但由于圖像中的人臉的位置處于變化中,因此,只有所述第一組n個特征點中的部分特征點才能夠在所述第二幀圖像中找到匹配特征點。
作為一種實施方式,所述基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,包括:基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定所述每個特征點對應的目標特征點,獲得所述目標特征點的第三坐標;確定所述第一幀圖像中與所述目標特征點相對應的初始特征點;所述初始特征點的第四坐標與所述目標特征點的第三坐標相同;獲得所述初始特征點相對于所述目標特征點之間的第四偏移參數(shù);當所述第四偏移參數(shù)達到預設閾值時,確定所述目標特征點為匹配特征點;當所述第四偏移參數(shù)未達到所述預設閾值時,確定所述目標特征點不是匹配特征點。
具體的,本實施方式中,在采用上述技術方案獲得第二幀圖像中、作為第一幀圖像中特征點(y1,x1)對應的匹配特征點(y0,x0)后,采用相同的技術方案獲得第一幀圖像中、作為第二幀圖像中特征點(y0,x0)對應的匹配特征點(y3,x3),獲得匹配特征點(y3,x3)與特征點(y1,x1)的偏移參數(shù),所述偏移參數(shù)即為所述第四偏移參數(shù);當所述第四偏移參數(shù)達到預設閾值時,表明雙向匹配特征點的偏差較小,匹配成功;相應的,當所述第四偏移參數(shù)未達到預設閾值時,表明雙向匹配特征點的偏差較大,匹配失敗。本實施方式中采用雙向匹配的方式獲得的匹配特征點,大大增強了匹配特征點的魯棒性。
本實施例中,設備基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù),所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的位移偏移程度;也可以理解為,所述第二偏移參數(shù)表征所述多個匹配點中每個匹配特征點相對于第一組n個特征點中、與匹配特征點相對應的特征點之間的位移偏移程度。例如,對于第一組n個特征點中,特征點(y1,x1),第二組n個特征點中與特征點(y1,x1)坐標相同的特征點(y2,x2),計算獲得的匹配特征點(y0,x0);則所述第二偏移參數(shù)表明匹配特征點(y0,x0)與特征點(y2,x2)之間的相對位移偏移程度,也可以理解為第二偏移參數(shù)表明匹配特征點(y0,x0)與特征點(y1,x1)之間的相對位移偏移程度。
本實施例中,作為一種實施方式,所述計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù),包括:分別從所述第二幀圖像所包含的多個匹配特征點中提取多組第一特征點對;所述第一特征點對包括第一匹配特征點和第二匹配特征點,以及從所述第一幀圖像中、與所述多個匹配特征點相對應的源特征點中提取多組第二特征點對,所述第二特征點對包括第一源特征點和第二源特征點;其中,所述第一匹配特征點和所述第二匹配特征點為所述多個匹配特征點中的任意兩個特征點;計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;獲得所述第一距離和所述第二距離之間的相對參數(shù);將所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù)。
具體的,設備分別針對所述第二幀圖像所包含的多個匹配特征點和所述第一幀圖像中、與匹配特征點相對應的源特征點進行兩兩提?。凰崛〕龅牡诙瑘D像中的兩個匹配特征點(即所述第一匹配特征點和所述第二匹配特征點)與第一幀圖像中的兩個源特征點(即所述第一源特征點和所述第二源特征點)分別一一對應。則分別計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;其中,所述第一距離和所述第二距離可以為歐式距離,當然,也可以是能夠表征相應兩個特征點之間的相對位置關系的其他距離。進一步地,獲得所述第一距離和所述第二距離之間的相對參數(shù);所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征人臉所在區(qū)域的縮放程度。作為一種實施方式,所述相對參數(shù)具體可以為所述第一距離和所述第二距離的比值;當然,所述相對參數(shù)也可通過表征所述第一距離和所述第二距離之間相對關系的其他處理方式獲得。
本實施例中,作為一種實施方式,所述根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù),包括:將多個第二偏移參數(shù)按第一預設處理規(guī)則進行處理,獲得特定偏移參數(shù);以及,將多個相對參數(shù)按第二預設處理規(guī)則進行處理,獲得特定相對參數(shù);將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù)。
本實施例中,對于所述第二幀圖像中的每個匹配特征點均能夠計算獲得對應的第二偏移參數(shù),理想情況下,所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)均相等,但由于各種因素(例如人臉位置的移動、數(shù)據(jù)處理過程中的偏差等等)會造成誤差,從而使得所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)可能均不相等。為了使處理結果更具有魯棒性,設備對所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)進行排序,選擇n個第二偏移參數(shù)的中值作為特定偏移參數(shù)??梢岳斫鉃?,所述特定偏移參數(shù)表征人臉框的偏移程度。另一方面,在理想情況下,所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)均相等,但由于各種因素(例如人臉位置的移動、數(shù)據(jù)處理過程中的偏差等等)會造成誤差,從而使得所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)可能均不相等。為了使處理結果更具有魯棒性,設備對所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)進行排序,選擇多個相對參數(shù)的中值作為特定相對參數(shù)??梢岳斫鉃椋鎏囟ㄏ鄬?shù)表征人臉框的縮放程度。
進一步地,本實施例中,設備將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù);從而基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;具體可參照圖4b所示,其中,實線框為采用本發(fā)明實施例的技術方案跟蹤人臉后的跟蹤結果;而虛線框為采用人臉檢測方案直接檢測獲得的結果;相比于人臉檢測特征點的技術方案,采用本發(fā)明實施例的活體人臉跟蹤方案能夠得到更準好的描述人臉的變化,具體可以是人臉位置的變化。作為一種實施方式,本發(fā)明實施例的人臉跟蹤方案可采用klt(kanadelucastomasi)跟蹤器實現(xiàn),當然不限于klt跟蹤器,其他快速跟蹤算法均可實現(xiàn)本發(fā)明實施例的活體人臉跟蹤;本實施例直接采用在表征人臉所在的區(qū)域均勻選取特征點,并跟蹤人臉框,大大提升了人臉跟蹤速度,也避免了特征點過少導致跟蹤失敗的問題。并且,雙向匹配的方式也大大提升了人臉跟蹤的魯棒性。
本發(fā)明實施例中,所述抽取所述區(qū)域中的紋理特征;基于所述紋理特征計算表征姿態(tài)的參數(shù);基于所述參數(shù)確定動作,包括:抽取所述區(qū)域中的第一紋理特征和/或第二紋理特征;基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),和/或,基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù);基于所述第一參數(shù)確定第一動作,和/或,基于所述第二參數(shù)確定第二動作。
針對第一紋理特征的獲取方式,作為一種實施方式,所述抽取所述區(qū)域中的第一紋理特征,包括:對所述區(qū)域中的特征點按照第三預設處理規(guī)則進行處理,獲得所述區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第一過程參數(shù);分析所述第一過程參數(shù)獲得表征人臉紋理邊緣的第一紋理特征;相應的,針對第二紋理特征的獲取方式,所述抽取所述區(qū)域中的第二紋理特征,包括:抽取所述區(qū)域中的第一部分區(qū)域;對所述第一部分區(qū)域中的特征點按照第四預設處理規(guī)則進行處理,獲得所述第一部分區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第二過程參數(shù);分析所述第二過程參數(shù)獲得表征眼部紋理邊緣的第二紋理特征。
本實施例中,設備針對不同的動作抽取不同的紋理特征,在本實施例中記為第一紋理特征和第二紋理特征。本實施例中主要針對兩種動作進行分類,考慮到轉(zhuǎn)頭動作和眨眼動作對于人臉的姿態(tài)變化較大,因此,本實施例中針對轉(zhuǎn)頭動作和眨眼動作進行分類??梢岳斫鉃?,所述第一紋理特征表征人臉紋理邊緣,所述第二紋理特征表征眼部紋理邊緣。
具體的,針對第一紋理特征,其處理過程包括:對所述第二幀圖像,提取出表征人臉所在位置的區(qū)域(所述區(qū)域可以為跟蹤后的第二區(qū)域),對所述區(qū)域按照第三預設處理規(guī)則進行處理。作為一種實施方式,所述對所述區(qū)域按照第三預設處理規(guī)則進行處理,包括:對所述區(qū)域進行縮小,例如縮小至(64,64)范圍,將縮小后的圖像按照二值化處理方式或三值化處理方式進行處理。以二值化處理方式為例,則設備可針對所述第二幀圖像中的第二區(qū)域進行局部二值模式(lbp,localbinarypatterns)處理;例如:首先提取所述第二幀圖像中與所述第二區(qū)域匹配的過程圖像,對所述過程圖像進行灰度處理,獲得所述過程圖像的灰度圖像,進一步確定所述灰度圖像中的每個特征點與相鄰的八個特征點之間的相對灰度關系,如圖4c所示,為三乘三的特征點矩陣的灰度圖像,每個特征點的灰度例如圖4c中所示;將每個特征點的灰度值進行數(shù)值化表示,具體可參照圖4d所示。進一步地,將相鄰八個特征點的灰度與中心特征點的灰度進行比較,若相鄰特征點的灰度大于中心特征點的灰度,則將所述相鄰特征點的值記為1;反之,若相鄰特征點的灰度小于等于中心特征點的灰度,則將所述相鄰特征點的值記為0,具體可參見圖4e所示。進一步地,將相鄰特征點的值串聯(lián)得到8位的二進制字符串,所述二進制字符串可以理解為分布在(0,255)的灰度值。在具體實施過程中,可參照圖4e所示,若以左上角第一個特征點作為起始特征點,按照順時針方向排列,則獲得的8位的字符串為10001111。由此可獲得所述過程圖像中每個特征點(即中心特征點)對應的二進制字符串。上述處理過程具體可通過以下表達式實現(xiàn):
lbp=[code0,code1,……,code7](8)
code(m,n)=img(y+m,x+n)>img(y,x)?1:0(9)
進一步地,為了去除冗余,統(tǒng)計每個特征點對應的二進制字符串中、0和1變化小于2的二進制字符串;例如,字符串為10001111中,第一位和第二位0和1變化1次,第四位和第五位0和1變化1次,總計變化兩次,不滿足“0和1變化小于2”的條件。又例如,字符串為00001111中,僅由第四位和第五位0和1變化1次,滿足“0和1變化小于2”的條件。然后,將統(tǒng)計后的二進制字符串映射到(0,58)范圍內(nèi),映射后的數(shù)據(jù)可作為lbp數(shù)據(jù);這樣也會大大減少數(shù)據(jù)處理量。
其中,表達式(8)中l(wèi)bp表示所述區(qū)域中的第一特征點的顯示參數(shù)與相鄰特征點的顯示參數(shù)的相對關系;所述第一特征點為所述區(qū)域中的任一特征點;code0,code1,……,code7分別表示所述第一特征點相鄰的特征點的顯示參數(shù);表達式(9)表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值,則將特征點(m,n)的二進制字符串code(m,n)記為1,否則記為0。
進一步地,將一定圖像區(qū)域內(nèi)分布在(0,58)的lbp數(shù)值進行統(tǒng)計直方圖處理。因為該直方圖有59個維度,所以統(tǒng)計之后可以得到一個59維的向量,作為所述區(qū)域的第一紋理特征。
針對第二紋理特征,由于眼部的區(qū)域較小,眨眼動作也較快,因此,在抽取第二紋理特征時,首先對區(qū)域進行眼部所在區(qū)域的抽取,即抽取所述區(qū)域中的第一部分區(qū)域,所述第一部分區(qū)域可以是所述區(qū)域的上半部區(qū)域,例如,抽取所述區(qū)域的上二分之一/三分之一的區(qū)域,作為所述第一部分區(qū)域。對抽取后的第一部分區(qū)域可參照前述第一紋理特征的處理方式進行處理,獲得第二紋理特征。作為另一種實施方式,設備可針對所述第一部分區(qū)域進行局部三值模式(ltp,localternarypattern)處理,處理過程與lbp處理方式近似,區(qū)別在于,在lbp處理過程中,在表示特征點與相鄰特征點的灰度值的相對關系時,通過0和1進行標記。在本實施方式的ltp處理過程中,在表示特征點與相鄰特征點的灰度值的相對關系時,通過0、1和-1進行標記,具體的處理過程可通過以下表達式實現(xiàn):
code(m,n)=img(y+m,x+n)>img(y,x)+fuzzy?1:0(10)
code(m,n)=img(y+m,x+n)<img(y,x)-fuzzy?-1:0(11)
fuzzy=ratio×img(y,x)(12)
其中,img(y,x)表示特征點(y,x)的灰度值;所述特征點(y,x)可以是三乘三的特征點矩陣中的中心特征點;img(y+m,x+n)表示特征點(y+m,x+n)的灰度值;特征點(y+m,x+n)具體為與特征點(y,x)相鄰的特征點;ratio表示比例參數(shù),可預先配置;fuzzy表示特征點(y,x)的灰度值與ratio的乘積;特征點(y,x)的灰度值越大,fuzzy的值也最大。表達式(10)的含義表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值與fuzzy之和進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值與fuzzy之和,則將特征點(m,n)的字符串code(m,n)記為1,否則記為0;表達式(11)的含義表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值與fuzzy之差進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值與fuzzy之差,則將特征點(m,n)的字符串code(m,n)記為-1,否則記為0。
本實施例中,所述基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),包括:將所述第一過程參數(shù)輸入預先配置的第一分類模型,獲得表征第一姿態(tài)的第一參數(shù)。
具體的,設備預先采集大量樣本數(shù)據(jù)(所述樣本數(shù)據(jù)具體可以是采用上述處理方式獲得的第一紋理特征)以及對應的姿態(tài)分類標識,對所述樣本數(shù)據(jù)以及對應的姿態(tài)分類標識進行機器學習訓練,獲得第一分類模型。在獲得所述第一紋理特征后,將所述第一紋理特征輸入所述第一分類模型,獲得所述第一紋理特征對應的第一姿態(tài),所述第一姿態(tài)例如表示正面或側面;所述第一姿態(tài)可通過第一參數(shù)表示。在實際應用中,可通過所述第一參數(shù)的數(shù)值大小表明所述第一姿態(tài)趨近于正面或側面,例如所述第一參數(shù)越大,表明所述第一姿態(tài)越趨近于正面;相應的,若所述第一參數(shù)越小,表明所述第一姿態(tài)越趨近于側面。
本實施例中,所述基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù),包括:將所述第二紋理特征輸入預先配置的第二分類模型,獲得表征第二姿態(tài)的第二參數(shù)。
具體的,設備預先采集大量樣本數(shù)據(jù)(所述樣本數(shù)據(jù)具體可以是采用上述處理方式獲得的第二紋理特征)以及對應的姿態(tài)分類標識,對所述樣本數(shù)據(jù)以及對應的姿態(tài)分類標識進行機器學習訓練,獲得第二分類模型。在獲得所述第二紋理特征后,將所述第二紋理特征輸入所述第二分類模型,獲得所述第二紋理特征對應的第二姿態(tài),所述第二姿態(tài)例如表示睜眼或閉眼,所述第二姿態(tài)可通過第二參數(shù)表示。在實際應用中,可通過所述第二參數(shù)的數(shù)值大小表明所述第二姿態(tài)趨近于睜眼或閉眼,例如所述第二參數(shù)越大,表明所述第二姿態(tài)越趨近于睜眼;相應的,若所述第二參數(shù)越小,表明所述第二姿態(tài)越趨近于閉眼。
本實施例中,所述基于所述第一參數(shù)確定第一動作,包括:基于所述多幀圖像分別對應的多個第一參數(shù),判斷所述多幀圖像中第一部分圖像對應的第一參數(shù)是否均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)是否均不滿足所述第一閾值范圍;當所述多幀圖像中第一部分圖像對應的第一參數(shù)均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)均不滿足所述第一閾值范圍時,確定所述第一參數(shù)對應于第一動作。
具體的,在前述獲得表征第一姿態(tài)的第一參數(shù)時,由于前述是針對兩幀圖像進行處理獲得的第一參數(shù),而在具體應用過程中,是針對獲得的圖像數(shù)據(jù)中所包含的多幀圖像進行處理獲得的第一參數(shù),可以理解為,對于每一幀圖像可獲得一個第一參數(shù),則針對多幀圖像可對應獲得多個第一參數(shù)。基于此,針對所述多個第一參數(shù)可獲得參數(shù)序列。分析所述參數(shù)序列,若數(shù)值變化由低到高,則可確定人臉由側面轉(zhuǎn)變?yōu)檎?;相應的,若?shù)值變化由高到低,則可確定人臉由正面轉(zhuǎn)變?yōu)閭让?,當然,相反的,若通過其他數(shù)據(jù)處理方式使得第一參數(shù)越大,表明人臉越趨近于正面,第一參數(shù)越小,表明人臉越趨近于側面,則在分析參數(shù)序列過程中,若數(shù)值變化由低到高,則可確定人臉由正面轉(zhuǎn)變?yōu)閭让?;相應的,若?shù)值變化由高到低,則可確定人臉由側面轉(zhuǎn)變?yōu)檎??;诖?,可通過所述參數(shù)序列中數(shù)值的變化從而確定對應的第一動作。
在具體的實施過程中,針對獲得的多幀圖像,選取當前幀之前的x幀圖像,將所述x幀圖像均勻切分為y段;其中,x和y均為正整數(shù),且y小于x;對于每段圖像,由于每段圖像中包括至少兩幀圖像,則每段圖像均可得到至少兩個第一參數(shù);在所述至少兩個第一參數(shù)中選取中間值作為所述每段圖像的第一參數(shù),從而可獲得y段圖像分別對應的y個第一參數(shù)。將y個第一參數(shù)串接獲得參數(shù)序列,判斷所述參數(shù)序列中的參數(shù)變化是否滿足預設規(guī)則,例如,若參數(shù)變化由高到低或者由低到高,則基于參數(shù)變化判定對應的第一動作。在另一種實施方式中,對于所述多幀圖像對應的多個第一參數(shù),判定所述多幀圖像中前一部分圖像包含的人臉處于正面,而后一部分圖像包含的人臉處于側面,或者判定所述多幀圖像中前一部分圖像包含的人臉處于側面,而后一部分圖像包含的人臉處于正面,則可判定第一參數(shù)對應的第一動作。例如,判斷x幀圖像中,所述x幀圖像的前三分之一圖像對應的第一參數(shù)均滿足第一閾值范圍,則表明包含有人臉正面圖像,以及所述x幀圖像的后三分之一圖像對應的第一參數(shù)均不滿足第一閾值范圍,則表明包含有人臉側面圖像,則可確定在所述x幀圖像中人臉由正面轉(zhuǎn)向為側面,即可確定轉(zhuǎn)頭動作。
本實施例中,所述基于所述第二參數(shù)確定第二動作,包括:基于所述多幀圖像分別對應的多個第二參數(shù),判斷所述多幀圖像中第三部分圖像對應的第二參數(shù)是否均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)是否均不滿足所述第二閾值范圍;當所述多幀圖像中第三部分圖像對應的第二參數(shù)均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)均不滿足所述第二閾值范圍時,確定所述第二參數(shù)對應于第二動作。
具體的,與第一動作的確定方式同理,在前述獲得表征第二姿態(tài)的第二參數(shù)時,由于前述是針對兩幀圖像進行處理獲得的第二參數(shù),而在具體應用過程中,是針對獲得的圖像數(shù)據(jù)中所包含的多幀圖像進行處理獲得的第二參數(shù),可以理解為,對于每一幀圖像可獲得一個第二參數(shù),則針對多幀圖像可對應獲得多個第二參數(shù)?;诖?,針對所述多個第二參數(shù)可獲得參數(shù)序列。分析所述參數(shù)序列,若數(shù)值變化由低到高,則可確定人眼由睜眼轉(zhuǎn)變?yōu)殚]眼;相應的,若數(shù)值變化由高到低,則可確定人眼由閉眼轉(zhuǎn)變?yōu)楸犙?,當然,相反的,若通過其他數(shù)據(jù)處理方式使得第二參數(shù)越大,表明人眼越趨近于睜眼,第二參數(shù)越小,表明人臉越趨近于閉眼,則在分析參數(shù)序列過程中,若數(shù)值變化由低到高,則可確定人眼由閉眼轉(zhuǎn)變?yōu)楸犙?;相應的,若?shù)值變化由高到低,則可確定人眼由睜眼轉(zhuǎn)變?yōu)殚]眼。其中,由于眨眼動作較快,所述參數(shù)序列可以是包含有兩個第二參數(shù),具備離散狀態(tài)的所述兩個第二參數(shù)能夠呈現(xiàn)由低到高或由高到低的特性?;诖?,可通過所述參數(shù)序列中數(shù)值的變化從而確定對應的第二動作。
在具體的實施過程中,針對獲得的多幀圖像,選取當前幀之前的x幀圖像,將所述x幀圖像均勻切分為y段;其中,x和y均為正整數(shù),且y小于x;對于每段圖像,由于每段圖像中包括至少兩幀圖像,則每段圖像均可得到至少兩個第二參數(shù);在所述至少兩個第二參數(shù)中選取中間值作為所述每段圖像的第二參數(shù),從而可獲得y段圖像分別對應的y個第二參數(shù)。將y個第二參數(shù)串接獲得參數(shù)序列,判斷所述參數(shù)序列中的參數(shù)變化是否滿足預設規(guī)則,例如,若參數(shù)變化由高到低或者由低到高,則基于參數(shù)變化判定對應的第二動作。在另一種實施方式中,對于所述多幀圖像對應的多個第二參數(shù),判定所述多幀圖像中前一部分圖像包含的人眼處于睜眼狀態(tài),而后一部分圖像包含的人眼處于閉眼狀態(tài),或者判定所述多幀圖像中前一部分圖像包含的人眼處于閉眼狀態(tài),而后一部分圖像包含的人眼處于睜眼狀態(tài),則可判定第二參數(shù)對應的第二動作。例如,判斷x幀圖像中,所述x幀圖像的前三分之一圖像對應的第二參數(shù)均滿足第二閾值范圍,則表明圖像包含的人眼處于睜眼狀態(tài),以及所述x幀圖像的后三分之一圖像對應的第二參數(shù)均不滿足第二閾值范圍,則表明圖像包含的人眼處于閉眼狀態(tài),則可確定在所述x幀圖像中的眨眼動作。
本實施例中,由于人眼的閉眼和睜眼動作過于迅速,則預先配置的第二閾值范圍不同于所述第一閾值范圍。
本實施例中,設備針對區(qū)域中紋理特征(包括第一紋理特征和第二紋理特征)的提取,所述紋理特征不限于是lbp/ltp特征,也可以是能夠描述圖像變化的其他紋理特征,例如方向梯度直方圖(hog,histogramoforientedgradient)特征。設備中針對樣本特征進行機器學習訓練的過程,可通過支持向量機(svm,supportvectormachine)學習模型進行訓練分類,當然,不限于是svm訓練分類方式,其他神經(jīng)網(wǎng)絡、線性投影等分類方式也可以實現(xiàn)。
本實施例所述的活體驗證方法不限于應用在移動終端,還可以應用于任何場合的活體人臉驗證,包括但不限于個人計算機(pc)、服務器或嵌入式設備等等。由于本發(fā)明實施例的技術方案實現(xiàn)通過區(qū)域追蹤的方式替代人臉識別檢測,在眨眼判斷中也無需對眼睛進行定位;另外方案中僅有在根據(jù)紋理特征計算姿態(tài)對應參數(shù)時需要預先配置的計算模型(例如svm模型),且該計算模型容量極小(模型文件可降低至160k),在具體實現(xiàn)過程中,可將svm參數(shù)直接寫在代碼中,甚至可以理解為不需要計算模型,因此,本發(fā)明實施例提供的活體驗證方案所承載的算法文件較小,大大滿足了移動終端的存儲空間需求;且數(shù)據(jù)處理量大大降低,也滿足了移動終端的處理能力的需求。
本實施例中,通過上述方式獲得第一動作和/或第二動作后,判斷所述第一動作和/或第二動作是否與輸出的所述動作指令對應的動作匹配;若匹配一致,表明所述圖像數(shù)據(jù)中的人臉為活體人臉而不是預先拍攝好的圖片或者視頻對應的人臉。而現(xiàn)有技術中,冒充活體人臉以通過活體驗證的方式(該方式可稱為攻擊)主要包括:1、正常照片;2、包含有某類動作的照片;3、包含有某類動作的視頻;4、根據(jù)動作序列拼接的視頻。這使得研發(fā)人員提出不同的算法優(yōu)化動作判斷性能來應對不同的攻擊?,F(xiàn)有的活體人臉驗證技術均基于精確的人臉特征點定位,在移動終端側,快速準確的特征點定位所需要的計算模型文件過大,處理速度也不夠快。以主流的定位算法為例,顯示形狀回歸(esr)算法處理時間可以達到10毫秒,但計算模型文件可達到幾十兆,而主動外觀模型(aam)算法的模型文件雖然只有幾百k,但每幀數(shù)據(jù)的處理時間難以做到實時處理。而本發(fā)明實施例的技術方案通過區(qū)域追蹤的方式替代人臉識別檢測,在眨眼判斷中也無需對眼睛進行定位;另外方案中僅有在根據(jù)紋理特征計算姿態(tài)對應參數(shù)時需要預先配置的計算模型(例如svm模型),且該計算模型容量極小(模型文件可降低至160k),在具體實現(xiàn)過程中,可將svm參數(shù)直接寫在代碼中,甚至可以理解為不需要計算模型,因此,本發(fā)明實施例提供的活體驗證方案所承載的算法文件較小,大大滿足了移動終端的存儲空間需求;且數(shù)據(jù)處理量大大降低,也滿足了移動終端的處理能力的需求。
為了驗證本發(fā)明實施例提供的活體驗證方案的有效程度,分別對不同動作,及串聯(lián)動作進行了攻擊和真人體驗的測試,具體可如表1所示。如表1所示,在攻擊者企圖用手機照片、打印照片或者視頻通過身份驗證系統(tǒng)的驗證時,上述三種攻擊的整體通過率均為零;其中,對于上述三種攻擊方式中的眨眼動作以及轉(zhuǎn)頭動作的通過次數(shù)均為零,從而可以表明采用本發(fā)明實施例的活體驗證方案能夠有效的識別出手機照片、打印照片或者視頻等虛假身份的攻擊,大大提升了身份驗證的準確率。
表1
表2為本發(fā)明實施例在不同的檢測條件下的實際檢測情況示意。如表2所示,檢測條件可包括光線條件以及檢測對象是否佩戴眼鏡,以及佩戴的眼鏡是否帶有鏡框等各種條件。其中,光線條件可包括正常光線條件、強光線條件和暗光線條件等等;其中,可通過檢測到的光強參數(shù)判定光線條件是屬于正常光線、強光線或是暗光線;可預先配置第一閾值和第二閾值,所述第一閾值大于第二閾值;當檢測到的光強參數(shù)大于所述第一閾值時,判定光線條件為強光線條件;當檢測到的光強參數(shù)小于所述第二閾值時,判定光線條件為暗光線條件;當檢測到的光強參數(shù)在所述第一閾值和所述第二閾值之間時,判定光線條件為正常光線。另一方面,檢測對象是否佩戴眼鏡以及眼鏡是否帶有鏡框會影響眼部紋理特征的提取以及眨眼動作的判定。由表2中可以看出,以第一類型正常光線眼鏡為例,23/25表明25次測試中通過23次,表明在活體真人的驗證中,即使用戶佩戴眼鏡,對其活體真人的活體驗證的通過率也較高,不會出現(xiàn)多次驗證不通過的情況,對用戶的體驗不會造成不利的影響;其中,檢測平均需要1次,每次檢測平均需要時間為1秒(s),眨眼動作的檢測平均需要2次,每次檢測的平均需要時間為2s;轉(zhuǎn)頭動作的檢測平均需要2次,每次檢測的平均需要時間為2s。
表2
本發(fā)明實施例還提供了一種活體驗證設備。圖5為本發(fā)明實施例的活體驗證設備的組成結構示意圖;如圖5所示,所述設備包括:檢測單元31、跟蹤單元32、特征抽取單元33、計算單元34、動作判定單元35和驗證單元36;其中,
所述檢測單元31,用于基于動作指令獲得圖像數(shù)據(jù),解析所述圖像數(shù)據(jù),識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域;
所述跟蹤單元32,用于基于所述檢測單元31識別出的所述圖像數(shù)據(jù)所包含的多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域;
所述特征抽取單元33,用于抽取所述跟蹤單元32跟蹤的所述區(qū)域中的紋理特征;
所述計算單元34,用于基于所述特征抽取單元33抽取的所述紋理特征計算表征姿態(tài)的參數(shù);
所述動作判定單元35,用于基于所述計算單元34獲得的所述參數(shù)確定動作;
所述驗證單元36,用于當所述動作與所述動作指令對應的動作匹配時,確定活體驗證通過。
所述跟蹤單元32,用于抽取所述多幀圖像中的第一幀圖像和第二幀圖像,識別所述第一幀圖像中表征人臉所在位置的第一區(qū)域,獲得所述第一區(qū)域?qū)牡谝蛔鴺朔秶?;獲得所述第二幀圖像中與所述第一坐標范圍對應的初始坐標范圍;計算所述初始坐標范圍對應的偏移參數(shù);基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;其中,所述偏移參數(shù)表征所述第二坐標范圍相對于所述第一坐標范圍的偏移程度。
本發(fā)明實施例中,所述檢測單元31中還包括圖像采集單元,通過所述圖像采集單元獲得圖像數(shù)據(jù);所獲得的圖像數(shù)據(jù)包括多幀圖像。所述檢測單元31識別出所述圖像數(shù)據(jù)中表征人臉所在位置的區(qū)域,具體為:識別出所述圖像數(shù)據(jù)的第一幀圖像中表征人臉所在位置的區(qū)域,從而在所述第一幀圖像中表征人臉所在位置的區(qū)域的基礎上,所述跟蹤單元32基于所述多幀圖像中人臉所在位置的變化,跟蹤所述區(qū)域。
針對人臉所在區(qū)域的跟蹤方式,作為一種實施方式,所述跟蹤單元32,用于按預設步長在所述第一坐標范圍對應的第一區(qū)域內(nèi)選取第一組n個特征點,獲得所述第一組n個特征點中第一特征點的第一坐標;n為正整數(shù);其中,所述第一特征點為所述第一組n個特征點中的任一特征點;獲得所述第二幀圖像中的第二組n個特征點,所述第二組n個特征點中第二特征點的第二坐標與所述第一組n個特征點中相對應的第一特征點的第一坐標相同;基于所述第二組n個特征點中每個特征點的第二坐標確定初始坐標范圍。
本實施例中,為了減少人臉檢測負載,同時避免拼接視頻攻擊,本發(fā)明實施例采用人臉跟蹤方式替代人臉檢測。具體的,所述檢測單元31針對所述圖像數(shù)據(jù)的第一幀圖像進行人臉檢測,具體可采用人臉特征點檢測的方式識別出所述第一幀圖像中的人臉,進而確定所述第一幀圖像中表征人臉所在位置的第一區(qū)域;其中,所述第一區(qū)域可通過第一坐標范圍表示。在具體應用過程中,所述第一區(qū)域在設備的圖像顯示單元中通過顯示的人臉框標識,例如圖4a所示;所述人臉框標識對應的坐標范圍與所述第一坐標范圍相匹配。進一步地,所述跟蹤單元32在所述第一幀圖像中的所述第一區(qū)域的基礎上進行跟蹤。其中,所述第一幀圖像可以為針對一目標人物采集的圖像數(shù)據(jù)中的第一幀圖像;本實施例是以前兩幀圖像的處理過程為例進行說明,當然,在實際的圖像數(shù)據(jù)處理過程中,是針對多幀圖像數(shù)據(jù)進行處理,所述多幀圖像數(shù)據(jù)的處理過程可參照本實施例中所述的針對前兩幀圖像數(shù)據(jù)的處理過程。
本實施例中,所述跟蹤單元32,用于按預設步長在所述第一坐標范圍對應的第一區(qū)域內(nèi)選取第一組n個特征點,獲得所述第一組n個特征點中第一特征點的第一坐標;n為正整數(shù);其中,所述第一特征點為所述第一組n個特征點中的任一特征點;獲得所述第二幀圖像中的第二組n個特征點,所述第二組n個特征點中第二特征點的第二坐標與所述第一組n個特征點中相對應的第一特征點的第一坐標相同;基于所述第二組n個特征點中每個特征點的第二坐標確定初始坐標范圍。
具體的,對于所述第一幀圖像中的第一區(qū)域,所述跟蹤單元32按預設步長選取第一組n個特征點,獲得所述第一組n個特征點中每個特征點的坐標。例如,所述第一區(qū)域滿足m×n,其中,m小于等于所述第一幀圖像的長度/寬度;則n小于等于所述第一幀圖像的寬度/長度;則可按照步長為m×n/(10×10)在所述第一區(qū)域內(nèi)均勻選取100個特征點。其中,所述步長可不限于上述列舉的步長,所述步長可按照等間隔配置,所述步長也可按照不等間隔配置,具體可按照實際需求進行配置。進一步地,所述跟蹤單元32按照所述第一幀圖像中的第一組n個特征點中每個特征點的坐標,獲得第二幀圖像中的第二組n個特征點,使得所述第二組n個特征點中每個特征點的坐標與所述第一組n個特征點中相對應的特征點的坐標相同。例如,若按照相同的排列順序并標識,即所述第一組n個特征點和所述第二組n個特征點中的特征點均按照從上到下、從左到右的順序進行排序,則所述第二組n個特征點中的第一個特征點的坐標與所述第一組n個特征點中的第一個特征點的坐標相同,所述第二組n個特征點中的第二個特征點的坐標與所述第一組n個特征點中的第二個特征點的坐標相同,以此類推,則所述第二組n個特征點中任一特征點(即第二特征點)的坐標(即第二坐標)與所述第一組n個特征點中相對應的第一特征點的坐標(即第一坐標)相同。進一步地,基于所述第二組n個特征點中每個特征點的第二坐標確定一坐標范圍,將所述坐標范圍確定為所述初始坐標范圍。
本實施例中,所述跟蹤單元32,用于計算所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù);所述第一偏移參數(shù)表征坐標相同的所述第二特征點與所述第一特征點之間的差異程度;基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù);所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的偏移程度;以及,計算所述多個匹配特征點中每個匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征所述匹配特征點與所述第一組n個特征點中、與所述匹配特征點相對應的第四特征點之間的偏移程度;根據(jù)所述第二偏移參數(shù)和所述第三偏移參數(shù)確定所述初始坐標范圍對應的偏移參數(shù)。
其中,所述跟蹤單元32,用于在計算所述第二組n個特征點中每個特征點的第一偏移參數(shù)之前,針對所述第一幀圖像和所述第二幀圖像進行處理,分別獲得所述第一幀圖像的第一梯度圖像和所述第二幀圖像的第二梯度圖像。具體的,對于所述第一幀圖像和所述第二幀圖像,分別建立所述第一幀圖像的第一金字塔圖像,建立所述第二幀圖像的第二金字塔圖像;計算所述第一金字塔圖像的第一梯度圖像,以及計算所述第二金字塔圖像的第二梯度圖像;其中,建立圖像的金字塔圖像(例如建立所述第一幀圖像的第一金字塔圖像,又例如建立所述第二幀圖像的第二金字塔圖像等)可以理解為按比例地縮小圖像,以獲得更魯棒性的結果。在具體實施過程中,首先可對圖像進行平滑處理,再對平滑處理后的圖像進行抽樣,從而可獲得尺寸縮小的金字塔圖像。本實施例中,所述第一梯度圖像和所述第二梯度圖像中每個特征點梯度可表示為:
gx(y,x)=img(y,x+1)-img(y,x-1)(1)
gy(y,x)=img(y+1,x)-img(y-1,x)(2)
其中,gx(y,x)表示特征點(y,x)在x軸上的梯度;gy(y,x)表示特征點(y,x)在y軸上的梯度;img(y,x)表示特征點(y,x)的顯示參數(shù);相應的,img(y,x+1)表示特征點(y,x+1)的顯示參數(shù);img(y,x-1)表示特征點(y,x+1)的顯示參數(shù);img(y+1,x)表示特征點(y+1,x)的顯示參數(shù);img(y-1,x)表示特征點(y-1,x)的顯示參數(shù);作為一種實施方式,所述顯示參數(shù)具體可以是灰度值,當然,也可以是其他顯示參數(shù)。
進一步地,所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點的第一偏移參數(shù)可基于表達式(1)和表達式(2)獲得的相應特征點的梯度計算獲得;其中,所述第二組n個特征點中每個特征點相對于所述第一組n個特征點中的相應特征點指的是:所述第二組n個特征點中的特征點2相對于所述第一組n個特征點中的特征點1,特征點2在所述第二幀圖像中的坐標和特征點1在所述第一幀圖像中的坐標相同;也即所述第一偏移參數(shù)為特征點2相對于特征點1的相對偏移程度。具體的,對于所述第二組n個特征點中的每個特征點,分析每個特征點相對于所述第一組n個特征點中的相應特征點的鄰域特征獲得差異參數(shù)(diff)和梯度參數(shù)(grad),基于所述差異參數(shù)和所述梯度參數(shù)計算獲得第一偏移參數(shù);其中,所述差異參數(shù)表征所述第二組n個特征點中的特征點相對于第一組n個特征點中的相應特征點的差異程度。其中,所述差異參數(shù)和所述梯度參數(shù)具體可通過以下表達式表示:
diff=img1(y1,x1)-img2(y2,x2)(3)
gx=gx(y1,x1)+gx(y2,x2)(4)
gy=gy(y1,x1)+gy(y2,x2)(5)
其中,img1(y1,x1)表示第一組n個特征點中、特征點(y1,x1)的顯示參數(shù);img2(y2,x2)表示第二組n個特征點中、特征點(y2,x2)的顯示參數(shù);其中,所述顯示參數(shù)具體可以是灰度值,當然,也可以是其他顯示參數(shù)。gx表示在x軸方向上的梯度;gy表示在y軸方向上的梯度;gx(y1,x1)表示第一幀圖像中特征點(y1,x1)在x軸方向上的梯度;gx(y2,x2)表示第二幀圖像中與特征點(y1,x1)相對應的特征點(y2,x2)在x軸方向上的梯度,特征點(y1,x1)在第一幀圖像中的坐標與特征點(y2,x2)在第二針圖像中的坐標相同;相應的,gy(y1,x1)表示第一幀圖像中特征點(y1,x1)在y軸方向上的梯度;gy(y2,x2)表示第二幀圖像中與特征點(y1,x1)相對應的特征點(y2,x2)在y軸方向上的梯度。
進一步地,根據(jù)所述差異參數(shù)和所述梯度參數(shù)計算相應特征點的第一偏移參數(shù),所述第一偏移參數(shù)可通過以下表達式表示:
(dy,dx)=f(gxx,gxy,gyy,diff)(6)
其中,確定第一幀圖像中特征點1的梯度參數(shù),記為gx1和gy1;以及確定第二幀圖像中與特征點1相對應的特征點2的梯度參數(shù),記為gx2和gy2;則基于(gx1,gy1)和(gx2,gy2)進行矩陣運算以整合所述特征點1和所述特征點2的梯度;則表達式(6)中,gxx表示特征點1在x軸上的梯度和特征點2在x軸上的梯度的運算結果;gyy表示特征點1在y軸上的梯度和特征點2在y軸上的梯度的運算結果;gxy表示特征點1在x軸上的梯度和特征點2在y軸上的梯度的運算結果,或者表示特征點1在y軸上的梯度和特征點2在x軸上的梯度的運算結果。f()表示特定運算規(guī)則。
在具體實現(xiàn)過程中,基于表達式(6)內(nèi)部的多次迭代,可獲得所述第一幀圖像中的一特征點(y1,x1)在所述第二幀圖像上的匹配特征點(y0,x0),所述匹配特征點滿足以下表達式:
(y0,x0)=(y2+dy,x2+dx)(7)
但由于圖像中的人臉的位置處于變化中,因此,只有所述第一組n個特征點中的部分特征點才能夠在所述第二幀圖像中找到匹配特征點。
作為一種實施方式,所述跟蹤單元32,用于基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定所述每個特征點對應的目標特征點,獲得所述目標特征點的第三坐標;確定所述第一幀圖像中與所述目標特征點相對應的初始特征點;所述初始特征點的第四坐標與所述目標特征點的第三坐標相同;獲得所述初始特征點相對于所述目標特征點之間的第四偏移參數(shù);當所述第四偏移參數(shù)未達到預設閾值時,確定所述目標特征點為匹配特征點;當所述第四偏移參數(shù)達到所述預設閾值時,確定所述目標特征點不是匹配特征點。
具體的,本實施方式中,所述跟蹤單元32在采用上述技術方案獲得第二幀圖像中、作為第一幀圖像中特征點(y1,x1)對應的匹配特征點(y0,x0)后,采用相同的技術方案獲得第一幀圖像中、作為第二幀圖像中特征點(y0,x0)對應的匹配特征點(y3,x3),獲得匹配特征點(y3,x3)與特征點(y1,x1)的偏移參數(shù),所述偏移參數(shù)即為所述第四偏移參數(shù);當所述第四偏移參數(shù)達到預設閾值時,表明雙向匹配特征點的偏差較小,匹配成功;相應的,當所述第四偏移參數(shù)未達到預設閾值時,表明雙向匹配特征點的偏差較大,匹配失敗。本實施方式中采用雙向匹配的方式獲得的匹配特征點,大大增強了匹配特征點的魯棒性。
本實施例中,所述跟蹤單元32基于所述第二組n個特征點中每個特征點對應的第一偏移參數(shù)確定多個匹配特征點,計算所述多個匹配特征點中每個匹配特征點的第二偏移參數(shù),所述第二偏移參數(shù)表征所述匹配特征點與所述第二組n個特征點中、與所述匹配特征點相對應的第三特征點之間的位移偏移程度;也可以理解為,所述第二偏移參數(shù)表征所述多個匹配點中每個匹配特征點相對于第一組n個特征點中、與匹配特征點相對應的特征點之間的位移偏移程度。例如,對于第一組n個特征點中,特征點(y1,x1),第二組n個特征點中與特征點(y1,x1)坐標相同的特征點(y2,x2),計算獲得的匹配特征點(y0,x0);則所述第二偏移參數(shù)表明匹配特征點(y0,x0)與特征點(y2,x2)之間的相對位移偏移程度,也可以理解為第二偏移參數(shù)表明匹配特征點(y0,x0)與特征點(y1,x1)之間的相對位移偏移程度。
本實施例中,作為一種實施方式,所述跟蹤單元32,用于分別從所述第二幀圖像所包含的多個匹配特征點中提取多組第一特征點對;所述第一特征點對包括第一匹配特征點和第二匹配特征點,以及從所述第一幀圖像中、與所述多個匹配特征點相對應的源特征點中提取多組第二特征點對,所述第二特征點對包括第一源特征點和第二源特征點;其中,所述第一匹配特征點和所述第二匹配特征點為所述多個匹配特征點中的任意兩個特征點;計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;獲得所述第一距離和所述第二距離之間的相對參數(shù);將所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù)。
具體的,所述跟蹤單元32分別針對所述第二幀圖像所包含的多個匹配特征點和所述第一幀圖像中、與匹配特征點相對應的源特征點進行兩兩提??;所提取出的第二幀圖像中的兩個匹配特征點(即所述第一匹配特征點和所述第二匹配特征點)與第一幀圖像中的兩個源特征點(即所述第一源特征點和所述第二源特征點)分別一一對應。則分別計算所述第一匹配特征點和所述第二匹配特征點之間的第一距離,以及計算所述第一源特征點和所述第二源特征點之間的第二距離;其中,所述第一距離和所述第二距離可以為歐式距離,當然,也可以是能夠表征相應兩個特征點之間的相對位置關系的其他距離。進一步地,獲得所述第一距離和所述第二距離之間的相對參數(shù);所述相對參數(shù)記為所述第一匹配特征點和所述第二匹配特征點的第三偏移參數(shù);所述第三偏移參數(shù)表征人臉所在區(qū)域的縮放程度。作為一種實施方式,所述相對參數(shù)具體可以為所述第一距離和所述第二距離的比值;當然,所述相對參數(shù)也可通過表征所述第一距離和所述第二距離之間相對關系的其他處理方式獲得。
本實施例中,作為一種實施方式,所述跟蹤單元32,用于將多個第二偏移參數(shù)按第一預設處理規(guī)則進行處理,獲得特定偏移參數(shù);以及,將多個相對參數(shù)按第二預設處理規(guī)則進行處理,獲得特定相對參數(shù);將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù)。
具體的,對于所述第二幀圖像中的每個匹配特征點均能夠計算獲得對應的第二偏移參數(shù),理想情況下,所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)均相等,但由于各種因素(例如人臉位置的移動、數(shù)據(jù)處理過程中的偏差等等)會造成誤差,從而使得所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)可能均不相等。為了使處理結果更具有魯棒性,所述跟蹤單元32對所述第二幀圖像中的獲得的所有匹配特征點對應的第二偏移參數(shù)進行排序,選擇n個第二偏移參數(shù)的中值作為特定偏移參數(shù)??梢岳斫鉃椋鎏囟ㄆ茀?shù)表征人臉框的偏移程度。另一方面,在理想情況下,所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)均相等,但由于各種因素(例如人臉位置的移動、數(shù)據(jù)處理過程中的偏差等等)會造成誤差,從而使得所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)可能均不相等。為了使處理結果更具有魯棒性,所述跟蹤單元32對所述第二幀圖像中的任意兩個匹配特征點對應的相對參數(shù)進行排序,選擇多個相對參數(shù)的中值作為特定相對參數(shù)。可以理解為,所述特定相對參數(shù)表征人臉框的縮放程度。
進一步地,本實施例中,所述跟蹤單元32將所述特定偏移程度和所述特定相對參數(shù)作為所述初始坐標范圍對應的偏移參數(shù);從而基于所述初始坐標范圍以及對應的偏移參數(shù)獲得第二坐標范圍,記錄所述第二坐標范圍為跟蹤后的表征人臉所在位置的區(qū)域;具體可參照圖4b所示,其中,實線框為采用本發(fā)明實施例的技術方案跟蹤人臉后的跟蹤結果;而虛線框為采用人臉檢測方案直接檢測獲得的結果;相比于人臉檢測特征點的技術方案,采用本發(fā)明實施例的活體人臉跟蹤方案能夠得到更準好的描述人臉的變化,具體可以是人臉位置的變化。作為一種實施方式,本發(fā)明實施例的人臉跟蹤方案可采用klt跟蹤器實現(xiàn),當然不限于klt跟蹤器,其他快速跟蹤算法均可實現(xiàn)本發(fā)明實施例的活體人臉跟蹤;本實施例直接采用在表征人臉所在的區(qū)域均勻選取特征點,并跟蹤人臉框,大大提升了人臉跟蹤速度,也避免了特征點過少導致跟蹤失敗的問題。并且,雙向匹配的方式也大大提升了人臉跟蹤的魯棒性。
本實施例中,所述特征抽取單元33,用于抽取所述區(qū)域中的第一紋理特征和/或第二紋理特征;
所述計算單元34,用于基于所述第一紋理特征計算表征第一姿態(tài)的第一參數(shù),和/或,基于所述第二紋理特征計算表征第二姿態(tài)的第二參數(shù);
所述動作判定單元35,用于基于所述第一參數(shù)確定第一動作,和/或,基于所述第二參數(shù)確定第二動作。
作為一種實施方式,所述特征抽取單元33,用于對所述區(qū)域中的特征點按照第三預設處理規(guī)則進行處理,獲得所述區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第一過程參數(shù);分析所述第一過程參數(shù)獲得表征人臉紋理邊緣的第一紋理特征;還用于抽取所述區(qū)域中的第一部分區(qū)域;對所述第一部分區(qū)域中的特征點按照第四預設處理規(guī)則進行處理,獲得所述第一部分區(qū)域中表征每個特征點與所述特征點相鄰的特征點的差異程度的第二過程參數(shù);分析所述第二過程參數(shù)獲得表征眼部紋理邊緣的第二紋理特征。
本實施例中,所述特征抽取單元33針對不同的動作抽取不同的紋理特征,在本實施例中記為第一紋理特征和第二紋理特征。本實施例中主要針對兩種動作進行分類,考慮到轉(zhuǎn)頭動作和眨眼動作對于人臉的姿態(tài)變化較大,因此,本實施例中針對轉(zhuǎn)頭動作和眨眼動作進行分類??梢岳斫鉃?,所述第一紋理特征表征人臉紋理邊緣,所述第二紋理特征表征眼部紋理邊緣。
具體的,所述特征抽取單元33針對第一紋理特征,其處理過程包括:對所述第二幀圖像,提取出表征人臉所在位置的區(qū)域(所述區(qū)域可以為跟蹤后的第二區(qū)域),對所述區(qū)域按照第三預設處理規(guī)則進行處理。作為一種實施方式,所述對所述區(qū)域按照第三預設處理規(guī)則進行處理,包括:對所述區(qū)域進行縮小,例如縮小至(64,64)范圍,將縮小后的圖像按照二值化處理方式或三值化處理方式進行處理。以二值化處理方式為例,則設備可針對所述第二幀圖像中的第二區(qū)域進行l(wèi)bp處理;例如:首先提取所述第二幀圖像中與所述第二區(qū)域匹配的過程圖像,對所述過程圖像進行灰度處理,獲得所述過程圖像的灰度圖像,進一步確定所述灰度圖像中的每個特征點與相鄰的八個特征點之間的相對灰度關系,如圖4c所示,為三乘三的特征點矩陣的灰度圖像,每個特征點的灰度例如圖4c中所示;將每個特征點的灰度值進行數(shù)值化表示,具體可參照圖4d所示。進一步地,將相鄰八個特征點的灰度與中心特征點的灰度進行比較,若相鄰特征點的灰度大于等于中心特征點的灰度,則將所述相鄰特征點的值記為1;反之,若相鄰特征點的灰度小于中心特征點的灰度,則將所述相鄰特征點的值記為0,具體可參見圖4e所示。進一步地,將相鄰特征點的值串聯(lián)得到8位的二進制字符串,所述二進制字符串可以理解為分布在(0,255)的灰度值。在具體實施過程中,可參照圖4e所示,若以左上角第一個特征點作為起始特征點,按照順時針方向排列,則獲得的8位的字符串為10001111。由此可獲得所述過程圖像中每個特征點(即中心特征點)對應的二進制字符串。
進一步地,為了去除冗余,統(tǒng)計每個特征點對應的二進制字符串中、0和1變化小于2的二進制字符串;例如,字符串為10001111中,第一位和第二位0和1變化1次,第四位和第五位0和1變化1次,總計變化兩次,不滿足“0和1變化小于2”的條件。又例如,字符串為00001111中,僅由第四位和第五位0和1變化1次,滿足“0和1變化小于2”的條件。然后,將統(tǒng)計后的二進制字符串映射到(0,58)范圍內(nèi),映射后的數(shù)據(jù)可作為lbp數(shù)據(jù);這樣也會大大減少數(shù)據(jù)處理量。上述處理過程具體可通過以下表達式實現(xiàn):
lbp=[code0,code1,……,code7](8)
code(m,n)=img(y+m,x+n)>img(y,x)?1:0(9)
其中,表達式(8)中l(wèi)bp表示所述區(qū)域中的第一特征點的顯示參數(shù)與相鄰特征點的顯示參數(shù)的相對關系;所述第一特征點為所述區(qū)域中的任一特征點;code0,code1,……,code7分別表示所述第一特征點相鄰的特征點的顯示參數(shù);表達式(9)表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值,則將特征點(m,n)的二進制字符串code(m,n)記為1,否則記為0。
進一步地,將一定圖像區(qū)域內(nèi)分布在(0,58)的lbp數(shù)值進行統(tǒng)計直方圖處理。因為該直方圖有59個維度,所以統(tǒng)計之后可以得到一個59維的向量,作為所述區(qū)域的第一紋理特征。
針對第二紋理特征,由于眼部的區(qū)域較小,眨眼動作也較快,因此,在抽取第二紋理特征時,首先對區(qū)域進行眼部所在區(qū)域的抽取,即抽取所述區(qū)域中的第一部分區(qū)域,所述第一部分區(qū)域可以是所述區(qū)域的上半部區(qū)域,例如,抽取所述區(qū)域的上二分之一/三分之一的區(qū)域,作為所述第一部分區(qū)域。對抽取后的第一部分區(qū)域可參照前述第一紋理特征的處理方式進行處理,獲得第二紋理特征。作為另一種實施方式,設備可針對所述第一部分區(qū)域進行l(wèi)tp處理,處理過程與lbp處理方式近似,區(qū)別在于,在lbp處理過程中,在表示特征點與相鄰特征點的灰度值的相對關系時,通過0和1進行標記。在本實施方式的ltp處理過程中,在表示特征點與相鄰特征點的灰度值的相對關系時,通過0、1和-1進行標記,具體的處理過程可通過以下表達式實現(xiàn):
code(m,n)=img(y+m,x+n)>img(y,x)+fuzzy?1:0(10)
code(m,n)=img(y+m,x+n)<img(y,x)-fuzzy?-1:0(11)
fuzzy=ratio×img(y,x)(12)
其中,img(y,x)表示特征點(y,x)的灰度值;所述特征點(y,x)可以是三乘三的特征點矩陣中的中心特征點;img(y+m,x+n)表示特征點(y+m,x+n)的灰度值;特征點(y+m,x+n)具體為與特征點(y,x)相鄰的特征點;ratio表示比例參數(shù),可預先配置;fuzzy表示特征點(y,x)的灰度值與ratio的乘積;特征點(y,x)的灰度值越大,fuzzy的值也最大。表達式(10)的含義表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值與fuzzy之和進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值與fuzzy之和,則將特征點(m,n)的字符串code(m,n)記為1,否則記為0;表達式(11)的含義表示將特征點(y+m,x+n)的灰度值與特征點(y,x)的灰度值與fuzzy之差進行比較,若特征點(y+m,x+n)的灰度值大于特征點(y,x)的灰度值與fuzzy之差,則將特征點(m,n)的字符串code(m,n)記為-1,否則記為0。
本實施例中,作為一種實施方式,所述計算單元34,用于將所述第一紋理特征輸入預先配置的第一分類模型,獲得表征第一姿態(tài)的第一參數(shù);和/或,用于將所述第二紋理特征輸入預先配置的第二分類模型,獲得表征第二姿態(tài)的第二參數(shù)。
具體的,設備中預先采集大量樣本數(shù)據(jù)(所述樣本數(shù)據(jù)具體可以是采用上述處理方式獲得的第一紋理特征)以及對應的姿態(tài)分類標識,對所述樣本數(shù)據(jù)以及對應的姿態(tài)分類標識進行機器學習訓練,獲得第一分類模型。在獲得所述第一紋理特征后,將所述第一紋理特征輸入所述第一分類模型,獲得所述第一紋理特征對應的第一姿態(tài),所述第一姿態(tài)例如表示正面或側面;所述第一姿態(tài)可通過第一參數(shù)表示。在實際應用中,可通過所述第一參數(shù)的數(shù)值大小表明所述第一姿態(tài)趨近于正面或側面,例如所述第一參數(shù)越大,表明所述第一姿態(tài)越趨近于正面;相應的,若所述第一參數(shù)越小,表明所述第一姿態(tài)越趨近于側面。另一方面,設備預先采集大量樣本數(shù)據(jù)(所述樣本數(shù)據(jù)具體可以是采用上述處理方式獲得的第二紋理特征)以及對應的姿態(tài)分類標識,對所述樣本數(shù)據(jù)以及對應的姿態(tài)分類標識進行機器學習訓練,獲得第二分類模型。在獲得所述第二紋理特征后,將所述第二紋理特征輸入所述第二分類模型,獲得所述第二紋理特征對應的第二姿態(tài),所述第二姿態(tài)例如表示睜眼或閉眼,所述第二姿態(tài)可通過第二參數(shù)表示。在實際應用中,可通過所述第二參數(shù)的數(shù)值大小表明所述第二姿態(tài)趨近于睜眼或閉眼,例如所述第二參數(shù)越大,表明所述第二姿態(tài)越趨近于睜眼;相應的,若所述第二參數(shù)越小,表明所述第二姿態(tài)越趨近于閉眼。
本實施例中,作為一種實施方式,所述動作判定單元35,用于基于所述多幀圖像分別對應的多個第一參數(shù),判斷所述多幀圖像中第一部分圖像對應的第一參數(shù)是否均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)是否均不滿足所述第一閾值范圍;當所述多幀圖像中第一部分圖像對應的第一參數(shù)均滿足第一閾值范圍、并且所述多幀圖像中第二部分圖像對應的第一參數(shù)均不滿足所述第一閾值范圍時,確定所述第一參數(shù)對應于第一動作;和/或,用于基于所述多幀圖像分別對應的多個第二參數(shù),判斷所述多幀圖像中第三部分圖像對應的第二參數(shù)是否均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)是否均不滿足所述第二閾值范圍;當所述多幀圖像中第三部分圖像對應的第二參數(shù)均滿足第二閾值范圍、并且所述多幀圖像中第四部分圖像對應的第二參數(shù)均不滿足所述第二閾值范圍時,確定所述第二參數(shù)對應于第二動作。
具體的,在前述獲得表征第一姿態(tài)的第一參數(shù)時,由于前述是針對兩幀圖像進行處理獲得的第一參數(shù),而在具體應用過程中,是針對獲得的圖像數(shù)據(jù)中所包含的多幀圖像進行處理獲得的第一參數(shù),可以理解為,對于每一幀圖像可獲得一個第一參數(shù),則針對多幀圖像可對應獲得多個第一參數(shù)?;诖?,針對所述多個第一參數(shù)可獲得參數(shù)序列。分析所述參數(shù)序列,若數(shù)值變化由低到高,則可確定人臉由側面轉(zhuǎn)變?yōu)檎?;相應的,若?shù)值變化由高到低,則可確定人臉由正面轉(zhuǎn)變?yōu)閭让妫斎?,相反的,若通過其他數(shù)據(jù)處理方式使得第一參數(shù)越大,表明人臉越趨近于正面,第一參數(shù)越小,表明人臉越趨近于側面,則在分析參數(shù)序列過程中,若數(shù)值變化由低到高,則可確定人臉由正面轉(zhuǎn)變?yōu)閭让?;相應的,若?shù)值變化由高到低,則可確定人臉由側面轉(zhuǎn)變?yōu)檎??;诖耍赏ㄟ^所述參數(shù)序列中數(shù)值的變化從而確定對應的第一動作。
在具體的實施過程中,針對獲得的多幀圖像,選取當前幀之前的x幀圖像,將所述x幀圖像均勻切分為y段;其中,x和y均為正整數(shù),且y小于x;對于每段圖像,由于每段圖像中包括至少兩幀圖像,則每段圖像均可得到至少兩個第一參數(shù);在所述至少兩個第一參數(shù)中選取中間值作為所述每段圖像的第一參數(shù),從而可獲得y段圖像分別對應的y個第一參數(shù)。將y個第一參數(shù)串接獲得參數(shù)序列,判斷所述參數(shù)序列中的參數(shù)變化是否滿足預設規(guī)則,例如,若參數(shù)變化由高到低或者由低到高,則基于參數(shù)變化判定對應的第一動作。在另一種實施方式中,對于所述多幀圖像對應的多個第一參數(shù),判定所述多幀圖像中前一部分圖像包含的人臉處于正面,而后一部分圖像包含的人臉處于側面,或者判定所述多幀圖像中前一部分圖像包含的人臉處于側面,而后一部分圖像包含的人臉處于正面,則可判定第一參數(shù)對應的第一動作。例如,判斷x幀圖像中,所述x幀圖像的前三分之一圖像對應的第一參數(shù)均滿足第一閾值范圍,則表明包含有人臉正面圖像,以及所述x幀圖像的后三分之一圖像對應的第一參數(shù)均不滿足第一閾值范圍,則表明包含有人臉側面圖像,則可確定在所述x幀圖像中人臉由正面轉(zhuǎn)向為側面,即可確定轉(zhuǎn)頭動作。
本實施例中,所述活體驗證設備中的檢測單元31、跟蹤單元32、特征抽取單元33、計算單元34、動作判定單元35和驗證單元36,在實際應用中均可由所述設備中的中央處理器(cpu,centralprocessingunit)、數(shù)字信號處理器(dsp,digitalsignalprocessor)、微控制單元(mcu,microcontrollerunit)或可編程門陣列(fpga,field-programmablegatearray)實現(xiàn)。
本發(fā)明實施例還提供了一種活體驗證設備,活體驗證設備作為硬件實體一個示例如圖6所示。所述設備包括處理器61、存儲介質(zhì)62、攝像頭65以及至少一個外部通信接口63;所述處理器61、存儲介質(zhì)62、攝像頭65以及外部通信接口63均通過總線64連接。
本發(fā)明實施例的活體驗證方法可通過算法以及任意格式的算法庫形式集成在所述活體驗證設備中;具體可集成在所述活體驗證設備中可運行的客戶端中。在實際應用中,算法可與客戶端封裝在一起,用戶激活客戶端,即開啟活體驗證功能時,客戶端調(diào)用算法庫,并啟動攝像頭,通過攝像頭采集的圖像數(shù)據(jù)作為源數(shù)據(jù),根據(jù)采集的源數(shù)據(jù)進行動作的判定。
這里需要指出的是:以上涉及設備項的描述,與上述方法描述是類似的,同方法的有益效果描述,不做贅述。對于本發(fā)明設備實施例中未披露的技術細節(jié),請參照本發(fā)明方法實施例的描述。
本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、設備、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。