本申請涉及通信技術領域,尤其涉及人臉關鍵點定位方法及裝置。
背景技術:
人臉關鍵點是臉部表征能力強的關鍵部位,例如眼鏡、鼻子、嘴巴和臉部輪廓等。人臉關鍵點定位不僅對人臉識別有很大作用,還可以為表情識別、面部識別或身份鑒定等提供基礎,是人臉識別中核心問題之一。相關技術中,每次迭代采用不同函數(shù)計算關鍵點位置,由于各函數(shù)之間沒有聯(lián)系,因此造成累計誤差,進而導致人臉關鍵點定位不準確。
技術實現(xiàn)要素:
為克服相關技術中存在的問題,本公開提供了人臉關鍵點定位方法及裝置。
根據(jù)本公開實施例的第一方面,提供一種人臉關鍵點定位方法,所述方法包括:
獲取人臉關鍵點初始位置對應的初始圖像特征向量;
將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置;
當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
可選的,所述人臉關鍵點初始位置基于預設訓練集中人臉關鍵點的平均位置獲得。
可選的,所述獲取人臉關鍵點初始位置對應的初始圖像特征向量,包括:
獲取目標圖像中每個人臉關鍵點初始位置對應的局部圖像特征向量;將所有局部圖像特征向量進行連接處理,獲得所述目標圖像的初始圖像特征向量;
所述將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,包括:
將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及所述初始圖像特征向量,對所述目標圖像中每個人臉關鍵點位置進行更新,其中,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息,當N=1時,所述隱藏狀態(tài)信息為預設的默認值。
可選的,所述局部圖像特征向量包括:梯度方向直方圖特征向量、尺度不變特征變換特征向量或卷積神經(jīng)網(wǎng)絡提取的特征向量。
可選的,所述方法還包括:
對包含有人物的圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域圖像;
將所述人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,獲得目標圖像,所述人臉關鍵點是所述目標圖像中待定位的人臉關鍵點。
根據(jù)本公開實施例的第二方面,提供一種人臉關鍵點定位裝置,所述裝置包括:
向量獲取模塊,被配置為獲取人臉關鍵點初始位置對應的初始圖像特征向量;
位置更新模塊,被配置為將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置;
位置確定模塊,被配置為當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
可選的,所述人臉關鍵點初始位置基于預設訓練集中人臉關鍵點的平均位置獲得。
可選的,所述向量獲取模塊,被配置為:獲取目標圖像中每個人臉關鍵點初始位置對應的局部圖像特征向量;將所有局部圖像特征向量進行連接處理,獲得所述目標圖像的初始圖像特征向量;
所述位置更新模塊,被配置為:將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及所述初始圖像特征向量,對所述目標圖像中每個人臉關鍵點位置進行更新,其中,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息,當N=1時,所述隱藏狀態(tài)信息為預設的默認值。
可選的,所述局部圖像特征向量包括:梯度方向直方圖特征向量、尺度不變特征變換特征向量或卷積神經(jīng)網(wǎng)絡提取的特征向量。
可選的,所述裝置還包括:
人臉檢測模塊,被配置為對包含有人物的圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域圖像;
圖像預處理模塊,被配置為將所述人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,獲得目標圖像,所述人臉關鍵點是所述目標圖像中待定位的人臉關鍵點。
本公開的實施例提供的技術方案可以包括以下有益效果:
本公開通過獲取人臉關鍵點初始位置對應的初始圖像特征向量;將初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置;當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。由于循環(huán)神經(jīng)網(wǎng)絡能保存前幾次迭代過程中計算的狀態(tài),從而消除每次迭代之間的累計誤差,從而提高了定位人臉關鍵點位置的準確性。
本公開根據(jù)預設訓練集中人臉關鍵點的平均位置,確定人臉關鍵點初始位置,使人臉關鍵點的初始位置與最終位置不會相差太大,從而提高了后續(xù)迭代計算效率。
本公開不僅將人臉關鍵點定位的區(qū)域控制在人臉區(qū)域圖像內,還將人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,減少迭代求解的范圍,降低迭代過程的計算量。
應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本公開。
附圖說明
此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
圖1是本公開根據(jù)一示例性實施例示出的一種人臉關鍵點定位方法的流程圖。
圖2是本公開根據(jù)一示例性實施例示出的一種利用循環(huán)神經(jīng)網(wǎng)絡更新人臉關鍵點位置的示意圖。
圖3是本公開根據(jù)一示例性實施例示出的另一種人臉關鍵點定位方法的流程圖。
圖4是本公開根據(jù)一示例性實施例示出的一種人臉關鍵點定位裝置的框圖。
圖5是本公開根據(jù)一示例性實施例示出的另一種人臉關鍵點定位裝置的框圖。
圖6是本公開根據(jù)一示例性實施例示出的一種用于人臉關鍵點定位的裝置的結構示意圖。
具體實施方式
這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
在本公開使用的術語是僅僅出于描述特定實施例的目的,而非旨在限制本公開。在本公開和所附權利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應當理解,本文中使用的術語“和/或”是指并包含一個或多個相關聯(lián)的列出項目的任何或所有可能組合。
應當理解,盡管在本公開可能采用術語第一、第二、第三等來描述各種信息,但這些信息不應限于這些術語。這些術語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本公開范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時”或“當……時”或“響應于確定”。
為了避免相關技術中人臉關鍵點定位不準確的缺陷,本公開采用循環(huán)神經(jīng)網(wǎng)絡定位圖像中人臉關鍵點的位置,由于循環(huán)神經(jīng)網(wǎng)絡中有個記憶模塊能保存前幾次迭代過程中計算的狀態(tài),從而消除每次迭代之間的累計誤差,從而提高了定位人臉關鍵點位置的準確性。
如圖1所示,圖1是本公開根據(jù)一示例性實施例示出的一種人臉關鍵點定位方法的流程圖,該方法可以用于終端中,包括以下步驟:
在步驟101中,獲取人臉關鍵點初始位置對應的初始圖像特征向量。
在步驟102中,將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置。
其中,所謂將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置,是指下一次迭代過程中,獲取圖像中更新后的人臉關鍵點位置處的圖像特征向量。
在步驟103中,當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
本公開實施例中,智能終端可以是相機、智能手機、平板電腦、PDA(Personal Digital Assistant,個人數(shù)字助理)等電子設備。
其中,人臉關鍵點是目標圖像中待定位的人物的臉部關鍵點,例如可以是目標圖像中人物的眼睛、鼻子、嘴巴等。
在一個可選的實現(xiàn)方式中,目標圖像可以是人物圖像,可以直接對包含有人物的圖像進行人臉關鍵點定位。
進一步的,為了減少迭代求解的范圍,可以對目標圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域,以用于后續(xù)進行人臉關鍵點定位時,在已框定的人臉區(qū)域中進行迭代計算。
在另一個可選的實現(xiàn)方式中,目標圖像可以是人臉圖像。一方面,可以直接獲取人臉圖像,對人臉圖像進行人臉關鍵點定位。另一方面,獲取到的圖像為包含有人物的圖像,可以對包含有人物的圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域圖像。
在獲得人臉區(qū)域圖像后,在一個例子中,可以直接將人臉區(qū)域圖像作為目標圖像,從而將人臉關鍵點定位的區(qū)域控制在人臉區(qū)域圖像內,減少迭代求解的范圍。在另一個例子中,將所述人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,獲得目標圖像,所述人臉關鍵點是目標圖像中待定位的人臉關鍵點??梢姡粌H將人臉關鍵點定位的區(qū)域控制在人臉區(qū)域圖像內,還將人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,減少迭代求解的范圍,降低迭代過程的計算量。
其中,可以采用各種人臉檢測方法進行人臉區(qū)域檢測。例如,可以采用局部二值模式(Local binary patterns,LBP)與AdaBoost(Adaptive Boosting)相結合的方式進行檢測,從而檢測出圖像中的人臉區(qū)域,獲得人臉圖像。
針對灰度處理,可以采用分量法、最大值法、平均值法、加權平均法等灰度化方法對人臉圖像進行灰度處理。
針對預設尺寸,將圖像縮放至預設尺寸,使所獲得的圖像為預設尺寸的圖像,可以降低迭代過程的計算量。預設尺寸可以靈活配置,例如,可以配置為160*160。
關于人臉關鍵點位置,是人臉關鍵點在目標圖像中的位置。為了能實現(xiàn)人臉關鍵點定位,可以先獲取人臉關鍵點初始位置。初始位置可以是預先設置的位置,也可以是計算獲得的位置。
在一個可選的實現(xiàn)方式中,人臉關鍵點初始位置可以基于預設訓練集中人臉關鍵點的平均位置獲得。例如,可以獲取預設訓練集中人臉關鍵點的平均位置;將所述人臉關鍵點的平均位置,確定為目標圖像中人臉關鍵點初始位置。
其中,預設訓練集是預先標定人臉關鍵點位置的人臉圖像的訓練集,根據(jù)預先標定的人臉關鍵點位置確定該人臉關鍵點的平均位置。將預設訓練集中人臉關鍵點的平均位置,確定為目標圖像中人臉關鍵點初始位置。
可見,本實施例根據(jù)預設訓練集中人臉關鍵點的平均位置,確定目標圖像中人臉關鍵點初始位置,使人臉關鍵點初始位置與最終值不會相差太大,從而提高了后續(xù)迭代計算效率。
在確定人臉關鍵點初始位置后,可以根據(jù)初始位置,利用循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Networks,RNN)迭代更新圖像中人臉關鍵點位置。相比于現(xiàn)有技術中采用不同函數(shù)迭代計算人臉關鍵點的位置,需要分開一個一個進行映射,本申請采用循環(huán)神經(jīng)網(wǎng)絡進行序列建模,實現(xiàn)序列映射,即將一個序列映射到另一個序列。具體的,將人臉關鍵點位置迭代更新的過程轉化為一個序列識別的過程,即將一個序列映射為另一個序列,其中輸入的序列為每一次迭代時當前位置的特征向量序列(f0,f1,f2...),輸出為每一次迭代更新后的位置(s1,s2,s3...),可以把多次的迭代過程按照整體來優(yōu)化,達到整體最優(yōu)。并且,由于循環(huán)神經(jīng)網(wǎng)絡中有個記憶模塊能保存前幾次迭代過程中計算的狀態(tài),從而消除每次迭代之間的累計誤差,提高了定位人臉關鍵點位置的準確性。
具體的,可以獲取目標圖像中每個人臉關鍵點初始位置對應的局部圖像特征向量;將所有局部圖像特征向量進行連接處理,獲得所述目標圖像的初始圖像特征向量;將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及所述初始圖像特征向量,對所述目標圖像中每個人臉關鍵點位置進行更新,其中,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息,當N=1時,所述隱藏狀態(tài)信息為默認值。
如果循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置不滿足收斂條件時,從目標圖像中獲取每個人臉關鍵點更新位置處的局部圖像特征向量,并將局部圖像特征向量進行連接處理,獲得目標圖像的圖像特征向量,將所述圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,以便循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及圖像特征向量,對目標圖像中每個人臉關鍵點位置進行更新,以此類推,當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
其中,連接處理可以是串聯(lián)連接處理,圖像特征向量(是指迭代時輸入循環(huán)神經(jīng)網(wǎng)絡的圖像特征向量,例如首次迭代時輸入的初始圖像特征向量)是將所有局部圖像特征向量連接處理后獲得的向量。例如,假設每個關鍵點位置處可以提取一個長度為m的局部圖像特征向量,將n個關鍵點位置處的局部圖像特征向量連接起來,可以獲得長度為m*n的圖像特征向量。
其中,局部圖像特征向量是圖像特征,是從圖像中抽象出來的一串數(shù)字來表達這個圖像,更便于計算、更具有分辯能力。
在一個實施例中,局部圖像特征向量可以是梯度方向直方圖特征向量(Histogram of oriented gradient,HOG),也可以是尺度不變特征變換特征向量(Scale-invariant feature transform,SIFT),還可以是卷積神經(jīng)網(wǎng)絡(Convolutional neural networks,CNN)提取的特征向量等。
其中,隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息。例如,可以是前幾次迭代用到的圖像特征向量和坐標更新量的對應關系等信息。
其中,收斂條件是判斷人臉關鍵點位置是否收斂的條件,例如,當?shù)贜次迭代輸出的人臉關鍵點位置與第N-1次迭代輸出的人臉關鍵點位置的變化值小于預設閾值時,判定滿足收斂條件。預設閾值是預先設置的一個較小值,具體根據(jù)需求設定。
可見,本實施例可以利用循環(huán)神經(jīng)網(wǎng)絡更新目標圖像中人臉關鍵點位置,在每次迭代中,在目標圖像中每個人臉關鍵點位置處提取局部圖像特征向量,其中,第一次迭代時,所述人臉關鍵點位置為初始位置,第N次迭代時,所述人臉關鍵點位置為第N-1次迭代更新獲得的位置;將所有人臉關鍵點對應的局部圖像特征向量進行連接處理,獲得圖像特征向量(為了和局部圖像特征向量區(qū)分,可稱為總圖像特征向量);將所獲得的圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及圖像特征向量,對所述目標圖像中每個人臉關鍵點位置進行更新,其中,第一次迭代時,所述隱藏狀態(tài)為預設的默認值,第N次迭代時,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息。判斷循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置是否滿足收斂條件,當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,將輸出的人臉關鍵點位置確定為所述圖像中人臉關鍵點的最終位置。
如圖2所示,是本公開根據(jù)一示例性實施例示出的一種利用循環(huán)神經(jīng)網(wǎng)絡更新人臉關鍵點位置的示意圖。在該示意圖中,示意出一種循環(huán)展開的神經(jīng)網(wǎng)絡,在展開的網(wǎng)絡中,每個時間節(jié)點都有一個輸入(F)和輸出(S),還有一個內部的隱藏變量(h)。如圖2,F(xiàn)0,...,FN-1為輸入網(wǎng)絡的圖像特征向量,S1,...,SN為網(wǎng)絡輸出的更新后的人臉關鍵點位置,h0,...,hN-1為網(wǎng)絡記錄的隱藏狀態(tài)。由于網(wǎng)絡中有個內部的隱藏變量(h)可以保留上一個時間節(jié)點的記憶,因此有益于處理序列數(shù)據(jù),消除每次迭代之間的累計誤差,從而提高了定位人臉關鍵點位置的準確性。
在目標圖像中人臉關鍵點的初始位置處提取圖像特征向量,將所有人臉關鍵點對應的圖像特征向量結合獲得圖像特征向量F0,將圖像特征向量F0輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)圖像特征向量F0和默認的隱藏狀態(tài)h0更新圖像中每個人臉關鍵點的位置,獲得更新位置S1,同時利用循環(huán)神經(jīng)網(wǎng)絡中的記憶模塊保存此次迭代過程中的相關信息,獲得隱藏狀態(tài)h1。如果更新位置S1沒有收斂,則在更新位置S1處提取圖像特征向量,根據(jù)提取的圖像特征向量結合獲得圖像特征向量F1,將該圖像特征向量F1輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)圖像特征向量F1和已存儲的隱藏狀態(tài)h1,更新圖像中每個人臉關鍵點的位置,輸出更新位置S2,以此類推,經(jīng)過N次迭代后,直至更新位置SN收斂,迭代結束。SN即為圖像中人臉關鍵點的最終位置。
以上實施方式中的各種技術特征可以任意進行組合,只要特征之間的組合不存在沖突或矛盾,但是限于篇幅,未進行一一描述,因此上述實施方式中的各種技術特征的任意進行組合也屬于本說明書公開的范圍。
以下列舉其中一種組合進行說明。
如圖3所示,圖3是本公開根據(jù)一示例性實施例示出的另一種人臉關鍵點定位方法的流程圖,所述方法包括:
在步驟301中,對包含有人物的圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域圖像。
在步驟302中,將人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,獲得目標圖像。
在步驟303中,獲取預設訓練集中人臉關鍵點的平均位置,根據(jù)人臉關鍵點的平均位置,確定目標圖像中人臉關鍵點的初始位置。
在步驟304中,在每個人臉關鍵點的當前位置處提取HOG特征向量,并根據(jù)所有人臉關鍵點對應的HOG特征向量確定圖像特征向量。
其中,第一次迭代時,所述當前位置為初始位置,第N次迭代時,所述當前位置為第N-1次迭代獲得的更新位置。
在步驟305中,將圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡(RNN),循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及圖像特征向量,確定圖像中每個人臉關鍵點的更新位置。
其中,第一次迭代時,所述隱藏狀態(tài)為默認值,第N次迭代時,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息。
在步驟306中,判斷循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置(更新位置)是否滿足收斂條件,若滿足,則將該更新位置確定為人臉關鍵點的最終位置,迭代結束;若不滿足,則將該人臉關鍵點的更新位置作為當前位置,繼續(xù)執(zhí)行步驟304、305和306。
由上述實施例可見,本實施例不僅將人臉關鍵點定位的區(qū)域控制在人臉區(qū)域圖像內,還將人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,同時根據(jù)預設訓練集中人臉關鍵點的平均位置確定圖像中人臉關鍵點的初始位置,減少迭代求解的范圍,降低迭代過程的計算量。相比于現(xiàn)有技術中每次迭代采用不同函數(shù)計算關鍵點位置,本申請采用循環(huán)神經(jīng)網(wǎng)絡進行序列建模,由于循環(huán)神經(jīng)網(wǎng)絡中有個記憶模塊能保存前幾次迭代過程中計算的狀態(tài),從而消除每次迭代之間的累計誤差,從而提高了定位人臉關鍵點位置的準確性。
與前述人臉關鍵點定位方法的實施例相對應,本公開還提供了人臉關鍵點定位裝置及其所應用的終端的實施例。
如圖4所示,圖4是本公開根據(jù)一示例性實施例示出的一種人臉關鍵點定位裝置的框圖,所述裝置包括:向量獲取模塊41、位置更新模塊42和位置確定模塊43。
向量獲取模塊41,被配置為獲取人臉關鍵點初始位置對應的初始圖像特征向量。
位置更新模塊42,被配置為將所述向量獲取模塊41獲取的所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置。
位置確定模塊43,被配置為當位置更新模塊42的循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
在一個例子中,當位置確定模塊43確定循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置沒有滿足收斂條件時,可以通知向量獲取模塊41執(zhí)行下一次迭代。
由上述實施例可見,通過獲取人臉關鍵點初始位置對應的初始圖像特征向量;將初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置;當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。由于循環(huán)神經(jīng)網(wǎng)絡能保存前幾次迭代過程中計算的狀態(tài),從而消除每次迭代之間的累計誤差,從而提高了定位人臉關鍵點位置的準確性。
如圖5所示,圖5是本公開根據(jù)一示例性實施例示出的另一種人臉關鍵點定位裝置的框圖,該實施例在前述圖4所示實施例的基礎上,所述裝置還包括:人臉檢測模塊44和圖像預處理模塊45。
其中,人臉檢測模塊44,被配置為對包含有人物的圖像進行人臉區(qū)域檢測,獲得人臉區(qū)域圖像。
圖像預處理模塊45,被配置為將人臉檢測模塊44檢測獲得的所述人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,獲得目標圖像,所述人臉關鍵點是所述目標圖像中待定位的人臉關鍵點。
其中,向量獲取模塊41可以從圖像預處理模塊45中獲取目標圖像。
由上述實施例可見,不僅將人臉關鍵點定位的區(qū)域控制在人臉區(qū)域圖像內,還將人臉區(qū)域圖像進行灰度處理,并縮放至預設尺寸,減少迭代求解的范圍,降低迭代過程的計算量。
在一個可選的實現(xiàn)方式中,所述人臉關鍵點初始位置基于預設訓練集中人臉關鍵點的平均位置獲得。
由上述實施例可見,根據(jù)預設訓練集中人臉關鍵點的平均位置,確定待定位圖像中人臉關鍵點初始位置,使人臉關鍵點的初始位置與最終位置不會相差太大,從而提高了后續(xù)迭代計算效率。
在一個可選的實現(xiàn)方式中,所述向量獲取模塊41,被配置為:獲取目標圖像中每個人臉關鍵點初始位置對應的局部圖像特征向量;將所有局部圖像特征向量進行連接處理,獲得所述目標圖像的初始圖像特征向量。
所述位置更新模塊42,被配置為:將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,循環(huán)神經(jīng)網(wǎng)絡根據(jù)隱藏狀態(tài)信息以及所述初始圖像特征向量,對所述目標圖像中每個人臉關鍵點位置進行更新,其中,所述隱藏狀態(tài)信息是循環(huán)神經(jīng)網(wǎng)絡記錄的前N-1次迭代過程中的信息,當N=1時,所述隱藏狀態(tài)信息為預設的默認值。
在一個可選的實現(xiàn)方式中,所述局部圖像特征向量包括:梯度方向直方圖特征向量、尺度不變特征變換特征向量或卷積神經(jīng)網(wǎng)絡提取的特征向量。
相應的,本公開還提供一種人臉關鍵點定位裝置,所述裝置包括有處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為:
獲取人臉關鍵點初始位置對應的初始圖像特征向量。
將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置。
當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
上述裝置中各個模塊的功能和作用的實現(xiàn)過程具體詳情見上述方法中對應步驟的實現(xiàn)過程,在此不再贅述。
對于裝置實施例而言,由于其基本對應于方法實施例,所以相關之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡模塊上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本公開方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
如圖6所示,圖6是本公開根據(jù)一示例性實施例示出的一種用于人臉關鍵點定位的裝置600的結構示意圖。該裝置600可以是相機、移動電話,計算機,數(shù)字廣播終端,消息收發(fā)設備,平板設備、個人數(shù)字助理等終端。
參照圖6,裝置600可以包括以下一個或多個組件:處理組件602,存儲器604,電源組件606,多媒體組件608,音頻組件610,輸入/輸出(I/O)的接口612,傳感器組件614,以及通信組件616。
處理組件602通常控制裝置600的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機操作和記錄操作相關聯(lián)的操作。處理組件602可以包括一個或多個處理器620來執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件602可以包括一個或多個模塊,便于處理組件602和其他組件之間的交互。例如,處理組件602可以包括多媒體模塊,以方便多媒體組件608和處理組件602之間的交互。
存儲器604被配置為存儲各種類型的數(shù)據(jù)以支持在裝置600的操作。這些數(shù)據(jù)的示例包括用于在裝置600上操作的任何應用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲器604可以由任何類型的易失性或非易失性存儲設備或者它們的組合實現(xiàn),如靜態(tài)隨機存取存儲器(SRAM),電可擦除可編程只讀存儲器(EEPROM),可擦除可編程只讀存儲器(EPROM),可編程只讀存儲器(PROM),只讀存儲器(ROM),磁存儲器,快閃存儲器,磁盤或光盤。
電源組件606為裝置600的各種組件提供電力。電源組件606可以包括電源管理系統(tǒng),一個或多個電源,及其他與為裝置600生成、管理和分配電力相關聯(lián)的組件。
多媒體組件608包括在所述裝置600和用戶之間的提供一個輸出接口的屏幕。在一些實施例中,屏幕可以包括液晶顯示器(LCD)和觸摸面板(TP)。如果屏幕包括觸摸面板,屏幕可以被實現(xiàn)為觸摸屏,以接收來自用戶的輸入信號。觸摸面板包括一個或多個觸摸傳感器以感測觸摸、滑動和觸摸面板上的手勢。所述觸摸傳感器可以不僅感測觸摸或滑動動作的邊界,而且還檢測與所述觸摸或滑動操作相關的持續(xù)時間和壓力。在一些實施例中,多媒體組件608包括一個前置攝像頭和/或后置攝像頭。當裝置600處于操作模式,如拍攝模式或視頻模式時,前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個前置攝像頭和后置攝像頭可以是一個固定的光學透鏡系統(tǒng)或具有焦距和光學變焦能力。
音頻組件610被配置為輸出和/或輸入音頻信號。例如,音頻組件610包括一個麥克風(MIC),當裝置600處于操作模式,如呼叫模式、記錄模式和語音識別模式時,麥克風被配置為接收外部音頻信號。所接收的音頻信號可以被進一步存儲在存儲器604或經(jīng)由通信組件616發(fā)送。在一些實施例中,音頻組件610還包括一個揚聲器,用于輸出音頻信號。
I/O接口612為處理組件602和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動按鈕和鎖定按鈕。
傳感器組件614包括一個或多個傳感器,用于為裝置600提供各個方面的狀態(tài)評估。例如,傳感器組件614可以檢測到裝置600的打開/關閉狀態(tài),組件的相對定位,例如所述組件為裝置600的顯示器和小鍵盤,傳感器組件614還可以檢測裝置600或裝置600中一個組件的位置改變,用戶與裝置600接觸的存在或不存在,裝置600方位或加速/減速和裝置600的溫度變化。傳感器組件614可以包括接近傳感器,被配置用來在沒有任何的物理接觸時檢測附近物體的存在。傳感器組件614還可以包括光傳感器,如CMOS或CCD圖像傳感器,用于在成像應用中使用。在一些實施例中,該傳感器組件614還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。
通信組件616被配置為便于裝置600和其他設備之間有線或無線方式的通信。裝置600可以接入基于通信標準的無線網(wǎng)絡,如WiFi,2G或3G,或它們的組合。在一個示例性實施例中,通信組件616經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號或廣播相關信息。在一個示例性實施例中,所述通信組件616還包括近場通信(NFC)模塊,以促進短程通信。例如,在NFC模塊可基于射頻識別(RFID)技術,紅外數(shù)據(jù)協(xié)會(IrDA)技術,超寬帶(UWB)技術,藍牙(BT)技術和其他技術來實現(xiàn)。
在示例性實施例中,裝置600可以被一個或多個應用專用集成電路(ASIC)、數(shù)字信號處理器(DSP)、數(shù)字信號處理設備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件實現(xiàn),用于執(zhí)行上述方法。
在示例性實施例中,還提供了一種包括指令的非臨時性計算機可讀存儲介質,例如包括指令的存儲器604,上述指令可由裝置600的處理器620執(zhí)行以完成上述方法。例如,所述非臨時性計算機可讀存儲介質可以是ROM、隨機存取存儲器(RAM)、CD-ROM、磁帶、軟盤和光數(shù)據(jù)存儲設備等。
其中,當所述存儲介質中的指令由所述處理器執(zhí)行時,使得裝置600能夠執(zhí)行一種人臉關鍵點定位方法,包括:
獲取人臉關鍵點初始位置對應的初始圖像特征向量。
將所述初始圖像特征向量輸入循環(huán)神經(jīng)網(wǎng)絡,利用循環(huán)神經(jīng)網(wǎng)絡獲取更新后人臉關鍵點位置,將更新后人臉關鍵點位置作為下一次獲取圖像特征向量所對應的人臉關鍵點位置。
當循環(huán)神經(jīng)網(wǎng)絡輸出的人臉關鍵點位置滿足收斂條件時,獲取人臉關鍵點最終位置。
本領域技術人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本公開的其它實施方案。本公開旨在涵蓋本公開的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本公開的一般性原理并包括本公開未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本公開的真正范圍和精神由下面的權利要求指出。
應當理解的是,本公開并不局限于上面已經(jīng)描述并在附圖中示出的精確結構,并且可以在不脫離其范圍進行各種修改和改變。本公開的范圍僅由所附的權利要求來限制。
以上所述僅為本公開的較佳實施例而已,并不用以限制本公開,凡在本公開的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本公開保護的范圍之內。