一種游戲角色生成方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及圖像分析與識(shí)別技術(shù)領(lǐng)域,尤其涉及一種游戲角色生成方法及
目.0
【背景技術(shù)】
[0002]目前國(guó)內(nèi)和國(guó)外的各類(lèi)型游戲都是直接使用三維建模軟件來(lái)建立游戲角色所需的模型,然后為玩家提供調(diào)整模型參數(shù)的交互界面,通過(guò)界面提供的調(diào)整操作完成游戲角色模型的定制,俗稱捏臉系統(tǒng)。
[0003]玩家通過(guò)該捏臉系統(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ā)明通過(guò)將玩家五官的源特征數(shù)據(jù)與五官模型的特征數(shù)據(jù)進(jìn)行匹配,找出匹配的五官模型,并設(shè)置在玩家的游戲角色模型的臉部,實(shí)現(xiàn)快速、方便地自動(dòng)創(chuàng)建和玩家相像的游戲角色,從而節(jié)省了玩家時(shí)間的浪費(fèi),提高玩家體驗(yàn)。
【附圖說(shuō)明】
[0016]圖1是本發(fā)明實(shí)施例一提供的游戲角色生成方法的流程圖;
[0017]圖2是本發(fā)明實(shí)施例二提供的游戲角色生成方法的流程圖;
[0018]圖3是本發(fā)明實(shí)施例三提供的游戲角色生成裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0019]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說(shuō)明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
[0020]實(shí)施例一
[0021]圖1是本發(fā)明實(shí)施例一提供的游戲角色生成方法的流程圖,本實(shí)施例可適用于游戲角色的設(shè)置,該方法可以由游戲角色生成裝置來(lái)執(zhí)行,該裝置可通過(guò)硬件和/或軟件的方式實(shí)現(xiàn),具體包括如下步驟:
[0022]S110、采集玩家面部數(shù)據(jù),并作為第一面部數(shù)據(jù);
[0023]其中,面部數(shù)據(jù)是通過(guò)攝像頭采集的包含玩家人臉的圖像,采集面部數(shù)據(jù)的攝像頭可以是一個(gè)或多個(gè),優(yōu)選是,利用兩個(gè)相對(duì)位置固定的通用串行總線接口的攝像頭采集玩家面部數(shù)據(jù),從而提高所采集的玩家面部數(shù)據(jù)的完整性,例如,可以選用雙目攝像頭,并將獲得的玩家完整人臉的面部數(shù)據(jù)作為第一面部數(shù)據(jù)。利用攝像頭采集玩家面部數(shù)據(jù)的方法可以是基于開(kāi)源機(jī)器視覺(jué)庫(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ù)最相近的眼睛模型作為匹配的眼睛模型。類(lèi)似的可以找出與玩家鼻子和嘴巴匹配的鼻子和嘴巴的模型。
[0029]S140、將匹配的五官模型,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,并將客戶端的數(shù)據(jù)更新和顯示。
[0030]其中,根據(jù)源特征數(shù)據(jù)設(shè)置在游戲角色模型臉部,可以是根據(jù)源特征數(shù)據(jù)中的五官在人臉上的位置坐標(biāo),將匹配的五官模型設(shè)置在游戲角色模型臉部的相應(yīng)位置上。
[0031]本實(shí)施例的技術(shù)方案,通過(guò)將玩家五官的源特征數(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)行匹配;通過(guò)匹配找出最相近的五官模型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ù)處理的過(guò)程也可以通過(guò)基于OpenCV的函數(shù)實(shí)現(xiàn)。
[0043]S250、根據(jù)第三面部數(shù)據(jù)檢測(cè)五官的寬度、高度和位置坐標(biāo),并計(jì)算五官的寬度和高度,與玩家人臉的寬度和高度的比值;
[0044]其中,可以使用OpenCV提供的基于harr級(jí)聯(lián)分類(lèi)器檢測(cè)方法,檢測(cè)五官的寬度、高度和位置坐標(biāo),并計(jì)算五官的寬度和高度,與玩家人臉的寬度和高度的比值。
[0045]S260、將所述五官的位置坐標(biāo),及五官的寬度和高度與玩家人臉的寬度和高度的比值作為源特征數(shù)據(jù),并