本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,特別涉及一種場(chǎng)景展示方法及裝置。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的發(fā)展,虛擬場(chǎng)景的實(shí)現(xiàn)得到越來越多的應(yīng)用。例如,通過對(duì)超市進(jìn)行全景拍攝,獲取全景圖片后對(duì)超市進(jìn)行三維建模,實(shí)現(xiàn)對(duì)該超市的場(chǎng)景展示,從而用戶無需親自前往該超市,就能如身臨其境一般地觀察該超市空間內(nèi)的事物。
目前的場(chǎng)景展示方案中,采用深度相機(jī)進(jìn)行景深定位,結(jié)合全景拍攝的場(chǎng)景圖片進(jìn)行建模,進(jìn)而對(duì)在拍攝點(diǎn)采集的圖片進(jìn)行顯示實(shí)現(xiàn)場(chǎng)景的展示。由于各圖片的拍攝點(diǎn)位置不同,且相互之間存在一定的距離,因而各場(chǎng)景圖片之間并不連續(xù)。而場(chǎng)景展示時(shí),實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)是通過場(chǎng)景圖片的切換實(shí)現(xiàn)的,即只能從一個(gè)拍攝點(diǎn)拍攝的場(chǎng)景圖片切換到到另一個(gè)拍攝點(diǎn)拍攝的場(chǎng)景圖片,導(dǎo)致實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)的場(chǎng)景展示畫面不連續(xù),從而造成移動(dòng)體驗(yàn)較差。
因此,在場(chǎng)景展示時(shí)提高場(chǎng)景展示畫面的連續(xù)性將成為當(dāng)前所亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
為了解決相關(guān)技術(shù)中場(chǎng)景展示時(shí)畫面切換不連續(xù)的技術(shù)問題,本發(fā)明提供了一種場(chǎng)景展示方法及裝置。
一種場(chǎng)景展示方法,包括:
獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向;
將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)所述全景視頻的播放控制指令;
根據(jù)所述播放控制指令與所述視角方向,以所述當(dāng)前圖像幀為播放起點(diǎn)控制所述全景視頻的連續(xù)播放,對(duì)與所述全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示。
一種場(chǎng)景展示裝置,包括:
圖像幀及視角獲取模塊,用于獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向;
控制指令轉(zhuǎn)換模塊,用于將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)所述全景視頻的播放控制指令;
視頻播放模塊,用于根據(jù)所述播放控制指令與所述視角方向,以所述當(dāng)前圖像幀為播放起點(diǎn)控制所述全景視頻的連續(xù)播放,對(duì)與所述全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示。
通過本發(fā)明的實(shí)施例提供的技術(shù)方案能夠得到以下有益效果:
在進(jìn)行場(chǎng)景展示時(shí),獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向,將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)全景視頻的播放控制指令,根據(jù)播放控制指令與視角方向,以當(dāng)前圖像幀為播放起點(diǎn)控制全景視頻的連續(xù)播放,對(duì)與全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示,從而通過全景視頻的播放實(shí)現(xiàn)場(chǎng)景展示時(shí)的位置移動(dòng),提高了實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)場(chǎng)景展示畫面的連續(xù)性,增強(qiáng)了場(chǎng)景中位置移動(dòng)的體驗(yàn)。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性的,本發(fā)明并不受限制。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實(shí)施例,并與說明書一起用于解釋本發(fā)明的原理。
圖1是根據(jù)一示例性實(shí)施例示出的一種場(chǎng)景展示方法流程圖。
圖2是根據(jù)圖1對(duì)應(yīng)實(shí)施例示出的場(chǎng)景展示方法中步驟s130的一種具體實(shí)現(xiàn)流程圖。
圖3是根據(jù)圖2對(duì)應(yīng)實(shí)施例示出的場(chǎng)景展示方法中步驟s132的一種具體實(shí)現(xiàn)流程圖。
圖4是根據(jù)圖2對(duì)應(yīng)實(shí)施例示出的場(chǎng)景展示方法中步驟s131的一種具體實(shí)現(xiàn)流程圖。
圖5是根據(jù)一示例性實(shí)施例示出的全景視頻的播放方向示意圖。
圖6是根據(jù)另一示例性實(shí)施例示出的場(chǎng)景展示方法流程圖。
圖7是根據(jù)一示例性實(shí)施例示出的全景視頻示意圖。
圖8是根據(jù)一示例性實(shí)施例示出的全景視頻播放時(shí)的示意圖。
圖9是根據(jù)一示例性實(shí)施例示出的一種場(chǎng)景展示裝置的框圖。
圖10是根據(jù)圖9對(duì)應(yīng)實(shí)施例示出的視頻播放模塊130的框圖。
圖11是根據(jù)圖10對(duì)應(yīng)實(shí)施例示出的連續(xù)播放子模塊132的框圖。
圖12是根據(jù)圖10對(duì)應(yīng)實(shí)施例示出的播放方向確定子模塊131的一種結(jié)構(gòu)框圖。
圖13是根據(jù)圖10對(duì)應(yīng)實(shí)施例示出的另一種場(chǎng)景展示裝置的結(jié)構(gòu)框圖。
圖14是根據(jù)一示例性實(shí)施例示出的一種終端的框圖。
具體實(shí)施方式
這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所記載的、本發(fā)明的一些方面相一致的裝置和方法的例子。
圖1是根據(jù)一示例性實(shí)施例示出的一種場(chǎng)景展示方法流程圖,如圖1所示,該場(chǎng)景展示方法可以包括以下步驟。
在步驟s110中,獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向。
全景視頻是拍攝路線上的全方位視頻。
可以理解的是,全景視頻是由多個(gè)連續(xù)的圖像幀組成的。
全景視頻與普通視頻不同,在任一圖像幀,通過調(diào)整視角方向,能夠?qū)θ耙曨l關(guān)聯(lián)的場(chǎng)景中的任一視角方向進(jìn)行畫面顯示。
視角方向是對(duì)關(guān)聯(lián)場(chǎng)景進(jìn)行展示時(shí)全景視頻中圖像幀的顯示方向,對(duì)應(yīng)于在全景視頻關(guān)聯(lián)的場(chǎng)景中的相應(yīng)位置時(shí)的視野朝向。
全景視頻的圖像幀是與關(guān)聯(lián)場(chǎng)景中的位置對(duì)應(yīng)的,因而,對(duì)于全景視頻中的任何一個(gè)圖像幀,通過調(diào)整視角方向,可以對(duì)關(guān)聯(lián)場(chǎng)景中對(duì)應(yīng)的位置在任一視野朝向的場(chǎng)景進(jìn)行展示。
在一具體的示例性實(shí)施例中,通過全景攝像機(jī)進(jìn)行全景視頻的拍攝。拍攝時(shí),將全景攝像機(jī)以一定的速度進(jìn)行運(yùn)動(dòng)拍攝,從而采集到在該運(yùn)動(dòng)路線上的全景視頻,而全景視頻中的圖像幀對(duì)應(yīng)該運(yùn)動(dòng)路線上的位置點(diǎn)。
例如,全景視頻與場(chǎng)景中運(yùn)動(dòng)路線相對(duì)應(yīng),當(dāng)全景視頻拍攝時(shí)在運(yùn)動(dòng)路線上的運(yùn)動(dòng)速度為1米/秒,全景視頻拍攝的圖像幀采集率為25幀/秒。則全景視頻的播放起點(diǎn)圖像幀對(duì)應(yīng)場(chǎng)景中運(yùn)動(dòng)路線上的起點(diǎn)位置,即0米。當(dāng)全景視頻播放到25幀時(shí),場(chǎng)景展示的位置移動(dòng)到對(duì)應(yīng)的運(yùn)動(dòng)路線上的1米位置。
在一具體的示例性實(shí)施例中,在每一次進(jìn)行場(chǎng)景展示時(shí),均會(huì)對(duì)播放的當(dāng)前圖像幀及視角方向進(jìn)行記錄。因此,通過查詢?nèi)耙曨l的當(dāng)前記錄,獲取全景視頻的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向。
在步驟s120中,將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)全景視頻的播放控制指令。
移動(dòng)控制指令是對(duì)在全景視頻關(guān)聯(lián)的場(chǎng)景中實(shí)現(xiàn)位置移動(dòng)的控制指令。
在接收移動(dòng)控制指令后,根據(jù)場(chǎng)景中的位置與全景視頻中圖像幀的對(duì)應(yīng)關(guān)系,將移動(dòng)控制指令轉(zhuǎn)換為全景視頻的播放控制指令。
播放控制指令為對(duì)全景視頻的播放進(jìn)行控制的指令。
移動(dòng)控制指令可以是移動(dòng)方向控制指令、移動(dòng)速度控制指令等中的一種或多種指令,也可以為其它類型的控制指令。
相應(yīng)的,對(duì)移動(dòng)控制指令進(jìn)行轉(zhuǎn)換后,得到的播放控制指令可以是播放方向控制指令、播放速度控制指令等中的一種或多種指令。也可以為其它類型的控制指令。
在用戶層面,其可通過交互界面中預(yù)置的按鈕觸發(fā)輸入操作,從而輸入相應(yīng)的移動(dòng)控制指令,轉(zhuǎn)換后得到全景視頻的播放控制指令;也可通過傳感器等探測(cè)設(shè)備進(jìn)行方位變動(dòng)的檢測(cè),進(jìn)而獲取相應(yīng)的播放控制指令;還可以通過其他的方式接收獲取對(duì)全景視頻的播放控制指令。
在步驟s130中,根據(jù)播放控制指令與視角方向,以當(dāng)前圖像幀為播放起點(diǎn)控制全景視頻的連續(xù)播放,對(duì)與全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示。
根據(jù)播放控制指令與視角方向,確定全景視頻的播放方向、播放圖像幀、播放速度等播放參數(shù),進(jìn)而以當(dāng)前圖像幀為播放起點(diǎn)在確定的播放方向上進(jìn)行全景視頻的連續(xù)播放。
例如,播放控制指令為控制播放圖像為10幀,則基于當(dāng)前全景視頻所處的當(dāng)前圖像幀,按照當(dāng)前的播放方向向前播放10幀。
通過如上所述的方法,根據(jù)全景視頻的當(dāng)前圖像幀及視角方向,在播放控制指令的控制下,對(duì)全景視頻進(jìn)行連續(xù)播放,通過全景視頻的播放實(shí)現(xiàn)場(chǎng)景展示時(shí)的位置移動(dòng),提高了實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)場(chǎng)景展示畫面的連續(xù)性,增強(qiáng)了場(chǎng)景中位置移動(dòng)的體驗(yàn)。
圖2是根據(jù)一示例性實(shí)施例示出的場(chǎng)景展示方法中步驟s130的細(xì)節(jié)描述。圖2中,播放控制指令可以包括播放方向控制指令,該步驟s130可以包括以下步驟。
在步驟s131中,根據(jù)播放方向控制指令與視角方向,確定在當(dāng)前圖像幀時(shí)全景視頻的播放方向。
播放方向控制指令為對(duì)全景視頻的播放方向進(jìn)行調(diào)整的指令。
播放方向控制指令可以為全景視頻中指定方向的控制指令,也可以為相對(duì)全景視頻當(dāng)前視角方向的調(diào)整指令。
在一具體的示例性實(shí)施例中,播放方向控制指令為全景視頻中指定視角方向的控制指令。全景視頻中,各視角方向具有相應(yīng)的方向標(biāo)記,通過接收包含方向標(biāo)記的播放方向控制指令,將該方向標(biāo)記對(duì)應(yīng)的視角方向確定為全景視頻的播放方向。
在一具體的示例性實(shí)施例中,播放方向控制指令為相對(duì)全景視頻當(dāng)前視角方向的偏轉(zhuǎn)角度指令。通過接收包含偏轉(zhuǎn)角度的播放方向控制指令,基于全景視頻當(dāng)前的視角方向進(jìn)行偏轉(zhuǎn)角度的調(diào)整,進(jìn)而將調(diào)整后的方向作為全景視頻的播放方向。
在步驟s132中,以當(dāng)前圖像幀為播放起點(diǎn),按照播放方向進(jìn)行全景視頻的連續(xù)播放。
通過如上所述的方法,根據(jù)播放控制指令確定全景視頻的播放方向,以全景視頻的當(dāng)前圖像幀為播放起點(diǎn),按照該播放方向進(jìn)行全景視頻的連續(xù)播放,從而在對(duì)全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示時(shí),能夠自主選擇位置移動(dòng)的方向,并且使實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)的場(chǎng)景展示畫面更加連續(xù),增強(qiáng)了虛擬場(chǎng)景中位置移動(dòng)的體驗(yàn)。
圖3是根據(jù)圖2對(duì)應(yīng)實(shí)施例示出的場(chǎng)景展示方法中步驟s132的細(xì)節(jié)描述。圖2中,播放控制指令還可以包括播放速度控制指令,該步驟s132可以包括以下步驟。
在步驟s1321中,根據(jù)播放速度控制指令確定對(duì)全景視頻進(jìn)行播放的倍速大小。
可以理解的是,全景視頻播放時(shí),全景視頻具有一定的播放速度。
播放速度控制指令為對(duì)全景視頻的播放速度進(jìn)行控制的指令。
如上所述,全景視頻的圖像幀是與關(guān)聯(lián)場(chǎng)景中的位置對(duì)應(yīng)的。因而,通過控制全景視頻的播放速度,實(shí)現(xiàn)對(duì)關(guān)聯(lián)場(chǎng)景中位置的移動(dòng)速度的控制。
在步驟s1322中,以當(dāng)前圖像幀為播放起點(diǎn),在播放方向上對(duì)全景視頻按照倍速大小進(jìn)行倍速播放。
通過倍速大小,控制全景視頻的播放速度,即調(diào)節(jié)全景視頻中圖像幀的切換速度,從而實(shí)現(xiàn)關(guān)聯(lián)場(chǎng)景中位置移動(dòng)速度的控制。
對(duì)全景視頻按照倍速大小進(jìn)行倍速播放的方式有多種。
在一具體的示例性實(shí)施例中,對(duì)全景視頻按照倍速大小進(jìn)行倍速播放時(shí),根據(jù)倍速大小,從全景視頻在確定的播放方向上的圖像幀中選取部分圖像幀進(jìn)行跳躍性地播放。
例如,全景視頻中的圖像幀按照時(shí)間順序分為a1、a2、a3、a4、a5、a6、a7、a8,按照倍速大小為1進(jìn)行播放時(shí),每一圖像幀的顯示時(shí)間為40毫秒。當(dāng)按照倍速大小為2進(jìn)行倍速播放時(shí),選取圖像幀a1、a3、a5、a7進(jìn)行顯示,各圖像幀的顯示時(shí)間均為40毫秒。
在一具體的示例性實(shí)施例中,對(duì)全景視頻按照倍速大小進(jìn)行倍速播放時(shí),根據(jù)倍速大小,改變?nèi)耙曨l在確定的播放方向上每一圖像幀的顯示時(shí)間,進(jìn)而按照改變后的顯示時(shí)間對(duì)全景視頻在確定的播放方向上的每一圖像幀進(jìn)行顯示,實(shí)現(xiàn)全景視頻的倍速播放。
例如,全景視頻中的圖像幀按照時(shí)間順序分為a1、a2、a3、a4、a5、a6、a7、a8,按照倍速大小為1進(jìn)行播放時(shí),每一圖像幀的顯示時(shí)間為40毫秒。當(dāng)按照倍速大小為2進(jìn)行倍速播放時(shí),對(duì)圖像幀a1、a2、a3、a4、a5、a6、a7、a8均進(jìn)行顯示,但各圖像幀的顯示時(shí)間均為20毫秒。
通過如上所述的方法,根據(jù)播放控制指令確定全景視頻的播放方向及播放速度,進(jìn)而以全景視頻的當(dāng)前圖像幀為播放起點(diǎn),按照該播放方向和播放速度實(shí)現(xiàn)全景視頻的倍速播放,從而在對(duì)全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示時(shí),能夠自主選擇場(chǎng)景中位置移動(dòng)的路線及速度,大大提高了實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)場(chǎng)景展示畫面的連續(xù)性及場(chǎng)景展示的靈活性,增強(qiáng)了虛擬場(chǎng)景中位置移動(dòng)的體驗(yàn)。
圖4是根據(jù)圖2對(duì)應(yīng)實(shí)施例示出的場(chǎng)景展示方法中步驟s131的細(xì)節(jié)描述。圖4中,該步驟s131可以包括以下步驟。
在步驟s1311中,根據(jù)播放方向控制指令與視角方向,確定期望控制方向。
通常地,在某一個(gè)圖像幀時(shí),全景視頻存在一個(gè)或二個(gè)候選播放方向。
例如,在全景視頻的中間圖像幀時(shí),全景視頻存在二個(gè)候選播放方向;而在全景視頻的端點(diǎn)圖像幀時(shí),全景視頻只存在一個(gè)候選播放方向。
然而,為使展示的場(chǎng)景畫面更加全面,場(chǎng)景關(guān)聯(lián)的全景視頻包括多個(gè)全景視頻段,各全景視頻段之間通過關(guān)聯(lián)圖像幀相關(guān)聯(lián),即關(guān)聯(lián)圖像幀為各全景視頻段之間的交點(diǎn)。
由于各全景視頻段在不同的圖像幀時(shí)存在一個(gè)或二個(gè)候選播放方向,因而,在關(guān)聯(lián)圖像幀時(shí),全景視頻將存在兩個(gè)以上的候選播放方向。
圖5是根據(jù)一示例性實(shí)施例示出的全景視頻的候選播放方向示意圖。圖5所示的全景視頻包括全景視頻段mn和全景視頻段xy,而圖像幀a為關(guān)聯(lián)圖像幀,因而在圖像幀a雖然存在全方位的視角方向,但候選播放方向分別為am、an、ax、ay。因此,在圖像幀a時(shí),只能從候選播放方向am、an、ax、ay中選取一個(gè)作為候選播放方向進(jìn)行全景視頻的播放,并不能按照任一視角方向進(jìn)行全景視頻的播放。
因此,需根據(jù)播放方向控制指令和視角方向,從全景視頻在當(dāng)前圖像幀時(shí)的候選播放方向中確定全景視頻的播放方向。
期望控制方向是根據(jù)播放方向控制指令和視角方向而得到的控制方向,全景視頻并非在任一期望控制方向均存在能夠進(jìn)行視頻播放的方向。
候選播放方向是能夠在全景視頻的圖像幀時(shí)進(jìn)行全景視頻播放的方向。對(duì)于全景視頻中的圖像幀,需要根據(jù)期望控制方向從該圖像幀時(shí)的候選播放方向中確定播放方向。
在步驟s1312中,針對(duì)全景視頻在當(dāng)前圖像幀的每一個(gè)候選播放方向,計(jì)算候選播放方向與期望控制方向之間的夾角。
在一具體的示例性實(shí)施例中,如圖5所示,全景視頻在圖像幀a存在am、an、ax、ay四個(gè)候選播放方向,而在圖像幀m時(shí)只存在ma一個(gè)候選播放方向。
由于每個(gè)候選播放方向是特定的,因而基于期望控制方向計(jì)算候選播放方向與期望控制方向之間的夾角。
如圖5所示,全景視頻在圖像幀a存在4個(gè)候選播放方向am、an、ax、ay,當(dāng)確定期望控制方向?yàn)閍p時(shí),則候選播放方向am與期望控制方向ap之間的夾角為30°,候選播放方向an與期望控制方向ap之間的夾角為150°,候選播放方向ax與期望控制方向ap之間的夾角為60°,候選播放方向ay與期望控制方向ap之間的夾角為120°。
在步驟s1313中,根據(jù)夾角在候選播放方向中確定全景視頻的播放方向。
根據(jù)夾角確定在候選播放方向中確定全景視頻的播放方向時(shí),可以通過比較各候選播放方向與期望控制方向之間的夾角大小,選取最小夾角對(duì)應(yīng)的候選播放方向作為全景視頻的播放方向。
在一具體的示例性實(shí)施例中,全景視頻在某一圖像幀只存在一個(gè)候選播放方向,則對(duì)該候選播放方向與期望控制方向之間的夾角進(jìn)行大小判斷,當(dāng)夾角小于90°時(shí),確定該候選播放方向?yàn)槿耙曨l的播放方向。
在一具體的示例性實(shí)施例中,全景視頻在某一圖像幀存在至少兩個(gè)候選播放方向,在獲取對(duì)各候選播放方向與期望控制方向之間的夾角后,可以對(duì)各夾角進(jìn)行大小判斷,選取最小夾角,在該最小夾角小于90°時(shí),確定該最小夾角對(duì)應(yīng)的候選播放方向?yàn)槿耙曨l的播放方向。
通過如上所述的方法,先根據(jù)播放控制指令在全景視頻的當(dāng)前圖像幀確定期望控制方向,進(jìn)而在獲取當(dāng)前圖像幀的各候選播放方向與期望控制方向之間的夾角后,在所有的候選播放方向中確定全景視頻的播放方向,從而在對(duì)關(guān)聯(lián)場(chǎng)景展示時(shí)實(shí)現(xiàn)位置移動(dòng)路線的選擇,并且在對(duì)全景視頻關(guān)聯(lián)的場(chǎng)景展示時(shí),保證實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)場(chǎng)景展示畫面的連續(xù)性的同時(shí),又提高了場(chǎng)景展示的靈活性,增強(qiáng)了虛擬場(chǎng)景中位置移動(dòng)的體驗(yàn)。
圖6是根據(jù)另一示例性實(shí)施例示出的場(chǎng)景展示方法流程圖。如圖6中,全景視頻包括多個(gè)全景視頻段,關(guān)聯(lián)圖像幀為各全景視頻段之間的交點(diǎn),通過關(guān)聯(lián)圖像幀對(duì)不同全景視頻段進(jìn)行切換播放,圖2中示出的場(chǎng)景展示方法中的步驟s131之后,該場(chǎng)景展示方法還可以包括以下步驟。
在步驟s210中,將在當(dāng)前圖像幀時(shí)進(jìn)行全景視頻段播放的播放方向標(biāo)記為第一播放方向。
在步驟s220中,以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向查找關(guān)聯(lián)圖像幀。
關(guān)聯(lián)圖像幀是全景視頻中存在多個(gè)播放方向的圖像幀。
通常地,通過對(duì)存在多個(gè)播放方向的圖像幀進(jìn)行標(biāo)記,從而確定為關(guān)聯(lián)圖像幀。
因而,以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向,查找全景視頻中存在多個(gè)播放方向的圖像幀。
在步驟s230中,判斷當(dāng)前圖像幀與關(guān)聯(lián)圖像幀的時(shí)間間隔是否在預(yù)設(shè)時(shí)間范圍內(nèi),若為是(y),則執(zhí)行步驟s240,若為否(y),則執(zhí)行步驟s242。
如前所述的,全景視頻中各圖像幀之間存在一定的時(shí)間間隔。
因而,根據(jù)當(dāng)前圖像幀及關(guān)聯(lián)圖像幀在全景視頻中的時(shí)間位置,計(jì)算當(dāng)前圖像幀與關(guān)聯(lián)圖像幀之間的時(shí)間間隔。
例如,圖7是根據(jù)一示例性實(shí)施例示出的全景視頻示意圖。如圖7所示,全景視頻包括視頻1和視頻2兩個(gè)全景視頻段,圖像幀m、a為視頻1的首尾圖像幀,圖像幀x、y為視頻2的首尾圖像幀。在關(guān)聯(lián)圖像幀a時(shí)存在am、ax、ay三個(gè)候選播放方向,視頻1和視頻2通過關(guān)聯(lián)圖像幀a相關(guān)聯(lián)。當(dāng)前圖像幀b為視頻1中第80圖像幀,關(guān)聯(lián)圖像幀a為視頻1中第100圖像幀,而視頻1常速播放時(shí)的播放速率為25幀/秒,因此當(dāng)前圖像幀b與關(guān)聯(lián)圖像幀a的時(shí)間間隔為0.8秒。
預(yù)設(shè)時(shí)間范圍是預(yù)先設(shè)置的時(shí)間大小值。
當(dāng)前圖像幀與關(guān)聯(lián)圖像幀之間的時(shí)間間隔在預(yù)設(shè)時(shí)間范圍內(nèi)時(shí),則在當(dāng)前圖像幀就預(yù)先計(jì)算在關(guān)聯(lián)圖像幀時(shí)全景視頻的播放方向;當(dāng)前圖像幀與關(guān)聯(lián)圖像幀之間的時(shí)間間隔不在預(yù)設(shè)時(shí)間范圍內(nèi)時(shí),則以當(dāng)前圖像幀為播放起點(diǎn),按照第一播放方向進(jìn)行全景視頻的連續(xù)播放。
例如,圖7中,預(yù)設(shè)時(shí)間范圍為1秒,當(dāng)前圖像幀b與關(guān)聯(lián)圖像幀a的時(shí)間間隔為0.8秒時(shí),則在當(dāng)前圖像幀b時(shí)就預(yù)先確定關(guān)聯(lián)圖像幀a時(shí)全景視頻的播放方向;當(dāng)前圖像幀b與關(guān)聯(lián)圖像幀a的時(shí)間間隔為1.1秒時(shí),則以當(dāng)前圖像幀b為起點(diǎn),按照確定的播放方向進(jìn)行全景視頻的連續(xù)播放。
可選的,以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向查找到的關(guān)聯(lián)圖像幀存在多個(gè)時(shí),則按照當(dāng)前圖像幀與關(guān)聯(lián)圖像幀在第一播放方向上的時(shí)間間隔,選取最小時(shí)間間隔對(duì)應(yīng)的關(guān)聯(lián)圖像幀。
在步驟s240中,根據(jù)播放方向控制指令與視角方向,確定在關(guān)聯(lián)圖像幀時(shí)進(jìn)行全景視頻播放的全景視頻段,及在關(guān)聯(lián)圖像幀對(duì)全景視頻段進(jìn)行播放的播放方向,并將在關(guān)聯(lián)圖像幀時(shí)對(duì)全景視頻段進(jìn)行播放的播放方向標(biāo)記為第二播放方向。
如上所述的,由于全景視頻的各全景視頻段在不同的圖像幀時(shí)存在一個(gè)或二個(gè)候選播放方向,而在關(guān)聯(lián)圖像幀時(shí),全景視頻存在兩個(gè)以上的候選播放方向。
因而,與確定第一播放方向類似,按照播放方向控制指令與視角方向,從全景視頻在關(guān)聯(lián)圖像幀時(shí)的多個(gè)候選播放方向中,預(yù)先確定在關(guān)聯(lián)圖像幀時(shí)全景視頻的播放方向及所屬的全景視頻段。
在步驟s242中,以當(dāng)前圖像幀為播放起點(diǎn),按照第一播放方向進(jìn)行全景視頻的連續(xù)播放。
若當(dāng)前圖像幀與關(guān)聯(lián)圖像幀在第一播放方向上的時(shí)間間隔較大,此時(shí)距離進(jìn)行播放方向選擇的時(shí)間間隔還較長(zhǎng),無需預(yù)先確定在關(guān)聯(lián)圖像幀時(shí)的播放方向。因此,將第一播放方向確定為全景視頻的播放方向,以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向進(jìn)行全景視頻的連續(xù)播放。
在步驟s250中,以當(dāng)前圖像幀為播放起點(diǎn),依次按照第一播放方向與第二播放方向進(jìn)行全景視頻的連續(xù)播放。
若當(dāng)前圖像幀與關(guān)聯(lián)圖像幀在第一播放方向上的時(shí)間間隔較小,即在預(yù)設(shè)時(shí)間范圍內(nèi),由于關(guān)聯(lián)圖像幀時(shí)的候選播放方向較多,通過從多個(gè)候選播放方向中預(yù)先確定在關(guān)聯(lián)圖像幀時(shí)全景視頻的播放方向,從而避免直到播放到關(guān)聯(lián)圖像幀才進(jìn)行播放方向的確定而影響全景視頻播放的流暢性。
圖8是根據(jù)一示例性實(shí)施例示出的全景視頻播放時(shí)的示意圖。如圖8所示,全景視頻包括視頻1和視頻2兩個(gè)全景視頻段,圖像幀m、a為視頻1的首尾圖像幀,圖像幀x、y為視頻2的首尾圖像幀。在關(guān)聯(lián)圖像幀a時(shí)存在am、ax、ay三個(gè)候選播放方向,關(guān)聯(lián)圖像幀a為視頻1和視頻2之間的交點(diǎn)。根據(jù)播放方向控制指令與視角方向,確定的當(dāng)前圖像幀b時(shí)的期望控制方向?yàn)閎c方向,即當(dāng)前圖像幀b時(shí)的第一播放方向?yàn)閎a方向。當(dāng)當(dāng)前圖像幀b與關(guān)聯(lián)圖像幀a之間的時(shí)間間隔在預(yù)設(shè)范圍內(nèi)時(shí),則在當(dāng)前圖像幀b時(shí),就預(yù)先確定在關(guān)聯(lián)圖像幀a時(shí)全景視頻的播放方向。確定在關(guān)聯(lián)圖像幀a時(shí)全景視頻的播放方向(即第二播放方向)為ax方向時(shí),以當(dāng)前圖像幀b為起點(diǎn),按照ba方向進(jìn)行全景視頻的播放,直到播放到關(guān)聯(lián)圖像幀a時(shí),再以關(guān)聯(lián)圖像幀a為轉(zhuǎn)折點(diǎn),按照ax方向進(jìn)行全景視頻的播放。
通過如上所述的方法,根據(jù)播放方向控制指令與視角方向確定當(dāng)前圖像幀的第一播放方向,在當(dāng)前圖像幀與關(guān)聯(lián)圖像幀在第一播放方向上的時(shí)間間隔在預(yù)設(shè)時(shí)間范圍內(nèi)時(shí),在當(dāng)前圖像幀就預(yù)先確定在關(guān)聯(lián)圖像幀時(shí)全景視頻的第二播放方向,進(jìn)而以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向播放到關(guān)聯(lián)圖像幀后,再以關(guān)聯(lián)圖像幀為起點(diǎn)按照第二播放方向進(jìn)行相應(yīng)全景視頻段的播放,從而在對(duì)關(guān)聯(lián)場(chǎng)景展示時(shí)實(shí)現(xiàn)位置移動(dòng)路線的自動(dòng)選擇,保證實(shí)現(xiàn)場(chǎng)景的位置移動(dòng)時(shí)場(chǎng)景展示畫面的連續(xù)性的同時(shí),又提高了場(chǎng)景展示的靈活性,增強(qiáng)了虛擬場(chǎng)景中位置移動(dòng)的體驗(yàn)。
下述為本發(fā)明裝置實(shí)施例,可以用于執(zhí)行上述場(chǎng)景展示方法實(shí)施例。對(duì)于本發(fā)明裝置實(shí)施例中未披露的細(xì)節(jié),請(qǐng)參照本發(fā)明場(chǎng)景展示方法實(shí)施例。
圖9是根據(jù)一示例性實(shí)施例示出的一種場(chǎng)景展示裝置的框圖,該裝置包括但不限于:圖像幀及視角獲取模塊110、控制指令轉(zhuǎn)換模塊120及視頻播放模塊130。
圖像幀及視角獲取模塊110,用于獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向;
控制指令轉(zhuǎn)換模塊120,用于將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)全景視頻的播放控制指令;
視頻播放模塊130,用于根據(jù)播放控制指令與視角方向,以當(dāng)前圖像幀為播放起點(diǎn)控制全景視頻的連續(xù)播放,對(duì)與全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示。
上述裝置中各個(gè)模塊的功能和作用的實(shí)現(xiàn)過程具體詳見上述場(chǎng)景展示方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。
可選的,如圖10所示,播放控制指令包括播放方向控制指令,圖9示出的視頻播放模塊130包括但不限于:播放方向確定子模塊131和連續(xù)播放子模塊132。
播放方向確定子模塊131,用于根據(jù)播放方向控制指令與視角方向,確定在當(dāng)前圖像幀時(shí)全景視頻的播放方向;
連續(xù)播放子模塊132,用于以當(dāng)前圖像幀為播放起點(diǎn),按照播放方向進(jìn)行全景視頻的連續(xù)播放。
可選的,如圖11所示,控制指令還包括播放速度控制指令,圖10示出的連續(xù)播放子模塊132包括但不限于:倍速大小確定單元1321和倍速播放單元1322。
倍速大小確定單元1321,用于根據(jù)播放速度控制指令確定對(duì)全景視頻進(jìn)行播放的倍速大小;
倍速播放單元1322,用于以當(dāng)前圖像幀為播放起點(diǎn),在播放方向上對(duì)全景視頻按照倍速大小進(jìn)行倍速播放。
可選的,如圖12所示,圖10示出的播放方向確定子模塊131包括但不限于:期望控制方向確定單元1311、夾角計(jì)算單元1312和播放方向確定單元1313。
期望控制方向確定單元1311,用于根據(jù)播放方向控制指令與視角方向,確定期望控制方向;
夾角計(jì)算單元1312,用于針對(duì)全景視頻在當(dāng)前圖像幀時(shí)的每一個(gè)候選播放方向,計(jì)算候選播放方向與期望控制方向之間的夾角;
播放方向確定單元1313,用于根據(jù)夾角從候選播放方向中確定在當(dāng)前圖像幀時(shí)全景視頻的播放方向。
可選的,如圖13所示,全景視頻包括多個(gè)全景視頻段,關(guān)聯(lián)圖像幀為各全景視頻段之間的交點(diǎn),通過關(guān)聯(lián)圖像幀對(duì)不同全景視頻段進(jìn)行切換播放,圖10對(duì)應(yīng)實(shí)施例中的場(chǎng)景展示裝置還包括但不限于:第一播放方向標(biāo)記子模塊210、關(guān)聯(lián)圖像幀查找子模塊220、時(shí)間間隔判斷子模塊230、第二播放方向確定子模塊240和依次連續(xù)播放子模塊250。
第一播放方向標(biāo)記子模塊210,用于將在當(dāng)前圖像幀時(shí)進(jìn)行全景視頻段播放的播放方向標(biāo)記為第一播放方向;
關(guān)聯(lián)圖像幀查找子模塊220,用于以當(dāng)前圖像幀為起點(diǎn),按照第一播放方向查找關(guān)聯(lián)圖像幀;
時(shí)間間隔判斷子模塊230,用于判斷當(dāng)前圖像幀與關(guān)聯(lián)圖像幀的時(shí)間間隔是否在預(yù)設(shè)時(shí)間范圍內(nèi);
第二播放方向確定子模塊240,用于在時(shí)間間隔在預(yù)設(shè)時(shí)間范圍內(nèi)時(shí),根據(jù)播放方向控制指令與視角方向,確定在關(guān)聯(lián)圖像幀時(shí)進(jìn)行全景視頻播放的全景視頻段,及在關(guān)聯(lián)圖像幀對(duì)全景視頻段進(jìn)行播放的播放方向,并將在關(guān)聯(lián)圖像幀時(shí)對(duì)全景視頻段進(jìn)行播放的播放方向標(biāo)記為第二播放方向;
依次連續(xù)播放子模塊250,用于以當(dāng)前圖像幀為播放起點(diǎn),依次按照第一播放方向與第二播放方向進(jìn)行全景視頻的連續(xù)播放。
圖14是根據(jù)一示例性實(shí)施例示出的一種終端100的框圖。參考圖14,終端100可以包括以下一個(gè)或者多個(gè)組件:處理組件101,存儲(chǔ)器102,電源組件103,多媒體組件104,音頻組件105,傳感器組件107以及通信組件108。其中,上述組件并不全是必須的,終端100可以根據(jù)自身功能需求增加其他組件或減少某些組件,本實(shí)施例不作限定。
處理組件101通??刂平K端100的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機(jī)操作以及記錄操作相關(guān)聯(lián)的操作等。處理組件101可以包括一個(gè)或多個(gè)處理器109來執(zhí)行指令,以完成上述操作的全部或部分步驟。此外,處理組件101可以包括一個(gè)或多個(gè)模塊,便于處理組件101和其他組件之間的交互。例如,處理組件101可以包括多媒體模塊,以方便多媒體組件104和處理組件101之間的交互。
存儲(chǔ)器102被配置為存儲(chǔ)各種類型的數(shù)據(jù)以支持在終端100的操作。這些數(shù)據(jù)的示例包括用于在終端100上操作的任何應(yīng)用程序或方法的指令。存儲(chǔ)器102可以由任何類型的易失性或非易失性存儲(chǔ)設(shè)備或者它們的組合實(shí)現(xiàn),如sram(staticrandomaccessmemory,靜態(tài)隨機(jī)存取存儲(chǔ)器),eeprom(electricallyerasableprogrammableread-onlymemory,電可擦除可編程只讀存儲(chǔ)器),eprom(erasableprogrammablereadonlymemory,可擦除可編程只讀存儲(chǔ)器),prom(programmableread-onlymemory,可編程只讀存儲(chǔ)器),rom(read-onlymemory,只讀存儲(chǔ)器),磁存儲(chǔ)器,快閃存儲(chǔ)器,磁盤或光盤。存儲(chǔ)器102中還存儲(chǔ)有一個(gè)或多個(gè)模塊,該一個(gè)或多個(gè)模塊被配置成由該一個(gè)或多個(gè)處理器109執(zhí)行,以完成圖1、圖2、圖3、圖4和圖6任一所示方法中的全部或者部分步驟。
電源組件103為終端100的各種組件提供電力。電源組件103可以包括電源管理系統(tǒng),一個(gè)或多個(gè)電源,及其他與為終端100生成、管理和分配電力相關(guān)聯(lián)的組件。
多媒體組件104包括在所述終端100和用戶之間的提供一個(gè)輸出接口的屏幕。在一些實(shí)施例中,屏幕可以包括lcd(liquidcrystaldisplay,液晶顯示器)和tp(touchpanel,觸摸面板)。如果屏幕包括觸摸面板,屏幕可以被實(shí)現(xiàn)為觸摸屏,以接收來自用戶的輸入信號(hào)。觸摸面板包括一個(gè)或多個(gè)觸摸傳感器以感測(cè)觸摸、滑動(dòng)和觸摸面板上的手勢(shì)。所述觸摸傳感器可以不僅感測(cè)觸摸或滑動(dòng)動(dòng)作的邊界,而且還檢測(cè)與所述觸摸或滑動(dòng)操作相關(guān)的持續(xù)時(shí)間和壓力。
音頻組件105被配置為輸出和/或輸入音頻信號(hào)。例如,音頻組件105包括一個(gè)麥克風(fēng),當(dāng)終端100處于操作模式,如呼叫模式、記錄模式和語音識(shí)別模式時(shí),麥克風(fēng)被配置為接收外部音頻信號(hào)。所接收的音頻信號(hào)可以被進(jìn)一步存儲(chǔ)在存儲(chǔ)器102或經(jīng)由通信組件108發(fā)送。在一些實(shí)施例中,音頻組件105還包括一個(gè)揚(yáng)聲器,用于輸出音頻信號(hào)。
傳感器組件107包括一個(gè)或多個(gè)傳感器,用于為終端100提供各個(gè)方面的狀態(tài)評(píng)估。例如,傳感器組件107可以檢測(cè)到終端100的打開/關(guān)閉狀態(tài),組件的相對(duì)定位,傳感器組件107還可以檢測(cè)終端100或終端100一個(gè)組件的坐標(biāo)改變以及終端100的溫度變化。在一些實(shí)施例中,該傳感器組件107還可以包括磁傳感器,壓力傳感器或溫度傳感器。
通信組件108被配置為便于終端100和其他設(shè)備之間有線或無線方式的通信。終端100可以接入基于通信標(biāo)準(zhǔn)的無線網(wǎng)絡(luò),如wifi(wireless-fidelity,無線網(wǎng)絡(luò)),2g或3g,或它們的組合。在一個(gè)示例性實(shí)施例中,通信組件108經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號(hào)或廣播相關(guān)信息。在一個(gè)示例性實(shí)施例中,所述通信組件108還包括nfc(nearfieldcommunication,近場(chǎng)通信)模塊,以促進(jìn)短程通信。例如,在nfc模塊可基于rfid(radiofrequencyidentification,射頻識(shí)別)技術(shù),irda(infrareddataassociation,紅外數(shù)據(jù)協(xié)會(huì))技術(shù),uwb(ultra-wideband,超寬帶)技術(shù),bt(bluetooth,藍(lán)牙)技術(shù)和其他技術(shù)來實(shí)現(xiàn)。
在示例性實(shí)施例中,終端100可以被一個(gè)或多個(gè)asic(applicationspecificintegratedcircuit,應(yīng)用專用集成電路)、dsp(digitalsignalprocessing,數(shù)字信號(hào)處理器)、pld(programmablelogicdevice,可編程邏輯器件)、fpga(field-programmablegatearray,現(xiàn)場(chǎng)可編程門陣列)、控制器、微控制器、微處理器或其他電子元件實(shí)現(xiàn),用于執(zhí)行上述方法。
該實(shí)施例中的終端的處理器執(zhí)行操作的具體方式已經(jīng)在有關(guān)該場(chǎng)景展示方法的實(shí)施例中執(zhí)行了詳細(xì)描述,此處將不再做詳細(xì)闡述說明。
可選的,本發(fā)明還提供一種智能終端,執(zhí)行圖1、圖2、圖3、圖4和圖6任一所示的場(chǎng)景展示方法的全部或者部分步驟。所述裝置包括:
處理器;
用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;
其中,所述處理器被配置為執(zhí)行:
獲取全景視頻中的當(dāng)前圖像幀及在當(dāng)前圖像幀時(shí)的視角方向;
將接收的移動(dòng)控制指令轉(zhuǎn)換為對(duì)所述全景視頻的播放控制指令;
根據(jù)所述播放控制指令與所述視角方向,以所述當(dāng)前圖像幀為播放起點(diǎn)控制所述全景視頻的連續(xù)播放,對(duì)與所述全景視頻關(guān)聯(lián)的場(chǎng)景進(jìn)行展示。
該實(shí)施例中的裝置的處理器執(zhí)行操作的具體方式已經(jīng)在有關(guān)該場(chǎng)景展示方法的實(shí)施例中執(zhí)行了詳細(xì)描述,此處將不做詳細(xì)闡述說明。
在示例性實(shí)施例中,還提供了一種存儲(chǔ)介質(zhì),該存儲(chǔ)介質(zhì)為計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如可以為包括指令的臨時(shí)性和非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。該存儲(chǔ)介質(zhì)例如包括指令的存儲(chǔ)器102,上述指令可由終端100的處理器109執(zhí)行以完成上述場(chǎng)景展示方法。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),本領(lǐng)域技術(shù)人員可以在不脫離其范圍執(zhí)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。