本發(fā)明涉及增強(qiáng)現(xiàn)實(shí)技術(shù)領(lǐng)域,具體涉及一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法及系統(tǒng)。
背景技術(shù):
在如今ar移動(dòng)端應(yīng)用中,很多都用到了靠移動(dòng)終端攝像頭去識(shí)別現(xiàn)實(shí)世界中的識(shí)別圖從而在移動(dòng)終端中生成對(duì)應(yīng)的模型這種方式來(lái)構(gòu)建自己的ar場(chǎng)景,如市面上很火爆的啟蒙卡片等。但是現(xiàn)在市面上的這種掃描卡片出現(xiàn)模型的方式很死板,對(duì)于同一張識(shí)別圖只能固定掃描出一種模型,無(wú)法和現(xiàn)實(shí)世界中的卡片再做出更多的交互,這也是急需解決的一個(gè)難題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法及系統(tǒng),可以對(duì)同一識(shí)別圖識(shí)別出多種不同的ar場(chǎng)景。
本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法,包括以下步驟,
s1,對(duì)在水平面內(nèi)不同水平角度下的同一識(shí)別圖設(shè)置不同的配套模型;
s2,確定所述識(shí)別圖的多個(gè)水平角度;
s3,根據(jù)多個(gè)所述水平角度中的每個(gè)所述水平角度為所述識(shí)別圖動(dòng)態(tài)加載其對(duì)應(yīng)的配套模型,生成不同的ar場(chǎng)景。
本發(fā)明的有益效果是:本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法通過(guò)識(shí)別出識(shí)別圖的水平角度的大小,根據(jù)識(shí)別圖實(shí)時(shí)的水平角度,加載不同的模型及配套的特效、聲音等,讓用戶可以更加深入的體驗(yàn)到ar技術(shù)所帶來(lái)的樂(lè)趣,給以往死板的識(shí)別圖掃描方式提供巨大革新和給予用戶全新的體驗(yàn)。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
進(jìn)一步,所述s2中,利用自帶攝像頭的移動(dòng)終端移動(dòng)終端來(lái)確定所述識(shí)別圖的水平角度。
進(jìn)一步,所述s2包括以下步驟,
s21,獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a;
s22,建立垂直于移動(dòng)終端帶有攝像頭的一面的法線l和垂直于識(shí)別圖的法線m,并獲取法線l與法線m之間的夾角d;
s23,通過(guò)夾角a和夾角d計(jì)算出識(shí)別圖的水平角b,其中識(shí)別圖的水平角b=將夾角a-180°+夾角d。
進(jìn)一步,所述移動(dòng)終端為帶有重力感應(yīng)模塊和unity工具的移動(dòng)終端,利用unity工具調(diào)用移動(dòng)終端上的重力感應(yīng)模塊獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a。
進(jìn)一步,法線l的建立方式是通過(guò)攝像頭在unity工具中建立的,法線m的建立方式是通過(guò)所述識(shí)別圖自身發(fā)射的,通過(guò)unity工具獲取法線l與法線m之間的夾角d。
采用上述進(jìn)一步方案的有益效果是:本發(fā)明通過(guò)移動(dòng)終端自帶的重力感應(yīng)模塊,可以更加智能的識(shí)別出識(shí)別圖此時(shí)的水平角度的大小,其識(shí)別方法簡(jiǎn)單。
基于上述一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法,本發(fā)明還提供一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng)。
一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng),
包括配套模型設(shè)置模塊、水平角度識(shí)別模塊和配套模型加載模塊,
所述配套模型設(shè)置模塊,其用于對(duì)在水平面內(nèi)不同水平角度下的同一識(shí)別圖設(shè)置不同的配套模型;
所述水平角度識(shí)別模塊,其用于確定所述識(shí)別圖的多個(gè)水平角度;
所述配套模型加載模塊,其用于根據(jù)多個(gè)所述水平角度中的每個(gè)所述水平角度為所述識(shí)別圖動(dòng)態(tài)加載其對(duì)應(yīng)的配套模型,生成不同的ar場(chǎng)景。
本發(fā)明的有益效果是:本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng)通過(guò)識(shí)別出識(shí)別圖的水平角度的大小,根據(jù)識(shí)別圖實(shí)時(shí)的水平角度,加載不同的模型及配套的特效、聲音等,讓用戶可以更加深入的體驗(yàn)到ar技術(shù)所帶來(lái)的樂(lè)趣,給以往死板的識(shí)別圖掃描方式提供巨大革新和給予用戶全新的體驗(yàn)。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
進(jìn)一步,所述水平角度識(shí)別模塊中,利用自帶攝像頭的移動(dòng)終端來(lái)確定所述識(shí)別圖的水平角度。
進(jìn)一步,所述水平角度識(shí)別模塊確定所述識(shí)別圖的水平角度的過(guò)程具體為,
獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a;
建立垂直于移動(dòng)終端帶有攝像頭的一面的法線l和垂直于識(shí)別圖的法線m,并獲取法線l與法線m之間的夾角d;
通過(guò)夾角a和夾角d計(jì)算出識(shí)別圖的水平角b,其中識(shí)別圖的水平角b=將夾角a-180°+夾角d。
進(jìn)一步,所述移動(dòng)終端為帶有重力感應(yīng)模塊和unity工具的移動(dòng)終端,利用unity工具調(diào)用移動(dòng)終端上的重力感應(yīng)模塊獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a。
進(jìn)一步,法線l的建立方式是通過(guò)攝像頭在unity工具中建立的,法線m的建立方式是通過(guò)所述識(shí)別圖自身發(fā)射的,通過(guò)unity工具獲取法線l與法線m之間的夾角d。
采用上述進(jìn)一步方案的有益效果是:本發(fā)明通過(guò)移動(dòng)終端自帶的重力感應(yīng)模塊,可以更加智能的識(shí)別出識(shí)別圖此時(shí)的水平角度的大小,其識(shí)別方法簡(jiǎn)單。
附圖說(shuō)明
圖1為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法的流程圖圖;
圖2為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中判定識(shí)別圖的水平角度的流程圖;
圖3為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中移動(dòng)終端的重力感應(yīng)的x、y、z三軸的分布式題圖;
圖4為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中判定識(shí)別圖的水平角度時(shí)的一種側(cè)面模型結(jié)構(gòu)圖;
圖5為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中判定識(shí)別圖的水平角度時(shí)的另一種側(cè)面模型結(jié)構(gòu)圖;
圖6為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施方式
以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
如圖1所示,一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法,包括以下步驟,
s1,對(duì)在水平面內(nèi)不同水平角度下的同一識(shí)別圖設(shè)置不同的配套模型;
s2,確定所述識(shí)別圖的多個(gè)水平角度;
s3,根據(jù)多個(gè)所述水平角度中的每個(gè)所述水平角度為所述識(shí)別圖動(dòng)態(tài)加載其對(duì)應(yīng)的配套模型,生成不同的ar場(chǎng)景。
其中,所述s2中,采用自帶攝像頭的移動(dòng)終端來(lái)判定所述識(shí)別圖的水平角度,其判定過(guò)程包括以下步驟,如圖2所示,
s21,獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a;
s22,建立垂直于移動(dòng)終端帶有攝像頭的一面的法線l和垂直于識(shí)別圖的法線m,并獲取法線l與法線m之間的夾角d;
s23,通過(guò)夾角a和夾角d計(jì)算出識(shí)別圖的水平角b,其中識(shí)別圖的水平角b=將夾角a-180°+夾角d。
在本具體實(shí)施例中,所述移動(dòng)終端為帶有重力感應(yīng)模塊和unity工具的移動(dòng)終端,利用unity工具調(diào)用移動(dòng)終端上的重力感應(yīng)模塊獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a。法線l的建立方式是通過(guò)攝像頭在unity工具中建立的法線m的建立方式是通過(guò)識(shí)別圖自身發(fā)射的,通過(guò)unity工具獲取法線l與法線m之間的夾角d。
下面以自帶攝像頭、重力感應(yīng)模塊和unity工具的移動(dòng)終端(具體為智能手機(jī))為例,說(shuō)明本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中判定識(shí)別圖的水平角度的原理。
圖3為本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法中移動(dòng)終端的重力感應(yīng)的x、y、z三軸的分布式題圖,其中,
x軸:home按鍵在下移動(dòng)終端面朝天向右旋轉(zhuǎn)90度重力分量為+1.0向左旋轉(zhuǎn)90度重力分量為-1.0;
y軸:home按鍵在上移動(dòng)終端背朝自己重力分量為+1.0home按鍵在下移動(dòng)終端面朝自己重力分量為-1.0;
z軸:移動(dòng)終端面朝地面重力分量為+1.0移動(dòng)終端面朝天空重力分量為-1.0。
在unity工具中,可以調(diào)用移動(dòng)終端上的重力感應(yīng)模塊而獲取此時(shí)移動(dòng)終端攝像頭的那一面和水平面之間的夾角a,識(shí)別圖背面此時(shí)與水平面之間的夾角(也稱水平角度)先設(shè)為b,移動(dòng)終端的攝像頭可以在unity中建立法線射線l,識(shí)別圖也發(fā)出其法線射線m,若此時(shí)識(shí)別圖背面此時(shí)與水平面之間的夾角b小于90度,則此時(shí)判定識(shí)別圖的水平角度的側(cè)面模型如圖4所示。而在unity工具的vector3.angle中可以得到法線l與法線m的夾角d,移動(dòng)終端平面與識(shí)別圖平面的夾角是等于其法線的夾角的補(bǔ)角的,c=180-d,同時(shí)可以得出b=a-c,最后換算可得b=a-180+d,即可以算出此時(shí)識(shí)別圖和水平方向的夾角b的大小了。
若此時(shí)識(shí)別圖背面此時(shí)與水平面之間的夾角b大于90度,則此時(shí)判定識(shí)別圖的水平角度的側(cè)面模型如圖5所示。此時(shí)同樣可以得到移動(dòng)終端平面與識(shí)別圖平面的夾角是等于其法線的夾角的補(bǔ)角的,c=180-d,同時(shí)可以得出b=a-c,最后換算可得b=a-180+d。經(jīng)過(guò)證明,可以得出,不管識(shí)別圖與水平方向的夾角是否大于90度,其都等于a-180+d,即可證明此公示是通用的。
本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法通過(guò)判定識(shí)別圖的水平角度的大小,根據(jù)識(shí)別圖實(shí)時(shí)的水平角度,加載不同的模型及配套的特效、聲音等,如可以在識(shí)別圖水平放置時(shí)掃描識(shí)別圖將出現(xiàn)一個(gè)挖坑出來(lái)的地鼠,配合打地洞的特效和聲音,而當(dāng)識(shí)別圖垂直放置時(shí),此時(shí)再用移動(dòng)終端掃描,將會(huì)出現(xiàn)一個(gè)直面向你飛奔而來(lái)的老虎,配合飛揚(yáng)的沙塵特效和飛奔的聲音,同樣一張識(shí)別圖卻可以帶給人完全不同的ar效果,掃描將給以往死板的識(shí)別圖掃描方式提供巨大革新和給予用戶全新的體驗(yàn)。
基于上述一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的方法,本發(fā)明還提供一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng)。
如圖6所示,一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng),包括配套模型設(shè)置模塊、水平角度識(shí)別模塊和配套模型加載模塊,
所述配套模型設(shè)置模塊,其用于對(duì)在水平面內(nèi)不同水平角度下的同一識(shí)別圖設(shè)置不同的配套模型;
所述水平角度識(shí)別模塊,其用于確定所述識(shí)別圖的多個(gè)水平角度;
所述配套模型加載模塊,其用于根據(jù)多個(gè)所述水平角度中的每個(gè)所述水平角度為所述識(shí)別圖動(dòng)態(tài)加載其對(duì)應(yīng)的配套模型,生成不同的ar場(chǎng)景。
其中,所述水平角度識(shí)別模塊中,利用自帶攝像頭的移動(dòng)終端來(lái)確定所述識(shí)別圖的水平角度,其判定過(guò)程具體為,
獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a;
建立垂直于移動(dòng)終端帶有攝像頭的一面的法線l和垂直于識(shí)別圖的法線m,并獲取法線l與法線m之間的夾角d;
通過(guò)夾角a和夾角d計(jì)算出識(shí)別圖的水平角b,其中識(shí)別圖的水平角b=將夾角a-180°+夾角d。
在本發(fā)明的具體實(shí)施例中,所述移動(dòng)終端為帶有重力感應(yīng)模塊和unity工具的移動(dòng)終端,利用unity工具調(diào)用移動(dòng)終端上的重力感應(yīng)模塊獲取移動(dòng)終端帶有攝像頭的一面與水平面之間的夾角a。法線l的建立方式是通過(guò)攝像頭在unity工具中建立的法線m的建立方式是通過(guò)識(shí)別圖自身發(fā)射的,通過(guò)unity工具獲取法線l與法線m之間的夾角d。
本發(fā)明一種基于識(shí)別圖的水平角度構(gòu)建ar場(chǎng)景的系統(tǒng)通過(guò)識(shí)別出識(shí)別圖的水平角度的大小,根據(jù)識(shí)別圖實(shí)時(shí)的水平角度,加載不同的模型及配套的特效、聲音等,讓用戶可以更加深入的體驗(yàn)到ar技術(shù)所帶來(lái)的樂(lè)趣,給以往死板的識(shí)別圖掃描方式提供巨大革新和給予用戶全新的體驗(yàn)。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。