本發明涉及用于編輯圖像的方法和設備。具體地,本發明涉及用于編輯圖像中的面部表情的方法和設備,但不完全如此。
背景技術:
人臉是捕獲到的圖像和視頻中的重要主題。可以在各種場景(例如,在室內派對場景中或旅游景點前面擺造型)中捕獲到人臉。然而,通常沒有適當地捕獲適合實際情形的人臉表情。在這種情形中,需要圖片編輯軟件來對面部表情進行修改。可能需要額外的圖像來合成例如使人張開嘴或微笑的新表情。然而,這種工作非常繁瑣,并且需要使用者具有大量時間和技巧。同時,編輯面部表情是最常見的圖片編輯需求之一。
在視頻情形中,為使得編輯不產生時序偽跡和抖動,編輯面部表情甚至更難。通常,需要在每個時步對準確的3D模型進行注冊,這需要專用的捕獲設置或耗費大量計算時間的復雜算法。
考慮到以上情形設計了本發明。
技術實現要素:
一般來說,本發明涉及用于編輯圖像中的面部表情的方法,該方法包括:編輯臉部的3D網格模型以修改面部表情,以及生成與經修改的模型相對應的新的圖像,從而提供具有經修改的面部表情的圖像。
本發明的一方面提供了通過將公共網格模板模型注冊到捕獲的臉部視頻來收集多個臉部區域的肌理數據庫的方法。
本發明的另一方面提供了通過在不同的臉部區域中選擇最適當的面部表情來產生復合圖像的方法。
本發明的另一方面提供了應用局部變形來對所合成的復合圖像中的投影變換進行校正的方法。
本發明的另一方面提供了對臉部肌理數據庫進行組織和索引并選擇與面部表情相對應的最接近的肌理的方法。
本發明的另一方面提供了通過將3D臉部模型操作為代理來執行RGB臉部圖像編輯的方法。
本發明的另一方面提供了通過將3D臉部模型編輯為代理來同時使多個臉部圖像形成同一面部姿態的方法。
本發明的另一方面涉及對圖像中的面部表情進行編輯的方法,該方法包括:
使用融合變形模型來對臉部的變形空間進行參數化;
從與3D面部表情改變相對應的各個面部區域建立圖像肌理的數據庫;
通過對從數據庫讀取的、來自不同的面部區域的適當的圖像肌理進行復合來生成新的面部圖像。
本發明的另一方面提供了對描繪面部表情的圖像進行編輯的方法,該方法包括:
提供不同的面部區域的圖像塊的數據庫;
對注冊到待編輯的圖像的面部模型進行編輯;根據修改從數據庫選擇塊,并從塊生成復合圖像。
本發明的另一方面提供了對圖像中的面部表情進行編輯的設備,該設備包括存儲器和與該存儲器通信的至少一個處理器,存儲器包括指令,當該指令被處理器執行時使得設備執行以下操作:編輯臉部的3D網格模型以修改面部表情;生成與經修改的模型相對應的新的圖像,從而提供具有經修改的面部表情的圖像。
本發明的另一方面提供用于對圖像中的面部表情進行編輯的設備,該設備包括存儲器和與存儲器通信的至少一個處理器,存儲器包括指令,當該指令被處理器執行時使得設備執行以下操作:
訪問不同的面部區域的圖像塊的數據庫;
對注冊到待編輯的圖像的面部模型進行編輯;根據修改從數據庫選擇塊,以及
從塊生成復合圖像。
本發明的實施例提供了對采用簡單的單眼攝像機捕獲的臉部視頻進行編輯的方法。在預處理階段,假設對視頻應用臉部跟蹤算法并且隨時間對面部表情注冊3D網格模型。然后,在運行時,用戶直接編輯臉部的3D網格模型并合成與3D面部表情相對應的新的視覺圖像。通過使用線性化融合變形模型并從與3D表情改變相對應的各個面部區域收集圖像肌理的數據庫來對變形空間進行參數化。通過參考數據庫從不同的臉部區域復合最適當的肌理來生成新的臉部圖像。這樣,提供了一種快速的方式來在給定的輸入臉部圖像中編輯并合成新的面部表情。
存在針對基于臉部模型的視頻編輯的若干種應用。可以用快速且簡單的方式對一般消費者拍錄的家庭視頻和照片進行編輯來顯示新的面部表情。根據本發明的實施例的臉部合成技術也可以應用于編輯演員的表情來用于電影的后期制作。也作為通信代理應用于心理學研究以及創建虛擬人阿凡達。
由本發明的元件實施的一些處理可以由計算機來實現。因此,這種元件可以采用全硬件實施例、全軟件實施例(包括固件、常駐軟件、微代碼、等)、或本文中一般稱之為“電路”、“模塊”、或“系統”的合并軟件和硬件方面的實施例的形式。此外,這種元件可以采用在任何有形的表達介質中實施的計算機程序產品的形式,該有形的表達介質中具有在該介質中實施的計算機可用程序代碼。
由于本發明的元件可以在軟件中實現,本發明可以被實施為計算機可讀代碼,用于提供任何適當的承載介質上的可編程裝置。有形承載介質可以包括存儲介質,例如軟盤、CD-ROM、硬盤驅動器、磁帶設備或固態存儲器設備以及類似物。暫態承載介質可以包括諸如電信號、電子信號、光信號、聲信號、磁信號或電磁信號(例如,微波或RF信號)之類的信號。
附圖說明
現在將僅通過示例的方式并參考以下附圖來描述本發明的實施例,在附圖中:
圖1是示出根據本發明的實施例的編輯圖像的方法的步驟的流程圖;
圖2示出根據本發明的實施例的、針對不同的面部區域并關于不同的表情的數據庫中的一組肌理的示例;
圖3示出根據本發明的實施例的通過拖動頂點來改變3D網格模型上的面部表情;
圖4示出與用戶編輯相對應的在不同區域中選擇的塊的示例;
圖5示出根據本發明的實施例的合成新的面部表情的示例;
圖6示出根據本發明的實施例的對不同參與者的新的面部表情的示例合成;
圖7示出根據本發明的實施例的圖像處理設備。
具體實施方式
圖1是示出根據本發明的實施例的對描繪面部表情的圖像進行編輯的方法的步驟的流程圖。
在步驟S101中,通過使用預處理步驟S100中執行的面部模型圖像注冊方法來建立面部圖像塊的肌理數據庫,其中面部圖像塊與各種面部表情中的不同面部區域相對應。
步驟S100中應用的面部模型圖像注冊方法包括輸入捕獲的臉部圖像的單眼臉部視頻序列并跟蹤圖像序列中人臉的面部特征點。捕獲的圖像序列描繪隨時間變化的各種面部表情,例如,發怒、大笑、談話、微笑、眨眼、挑眉的面部表情以及正常的面部表情。圖2的列(A)中示出了圖像序列的示例。
可以應用例如稀疏空間特征跟蹤算法來跟蹤圖像序列中的面部特征點(例如,鼻尖、嘴角、眼睛等)。圖2的列(B)中的圖像指示面部特征點的示例。對面部特征點的跟蹤產生視頻序列的每個時步(幀)處的攝像機投影矩陣以及示出不同的面部特征點的一組稀疏的3D點。
該處理包括應用被參數化的人臉的3D網格融合變形模型,從而在不同的面部表情間進行融合。將這些面部表情中的每一個表情稱之為融合變形目標。融合變形目標間加權的線性融合產生任意的面部表情。
在形式上,將臉部模型表示為含有所有的頂點坐標的列向量F,其中所有的頂點坐標具有任意但固定的如xyzxyz…xyz這樣的順序。
類似地,可以用bk來表示第k個融合變形目標,并且融合變形模型由以下等式給出:
任意權重wk基本上定義了融合變形目標bk的跨度并且當結合起來時它們定義了被建模的臉部F的表情范圍。可以將所有的融合變形目標作為矩陣B的列并且將權重排列為單個向量w,這樣得到由以下等式表示的融合變形模型:
F=Bw
因此得到3D臉部模型F,其在經受一些剛性和非剛性變換之后,可以在先前獲得的一組稀疏的3D面部特征點之上被注冊。
然后應用將該3D臉部融合變形模型注冊到先前的稀疏面部特征點的輸出的方法,其中輸入視頻中的人與網格模板模型相比具有非常不同的生理特征。
在圖2的列(C)中示出了所收集的肌理圖像塊的示例。這些肌理中的每一個被標注有由該時步(幀)處注冊的面部融合變形模型的融合權重wc表示的準確的面部表情。其目標在于通過查找該肌理數據庫并由不同的肌理圖像塊復合圖像來合成與新的面部表情相對應的新的面部圖像。針對每個面部區域,通過在數據庫中選擇相對于注冊的面部表情最近的鄰居來選擇根據針對面部表情改變的面部模型修改的最適當的肌理圖像塊。這涉及通過其融合變形權重(僅針對影響鄰居的融合變形權重的子集)與當前的融合變形權重最接近的特定的經修改的鄰居的幀來選擇圖像塊。可以注意到,所選擇的用于挑選出肌理/面部圖像塊的時步可以隨不同的面部區域而不同。
將解釋如何針對視頻中的每一幀建立該鄰居塊數據庫。針對視頻中的每一幀,非重疊鄰居(例如,總共4個)中的每一者被投影到圖像,并且然后被裁剪為矩形塊。通過使用被投影鄰居的末端來計算該矩形塊的端點。因此通過使用針對視頻的每一幀生成的這些鄰居塊,建立針對視頻中所有可能的幀的每個非重疊區域/鄰居(總共4個)的整個數據庫(如圖2中所示)。
因此,針對第i個鄰居(其中,i=1,2,3,4)和第K幀,由pKi給出相應的塊。
作為下一步驟,應用最小二乘極小化技術來讀取最相似的鄰居塊,其中最小二乘極小化技術提供其組件(對特定的鄰居具有直接影響)權重與當前權重最接近的幀。但是在此之前,創建兩組列表。第一列表指示哪個組件(融合變形目標)正影響哪個相對應的鄰居。因此,如果第j個融合變形目標bj正影響第i個鄰居Ui,則提供映射bj→Ui。與特定的第i個鄰居相關聯的一組融合變形目標由Ai給出。
第二列表提供針對視頻中每個可能的幀的所有40個融合變形目標的相應的融合變形權重。換言之,提供有關每一幀中最受影響的組件的信息。可以用WjK來表示第K幀中第j個融合變形目標的融合變形權重。
利用該數據庫和索引方法,通過查找由美術師編輯的幾何模型的當前融合變形權重,可以推斷哪些鄰居被影響,其次,哪個是最接近的幀,我們可以從該最接近的幀獲得針對特定的鄰居最有代表性的塊來建立合成圖像。
在步驟S102中,進行編輯的美術師根據所需編輯對模型進行修改。在步驟103中,從數據庫中選擇與修改相對應的圖像塊。事實上,一旦美術師在3D融合變形模型中做出可信的修改,則來自數據庫中不同幀中的塊的、最好地表示任何經修改的鄰居區域的塊被選擇并被固定。針對所有不同的鄰居區域都這樣做,并且因此得到被稱之為復合圖像的對象。采用這種技術是因為它不僅給出有效并且計算成本低的外觀模型,并且也是更精細和更簡單的方式,從而僅通過修改3D幾何模型(其事實上與該外觀模型直接相關)在相應的視頻幀中獲得期望的效果。
首先,美術師還可使用例如(“直接操縱融合變形(Direct Manipulation Blendshapes)”,J.P.Lewis,K.Anjyo,IEEE計算機圖形學應用(Computer Graphics Applications)30(4)42-50,2010年七月)中所描述的直接操縱技術來對圖3中示出的3D融合模型進行一些期望的修改。美術師拖動一些頂點并且通過將它們當做約束條件來使得整個臉部變形。
根據本發明的實施例的算法計算所有可能受影響的融合變形目標bi以及它們的相對應的融合變形權重wj,其中j=1,2,...,40。通過搜索數據庫,識別已經通過對幾何模型的編輯被影響的所有的鄰居。
在下一步驟中,算法計算最近的幀,其基本上提供數據庫中最典型的塊,該最典型的塊與我們在先前的步驟中獲得的每個鄰居相對應。因此,換言之,針對每個鄰居提供了一些相關聯的融合變形目標。對于這些相關聯的融合變形目標,算法確定最接近的幀,其中來自數據庫的相關聯的融合權重是最接近的(與同一融合變形目標的當前融合權重的歐幾里得(Euclidean)距離最小)。因此,對于任何特定的第i個鄰居,假設將相關聯的融合變形目標權重給定為wj,其中j表示第i個鄰居的相關聯的組件Ai的列表中存在的第j個組件。
對于第K個幀和第j個融合變形目標,將融合權重給定為wjK。因此,可以通過對視頻中所有可能的幀執行最小二乘法來計算最接近的幀,如以下等式所給出的:
K*i=MinK(∑j(wj-wjK)2)
其中K*i向我們給出第i個鄰居的最接近的幀。接下來對每個第i個鄰居,調用由PK*I給出的最接近的幀塊。圖4中可以看到針對受影響的鄰居所產生的塊。
在步驟S104中生成復合圖像。這基本上通過應用適當的圖像區域/鄰居上的塊來完成。但是在此之前,執行輕微的變形算法,以便通過對當前幀與在數據庫中選擇的幀之間的投影變換進行校正來對齊塊與當前圖像。該校正變形由以下等式給出:
qK*i=PcPo+pK*i
其中,Pc是應用了塊的當前幀的投影矩陣,Po+是從其中選出塊pK*i的原始幀的投影矩陣的偽逆。
然后將最終的經變形的塊qK*i放置在圖像中適當的位置處。從多個塊合成這些最終的復合圖像。它們將所捕獲的參與者的臉部顯示為完全不同的經合成的面部表情。圖5示出合成新的面部表情的結果的集合的示例。頂行顯示輸入圖像,中間行顯示對3D網格模型的美術編輯,底行顯示與該經編輯的表情相對應的經合成的面部組合圖像。
根據本發明的實施例的面部編輯方法也可以同時適用于不同的參與者的多個圖像,產生所有參與者顯示相同的面部表情的經合成的面部圖像。這在圖6中示出,其示出采用相同的面部表情的多個參與者。頂行示出輸入圖像。中間行示出在未經所提出的根據本發明的實施例的針對投影變換的校正的情況下的進行簡單面部復合的結果。底行示出最終的復合圖像,其是根據本發明的實施例的方法的結果。
與本發明的實施例兼容的裝置可以完全由硬件來實現、完全由軟件來實現、或者由硬件和軟件的組合來實現。關于硬件,例如可以使用專用硬件,例如,ASIC(專用集成電路)、FPGA(現場可編程門陣列)或VLSI(超大規模集成電路),或者通過使用嵌入在設備中或來自硬件和軟件組件的混合的數個集成電子組件。
圖7是表示圖像處理設備30的示例的示意性框圖,在圖像處理設備30中可以實現本發明的一個或多個實施例。設備30包括由數據和地址總線31鏈接起來的以下模塊:
-微處理器32(或CPU),其例如是DSP(或數字信號處理器);
-ROM(或只讀存儲器)33;
-RAM(或隨機存取存儲器)34;
-用于接收和發送來自設備的應用的數據的I/O接口35;以及
-電池36;
-用戶界面37
根據替代實施例,電池36可以在設備的外部。圖6的這些元件中的每一者是本領域技術人員公知的,并且因此不需要被進一步詳細描述來理解本發明。寄存器可以對應于設備的任何存儲器的小容量區域(一些位)或非常大的區域(例如,整個程序或大量接收到的或經解碼的數據)。ROM 33至少包括程序和參數。根據本發明的實施例的方法的算法被存儲在ROM 33中。當啟動時,CPU 32加載RAM中的程序并且執行相應的指令以執行方法。
RAM 34包括寄存器中由CPU 32執行并且在啟動設備30后加載的程序、寄存器中的輸入數據、寄存器中方法的不同狀態中的中間數據、以及寄存器中用于方法的執行的其它變量。
根據發明的實施例,用戶界面37可操作以接收用于控制圖像處理設備并且編輯圖像中的面部表情的用戶輸入。
雖然本發明的實施例所提供的是產生密集的3D網格輸出,但其計算速度快并且具有非常小的開銷。此外,本發明的實施例不需要3D臉部數據庫。相反,它可以使用3D面部模型,其顯示作為參考人的單個人的表情變化,這更容易獲得。
雖然上文參考具體實施例描述了本發明,本發明不限于具體實施例,并且落入本發明的范圍的修改對本領域技術人員將是顯而易見的。
例如,雖然相對于面部表情描述了以上示例,將理解的是,本發明可以應用于其它面部方面或圖像中其它特征點的變化。
在參考僅通過示例的方式給出并且不旨在限制本發明的范圍的以上示意性實施例時,將會使本領域技術人員想起許多進一步的修改和變化,其中本發明的范圍僅由所附權利要求書確定。具體地,來自不同實施例的不同特征可以在適當處互換。