人臉特征點定位方法和裝置的制造方法
【技術領域】
[0001]本公開涉及圖像處理領域,尤其涉及人臉特征點定位方法和裝置。
【背景技術】
[0002]SDM(supervised decent method監督的梯度下降法)是計算機視覺領域最新發現的精確人臉特征點定位算法,SDM因定位快、魯棒性好、通用性及擴展性強,其應用越來越廣泛。通過SDM算法定位出人臉的特征點之后,可以非常方便的進行后續的人臉的一系列其他處理,如人臉美顏、人臉識別等。然而,隨著相關應用的越來越廣泛,用戶對于人臉特征點的定位準確度的要求越來越高,因此如何提高SDM算法對于人臉特征點定位的精度,具有越來越重要的意義。
【發明內容】
[0003]為克服相關技術中存在的問題,本公開提供一種人臉特征點定位方法和裝置。
[0004]根據本公開實施例的第一方面,提供一種人臉特征點定位方法,所述方法包括:
[0005]根據第一特征點修正模型對初始特征點坐標進行修正,得到初次修正特征點坐標;
[0006]對多個所述初次修正特征點坐標進行中心特征點識別,得到至少一個中心特征點坐標;
[0007]根據特征點映射函數對多個所述初次修正特征點坐標進行坐標映射,得到多個二次修正特征點坐標,其中,所述特征點映射函數為所述中心特征點到所述二次修正特征點坐標的映射關系。
[0008]可選的,所述方法還包括:
[0009]根據第二特征點修正模型對多個所述二次修正特征點坐標進行修正,得到多個最終修正特征點坐標。
[0010]可選的,所述方法還包括:
[0011]對目標照片進行人臉區域檢測,得到人臉區域;
[0012]根據多個所述初始特征點的坐標占比,獲取所述人臉區域內的多個所述初始特征點坐標。
[0013]可選的,所述初始特征點的坐標占比通過對多張照片樣本中的人臉區域進行標定測量得到。
[0014]可選的,所述中心特征點坐標為眼球中心點坐標。
[0015]可選的,所述根據第一特征點修正模型對初始特征點坐標進行修正,得到初次修正特征點坐標,包括:
[0016]根據所述第一特征點修正模型對多個所述初始特征點坐標進行矩陣乘法計算,得到多個第一初始特征點坐標;
[0017]根據所述第一特征點修正模型對多個所述第一初始特征點坐標進行矩陣乘法計算,得到多個第二初始特征點坐標;
[0018]......
[0019]根據所述第N初始特征點坐標對多個所述第N-1初始特征點坐標進行矩陣乘法計算,得到多個所述初次修正特征點坐標,其中,N為大于或者等于2的整數。
[0020]可選的,所述根據第二特征點修正模型對多個所述二次修正特征點坐標進行修正,得到多個所述最終修正特征點坐標,包括:
[0021]根據所述第二特征點修正模型對多個所述二次修正特征點坐標進行矩陣乘法計算,得到第一最終特征點坐標;
[0022]根據所述第二特征點修正模型對所述第一最終特征點坐標進行矩陣乘法計算,得到第二最終特征點坐標;
[0023]......
[0024]根據所述第M初始特征點坐標對所述第M-1初始特征點坐標進行矩陣乘法計算,得到所述最終修正特征點坐標,其中,M為大于或者等于2的整數。
[0025]可選的,所述第一特征點修正模型為多個初始特征點的特征、偏移量與多個初次修正特征點的特征、偏移量的映射關系,所述第一特征點修正模型為投影矩陣模型。
[0026]可選的,所述第二特征點修正模型為多個二次修正特征點的特征、偏移量與多個最終修正特征點的特征、偏移量的映射關系,所述第二特征點修正模型為投影矩陣模型。
[0027]可選的,所述初始特征點的數量為44個或者98個。
[0028]根據本公開實施例的第二方面,一種人臉特征點定位裝置,所述裝置包括:
[0029]第一修正模塊,被配置為根據第一特征點修正模型對初始特征點坐標進行修正,得到初次修正特征點坐標;
[0030]識別模塊,被配置為對所述第一修正模塊修正得到的多個所述初次修正特征點坐標進行中心特征點識別,得到至少一個中心特征點坐標;
[0031]映射模塊,被配置為根據特征點映射函數對所述第一修正模塊修正得到的多個所述初次修正特征點坐標進行坐標映射,得到多個二次修正特征點坐標,其中,所述特征點映射函數為所述識別模塊識別得到的所述中心特征點到所述二次修正特征點坐標的映射關系O
[0032]可選的,所述裝置還包括:
[0033]第二修正模塊,根據第二特征點修正模型對所述映射模塊映射得到的多個所述二次修正特征點坐標進行修正,得到多個最終修正特征點坐標。
[0034]可選的,所述裝置還包括:
[0035]檢測模塊,被配置為對目標照片進行人臉區域檢測,得到人臉區域;
[0036]獲取模塊,被配置為根據多個所述初始特征點的坐標占比,獲取所述人臉區域內的多個所述初始特征點坐標。
[0037]可選的,所述初始特征點的坐標占比通過對多張照片樣本中的人臉區域進行標定測量得到。
[0038]可選的,所述中心特征點坐標為眼球中心點坐標。
[0039]可選的,所述第一修正模塊包括:
[0040]第一計算子模塊,被配置為根據所述第一特征點修正模型對多個所述初始特征點坐標進行矩陣乘法計算,得到多個第一初始特征點坐標;
[0041]根據所述第一特征點修正模型對多個所述第一初始特征點坐標進行矩陣乘法計算,得到多個第二初始特征點坐標;
[0042]......
[0043]根據所述第N初始特征點坐標對多個所述第N-1初始特征點坐標進行矩陣乘法計算,得到多個所述初次修正特征點坐標,其中,N為大于或者等于2的整數。
[0044]可選的,所述第二修正模塊包括:
[0045]第二計算子模塊,被配置為根據所述第二特征點修正模型對多個所述二次修正特征點坐標進行矩陣乘法計算,得到第一最終特征點坐標;
[0046]根據所述第二特征點修正模型對所述第二計算子模塊計算得到的所述第一最終特征點坐標進行矩陣乘法計算,得到第二最終特征點坐標;
[0047]......
[0048]根據所述第M初始特征點坐標對所述第M-1初始特征點坐標進行矩陣乘法計算,得到所述最終修正特征點坐標,其中,M為大于或者等于2的整數。
[0049]可選的,所述第一特征點修正模型為多個初始特征點的特征、偏移量與多個初次修正特征點的特征、偏移量的映射關系,所述第一特征點修正模型為投影矩陣模型。
[0050]可選的,所述第二特征點修正模型為多個二次修正特征點的特征、偏移量與多個最終修正特征點的特征、偏移量的映射關系,所述第二特征點修正模型為投影矩陣模型。
[0051]可選的,所述初始特征點的數量為44個或者98個。
[0052]根據本公開實施例的第三方面,提供一種人臉特征點定位裝置,其特征在于,包括:
[0053]處理器;
[0054]用于存儲處理器可執行指令的存儲器;
[0055]其中,所述處理器被配置為:
[0056]根據第一特征點修正模型對初始特征點坐標進行修正,得到初次修正特征點坐標;
[0057]對多個所述初次修正特征點坐標進行中心特征點識別,得到至少一個中心特征點坐標;
[0058]根據特征點映射函數對多個所述初次修正特征點坐標進行坐標映射,得到多個二次修正特征點坐標,其中,所述特征點映射函數為所述中心特征點到所述二次修正特征點坐標的映射關系。
[0059]本公開的以上實施例中,通過第一特征點修正模型對初始特征點坐標進行修正,得到初次修正特征點坐標,并對多個所述初次修正特征點坐標進行中心特征點識別,得到至少一個中心特征點坐標,然后根據特征點映射函數對多個所述初次修正特征點坐標進行坐標映射,得到多個二次修正特征點坐標,其中,由于所述特征點映射函數為所述中心特征點到所述二次修正特征點坐標的映射關系,而所述中心特征點是基于所述初次修正特征點坐標進行識別得到的更加精準的特征點,因此可以提高人臉特征點的定位精準度。
[0060]本公開的以上實施例中,通過第二特征點修正模型對多個所述二次修正特征點坐標進行修正,得到多個最終修正特征點坐標,由于通過第二特征點修正模型對所述二次修正特征點再次進行了修正,因此可以進一步提高人臉特征點的定位精度。
[0061]本公開的以上實施例中,通過對目標照片進行人臉區域檢測,得到人臉區域,然后根據多個所述初始特征點的坐標占比,獲取所述人臉區域內的多個所述初始特征點坐標,其中,由于所述初始特征的坐標占比通過對多張照片中的人臉區域進行標定測量得到,因此可以快速精準的為目標照片設定初始特征點。
[0062]應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本公開。
【附圖說明】
[0063]此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
[0064]圖1是根據一示例性實施例示出的一種人臉特征點定位方法的流程示意圖;
[0065]圖2是根據一示例性實施例示出的另一種人臉特征點定位方法的流程示意圖;
[0066]圖3是根據一示例性實施例示出的一種人臉特征點定位裝置的示意框圖;
[0067]圖4是根據一示例性實施例示出的另一種人臉特征點定位裝置的示意框圖;
[0068]圖5是根據一示例性實施例示出的另一種人臉特征點定位裝置的示意框圖;
[0069]圖6是根據一示例性實施例示出的另一種人臉特征點定位裝置的示意框圖;
[0070]圖7是根據一示例性實施例示出的另一種人臉特征點定位裝置的示意框圖;
[0071]圖8是根據一示例性實施例示出的一種用于所述人臉特征點定位裝置的一結構示意圖。
【具體實施方式】
[0072]這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
[0073]在本公開使用的術語是僅僅出于描述特定實施例的目的,而非旨在限制本公開。在本公開和所附權利要求書中所使用的單數形式的“一種”、“所述”和“該”也旨在包括多數形式,除非上下文清楚地表示其他含義。還應當理解,本文中使用的術語“和/或”是指并包含一個或多個相關聯的列出項目的任何或所有可能組合。
[0074]應當理解,盡管在本公開可能采用術語第一、第二、第三等來描述各種信息,但這些信息不應限于這些術語。這些術語僅用來將同一類型的信息彼此區分開。例如,在不脫離本公開范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時”或“當……時”或“響應于確定”。
[0075]SDM(Supervised Descent Method,監督的梯度下降法)算法屬于一種迭代算法,可以用于進行人臉特征定定位,其算法原理是:
[0076]設定一組初始特征點,該算法針對這一組初始特征點提取圖像特征向量,得到一組圖像特征向量I,并用I預測從初始特征點當前位置X c開始,到下一個目標點的偏移量delta_X。,然后將偏移量與當前位置X。相加,并開始下一次迭代,整個迭代過程可以用以下公式來表示:
[0077]Xn+1= X n+delta_Xn
[0078]delta_Xn= f n (Yn)
[0079]η = 0,1,2...
[0080]其中,上述delta_Xn為多維向量,上述delta_Xn的取值,即每次迭代的偏移量的計算方法是該迭代算法的關鍵。SDM算法在計算delta_Xn的取值時,通常采用線性預測的方法,即每次迭代的偏移量delta_Xn是圖像特征向量Y n的線性函數f n (Yn),其中:
[0081]fn(Yn) = An*Yn
[0082]在上述線性函數fn(Yn)的表達式中,An是指定位預測矩陣,用于預測每次迭代的偏移量delta_Xn。在運算的過程中,如果共有P個點特征點需要定位,那么1是1^ * P維的向量(每個特征點提取k維特征向量,k的具體取值根據實際需求進行設定),An是2p Xkp的矩陣,乂11是2 * P維向量(每個特征點有