本發(fā)明涉及視頻編輯領(lǐng)域,特別是一種基于GPU的VR視頻編輯的方法。
背景技術(shù):
虛擬現(xiàn)實(shí)技術(shù)是仿真技術(shù)的一個(gè)重要方向是仿真技術(shù)與計(jì)算機(jī)圖形學(xué)人機(jī)接口技術(shù)多媒體技術(shù)傳感技術(shù)網(wǎng)絡(luò)技術(shù)等多種技術(shù)的集合是一門(mén)富有挑戰(zhàn)性的交叉技術(shù)前沿學(xué)科和研究領(lǐng)域。虛擬現(xiàn)實(shí)技術(shù)(VR)主要包括模擬環(huán)境、感知、自然技能和傳感設(shè)備等方面。模擬環(huán)境是由計(jì)算機(jī)生成的、實(shí)時(shí)動(dòng)態(tài)的三維立體逼真圖像。感知是指理想的VR應(yīng)該具有一切人所具有的感知。除計(jì)算機(jī)圖形技術(shù)所生成的視覺(jué)感知外,還有聽(tīng)覺(jué)、觸覺(jué)、力覺(jué)、運(yùn)動(dòng)等感知,甚至還包括嗅覺(jué)和味覺(jué)等,也稱(chēng)為多感知。自然技能是指人的頭部轉(zhuǎn)動(dòng),眼睛、手勢(shì)、或其他人體行為動(dòng)作,由計(jì)算機(jī)來(lái)處理與參與者的動(dòng)作相適應(yīng)的數(shù)據(jù),并對(duì)用戶(hù)的輸入作出實(shí)時(shí)響應(yīng),并分別反饋到用戶(hù)的五官。傳感設(shè)備是指三維交互設(shè)備。
近幾年,在谷歌、Facebook、索尼、三星等大拿的推動(dòng)下,VR熱潮席卷全球,關(guān)于VR的技術(shù)討論層出不窮,VR視頻也逐漸出現(xiàn)在大眾的視線(xiàn)中?,F(xiàn)有的VR視頻制作過(guò)程主要是:采集-編輯-輸出,這種方式的缺點(diǎn)在于必須完整地編碼輸出后才能檢驗(yàn)制作效果。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種基于GPU的VR視頻編輯的方法,增加預(yù)覽步驟,可以在編輯過(guò)程中隨時(shí)預(yù)覽編輯效果。
本發(fā)明的目的是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)的:一種基于GPU的VR視頻編輯的方法,它包括圖像采集、編輯預(yù)覽和結(jié)果輸出;
所述的圖像采集包括如下步驟:
S11:拍攝:利用全景拍攝設(shè)備拍攝圖像;
S12:拼接:將多個(gè)鏡頭拍攝的多個(gè)畫(huà)面拼接成一個(gè)圖像;
所述的編輯預(yù)覽包括如下步驟:
S21:解碼:對(duì)拍攝文件進(jìn)行解碼操作;
S22: 上傳:將解碼后的文件上傳到顯存中,由GPU進(jìn)行后續(xù)處理;
S23:編輯:對(duì)視頻進(jìn)行編輯;
S24:預(yù)覽:將長(zhǎng)圖像轉(zhuǎn)化成立體圖像進(jìn)行預(yù)覽;
S241.將長(zhǎng)圖像至少分成6塊區(qū)域;
S242.對(duì)不同的區(qū)域進(jìn)行直線(xiàn)投影;
所述的結(jié)果輸出將編輯后的結(jié)果進(jìn)行編碼寫(xiě)成文件輸出。
所述的直線(xiàn)投影包括如下子步驟:
A. 建立球模型:建立一個(gè)球形的模型來(lái)模擬視覺(jué)轉(zhuǎn)換下的方位變換,以球心為視角觀(guān)察點(diǎn);
B. 將長(zhǎng)圖像貼在球模型上:按從上到下的順序,將要預(yù)覽的視頻圖像的每一行像素依次覆蓋在球模型上;
C.建立觀(guān)察矩陣:根據(jù)觀(guān)察視角建立以觀(guān)察點(diǎn)為頂點(diǎn)的六棱錐,調(diào)節(jié)視角的角度:當(dāng)放大視野時(shí),增大六棱錐的夾角,當(dāng)縮小視野時(shí),減小六棱錐的夾角;
D. 建立視界矩陣:根據(jù)視角的變化改變六棱錐的位置和角度,當(dāng)進(jìn)行上下移動(dòng)時(shí),六棱錐進(jìn)行相應(yīng)的俯仰角度的變化,當(dāng)進(jìn)行左右移動(dòng)時(shí),六棱錐進(jìn)行相應(yīng)的左右旋轉(zhuǎn)角度的變化;
E.建立透視投影矩陣:將貼在球模型上的像素點(diǎn)依次投影在六棱錐六邊形所在的平面上。
所述的步驟S21中解碼后的文件為.mp4、.mxf或.mov文件。
所述的全景拍攝設(shè)備通常在多個(gè)位置安裝多個(gè)攝像頭同時(shí)進(jìn)行拍攝。
所述的步驟S23中對(duì)視頻進(jìn)行的編輯包括剪接、添加字幕和添加特效。
本發(fā)明的有益效果是:本發(fā)明提供了一種基于GPU的VR視頻編輯的方法,增加預(yù)覽步驟,可以在編輯過(guò)程中隨時(shí)預(yù)覽編輯效果,以便在編輯過(guò)程中及時(shí)修正不足之處。
附圖說(shuō)明
圖1為視頻編輯方法流程圖;
圖2為視頻預(yù)覽變化對(duì)應(yīng)示意圖。
具體實(shí)施方式
下面結(jié)合附圖進(jìn)一步詳細(xì)描述本發(fā)明的技術(shù)方案,但本發(fā)明的保護(hù)范圍不局限于以下所述。
如圖1所示,一種基于GPU的VR視頻編輯的方法,它包括圖像采集、編輯預(yù)覽和結(jié)果輸出;
所述的圖像采集包括如下步驟:
S11:拍攝:利用全景拍攝設(shè)備拍攝圖像,全景拍攝設(shè)備通常在多個(gè)方位安置了多個(gè)攝像頭,常見(jiàn)的全景拍攝設(shè)備如:Google Jump、GoPro、NOKIA OZO、NextVR等;
S12:拼接:將多個(gè)鏡頭拍攝的多個(gè)畫(huà)面拼接成一個(gè)圖像,這個(gè)圖像的長(zhǎng)度比寬度長(zhǎng)非常多,拼接算法與拍攝設(shè)備配套;
所述的編輯預(yù)覽包括如下步驟:
S21:解碼:對(duì)拍攝文件進(jìn)行解碼操作,解碼的結(jié)果一般是.mp4、.mxf、.mov文件,存放在內(nèi)存中;
S22: 上傳:將解碼后的文件上傳到顯存中,由GPU進(jìn)行后續(xù)處理;
S23:編輯:對(duì)視頻進(jìn)行編輯,和普通視頻的編輯方法一樣,可以剪接、添加字幕、特效等;
S24:預(yù)覽:將長(zhǎng)圖像轉(zhuǎn)化成立體圖像進(jìn)行預(yù)覽;
S241.將長(zhǎng)圖像至少分成6塊區(qū)域;
S242.對(duì)不同的區(qū)域進(jìn)行直線(xiàn)投影;
所述的結(jié)果輸出將編輯后的結(jié)果進(jìn)行編碼寫(xiě)成文件輸出,輸出結(jié)果的格式和采集結(jié)果的格式相同,都是長(zhǎng)度比寬度長(zhǎng)很多的長(zhǎng)圖像。
如圖2所示,所述的直線(xiàn)投影包括如下子步驟:
A. 建立球模型:建立一個(gè)球形的模型來(lái)模擬視覺(jué)轉(zhuǎn)換下的方位變換,以球心為視角觀(guān)察點(diǎn);
B. 將長(zhǎng)圖像貼在球模型上:按從上到下的順序,將要預(yù)覽的視頻圖像的每一行像素依次覆蓋在球模型上;
C.建立觀(guān)察矩陣:根據(jù)觀(guān)察視角建立以觀(guān)察點(diǎn)為頂點(diǎn)的六棱錐,調(diào)節(jié)視角的角度:當(dāng)放大視野時(shí)(即縮小畫(huà)面以容納更多的內(nèi)容,物體變小,視野變大),增大六棱錐的夾角,當(dāng)縮小視野時(shí)(即對(duì)某個(gè)場(chǎng)景放大觀(guān)察,物體變大,視野變小),減小六棱錐的夾角;
D. 建立視界矩陣:根據(jù)視角的變化改變六棱錐的位置和角度,當(dāng)進(jìn)行上下移動(dòng)時(shí),六棱錐進(jìn)行相應(yīng)的俯仰角度的變化,當(dāng)進(jìn)行左右移動(dòng)時(shí),六棱錐進(jìn)行相應(yīng)的左右旋轉(zhuǎn)角度的變化;
E.建立透視投影矩陣:將貼在球模型上的像素點(diǎn)依次投影在六棱錐六邊形所在的平面上。
本申請(qǐng)的VR視頻編輯方法增加預(yù)覽步驟,可以在編輯過(guò)程中隨時(shí)預(yù)覽編輯效果,以便在編輯過(guò)程中及時(shí)修正不足之處。