本發(fā)明涉及視頻處理技術(shù)領(lǐng)域,尤其涉及3d視頻的vr顯示方法及系統(tǒng)。
背景技術(shù):
虛擬現(xiàn)實(shí)(virtualreality_vr)作為現(xiàn)在的一個(gè)熱點(diǎn),目前視頻只有全景視頻才能采用vr觀看。但是全景視頻的內(nèi)容制作比較難,所以內(nèi)容不多。
目前播放vr視頻方法是:把視頻繪制在一個(gè)球體,立方體或者其它幾何體中,然后根據(jù)慣性測(cè)量單元(英文:inertialmeasurementunit_imu)出來的數(shù)據(jù)計(jì)算人眼需要觀看球體的哪一部分,其中imu是用來測(cè)量人頭部的三維旋轉(zhuǎn)。
3d視頻經(jīng)過多年發(fā)展,內(nèi)容已經(jīng)很廣泛,但是3d視頻由于不是全景視頻,不能直接繪制在球體上,否則變形非常嚴(yán)重,如何使3d視頻進(jìn)行vr顯示是目前難以解決的技術(shù)難題,同時(shí)也是用戶迫切希望使用的技術(shù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種3d視頻的vr顯示方法,包括如下步驟:
a.由慣性測(cè)量單元獲取歐拉角;
b.由歐拉角獲得切割球體的極坐標(biāo),所述球體是用于播放3d視頻的載體;
c.由極坐標(biāo)獲得觀看3d視頻的視角;
d.根據(jù)視角播放視頻。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述步驟b中,人的視點(diǎn)與球面的交點(diǎn)是第一交點(diǎn),沿著球面連接比值點(diǎn)和第一交點(diǎn)并且延長(zhǎng)從而與邊界相交于第二交點(diǎn),建立極坐標(biāo):[比值點(diǎn),角度],其中比值點(diǎn)是第一交點(diǎn)和比值點(diǎn)的長(zhǎng)度與第二交點(diǎn)和比值點(diǎn)長(zhǎng)度的比值,角度是第二交點(diǎn)、比值點(diǎn)和邊緣點(diǎn)構(gòu)成的角度,切開的球面中心為比值點(diǎn),初始方位為人站在原點(diǎn)。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述步驟c中,對(duì)多種視頻進(jìn)行處理,多種視頻包括左右視頻、上下視頻和多視角視頻,針對(duì)每種視頻進(jìn)行如下計(jì)算:視頻的中心點(diǎn)為原點(diǎn),橫軸旋轉(zhuǎn)角度對(duì)應(yīng)的射線是原點(diǎn)至第一交點(diǎn),射線與視頻的邊界相交于第一交點(diǎn),射線中取比值點(diǎn)的百分比,則為人眼中心點(diǎn)。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述步驟d中,以人眼中心點(diǎn)為中心,做一個(gè)長(zhǎng)寬為[w,h]的矩形顯示區(qū)域,從而進(jìn)行播放視。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述步驟a中,由慣性測(cè)量單元獲取九軸傳感器的數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行平滑濾波去除澡聲后,再將數(shù)據(jù)融合輸出四元數(shù),由四元數(shù)變換成歐拉角。
本發(fā)明還提供了一種3d視頻的vr顯示系統(tǒng),其特征在于,包括:
獲取歐拉角模塊,用于由慣性測(cè)量單元獲取歐拉角;
獲取極坐標(biāo)模塊,用于由歐拉角獲得切割球體的極坐標(biāo),所述球體是用于播放3d視頻的載體;
獲取視角模塊,用于由極坐標(biāo)獲得觀看3d視頻的視角;
播放模塊,用于根據(jù)視角播放視頻。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述獲取極坐標(biāo)模塊中,人的視點(diǎn)與球面的交點(diǎn)是第一交點(diǎn),沿著球面連接比值點(diǎn)和第一交點(diǎn)并且延長(zhǎng)從而與邊界相交于第二交點(diǎn),建立極坐標(biāo):[比值點(diǎn),角度],其中比值點(diǎn)是第一交點(diǎn)和比值點(diǎn)的長(zhǎng)度與第二交點(diǎn)和比值點(diǎn)長(zhǎng)度的比值,角度是第二交點(diǎn)、比值點(diǎn)和邊緣點(diǎn)構(gòu)成的角度,切開的球面中心為比值點(diǎn),初始方位為人站在原點(diǎn)。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述獲取視角模塊中,對(duì)多種視頻進(jìn)行處理,多種視頻包括左右視頻、上下視頻和多視角視頻,針對(duì)每種視頻進(jìn)行如下計(jì)算:視頻的中心點(diǎn)為原點(diǎn),橫軸旋轉(zhuǎn)角度對(duì)應(yīng)的射線是原點(diǎn)至第一交點(diǎn),射線與視頻的邊界相交于第一交點(diǎn),射線中取比值點(diǎn)的百分比,則為人眼中心點(diǎn)。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述播放模塊中,以人眼中心點(diǎn)為中心,做一個(gè)長(zhǎng)寬為[w,h]的矩形顯示區(qū)域,從而進(jìn)行播放視。
作為本發(fā)明的進(jìn)一步改進(jìn),在所述獲取歐拉角模塊中,由慣性測(cè)量單元獲取九軸傳感器的數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行平滑濾波去除噪聲后,再將數(shù)據(jù)融合輸出四元數(shù),由四元數(shù)變換成歐拉角。
本發(fā)明的有益效果是:本發(fā)明能夠?qū)?d視頻進(jìn)行vr顯示,克服了目前的技術(shù)難題,滿足了用戶的需求,值的推廣應(yīng)用。
附圖說明
圖1是原理說明圖;
圖2是本發(fā)明的方法流程圖;
圖3是本發(fā)明的由歐拉角獲得切割球體的極坐標(biāo)的原理圖;
圖4是本發(fā)明的左右視頻示意圖;
圖5是本發(fā)明的左視頻區(qū)域處理示意圖;
圖6是本發(fā)明的顯示區(qū)域示意圖;
圖7是本發(fā)明確定角度φ的原理示意圖。
具體實(shí)施方式
原理介紹,例如使用球體,將一個(gè)球面切開(大小可以是任意的,甚至是完整的球體),作為頭部旋轉(zhuǎn)的區(qū)域范圍。
如圖1所示,球心是o,也就是人所在的位置;切開的球面中心為p點(diǎn),也就是初始方位為人站在0點(diǎn),看向p點(diǎn);邊緣為acbd;如果是完整的球體,則以任意一點(diǎn)為中心,反向延長(zhǎng)線與球體的交點(diǎn)為邊界,這個(gè)時(shí)候邊緣就蛻化成一個(gè)點(diǎn)。頭部可以旋轉(zhuǎn)的區(qū)域是aob和cod。為了后續(xù)描述方便,我們建立三維坐標(biāo)系,以op為z軸,水平為x軸,豎直為y軸。
歐拉角介紹:在計(jì)算機(jī)三維圖形學(xué)中,很常用的旋轉(zhuǎn)是歐拉角,用三個(gè)軸表示[yaw,pitch,roll],最早是用在飛機(jī)航向上的,yaw表示航向角,pitch代表機(jī)身的俯仰角,roll代表翻滾角,就是飛機(jī)沿著自己長(zhǎng)軸的旋轉(zhuǎn)角度。如圖1所示,假定人眼朝向的射線與球平面的交點(diǎn)是q,q在aobp平面的投影是q1,則oq1與z軸的夾角是yaw,也就是繞著y軸旋轉(zhuǎn)的角度,qoq1的角度是pitch。
普通vr視頻的處理:如果是普通的vr視頻播放,則只需要從0點(diǎn),看向q點(diǎn),在q點(diǎn)周圍截取一段矩形,作為顯示的視頻,但是3d視頻不能直接繪制在球體,所以不能簡(jiǎn)單這么處理,其中roll是繞著oq的旋轉(zhuǎn)角度,vr的處理是把影片做roll的逆向選擇,使影片一直保持水平。由于roll的處理與本發(fā)明無(wú)關(guān),而且本發(fā)明的roll的處理與vr視頻播放一致,所以不做描述。
如圖2所示,本發(fā)明公開了一種3d視頻的vr顯示方法,包括如下步驟:
步驟a.由慣性測(cè)量單元獲取歐拉角;
步驟b.由歐拉角獲得切割球體的極坐標(biāo),所述球體是用于播放3d視頻的載體;
步驟c.由極坐標(biāo)獲得觀看3d視頻的視角;
步驟d.根據(jù)視角播放視頻。
在步驟a中,具體經(jīng)過如下步驟:
(1).從慣性測(cè)量單元中獲取數(shù)據(jù)是九軸傳感器的數(shù)據(jù),分別是陀螺儀、加速度計(jì)以及磁力計(jì)的數(shù)據(jù),每組數(shù)據(jù)都是(x,y,z),陀螺儀(gyrox,gyroy,gyroz),加速度計(jì)(accx,accy,accz),磁力計(jì)(magx,magy,magz)。
(2).上述數(shù)據(jù)經(jīng)過平滑濾波,去除噪聲;
(3).再經(jīng)過融合處理(比如卡爾曼濾波)將imu的九軸數(shù)據(jù)融合輸出四元數(shù),四元數(shù)的表達(dá)(w,x,y,z),四元數(shù)是很普遍的用于3d圖形學(xué)的角度運(yùn)算。
(4).由四元數(shù)變換成歐拉角,這個(gè)變換是3d圖形學(xué)的標(biāo)準(zhǔn)。
在步驟b中,如圖3所示,在當(dāng)前[yaw,pitch,roll]下(其中roll與處理無(wú)關(guān)),人的視點(diǎn)與球面的交點(diǎn)是第一交點(diǎn)q,沿著球面連接比值點(diǎn)和第一交點(diǎn)pq并且延長(zhǎng)從而與邊界相交于第二交點(diǎn)q’,建立極坐標(biāo):[比值點(diǎn),角度][p,φ],其中比值點(diǎn)p是第一交點(diǎn)和比值點(diǎn)qp的長(zhǎng)度與第二交點(diǎn)和比值點(diǎn)q’p長(zhǎng)度的比值,切開的球面中心為比值點(diǎn)p點(diǎn),初始方位為人站在原點(diǎn)o點(diǎn);如圖7所示,角度φ是第二交點(diǎn)q’、比值點(diǎn)p和邊緣點(diǎn)b構(gòu)成的角度,也就是pb逆時(shí)針旋轉(zhuǎn)到pq’的旋轉(zhuǎn)角度,這樣才可以達(dá)到[0,360]這個(gè)范圍。而且p就是qop的角度與q’op的角度比值。
在步驟c中,以左右視頻為例,上下視頻和多視角視頻同例處理。如圖4所示,實(shí)框的l、r是視頻的區(qū)域,虛線是人眼所能觀看的區(qū)域,中間的圓圈ol和or代表人眼觀看的中心點(diǎn),問題的核心變成,ol和or在l和r上的游動(dòng)。如圖5所示,我們以l區(qū)域?yàn)槔?,r區(qū)域同樣處理,以視頻的中心點(diǎn)為原點(diǎn)0,橫軸為x軸,建立極坐標(biāo)系。上述計(jì)算出來的極坐標(biāo)[p,φ]對(duì)應(yīng)圖中的p,φ;圓圈v就是新的人眼中心。具體的計(jì)算方法如下:
(1).0x旋轉(zhuǎn)角度φ角對(duì)應(yīng)的射線是原點(diǎn)至第一交點(diǎn)oq,與視頻的邊界相交于第一交點(diǎn)q;
(2).射線oq中取比值點(diǎn)p的百分比,則為人眼中心v。
在步驟d中,顯示方法是以v為中心,做一個(gè)長(zhǎng)寬為[w,h]的矩形顯示區(qū)域,圖6中的矩形框是顯示區(qū)域。
步驟c中,由極坐標(biāo)獲得觀看3d視頻的視角也就是獲取圖5中的坐標(biāo)v。
本發(fā)明還公開了一種3d視頻的vr顯示系統(tǒng),包括:
獲取歐拉角模塊,用于由慣性測(cè)量單元獲取歐拉角;
獲取極坐標(biāo)模塊,用于由歐拉角獲得切割球體的極坐標(biāo),所述球體是用于播放3d視頻的載體;
獲取視角模塊,用于由極坐標(biāo)獲得觀看3d視頻的視角;
播放模塊,用于根據(jù)視角播放視頻。
在所述獲取極坐標(biāo)模塊中,人的視點(diǎn)與球面的交點(diǎn)是第一交點(diǎn)q,沿著球面連接比值點(diǎn)和第一交點(diǎn)pq并且延長(zhǎng)從而與邊界相交于第二交點(diǎn)q’,建立極坐標(biāo):[比值點(diǎn),角度][p,φ],其中比值點(diǎn)p是第一交點(diǎn)和比值點(diǎn)qp的長(zhǎng)度與第二交點(diǎn)和比值點(diǎn)q’p長(zhǎng)度的比值,切開的球面中心為比值點(diǎn)p點(diǎn),初始方位為人站在原點(diǎn)o點(diǎn);如圖7所示,角度φ是第二交點(diǎn)q’、比值點(diǎn)p和邊緣點(diǎn)b構(gòu)成的角度,也就是pb逆時(shí)針旋轉(zhuǎn)到pq’的旋轉(zhuǎn)角度,這樣才可以達(dá)到[0,360]這個(gè)范圍。而且p就是qop的角度與q’op的角度比值。
在所述獲取視角模塊中,對(duì)多種視頻進(jìn)行處理,多種視頻包括左右視頻、上下視頻和多視角視頻,針對(duì)每種視頻進(jìn)行如下計(jì)算:視頻的中心點(diǎn)為原點(diǎn)o,橫軸為x軸,橫軸0x旋轉(zhuǎn)角度φ角對(duì)應(yīng)的射線是原點(diǎn)至第一交點(diǎn)oq,射線oq與視頻的邊界相交于第一交點(diǎn)q,射線oq中取比值點(diǎn)p的百分比,則為人眼中心點(diǎn)v。
在所述播放模塊中,以點(diǎn)v為中心,做一個(gè)長(zhǎng)寬為[w,h]的矩形顯示區(qū)域,從而進(jìn)行播放視。
在所述獲取歐拉角模塊中,由慣性測(cè)量單元獲取九軸傳感器的數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行平滑濾波去除噪聲后,再將數(shù)據(jù)融合輸出四元數(shù),由四元數(shù)變換成歐拉角。
本發(fā)明能夠?qū)?d視頻進(jìn)行vr顯示,克服了目前的技術(shù)難題,滿足了用戶的需求,值的推廣應(yīng)用。
以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對(duì)于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡(jiǎn)單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。