本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種為動(dòng)畫配樂的方法及裝置。
背景技術(shù):
三維動(dòng)畫又稱3D動(dòng)畫,是隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展而產(chǎn)生的一項(xiàng)新興技術(shù)。采用三維動(dòng)畫技術(shù)制作的三維動(dòng)畫,因其真實(shí)、生動(dòng)、精確、可操作性和可調(diào)控性等多項(xiàng)突出性能,被廣泛應(yīng)用于醫(yī)學(xué)、教育、軍事、娛樂等諸多領(lǐng)域。
為增強(qiáng)三維動(dòng)畫的表現(xiàn)效果,可以為三維動(dòng)畫添加合適的配樂?,F(xiàn)有技術(shù)中,可以依據(jù)動(dòng)畫中的角色、對(duì)象、場景等信息提煉出動(dòng)畫文本,即用文本信息來描述動(dòng)畫,再依據(jù)動(dòng)畫文本找到對(duì)應(yīng)的音頻文件,進(jìn)而使得音頻文件與動(dòng)畫相關(guān)聯(lián),能夠在一定程度上提升動(dòng)畫音效的制作效率。
但是,上述現(xiàn)有技術(shù)存在以下缺陷:
(1)通過動(dòng)畫的角色、對(duì)象、場景等信息提煉文本信息對(duì)動(dòng)畫進(jìn)行描述,存在描述不準(zhǔn)確、不全面等問題,從而影響音頻文件的查找和對(duì)應(yīng)。
(2)在建立動(dòng)畫與音頻文件的對(duì)應(yīng)關(guān)系時(shí),通過描述動(dòng)畫的文本信息作為媒介,對(duì)動(dòng)畫音效制作效率的提高很有限。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種為動(dòng)畫配樂的方法,旨在準(zhǔn)確、全面、高效的為動(dòng)畫選取相匹配的音樂。
本申請(qǐng)實(shí)施例還提供一種為動(dòng)畫配樂的裝置,旨在準(zhǔn)確、全面、高效的為動(dòng)畫選取相匹配的音樂。
本申請(qǐng)實(shí)施例采用下述技術(shù)方案:
本申請(qǐng)實(shí)施例提供的為動(dòng)畫配樂的方法,包括:
依據(jù)動(dòng)畫片段,確定所述動(dòng)畫片段的第一特征向量;所述動(dòng)畫片段由待配樂的動(dòng)畫中、依據(jù)所述待配樂動(dòng)畫的運(yùn)動(dòng)特征提取得到;
依據(jù)所述動(dòng)畫片段的第一特征向量,確定與所述待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;
依據(jù)所述第一關(guān)鍵詞,確定與所述第一關(guān)鍵詞相匹配的音樂資源,建立所述待配樂的動(dòng)畫與所述相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,依據(jù)所述動(dòng)畫片段的第一特征向量,確定與所述待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞,包括:
依據(jù)所述動(dòng)畫片段的第一特征向量,確定所述待配樂的動(dòng)畫的第二特征向量;
依據(jù)以所述第二特征向量作為輸入層、以第三特征向量作為輸出層構(gòu)建的第一神經(jīng)網(wǎng)絡(luò),將輸出層中概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與所述待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;
其中,所述第三特征向量中的分量表示所述待配樂的動(dòng)畫與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,所述第三特征向量中的分量與第一關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,所述第一關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,依據(jù)所述第一關(guān)鍵詞,確定與所述第一關(guān)鍵詞相匹配的音樂資源,包括:
獲取與所述音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞;
將所述第一關(guān)鍵詞與所述第二關(guān)鍵詞進(jìn)行匹配,若匹配,則與該第二關(guān)鍵詞相對(duì)應(yīng)的音樂資源與所述第一關(guān)鍵詞相匹配。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,獲取與所述音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞,包括:
提取所述音樂資源的梅爾頻率倒譜系數(shù);
依據(jù)所述音樂資源的梅爾頻率倒譜系數(shù),確定所述音樂資源的第四特征向量;
依據(jù)以所述第四特征向量作為輸入層、以第五特征向量作為輸出層構(gòu)建的第二神經(jīng)網(wǎng)絡(luò),將輸出層中概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與所述音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞;
其中,所述第五特征向量中的分量表示所述音樂資源與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,所述第五特征向量中的分量與第二關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,所述第二關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,建立所述待配樂的動(dòng)畫與所述相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系之后,還包括:
依據(jù)所述動(dòng)畫片段的第一特征向量,在所述相匹配的音樂資源中融合音效。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,所述動(dòng)畫片段由待配樂的動(dòng)畫按照以下方式提取得到:
對(duì)所述待配樂的動(dòng)畫,計(jì)算兩幀間的幀間變化量;其中,所述兩幀間間隔第一預(yù)設(shè)幀數(shù);
若所述幀間變化量達(dá)到預(yù)設(shè)閾值,則提取包含所述兩幀以及所述兩幀間間隔的所述第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀,作為所述動(dòng)畫片段。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,所述動(dòng)畫片段由待配樂的動(dòng)畫按照以下方式提取得到:
對(duì)所述待配樂的動(dòng)畫,計(jì)算兩幀間的幀間變化量;其中,所述兩幀間間隔第一預(yù)設(shè)幀數(shù);
對(duì)各所述幀間變化量按照數(shù)值大小進(jìn)行排序,提取預(yù)設(shè)數(shù)量個(gè)幀間變化量最大的、包含所述兩幀以及所述兩幀間間隔的所述第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀,作為所述動(dòng)畫片段。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的方法中,所述動(dòng)畫片段的第一特征向量包括:動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)和/或幀間的骨骼加速度。
本申請(qǐng)實(shí)施例提供的為動(dòng)畫配樂的裝置,包括:
特征向量確定模塊,用于依據(jù)動(dòng)畫片段,確定所述動(dòng)畫片段的第一特征向量;其中,所述動(dòng)畫片段由待配樂的動(dòng)畫中提取得到;
第一關(guān)鍵詞確定模塊,用于依據(jù)所述動(dòng)畫片段的第一特征向量,確定與所述待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;
音樂資源匹配模塊,用于依據(jù)所述第一關(guān)鍵詞,確定與所述第一關(guān)鍵詞相匹配的音樂資源,建立所述待配樂的動(dòng)畫與所述相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系。
可選地,本申請(qǐng)實(shí)施例提供為動(dòng)畫配樂的裝置中,所述第一關(guān)鍵詞確定模塊中包括第一神經(jīng)網(wǎng)絡(luò),所述第一神經(jīng)網(wǎng)絡(luò)以第二特征向量作為輸入層、以第三特征向量作為輸出層,用于確定與所述待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;其中,所述第二特征向量依據(jù)所述第一特征向量確定,所述第三特征向量中的分量表示所述待配樂的動(dòng)畫與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,所述第三特征向量中的分量與第一關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,所述第一關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
本申請(qǐng)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:
本申請(qǐng)實(shí)施例通過動(dòng)畫的運(yùn)動(dòng)特征提取動(dòng)畫片段,在此基礎(chǔ)上確定相對(duì)應(yīng)的關(guān)鍵詞,再依據(jù)關(guān)鍵詞確定相匹配的音樂資源,進(jìn)而建立待配樂的動(dòng)畫與音樂資源之間的對(duì)應(yīng)關(guān)系?;趧?dòng)畫的運(yùn)動(dòng)特征確定關(guān)鍵詞,能夠更真實(shí)、準(zhǔn)確、全面的反映動(dòng)畫的特征,為建立合適的對(duì)應(yīng)關(guān)系奠定基礎(chǔ)。并且,本申請(qǐng)實(shí)施例的全部過程均可由計(jì)算機(jī)按照預(yù)先設(shè)定的算法完成,有利于提高為動(dòng)畫配樂的效率。
附圖說明
此處所說明的附圖用來提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
圖1為本申請(qǐng)實(shí)施例中為動(dòng)畫配樂的方法的流程示意圖;
圖2為本申請(qǐng)實(shí)施例中動(dòng)畫片段的構(gòu)成示意圖;
圖3為本申請(qǐng)實(shí)施例中第二張為動(dòng)畫配樂的方法的流程示意圖;
圖4為本申請(qǐng)實(shí)施例中第三種為動(dòng)畫配樂的方法中搭建的神經(jīng)網(wǎng)絡(luò)的實(shí)施示意圖;
圖5為本申請(qǐng)實(shí)施例中第四種為動(dòng)畫配樂的方法的流程示意圖;
圖6為本申請(qǐng)實(shí)施例中為動(dòng)畫配樂的裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)具體實(shí)施例及相應(yīng)的附圖對(duì)本申請(qǐng)技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
以下結(jié)合附圖,詳細(xì)說明本申請(qǐng)各實(shí)施例提供的技術(shù)方案。
實(shí)施例1
本申請(qǐng)實(shí)施例提供的一種為動(dòng)畫配樂的方法,參見圖1所示,包括:
S101:依據(jù)動(dòng)畫片段,確定動(dòng)畫片段的第一特征向量;動(dòng)畫片段由待配樂的動(dòng)畫中、依據(jù)待配樂動(dòng)畫的運(yùn)動(dòng)特征提取得到;
S102:依據(jù)動(dòng)畫片段的第一特征向量,確定與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;
S103:依據(jù)第一關(guān)鍵詞,確定與第一關(guān)鍵詞相匹配的音樂資源,建立待配樂的動(dòng)畫與相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系。
本申請(qǐng)實(shí)施例通過動(dòng)畫的運(yùn)動(dòng)特征提取動(dòng)畫片段,在此基礎(chǔ)上確定相對(duì)應(yīng)的關(guān)鍵詞,再依據(jù)關(guān)鍵詞確定相匹配的音樂資源,進(jìn)而建立待配樂的動(dòng)畫與音樂資源之間的對(duì)應(yīng)關(guān)系?;趧?dòng)畫的運(yùn)動(dòng)特征確定關(guān)鍵詞,能夠更真實(shí)、準(zhǔn)確、全面的反映動(dòng)畫的特征,為建立合適的對(duì)應(yīng)關(guān)系奠定基礎(chǔ)。并且,本申請(qǐng)實(shí)施例的全部過程均可由計(jì)算機(jī)按照預(yù)先設(shè)定的算法完成,有利于提高為動(dòng)畫配樂的效率。
在步驟S101依據(jù)動(dòng)畫片段,確定動(dòng)畫片段的第一特征向量之前,需要先依據(jù)待配樂動(dòng)畫的運(yùn)動(dòng)特征,從待配樂動(dòng)畫中提取出上述動(dòng)畫片段。具體地,對(duì)待配樂的動(dòng)畫,可以先計(jì)算兩幀間的幀間變化量;其中,兩幀間間隔第一預(yù)設(shè)幀數(shù)。然后,判斷幀間變化量是否達(dá)到預(yù)設(shè)閾值,若幀間變化量達(dá)到預(yù)設(shè)閾值,則提取包含兩幀以及兩幀間間隔的第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀,作為動(dòng)畫片段。在計(jì)算出幀間變化量后,也可以對(duì)各幀間變化量按照數(shù)值大小進(jìn)行排序,提取預(yù)設(shè)數(shù)量個(gè)幀間變化量最大的、包含兩幀以及兩幀間間隔的第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀,作為動(dòng)畫片段。
在計(jì)算兩幀間的幀間變化量時(shí),可以選取間隔一定幀數(shù)(記為第一預(yù)設(shè)幀數(shù))的兩幀進(jìn)行計(jì)算,間隔的幀數(shù)可以是1幀,5幀,10幀等。第一預(yù)設(shè)幀數(shù)可以是固定不變的預(yù)設(shè)值,例如,可以對(duì)待配樂動(dòng)畫進(jìn)行初步分類,對(duì)體育運(yùn)動(dòng)、舞蹈、動(dòng)作等快節(jié)奏類型的動(dòng)畫設(shè)定較小的第一預(yù)設(shè)幀數(shù),對(duì)抒情、劇情等慢節(jié)奏類型的動(dòng)畫設(shè)定較大的第一預(yù)設(shè)幀數(shù)。第一預(yù)設(shè)幀數(shù)也可以是根據(jù)待配樂動(dòng)畫的運(yùn)動(dòng)特征進(jìn)行適應(yīng)性變化的可調(diào)整的值。例如,假設(shè)第一預(yù)設(shè)幀數(shù)的初始值為10,則計(jì)算間隔10幀的兩幀圖像的幀間變化量;若幀間變化量非常大,表示待配樂的動(dòng)畫在這間隔的10幀之內(nèi)有大幅度的運(yùn)動(dòng)或者頻繁的運(yùn)動(dòng),則為避免漏掉動(dòng)作特征,以便更全面、更準(zhǔn)確地反映待配樂的動(dòng)畫的運(yùn)動(dòng)特征,可以將第一預(yù)設(shè)幀數(shù)的值縮減為5,再進(jìn)一步計(jì)算間隔5幀的兩幀圖像的幀間變化量;依此類推,直至認(rèn)為間隔第一預(yù)設(shè)幀數(shù)的兩幀圖像僅反映了待配樂動(dòng)畫的單個(gè)獨(dú)立動(dòng)作。
在計(jì)算兩幀間的幀間變化量時(shí),可以提取動(dòng)畫幀上骨骼空間的坐標(biāo)數(shù)據(jù)進(jìn)行計(jì)算。通常,1幀動(dòng)畫幀上有100個(gè)左右骨骼點(diǎn),每一個(gè)骨骼點(diǎn)在骨骼空間的坐標(biāo)數(shù)據(jù)就體現(xiàn)了動(dòng)畫中的動(dòng)作形態(tài),每一個(gè)骨骼點(diǎn)在不同動(dòng)畫幀之間的坐標(biāo)數(shù)據(jù)的變化也就體現(xiàn)了動(dòng)畫的運(yùn)動(dòng)特征。因此,將骨骼空間中同一骨骼點(diǎn)的坐標(biāo)變化量作為幀間變化量,就能反映出動(dòng)畫的運(yùn)動(dòng)特征,并且?guī)g變化量越大,表示動(dòng)畫的運(yùn)動(dòng)特征越強(qiáng)烈。
在依據(jù)幀間變化量提取動(dòng)畫片段時(shí),如前所述,可以基于幀間變化量達(dá)到預(yù)設(shè)閾值的動(dòng)畫幀構(gòu)成動(dòng)畫片段,也可以基于幀間變化量相對(duì)最大的動(dòng)畫幀構(gòu)成動(dòng)畫片段,還可以對(duì)達(dá)到預(yù)設(shè)閾值的幀間變化量進(jìn)一步按數(shù)值大小進(jìn)行排序、然后基于幀間變化量最大的動(dòng)畫幀構(gòu)成動(dòng)畫片段。在構(gòu)成動(dòng)畫片段時(shí),要提取包含:幀間變化量滿足預(yù)設(shè)條件的兩幀動(dòng)畫幀,以及兩幀間間隔的第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀,作為動(dòng)畫片段。在具體實(shí)施時(shí),可以以上述兩幀動(dòng)畫幀為基礎(chǔ),向前和/或向后延伸預(yù)設(shè)幀數(shù)(例如2幀,5幀等)的動(dòng)畫幀,與上述兩幀之間的第一預(yù)設(shè)幀數(shù)的動(dòng)畫幀共同構(gòu)成動(dòng)畫片段。圖2給出了上述動(dòng)畫片段的示意圖。t表示動(dòng)畫幀11與動(dòng)畫幀12之間的第一預(yù)設(shè)幀數(shù),t1表示基于幀11與幀12之間的幀間變化量達(dá)到預(yù)設(shè)條件的t幀動(dòng)畫向前延伸的幀數(shù),t2表示基于t幀動(dòng)畫向后延伸的幀數(shù),t1和t2的值都取為大于或等于零的自然數(shù),t1和t2的值可以相同也可以不同,且t1和t2的值通常應(yīng)小于t的值。圖2所示的動(dòng)畫片段,起始幀為動(dòng)畫幀10,結(jié)束幀為動(dòng)畫幀13,該動(dòng)畫片段包含(t1+t+t2)幀動(dòng)畫幀。在已知待配樂的動(dòng)畫的關(guān)鍵幀動(dòng)畫(Key Frame Animation)時(shí),也可以將關(guān)鍵幀動(dòng)畫直接作為動(dòng)畫片段的起始幀或結(jié)束幀,從而更加高效的從待配樂動(dòng)畫中提取出動(dòng)畫片段。
依據(jù)待配樂動(dòng)畫的運(yùn)動(dòng)特征,從待配樂動(dòng)畫中提取出上述動(dòng)畫片段后,可執(zhí)行步驟S101,依據(jù)動(dòng)畫片段,確定動(dòng)畫片段的第一特征向量。其中,動(dòng)畫片段的第一特征向量可以包括:動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)和/或幀間的骨骼加速度。動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)可以表征動(dòng)畫片段中骨骼點(diǎn)的變化幅度,幀間的骨骼加速度可以表征動(dòng)畫片段中骨骼點(diǎn)的變化速度,因此,第一特征向量可以表現(xiàn)出動(dòng)畫片段的運(yùn)動(dòng)特征。
以下以圖2所示動(dòng)畫片段為例,具體說明幀間的骨骼加速度的計(jì)算過程。計(jì)算起始幀10與結(jié)束幀13之間動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)的差距,作為該動(dòng)畫片段中各骨骼點(diǎn)的變化幅度T;計(jì)算起始幀10與結(jié)束幀13之間的時(shí)間s;假定動(dòng)畫中的骨骼點(diǎn)進(jìn)行勻加速運(yùn)動(dòng),按照公式計(jì)算得到幀間的骨骼加速度a。需要說明的是,計(jì)算骨骼加速度時(shí),所選取的運(yùn)動(dòng)時(shí)間與變化幅度相對(duì)應(yīng)即可,例如,可取關(guān)鍵幀11與關(guān)鍵幀12計(jì)算動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)的差距以及間隔的時(shí)間,從而計(jì)算出骨骼加速度;也可取間隔5幀的動(dòng)畫幀計(jì)算骨骼加速度,則可按照以下公式計(jì)算骨骼加速度:間隔5幀的兩幀中各骨骼點(diǎn)的變化幅度/5幀對(duì)應(yīng)的時(shí)間的平方。
在依據(jù)動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)和/或幀間的骨骼加速度構(gòu)成動(dòng)畫片段的第一特征向量時(shí),可以采用任意規(guī)則進(jìn)行,只要同一待配樂動(dòng)畫的各動(dòng)畫片段遵循相同的規(guī)則即可。例如,依據(jù)動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)構(gòu)成第一特征向量,該第一特征向量的分量可取為第j幀(共J幀)的第i個(gè)骨骼點(diǎn)(共I個(gè)骨骼點(diǎn))的x軸坐標(biāo)、y軸坐標(biāo)或者z軸坐標(biāo);又例如,依據(jù)幀間的骨骼加速度構(gòu)成第一特征向量,該第一特征向量的分量可取為相鄰兩幀的x軸方向的骨骼加速度、y軸方向的骨骼加速度或者z軸方向的骨骼加速度,也可以取為起始幀與結(jié)束幀之間x軸方向的骨骼加速度、y軸方向的骨骼加速度或者z軸方向的骨骼加速度,還可以取為動(dòng)畫片段中兩個(gè)關(guān)鍵動(dòng)畫幀之間各方向的骨骼加速度;再例如,同時(shí)依據(jù)動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)和幀間的骨骼加速度構(gòu)成第一特征向量,則可將第j幀(共J幀)的第i個(gè)骨骼點(diǎn)(共I個(gè)骨骼點(diǎn))的x軸坐標(biāo)、y軸坐標(biāo)或者z軸坐標(biāo)與相鄰兩幀的x軸方向的骨骼加速度、y軸方向的骨骼加速度或者z軸方向的骨骼加速度按照一定的順序構(gòu)成各分量。需要說明的是,各分量在第一特征向量中的具體位置可以不作限定,只要同一待配樂動(dòng)畫的各動(dòng)畫片段的對(duì)應(yīng)幀、對(duì)應(yīng)骨骼點(diǎn)、對(duì)應(yīng)方向上的坐標(biāo)數(shù)據(jù)和/或?qū)?yīng)骨骼點(diǎn)、對(duì)應(yīng)方向上的骨骼加速度所構(gòu)成的分量在第一特征向量中的位置相同即可。
參見圖3所示,在執(zhí)行S101依據(jù)動(dòng)畫片段,確定動(dòng)畫片段的第一特征向量后,執(zhí)行S102依據(jù)動(dòng)畫片段的第一特征向量,確定與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞時(shí),可以采用決策樹、神經(jīng)網(wǎng)絡(luò)等方法進(jìn)行。以采用神經(jīng)網(wǎng)絡(luò)確定第一關(guān)鍵詞為例,可具體包括:
S1021:依據(jù)動(dòng)畫片段的第一特征向量,確定待配樂的動(dòng)畫的第二特征向量;
具體地,待配樂的動(dòng)畫的第二特征向量中的分量,可以直接采用各動(dòng)畫片段的第一特征向量中的分量、按照一定的順序或規(guī)律排列。例如,假設(shè)從待配樂的動(dòng)畫中提取出2個(gè)動(dòng)畫片段,每一動(dòng)畫片段的第一特征向量中包含5個(gè)分量,分別為:動(dòng)畫片段一{x0,x1,x2,x3,x4}和動(dòng)畫片段二{y0,y1,y2,y3,y4},則第二特征向量可以是按照動(dòng)畫片段的出現(xiàn)順序以及第一特征向量中各分量的順序構(gòu)成,如{x0,x1,x2,x3,x4,y0,y1,y2,y3,y4},也可以是按照一定規(guī)律,如抽取各動(dòng)畫片段中相對(duì)應(yīng)的分量順序排列,形成第二特征向量{x0,y0,x1,y1,x2,y2,x3,y3,x4,y4}。除此之外,也可以對(duì)第一特征向量中的分量進(jìn)行計(jì)算,例如加權(quán)計(jì)算,將計(jì)算結(jié)果作為第二特征向量的分量。
S1022:依據(jù)以第二特征向量作為輸入層、以第三特征向量作為輸出層構(gòu)建的第一神經(jīng)網(wǎng)絡(luò),將輸出層中概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;其中,第三特征向量中的分量表示待配樂的動(dòng)畫與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,第三特征向量中的分量與第一關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,第一關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
假設(shè)待配樂的動(dòng)畫被分為l個(gè)動(dòng)畫片段,每個(gè)動(dòng)畫片段中有J幀,每幀包含I個(gè)骨骼點(diǎn),每個(gè)骨骼點(diǎn)有3個(gè)方向(x軸方向、y軸方向和z軸方向)的坐標(biāo)數(shù)據(jù)和3個(gè)方向(x軸方向、y軸方向和z軸方向)的骨骼加速度,則動(dòng)畫片段的第一特征向量有(J*I*(3+3))維,待配樂的動(dòng)畫的第二特征向量有(l*J*I*(3+3))維。
進(jìn)一步地,在執(zhí)行步驟S1022搭建神經(jīng)網(wǎng)絡(luò)確定第一關(guān)鍵詞時(shí),以第二特征向量作為輸入層,則輸入層有(l*J*I*(3+3))個(gè)輸入變量,結(jié)合圖4所示的神經(jīng)網(wǎng)絡(luò)示意圖,即輸入層{x0,x1,…,xN-1}中每一個(gè)變量與第二特征向量中的分量一一對(duì)應(yīng),輸入層中標(biāo)有“+1”的圓圈是輸入層的偏置節(jié)點(diǎn),也就是截距項(xiàng),輸入層的維度N=l*J*I*(3+3)+1。圖4所示神經(jīng)網(wǎng)絡(luò)的輸出層由表示待配樂的動(dòng)畫與對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率的第三特征向量構(gòu)成,輸出層的個(gè)數(shù)與第一關(guān)鍵詞庫中的關(guān)鍵詞的個(gè)數(shù)一致,均為M個(gè),輸出層輸出的數(shù)值表示待配樂的動(dòng)畫與第一關(guān)鍵詞庫中的各關(guān)鍵詞相對(duì)應(yīng)的概率。圖4所示神經(jīng)網(wǎng)絡(luò)的隱藏層可以有一層,也可以有多層;各隱藏層中的節(jié)點(diǎn)的個(gè)數(shù),即圖4中K的值也是可選的。隱藏層的數(shù)量和每個(gè)隱藏層的節(jié)點(diǎn)的數(shù)量可以通過實(shí)驗(yàn)獲取的經(jīng)驗(yàn)值進(jìn)行設(shè)定。輸入層、各隱藏層以及輸出層之間的權(quán)重w是可調(diào)的。下面以一層隱藏層為例說明輸出層第三特征向量中各分量的計(jì)算過程。
輸入層{x0,x1,…,xN-1},傳遞到隱藏層,隱藏層的輸入為{h0,h1,…,hK-1},隱藏層的輸出為{a0,a1,…,aK-1},其中,輸入層的各分量為:
h0=x0·w00+x1·w01+x2·w02+…+xN-1·w0(N-1)+w0N
h1=x0·w10+x1·w11+x2·w12+…+xN-1·w1(N-1)+w1N
h2=x0·w20+x1·w21+x2·w22+…+xN-1·w2(N-1)+w2N
……
hK-1=x0·w(K-1)0+x1·w(K-1)1+x2·w(K-1)2+…+xN-1·w(K-1)(N-1)+w(K-1)N
每個(gè)隱藏節(jié)點(diǎn)的激活函數(shù)為f,則隱藏節(jié)點(diǎn)的輸出為:
a0=f(h0)
a1=f(h1)
a2=f(h2)
……
aK-1=f(hK-1)
其中,激活函數(shù)表示單個(gè)神經(jīng)元(包括隱藏節(jié)點(diǎn)和輸出層節(jié)點(diǎn))的輸入與輸出之間的函數(shù)關(guān)系。此處,激活函數(shù)f可以選擇連續(xù)、可導(dǎo)、有界、關(guān)于原點(diǎn)對(duì)稱的Sigmoid函數(shù)或者tanh函數(shù)
若隱藏層只有一層,則將隱藏層的輸出作為輸出層的輸入,各輸出層節(jié)點(diǎn)基于激活函數(shù)可以計(jì)算得到輸出層的輸出結(jié)果,即第三特征向量的分量。若有多層隱藏層,則上一層隱藏層的輸出作為下一層隱藏層的輸入,逐層計(jì)算,直至將最后一層隱藏層的輸出作為輸出層的輸入,計(jì)算得到輸出層的輸出結(jié)果,即第三特征向量的分量。
計(jì)算得到第三特征向量的分量后,即可得到待配樂的動(dòng)畫與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率。由于第三特征向量中的分量與第一關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng),因此,可以將概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞。同一段待配樂的動(dòng)畫可能會(huì)對(duì)應(yīng)到多個(gè)從不同角度劃分的關(guān)鍵詞,例如,一段小學(xué)生踢足球的動(dòng)畫可能表現(xiàn)出小學(xué)生這類角色、興奮的情緒、和跑跳踢球等動(dòng)作類型,因此,其第一關(guān)鍵詞可能確定為“興奮”、“兒童”、“踢足球”、“跑步”等。
第一關(guān)鍵詞庫中包含的關(guān)鍵詞可以是基于同一角度劃分的,例如可按照情緒、角色或者動(dòng)作類型劃分等,則此時(shí),為了達(dá)到用多個(gè)關(guān)鍵詞多角度描述待配樂動(dòng)畫的目的,可以建立多個(gè)神經(jīng)網(wǎng)絡(luò),每個(gè)神經(jīng)網(wǎng)絡(luò)采用從不同的角度劃分的第一關(guān)鍵詞庫即可,此時(shí),可以將概率最高的一個(gè)關(guān)鍵詞(預(yù)設(shè)數(shù)量此時(shí)設(shè)定為1)作為與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞。第一關(guān)鍵詞庫中包含的關(guān)鍵詞也可以是基于不同角度劃分的,例如,可將情緒、角色和動(dòng)作類型等角度劃分的關(guān)鍵詞均列入第一關(guān)鍵詞庫中,則輸出時(shí),可以將概率最高的多個(gè)關(guān)鍵詞(預(yù)設(shè)數(shù)量此時(shí)可設(shè)定為劃分角度的數(shù)量)作為與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞。
在執(zhí)行S102依據(jù)動(dòng)畫片段的第一特征向量,確定與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞之后,可進(jìn)一步執(zhí)行步驟S103依據(jù)第一關(guān)鍵詞,確定與第一關(guān)鍵詞相匹配的音樂資源,包括:
獲取與音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞;
將第一關(guān)鍵詞與第二關(guān)鍵詞進(jìn)行匹配,若匹配,則與該第二關(guān)鍵詞相對(duì)應(yīng)的音樂資源與第一關(guān)鍵詞相匹配。
進(jìn)一步地,獲取與音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞時(shí),若音樂資源已經(jīng)標(biāo)定了關(guān)鍵詞,則可以直接將音樂資源的第二關(guān)鍵詞與待配樂的動(dòng)畫的第一關(guān)鍵詞進(jìn)行匹配,以建立待配樂的動(dòng)畫與相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系。若音樂資源尚未標(biāo)定關(guān)鍵詞,則可以采用以下步驟獲取與音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞:
提取音樂資源的梅爾頻率倒譜系數(shù);
依據(jù)音樂資源的梅爾頻率倒譜系數(shù),確定音樂資源的第四特征向量;
依據(jù)以第四特征向量作為輸入層、以第五特征向量作為輸出層構(gòu)建的第二神經(jīng)網(wǎng)絡(luò),將輸出層中概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞;其中,第五特征向量中的分量表示音樂資源與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,第五特征向量中的分量與第二關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,第二關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
梅爾頻率倒譜系數(shù)(Mel-Frequency Cepstral Coefficients,MFCCs)就是組成梅爾頻率倒譜的系數(shù)。他們派生自音頻片段的倒譜(cepstrum)表示(a nonlinear"spectrum-of-a-spectrum")。倒譜和梅爾頻率倒譜的區(qū)別在于,梅爾頻率倒譜的頻帶劃分是在梅爾刻度上等距劃分的,它比用于正常的對(duì)數(shù)倒頻譜中的線性間隔的頻帶更能近似人類的聽覺系統(tǒng)。因此,用梅爾頻率倒譜系數(shù)能夠更好地體現(xiàn)出音樂資源的特征。以依據(jù)音樂資源的梅爾頻率倒譜系數(shù)確定的第四特征向量作為神經(jīng)網(wǎng)絡(luò)的輸入層,采用與圖4類似的神經(jīng)網(wǎng)絡(luò)架構(gòu),即可得到輸出層中第四特征向量中各分量的值,進(jìn)而可以依據(jù)各分量的數(shù)值大小,將概率最高的預(yù)設(shè)數(shù)量個(gè)關(guān)鍵詞作為與音樂資源相對(duì)應(yīng)的第二關(guān)鍵詞。在此不再贅述。
實(shí)施例2
在實(shí)施例1的基礎(chǔ)上,在建立待配樂的動(dòng)畫與相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系之后,還可以執(zhí)行步驟S104依據(jù)動(dòng)畫片段的第一特征向量,在相匹配的音樂資源中融合音效,參見圖5所示。
由于第一特征向量中包含動(dòng)畫骨骼空間坐標(biāo)數(shù)據(jù)和/或幀間的骨骼加速度等體現(xiàn)運(yùn)動(dòng)特征的分量,因此,依據(jù)動(dòng)畫片段的第一特征向量,在找到了相匹配的音樂資源后再進(jìn)一步融合音效,從而能夠更生動(dòng)、直觀、準(zhǔn)確的反映動(dòng)畫的運(yùn)動(dòng)特征。
例如,對(duì)于手部的骨骼點(diǎn),依據(jù)第一特征向量中表現(xiàn)不同動(dòng)畫幀中手部骨骼點(diǎn)的分量,可以實(shí)時(shí)監(jiān)測到該骨骼點(diǎn)的加速度。當(dāng)加速度達(dá)到預(yù)設(shè)的閾值時(shí),可以在該加速度的持續(xù)時(shí)間內(nèi),添加適合于手部骨骼點(diǎn)的加速度閾值的音樂聲效,并用淡入淡出的方式與已匹配的音樂資源相融合。
再例如,對(duì)于腳部的骨骼點(diǎn),如果該動(dòng)畫屬于跳舞類(此時(shí),該動(dòng)畫的關(guān)鍵詞之一可能為跳舞或舞蹈等相關(guān)詞匯)的,則通過第一特征向量中表現(xiàn)不同動(dòng)畫幀中腳部骨骼點(diǎn)的分量,當(dāng)檢測到腳部的骨骼點(diǎn)在以超過預(yù)設(shè)速度閾值的速度觸碰地板時(shí),可以添加適合跳舞、踢踏類的瞬時(shí)音效,與已匹配的音樂資源相融合。
對(duì)于每種音樂類型,都可以結(jié)合動(dòng)畫中的動(dòng)作特征融合多種音樂聲效。依據(jù)每個(gè)動(dòng)畫骨骼點(diǎn)的運(yùn)動(dòng)規(guī)律和運(yùn)動(dòng)特征,可以決策出最合適的音樂聲效,添加到原有的音樂聲中,從而增強(qiáng)表現(xiàn)效果。
實(shí)施例3
與以上實(shí)施例1或?qū)嵤├?相對(duì)應(yīng)地,本申請(qǐng)還提供了一種為動(dòng)畫配樂的裝置,參見圖6所示,包括:
特征向量確定模塊101,用于依據(jù)動(dòng)畫片段,確定動(dòng)畫片段的第一特征向量;其中,動(dòng)畫片段由待配樂的動(dòng)畫中提取得到;
第一關(guān)鍵詞確定模塊102,用于依據(jù)動(dòng)畫片段的第一特征向量,確定與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;
音樂資源匹配模塊103,用于依據(jù)第一關(guān)鍵詞,確定與第一關(guān)鍵詞相匹配的音樂資源,建立待配樂的動(dòng)畫與相匹配的音樂資源之間的對(duì)應(yīng)關(guān)系。
其中,第一關(guān)鍵詞確定模塊中可以進(jìn)一步包括第一神經(jīng)網(wǎng)絡(luò),第一神經(jīng)網(wǎng)絡(luò)以第二特征向量作為輸入層、以第三特征向量作為輸出層,用于確定與待配樂的動(dòng)畫相對(duì)應(yīng)的第一關(guān)鍵詞;其中,第二特征向量依據(jù)第一特征向量確定,第三特征向量中的分量表示待配樂的動(dòng)畫與該分量所對(duì)應(yīng)的關(guān)鍵詞相對(duì)應(yīng)的概率,第三特征向量中的分量與第一關(guān)鍵詞庫中的關(guān)鍵詞一一對(duì)應(yīng);并且,第一關(guān)鍵詞庫中包含至少一個(gè)關(guān)鍵詞。
由于本實(shí)施例為與為動(dòng)畫配樂的方法相對(duì)應(yīng)的裝置實(shí)施例,因此,實(shí)施例1與實(shí)施例2中關(guān)于方法的闡釋均適用于本實(shí)施例,在此不再贅述。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來說,本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。