專利名稱:一種確定虛擬場景景深的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于多媒體應(yīng)用領(lǐng)域,尤其涉及一種確定虛擬場景景深的方法及裝置。
背景技術(shù):
隨著科技的進(jìn)步,3D顯示已經(jīng)成為了主流的圖像顯示技術(shù),3D電影、3D圖片已經(jīng)在市場上盛行。目前,在3D顯示中普遍采用傳統(tǒng)的虛擬場景景深確定方法,即在虛擬場景搭建完成后,通過測量顯示設(shè)備上顯示元素的視差大小來確定虛擬場景中的景深。這種方法由于在最終的顯示屏幕上才能看到具體的景深效果,不利于設(shè)計開發(fā)人員對景深效果的修改。
發(fā)明內(nèi)容
本發(fā)明實施例的目的在于提供一種確定虛擬場景景深的方法及裝置,旨在解決現(xiàn)有的虛擬場景景深獲取方法只能通過測量顯示設(shè)備上顯示元素的視差大小來確定虛擬場景中的景深,不利于設(shè)計開發(fā)人員對景深效果的修改的問題。本發(fā)明實施例是這樣實現(xiàn)的,一種確定虛擬場景景深的方法,所述方法包括獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離;根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。本發(fā)明實施例的另一目的在于提供確定虛擬場景景深的裝置,所述裝置包括虛擬場景參數(shù)獲取單元,用于獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離;景深計算單元,用于根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。在本發(fā)明實施例中,通過在虛擬場景搭建時或虛擬場景搭建后獲取計算景深所需的各種信息,并對應(yīng)計算虛擬場景中的景深,使設(shè)計開發(fā)人員在虛擬場景的搭建過程中就能得到虛擬場景中的景深,同時虛擬場景中物體在顯示設(shè)備上顯示之前便能修改景深效果,縮短了 3D顯示效果的調(diào)試周期,并提高了虛擬場景開發(fā)效率。
圖I是本發(fā)明確定虛擬場景景深的方法較佳實施例的流程圖;圖2是本發(fā)明確定虛擬場景景深的方法較佳實施例中在虛擬場景中選取參照面的不意圖;圖3是本發(fā)明確定虛擬場景景深的方法較佳實施例中虛擬場景中視錐角與參照面的關(guān)系不意圖;圖4是本發(fā)明確定虛擬場景景深的裝置較佳實施例的結(jié)構(gòu)示意圖;圖5是本發(fā)明確定虛擬場景景深的裝置另一較佳實施例的結(jié)構(gòu)示意圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實施例提供一種確定虛擬場景景深的方法,通過在虛擬場景搭建時或虛擬場景搭建后獲取計算景深所需的各種信息,并對應(yīng)計算虛擬場景中的景深,使設(shè)計開發(fā)人員在虛擬場景的搭建過程中就能得到虛擬場景中物體的景深,縮短了立體效果的調(diào)試周期,并提高了場景開發(fā)效率。為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實施例來進(jìn)行說明。實施例一如圖I所示為本發(fā)明提供的確定虛擬場景景深的方法的流程圖,為了便于說明,僅不出了與本發(fā)明實施例相關(guān)的部分。在步驟SlOl中,獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離。在本發(fā)明實施例中,首先在搭建虛擬場景時或虛擬場景搭建后獲取計算虛擬場景中物體的景深的各種信息,其中,計算虛擬場景中物體的景深所需的各種信息包括但不限于虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離;虛擬場景的參數(shù)信息包括但不限于虛擬場景中參照面與虛擬相機(jī)之間的距離,虛擬場景中兩個虛擬相機(jī)間的距離,虛擬場景中物體到參照面的距離,虛擬場景中兩個相機(jī)的視錐角。下面將逐一描述計算虛擬場景景深所需的各種信息的獲取過程。I)選取參照面,獲得參照面的位置信息S_pos。參照面相當(dāng)于虛擬相機(jī)的投影平面,因此選取的參照面必為平行于兩個虛擬相機(jī)的連線,且垂直于兩個虛擬相機(jī)發(fā)出的視線所成的平面。對于人眼立體成像中的負(fù)視差而言,如圖2(a)所示,參照面與兩個虛擬相機(jī)發(fā)出的視線和虛擬場景中的物體的連線的延長線垂直相交;對于人眼立體成像中的正視差而言,如圖2(b)所示,參照面與兩個虛擬相機(jī)發(fā)出的視線和虛擬場景中的物體的連線垂直相交;對于人眼立體成像中的零視差而言,如圖2(c)所示,參照面與兩個虛擬相機(jī)發(fā)出的視線和虛擬場景中的物體的連線垂直相交,且交點正好為虛擬場景中的物體所處的位置,圖2中,S為參照面,El和Er分別為左右兩個虛擬相機(jī)所處的位置,O為左右兩個虛擬相機(jī)連線的中點,G為左右兩個虛擬相機(jī)視線的焦點,即虛擬場景中的物體所處的位置,Lv為虛擬相機(jī)距離參照面的距離,Offl為左右兩個虛擬相機(jī)連線的中點在參照面上的投影點,SI和Sr分別為左右兩個虛擬相機(jī)拍攝物體時在參照面上的投影。2)通過提取虛擬相機(jī)的位置信息,得到虛擬場景中參照面與虛擬相機(jī)之間的距離Lv0虛擬場景中的左虛擬相機(jī)的位置信息(Cam_L_pos)和右虛擬相機(jī)的位置信息(Cam_R_pos)可通過類的成員函數(shù)getPositionO獲得。虛擬場景中參照面與虛擬相機(jī)之間的距離可通過以下公式獲得Lv=Cam_L_pos (Cam_R_pos) _S_pos,其中,Lv為虛擬場景中參照面與虛擬相機(jī)之間的距離,Cam_L_pos為左虛擬相機(jī)的位置信息,Cam_R_pos為右虛擬相機(jī)的位置信息,S_pos為參照面的位置信息。3)通過下述公式獲取虛擬場景中兩個虛擬相機(jī)間的距離。
Ev=abs (Cam_L_pos-Cam_R_pos),其中,Ev 兩個虛擬相機(jī)間的距離,為 Cam_L_pos為左虛擬相機(jī)的位置信息,Cam_R_pos為右虛擬相機(jī)的位置信息,abs()是取絕對值的函數(shù)。4)通過下述公式計算虛擬場景中物體到參照面的距離。F=Mod_pos_S_pos,其中,F(xiàn)為虛擬場景中物體到參照面的距離,Mod_pos為虛擬場景中的物體的位置信息,S_pos為參照面的位置信息。通常,由于虛擬場景中不同的物體具有不同的位置信息,不同的物體到參照面的距離也不一樣,因此可通過物體位置獲得接口 GetpositionO得到不同物體的位置信息,然后通過所得到的物體位置信息MocLpos與參照面位置信息S_pos的差來獲得虛擬場景中
物體到參照面的距離。5)在沒有特殊需求的情況下,虛擬場景中兩個相機(jī)的視錐角a通過虛擬相機(jī)的相應(yīng)接口 GetFOVO獲得。6)通過調(diào)用系統(tǒng)中的相應(yīng)接口獲得顯示設(shè)備的橫向分辨率。其中,此處的顯示設(shè)備橫向分辨率為與雙眼的連線相平行的方向的分辨率。7)在用戶選取觀看位置后,獲得用戶觀看位置到顯示設(shè)備的距離,即觀看距離。在本發(fā)明實施例中,計算虛擬場景景深所需的各種信息的獲取前后順序不做限制。在步驟S102中,根據(jù)虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。在本發(fā)明實施例中,由預(yù)設(shè)的公式0mG=L*x/ (Y+x)計算虛擬場景中物體的景深,其中,OmG表示虛擬場景中物體的景深,L表示觀看距離,X表示顯示設(shè)備上顯示的視差值,Y表示雙眼之間的距離(單位為米),當(dāng)Y的值為O. 065時最優(yōu),這個數(shù)值可以設(shè)定為其它值,由于該公式為現(xiàn)有技術(shù),具體推導(dǎo)過程在此不再詳細(xì)描述。而顯示設(shè)備上顯示的視差值可通過公式x=X*F*Ev/2*Lv*tan (a/2) (Lv-F)獲得,其中,X表示顯示設(shè)備的橫向分辨率,F(xiàn)表示虛擬場景中物體到參照面的距離,Ev表示虛擬場景中兩個虛擬相機(jī)間的距離,Lv表示虛擬場景中參照面與虛擬相機(jī)之間的距離,a表示虛擬場景中兩個虛擬相機(jī)的視錐角。公式x=X*F*Ev/2*Lv*tan (a/2) (Lv-F)由下述方法獲得在虛擬場景中,如圖3所示,通過虛擬相機(jī)的視錐角a、參照面S與虛擬相機(jī)A之間的距離Lv可以得到虛擬相機(jī)捕捉到的虛擬場景的水平范圍為2Lvtan (a/2)。假設(shè)使用的立體顯示設(shè)備的橫向分辨率為X,那么虛擬場景中參照面上的水平距離Xs與屏幕上的水平距離Xp對應(yīng)關(guān)系為X/2Lv*tan (a/2) =Xp/Xs,兩個虛擬相機(jī)所拍攝的物體在參照面上的位置差Lxly可通過以下關(guān)系式得到Lxly= (F*EvV(Lv-F), Ev表示虛擬場景中兩個虛擬相機(jī)間的距離,F(xiàn)表示虛擬場景中物體到參照面的距離,根據(jù)參照面和屏幕之間的關(guān)系,可以得出屏幕上顯示的視差值 X 為(Xp/Xs) *Lxly。因此,X= (Xp/Xs) *Lxly=X*F*Ev/2*Lv*tan (a/2)(Lv-F)。其中,關(guān)系式Lxly= (F*Ev)/ (Lv-F)的推導(dǎo)過程如下參看圖2(a),在此以負(fù)視差為例進(jìn)行說明,正視差和零視差推導(dǎo)過程類似,在此不再詳細(xì)闡述,由于三角形SrSlG和三角形ElErG相似,則SrSl/ElEr=0mG/0G ;
其中ElEr為兩個虛擬相機(jī)間的距離,Lv為虛擬相機(jī)距離參照面的距離,SrSl為左右兩個虛擬相機(jī)拍攝物體G時落在參照面上的像點間的距離,那么物體G所處的位置OniG就為0mG=0G*SrSl/ElEr則SrSl=OmG*ElEr/ (Lv-OmG);而在虛擬場景中,兩個虛擬相機(jī) 所拍攝的物體在參照面上的位置差Lxly就相當(dāng)于圖2 (a)中的SrSl ;虛擬場景中物體到參照面的距離F相當(dāng)于圖2(a)中的O111G;虛擬場景中兩個虛擬相機(jī)間的距離Ev相當(dāng)于圖2(a)中的ElEr,因此可推導(dǎo)出Lxly=(F*Ev)/(Lv-F)ο因而,由上述公式可知,通過獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離便可獲得虛擬場景中物體的景深。優(yōu)選的,為了對虛擬場景進(jìn)行實時調(diào)整,創(chuàng)建虛擬場景屬性調(diào)節(jié)接口,在步驟SlOl獲取虛擬場景的參數(shù)信息后,通過該虛擬場景屬性調(diào)節(jié)接口修改虛擬場景的參數(shù)信息。其中,虛擬場景屬性調(diào)節(jié)接口能夠修改的虛擬場景的參數(shù)信息包括但不限于虛擬場景中參照面的位置信息,通過修改虛擬場景中兩個虛擬相機(jī)的位置信息來修改虛擬場景中兩個虛擬相機(jī)間的距離及通過改變虛擬場景中參照面的位置信息修改虛擬場景中物體到參照面的距離、虛擬相機(jī)視錐角等。另一優(yōu)選的,為了使虛擬場景中物體的景深能夠?qū)崟r更新,在搭建好虛擬場景之后,繪制虛擬場景的每幀圖像到顯示設(shè)備之前,重新獲取虛擬場景的參數(shù)信息,并根據(jù)顯示設(shè)備的橫向分辨率、觀看距離及重新獲取的虛擬場景的參數(shù)信息計算虛擬場景中該幀圖像中物體的景深。在本發(fā)明實施例中,通過在虛擬場景搭建時或虛擬場景搭建后獲取計算景深所需的各種信息,并對應(yīng)計算虛擬場景中的景深,使設(shè)計開發(fā)人員在虛擬場景的搭建過程中就能得到虛擬場景中的景深,同時虛擬場景中物體在顯示設(shè)備上顯示之前便能修改景深效果,縮短了 3D顯示效果的調(diào)試周期,并提高了虛擬場景開發(fā)效率。實施例二 圖4為本發(fā)明提供的確定虛擬場景景深的裝置結(jié)構(gòu)示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部份。其中虛擬場景參數(shù)獲取單元41,用于獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離。在本發(fā)明實施例中,虛擬場景的參數(shù)信息包括但不限于虛擬場景中參照面與虛擬相機(jī)之間的距離,虛擬場景中兩個虛擬相機(jī)間的距離,虛擬場景中物體到參照面的距離,虛擬場景中兩個相機(jī)的視錐角。景深計算單元42,用于根據(jù)虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。在本發(fā)明實施例中,所述景深計算單元42還包括一個子單元,其中景深公式計算單元421,用于通過公式 OmG=L* (X*F*Ev/2*Lv*tan (a/2) (Lv-F)) /Y+ (X*F*Ev/2*Lv*tan (a/2) (Lv-F))計算虛擬場景中物體的景深,其中,OmG表示虛擬場景中物體的景深,L表示觀看距離,顯示設(shè)備上顯示的視差值x=X*F*Ev/2*Lv*tan (a/2)(Lv-F),其中,X表示顯示設(shè)備的橫向分辨率,F(xiàn)表示虛擬場景中物體到參照面的距離,Ev表示虛擬場景中兩個虛擬相機(jī)間的距離,Lv表示虛擬場景中參照面與虛擬相機(jī)之間的距離,a表示虛擬場景中兩個虛擬相機(jī)的視錐角,Y表示雙眼之間的距離,當(dāng)Y的值為O. 065時最優(yōu),這個數(shù)值可以設(shè)定為其它值。優(yōu)選的,如圖5所示,所述確定虛擬場景景深的裝置還包括場景屬性調(diào)節(jié)單元51,用于通過創(chuàng)建的虛擬場景屬性調(diào)節(jié)接口修改虛擬場景的參數(shù)信息。景深實時更新單元52,用于在繪制虛擬場景的每幀圖像到顯示設(shè)備之前,重新獲取虛擬場景的參數(shù)信息,根據(jù)顯示設(shè)備的橫向分辨率、觀看距離及重新獲取的虛擬場景的參數(shù)信息計算虛擬場景中物體的景深。在本發(fā)明實施例中,通過在虛擬場景搭建時或虛擬場景搭建后獲取計算景深所需的各種信息,并對應(yīng)計算虛擬場景中的景深,使設(shè)計開發(fā)人員在虛擬場景的搭建過程中就能得到虛擬場景中的景深,同時虛擬場景中物體在顯示設(shè)備上顯示之前便能修改景深效
果,縮短了 3D顯示效果的調(diào)試周期,并提高了虛擬場景開發(fā)效率。本領(lǐng)域普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以在存儲于一計算機(jī)可讀取存儲介質(zhì)中,所述的存儲介質(zhì),如R0M/RAM、磁盤、光盤等。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種確定虛擬場景景深的方法,其特征在于,所述方法包括下述步驟 獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離; 根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。
2.如權(quán)利要求I所述的方法,其特征在于,所述虛擬場景的參數(shù)信息包括 虛擬場景中參照面與虛擬相機(jī)之間的距離,虛擬場景中兩個虛擬相機(jī)間的距離,虛擬場景中物體到參照面的距離以及虛擬場景中兩個相機(jī)的視錐角。
3.如權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景物體中的景深包括 通過下述公式計算虛擬場景中物體的景深,其中OmG=L* (X*F*Ev/2*Lv*tan(a/2)(Lv-F))/Y+(X*F*Ev/2*Lv*tan(a/2)(Lv-F)); OmG表示虛擬場景中物體的景深,L表示觀看距離,X表示顯示設(shè)備的橫向分辨率,F(xiàn)表示虛擬場景中物體到參照面的距離,Ev表示虛擬場景中兩個虛擬相機(jī)間的距離,Lv表示虛擬場景中參照面與虛擬相機(jī)之間的距離,a表示虛擬場景中兩個虛擬相機(jī)的視錐角,Y表示雙眼之間的距離。
4.如權(quán)利要求I至3任一權(quán)利要求所述的方法,其特征在于,在所述獲取虛擬場景的參數(shù)信息之后,所述方法還包括 通過創(chuàng)建的虛擬場景屬性調(diào)節(jié)接口修改虛擬場景的參數(shù)信息。
5.如權(quán)利要求I至3任一權(quán)利要求所述的方法,其特征在于,在繪制虛擬場景的每幀圖像到顯示設(shè)備之前,重新獲取虛擬場景的參數(shù)信息; 根據(jù)所述顯示設(shè)備的橫向分辨率、觀看距離及重新獲取的虛擬場景的參數(shù)信息計算虛擬場景中每幀圖像中物體的景深。
6.一種確定虛擬場景景深的裝置,其特征在于,所述裝置包括 虛擬場景參數(shù)獲取單元,用于獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離; 景深計算單元,用于根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。
7.如權(quán)利要求6所述的裝置,其特征在于,所述虛擬場景的參數(shù)信息包括 虛擬場景中參照面與虛擬相機(jī)之間的距離,虛擬場景中兩個虛擬相機(jī)間的距離,虛擬場景中物體到參照面的距離以及虛擬場景中兩個相機(jī)的視錐角。
8.如權(quán)利要求6所述的裝置,其特征在于,所述景深計算單元包括 景深公式計算單元,用于通過公式OmG=L* (X*F*Ev/2*Lv*tan(a/2) (Lv-F)) /Y+(X*F*Ev/2*Lv*tan (a/2) (Lv-F))計算虛擬場景中物體的景深,其中,OmG表示虛擬場景中物體的景深,L表示觀看距離,X表示顯示設(shè)備的橫向分辨率,F(xiàn)表示虛擬場景中物體到參照面的距離,Ev表示虛擬場景中兩個虛擬相機(jī)間的距離,Lv表示虛擬場景中參照面與虛擬相機(jī)之間的距離,a表示虛擬場景中兩個虛擬相機(jī)的視錐角,Y表示雙眼之間的距離。
9.如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括 場景屬性調(diào)節(jié)單元,用于通過創(chuàng)建的虛擬場景屬性調(diào)節(jié)接口修改虛擬場景的參數(shù)信肩、O
10.如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括 景深實時更新單元,用于在繪制虛擬場景的每幀圖像到顯示設(shè)備之前,重新獲取虛擬場景的參數(shù)信息,根據(jù)所述顯示設(shè)備的橫向分辨率、觀看距離及重新獲取的虛擬場景的參數(shù)信息計算虛擬場景中每幀圖像中物體的景深。
全文摘要
本發(fā)明適用于多媒體應(yīng)用領(lǐng)域,提供了一種確定虛擬場景景深的方法及裝置,所述方法包括獲取虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離;根據(jù)所述虛擬場景的參數(shù)信息、顯示設(shè)備的橫向分辨率及觀看距離計算虛擬場景中物體的景深。通過在虛擬場景搭建時或虛擬場景搭建后獲取計算景深所需的各種信息,并對應(yīng)計算虛擬場景中的景深,使設(shè)計開發(fā)人員在虛擬場景的搭建過程中就能得到虛擬場景中的景深,同時虛擬場景中物體在顯示設(shè)備上顯示之前便能修改景深效果,縮短了3D顯示效果的調(diào)試周期,并提高了虛擬場景開發(fā)效率。
文檔編號G06T17/00GK102855660SQ201210297558
公開日2013年1月2日 申請日期2012年8月20日 優(yōu)先權(quán)日2012年8月20日
發(fā)明者劉超, 盧偉超, 張穎, 馬靜 申請人:Tcl集團(tuán)股份有限公司