專利名稱:基于視頻流的三維人臉動(dòng)作檢測(cè)和跟蹤方法
技術(shù)領(lǐng)域:
本發(fā)明涉及人臉檢測(cè)和跟蹤領(lǐng)域,尤其是指一種在視頻流中對(duì)三維人 臉及人臉動(dòng)作進(jìn)行檢測(cè)和跟蹤的方法。
背景技術(shù):
人臉是每個(gè)人都具有的重要特征,是最自然、最常用的交互手段之一, 在計(jì)算機(jī)視覺(jué)和圖形學(xué)等領(lǐng)域具有相當(dāng)廣泛的應(yīng)用,例如人機(jī)交互,安全 監(jiān)控,游戲娛樂(lè),計(jì)算機(jī)動(dòng)畫等。對(duì)人臉和人臉動(dòng)作進(jìn)行實(shí)時(shí)、準(zhǔn)確的檢 測(cè)和跟蹤,在理論上和實(shí)際中都具有重要的意義。如何建立有效的模型, 選擇最具表達(dá)能力的特征,構(gòu)造準(zhǔn)確的分類器,實(shí)現(xiàn)高效穩(wěn)定的跟蹤算法, 都是人們關(guān)心的理論問(wèn)題。如果能夠得到對(duì)人臉及人臉動(dòng)作的準(zhǔn)確的檢測(cè) 和跟蹤結(jié)果,就可以用來(lái)控制電腦中的對(duì)象或角色,或者用來(lái)輔助生成具 有真實(shí)感的人臉動(dòng)畫,或者從中獲得表情信息。以往對(duì)這方面問(wèn)題的研究, 主要集中在人臉檢測(cè),人臉關(guān)鍵點(diǎn)定位,人臉和人臉關(guān)鍵點(diǎn)跟蹤這幾個(gè)方 面。
人臉檢測(cè)可以分為基于規(guī)則的檢測(cè)方法和基于統(tǒng)計(jì)的檢測(cè)方法兩類。 基于規(guī)則的檢測(cè)方法是指,首先從候選圖像中抽取幾何形狀、灰度、紋理 等特征,然后檢驗(yàn)它們是否符合關(guān)于人臉的先驗(yàn)知識(shí)?;诮y(tǒng)計(jì)的檢測(cè)方 法,將人臉區(qū)域看作一類模式,使用大量的"人臉"與"非人臉"樣本進(jìn) 行訓(xùn)練,構(gòu)造分類器,然后使用分類器判斷候選圖像是否具有人臉模式。
因此,人臉檢測(cè)問(wèn)題被轉(zhuǎn)化為統(tǒng)計(jì)模式識(shí)別的二分類問(wèn)題。P. Viola等人 在2001年提出的綜合Adaboost和Cascade算法實(shí)現(xiàn)的實(shí)時(shí)人臉檢測(cè)算法, 在提高人臉檢測(cè)精度的同時(shí)也大幅度地提高了檢測(cè)速度,使得人臉檢測(cè)從 真正意義上走向?qū)嵱谩?br>
5人臉關(guān)鍵點(diǎn)定位即是檢測(cè)由眉毛,眼睛,鼻子,嘴巴,以及人臉輪廓 等確定的一系列關(guān)鍵點(diǎn)的位置。人臉關(guān)鍵點(diǎn)定位方法可以分為基于可變形 人臉模型的方法,基于投影直方圖分析的方法和模板匹配的方法三類???變形人臉模型的方法即首先通過(guò)訓(xùn)練的方法建立一個(gè)包含人臉關(guān)鍵點(diǎn)分 布的模型,使用形狀,紋理等特征,對(duì)模型參數(shù)進(jìn)行調(diào)整,得到輸入人臉
上關(guān)鍵點(diǎn)的位置。典型的例子是Cootes等人提出的ASM方法和AAM方法。 基于投影直方圖分析的方法是早期的人臉關(guān)鍵點(diǎn)定位常用的方法,這種方 法基于人臉器官的灰度分布特點(diǎn),對(duì)一定寬度的一個(gè)區(qū)域帶,利用灰度的 水平和垂直積分直方圖的峰谷特征,進(jìn)行人臉器官和關(guān)鍵點(diǎn)的定位。模版 匹配的方法是指,利用人臉或器官的模板在候選窗口逐點(diǎn)滑動(dòng)進(jìn)行特征匹 配定位。例如首先使用眼睛樣本建立分類器,然后在人臉區(qū)域上部使用這 一分類器搜索最符合眼睛模式的區(qū)域,從而實(shí)現(xiàn)眼睛的定位。
人臉和人臉關(guān)鍵點(diǎn)跟蹤的是在已經(jīng)確定人臉和人臉關(guān)鍵點(diǎn)位置、姿態(tài) 等參數(shù)的條件下,在后續(xù)視頻序列保持這些參數(shù)的輸出。人臉跟蹤等價(jià)于 在連續(xù)的視頻幀間創(chuàng)建基于位置、速度、形狀、紋理、色彩等有關(guān)特征的 對(duì)應(yīng)匹配問(wèn)題,常用的跟蹤算法可以分為基于模型的方法和不使用模型的 方法兩類,二者的區(qū)別在于是否使用到人臉這一特定對(duì)象的知識(shí)。
人臉檢測(cè),關(guān)鍵點(diǎn)定位,以及跟蹤,常常結(jié)合在一起形成一個(gè)統(tǒng)一的 整體,以獲得對(duì)人臉位置、姿態(tài)和動(dòng)作的完整表達(dá)。在對(duì)視頻序列進(jìn)行處 理和分析的過(guò)程中,算法的準(zhǔn)確性常常受到很多干擾因素的影響,例如光 照條件的變化,人臉區(qū)域受到遮擋等。另外,當(dāng)人臉位置、姿態(tài)或動(dòng)作參 數(shù)變化比較劇烈時(shí),檢測(cè)和跟蹤的結(jié)果往往也會(huì)產(chǎn)生較大的誤差。這些都 是設(shè)計(jì)人臉及人臉動(dòng)作檢測(cè)和跟蹤方法需要考慮的問(wèn)題。
現(xiàn)有技術(shù)在人臉及人臉動(dòng)作跟蹤方面,仍然存在一些缺陷,制約著相 關(guān)應(yīng)用的實(shí)現(xiàn)。在跟蹤精度方面,現(xiàn)有技術(shù)難以達(dá)到很高的精度,表現(xiàn)在 對(duì)面部器官形狀和動(dòng)作細(xì)節(jié)的刻畫能力不足。在跟蹤的穩(wěn)定性方面,當(dāng)頭 部動(dòng)作變化范圍較大,或者運(yùn)動(dòng)速度過(guò)快,或者面部表情較大時(shí),很多跟 蹤方法無(wú)法收斂到正確的結(jié)果。在實(shí)用性方面,現(xiàn)有技術(shù)對(duì)于檢測(cè)、定位、 跟蹤這三者的結(jié)合,仍然缺少完整有效的解決方案。本發(fā)明針對(duì)這些問(wèn)題, 平衡各方面性能的需求,同時(shí)考慮到實(shí)際應(yīng)用中對(duì)計(jì)算速度的要求,給出了有效的解決方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于視頻流的人臉及人臉動(dòng)作檢測(cè)和實(shí) 時(shí)跟蹤的方法。三維可變形人臉網(wǎng)格的位置、姿態(tài)、形狀和動(dòng)作參數(shù)用來(lái) 描述人臉和人臉動(dòng)作。本發(fā)明提供的方法不需要對(duì)特定的使用者進(jìn)行訓(xùn) 練,不需要使用者手工參與,可以實(shí)現(xiàn)自動(dòng)從視頻流的前若干幀中檢測(cè)出 人臉及人臉關(guān)鍵點(diǎn)的位置,然后就可以在頭部存在較大范圍的轉(zhuǎn)動(dòng),較高 速度的運(yùn)動(dòng),以及在較大程度的表情變化的情況下,進(jìn)行人臉位置、姿態(tài) 和動(dòng)作的跟蹤。唯一的限制是用戶在視頻流的起始階段為正面姿態(tài)和中性 表情。本發(fā)明提供的方法具有檢測(cè)和跟蹤準(zhǔn)確,動(dòng)作跟蹤精細(xì),實(shí)時(shí)性強(qiáng) 的優(yōu)點(diǎn)。
本發(fā)明提供的基于視頻的人臉及人臉動(dòng)作檢測(cè)和跟蹤方法,包括以下 步驟
(1) 采用自動(dòng)人臉檢測(cè)和定位算法,對(duì)輸入視頻圖像上人臉及人臉
關(guān)鍵點(diǎn)位置進(jìn)行檢測(cè)和定位。人臉檢測(cè)方法采用了 Adaboost和Cascade 結(jié)合的人臉?lè)诸惼?,人臉關(guān)鍵點(diǎn)定位采用了 AAM算法。
(2) 使用檢測(cè)和定位的結(jié)果對(duì)三維可變形人臉網(wǎng)格模型的形狀、位 置和姿態(tài)進(jìn)行初始化。包括以下步驟
(21) 使用將雙眼和嘴巴中心三個(gè)點(diǎn)對(duì)齊的人臉樣本,訓(xùn)練一個(gè)PCA 人臉子空間,用于對(duì)檢測(cè)和定位的結(jié)果進(jìn)行評(píng)估;
(22) 根據(jù)檢測(cè)和定位的結(jié)果,采用最大化后驗(yàn)概率的方法,調(diào)整三 維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù);
(23) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),采用紋理 映射的方法,計(jì)算出形狀和動(dòng)作無(wú)關(guān)紋理圖像;
(24) 使用(21)中所述的PCA人臉子空間,對(duì)二維形狀和動(dòng)作無(wú)關(guān) 紋理圖像進(jìn)行評(píng)估;
(25) 根據(jù)評(píng)估的結(jié)果,決定如何采用本次人臉檢測(cè)和定位的結(jié)果對(duì) 三維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù)進(jìn)行初始化。如果評(píng)估 顯示本次人臉檢測(cè)和定位準(zhǔn)確,則將這一結(jié)果記錄下來(lái),當(dāng)準(zhǔn)確檢測(cè)和定
7位次數(shù)達(dá)到設(shè)定值時(shí),使用所有已經(jīng)記錄的結(jié)果的均值對(duì)三維可變形人臉 網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù)進(jìn)行初始化。
(3) 在對(duì)三維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)進(jìn)行初始化 的同時(shí),初始化人臉紋理模型。包括以下步驟
(31) 建立人臉紋理模型為每個(gè)像素都符合高斯分布的灰度圖像,并 為每個(gè)像素設(shè)置可信度指標(biāo)和初始化完成度指標(biāo)。
(32) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),采用紋理 映射的方法,計(jì)算出形狀和動(dòng)作無(wú)關(guān)紋理圖像;
(33) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),計(jì)算出形 狀和動(dòng)作無(wú)關(guān)紋理圖像上每個(gè)像素的可信度指標(biāo)。
(34) 使用形狀和動(dòng)作無(wú)關(guān)紋理圖像,設(shè)置人臉紋理模型中每個(gè)像素 高斯分布的均值,設(shè)置每個(gè)像素的可信度指標(biāo),并根據(jù)可信度指標(biāo)計(jì)算每 個(gè)像素的初始化完成度指標(biāo)。
(4) 使用三維可變形人臉網(wǎng)格模型和人臉紋理模型,采用圖像配準(zhǔn) 的方法,在視頻圖像序列中對(duì)人臉位置、姿態(tài)和動(dòng)作進(jìn)行實(shí)時(shí)跟蹤。在圖 像配準(zhǔn)過(guò)程中,使用人臉紋理模型上每個(gè)像素的可信度指標(biāo)和初始化完成 度指標(biāo),參與計(jì)算三維可變形人臉網(wǎng)格模型的位置、姿態(tài)和動(dòng)作參數(shù)。每 個(gè)像素的可信度指標(biāo)是由對(duì)當(dāng)前幀進(jìn)行跟蹤后的三維可變形人臉網(wǎng)格模 型的姿態(tài)確定的。具體來(lái)說(shuō),是由三維可變形人臉網(wǎng)格上三角形面法線方 向與圖像平面法線方向的夾角確定的。
(5) 使用人臉紋理模型和PCA人臉子空間,對(duì)實(shí)時(shí)跟蹤的結(jié)果進(jìn)行 評(píng)估。進(jìn)行評(píng)估時(shí),使用人臉紋理模型上每個(gè)像素的可信度指標(biāo)和初始化 完成度指標(biāo),參與計(jì)算評(píng)估結(jié)果。每個(gè)像素的可信度指標(biāo)是由對(duì)當(dāng)前幀進(jìn) 行跟蹤后的三維可變形人臉網(wǎng)格模型的姿態(tài)確定的。具體來(lái)說(shuō),是由三維 可變形人臉網(wǎng)格上三角形面法線方向與圖像平面法線方向的夾角確定的。
(6) 根據(jù)評(píng)估結(jié)果,確定是否更新人臉紋理模型,是否在下一幀視 頻圖像中重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,以及是否重新初始化 人臉紋理模型。包括以下步驟
(61)如果評(píng)估結(jié)果顯示跟蹤正確,則更新人臉紋理模型,并在下一 幀中繼續(xù)跟蹤;否則,不更新人臉紋理模型,并累計(jì)跟蹤不正確的次數(shù)。
8(62) 如果評(píng)估結(jié)果顯示跟蹤不正確,并且累計(jì)跟蹤不正確的次數(shù)達(dá) 到設(shè)定值,則重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,并在下一幀中使 用這一檢測(cè)和定位結(jié)果作為跟蹤的初始值。
(63) 如果評(píng)估結(jié)果顯示跟蹤不正確,并且累計(jì)跟蹤不正確的次數(shù)達(dá)
到另一設(shè)定值,則重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,重新初始化 人臉紋理模型,并在下一幀中使用這一檢測(cè)和定位結(jié)果作為跟蹤的初始 值。
本發(fā)明的有益效果通過(guò)采用上述步驟,可以實(shí)現(xiàn)對(duì)視頻流中的人臉
及人臉動(dòng)作的自動(dòng)檢測(cè)、定位和實(shí)時(shí)跟蹤。在檢測(cè)和定位階段,使用PCA
模型進(jìn)行評(píng)估,保證了檢測(cè)和定位的準(zhǔn)確性。由于人臉紋理模型是在跟蹤 前的檢測(cè)和定位階段進(jìn)行初始化的,所以不需要針對(duì)特定使用者進(jìn)行提前 訓(xùn)練的過(guò)程,可以適用于任何使用者。使用三維可變形人臉網(wǎng)格進(jìn)行位置、 姿態(tài)和動(dòng)作的跟蹤,可以適用于頭部姿態(tài)和表情具有較大幅度變化的情
況,動(dòng)作跟蹤精細(xì)。同時(shí)使用人臉紋理模型和PCA模型對(duì)每一幀跟蹤的結(jié)
果進(jìn)行評(píng)估,保證了跟蹤的準(zhǔn)確性,以及在極端情況跟蹤出現(xiàn)異常中斷的 時(shí)候能夠采用重新檢測(cè)和定位等方式重新恢復(fù)跟蹤。在跟蹤過(guò)程中實(shí)時(shí)更 新人臉紋理模型,保證了跟蹤算法對(duì)于光線變化具有一定魯棒性。由于采 用了隸屬于人臉紋理模型每個(gè)像素可信度指標(biāo),本方法具有對(duì)姿態(tài)和表情 變化的高度穩(wěn)定性。
圖1為本發(fā)明的人臉及人臉動(dòng)作檢測(cè)和跟蹤方法的流程圖; 圖2為本發(fā)明使用的AAM模型示意圖3為初始化三維人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù)步驟的流程
圖4為三維可變形人臉網(wǎng)格模型和坐標(biāo)軸方向定義的示意圖; 圖5為為了確定三維可變形人臉網(wǎng)格模型的參數(shù)^而取的34個(gè)點(diǎn)的 位置;
圖6 (a) 圖6 (d)為形狀和動(dòng)作無(wú)關(guān)紋理圖像示意圖7 U) 圖7 (d)為形狀和動(dòng)作無(wú)關(guān)紋理圖像每個(gè)像素對(duì)應(yīng)的可信度指標(biāo)。的示意圖8為使用本發(fā)明提供的方法進(jìn)行人臉及人臉動(dòng)作跟蹤示例。
具體實(shí)施例方式
參見(jiàn)圖1,本發(fā)明提供了一種人臉及人臉動(dòng)作檢測(cè)和跟蹤方法,按照
以下步驟實(shí)施,其中,步驟(1) (3)為檢測(cè)和定位階段,發(fā)生在輸入 視頻序列的前若干幀,步驟(4) (6)為跟蹤階段,發(fā)生在后續(xù)視頻序
列的每一幀
(1)采用自動(dòng)人臉檢測(cè)和定位算法,對(duì)輸入視頻圖像上人臉及人臉 關(guān)鍵點(diǎn)位置進(jìn)行檢測(cè)和定位。
人臉檢測(cè)方法采用了 Adaboost和Cascade結(jié)合的人臉?lè)诸惼?,這一 方法根據(jù)文獻(xiàn)(Viola P. , Rapid object detection using a Boosted cascade of simple features, In Proc IEEE Conference on Computer Vision and Pattern Recognition, pp:511—518, 2001)中提出的算法實(shí) 現(xiàn)為了方便專利審查,也為了幫助公眾更直接地理解發(fā)明,對(duì)于那些就滿 足專利法第26條第3款(說(shuō)明書應(yīng)清楚、完整地描述發(fā)明)的要求而言 必不可少的內(nèi)容,不能采用引證其他文件或者本申請(qǐng)中其他段落的方式撰 寫,而應(yīng)當(dāng)將其具體內(nèi)容寫入說(shuō)明書中。矩形Haar特征通過(guò)計(jì)算圖像中 相鄰區(qū)域像素灰度差,對(duì)人臉圖像的灰度分布進(jìn)行表達(dá)。為了從大量特征 中選擇最具分類能力的有效特征,使用了基于Adaboost的統(tǒng)計(jì)學(xué)習(xí)算法 在。為了提高人臉檢測(cè)的速度,采用了層次結(jié)構(gòu),即,相對(duì)較少的弱分類 器結(jié)合形成強(qiáng)分類器,多個(gè)強(qiáng)分類器串聯(lián)進(jìn)行分類,被前級(jí)強(qiáng)分類器判斷 為非人臉的圖像不再輸入后級(jí)分類器,只有被所有強(qiáng)分類器都判斷為人臉 的圖像才作為人臉檢測(cè)結(jié)果輸出。
人臉關(guān)鍵點(diǎn)定位采用了 AAM (Active Appearance Model)方法,這一 方法根據(jù)文獻(xiàn) (I. Matthews, S. Baker, Active Appearance Models Revisited, International Journal of Computer Vision, v60, n2, ppl35-164, November, 2004)中提出的算法實(shí)現(xiàn)為了方便專利審查,也 為了幫助公眾更直接地理解發(fā)明,對(duì)于那些就滿足專利法第26條第3款 (說(shuō)明書應(yīng)清楚、完整地描述發(fā)明)的要求而言必不可少的內(nèi)容,不能采用引證其他文件或者本申請(qǐng)中其他段落的方式撰寫,而應(yīng)當(dāng)將其具體內(nèi)容 寫入說(shuō)明書中。在這種方法中,形狀模型和紋理模型用來(lái)表示人臉,每個(gè) 模型都是由平均參數(shù)加上若干變化參數(shù)組成的。參數(shù)與人臉形狀和紋理的 對(duì)應(yīng)關(guān)系由使用標(biāo)定好的人臉圖像進(jìn)行的訓(xùn)練過(guò)程得出。在進(jìn)行關(guān)鍵點(diǎn)定 位時(shí),為了提高速度,采用了反轉(zhuǎn)合成圖像對(duì)齊方法。
我們使用的AM1模型由87個(gè)關(guān)鍵點(diǎn)組成,見(jiàn)圖2,將進(jìn)行關(guān)鍵點(diǎn)定位 后,這87個(gè)關(guān)鍵點(diǎn)在圖像坐標(biāo)系中的坐標(biāo)記為尸扁,=(^雄,,,少扁,,)7', z = o,...,86。采用320X240的彩色視頻圖像作為輸入,轉(zhuǎn)換為灰度圖像后, 使用上述方法進(jìn)行人臉檢測(cè)和關(guān)鍵點(diǎn)定位,完成一次人臉檢測(cè)和人臉關(guān)鍵 點(diǎn)定位的總時(shí)間小于100ms。
(2)使用檢測(cè)和定位的結(jié)果對(duì)三維可變形人臉網(wǎng)格模型的形狀、位 置和姿態(tài)進(jìn)行初始化在此處,不能采用"流程如圖3所示"這樣的表達(dá)方 式,而應(yīng)對(duì)照?qǐng)D3對(duì)整個(gè)流程進(jìn)行詳細(xì)的描述,以符合專利法實(shí)施細(xì)則第 18條的規(guī)定。
我們使用的三維可變形人臉網(wǎng)格模型的示意圖見(jiàn)圖4,這一模型根據(jù) Candide-3t莫型(J. Ahlberg, CANDIDE-3-An Updated Parametrized Face, Dept. Elect. Eng. , Link6ping Univ. , Sweden, 2001, Tech. Rep. LiTH-ISY-R-2326.)修改而來(lái)。我們使用的三維可變形人臉網(wǎng)格模型在 Candide-3模型的基礎(chǔ)上增加了人臉兩側(cè)頂點(diǎn)和面的數(shù)量,以增強(qiáng)頭部姿 態(tài)變化較大條件下的跟蹤穩(wěn)定性;并且,網(wǎng)格模型上每一個(gè)三角形的三個(gè) 頂點(diǎn)的編號(hào)都按照順時(shí)針的次序重新進(jìn)行了排列,可以在網(wǎng)格模型的參數(shù) 變化后,計(jì)算出每個(gè)三角形面的法向方向。三維可變形人臉網(wǎng)格模型的形
狀可以用一個(gè)向量表示^(x^,^…^,;v^f ,其中"=121為網(wǎng)格頂點(diǎn)數(shù)量, 0c,,乂,z,f為網(wǎng)格頂點(diǎn)坐標(biāo),卜1,...^,網(wǎng)格頂點(diǎn)用尸,表示,S=0c,,y,,Z,)7'cg。
網(wǎng)格模型的形狀是可以變化的,即
g = g + Srs(1)
其中g(shù)為平均形狀,&,為形狀變化增量,A力為動(dòng)作變化增量,前者描述 網(wǎng)格模型針對(duì)不同的人臉在整體形狀上的變化,如臉的高度,寬度,兩眼 的距離,鼻子、嘴的位置等,后者描述臉部動(dòng)作(即表情)引起的網(wǎng)格形 狀的變化,如張嘴,鈹眉等。S和^分別為形狀變化和動(dòng)作變化矩陣,矩陣的每一列都對(duì)應(yīng)一種獨(dú)立的變化模式。^和^分別為形狀變化和動(dòng)作變 化系數(shù)向量,改變他們的值,就可以使網(wǎng)格形狀g產(chǎn)生變化。
在本發(fā)明提供的方法中,形狀變化系數(shù)^是在檢測(cè)和定位以后確定 的,在跟蹤過(guò)程中不再發(fā)生改變,除非跟蹤失敗,需要重新初始化網(wǎng)格模 型;動(dòng)作變化系數(shù)^在跟蹤過(guò)程中根據(jù)每一幀圖像上人臉的動(dòng)作進(jìn)行調(diào) 整,在檢測(cè)和定位階段,假設(shè)^中的每個(gè)值都為0,即人臉為中性表情。 人臉的動(dòng)作跟蹤的結(jié)果即由r,表達(dá)。另外,檢測(cè)定位和跟蹤階段都需要確 定人臉三維網(wǎng)格模型的位置和姿態(tài)參數(shù),即對(duì)人臉位置和姿態(tài)跟蹤的結(jié) 果,用六個(gè)參數(shù)表示,分別為模型繞依附于圖像的直角坐標(biāo)系三個(gè)坐標(biāo) 軸的旋轉(zhuǎn)角度A, ,A,模型在圖像坐標(biāo)系中的平移量^, ~,以及將 網(wǎng)格模型g變化到圖像坐標(biāo)系所需的尺度變換系數(shù)"綜上所述,在檢測(cè) 和定位階段,需要確定的參數(shù)記為/^(& A人AA^)、在跟蹤階段,需 要確定的參數(shù)記為"(^AHf一,、f 。
為了將網(wǎng)格模型g變換到依附于圖像的直角坐標(biāo)系,即圖像坐標(biāo)系上, 我們采用了弱投影變換
=MO,,x,z,,l)r (2) 其中(",^,f為網(wǎng)格模型第/個(gè)頂點(diǎn)在圖像上的坐標(biāo),M為2X4的投影矩陣, 由^的前6個(gè)分量確定。使用(1)和(2),就可以計(jì)算出任意位置、姿 態(tài)、形狀、動(dòng)作參數(shù)下,三維可變形人臉網(wǎng)格模型的頂點(diǎn)在圖像坐標(biāo)上的
根據(jù)圖3所示的流程,首先,我們使用了 799幅正面人臉圖像,訓(xùn)練 一個(gè)PCA人臉子空間模型。這些圖像來(lái)自799個(gè)不同的人,處于不同的光 照條件下。為了使子空間能夠用較少的維數(shù)表達(dá)盡可能多的人臉紋理和光 照變化,將所有人臉圖像的雙眼和嘴的中心的位置進(jìn)行了對(duì)齊。在本發(fā)明 提出的方法中,PCA人臉子空間模型用于判斷人臉紋理是否為正常的人臉 圖像。這一判斷依賴于下面定義的相似性測(cè)度
<formula>formula see original document page 12</formula>
其中M為PCA人臉子空間的維數(shù),x為人臉紋理圖像,e是使用PCA模型
對(duì)輸入人臉紋理進(jìn)行近似時(shí)產(chǎn)生的重建誤差,A,是PCA中#個(gè)最大的特征值,C是將人臉紋理投影到PCA人臉子空間時(shí)的投影系數(shù),/^是訓(xùn)練PCA
模型時(shí),除了最大的M個(gè)特征值以外,其它特征值的算術(shù)平均值。
在使用人臉檢測(cè)和關(guān)鍵點(diǎn)定位算法得到AAM模型所定義的人臉上87 個(gè)關(guān)鍵點(diǎn)的坐標(biāo)戶皿,,后,對(duì)三維可變形人臉網(wǎng)格模型的位置、姿態(tài)和形狀
參數(shù)進(jìn)行初始化,即通過(guò)P^,, (/ = 0,...,86)確定向量p的值。為了實(shí)現(xiàn)這
一目的,我們從AAM模型中和三維人臉網(wǎng)格模型中選擇了 34對(duì)具有相同 定義的點(diǎn)對(duì)。相同定義的點(diǎn)對(duì)是指在兩個(gè)模型中,兩個(gè)點(diǎn)分別所處的相對(duì) 于人臉器官的位置是相同的,例如都是左眼外眼角的點(diǎn),或者都是左側(cè)嘴 角的點(diǎn),等等。三維人臉網(wǎng)格模型上的這34個(gè)點(diǎn)的選取見(jiàn)圖5,它們?cè)趫D 像平面上的坐標(biāo)記為K,^y, / = 0,...,33,可以通過(guò)(1) (2)計(jì)算出來(lái)。 AAM模型上對(duì)應(yīng)的34個(gè)點(diǎn)在圖像平面上的坐標(biāo)記為(。,G.f, y = 0,...,33。
(~,,/可以根據(jù)定義,由/^,計(jì)算出來(lái),例如
0^25 , ^25 )
最小化(^,^y和(^G:r之間的距離,就可以求出三維人臉網(wǎng)格模型的
參數(shù)p,即最小化能量函數(shù)
^)=z
>0
2(4)
直接求使(4)最小化的p容易引起過(guò)擬合現(xiàn)象,因此,我們采取了 一種最大化后驗(yàn)概率的方式,即在已知三維人臉網(wǎng)格模型上34個(gè)點(diǎn)的位 置分布F的條件下,尋找合適的參數(shù)p最大化后驗(yàn)概率p(pl"。根據(jù)貝葉 斯公式,
M川,)i("P)iV) (5)
13其中第一項(xiàng),當(dāng)p確定后其概率與A,。y的分布相關(guān),假設(shè)(^,v/'和
^,//之間的距離為高斯分布,方差為^,則/7(^ip) exp
2cr
《
;而
F 乂
第二項(xiàng),假設(shè)先驗(yàn)概率Ap)也為高斯分布w(A ),貝L 尸(p) exp -:^"ZO-°
L 2 ' J
要使(5)式最大化,只需要最小化a.
為了求出argmin五,使用牛頓迭代法
p = p + a(p*_p) 其中a為大于0,遠(yuǎn)小于l的因子,//由下式求得:
g巾
、、 乂
1 5% 2
---^ +——
乂
根據(jù)檢測(cè)和定位的結(jié)果,采用上述方法求出三維可變形人臉網(wǎng)格模型 的形狀、位置和姿態(tài)參數(shù)后,就可以采用紋理映射的方法,計(jì)算出形狀和 動(dòng)作無(wú)關(guān)紋理圖像。
將三維可變形人臉網(wǎng)格模型上的每個(gè)三角形面在輸入圖像上所覆蓋 的像素都映射到一幅圖像上固定的位置,就形成了形狀和動(dòng)作無(wú)關(guān)紋理圖 像。稱為形狀和動(dòng)作無(wú)關(guān)紋理圖像的原因是,理想情況下,不論輸入圖像 中的人臉是什么形狀,做出什么動(dòng)作,只要三維可變形人臉網(wǎng)格模型的參 數(shù)^和6是準(zhǔn)確的,則映射后的圖像上的人臉總是保持不變的,各個(gè)人臉
1420
器官只分布在固定的位置上。實(shí)際中,由于網(wǎng)格模型是一個(gè)三維模型,總 有一些三角形面與圖像平面成接近垂直的角度,在這種情況下,投影的結(jié) 果會(huì)產(chǎn)生很大的變形。另外,當(dāng)人臉網(wǎng)格模型存在較大的面外旋轉(zhuǎn)時(shí),一 些三角形面的正方向(指向網(wǎng)格模型外的方向)與圖像平面向外的法線方 向的夾角大于90度,這些三角形面投影得到的像素也是沒(méi)有用處的。所 以,在使用形狀和動(dòng)作無(wú)關(guān)紋理圖像時(shí),需要考慮到三角形面角度變化引 起的圖像變形問(wèn)題。圖6是一些網(wǎng)格參數(shù)和對(duì)應(yīng)的形狀和動(dòng)作無(wú)關(guān)紋理圖
像的例子,其中圖6 (a)、圖6 (b)和圖6 (c)為參數(shù)正確的情況,圖6 (d)為參數(shù)不正確的情況??梢钥闯?,當(dāng)參數(shù)正確時(shí),在人臉的正面部 分,紋理圖像基本是動(dòng)作無(wú)關(guān)的。
根據(jù)輸入圖像和三維可變形人臉網(wǎng)格模型的參數(shù)計(jì)算形狀和動(dòng)作無(wú)
關(guān)紋理圖像的過(guò)程可以用下面的式子表示
jc =『0,rs,6) (6)
其中x為形狀和動(dòng)作無(wú)關(guān)紋理圖像,y為輸入的視頻圖像。在跟蹤過(guò)程中, 由于&是固定不變的,所以映射過(guò)程可以簡(jiǎn)化為
jc =『o,6) (7)
在計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像時(shí),由于圖像上每個(gè)像素點(diǎn)屬于哪個(gè) 三角形面,以及在三角形面中的相對(duì)位置是什么,是固定的,所以可以提 前計(jì)算出來(lái)。即保存形狀和動(dòng)作無(wú)關(guān)紋理圖像上每個(gè)像素點(diǎn)的對(duì)應(yīng)的三角 形面編號(hào),以及到三角形三個(gè)頂點(diǎn)的相對(duì)距離,在進(jìn)行(6)或(7)的計(jì) 算時(shí),直接使用這些保存的數(shù)據(jù),找到形狀和動(dòng)作無(wú)關(guān)紋理圖像上每個(gè)像 素在輸入圖像上對(duì)應(yīng)的坐標(biāo)位置,使用輸入圖像上這個(gè)坐標(biāo)位置周圍的像 素進(jìn)行插值,或者使用輸入圖像上距離這個(gè)位置最近的像素的值作為輸 出,可以顯著提高計(jì)算速度。
在計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像時(shí),由于圖像上每個(gè)像素點(diǎn)屬于哪個(gè) 三角形面是確定的,所以可以根據(jù)當(dāng)前形狀、姿態(tài)、動(dòng)作參數(shù)下的人臉三 維網(wǎng)格模型形狀g,計(jì)算出每個(gè)像素點(diǎn)所屬的三角形面的法線方向。前面 提到,這一方向與圖像平面向外的法線方向之間的夾角越小,則投影之后 像素的值具有越高的準(zhǔn)確性或可用性。將形狀和動(dòng)作無(wú)關(guān)紋理圖像上每一
15像素都具有的這種屬性稱為可信度指標(biāo),用r,表示,則有
其中^是單調(diào)下降函數(shù),且有^0) = 1, W2) = 0,仍是這個(gè)像素所在的三 角形面的法向方向與圖像平面向外的法線方向之間的夾角。
由(8)式計(jì)算出的可信度指標(biāo)r,將在后面的步驟中使用,可以起到增
強(qiáng)跟蹤算法對(duì)頭部姿態(tài)變化魯棒性的作用。圖7 (a) 圖7 (d)是可信
度指標(biāo)c的示意圖,每組圖像右側(cè)的較小圖像表示左側(cè)圖像中網(wǎng)格狀態(tài)下 對(duì)應(yīng)的形狀和動(dòng)作無(wú)關(guān)紋理圖像上每個(gè)像素的可信度指標(biāo),亮度越高表示 可信度指標(biāo)越大。
得到形狀和動(dòng)作無(wú)關(guān)紋理圖像后,就可以使用(3)式,對(duì)其與人臉 子空間的接近程度進(jìn)行評(píng)估。如果(3)式計(jì)算的結(jié)果大于設(shè)定值,說(shuō)明 形狀和動(dòng)作無(wú)關(guān)紋理圖像是正常人臉,進(jìn)而說(shuō)明前面人臉檢測(cè)和關(guān)鍵點(diǎn)定 位的結(jié)果是準(zhǔn)確的;反之,則說(shuō)明前面人臉檢測(cè)和關(guān)鍵點(diǎn)定位的結(jié)果是不 準(zhǔn)確的。
根據(jù)圖3的流程,需要將人臉檢測(cè)及關(guān)鍵點(diǎn)定位,計(jì)算三維人臉網(wǎng)格 模型參數(shù),計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像,以及對(duì)其進(jìn)行評(píng)估這樣的過(guò)程 執(zhí)行多次。每次執(zhí)行一遍后,如果評(píng)估結(jié)果顯示人臉檢測(cè)及關(guān)鍵點(diǎn)定位的 結(jié)果是正確的,則將這次的三維人臉網(wǎng)格模型參數(shù)保存下來(lái)。當(dāng)人臉檢測(cè) 及關(guān)鍵點(diǎn)定位結(jié)果正確的次數(shù)大于某個(gè)設(shè)定值,例如5次后,則認(rèn)為檢測(cè) 和定位階段結(jié)束,對(duì)這5次正確檢測(cè)和定位時(shí)的三維人臉網(wǎng)格模型參數(shù)計(jì) 算平均值,作為這一步最終輸出的人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù)。 后面的跟蹤過(guò)程以這一組位置和姿態(tài)參數(shù)值為初值,而人臉網(wǎng)格模型的形 狀參數(shù)將保持不變。
(3)初始化人臉紋理模型。
人臉紋理模型是一幅與形狀和動(dòng)作無(wú)關(guān)紋理圖像同樣尺寸的圖像,圖 像上的每個(gè)像素都符合高斯分布WU,c7,),并且?guī)в辛硗庖粋€(gè)屬性初始 化完成度指標(biāo)/ ,, (^/ ,d。在本文中,人臉紋理模型有時(shí)也指p,組成的 圖像。
前面已經(jīng)提到,如果三維可變形人臉網(wǎng)格模型對(duì)人臉位置、姿態(tài)、動(dòng)
16作的跟蹤是正確的,則在形狀和動(dòng)作無(wú)關(guān)紋理圖像中可信度指標(biāo)較高的部 分,像素亮度分布是基本保持不變的。這種相對(duì)不變性就用人臉紋理模型 來(lái)描述,即用每個(gè)像素亮度的高斯分布A^/,,a,)來(lái)描述。
人臉紋理模型在跟蹤階段發(fā)揮作用,但是要在檢測(cè)和定位階段就開(kāi)始
進(jìn)行初始化,并在跟蹤過(guò)程中不斷更新。在步驟(2)中,已經(jīng)使用PCA 人臉子空間對(duì)若干次人臉檢測(cè)和定位的結(jié)果進(jìn)行了評(píng)估,取其中用(3)
式計(jì)算出的相似性測(cè)度最高的形狀和動(dòng)作無(wú)關(guān)紋理圖像,令人臉紋理模型 的—,等于此形狀和動(dòng)作無(wú)關(guān)紋理圖像,及
= x, (9)
并令
〃,=化 (10) 其中,A為大于0,小于1的常數(shù),r,為用(8)式計(jì)算出的可信度指標(biāo)。
人臉紋理模型的CT,表示每幀跟蹤時(shí)獲得的形狀和動(dòng)作無(wú)關(guān)紋理圖像中,每
個(gè)像素亮度變化的劇烈程度。在初始化時(shí),可以將它們?cè)O(shè)置為一個(gè)相同的
值,例如0.02 (用0 1的浮點(diǎn)數(shù)表示亮度),然后在跟蹤的過(guò)程中進(jìn)行更 新;也可以讓系統(tǒng)試運(yùn)行一段時(shí)間,得到更新比較穩(wěn)定后的c7,,作為最終 設(shè)計(jì)完成的系統(tǒng)的a,的初始值,然后同樣在跟蹤的過(guò)程中進(jìn)行更新。
經(jīng)過(guò)人臉紋理模型的初始化后,可以想象,由于檢測(cè)和定位階段發(fā)生 在視頻流的前若干幀,前面假設(shè)這時(shí)人臉處在正面姿態(tài),所以,形狀和動(dòng) 作無(wú)關(guān)紋理圖像中間部分的可信度指標(biāo)接近于1,兩側(cè)部分的可信度指標(biāo) 接近于0。如果(10)式中的A取值為1,則初始化后的人臉紋理模型中間
部分的初始化完成度指標(biāo)A接近于1,兩側(cè)部分的初始化完成度指標(biāo)接近 于0。在后面的步驟(6)中可以看到,初始化完成度指標(biāo)決定著人臉紋理 模型每一個(gè)像素點(diǎn)模型參數(shù)的更新速度,也就是說(shuō),人臉紋理模型中間部 分在跟蹤過(guò)程中的更新速度將會(huì)比較慢,而兩側(cè)部分的更新速度將在開(kāi)始 的一段時(shí)間內(nèi)將會(huì)比較快,直到它們對(duì)應(yīng)的初始化完成度指標(biāo)也接近1。 人臉紋理模型兩側(cè)部分的更新主要發(fā)生在頭部繞y軸發(fā)生旋轉(zhuǎn)的時(shí)候。
經(jīng)過(guò)前面步驟,檢測(cè)和定位階段結(jié)束,人臉紋理模型己經(jīng)建立起來(lái)。 在后續(xù)的每一幀中,除非發(fā)生跟蹤中斷的特殊情況,都使用三維可變形人 臉網(wǎng)格模型和人臉紋理模型,對(duì)視頻序列中的人臉的位置、姿態(tài)和動(dòng)作參數(shù)6進(jìn)行跟蹤,即進(jìn)入了跟蹤階段。
(4)使用三維可變形人臉網(wǎng)格模型和人臉紋理模型,采用圖像配準(zhǔn) 的方法,在視頻圖像序列中對(duì)人臉位置、姿態(tài)和動(dòng)作進(jìn)行實(shí)時(shí)跟蹤。
前面已經(jīng)提到,如果三維可變形人臉網(wǎng)格模型對(duì)人臉位置、姿態(tài)、動(dòng) 作的跟蹤是正確的,則在形狀和動(dòng)作無(wú)關(guān)紋理圖像中可信度指標(biāo)較高的部 分,像素亮度分布是基本保持不變的,即符合人臉紋理模型。所以,可以 利用這種不變性,對(duì)人臉網(wǎng)格模型參數(shù)6進(jìn)行跟蹤,即求使下面的損失函 數(shù)最小的參數(shù)6,,下標(biāo) 表示是在當(dāng)前時(shí)刻f輸入的圖像上進(jìn)行跟蹤
<formula>formula see original document page 18</formula>
其中W為形狀和動(dòng)作無(wú)關(guān)紋理圖像中的像素?cái)?shù)。暫時(shí)不考慮可信度指標(biāo)的 問(wèn)題,使(11)式最小的6,,可以使下式成立
<formula>formula see original document page 18</formula>
其中x(W根據(jù)(7)式計(jì)算
<formula>formula see original document page 18</formula>
考慮到6,是在V,上變化得到的,對(duì)『(XA)在^處進(jìn)行一階泰勒展開(kāi),得:
<formula>formula see original document page 18</formula>
其中G,是梯度矩陣
<formula>formula see original document page 18</formula>
結(jié)合(12) (13) (14)式,可得
<formula>formula see original document page 18</formula>
所以,
<formula>formula see original document page 18</formula>其中,Gf為G,的偽逆矩陣,G,、(G,G,r1《。使用(16)式中的A6,可以 對(duì)參數(shù)6進(jìn)行更新
6' = 6 + 一 (17) e' = e(6') (18)
其中P為0到1之間的實(shí)數(shù)。如果e'小于。則用(17)式更新參數(shù)"然 后繼續(xù)(16) (17) (18)的迭代過(guò)程,直到達(dá)到設(shè)定的收斂條件。如果e' 不小于"則嘗試在(17)式中使用較小的p。如果/ 取很小仍不能使誤 差減小,也認(rèn)為達(dá)到了收斂條件,從而完成對(duì)參數(shù)6的更新。
在(16)式中,沒(méi)有考慮到遮擋問(wèn)題。遮擋的結(jié)果是使(16)式中的 ,0;,,6,_,)-&1)項(xiàng)在某些像素點(diǎn)產(chǎn)生很大的值,這種偏差不是正常的人臉 運(yùn)動(dòng)和動(dòng)作引起的,所以會(huì)對(duì)A6的計(jì)算產(chǎn)生不利影響。采用一個(gè)A^xW的 對(duì)角矩陣丄,對(duì)每個(gè)像素的偏差部分進(jìn)行加權(quán),可以在一定程度上去除遮擋
的影響。A對(duì)角線上第f個(gè)元素的計(jì)算公式為
1 剩
射
《,'A-')'一"-'-' (19)
所以,(16)式變成
A6 = -Gfz,(Pro,A—,)-//,_,) (20)
在(20)式中,沒(méi)有考慮到形狀和動(dòng)作無(wú)關(guān)紋理圖像中可信度指標(biāo)的 問(wèn)題。為了使可信度指標(biāo)低的點(diǎn)不對(duì)A6的計(jì)算產(chǎn)生影響,采用一個(gè)WxiV的 對(duì)角矩陣《對(duì)每個(gè)像素的偏差部分進(jìn)行加權(quán)?!秾?duì)角線上第/個(gè)元素的計(jì)
算公式為
《,(,X"A (21)
其中r,根據(jù)(8)式計(jì)算,A由(10)式初始化,跟蹤過(guò)程中的更新方法將 在下面的步驟(6)中進(jìn)行介紹。所以,(20)式變成
cr ......
,.,, > c
《△6 = -(『(y,, V,) - ) ( 22 )
(22)式是計(jì)算參數(shù)更新的最終公式。
在判斷迭代是否收斂時(shí),要考察由(11)式?jīng)Q定的誤差是否減小???慮到形狀和動(dòng)作無(wú)關(guān)紋理圖像中可信度指標(biāo)的問(wèn)題,同樣需要對(duì)e的計(jì)算
方法進(jìn)行加權(quán)
啦)=|>,|^^| /|>, (23) '.=1 LJ / '=1
其中/t,由(21)式?jīng)Q定。
在上述迭代計(jì)算參數(shù)6的過(guò)程中,需要根據(jù)(15)式計(jì)算形狀和動(dòng)作 無(wú)關(guān)紋理圖像對(duì)參數(shù)6的梯度矩陣g, 。 g,的每一列都有7V個(gè)元素,對(duì)應(yīng)6的 一個(gè)分量。將g,的第/列記為c^,則^為形狀和動(dòng)作無(wú)關(guān)紋理圖像對(duì)參數(shù)
6的第y個(gè)分量的梯度向量。在實(shí)際中,使用數(shù)值差分的方法計(jì)算A:
G —,(少,A一,+c^)-『(乂,V,) (24)
其中數(shù)字5是一個(gè)適當(dāng)?shù)牟罘植介L(zhǎng),9,是一個(gè)長(zhǎng)度和6相同的向量,第y個(gè)
分量為1,其它分量都為0。為了獲得更高的計(jì)算精度,采用使用多個(gè)不
同的步長(zhǎng)計(jì)算差分再取平均的方法計(jì)算^ :
"丄g 『U,V,+化^)-pf(少,a—,) (25)
其中數(shù)字《為圍繞參數(shù)6的第y個(gè)分量計(jì)算差分時(shí)取的最小步長(zhǎng),《是要
取的不同步長(zhǎng)的次數(shù),例如可取6或者8。
容易看出,在使用(25)式計(jì)算梯度矩陣g,的過(guò)程中,需要多次使用 (7)式計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像。例如當(dāng)參數(shù)6的維數(shù)為12,《取8 時(shí),計(jì)算一次g,就需要使用96次(7)式。在對(duì)一幀視頻圖像進(jìn)行處理時(shí), 迭代往往要進(jìn)行多次才能收斂,假如使用(22)式的次數(shù)為5次,則需要 96x5 = 480次使用(7)式計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像,這會(huì)帶來(lái)較大 的計(jì)算負(fù)擔(dān)。事實(shí)上,在一般的跟蹤過(guò)程中,使用者常常不會(huì)做出使參數(shù) 6的所有分量都發(fā)生顯著變化的動(dòng)作,g,中的一些列,即一些形狀和動(dòng)作 無(wú)關(guān)紋理圖像對(duì)參數(shù)6分量的梯度向量,在相鄰的幀之間變化很小,可以 利用這一特點(diǎn),減少對(duì)g,中的一些列的計(jì)算。我們使用的方法是,考慮到
20動(dòng)作無(wú)關(guān)紋理圖像中的部分區(qū)域產(chǎn)生影響,
在計(jì)算A時(shí),對(duì)ffO;,D和『Ov,A-2)這兩幅圖像中會(huì)受到參數(shù)6的第y個(gè)
分量影響的部分進(jìn)行比較,即計(jì)算兩幅圖像這部分區(qū)域上的均方誤差。如 果誤差小于某個(gè)設(shè)定值,則不再重新計(jì)算G,.,而是繼續(xù)使用上一幀跟蹤時(shí) 用過(guò)的A。使用這種方法,即使對(duì)于使用者不停地做出各種頭部運(yùn)動(dòng)和面
部動(dòng)作的視頻,也能減小計(jì)算G,時(shí)的計(jì)算量30X以上。如果視頻中目標(biāo)的 動(dòng)作較少,還可以將計(jì)算量減少得更多。
經(jīng)過(guò)步驟(4),完成了對(duì)人臉位置、姿態(tài)和動(dòng)作參數(shù)的跟蹤。
(5) 使用人臉紋理模型和PCA人臉子空間,對(duì)實(shí)時(shí)跟蹤的結(jié)果進(jìn)行評(píng)估。
評(píng)估的目的是判斷對(duì)這一幀視頻圖像中的人臉及人臉動(dòng)作的跟蹤是 否準(zhǔn)確,如果準(zhǔn)確,則更新人臉紋理模型,繼續(xù)跟蹤;如果不準(zhǔn)確,則需 要做出相應(yīng)的處理。評(píng)估中,使用了兩個(gè)獨(dú)立的模型,即人臉紋理模型和 PCA人臉子空間模型,同時(shí)使用兩個(gè)模型可以使評(píng)估的結(jié)果更加準(zhǔn)確。
對(duì)于人臉紋理模型,首先根據(jù)在上一步中對(duì)人臉及人臉動(dòng)作跟蹤的結(jié) 果,即參數(shù)6,使用(7) (8)式計(jì)算出形狀和動(dòng)作無(wú)關(guān)紋理圖像和可信度 指標(biāo),然后使用(23)式,計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像與人臉紋理模型 的偏差。如果偏差小于設(shè)定值,則認(rèn)為跟蹤成功,否則認(rèn)為跟蹤失敗。
對(duì)于PCA人臉子空間模型,同樣先使用(7)式計(jì)算出形狀和動(dòng)作無(wú) 關(guān)紋理圖像。為了克服頭部左右旋轉(zhuǎn)角度較大時(shí)引發(fā)的外側(cè)圖像變形,設(shè) 置當(dāng) 的絕對(duì)值大于20度時(shí),就將圖像變形較小的一側(cè)的形狀和動(dòng)作無(wú) 關(guān)紋理圖像作水平鏡像翻轉(zhuǎn),取代另一側(cè)變形較大的部分,形成修正的形 狀和動(dòng)作無(wú)關(guān)紋理圖像。對(duì)形狀和動(dòng)作無(wú)關(guān)紋理圖像使用(3)式計(jì)算與 PCA人臉子空間的相似性測(cè)度,如果結(jié)果大于設(shè)定值,則認(rèn)為跟蹤成功, 否則認(rèn)為跟蹤失敗。
當(dāng)采用兩個(gè)模型評(píng)估的結(jié)果都為跟蹤成功時(shí),最終認(rèn)定跟蹤成功,否 則認(rèn)定跟蹤失敗。
(6) 根據(jù)評(píng)估結(jié)果,確定是否更新人臉紋理模型,是否在下一幀視 頻圖像中重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,以及是否重新初始化 人臉紋理模型。
21參見(jiàn)圖1所示。在這一步驟中,設(shè)置了一個(gè)連續(xù)跟蹤失敗次數(shù)計(jì)數(shù)器 和兩個(gè)判斷跟蹤中斷的閾值,稱為設(shè)定值L和設(shè)定值H。設(shè)定值L和設(shè)定 值H是根據(jù)連續(xù)出現(xiàn)跟蹤失敗的次數(shù),判斷是否出現(xiàn)跟蹤中斷的閾值。設(shè)
定值H大于設(shè)定值L。如果上一步的評(píng)估結(jié)果顯示跟蹤正確,則將連續(xù)跟
蹤失敗次數(shù)計(jì)數(shù)器清0,更新人臉紋理模型,并在下一幀中繼續(xù)跟蹤;否
則,將連續(xù)跟蹤失敗次數(shù)計(jì)數(shù)器加1。如果連續(xù)跟蹤失敗次數(shù)計(jì)數(shù)器的值
達(dá)到了設(shè)定值L,則認(rèn)為發(fā)生了對(duì)同一個(gè)人跟蹤過(guò)程中的跟蹤中斷。這時(shí),
被跟蹤的對(duì)象沒(méi)有改變,也就是三維可變形人臉網(wǎng)格模型的形狀參數(shù)r,和 人臉紋理模型都不需改變,只需要重新找到人臉的位置和姿態(tài)。所以,重 新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,并在下一幀中使用這一檢測(cè)和定 位結(jié)果作為跟蹤的初始值。如果連續(xù)跟蹤失敗次數(shù)計(jì)數(shù)器的值達(dá)到了設(shè)定
值H,則認(rèn)為產(chǎn)生跟蹤中斷的原因是被跟蹤的對(duì)象發(fā)生了改變,這時(shí),三
維可變形人臉網(wǎng)格模型的形狀參數(shù)r,和人臉紋理模型都需要改變。所以, 重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,重新初始化人臉紋理模型,并 在下一幀中使用這一檢測(cè)和定位結(jié)果作為跟蹤的初始值。
在跟蹤過(guò)程中,如果評(píng)估顯示跟蹤正確,則需要更新人臉紋理模型,
其意義是當(dāng)光照條件發(fā)生緩慢變化時(shí),更新人臉紋理模型可以克服關(guān)照 變化帶來(lái)的影響;只有當(dāng)頭部繞y軸發(fā)生旋轉(zhuǎn)時(shí),形狀和動(dòng)作無(wú)關(guān)紋理圖
像中兩側(cè)的區(qū)域的值才有意義,通過(guò)人臉紋理模型的更新過(guò)程,可以將這 部分紋理保存下來(lái),增強(qiáng)頭部姿態(tài)變化較大時(shí)跟蹤的穩(wěn)定性。當(dāng)從/時(shí)刻
過(guò)渡到^1時(shí)刻時(shí),人臉紋理模型的更新按照下面方式進(jìn)行
",=(1-A(,)+^A(,)化 (26)
=G+ ,"(,)-/",(,) )2 (28) A(,+,) = + — (29)
其中a,為更新速度系數(shù)。當(dāng)/小于等于某一設(shè)定值,例如30時(shí),當(dāng) f大于這一設(shè)定值時(shí),r保持不變。。為使用(8)式計(jì)算出的可信度指標(biāo)。 x,為形狀和動(dòng)作無(wú)關(guān)紋理圖像。/t為一個(gè)0到l之間的實(shí)數(shù),控制著初始 化完成度指標(biāo)A的增長(zhǎng)速度。A被限制在不超過(guò)l的范圍內(nèi)。在更新人臉
22紋理模型的時(shí)候,也應(yīng)該考慮到遮擋等因素,因?yàn)槿绻四樇y理模型被不 正常地更新,將會(huì)對(duì)后續(xù)跟蹤過(guò)程產(chǎn)生非常不利的影響。因此需要使用類 似于(19)式的方式,先計(jì)算形狀和動(dòng)作無(wú)關(guān)紋理圖像與人臉紋理模型的 差別,對(duì)于那些差別大于設(shè)定值的像素,認(rèn)為是遮擋等特殊原因造成的, 不對(duì)相應(yīng)的人臉紋理模型中的像素參數(shù)進(jìn)行更新。
本發(fā)明提供的人臉動(dòng)作自動(dòng)檢測(cè)和實(shí)時(shí)跟蹤方法,可以在視頻中自動(dòng) 檢測(cè)人臉位置,并對(duì)人臉位置、姿態(tài)和動(dòng)作進(jìn)行實(shí)時(shí)準(zhǔn)確的跟蹤。在對(duì)姿 態(tài)跟蹤方面,可以穩(wěn)定跟蹤頭部在面內(nèi)任意角度轉(zhuǎn)動(dòng),面外左右方向轉(zhuǎn)動(dòng)
±45度以上,面外上下方向轉(zhuǎn)動(dòng)土30度以上。在面部動(dòng)作方面,可以準(zhǔn) 確跟蹤嘴部動(dòng)作和眉毛動(dòng)作,用動(dòng)作參數(shù)向量r,的形式表達(dá)出張嘴,閉嘴, 微笑,大笑,噘嘴,抿嘴,嘴角下垂,抬眉,皺眉等動(dòng)作細(xì)節(jié)。圖8是對(duì) 一段視頻中的人臉動(dòng)作進(jìn)行跟蹤的截圖,共有9組,每組圖像右側(cè)的4幅 小圖像從上至下依次為人臉紋理模型的均值,當(dāng)前幀的形狀和動(dòng)作無(wú)關(guān)紋 理圖像,人臉紋理模型的初始化完成度指標(biāo),以及當(dāng)前形狀和動(dòng)作無(wú)關(guān)紋 理圖像對(duì)應(yīng)的可信度指標(biāo)。本方法中的檢測(cè)、定位和跟蹤可以對(duì)任何使用 者進(jìn)行,不需要針對(duì)特定使用者的訓(xùn)練過(guò)程。檢測(cè)和定位快速,跟蹤可以 滿足實(shí)時(shí)性要求,對(duì)光照和遮擋等具有一定的魯棒性。在跟蹤中斷之后, 可以自動(dòng)恢復(fù)。此方法在人機(jī)交互,表情分析,游戲娛樂(lè)等領(lǐng)域具有較高 的實(shí)用價(jià)值和廣泛的應(yīng)用前景。
以上所述,僅為本發(fā)明中的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不 局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想 到的變換或替換,都應(yīng)涵蓋在本發(fā)明的包含范圍之內(nèi)。因此,本發(fā)明的保 護(hù)范圍應(yīng)該以權(quán)利要求書的保護(hù)范圍為準(zhǔn)。
2權(quán)利要求
1. 一種基于視頻流的三維人臉動(dòng)作檢測(cè)和跟蹤方法,其特征在于,包括以下步驟(1)采用自動(dòng)人臉檢測(cè)和定位算法,對(duì)輸入視頻圖像上人臉及人臉關(guān)鍵點(diǎn)位置進(jìn)行檢測(cè)和定位;(2)使用檢測(cè)和定位的結(jié)果對(duì)三維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)進(jìn)行初始化;(3)在對(duì)三維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)進(jìn)行初始化的同時(shí),初始化人臉紋理模型;(4)使用三維可變形人臉網(wǎng)格模型和人臉紋理模型,采用圖像配準(zhǔn)的方法,在視頻圖像序列中對(duì)人臉位置、姿態(tài)和動(dòng)作進(jìn)行實(shí)時(shí)跟蹤;(5)使用人臉紋理模型和PCA人臉子空間,對(duì)實(shí)時(shí)跟蹤的結(jié)果進(jìn)行評(píng)估;(6)根據(jù)評(píng)估結(jié)果,確定是否更新人臉紋理模型,是否在下一幀視頻圖像中重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,以及是否重新初始化人臉紋理模型。
2. 如權(quán)利要求l所述的方法,其特征在于,所述步驟(2)包括(21) 使用將雙眼和嘴巴中心三個(gè)點(diǎn)對(duì)齊的人臉樣本,訓(xùn)練一個(gè)PCA 人臉子空間,用于對(duì)檢測(cè)和定位的結(jié)果進(jìn)行評(píng)估;(22) 根據(jù)檢測(cè)和定位的結(jié)果,采用最大化后驗(yàn)概率的方法,調(diào)整三 維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù);(23) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),采用紋理 映射的方法,計(jì)算出形狀和動(dòng)作無(wú)關(guān)紋理圖像;(24) 使用(21)中所述的PCA人臉子空間,對(duì)二維形狀和動(dòng)作無(wú)關(guān) 紋理圖像進(jìn)行評(píng)估;(25) 根據(jù)評(píng)估的結(jié)果,決定如何采用本次人臉檢測(cè)和定位的結(jié)果對(duì) 三維可變形人臉網(wǎng)格模型的形狀、位置和姿態(tài)參數(shù)進(jìn)行初始化。
3. 如權(quán)利要求l所述的方法,其特征在于,所述步驟(3)包括 (31)建立人臉紋理模型為每個(gè)像素都符合高斯分布的灰度圖像,并為每個(gè)像素設(shè)置可信度指標(biāo)和初始化完成度指標(biāo);(32) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),采用紋理 映射的方法,計(jì)算出形狀和動(dòng)作無(wú)關(guān)紋理圖像;(33) 根據(jù)三維可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù),計(jì)算出形 狀和動(dòng)作無(wú)關(guān)紋理圖像上每個(gè)像素的可信度指標(biāo);(34) 使用形狀和動(dòng)作無(wú)關(guān)紋理圖像,設(shè)置人臉紋理模型中每個(gè)像素 高斯分布的均值,設(shè)置每個(gè)像素的可信度指標(biāo),并根據(jù)可信度指標(biāo)計(jì)算每 個(gè)像素的初始化完成度指標(biāo)。
4. 如權(quán)利要求l所述的方法,其特征在于,所述步驟(4)在使用圖 像配準(zhǔn)的方法時(shí),使用人臉紋理模型上每個(gè)像素的可信度指標(biāo)和初始化完 成度指標(biāo),參與計(jì)算三維可變形人臉網(wǎng)格模型的位置、姿態(tài)和動(dòng)作參數(shù)。
5. 如權(quán)利要求l所述的方法,其特征在于,所述步驟(5)在對(duì)實(shí)時(shí) 跟蹤的結(jié)果進(jìn)行評(píng)估時(shí),使用人臉紋理模型上每個(gè)像素的可信度指標(biāo)和初 始化完成度指標(biāo),參與計(jì)算評(píng)估結(jié)果。
6. 如權(quán)利要求l所述的方法,其特征在于,所述步驟(6)包括(61) 如果評(píng)估結(jié)果顯示跟蹤正確,則更新人臉紋理模型,并在下一 幀中繼續(xù)跟蹤;否則,不更新人臉紋理模型,并累計(jì)跟蹤不正確的次數(shù);(62) 如果評(píng)估結(jié)果顯示跟蹤不正確,并且累計(jì)跟蹤不正確的次數(shù)達(dá) 到設(shè)定值,則重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,并在下一幀中使 用這一檢測(cè)和定位結(jié)果作為跟蹤的初始值;(63) 如果評(píng)估結(jié)果顯示跟蹤不正確,并且累計(jì)跟蹤不正確的次數(shù)達(dá) 到另一設(shè)定值,則重新進(jìn)行人臉及人臉關(guān)鍵點(diǎn)的檢測(cè)和定位,重新初始化 人臉紋理模型,并在下一幀中使用這一檢測(cè)和定位結(jié)果作為跟蹤的初始 值。
7. 如權(quán)利要求2所述的方法,其特征在于,所述步驟(25)包括 如果評(píng)估的結(jié)果顯示本次人臉檢測(cè)和定位的結(jié)果是正確的,則記錄下這一 結(jié)果;當(dāng)正確檢測(cè)的次數(shù)達(dá)到設(shè)定值后,對(duì)所有結(jié)果進(jìn)行平均,得到三維 可變形人臉網(wǎng)格的形狀、位置和姿態(tài)參數(shù)初始值。
8. 如權(quán)利要求4或5所述的方法,其特征在于,所述每個(gè)像素的可 信度指標(biāo)是由對(duì)當(dāng)前幀進(jìn)行跟蹤后的三維可變形人臉網(wǎng)格上三角形面的法線方向與圖像平面的法線方向的夾角確定的。
全文摘要
本發(fā)明提出了一種基于視頻流的三維人臉動(dòng)作檢測(cè)和跟蹤方法。該方法首先在視頻圖像中檢測(cè)到人臉和人臉上關(guān)鍵點(diǎn)的位置,初始化用于跟蹤的三維可變形人臉網(wǎng)格模型和人臉紋理模型;然后使用這兩個(gè)模型,采用圖像配準(zhǔn)的方法,對(duì)后續(xù)視頻圖像中人臉的位置、姿態(tài)和面部動(dòng)作進(jìn)行實(shí)時(shí)、持續(xù)的跟蹤;一個(gè)PCA人臉子空間模型用于對(duì)檢測(cè)、定位和跟蹤的結(jié)果進(jìn)行評(píng)估,如果發(fā)現(xiàn)跟蹤中斷,則自動(dòng)采取措施重新恢復(fù)跟蹤。本方法不需要對(duì)特定的使用者進(jìn)行訓(xùn)練,頭部姿態(tài)跟蹤范圍大,面部動(dòng)作細(xì)節(jié)準(zhǔn)確,且對(duì)光照和遮擋具有一定魯棒性,在人機(jī)交互,表情分析,游戲娛樂(lè)等領(lǐng)域具有較高的實(shí)用價(jià)值和廣泛的應(yīng)用前景。
文檔編號(hào)G06K9/62GK101499128SQ20081005718
公開(kāi)日2009年8月5日 申請(qǐng)日期2008年1月30日 優(yōu)先權(quán)日2008年1月30日
發(fā)明者賓 丁, 馮雪濤, 健 姚, 汪曉妍, 王陽(yáng)生 申請(qǐng)人:中國(guó)科學(xué)院自動(dòng)化研究所;北京盛開(kāi)交互娛樂(lè)科技有限公司