一種游戲角色生成方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及圖像分析與識(shí)別技術(shù)領(lǐng)域,尤其涉及一種游戲角色生成方法及
目.0
【背景技術(shù)】
[0002]目前國(guó)內(nèi)和國(guó)外的各類型游戲都是直接使用三維建模軟件來建立游戲角色所需的模型,然后為玩家提供調(diào)整模型參數(shù)的交互界面,通過界面提供的調(diào)整操作完成游戲角色模型的定制,俗稱捏臉系統(tǒng)。
[0003]玩家通過該捏臉系統(tǒng)完成個(gè)性角色定制時(shí),因?yàn)椴僮鲝?fù)雜,所以需要花費(fèi)大量時(shí)間。同時(shí),當(dāng)玩家想要?jiǎng)?chuàng)建與自己相像的角色時(shí),難度很大,從而導(dǎo)致玩家體驗(yàn)下降。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例提供一種游戲角色生成方法及裝置,能夠快速、方便地自動(dòng)創(chuàng)建和玩家相像的游戲角色,從而節(jié)省了玩家時(shí)間的浪費(fèi),提高玩家體驗(yàn)。
[0005]第一方面,本發(fā)明實(shí)施例提供了一種游戲角色生成方法,該方法包括:
[0006]采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù);
[0007]根據(jù)第一面部數(shù)據(jù)計(jì)算得出玩家五官的源特征數(shù)據(jù),并發(fā)送給服務(wù)器,其中,所述五官包括眼睛、鼻子和嘴巴中的至少一個(gè);
[0008]將玩家五官源特征數(shù)據(jù)分別與服務(wù)器預(yù)置的游戲角色數(shù)據(jù)庫(kù)中五官模型的對(duì)應(yīng)特征數(shù)據(jù)進(jìn)行匹配,確定匹配的五官模型;
[0009]將匹配的五官模型,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,并將客戶端的數(shù)據(jù)更新和顯示。
[0010]第二方面,本發(fā)明實(shí)施例還提供了一種游戲角色生成裝置,該裝置包括:
[0011 ]第一面部數(shù)據(jù)采集模塊,用于采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù);
[0012]源特征數(shù)據(jù)計(jì)算模塊,用于根據(jù)第一面部數(shù)據(jù)計(jì)算得出玩家五官的源特征數(shù)據(jù),并發(fā)送給服務(wù)器,其中,所述五官包括眼睛、鼻子和嘴巴中的至少一個(gè);
[0013]特征匹配模塊,用于將玩家五官源特征數(shù)據(jù)分別與服務(wù)器預(yù)置的游戲角色數(shù)據(jù)庫(kù)中五官模型的對(duì)應(yīng)特征數(shù)據(jù)進(jìn)行匹配,確定匹配的五官模型;
[0014]模型設(shè)置模塊,用于將匹配的五官模型,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,并將客戶端的數(shù)據(jù)更新和顯示。
[0015]本發(fā)明通過將玩家五官的源特征數(shù)據(jù)與五官模型的特征數(shù)據(jù)進(jìn)行匹配,找出匹配的五官模型,并設(shè)置在玩家的游戲角色模型的臉部,實(shí)現(xiàn)快速、方便地自動(dòng)創(chuàng)建和玩家相像的游戲角色,從而節(jié)省了玩家時(shí)間的浪費(fèi),提高玩家體驗(yàn)。
【附圖說明】
[0016]圖1是本發(fā)明實(shí)施例一提供的游戲角色生成方法的流程圖;
[0017]圖2是本發(fā)明實(shí)施例二提供的游戲角色生成方法的流程圖;
[0018]圖3是本發(fā)明實(shí)施例三提供的游戲角色生成裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0019]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
[0020]實(shí)施例一
[0021]圖1是本發(fā)明實(shí)施例一提供的游戲角色生成方法的流程圖,本實(shí)施例可適用于游戲角色的設(shè)置,該方法可以由游戲角色生成裝置來執(zhí)行,該裝置可通過硬件和/或軟件的方式實(shí)現(xiàn),具體包括如下步驟:
[0022]S110、采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù);
[0023]其中,面部數(shù)據(jù)是通過攝像頭采集的包含玩家人臉的圖像,采集面部數(shù)據(jù)的攝像頭可以是一個(gè)或多個(gè),優(yōu)選是,利用兩個(gè)相對(duì)位置固定的通用串行總線接口的攝像頭采集玩家面部數(shù)據(jù),從而提高所采集的玩家面部數(shù)據(jù)的完整性,例如,可以選用雙目攝像頭,并將獲得的玩家完整人臉的面部數(shù)據(jù)作為第一面部數(shù)據(jù)。利用攝像頭采集玩家面部數(shù)據(jù)的方法可以是基于開源機(jī)器視覺庫(kù)(Open Source Computer Vis1n Library,OpenCV)的多攝像頭捕捉方法。
[0024]S120、根據(jù)第一面部數(shù)據(jù)計(jì)算得出玩家五官的源特征數(shù)據(jù),并發(fā)送給服務(wù)器,其中,所述五官包括眼睛、鼻子和嘴巴中的至少一個(gè);
[0025]其中,源特征數(shù)據(jù)為玩家五官的特征數(shù)據(jù),該源特征數(shù)據(jù)可以包括:五官在人臉上的位置坐標(biāo)、五官的寬高占人臉寬高的比例值和五官的寬高比值。例如,眼睛在人臉上的位置坐標(biāo)、眼睛的寬高占人臉寬高的比例值及眼睛的寬高比值。五官可以包括眼睛、鼻子和嘴巴中的至少一個(gè),優(yōu)選是三者全部包括。
[0026]S130、將玩家五官源特征數(shù)據(jù)分別與服務(wù)器預(yù)置的游戲角色數(shù)據(jù)庫(kù)中五官模型的對(duì)應(yīng)特征數(shù)據(jù)進(jìn)行匹配,確定匹配的五官模型;
[0027]其中,服務(wù)器預(yù)置的游戲角色數(shù)據(jù)庫(kù)中至少包括:五官模型對(duì)應(yīng)的特征數(shù)據(jù)和相應(yīng)五官模型身份標(biāo)識(shí)號(hào)碼(Identity,ID)。五官模型對(duì)應(yīng)的特征數(shù)據(jù)為表示五官特征的數(shù)據(jù),同源特征數(shù)據(jù)一致,可以包括:五官在人臉上的位置坐標(biāo)、五官的寬高占人臉寬高的比例值和五官的寬高比值。將五官的源特征數(shù)據(jù)與五官模型對(duì)應(yīng)的特征數(shù)據(jù)利用匹配算法進(jìn)行匹配,找出與五官源特征數(shù)據(jù)最相近的五官模型作為匹配的五官模型。該匹配算法可以是任意能實(shí)現(xiàn)特征匹配的算法,可以是平方差匹配,也可以是相關(guān)匹配等算法。
[0028]例如,將玩家五官源特征數(shù)據(jù)中眼睛的源特征數(shù)據(jù)與游戲角色數(shù)據(jù)庫(kù)中眼睛模型對(duì)應(yīng)的特征數(shù)據(jù)利用匹配算法進(jìn)行匹配,找出與眼睛源特征數(shù)據(jù)最相近的眼睛模型作為匹配的眼睛模型。類似的可以找出與玩家鼻子和嘴巴匹配的鼻子和嘴巴的模型。
[0029]S140、將匹配的五官模型,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,并將客戶端的數(shù)據(jù)更新和顯示。
[0030]其中,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,可以是根據(jù)源特征數(shù)據(jù)中的五官在人臉上的位置坐標(biāo),將匹配的五官模型設(shè)置在游戲角色模型臉部的相應(yīng)位置上。
[0031]本實(shí)施例的技術(shù)方案,通過將玩家五官的源特征數(shù)據(jù)與五官模型的特征數(shù)據(jù)進(jìn)行匹配,找出匹配的五官模型,并設(shè)置在玩家的游戲角色模型的臉部,實(shí)現(xiàn)快速、方便地自動(dòng)創(chuàng)建和玩家相像的游戲角色,從而節(jié)省了玩家時(shí)間的浪費(fèi),提高玩家體驗(yàn)。
[0032]優(yōu)選的,所述采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù)之前,還可以包括:預(yù)置游戲角色數(shù)據(jù)庫(kù)中的五官模型ID和對(duì)應(yīng)五官模型的特征數(shù)據(jù)。其中,模型ID為五官模型身份標(biāo)識(shí)號(hào)碼。
[0033]進(jìn)一步的,所述將玩家五官的源特征數(shù)據(jù)分別與服務(wù)器預(yù)置的游戲角色數(shù)據(jù)庫(kù)中,五官模型的對(duì)應(yīng)特征數(shù)據(jù)進(jìn)行匹配,確定匹配的五官模型,可以包括:將玩家五官的源特征數(shù)據(jù)分別與游戲角色數(shù)據(jù)庫(kù)中五官模型的對(duì)應(yīng)特征數(shù)據(jù)進(jìn)行匹配;通過匹配找出最相近的五官模型ID,并根據(jù)所述模型的ID調(diào)出所述模型。
[0034]實(shí)施例二
[0035]圖2是本發(fā)明實(shí)施例二提供的游戲角色生成方法的流程圖,本實(shí)施例的游戲角色生成方法在上述實(shí)施例的基礎(chǔ)上,將SI 20進(jìn)一步具體化,該方法具體包括如下步驟:
[0036]S210、采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù);
[0037]S220、對(duì)第一面部數(shù)據(jù)進(jìn)行人臉檢測(cè),判斷第一面部數(shù)據(jù)中是否存在人臉;
[0038]其中,對(duì)第一面部數(shù)據(jù)可以利用基于OpenCV的人臉檢測(cè)函數(shù)檢測(cè)人臉,如果檢測(cè)到人臉則執(zhí)行S230,否則返回執(zhí)行S210,重新采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù)。
[0039]S230、如果存在,則去除非人臉部分,得到第二面部數(shù)據(jù);
[0040]該第一面部數(shù)據(jù)中存在人臉,可以包括:存在一個(gè)人臉和存在多個(gè)人臉。如果是存在一個(gè)人臉,則可以執(zhí)行去除非人臉部分,得到第二面部數(shù)據(jù);如果是存在多個(gè)人臉,則可以保留占第一面部數(shù)據(jù)面積比例最大的人臉作為玩家人臉,將其他非玩家人臉部分去除,得到得到第二面部數(shù)據(jù)。
[0041 ] S240、對(duì)第二面部數(shù)據(jù)進(jìn)行預(yù)處理,得到第三面部數(shù)據(jù),其中預(yù)處理至少包括灰度化、平滑處理和尺寸歸一化;
[0042]其中,對(duì)第二面部數(shù)據(jù)進(jìn)行尺寸歸一化,該歸一化后的尺寸可以與游戲角色模型臉部尺寸一致,或呈等比例關(guān)系,該預(yù)處理的過程也可以通過基于OpenCV的函數(shù)實(shí)現(xiàn)。
[0043]S250、根據(jù)第三面部數(shù)據(jù)檢測(cè)五官的寬度、高度和位置坐標(biāo),并計(jì)算五官的寬度和高度,與玩家人臉的寬度和高度的比值;
[0044]其中,可以使用OpenCV提供的基于harr級(jí)聯(lián)分類器檢測(cè)方法,檢測(cè)五官的寬度、高度和位置坐標(biāo),并計(jì)算五官的寬度和高度,與玩家人臉的寬度和高度的比值。
[0045]S260、將所述五官的位置坐標(biāo),及五官的寬度和高度與玩家人臉的寬度和高度的比值作為源特征數(shù)據(jù),并