范鑫鑫, 楊旭波
(上海交通大學(xué) 軟件學(xué)院, 上海 200240)
語(yǔ)音驅(qū)動(dòng)的口型同步算法
范鑫鑫, 楊旭波
(上海交通大學(xué) 軟件學(xué)院, 上海 200240)
本文提出一種口型動(dòng)畫(huà)同步算法, 可以根據(jù)輸入的語(yǔ)音信號(hào), 生成與該信號(hào)同步的口型動(dòng)畫(huà).該算法分為預(yù)處理與運(yùn)行時(shí)兩個(gè)階段.在預(yù)處理階段, 預(yù)定義一個(gè)基本口型動(dòng)作集合, 然后令設(shè)計(jì)師通過(guò)定義該集合中元素的權(quán)重變化曲線, 來(lái)設(shè)計(jì)不同音素對(duì)應(yīng)的口型動(dòng)畫(huà).在運(yùn)行時(shí)階段, 首先獲取輸入語(yǔ)音信號(hào)對(duì)應(yīng)的音素序列, 然后將該序列映射到一系列口型動(dòng)畫(huà)片段上, 最后將這些片段互相拼接, 即可得到最終輸出的結(jié)果.試驗(yàn)表明, 該算法具有較高的準(zhǔn)確率, 在運(yùn)行時(shí)耗時(shí)較少, 并且對(duì)于不同的人臉模型具有較高的可重用性.
語(yǔ)音驅(qū)動(dòng); 口型同步; 音素
口型動(dòng)畫(huà)的制作在電影、游戲以及虛擬現(xiàn)實(shí)等新型人機(jī)交互方式中均占據(jù)重要地位.在觀看模型動(dòng)畫(huà)時(shí), 觀眾往往對(duì)模型口型動(dòng)作的一些細(xì)微變化較為敏感.因此如何生成真實(shí)自然的口型動(dòng)畫(huà)是當(dāng)今計(jì)算機(jī)圖形學(xué)領(lǐng)域中的一個(gè)富有挑戰(zhàn)性的課題.
在生成口型動(dòng)畫(huà)的方法中, 有一系列采用語(yǔ)音驅(qū)動(dòng)的方法.這類方法一般以一段語(yǔ)音信號(hào)作為輸入, 生成一段與該信號(hào)同步的口型動(dòng)畫(huà).在這類方法中, 輸入的語(yǔ)音信號(hào)首先被轉(zhuǎn)化為由一串發(fā)音單元構(gòu)成的序列, 這些發(fā)音單元被稱為音素.然后序列中的每個(gè)音素都會(huì)被映射到一個(gè)口型動(dòng)作單元上, 這些口型動(dòng)作單元被稱為視素, 視素是音素可視化的形態(tài).最后, 將所得到的視素序列進(jìn)行拼接與插值, 即得到最終的口型動(dòng)畫(huà)[1].
在實(shí)際應(yīng)用中, 除當(dāng)前正在發(fā)音的音素外, 該音素之前或之后的一些音素也會(huì)對(duì)當(dāng)前口型動(dòng)作產(chǎn)生影響,這種現(xiàn)象叫做協(xié)同發(fā)音.協(xié)同發(fā)音現(xiàn)象是設(shè)計(jì)口型同步算法時(shí)必須考慮并且解決的問(wèn)題.
為了解決口型同步與協(xié)同發(fā)音問(wèn)題, 研究者們提出了不同的方法, 大致分為下述4種類別:
(1) 程序式的方法.這類方法定義了一系列針對(duì)音素的規(guī)則[2], 并且依照這些規(guī)則解決協(xié)同發(fā)音問(wèn)題.其中Kalberer等[1]提出的方法最具代表性, 該方法為不同音素定義了不同的優(yōu)先級(jí), 在協(xié)同發(fā)音現(xiàn)象發(fā)生的時(shí)候, 優(yōu)先級(jí)越高的音素對(duì)口型動(dòng)作的決定作用也越大.
(2) 基于物理的方法.這類方法利用力學(xué)定律, 模擬臉部不同肌肉之間的相互作用, 進(jìn)而生成對(duì)應(yīng)的口型動(dòng)畫(huà)[3].這類方法生成的口型動(dòng)畫(huà)具有很高的真實(shí)度, 但是由于需要經(jīng)過(guò)復(fù)雜的力學(xué)計(jì)算, 計(jì)算量較大且效率較低.
(3) 數(shù)據(jù)驅(qū)動(dòng)的方法.這類方法需要預(yù)先采集大量的口型動(dòng)作數(shù)據(jù), 然后對(duì)于一段輸入的語(yǔ)音信號(hào), 根據(jù)該信號(hào)對(duì)應(yīng)的音素序列, 在所采集的數(shù)據(jù)中搜索最匹配的口型動(dòng)作[4-5].為了滿足精確度的要求, 這類方法需要大量數(shù)據(jù)作為支撐.
(4) 基于機(jī)器學(xué)習(xí)的方法. 比較典型的有利用隱式馬爾科夫模型或者高斯混合模型等方法[6-7].這類方法通過(guò)訓(xùn)練機(jī)器學(xué)習(xí)模型, 對(duì)輸入語(yǔ)音信號(hào)對(duì)應(yīng)的口型動(dòng)作做出基于概率的估計(jì).與數(shù)據(jù)驅(qū)動(dòng)的方法相比, 這類方法需要的數(shù)據(jù)量較少, 但是對(duì)于協(xié)同發(fā)音現(xiàn)象進(jìn)行建模的結(jié)果具有較低的精確度.
本文提出的方法不同于上述4類方法.本文預(yù)定義一個(gè)基本口型動(dòng)作集合, 所有口型動(dòng)作均由該集合中的元素按照不同權(quán)重線性混合而成[8].由一位動(dòng)畫(huà)設(shè)計(jì)師預(yù)先為每個(gè)音素設(shè)計(jì)對(duì)應(yīng)的口型動(dòng)畫(huà), 這些口型動(dòng)畫(huà)由一系列曲線構(gòu)成, 分別代表每個(gè)基本口型動(dòng)作的權(quán)重隨時(shí)間的變化.設(shè)計(jì)師在設(shè)計(jì)每個(gè)音素對(duì)應(yīng)的口型動(dòng)畫(huà)時(shí), 需要考慮其后繼音素的所有可能情況, 并且針對(duì)不同情況設(shè)計(jì)不同的曲線作為音素之間的過(guò)渡動(dòng)畫(huà).在運(yùn)行時(shí), 分析輸入語(yǔ)音信號(hào)對(duì)應(yīng)的音素序列, 然后將序列中的音素對(duì)應(yīng)的口型動(dòng)畫(huà)相互拼接, 最終得到完整的口型動(dòng)畫(huà).
本文方法的優(yōu)點(diǎn)如下: (1)相比基于物理的方法需要在運(yùn)行時(shí)進(jìn)行運(yùn)動(dòng)模擬, 相比數(shù)據(jù)驅(qū)動(dòng)的方法需要在運(yùn)行時(shí)進(jìn)行最優(yōu)匹配的查找, 本文方法在運(yùn)行時(shí)計(jì)算量很小, 這是因?yàn)樗幸羲貙?duì)應(yīng)的口型動(dòng)畫(huà)均已在預(yù)處理階段被定義;(2)不同口型動(dòng)畫(huà)之間相互獨(dú)立, 對(duì)其中一段口型動(dòng)畫(huà)的調(diào)整不會(huì)影響系統(tǒng)的其余部分;(3)本文方法可以生成多數(shù)臉部模型對(duì)應(yīng)的口型動(dòng)畫(huà), 在對(duì)模型進(jìn)行變更時(shí), 設(shè)計(jì)師只需要重新設(shè)計(jì)基本口型動(dòng)作集合中的模型動(dòng)作, 其余的模型動(dòng)作均可由基本口型動(dòng)作進(jìn)行線性混合得到.
本文方法包含兩個(gè)階段, 分別是預(yù)處理階段以及運(yùn)行時(shí)階段.在預(yù)處理階段中, 設(shè)計(jì)師可以通過(guò)繪制曲線的方式定義音素對(duì)應(yīng)的口型動(dòng)畫(huà); 在運(yùn)行時(shí)階段中, 根據(jù)輸入語(yǔ)音信號(hào)對(duì)應(yīng)的音素序列, 將序列中的音素對(duì)應(yīng)的口型動(dòng)畫(huà)互相拼接, 最終得到完整的口型動(dòng)畫(huà).
1.1預(yù)處理階段
1.1.1 音素的分類
本文所使用的Timit語(yǔ)音集合定義了46種不同的音素[9].語(yǔ)音學(xué)的研究表明, 有些不同的音素會(huì)表現(xiàn)為相似的口型動(dòng)作, 比如/t/和/d/的發(fā)音, 只區(qū)別于聲帶是否振動(dòng), 其對(duì)應(yīng)的口型動(dòng)作是相近的.這種不同音素映射到相似口型動(dòng)作上的現(xiàn)象是普遍存在的.基于上述結(jié)論, 本文將Timit語(yǔ)音集合中的46種不同音素映射到16個(gè)不同的類別上.映射的結(jié)果如表1所示[7].
表1 音素的分類Table 1 Classification of phonemes
設(shè)計(jì)師在設(shè)計(jì)每個(gè)音素對(duì)應(yīng)的口型動(dòng)畫(huà)時(shí), 需要考慮其后繼音素的每種可能情況.因此, 對(duì)于原本的46種音素, 設(shè)計(jì)師需要設(shè)計(jì)共計(jì)2 116段不同的口型動(dòng)畫(huà), 這顯然是不現(xiàn)實(shí)的.通過(guò)音素的分類, 本文將需要設(shè)計(jì)的口型動(dòng)畫(huà)數(shù)量減少到256種, 減少了約88%, 提高了預(yù)處理階段的效率.
為了使表達(dá)簡(jiǎn)化, 下文中的術(shù)語(yǔ)“音素”均代指分類后的16類音素之一.
1.1.2 定義音素對(duì)應(yīng)的口型動(dòng)畫(huà)
為了減少設(shè)計(jì)師需要設(shè)計(jì)的模型動(dòng)作數(shù)量, 進(jìn)一步提高預(yù)處理階段的效率, 本文預(yù)定義了一個(gè)基本口型動(dòng)作集合.通過(guò)定義基本口型動(dòng)作的權(quán)重變化曲線, 設(shè)計(jì)師可以高效地設(shè)計(jì)不同音素對(duì)應(yīng)的口型動(dòng)畫(huà).基本口型動(dòng)作集合還使得本文方法支持對(duì)模型的變更, 設(shè)計(jì)師只需要重新設(shè)計(jì)基本口型.
動(dòng)作集合中的模型動(dòng)作, 除此之外不需要對(duì)系統(tǒng)的其余部分進(jìn)行任何更改, 就可以得到新模型對(duì)應(yīng)的口型動(dòng)畫(huà).
FaceGen建模軟件[10]提供了一系列預(yù)設(shè)的口型動(dòng)作, 本文選取其中的6種口型動(dòng)作組成基本口型動(dòng)作集合.該集合中, 第一個(gè)元素是中性口型動(dòng)作, 記作f1; 其余的元素分別對(duì)應(yīng)表1中的類別2、6、13、15以及16, 記作f2至f6.圖1依次展示了上述6種基本口型動(dòng)作.本文選取的基本口型動(dòng)作參考了Xu等[11]的方法, 但本文認(rèn)為, 基本口型動(dòng)作集合的選取方式并非只有一種, 其他選取方式同樣能夠得出良好的效果.
圖1 6種基本口型動(dòng)作Fig.1 Six kinds of basic lip poses
(1)
然后, 系統(tǒng)根據(jù)式(2)自動(dòng)生成f1, 即中立口型動(dòng)作的權(quán)重變化曲線.
(2)
語(yǔ)音學(xué)的研究表明, 人類在發(fā)聲的時(shí)候, 其唇部會(huì)迅速做出相應(yīng)的動(dòng)作, 然后在這個(gè)動(dòng)作上穩(wěn)定下來(lái), 并且開(kāi)始發(fā)聲.基于上述結(jié)論, 本文提出了權(quán)重變化曲線中的兩個(gè)階段: 穩(wěn)定階段與變化階段.在穩(wěn)定階段, 模型的唇部擁有與當(dāng)前正在發(fā)音的音素相對(duì)應(yīng)的穩(wěn)定的動(dòng)作; 在變化階段, 其唇部的動(dòng)作則迅速向下一個(gè)音素對(duì)應(yīng)的動(dòng)作轉(zhuǎn)化.
在本文建立的口型動(dòng)畫(huà)模型中, 每段口型動(dòng)畫(huà)的穩(wěn)定階段所持續(xù)的時(shí)間受說(shuō)話的快慢、單詞中音素的緊密程度等多種因素所影響, 而變化階段所持續(xù)的時(shí)間則是基本恒定的.本文將變化階段所持續(xù)的時(shí)間記作T.若T值過(guò)小, 會(huì)使得最終生成的口型動(dòng)畫(huà)動(dòng)作過(guò)快, 表現(xiàn)得很不自然; 若T值過(guò)大, 則動(dòng)畫(huà)中的口型與當(dāng)前正在發(fā)音的音素吻合程度并不明顯, 表現(xiàn)得很不真實(shí).試驗(yàn)表明,T取30~50 ms之間的數(shù)值可以得出良好的效果.
每段口型動(dòng)畫(huà)A(pa,pb)必須包含恰好一個(gè)穩(wěn)定階段以及一個(gè)變化階段, 且穩(wěn)定階段位于變化階段之前.其中, 穩(wěn)定階段表示當(dāng)前音素pa所對(duì)應(yīng)的口型動(dòng)作, 變化階段則表示當(dāng)前音素pa向其后繼音素pb進(jìn)行過(guò)渡的口型動(dòng)作.
1.2運(yùn)行時(shí)階段
運(yùn)行時(shí)階段的工作流程如圖2所示.首先, 采用現(xiàn)有的音素分析工具, 根據(jù)輸入的語(yǔ)音信號(hào), 得到對(duì)應(yīng)的音素序列, 并且對(duì)于序列中的每個(gè)音素, 確定其在原語(yǔ)音信號(hào)中的起止時(shí)間.滿足條件的音素分析工具有很多, 如Festival系統(tǒng)[12]以及Julius系統(tǒng)[13]等, 本文采用了Festival系統(tǒng)進(jìn)行分析.然后, 將音素序列映射到一系列預(yù)先定義好的口型動(dòng)畫(huà)片段上.最后, 將這些動(dòng)畫(huà)片段進(jìn)行拼接, 根據(jù)拼接之后各基本口型動(dòng)作的權(quán)重變化曲線, 混合成完整的口型動(dòng)畫(huà).
圖2 運(yùn)行時(shí)階段的工作流程Fig.2 Flowchart of runtime phase
1.2.1 音素序列的映射
音素序列到口型動(dòng)畫(huà)片段的映射過(guò)程如圖3所示.假設(shè)音素序列中存在一個(gè)音素pb, 并且其后繼音素為pc, 本文方法需要將事先定義好的動(dòng)畫(huà)片段A(pb,pc)與音素pb相關(guān)聯(lián).假設(shè)pb的持續(xù)時(shí)間為t1到t2, 本文分為t2-t1≥T以及t2-t1 t2-t1≥T的情況如圖3(a)所示.根據(jù)上文建立的口型動(dòng)畫(huà)模型, 在映射結(jié)束后, 動(dòng)畫(huà)片段A(pb,pc)中變化階段所持續(xù)的時(shí)間應(yīng)該保持恒定不變, 而穩(wěn)定階段所持續(xù)的時(shí)間則是可變的.所以, 本文令音素pb持續(xù)時(shí)間結(jié)尾處長(zhǎng)度為T(mén)的部分, 即t2-T至t2, 作為新的變化階段; 剩余的部分即t1至t2-T, 則作為新的穩(wěn)定階段.為了用動(dòng)畫(huà)片段A(pb,pc)填充這段時(shí)間, 需要將該動(dòng)畫(huà)片段中的穩(wěn)定階段按照時(shí)間尺度縮放, 以適應(yīng)新的長(zhǎng)度, 而該動(dòng)畫(huà)片段中的變化階段則無(wú)需進(jìn)行任何更改, 直接填充至目標(biāo)位置即可. (a)t2-t1≥T (b)t2-t1 英文單詞的音節(jié)緊湊, 為了保持語(yǔ)速, 在發(fā)音時(shí)經(jīng)常不需要將當(dāng)前音節(jié)完全發(fā)音, 而是只發(fā)音到一半便開(kāi)始向著下一個(gè)音節(jié)過(guò)渡, 所以t2-t1 1.2.2 曲線的拼接 經(jīng)過(guò)音素序列的映射步驟, 本文得到了一系列在時(shí)間軸上排列好的口型動(dòng)畫(huà)片段, 并且有些片段是互相重疊的.每段口型動(dòng)畫(huà)片段由6條權(quán)重變化曲線構(gòu)成, 分別對(duì)應(yīng)6個(gè)基本口型動(dòng)作.所以, 將口型動(dòng)畫(huà)片段進(jìn)行拼接, 其實(shí)等同于對(duì)每個(gè)基本口型動(dòng)作的權(quán)重變化曲線分別進(jìn)行拼接. 本文提出的曲線拼接算法可以通過(guò)對(duì)曲線序列的一次遍歷完成.算法的輸入為由n個(gè)音素p1~pn構(gòu)成的序列, 以及這些音素映射到的n條曲線c1(t)~cn(t); 輸出則為拼接完成的曲線c(t).在初始狀態(tài)下,c(t)是一條空曲線, 即c(t)的持續(xù)時(shí)間為0 ms.然后算法對(duì)音素構(gòu)成的序列進(jìn)行遍歷, 在遍歷到音素pi時(shí), 將c(t)與ci(t)進(jìn)行拼接, 并且將拼接完成的曲線作為c(t)的新值.在拼接時(shí), 算法根據(jù)pi的持續(xù)時(shí)間與T的大小關(guān)系, 分兩種情況進(jìn)行討論. c′(t)=(1-r(t))c(t)+r(t)ci(t) (3) 其中:r(t)為線性插值的比例函數(shù), 其對(duì)應(yīng)的表達(dá)式如式(4)所示. (4) 圖4是該算法作用在兩條曲線上的一個(gè)示例.在拼接之前, 兩條用虛線表示的待拼接曲線c(t)與ci(t)互相重疊.本文將上述兩條曲線在重疊區(qū)域內(nèi)進(jìn)行線性插值, 重疊區(qū)域外則保持各自的值不變.最終拼接完成的曲線在圖4中用實(shí)線表示. 圖4 曲線拼接示例Fig.4 Example of curve stitching 經(jīng)過(guò)曲線的拼接步驟, 本文得到了6條完整的權(quán)重變化曲線, 每段曲線的持續(xù)時(shí)間均等于語(yǔ)音信號(hào)的總時(shí)間.設(shè)基本口型動(dòng)作fi對(duì)應(yīng)的完整權(quán)重變化曲線為ci(t), 最終生成的口型動(dòng)畫(huà)F(t)可以通過(guò)基本口型動(dòng)作按照式(5)的方式線性混合而成. (5) 設(shè)計(jì)師定義的每段曲線均滿足G1階連續(xù), 并且可以從數(shù)學(xué)上證明c′(t)的連續(xù)性及其導(dǎo)函數(shù)的連續(xù)性, 所以最終得到的完整權(quán)重變化曲線滿足G1階連續(xù), 由此生成的口型動(dòng)畫(huà)滿足連續(xù)平滑的要求. 2.1時(shí)間分析 2.1.1 預(yù)處理階段 預(yù)處理階段消耗的時(shí)間主要用于對(duì)口型動(dòng)畫(huà)進(jìn)行設(shè)計(jì).本文方法需要設(shè)計(jì)師設(shè)計(jì)256段不同的口型動(dòng)畫(huà), 為了提高設(shè)計(jì)的效率, 設(shè)計(jì)師可以將其中大部分權(quán)重變化曲線都定義為樣條曲線, 通過(guò)定義控制點(diǎn)的位置, 即可簡(jiǎn)易地控制曲線的形狀.假設(shè)設(shè)計(jì)師定義并調(diào)整每段口型動(dòng)畫(huà)平均需要15~20 min, 設(shè)計(jì)完成所有口型動(dòng)畫(huà)的時(shí)間則需要5~6 d. 2.1.2 運(yùn)行時(shí)階段 由于音素對(duì)應(yīng)的動(dòng)畫(huà)片段已經(jīng)在預(yù)處理階段被設(shè)計(jì)師定義好, 本文方法在運(yùn)行時(shí)階段只需要完成音素的映射與曲線的拼接, 其中只涉及一些簡(jiǎn)單的線性插值計(jì)算.表2展示了本文方法分別處理Timit數(shù)據(jù)庫(kù)中8段音頻的耗時(shí).觀察表2可以得出, 本文的方法擁有運(yùn)行時(shí)計(jì)算量小、時(shí)間消耗少的優(yōu)點(diǎn). 表2 本文方法運(yùn)行時(shí)的耗時(shí)與準(zhǔn)確率分析Table 2 Runtime time consumption and accuracyanalysis of our method 2.2口型動(dòng)畫(huà)效果分析 本文從根據(jù)Timit數(shù)據(jù)庫(kù)中的8段音頻生成的口型動(dòng)畫(huà)中, 分別以固定間隔選取了50幀與真實(shí)情況進(jìn)行了比較, 表2的最后一列展示了比較的結(jié)果.本文選擇了25名參與者, 請(qǐng)他們對(duì)本文的結(jié)果以及Xu等的結(jié)果進(jìn)行評(píng)分, 評(píng)分的結(jié)果顯示, 25名參與者中認(rèn)為本文的結(jié)果更加真實(shí)的有13名, 認(rèn)為Xu等的結(jié)果更加真實(shí)的僅有 8 名.由此可以得出, 本文的方法具有更加真實(shí)的結(jié)果. 以Timit數(shù)據(jù)庫(kù)中的一段測(cè)試音頻為輸入, 最終生成的口型動(dòng)畫(huà)中一些關(guān)鍵幀的截圖如圖5所示.在圖5中, 當(dāng)前正在發(fā)音的單詞從左到右、從上到下依次為“she”“had”“your”“dark”“suit”“greasy”.觀察圖5可以得出, 以本文的方法生成的口型動(dòng)畫(huà)基本上可以保持與語(yǔ)音信號(hào)的同步, 具有較高的精確度. 圖5 本文生成的口型動(dòng)畫(huà)中關(guān)鍵幀的截圖Fig.5 Snapshots of our result lip animation 本文的方法允許設(shè)計(jì)師在不重新定義權(quán)重變化曲線的情況下, 生成其他模型對(duì)應(yīng)的口型動(dòng)畫(huà).本文的方法作用在FaceGen建模軟件預(yù)設(shè)的兩個(gè)男性人臉模型上的效果如圖6所示.觀察圖6可以得出, 定義好的權(quán)重變化曲線可以適應(yīng)不同的人臉模型, 說(shuō)明本文的方法具有較高的可重用性. 圖6 本文方法作用在兩個(gè)男性人臉模型上的效果Fig.6 Result of our method when acting on two male face models 本文提出了一種語(yǔ)音驅(qū)動(dòng)的口型同步算法,該算法預(yù)定義了一個(gè)基本口型動(dòng)作集合, 設(shè)計(jì)師可以通過(guò)定義該集合中元素的權(quán)重變化曲線, 設(shè)計(jì)不同音素對(duì)應(yīng)的口型動(dòng)畫(huà).本文提出了穩(wěn)定階段與變化階段的概念, 并在此基礎(chǔ)上對(duì)設(shè)計(jì)師提出了在設(shè)計(jì)口型動(dòng)畫(huà)時(shí)所需要遵循的3條約定.在運(yùn)行時(shí), 首先獲取輸入語(yǔ)音信號(hào)對(duì)應(yīng)的音素序列, 然后將該序列映射到一系列口型動(dòng)畫(huà)片段上, 最后將這些片段互相拼接, 即可得到最終輸出的結(jié)果.試驗(yàn)表明, 本文方法在運(yùn)行時(shí)耗時(shí)較少,生成的口型動(dòng)畫(huà)基本上可以保持與語(yǔ)音信號(hào)的同步, 并且對(duì)于不同的人臉模型具有較高的可重用性. [1] KALBERER G A, MULLER P, GOOL L J V. Speech animation using viseme space [C] // Vision, Modeling, and Visualization Conference. Berlin, Germany: Akademische Verlagsgesellschaft Aka GmbH, 2002: 463-470. [2] CASSELL J, PELACHAUD C, BADLER N, et al. Animated conversation: rule-based generation of facial expression, gesture and spoken intonation for multiple conversational agents [C] // Proceedings of ACM SIGGRAPH 1994. New York, NY, USA: ACM, 1994: 413-420. [3] ALBRECHT I, HABER J, SEIDEL H P, et al. Speech synchronization for physics-based facial animation [C] // Proceedings of the International Conference on Computer Graphics, Visualization, and Computer Vision (WSCG’02). 2002: 9-16. [4] BREGLER C, COVELL M, SLANEY M.Video rewrite: driving visual speech with audio [C] //Conference on Computer Graphics and Interactive Techniques. 1997: 353-360. [5] CAO Y, TIEN W C, FALOUTSOS P, et al. Expressive speech-driven facial anima-tion [J]. ACM Transactions on Graphics, 2005, 24(4): 1283-1302. [6] BRAND M.Voice puppetry [C] // Proceedings of the 26th annual conference on Computer graphics and interactive techniques - SIGGRAPH '99. New York, NY, USA: ACM, 1999: 21-28. [7] BOZKURT E, ERDEM C E, ERZIN E, et al.Comparison of phoneme and viseme based acoustic units for speech driven realistic lip animation [C] // 3DTV Conference. 2007: 1-4. [8] DENG Z G, LEWIS J P, NEUMANN U. Synthesizing speech animation by learning compact speech co-articulation models [C] // Proceedings of Computer Graphics International (CGI2005). Washington, DC, USA: IEEE Computer Society Press, 2005: 19-25. [9] SENEFF S, ZUE V W. Transcription and alignment of the TIMIT database [M]. Recent Research Towards Advanced Man-Machine Interface Through Spoken Language, H. Fujisaki (ed.), Amsterdam: Elsevier, 1996: 515-525. [10] Singular Inversions. FaceGen [CP/OL]. http: //facegen.com/. [11] XU Y, FENG A W, MASELLA S, et al. A practical and configurable lip sync method for games [C] // Proc. Motion in Games, 2013: 109-118. [12] The center for speech technology research, The University of Edinburgh. The festival speech synthesis system [CP/OL]. http: //www.cstr. ed.ac.uk/projects/festival/. [13] Kawahara Lab, Kyoto University. Julius: open-source large vocabulary continuous speech recognition engine [CP/OL]. https: //github.com/julius- speech/julius. [14] WEI L, DENG Z G. A practical model for live speech-driven lip-sync [J]. IEEE Computer Graphics & Applications, 2015, 35(2): 70-78. (責(zé)任編輯:杜佳) ASpeech-DrivenLipSynchronizationMethod FANXinxin,YANGXubo (School of Software, Shanghai Jiao Tong University, Shanghai 200240, China) A speech-driven lip synchronization method is proposed to generate lip animation according to the input speech signal. The method contains two phases: preprocessing phase and runtime phase. In preprocessing phase, a basic lip pose set is predefined. Through adjusting the weight curves of the predefined lip pose set, animators can design lip animation segments corresponding to different phonemes. In runtime phase, the phoneme sequence of the input speech signal is acquired and mapped to a series of lip animation segments. These segments are then stitched together to generate the final result. Experimental results show that this method has high accuracy and low time consumption, and is reusable between different face models. speech-driven; lip synchronization; phoneme TP 301.6 A 1671-0444 (2017)04-0466-06 2016-12-19 國(guó)家自然科學(xué)基金資助項(xiàng)目(61173105,61373085);國(guó)家高技術(shù)研究發(fā)展計(jì)劃(863)資助項(xiàng)目(2015AA016404) 范鑫鑫(1994—),男,河北邢臺(tái)人,碩士研究生,研究方向?yàn)檐浖こ虜?shù)字藝術(shù).E-mail: smwlover3601102@sina.com 楊旭波(聯(lián)系人),男,教授,E-mail: yangxubo@sjtu.edu.cn2 試驗(yàn)結(jié)果
3 結(jié) 語(yǔ)