本發(fā)明涉及圖像處理技術(shù)領(lǐng)域,具體而言,涉及一種支持多視角觀看的視頻生成方法、裝置、介質(zhì)和電子設(shè)備。
背景技術(shù):
隨著計(jì)算機(jī)圖形圖像技術(shù)的快速發(fā)展,計(jì)算機(jī)圖形引擎的功能越來越強(qiáng)大,以往利用計(jì)算機(jī)圖形引擎開發(fā)的游戲畫質(zhì)不能與影視作品相比,但是近年來主流商業(yè)圖形引擎在渲染質(zhì)量方面取得了突破性的進(jìn)步,這完全得益于新型的圖形圖像計(jì)算硬件和新的計(jì)算算法的進(jìn)步。同時(shí)隨著電影工業(yè)的進(jìn)步,越來越多的影視作品也大量采用商業(yè)化的圖形引擎作為特效制作工具來輔助進(jìn)行影視特效加工。
通常在對虛擬場景進(jìn)行渲染時(shí),一般可以采用實(shí)時(shí)渲染的方法或者非實(shí)時(shí)渲染的方法。影視作品在進(jìn)行加工處理時(shí),通常是采用非實(shí)時(shí)渲染的方法,非實(shí)時(shí)渲染的結(jié)果可以是一張圖像也可以是一段視頻。但是,對于非實(shí)時(shí)渲染得到的者視頻,用戶不能控制觀看視角,因?yàn)橄鄼C(jī)的運(yùn)動(dòng)軌跡已經(jīng)固定不變,用戶觀察的內(nèi)容是強(qiáng)制性的呈現(xiàn)在眼前。
隨著用戶對沉浸感和真實(shí)感的需求不斷提升,目前單一視角的影視作品已經(jīng)不能滿足用戶的需求,影響了用戶體驗(yàn)。
需要說明的是,在上述背景技術(shù)部分公開的信息僅用于加強(qiáng)對本發(fā)明的背景的理解,因此可以包括不構(gòu)成對本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種支持多視角觀看的視頻生成方法、裝置、介質(zhì)和電子設(shè)備,進(jìn)而至少在一定程度上克服由于相關(guān)技術(shù)的限制和缺陷而導(dǎo)致的一個(gè)或者多個(gè)問題。
本發(fā)明的其他特性和優(yōu)點(diǎn)將通過下面的詳細(xì)描述變得顯然,或部分地通過本發(fā)明的實(shí)踐而習(xí)得。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供了一種支持多視角觀看的視頻生成方法,包括:獲取在虛擬場景中設(shè)置的多個(gè)視角;針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面;將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件。
在本發(fā)明的一些實(shí)施例中,基于前述方案,針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面的步驟,包括:在所述虛擬場景中,設(shè)置所述各個(gè)視角對應(yīng)的虛擬相機(jī);獲取所述各個(gè)視角對應(yīng)的虛擬相機(jī)的參數(shù)信息;基于所述各個(gè)視角對應(yīng)的虛擬相機(jī)的參數(shù)信息,渲染得到所述各個(gè)視角對應(yīng)的畫面。
在本發(fā)明的一些實(shí)施例中,基于前述方案,將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件的步驟,包括:將所述各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行合成,得到一幀圖像;基于對所述各個(gè)視角分別對應(yīng)的多張畫面進(jìn)行合成得到的多幀圖像,生成所述視頻文件。
在本發(fā)明的一些實(shí)施例中,基于前述方案,將所述各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行合成,得到一幀圖像的步驟,包括:從所述各個(gè)視角分別對應(yīng)的一張畫面中選取多個(gè)列的內(nèi)容或多個(gè)行的內(nèi)容;將從所述各個(gè)視角分別對應(yīng)的一張畫面中選取的多個(gè)列的內(nèi)容或多個(gè)行的內(nèi)容進(jìn)行排列組合,以生成一幀圖像。
在本發(fā)明的一些實(shí)施例中,基于前述方案,所述多個(gè)視角中任一視角對應(yīng)的一張畫面在所述一幀圖像中對應(yīng)的列的內(nèi)容或行的內(nèi)容的集合為:
view(i)=k×n+i
其中,view(i)表示視角i對應(yīng)的一張畫面在所述一幀圖像中對應(yīng)的列的內(nèi)容或行的內(nèi)容的集合;k為大于或等于0的整數(shù);n表示所述多個(gè)視角的個(gè)數(shù);i表示視角編號(hào)。
在本發(fā)明的一些實(shí)施例中,基于前述方案,將所述各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行合成,得到一幀圖像的步驟,包括:將所述各個(gè)視角分別對應(yīng)的一張畫面按照預(yù)定順序進(jìn)行排列,并壓縮生成一幀圖像。
在本發(fā)明的一些實(shí)施例中,基于前述方案,將所述各個(gè)視角分別對應(yīng)的一張畫面按照預(yù)定順序進(jìn)行排列,包括:將所述各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行橫向排列和/或縱向排列。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供了一種支持多視角觀看的視頻生成裝置,包括:獲取單元,用于獲取在虛擬場景中設(shè)置的多個(gè)視角;處理單元,用于針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面;合成單元,用于將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件。
根據(jù)本發(fā)明實(shí)施例的第三方面,提供了一種計(jì)算機(jī)可讀介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述第一方面所述的支持多視角觀看的視頻生成方法。
根據(jù)本發(fā)明實(shí)施例的第四方面,提供了一種電子設(shè)備,包括:一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,用于存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)如上述第一方面所述的支持多視角觀看的視頻生成方法。
在本發(fā)明的一些實(shí)施例所提供的技術(shù)方案中,通過針對虛擬場景中的多個(gè)視角進(jìn)行渲染得到各個(gè)視角對應(yīng)的畫面,并將各個(gè)視角對應(yīng)的畫面進(jìn)行合成,得到支持多視角觀看的視頻文件,使得可以基于在虛擬場景中設(shè)置的多個(gè)視角生成能夠以不同視角進(jìn)行觀看的視頻文件,進(jìn)而使得用戶在觀看視頻文件時(shí)能夠根據(jù)需求切換至不同的視角來觀看視頻文件,提升了用戶的視覺體驗(yàn)。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實(shí)施例,并與說明書一起用于解釋本發(fā)明的原理。顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。在附圖中:
圖1示意性示出了根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成方法的流程圖;
圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的虛擬場景的示意圖;
圖3示出了圖2所示的虛擬場景中的虛擬相機(jī)進(jìn)行渲染后的畫面示意圖;
圖4示出了根據(jù)本發(fā)明的第一個(gè)實(shí)施例的將多個(gè)視角畫面合成一幀圖像的示意圖;
圖5示出了根據(jù)本發(fā)明的第二個(gè)實(shí)施例的將多個(gè)視角畫面合成一幀圖像的示意圖;
圖6示出了根據(jù)本發(fā)明的第三個(gè)實(shí)施例的將多個(gè)視角畫面合成一幀圖像的示意圖;
圖7示出了根據(jù)本發(fā)明的第四個(gè)實(shí)施例的將多個(gè)視角畫面合成一幀圖像的示意圖;
圖8示出了根據(jù)本發(fā)明的第五個(gè)實(shí)施例的將多個(gè)視角畫面合成一幀圖像的示意圖;
圖9示意性示出了根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成裝置的框圖;
圖10示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施例的電子設(shè)備的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
現(xiàn)在將參考附圖更全面地描述示例實(shí)施方式。然而,示例實(shí)施方式能夠以多種形式實(shí)施,且不應(yīng)被理解為限于在此闡述的范例;相反,提供這些實(shí)施方式使得本發(fā)明將更加全面和完整,并將示例實(shí)施方式的構(gòu)思全面地傳達(dá)給本領(lǐng)域的技術(shù)人員。
此外,所描述的特征、結(jié)構(gòu)或特性可以以任何合適的方式結(jié)合在一個(gè)或更多實(shí)施例中。在下面的描述中,提供許多具體細(xì)節(jié)從而給出對本發(fā)明的實(shí)施例的充分理解。然而,本領(lǐng)域技術(shù)人員將意識(shí)到,可以實(shí)踐本發(fā)明的技術(shù)方案而沒有特定細(xì)節(jié)中的一個(gè)或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細(xì)示出或描述公知方法、裝置、實(shí)現(xiàn)或者操作以避免模糊本發(fā)明的各方面。
附圖中所示的方框圖僅僅是功能實(shí)體,不一定必須與物理上獨(dú)立的實(shí)體相對應(yīng)。即,可以采用軟件形式來實(shí)現(xiàn)這些功能實(shí)體,或在一個(gè)或多個(gè)硬件模塊或集成電路中實(shí)現(xiàn)這些功能實(shí)體,或在不同網(wǎng)絡(luò)和/或處理器裝置和/或微控制器裝置中實(shí)現(xiàn)這些功能實(shí)體。
附圖中所示的流程圖僅是示例性說明,不是必須包括所有的內(nèi)容和操作/步驟,也不是必須按所描述的順序執(zhí)行。例如,有的操作/步驟還可以分解,而有的操作/步驟可以合并或部分合并,因此實(shí)際執(zhí)行的順序有可能根據(jù)實(shí)際情況改變。
圖1示意性示出了根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成方法的流程圖。
參照圖1,根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成方法,包括:
步驟s10,獲取在虛擬場景中設(shè)置的多個(gè)視角。
在本發(fā)明的實(shí)施例中,在設(shè)置虛擬場景中的多個(gè)視角之前,需要對虛擬場景的各項(xiàng)參數(shù)進(jìn)行配置,具體可以包括:在圖形引擎中將三維模型(包括人物、物體、動(dòng)畫等元素)添加到三維坐標(biāo)系中,構(gòu)建所要描述的虛擬場景的內(nèi)容;設(shè)置虛擬場景需要的光照環(huán)境,包括光照參數(shù)、模型本身的材質(zhì)等等;設(shè)置各種特效參數(shù),比如天氣、爆炸等等。
步驟s12,針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面。
根據(jù)本發(fā)明的示例性實(shí)施例,步驟s12包括:在所述虛擬場景中,設(shè)置所述各個(gè)視角對應(yīng)的虛擬相機(jī);獲取所述各個(gè)視角對應(yīng)的虛擬相機(jī)的參數(shù)信息;基于所述各個(gè)視角對應(yīng)的虛擬相機(jī)的參數(shù)信息,渲染得到所述各個(gè)視角對應(yīng)的畫面。
需要說明的是:虛擬相機(jī)的參數(shù)信息包括機(jī)位、視角大小、運(yùn)動(dòng)軌跡等。在基于各個(gè)視角對應(yīng)的虛擬相機(jī)的參數(shù)信息渲染得到各個(gè)視角對應(yīng)的畫面時(shí),還需要考慮針對虛擬場景設(shè)置的各項(xiàng)參數(shù),包括光照參數(shù)、特效參數(shù)和模型本身的材質(zhì)等。
步驟s14,將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件。
根據(jù)本發(fā)明的示例性實(shí)施例,步驟s14包括:將所述各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行合成,得到一幀圖像;基于對所述各個(gè)視角分別對應(yīng)的多張畫面進(jìn)行合成得到的多幀圖像,生成所述視頻文件。
在該實(shí)施例中,可以先生成視頻文件的多幀圖像,然后基于生成的多幀圖像來生成視頻文件。其中,生成的每一幀圖像都是根據(jù)各個(gè)視角渲染得到的畫面來生成的。
在本發(fā)明的實(shí)施例中,提出了如下兩種將各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行合成得到一幀圖像的方案:
方案一:
從所述各個(gè)視角分別對應(yīng)的一張畫面中選取多個(gè)列的內(nèi)容或多個(gè)行的內(nèi)容;將從所述各個(gè)視角分別對應(yīng)的一張畫面中選取的多個(gè)列的內(nèi)容或多個(gè)行的內(nèi)容進(jìn)行排列組合,以生成一幀圖像。
進(jìn)一步地,在方案一種,所述多個(gè)視角中任一視角對應(yīng)的一張畫面在所述一幀圖像中對應(yīng)的列的內(nèi)容或行的內(nèi)容的集合為:
view(i)=k×n+i
其中,view(i)表示視角i對應(yīng)的一張畫面在所述一幀圖像中對應(yīng)的列的內(nèi)容或行的內(nèi)容的集合;k為大于或等于0的整數(shù);n表示所述多個(gè)視角的個(gè)數(shù);i表示視角編號(hào)。
具體地,比如合成的一幀圖像是基于選取的多個(gè)列的內(nèi)容生成的,且虛擬場景中有3個(gè)視角,分別為視角1、視角2和視角3,視角1對應(yīng)的畫面為畫面1,視角2對應(yīng)的畫面為畫面2,視角3對應(yīng)的畫面為畫面3,則在合成的一幀圖像中的第1、4、7……列的內(nèi)容為畫面1中的內(nèi)容;合成的一幀圖像中的第2、5、8……列的內(nèi)容為畫面2中的內(nèi)容;合成的一幀圖像中的第3、6、9……列的內(nèi)容為畫面3中的內(nèi)容。
在本發(fā)明的實(shí)施例中,合成的一幀圖像中的第1、4、7……列的內(nèi)容也可以是畫面1中第1、4、7……列的內(nèi)容;合成的一幀圖像中的第2、5、8……列的內(nèi)容也可以是畫面2中第2、5、8……列的內(nèi)容;合成的一幀圖像中的第3、6、9……列的內(nèi)容也可以是畫面3中第3、6、9……列的內(nèi)容。
此外,對于合成的一幀圖像是基于選取的多個(gè)行的內(nèi)容生成的情況與上述類似,不再贅述。
方案二:
將所述各個(gè)視角分別對應(yīng)的一張畫面按照預(yù)定順序進(jìn)行排列,并壓縮生成一幀圖像。
具體地,在本發(fā)明的實(shí)施例中,可以將各個(gè)視角分別對應(yīng)的一張畫面進(jìn)行橫向排列,或者進(jìn)行縱向排列,或者橫向和縱向混合排列。
以下以在虛擬場景中設(shè)置3個(gè)視角為例,對本發(fā)明實(shí)施例的技術(shù)方案進(jìn)行詳細(xì)闡述:
首先需要在圖形引擎(如unity/unreal等圖形引擎或者max/maya動(dòng)畫制作軟件)中將三維模型添加到三維坐標(biāo)系中,構(gòu)建所要描述的虛擬場景的內(nèi)容。然后設(shè)置場景需要的光照環(huán)境,包括光照參數(shù)、模型本身的材質(zhì)等,并設(shè)置各種特效參數(shù),比如天氣、爆炸等。
具體地,在本發(fā)明的一個(gè)實(shí)施例中,如圖2所示,虛擬場景中有兩個(gè)人物模型、兩個(gè)普通的物體模型(桌子和沙發(fā))。在設(shè)置場景需要的各項(xiàng)參數(shù)之后,設(shè)置了三個(gè)不同的視角:一個(gè)全局視角201,兩個(gè)人物角色視角202和203,如果需要更多視角可以類推增加,以下僅以三個(gè)視角為例進(jìn)行說明。
針對視角201、202和203對應(yīng)的虛擬相機(jī),可以設(shè)置機(jī)位、運(yùn)動(dòng)軌跡、視角大小等相機(jī)信息,設(shè)置完每個(gè)視角的虛擬相機(jī)后,可以啟動(dòng)渲染得到不同視角的畫面,如圖3所示的301是視角201對應(yīng)的虛擬相機(jī)呈現(xiàn)的渲染畫面,302是視角202對應(yīng)的虛擬相機(jī)呈現(xiàn)的渲染畫面,303是視角203對應(yīng)的虛擬相機(jī)呈現(xiàn)的渲染畫面。
得到上述三個(gè)視角畫面后,可以將上述三個(gè)視角畫面合成在一幀圖像中,具體地合成方式有多種,以下列舉其中的幾種:
合成方式一:
如圖4所示,列401是視角201對應(yīng)的畫面301中的內(nèi)容,列402是視角202對應(yīng)的畫面302中的內(nèi)容,列403是視角203對應(yīng)的畫面303中的內(nèi)容。可見,合成方式一是將從各個(gè)視角對應(yīng)的畫面中選擇的列依次排列進(jìn)行合成。
將合成方式一擴(kuò)展至n個(gè)視角時(shí),假設(shè)n個(gè)視角的編號(hào)為0、1、2、……、n-1,那么0號(hào)視角對應(yīng)的畫面會(huì)存在于生成的每一幀畫面中的0×n、1×n、2×n、3×n、……列中,1號(hào)視角對應(yīng)的畫面會(huì)存在于生成的每一幀畫面的0×n+1、1×n+1、2×n+1、3×n+1、……列中,以此類推,n-1號(hào)視角對應(yīng)的畫面會(huì)存在于生成的每一幀畫面的0×n+n-1、1×n+n-1、2×n+n-1、3×n+n-1、……列中。即視角i對應(yīng)的畫面會(huì)存在于每一幀畫面的0×n+i、1×n+i、2×n+i、3×n+i、……列中。如果用一個(gè)公式表示視角i在一幀畫面中所對應(yīng)的列的集合,那么可以得到view(i)=k×n+i,其中k為大于或等于0的整數(shù),n表示所有視角合成的一幀畫面中擁有多少個(gè)視角,i表示view(i)對應(yīng)的n個(gè)視角中的某一個(gè)視角的編號(hào)。
合成方式二:
如圖5所示,行501是視角201對應(yīng)的畫面301中的內(nèi)容,行502是視角202對應(yīng)的畫面302中的內(nèi)容,行503是視角203對應(yīng)的畫面303中的內(nèi)容??梢?,合成方式二是將從各個(gè)視角對應(yīng)的畫面中選擇的行依次排列進(jìn)行合成。
將合成方式二擴(kuò)展至n個(gè)視角的方案與上述合成方式一類似,不再贅述。
合成方式三:
如圖6所示,直接將視角201對應(yīng)的畫面301中的內(nèi)容、視角202對應(yīng)的畫面302中的內(nèi)容和視角203對應(yīng)的畫面303中的內(nèi)容進(jìn)行橫向排列來生成一幀圖像。
合成方式四:
如圖7所示,直接將視角201對應(yīng)的畫面301中的內(nèi)容、視角202對應(yīng)的畫面302中的內(nèi)容和視角203對應(yīng)的畫面303中的內(nèi)容進(jìn)行縱向排列來生成一幀圖像。
合成方式五:
如圖8所示,將視角201對應(yīng)的畫面301中的內(nèi)容、視角202對應(yīng)的畫面302中的內(nèi)容、視角203對應(yīng)的畫面303中的內(nèi)容和補(bǔ)位內(nèi)容802進(jìn)行橫向和縱向的綜合排列來生成一幀圖像。需要說明的是,由于是奇數(shù)個(gè)視角,因此在采用合成方式五時(shí),需要設(shè)置補(bǔ)位內(nèi)容802,因此合成方式五更適用于虛擬場景中設(shè)置有偶數(shù)個(gè)視角的應(yīng)用場景。
圖9示意性示出了根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成裝置的框圖。
參照圖9,根據(jù)本發(fā)明的實(shí)施例的支持多視角觀看的視頻生成裝置900,包括:獲取單元902、處理單元904和合成單元906。
具體地,獲取單元902用于獲取在虛擬場景中設(shè)置的多個(gè)視角;處理單元904用于針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面;合成單元906用于將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件。
需要說明的是,上述支持多視角觀看的視頻生成裝置900中包含的各模塊/單元的具體細(xì)節(jié)已經(jīng)在對應(yīng)的報(bào)表查詢方法中進(jìn)行了詳細(xì)的描述,因此此處不再贅述。
下面參考圖10,其示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施例的電子設(shè)備的計(jì)算機(jī)系統(tǒng)1000的結(jié)構(gòu)示意圖。圖10示出的電子設(shè)備的計(jì)算機(jī)系統(tǒng)1000僅是一個(gè)示例,不應(yīng)對本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制。
如圖10所示,計(jì)算機(jī)系統(tǒng)1000包括中央處理單元(cpu)1001,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(rom)1002中的程序或者從存儲(chǔ)部分1008加載到隨機(jī)訪問存儲(chǔ)器(ram)1003中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在ram1003中,還存儲(chǔ)有系統(tǒng)操作所需的各種程序和數(shù)據(jù)。cpu1001、rom1002以及ram1003通過總線1004彼此相連。輸入/輸出(i/o)接口1005也連接至總線1004。
以下部件連接至i/o接口1005:包括鍵盤、鼠標(biāo)等的輸入部分1006;包括諸如陰極射線管(crt)、液晶顯示器(lcd)等以及揚(yáng)聲器等的輸出部分1007;包括硬盤等的存儲(chǔ)部分1008;以及包括諸如lan卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分1009。通信部分1009經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器1010也根據(jù)需要連接至i/o接口1005。可拆卸介質(zhì)1011,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器1010上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分1008。
特別地,根據(jù)本發(fā)明的實(shí)施例,上文參考流程圖描述的過程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本發(fā)明的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括承載在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序,該計(jì)算機(jī)程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過通信部分1009從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)1011被安裝。在該計(jì)算機(jī)程序被中央處理單元(cpu)1001執(zhí)行時(shí),執(zhí)行本申請的系統(tǒng)中限定的上述功能。
需要說明的是,本發(fā)明所示的計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)或者是上述兩者的任意組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子可以包括但不限于:具有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)訪問存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、可擦式可編程只讀存儲(chǔ)器(eprom或閃存)、光纖、便攜式緊湊磁盤只讀存儲(chǔ)器(cd-rom)、光存儲(chǔ)器件、磁存儲(chǔ)器件、或者上述的任意合適的組合。在本發(fā)明中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何包含或存儲(chǔ)程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。而在本發(fā)明中,計(jì)算機(jī)可讀的信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào),其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括但不限于電磁信號(hào)、光信號(hào)或上述的任意合適的組合。計(jì)算機(jī)可讀的信號(hào)介質(zhì)還可以是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括但不限于:無線、電線、光纜、rf等等,或者上述的任意合適的組合。
附圖中的流程圖和框圖,圖示了按照本發(fā)明各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,上述模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖或流程圖中的每個(gè)方框、以及框圖或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
描述于本發(fā)明實(shí)施例中所涉及到的單元可以通過軟件的方式實(shí)現(xiàn),也可以通過硬件的方式來實(shí)現(xiàn),所描述的單元也可以設(shè)置在處理器中。其中,這些單元的名稱在某種情況下并不構(gòu)成對該單元本身的限定。
作為另一方面,本申請還提供了一種計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以是上述實(shí)施例中描述的電子設(shè)備中所包含的;也可以是單獨(dú)存在,而未裝配入該電子設(shè)備中。上述計(jì)算機(jī)可讀介質(zhì)承載有一個(gè)或者多個(gè)程序,當(dāng)上述一個(gè)或者多個(gè)程序被一個(gè)該電子設(shè)備執(zhí)行時(shí),使得該電子設(shè)備實(shí)現(xiàn)如上述實(shí)施例中所述的支持多視角觀看的視頻生成方法。
例如,所述電子設(shè)備可以實(shí)現(xiàn)如圖1中所示的:步驟s10,獲取在虛擬場景中設(shè)置的多個(gè)視角;步驟s12,針對所述多個(gè)視角中的各個(gè)視角進(jìn)行圖形渲染處理,得到所述各個(gè)視角對應(yīng)的畫面;步驟s14,將所述各個(gè)視角對應(yīng)的畫面進(jìn)行合成,以得到支持多視角觀看的視頻文件。
應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了用于動(dòng)作執(zhí)行的設(shè)備的若干模塊或者單元,但是這種劃分并非強(qiáng)制性的。實(shí)際上,根據(jù)本發(fā)明的實(shí)施方式,上文描述的兩個(gè)或更多模塊或者單元的特征和功能可以在一個(gè)模塊或者單元中具體化。反之,上文描述的一個(gè)模塊或者單元的特征和功能可以進(jìn)一步劃分為由多個(gè)模塊或者單元來具體化。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員易于理解,這里描述的示例實(shí)施方式可以通過軟件實(shí)現(xiàn),也可以通過軟件結(jié)合必要的硬件的方式來實(shí)現(xiàn)。因此,根據(jù)本發(fā)明實(shí)施方式的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲(chǔ)在一個(gè)非易失性存儲(chǔ)介質(zhì)(可以是cd-rom,u盤,移動(dòng)硬盤等)中或網(wǎng)絡(luò)上,包括若干指令以使得一臺(tái)計(jì)算設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、觸控終端、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行根據(jù)本發(fā)明實(shí)施方式的方法。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。