本發(fā)明涉及虛擬產(chǎn)品試戴領(lǐng)域,特別是涉及一種眼鏡虛擬三維試戴方法和眼鏡虛擬三維試戴系統(tǒng)。
背景技術(shù):
隨著信息技術(shù)與互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,眼鏡行業(yè)對(duì)三維試戴的需求越來越緊迫。目前大多技術(shù)都是利用二維圖像處理技術(shù)的眼鏡試戴方法與系統(tǒng),主要有兩種:1)基于拍攝或者上傳的二維頭像圖片信息,再把眼鏡合成到頭像圖片上。該方法將圖片設(shè)置為背景圖片,通過眼鏡識(shí)別算法獲取眼鏡佩戴的位置,然后把眼鏡圖貼到背景圖片合適的位置,該方法只能得到一個(gè)角度的試戴效果,而且眼鏡貼圖方式影響了展示效果,試戴效果不夠逼真。2)試戴者站在攝像頭前,試戴系統(tǒng)通過圖像處理技術(shù)將眼鏡模型戴在顧客臉上,顧客轉(zhuǎn)臉模型也跟著轉(zhuǎn)。該方法合成精度不好,效率不高,試戴效果不夠逼真,而且,如果是近視客戶,摘掉眼鏡進(jìn)行試戴,會(huì)看不清試戴效果,戴上眼鏡的話就會(huì)出現(xiàn)兩個(gè)眼鏡疊加在一起的現(xiàn)象,大大影響試戴體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
基于此,有必要提供一種能進(jìn)行高效率、高逼真度、用戶體驗(yàn)度高的眼鏡虛擬三維試戴方法和系統(tǒng)。
一種眼鏡虛擬三維試戴方法,包括:
獲取人臉戴眼鏡和不戴眼鏡的三維模型;
將所述人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊;
獲取佩戴的眼鏡在所述人臉不戴眼鏡的三維模型上的佩戴位置;
根據(jù)所述佩戴位置將三維眼鏡模型佩戴到所述人臉不戴眼鏡的三維模型上。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述佩戴位置將三維眼鏡模型佩戴到所述人臉不戴眼鏡的三維模型上的步驟之前還包括:
從三維眼鏡模型庫中調(diào)取所述三維眼鏡模型,所述三維眼鏡模型庫包括所述三維眼鏡模型和所述三維眼鏡模型的定位特征位置信息。
在其中一個(gè)實(shí)施例中,所述獲取佩戴的眼鏡在所述人臉不戴眼鏡的三維模型上的佩戴位置的步驟具體為:
獲取所述佩戴的眼鏡在所述人臉戴眼鏡的三維模型中的定位特征位置;
根據(jù)所述定位特征位置將所述眼鏡映射到所述人臉不戴眼鏡的三維模型上;
根據(jù)映射結(jié)果得到所述佩戴位置。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述定位特征位置將所述眼鏡映射到所述人臉不戴眼鏡的三維模型上的步驟具體為:
將所述眼鏡的所述定位特征位置的各自法向映射到所述人臉不戴眼鏡的三維模型上。
在其中一個(gè)實(shí)施例中,所述將所述人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊的步驟具體為:
根據(jù)icp算法,將所述人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊。
在其中一個(gè)實(shí)施例中,所述獲取人臉戴眼鏡和不戴眼鏡的三維模型的步驟包括:
獲取人臉戴眼鏡和不戴眼鏡的彩色三維模型。
在其中一個(gè)實(shí)施例中,所述佩戴位置包括左邊基準(zhǔn)點(diǎn)、左邊耳夾點(diǎn)、右邊基準(zhǔn)點(diǎn)、右邊耳夾點(diǎn)。
另一方面,本發(fā)明還提出一種眼鏡虛擬三維試戴系統(tǒng),包括:
三維人臉數(shù)據(jù)采集模塊,用于獲取人臉戴眼鏡和不戴眼鏡的三維模型;
匹配對(duì)齊模塊,用于將所述人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊;
定位模塊,用于獲取佩戴的眼鏡在所述人臉不戴眼鏡的三維模型上的佩戴位置;
試戴模塊,用于根據(jù)所述佩戴位置將三維眼鏡模型佩戴到所述人臉不戴眼鏡的三維模型上。
在其中一個(gè)實(shí)施例中,還包括:
調(diào)取三維眼鏡模型模塊,用于從三維眼鏡模型庫中調(diào)取所述三維眼鏡模型,所述三維眼鏡模型庫包括所述三維眼鏡模型和所述三維眼鏡模型的定位特征位置信息。
在其中一個(gè)實(shí)施例中,所述定位模塊包括:
獲取定位特征位置模塊,用于獲取所述佩戴的眼鏡在所述人臉戴眼鏡的三維模型中的定位特征位置;
映射模塊,用于根據(jù)所述定位特征位置將所述眼鏡映射到所述人臉不戴眼鏡的三維模型上;
獲取佩戴位置模塊,用于根據(jù)映射結(jié)果得到所述佩戴位置。
上述眼鏡虛擬三維試戴方法和眼鏡虛擬三維試戴系統(tǒng),包括獲取人臉戴眼鏡和不戴眼鏡的三維模型,將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊,獲取眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置,根據(jù)佩戴位置將三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上,此方法通過三維虛擬試戴,能實(shí)現(xiàn)多個(gè)不同角度的三維試戴效果,提高三維眼鏡試戴的逼真度和效率,提高用戶試戴體驗(yàn)。
附圖說明
圖1為一實(shí)施例中眼鏡虛擬三維試戴方法的流程圖;
圖2為另一實(shí)施例中眼鏡虛擬三維試戴方法的流程圖;
圖3為一實(shí)施例中眼鏡虛擬三維試戴系統(tǒng)的系統(tǒng)方框圖;
圖4為另一實(shí)施例中眼鏡虛擬三維試戴系統(tǒng)的系統(tǒng)方框圖。
具體實(shí)施方式
為了便于理解本發(fā)明,下面將參照相關(guān)附圖對(duì)本發(fā)明進(jìn)行更全面的描述。附圖中給出了本發(fā)明的首選實(shí)施例。但是,本發(fā)明可以以許多不同的形式來實(shí)現(xiàn),并不限于本文所描述的實(shí)施例。相反地,提供這些實(shí)施例的目的是使對(duì)本發(fā)明的公開內(nèi)容更加透徹全面。
除非另有定義,本文所使用的所有的技術(shù)和科學(xué)術(shù)語與屬于本發(fā)明的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中在本發(fā)明的說明書中所使用的術(shù)語只是為了描述具體的實(shí)施例的目的,不是旨在于限制本發(fā)明。本文所使用的術(shù)語“及/或”包括一個(gè)或多個(gè)相關(guān)的所列項(xiàng)目的任意的和所有的組合。
參見圖1,圖1為一實(shí)施例中眼鏡虛擬三維試戴方法的流程圖。
在本實(shí)施例中,該眼鏡虛擬三維試戴方法包括:
s100,獲取人臉戴眼鏡和不戴眼鏡的三維模型。
在不同時(shí)刻使用同一設(shè)備分別獲取人臉戴眼鏡和不戴眼鏡的三維模型,分別得到詳細(xì)的人臉戴眼鏡和不戴眼鏡的三維模型數(shù)據(jù)。人臉戴眼鏡的三維模型數(shù)據(jù)包括人臉三維模型數(shù)據(jù)和佩戴的眼鏡的三維模型數(shù)據(jù),人臉不戴眼鏡的三維模型數(shù)據(jù)僅包括人臉三維模型數(shù)據(jù)。
s200,將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊。
由于步驟s100中獲取人臉戴眼鏡和不戴眼鏡的兩個(gè)三維模型是在不同時(shí)刻采集的,這兩個(gè)三維模型數(shù)據(jù)中的人臉三維模型數(shù)據(jù)可能不一致,因此需要對(duì)人臉戴眼鏡和不戴眼鏡的兩個(gè)三維模型進(jìn)行匹配對(duì)齊,使這兩個(gè)模型中的人臉三維模型數(shù)據(jù)完全一致。在一個(gè)實(shí)施例中,通過icp算法對(duì)人臉戴眼鏡和不戴眼鏡的兩個(gè)三維模型進(jìn)行匹配對(duì)齊。
icp算法是通過迭代優(yōu)化來估計(jì)精確的變換矩陣t,利用精確的變換矩陣t來完成三維人臉戴眼鏡和不戴眼鏡中的人臉三維模型數(shù)據(jù)的自動(dòng)匹配,從而使這兩個(gè)人臉三維模型數(shù)據(jù)完全一致。迭代優(yōu)化的具體步驟為:1)將變換矩陣t初始化為單位變換矩陣t0;2)在人臉戴眼鏡的三維模型中選取采樣點(diǎn)pi,i=1,2,…,n;3)在人臉不戴眼鏡的三維模型中尋找與t(p,t)相對(duì)應(yīng)的點(diǎn)qi,i=1,2,…,n;4)構(gòu)造誤差測度函數(shù)e(t),通過最小化e(t)來優(yōu)化t,當(dāng)誤差值的變化小于設(shè)定閾值時(shí),結(jié)束上述迭代優(yōu)化,輸出最終精確的變換矩陣t。
s300,獲取佩戴的眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置。
由于要把佩戴的眼鏡戴在人臉不戴眼鏡的三維模型上,需要確定該眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置。
s400,根據(jù)佩戴位置將三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上。
佩戴位置確定以后,就可以將想要試戴的三維眼鏡模型根據(jù)佩戴位置佩戴到人臉不戴眼鏡的三維模型上,實(shí)現(xiàn)不同角度的三維眼鏡試戴效果。
上述眼鏡虛擬三維試戴方法,通過獲取人臉戴眼鏡和不戴眼鏡的三維模型,將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊,獲取佩戴的眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置,根據(jù)佩戴位置將想要試戴的三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上,能實(shí)現(xiàn)多個(gè)不同角度的三維眼鏡試戴效果,提高三維眼鏡試戴的逼真度和效率,提高用戶試戴體驗(yàn)。
參見圖2,圖2為另一實(shí)施例中眼鏡虛擬三維試戴方法的流程圖。
在本實(shí)施例中,該眼鏡虛擬三維試戴方法包括:
s110,獲取人臉戴眼鏡和不戴眼鏡的彩色三維模型。
在不同時(shí)刻使用同一設(shè)備分別獲取人臉戴眼鏡和不戴眼鏡的彩色三維模型,分別得到詳細(xì)的人臉戴眼鏡和不戴眼鏡的彩色三維模型數(shù)據(jù)。人臉戴眼鏡的彩色三維模型數(shù)據(jù)包括人臉彩色三維模型數(shù)據(jù)和佩戴的眼鏡的彩色三維模型數(shù)據(jù),人臉不戴眼鏡的彩色三維模型數(shù)據(jù)僅包括人臉彩色三維模型數(shù)據(jù)。
s111,根據(jù)icp算法,將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊。
s112,獲取佩戴的眼鏡在人臉戴眼鏡的三維模型中的定位特征位置。
佩戴的眼鏡在設(shè)計(jì)時(shí),已經(jīng)根據(jù)該眼鏡自身的表面曲率特征將該眼鏡的定位特征位置確定,定位特征位置包括左邊定位基準(zhǔn)點(diǎn)、左邊定位耳夾點(diǎn)、右邊定位基準(zhǔn)點(diǎn)、右邊定位耳夾點(diǎn)。左邊定位基準(zhǔn)點(diǎn)是左樁頭,即眼鏡鏡框與左眼鏡腿的交叉位置點(diǎn)。左邊定位耳夾點(diǎn)是左眼鏡腿與左耳朵相接觸的位置點(diǎn),起到耳朵托起眼鏡的作用。右邊定位基準(zhǔn)點(diǎn)是右樁頭,即眼鏡鏡框與右眼鏡腿的交叉位置點(diǎn)。右邊定位耳夾點(diǎn)是右眼鏡腿與右耳朵相接觸的位置點(diǎn),起到耳朵托起眼鏡的作用。
s113,將眼鏡的定位特征位置的各自法向映射到人臉不戴眼鏡的三維模型上。
在人臉戴眼鏡的彩色三維模型上,把佩戴的眼鏡的定位特征位置通過各自的法向映射到人臉不戴眼鏡的彩色三維模型上。
s114,根據(jù)映射結(jié)果得到佩戴位置。
將佩戴的眼鏡的定位特征位置通過各自的法向映射到人臉不戴眼鏡的彩色三維模型上之后,每一個(gè)映射后的定位特征位置會(huì)與人臉不戴眼鏡的彩色三維模型表面有一個(gè)交點(diǎn),每一個(gè)交點(diǎn)就作為人臉不戴眼鏡的彩色三維模型上的佩戴位置。定位特征位置包括左邊定位基準(zhǔn)點(diǎn)、左邊定位耳夾點(diǎn)、右邊定位基準(zhǔn)點(diǎn)、右邊定位耳夾點(diǎn)。在一個(gè)實(shí)施例中,佩戴位置包括左邊基準(zhǔn)點(diǎn)、左邊耳夾點(diǎn)、右邊基準(zhǔn)點(diǎn)、右邊耳夾點(diǎn)。左邊定位基準(zhǔn)點(diǎn)進(jìn)行法向映射后得到左邊基準(zhǔn)點(diǎn),左邊定位耳夾點(diǎn)進(jìn)行法向映射后得到左邊耳夾點(diǎn),右邊定位基準(zhǔn)點(diǎn)進(jìn)行法向映射后得到右邊基準(zhǔn)點(diǎn),右邊定位耳夾點(diǎn)進(jìn)行法向映射后得到右邊耳夾點(diǎn)。
s115,從三維眼鏡模型庫中調(diào)取三維眼鏡模型。
彩色三維眼鏡模型庫中,除了保存每副眼鏡的彩色三維結(jié)構(gòu)模型之外,還保存每副眼鏡所對(duì)應(yīng)的定位特征位置信息,將彩色三維眼鏡模型從彩色三維眼鏡模型庫中調(diào)出,進(jìn)入步驟s116。
s116,根據(jù)佩戴位置將三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上。
根據(jù)彩色三維眼鏡模型的定位特征位置,將定位特征位置的每一個(gè)特征點(diǎn)與佩戴位置對(duì)應(yīng)的每一個(gè)定位點(diǎn)進(jìn)行匹配,就可以將該彩色三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上。
上述眼鏡虛擬三維試戴方法,通過獲取人臉戴眼鏡和不戴眼鏡的彩色三維模型,根據(jù)icp算法,將人臉戴眼鏡和不戴眼鏡的彩色三維模型進(jìn)行匹配對(duì)齊,獲取佩戴的眼鏡在人臉戴眼鏡的彩色三維模型中的定位特征位置,將眼鏡的定位特征位置的各自法向映射到人臉不戴眼鏡的彩色三維模型上,根據(jù)映射結(jié)果得到佩戴位置,從彩色三維眼鏡模型庫中調(diào)取彩色三維眼鏡模型,將定位特征位置和佩戴位置進(jìn)行匹配就可以將該彩色三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上。此方法能實(shí)現(xiàn)多個(gè)不同角度的彩色三維眼鏡試戴效果,提高彩色三維眼鏡試戴的逼真度和效率,提高用戶試戴體驗(yàn)。
參見圖3,圖3為一實(shí)施例中眼鏡虛擬三維試戴系統(tǒng)的系統(tǒng)方框圖。
在本實(shí)施例中,該眼鏡虛擬三維試戴系統(tǒng)包括:
三維人臉數(shù)據(jù)采集模塊10,用于獲取人臉戴眼鏡和不戴眼鏡的三維模型。
匹配對(duì)齊模塊20,用于將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊。
定位模塊30,用于獲取佩戴的眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置。
試戴模塊40,用于根據(jù)佩戴位置將三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上。
參見圖4,圖4為另一實(shí)施例中眼鏡虛擬三維試戴系統(tǒng)的系統(tǒng)方框圖。
在本實(shí)施例中,該眼鏡虛擬三維試戴系統(tǒng)還包括:
調(diào)取三維眼鏡模型模塊50,用于從三維眼鏡模型庫中調(diào)取三維眼鏡模型,三維眼鏡模型庫包括三維眼鏡模型和三維眼鏡模型的定位特征位置信息。
上述定位模塊30包括:
獲取定位特征位置模塊31,用于獲取佩戴的眼鏡在所述人臉戴眼鏡的三維模型中的定位特征位置;
映射模塊32,用于根據(jù)定位特征位置將眼鏡映射到人臉不戴眼鏡的三維模型上;
獲取佩戴位置模塊33,用于根據(jù)映射結(jié)果得到佩戴位置。
在一個(gè)實(shí)施例中,映射模塊32包括:
法向映射模塊321,用于將眼鏡的定位特征位置的各自法向映射到人臉不戴眼鏡的三維模型上。
在一個(gè)實(shí)施例中,匹配對(duì)齊模塊20包括:
算法匹配對(duì)齊模塊21,用于根據(jù)icp算法,將所述人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊。
icp算法是通過迭代優(yōu)化來估計(jì)精確的變換矩陣t,利用精確的變換矩陣t來完成三維人臉戴眼鏡和不戴眼鏡中的人臉三維模型數(shù)據(jù)的自動(dòng)匹配,從而使這兩個(gè)人臉三維模型數(shù)據(jù)完全一致。迭代優(yōu)化的具體步驟為:1)將變換矩陣t初始化為單位變換矩陣t0;2)在人臉戴眼鏡的三維模型中選取采樣點(diǎn)pi,i=1,2,…,n;3)在人臉不戴眼鏡的三維模型中尋找與t(p,t)相對(duì)應(yīng)的點(diǎn)qi,i=1,2,…,n;4)構(gòu)造誤差測度函數(shù)e(t),通過最小化e(t)來優(yōu)化t,當(dāng)誤差值的變化小于設(shè)定閾值時(shí),結(jié)束上述迭代優(yōu)化,輸出最終精確的變換矩陣t。
在一個(gè)實(shí)施例中,三維人臉數(shù)據(jù)采集模塊10包括:
彩色三維人臉數(shù)據(jù)采集模塊11,用于獲取人臉戴眼鏡和不戴眼鏡的彩色三維模型。
上述眼鏡虛擬三維試戴系統(tǒng),通過獲取人臉戴眼鏡和不戴眼鏡的三維模型,將人臉戴眼鏡和不戴眼鏡的三維模型進(jìn)行匹配對(duì)齊,獲取佩戴的眼鏡在人臉不戴眼鏡的三維模型上的佩戴位置,從三維眼鏡模型庫中調(diào)取三維眼鏡模型,根據(jù)佩戴位置將想要試戴的三維眼鏡模型佩戴到人臉不戴眼鏡的三維模型上,能實(shí)現(xiàn)多個(gè)不同角度的三維眼鏡試戴效果,提高三維眼鏡試戴的逼真度和效率,提高用戶試戴體驗(yàn)。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對(duì)上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。