虛擬現實調整視差的方法及裝置的制造方法
【專利摘要】本發明實施例提供一種虛擬現實調整視差的方法及裝置,其中,本發明的方法主要包括:獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍;獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源;根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。與現有技術相比,本發明能夠改善在立體場景中展示新的立體場景的展示效果。
【專利說明】
虛擬現實調整視差的方法及裝置
技術領域
[0001]本發明實施例涉及互聯網技術領域,尤其涉及一種虛擬現實調整視差的方法及裝置。
【背景技術】
[0002]虛擬現實技術是一種綜合技術,它包括三維計算機圖形技術、立體顯示技術、跟蹤技術等。利用虛擬現實技術可以創建對與現實環境一致的模擬場景,使用戶可以置身于該場景中。
[0003]隨著虛擬現實技術的應用范圍的擴大,出現了立體場景中嵌套立體新的立體場景的情況。比如,在一個虛擬的立體影院中觀看立體電影,立體影院本身就是一個立體場景,而立體電影是另外一個立體場景。
[0004]由于人的左、右眼有間距,造成兩眼的視角存在細微的差別,而這種差別會使兩只眼睛分別看到的物體有一定的位移,這就是人能產生空間立體感的原因,其中將看到的一定的位移稱為視差。而立體場景的形成就是模擬人眼的觀看原理,分別為兩只眼睛提供不同的圖像,然后在大腦里合成立體圖像的效果。
[0005]通常,不同的立體場景有不同的視差,當在立體場景中觀看立體電影時,就會發生立體影院視差與立體電影視差的融合的問題。如果融合后的視差太大或者太小都會使觀看者感覺不適或者影響立體效果的展示。在現有技術中通常立體影院和立體電影的視差都是固定的,不能進行調整。
【發明內容】
[0006]本發明實施例提供一種虛擬現實調整視差的方法及裝置,用以解決現有虛擬現實技術不能調整視差的問題。
[0007]本發明實施例提供一種虛擬現實調整視差的方法,包括:
[0008]獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍;
[0009]獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源;
[0010]根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。
[0011]本發明實施例提供一種虛擬現實調整視差的裝置,包括:
[0012]第一獲取單元,用于獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍;
[0013]第二獲取單元,用于獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源;
[0014]調整單元,用于根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。
[0015]本發明實施例提供的虛擬現實調整視差的方法及裝置,能夠首先獲取虛擬現實模型的視差范圍,然后獲取在虛擬現實場景中顯示的立體片源的視差值,最后將立體片源的視差值調整到虛擬現實的視差范圍之內。與現有技術相比,本發明實施例能夠根據獲取到的虛擬現實的視差范圍對在虛擬現實場景中顯示的立體片源進行視差值的調整,以使得立體片源的視差值不超出虛擬現實的視差范圍,解決了在立體場景中嵌套立體場景時不能調整視差的問題,有效地改善了在立體場景中展示新的立體場景的展示效果。
【附圖說明】
[0016]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0017]圖1為本發明實施例提供的一種虛擬現實調整視差的方法的流程圖;
[0018]圖2為本發明實施例提供的另一種虛擬現實調整視差的方法的流程圖;
[0019]圖3為本發明實施例提供的一種虛擬現實調整視差的裝置的組成框圖;
[0020]圖4為本發明實施例提供的另一種虛擬現實調整視差的裝置的組成框圖;
[0021]圖5為本發明實施例提供的一種虛擬現實調整視差的裝置的實體結構示意圖。
【具體實施方式】
[0022]為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0023]本發明實施例提供了一種虛擬現實調整視差的方法,如圖1所示,該方法包括:
[0024]101、獲取虛擬現實模型預設的視差范圍。
[0025]獲取虛擬現實模型預設的視差范圍,其中預設的視差范圍是指該虛擬模型可以接受的視差范圍,可以接受是指用戶在虛擬現實構建的場景中在觀看新的立體場景時觀看舒適的視差范圍。視差范圍是由一個視差上限值和一個視差下限值構成的范圍,視差下限值通常是負視差,視差上限值通常為正視差。正視差表示看物體時感覺物體位于顯示屏的后面,負視差表示看物體時感覺物體位于顯示屏的前面。
[0026]102、獲取立體片源以及對應立體片源的視差值。
[0027]獲取需要在虛擬現實場景中顯示的立體片源以及立體片源的視差值。獲取立體片源的視差值是為了后面對其進行調整。本實施例中立體片源可以由虛擬現實模型的提供者提供的立體片源,也可以是用戶自己提供的立體片源,其中立體片源可以是立體電影、立體游戲等。
[0028]103、根據視差范圍調整立體片源的視差值。
[0029]本步驟是根據由步驟101得到的視差范圍對由步驟102獲取到的立體片源的視差值進行適當的調整,以使立體片源的視差值不超出虛擬現實模型預設的視差范圍。
[0030]本發明實施例提供的虛擬現實調整視差的方法,能夠首先獲取虛擬現實模型的視差范圍,然后獲取在虛擬現實場景中顯示的立體片源的視差值,最后將立體片源的視差值調整到虛擬現實的視差范圍之內。與現有技術相比,本發明實施例能夠根據獲取到的虛擬現實的視差范圍對在虛擬現實場景中顯示的立體片源進行視差值的調整,以使得立體片源的視差值不超出虛擬現實的視差范圍,解決了在立體場景中嵌套立體場景時不能調整視差的問題,有效地改善了在立體場景中展示新的立體場景的展示效果。
[0031]進一步的,作為對圖1所示實施例的細化及擴展,本發明還提供了另一實施例。如圖2所示,該實施例中虛擬現實調整視差的方法包括:
[0032]201、制作測試片源。
[0033]本實施例中,測試片源是對虛擬現實模型所能接收的視差范圍的測試。測試片源是由不同的視差值的構成的立體場景,在實際應用中通常用視差值與圖像寬度的比來描述視差值,因此用視差值與圖像寬度的比來對測試片源進行舉例說明,后面提到的視差值都是指視差值與圖像寬度的比。比如制作正視差值與圖像寬度比為1%、2%、-_、15%,負視差值與圖像寬度比為-1%、-2%、...、_10%的立體場景作為測試片源。需要說明的是,圖像的寬度是指立體片源在虛擬現實場景中左右視圖中分別占據的寬度值之和。
[0034]202、對不同的視差值進行實際測試,獲取符合預設標準的視差值。
[0035]對不同的視差值進行實際測試,是指讓用戶在虛擬場景中觀看由不同視差值組成的測試片源,然后獲取符合預設標準的視差值,其中預設標準是以用戶觀看舒適為標準。
[0036]本實施例是讓大量的用戶進行實際的觀看測試,然后得到所有用戶的符合預設標準的視差值。每個用戶測試得到的符合預設標準的視差值是多個視差值,其中都有一個最小值和一個最大值。
[0037]203、根據獲取的視差值確定視差范圍。
[0038]對由步驟202得到的多個用戶的視差值的最小值求平均值,并將該平均值記為視差范圍的視差下限值,對多個用戶的視差值的最大值求平均值,并將該平均值記為視差范圍的視差上限值。由視差上限值和視差下限值組成虛擬現實模型的視差范圍。
[0039]204、建立立體視差文件。
[0040]建立立體視差文件,是為需要在虛擬現實場景中顯示的立體片源提前建立一個用于保存立體片源的標識和對應立體片源的視差值的文件。其中立體片源的標識可以是立體片源的標題名和身份標識號(Identity,簡稱ID)等。
[0041]205、獲取立體片源和立體片源的視差值,并將立體片源的視差值保存。
[0042]獲取立體片源有兩種方式:一種獲取由虛擬現實模型提供者提供的立體片源,一種是獲取由用戶自己提供的立體片源。對于由虛擬現實模型提供者提供的立體片源,可以在線下獲取立體片源的視差值,并將立體片源的標識與視差值一一對應的保存到由步驟204建立的立體視差文件中。對于用戶自己提供的立體片源可以先在立體視差文件中查找是否有相同的片源,若沒有則對該立體片源使用獲取立體片源視差值的方法獲取其對應的視差值,然后將立體片源的標識和對應的視差值保存到立體視差文件中。
[0043 ] 206、從立體視差文件中獲取立體片源的視差值。
[0044]根據需要顯示的立體片源的標識從立體視差文件中獲取對應立體片源的視差值。
[0045]207、根據視差范圍調整立體片源的視差值。
[0046]根據由步驟203確定的視差范圍來對需要在虛擬現實中顯示的立體片源的視差值進行調整,具體的調整方式如下:
[0047]首先需要說明的是,獲取的立體片源的視差值通常是獲取立體片源視差值的最大值和最小值。
[0048]若立體片源的視差值的最大值大于視差范圍的視差上限值,則減小立體片源的視差值。具體的是將虛擬現實場景中的左視圖向右移,右視圖向左移。
[0049]若立體片源的視差值的最小值小于視差范圍的視差下限值,則增大立體片源的視差值。具體的是將虛擬現實場景中的左視圖向左移,右視圖向右移。
[0050]另外對于立體片源的視差值本身就在虛擬現實視差范圍內的立體片源,也可以對其進行調整,調整的原則是:若立體片源視差值的最大值比視差上限值相差較大時,則增大立體片源的視差值;若立體片源視差值的最小值與視差下限值相差較大時,則減小立體片源的視差值。
[0051]在對立體片源的視差調整好后就可以在虛擬現實場景中顯示立體片源了。
[0052]進一步的,對于調整立體片源視差值的方法給出一個具體的示例進行說明:假設某一立體片源的視差值的最大值為P,虛擬現實的視差范圍為[PI,P2],其中Pl為視差下限值,P2為視差上限值,若P>P2,則需要將立體片源的視差值減小。具體的是將虛擬現實場景中的左視圖向右移X,右視圖向左移Xd的具體計算公式如下所示,其中W為圖像的寬度。
[0053]X=(P2_P)*W/2
[0054]進一步的,作為對上述圖1以及圖2所示方法的實現,本發明實施例的另一個實施例還提供了一種虛擬現實調整視差的裝置,如圖3所示,該裝置包括:第一獲取單元31、第二獲取單元32以及調整單元33。
[0055]第一獲取單元31,用于獲取虛擬現實模型預設的視差范圍,視差范圍是由一個視差上限值和一個視差下限值構成的范圍。
[0056]獲取虛擬現實模型預設的視差范圍,其中預設的視差范圍是指該虛擬模型可以接受的視差范圍,可以接受是指用戶在虛擬現實構建的場景中在觀看新的立體場景時觀看舒適的視差范圍。視差范圍是由一個視差上限值和一個視差下限值構成的范圍,視差下限值通常是負視差,視差上限值通常為正視差。正視差表示看物體時感覺物體位于顯示屏的后面,負視差表示看物體時感覺物體位于顯示屏的前面。
[0057]第二獲取單元32,用于獲取立體片源以及對應立體片源的視差值,立體片源為在虛擬現實場景中顯示的片源。
[0058]獲取需要在虛擬現實場景中顯示的立體片源以及立體片源的視差值。獲取立體片源的視差值是為了后面對其進行調整。本實施例中立體片源可以由虛擬現實模型的提供者提供的立體片源,也可以是用戶自己提供的立體片源,其中立體片源可以是立體電影、立體游戲等。
[0059]調整單元33,用于根據視差范圍調整立體片源的視差值,以使立體片源的視差值不超出視差范圍。
[0060]本步驟是根據由第一獲取單元31得到的視差范圍對由第二獲取單元32獲取到的立體片源的視差值進行適當的調整,以使立體片源的視差值不超出虛擬現實模型預設的視差范圍。
[0061]進一步的,如圖4所示,第一獲取單元31,包括:
[0062]制作模塊311,用于制作測試片源,測試片源中包括有不同數值的視差值;
[0063]本實施例中,測試片源是對虛擬現實模型所能接收的視差范圍的測試。測試片源是由不同的視差值的構成的立體場景,在實際應用中通常用視差值與圖像寬度的比來描述視差值,因此用視差值與圖像寬度的比來對測試片源進行舉例說明,后面提到的視差值都是指視差值與圖像寬度的比。比如制作正視差值與圖像寬度比為1%、2%、-_、15%,負視差值與圖像寬度比為-1%、-2%、...、_10%的立體場景作為測試片源。需要說明的是,圖像的寬度是指立體片源在虛擬現實場景中左右視圖中分別占據的寬度值之和。
[0064]測試模塊312,用于對不同的視差值進行實際測試,獲取符合預設標準的視差值;
[0065]對不同的視差值進行實際測試,是指讓用戶在虛擬場景中觀看由不同視差值組成的測試片源,然后獲取符合預設標準的視差值,其中預設標準是以用戶觀看舒適為標準。
[0066]本實施例是讓大量的用戶進行實際的觀看測試,然后得到所有用戶的符合預設標準的視差值。每個用戶測試得到的符合預設標準的視差值是多個視差值,其中都有一個最小值和一個最大值。
[0067]確定模塊313,用于根據獲取的視差值確定視差范圍。
[0068]對由測試模塊312得到的多個用戶的視差值的最小值求平均值,并將該平均值記為視差范圍的視差下限值,對多個用戶的視差值的最大值求平均值,并將該平均值記為視差范圍的視差上限值。由視差上限值和視差下限值組成虛擬現實模型的視差范圍。
[0069]進一步的,如圖4所示,調整單元33,包括:
[0070]減小模塊331,用于若立體片源的視差值大于視差上限值,則減小立體片源的視差值;
[0071]增大模塊332,用于若立體片源的視差值小于視差下限值,則增大立體片源的視差值。
[0072]進一步的,減小模塊331,用于:
[0073]將虛擬現實場景中的左視圖向右移,右視圖向左移;
[0074]增大模塊332,用于:
[0075]將虛擬現實場景中的左視圖向左移,右視圖向右移。
[0076]根據由確定模塊313確定的視差范圍來對需要在虛擬現實中顯示的立體片源的視差值進行調整,具體的調整方式如下:
[0077]首先需要說明的是,獲取的立體片源的視差值通常是獲取立體片源視差值的最大值和最小值。
[0078]若立體片源的視差值的最大值大于視差范圍的視差上限值,則減小立體片源的視差值。具體的是將虛擬現實場景中的左視圖向右移,右視圖向左移。
[0079]若立體片源的視差值的最小值小于視差范圍的視差下限值,則增大立體片源的視差值。具體的是將虛擬現實場景中的左視圖向左移,右視圖向右移。
[0080]另外對于立體片源的視差值本身就在虛擬現實視差范圍內的立體片源,也可以對其進行調整,調整的原則是:若立體片源視差值的最大值比視差上限值相差較大時,則增大立體片源的視差值;若立體片源視差值的最小值與視差下限值相差較大時,則減小立體片源的視差值。
[0081]進一步的,如圖4所示,裝置進一步包括:
[0082]建立單元34,用于在獲取立體片源以及對應立體片源的視差值之前,建立立體視差文件,立體視差文件用于保存立體片源的標識和對應立體片源的視差值。
[0083]建立立體視差文件,是為需要在虛擬現實場景中顯示的立體片源提前建立一個用于保存立體片源的標識和對應立體片源的視差值的文件。其中立體片源的標識可以是立體片源的標題名和身份標識號ID等。
[0084]對于由虛擬現實模型提供者提供的立體片源,可以在線下獲取立體片源的視差值,并將立體片源的標識與視差值一一對應的保存到建立的立體視差文件中。對于用戶自己提供的立體片源可以先在立體視差文件中查找是否有相同的片源,若沒有則對該立體片源使用獲取立體片源視差值的方法獲取其對應的視差值,然后將立體片源的標識和對應的視差值保存到立體視差文件中。
[0085]進一步的,第二獲取單元32,用于:
[0086]從立體視差文件中獲取立體片源的視差值。
[0087]本發明實施例提供的虛擬現實調整視差的裝置,能夠首先獲取虛擬現實模型的視差范圍,然后獲取在虛擬現實場景中顯示的立體片源的視差值,最后將立體片源的視差值調整到虛擬現實的視差范圍之內。與現有技術相比,本發明實施例能夠根據獲取到的虛擬現實的視差范圍對在虛擬現實場景中顯示的立體片源進行視差值的調整,以使得立體片源的視差值不超出虛擬現實的視差范圍,解決了在立體場景中嵌套立體場景時不能調整視差的問題,有效地改善了在立體場景中展示新的立體場景的展示效果。
[0088]需要說明的是,針對上述虛擬現實調整視差的裝置,凡是本發明實施例中使用到的各個單元模塊的功能都可以通過硬件處理器(hardware processor)來實現。
[0089]示例性的,如圖5所示,圖5示出了本發明實施例提供的一種虛擬現實調整視差的裝置的實體結構示意圖,該實體結構可以包括:處理器(processor) 51、通信接口(Communicat1ns Interface)52、存儲器(memory)53和總線54,其中,處理器51、通信接口52、存儲器53通過總線54完成相互間的通信。通信接口 52可以用于信息傳輸。處理器51可以調用存儲器53中的邏輯指令,以執行如下方法:獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍;獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源;根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。
[0090]此外,上述的存儲器53中的邏輯指令可以通過軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(R0M,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
[0091]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。本領域普通技術人員在不付出創造性的勞動的情況下,即可以理解并實施。
[0092]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件。基于這樣的理解,上述技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品可以存儲在計算機可讀存儲介質中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行各個實施例或者實施例的某些部分所述的方法。
[0093]最后應說明的是:以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。
【主權項】
1.一種虛擬現實調整視差的方法,其特征在于,所述方法包括: 獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍; 獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源; 根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。2.根據權利要求1所述的方法,其特征在于,所述獲取虛擬現實模型預設的視差范圍,包括: 制作測試片源,所述測試片源中包括有不同數值的視差值; 對不同的視差值進行實際測試,獲取符合預設標準的視差值; 根據獲取的視差值確定所述視差范圍。3.根據權利要求1述的方法,其特征在于,所述根據所述視差范圍調整所述立體片源的視差值,包括: 若所述立體片源的視差值大于所述視差上限值,則減小所述立體片源的視差值; 若所述立體片源的視差值小于所述視差下限值,則增大所述立體片源的視差值。4.根據權利要求3所述的方法,其特征在于,所述減小所述立體片源的視差值,包括: 將所述虛擬現實場景中的左視圖向右移,右視圖向左移; 所述增大所述立體片源的視差值,包括: 將所述虛擬現實場景中的左視圖向左移,右視圖向右移。5.根據權利要求1所述的方法,其特征在于,在所述獲取立體片源以及對應所述立體片源的視差值之前,所述方法進一步包括: 建立立體視差文件,所述立體視差文件用于保存所述立體片源的標識和對應所述立體片源的視差值。6.根據權利要求5所述的方法,其特征在于,所述獲取對應所述立體片源的視差值,包括: 從所述立體視差文件中獲取所述立體片源的視差值。7.一種虛擬現實調整視差的裝置,其特征在于,所述裝置包括: 第一獲取單元,用于獲取虛擬現實模型預設的視差范圍,所述視差范圍是由一個視差上限值和一個視差下限值構成的范圍; 第二獲取單元,用于獲取立體片源以及對應所述立體片源的視差值,所述立體片源為在虛擬現實場景中顯示的片源; 調整單元,用于根據所述視差范圍調整所述立體片源的視差值,以使所述立體片源的視差值不超出所述視差范圍。8.根據權利要求7所述的裝置,其特征在于,所述第一獲取單元,包括: 制作模塊,用于制作測試片源,所述測試片源中包括有不同數值的視差值; 測試模塊,用于對不同的視差值進行實際測試,獲取符合預設標準的視差值; 確定模塊,用于根據獲取的視差值確定所述視差范圍。9.根據權利要求7述的裝置,其特征在于,所述調整單元,包括: 減小模塊,用于若所述立體片源的視差值大于所述視差上限值,則減小所述立體片源的視差值; 增大模塊,用于若所述立體片源的視差值小于所述視差下限值,則增大所述立體片源的視差值。10.根據權利要求9所述的裝置,其特征在于,所述減小模塊,用于: 將所述虛擬現實場景中的左視圖向右移,右視圖向左移; 所述增大模塊,用于: 將所述虛擬現實場景中的左視圖向左移,右視圖向右移。11.根據權利要求7所述的裝置,其特征在于,所述裝置進一步包括: 建立單元,用于在所述獲取立體片源以及對應所述立體片源的視差值之前,建立立體視差文件,所述立體視差文件用于保存所述立體片源的標識和對應所述立體片源的視差值。12.根據權利要求11所述的裝置,其特征在于,所述第二獲取單元,用于: 從所述立體視差文件中獲取所述立體片源的視差值。
【文檔編號】H04N13/00GK105872517SQ201511001007
【公開日】2016年8月17日
【申請日】2015年12月28日
【發明人】楚明磊
【申請人】樂視致新電子科技(天津)有限公司