本發(fā)明涉及視頻分發(fā)技術(shù)領(lǐng)域,尤其涉及一種基于視覺特性的全景視頻分發(fā)方法和系統(tǒng)。
背景技術(shù):
全景視頻在提供全方位的視覺信息的同時,能夠提供動態(tài)的實時的視頻信息,使得人們可以看到環(huán)繞在攝像機周圍的整個動態(tài)景象。全景圖一般都是大分辨率的圖像,它的生成需要大量的計算工作。而全景視頻相比全景圖,比全景圖增加了一個新的時間維度。因此,計算量和數(shù)據(jù)量都將會是數(shù)十倍于全景圖,這對硬件系統(tǒng)的處理能力和軟件系統(tǒng)的工作效率都是極大的挑戰(zhàn)。而當(dāng)全景視頻的碼流進行分發(fā)傳輸時,對網(wǎng)絡(luò)的帶寬將形成極大地壓力,對帶寬極其有限的移動網(wǎng)絡(luò),更是極大地挑戰(zhàn)。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例的目的在于提出一種基于視覺特性的全景視頻分發(fā)方法,旨在解決現(xiàn)有技術(shù)全景視頻的碼流進行分發(fā)傳輸時播放不流暢的問題。
本發(fā)明實施例是這樣實現(xiàn)的,一種基于視覺特性的全景視頻分發(fā)方法,所述方法包括以下步驟:
步驟A:發(fā)送const秒全景視頻多路碼流streamn,n=1,2,...,N;
步驟B:在const秒時間窗內(nèi),發(fā)送該時間窗內(nèi)的帶寬參數(shù)和視覺角度信息;
步驟C:判斷如果全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流存在,則進入步驟D;否則,結(jié)束全景視頻多路碼流的分發(fā);
步驟D:根據(jù)帶寬參數(shù)和視覺角度信息,確定全景視頻多路碼流的發(fā)送標(biāo)志;
步驟E:令nt=nt+1,確定const,的值,然后,重新進入步驟B;
其中,const表示時間窗時長參數(shù);streamn表示全景視頻的第n拼接碼流,N表示拼接碼流的個數(shù);nt表示時間窗標(biāo)號;分別表示第nt個時間窗的時間上限和時間下限。
本發(fā)明實施例的另一目的在于提出一種基于視覺特性的全景視頻分發(fā)系統(tǒng),所述系統(tǒng)包括:
多路碼流發(fā)送模塊,用于發(fā)送const秒全景視頻多路碼流streamn,n=1,2,...,N;
其中,const表示時間窗時長參數(shù);t0表示發(fā)送碼流初始緩沖時長;tc表示發(fā)送碼流緩沖時長;nt表示時間窗標(biāo)號,初始值為1;streamn表示全景視頻的第n拼接碼流,N表示拼接碼流的個數(shù);
帶寬參數(shù)和視覺角度信息發(fā)送模塊,用于在const秒時間窗內(nèi),發(fā)送該時間窗內(nèi)的帶寬參數(shù)和視覺角度信息;
其中,wbitnt表示第nt個時間窗帶寬參數(shù);mean(變量|條件)表示對求滿足條件的變量求均值;bitt表示第t秒的帶寬;分別表示第nt個時間窗的時間上限和時間下限,
所述視覺角度信息包括其中,表示第nt個時間窗的視覺角度上限和下限,min(變量|條件)、max(變量|條件)分別表示對求滿足條件的變量求最小值、最大值;
第一判斷處理模塊,用于判斷如果全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流存在,則進入多路碼流發(fā)送標(biāo)志確定模塊;否則,結(jié)束全景視頻多路碼流的分發(fā);
多路碼流發(fā)送標(biāo)志確定模塊,用于根據(jù)帶寬參數(shù)和視覺角度信息,確定全景視頻多路碼流的發(fā)送標(biāo)志;
設(shè)置模塊,用于令nt=nt+1,確定const,的值,然后,重新進入帶寬參數(shù)和視覺角度信息發(fā)送模塊。
本發(fā)明的有益效果
本發(fā)明方法提出一種基于視覺特性的全景視頻分發(fā)方法和系統(tǒng)。本發(fā)明方法利用人眼視覺特性及網(wǎng)絡(luò)擁塞狀況,對全景視頻拼接的多路碼流進行自適應(yīng)分發(fā)。從而使得一方面不影響觀眾的觀看效果,同時提升全景視頻播放的流暢度。
附圖說明
圖1是本發(fā)明優(yōu)選實施例一種基于視覺特性的全景視頻分發(fā)方法流程圖;
圖2是本發(fā)明優(yōu)選實施例一種基于視覺特性的全景視頻分發(fā)系統(tǒng)結(jié)構(gòu)圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一步詳細說明,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。應(yīng)當(dāng)理解,此處所描寫的具體實施例,僅僅用于解釋本發(fā)明,并不用以限制本發(fā)明。
本發(fā)明實施例方法利用人眼視覺特性及網(wǎng)絡(luò)擁塞狀況,對全景視頻拼接的多路碼流進行自適應(yīng)分發(fā)。從而使得一方面不影響觀眾的觀看效果,同時提升全景視頻播放的流暢度。
實施例一
圖1是本發(fā)明優(yōu)選實施例一種基于視覺特性的全景視頻分發(fā)方法流程圖,所述方法包括:
Step1:發(fā)送const秒全景視頻多路碼流streamn,n=1,2,...,N。
其中,const表示時間窗時長參數(shù);t0表示發(fā)送碼流初始緩沖時長,一般可取3-6秒;tc表示發(fā)送碼流緩沖時長;nt表示時間窗標(biāo)號,初始值為1;streamn表示全景視頻的第n拼接碼流,N表示拼接碼流的個數(shù)。
Step2:在const秒時間窗內(nèi),發(fā)送該時間窗內(nèi)的帶寬參數(shù)和視覺角度信息。
其中,wbitnt表示第nt個時間窗帶寬參數(shù);mean(變量|條件)表示對求滿足條件的變量求均值;bitt表示第t秒的帶寬;分別表示第nt個時間窗的時間上限和時間下限,
所述視覺角度信息包括其中,表示第nt個時間窗的視覺角度上限和下限,min(變量|條件)、max(變量|條件)分別表示對求滿足條件的變量求最小值、最大值。
Step3:判斷如果全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流存在,則進入Step4;否則,結(jié)束全景視頻多路碼流的分發(fā)。
Step4:根據(jù)帶寬參數(shù)和視覺角度信息,確定全景視頻多路碼流的發(fā)送標(biāo)志。
即判斷如果Thres2<wbitnt<Thres1,則進入網(wǎng)絡(luò)中度擁塞全景視頻多路碼流的分發(fā)模式;否則,如果wbitnt>Thres1,則進入網(wǎng)絡(luò)重度擁塞全景視頻多路碼流的分發(fā)模式;否則,進入網(wǎng)絡(luò)非擁塞全景視頻多路碼流的分發(fā)模式。
其中,Thres1、Thres2表示網(wǎng)絡(luò)擁塞第一門限值,第二門限值。
所述網(wǎng)絡(luò)中度擁塞全景視頻多路碼流的分發(fā)模式具體為:
如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的碼流;否則,則暫緩streamn的第nt+1時間窗內(nèi)的碼流的分發(fā),在網(wǎng)絡(luò)擁塞度下降的時候,再分發(fā)該streamn的第nt+1時間窗內(nèi)的碼流。然后進入Step5。
所述網(wǎng)絡(luò)擁塞度可用業(yè)內(nèi)公開的任何一種方法,而擁塞度下降的幅度本可根據(jù)需要自行設(shè)定。
所述網(wǎng)絡(luò)重度擁塞全景視頻多路碼流的分發(fā)模式具體為:
判斷如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的碼流;否則,如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的低分辨率碼流;否則,進入則暫緩streamn的第nt+1時間窗內(nèi)的碼流的分發(fā),在網(wǎng)絡(luò)擁塞度下降的時候,再分發(fā)該streamn的第nt+1時間窗內(nèi)的碼流;然后進入Step5。
其中,θcon表示人眼敏感角度,一般為人眼視覺角度的1/5;低分辨率碼流指在SVC等編碼標(biāo)準(zhǔn)下,分層碼流中對應(yīng)的低分辨率碼流。
所述網(wǎng)絡(luò)非擁塞全景視頻多路碼流的分發(fā)模式具體為:
發(fā)送全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流,n=1,2,...,N,然后進入Step5。
Step5:令nt=nt+1,確定const,的值,然后,重新進入Step2。
確定const值的方法Step1中已描述,確定的值的方法Step2中已描述,在此不再贅述。
實施例二
圖2是本發(fā)明優(yōu)選實施例一種基于視覺特性的全景視頻分發(fā)系統(tǒng)結(jié)構(gòu)圖,所述系統(tǒng)包括:
多路碼流發(fā)送模塊,用于發(fā)送const秒全景視頻多路碼流streamn,n=1,2,...,N。
其中,const表示時間窗時長參數(shù);t0表示發(fā)送碼流初始緩沖時長,一般可取3-6秒;tc表示發(fā)送碼流緩沖時長;nt表示時間窗標(biāo)號,初始值為1;streamn表示全景視頻的第n拼接碼流,N表示拼接碼流的個數(shù)。
帶寬參數(shù)和視覺角度信息發(fā)送模塊,用于在const秒時間窗內(nèi),發(fā)送該時間窗內(nèi)的帶寬參數(shù)和視覺角度信息。
其中,wbitnt表示第nt個時間窗帶寬參數(shù);mean(變量|條件)表示對求滿足條件的變量求均值;bitt表示第t秒的帶寬;分別表示第nt個時間窗的時間上限和時間下限,
所述視覺角度信息包括其中,表示第nt個時間窗的視覺角度上限和下限,min(變量|條件)、max(變量|條件)分別表示對求滿足條件的變量求最小值、最大值。
第一判斷處理模塊,用于如果全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流存在,則進入多路碼流發(fā)送標(biāo)志確定模塊;否則,結(jié)束全景視頻多路碼流的分發(fā)。
多路碼流發(fā)送標(biāo)志確定模塊,用于根據(jù)帶寬參數(shù)和視覺角度信息,確定全景視頻多路碼流的發(fā)送標(biāo)志;
設(shè)置模塊,用于令nt=nt+1,確定const,的值,然后,重新進入帶寬參數(shù)和視覺角度信息發(fā)送模塊。
進一步地,所述多路碼流發(fā)送標(biāo)志確定模塊中,根據(jù)帶寬參數(shù)和視覺角度信息,確定全景視頻多路碼流的發(fā)送標(biāo)志具體為:
如果Thres2<wbitnt<Thres1,則進入網(wǎng)絡(luò)中度擁塞全景視頻多路碼流的分發(fā)模式;否則,如果wbitnt>Thres1,則進入網(wǎng)絡(luò)重度擁塞全景視頻多路碼流的分發(fā)模式;否則,進入網(wǎng)絡(luò)非擁塞全景視頻多路碼流的分發(fā)模式。
其中,Thres1、Thres2表示網(wǎng)絡(luò)擁塞第一門限值,第二門限值。
所述網(wǎng)絡(luò)中度擁塞全景視頻多路碼流的分發(fā)模式具體為:
如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的碼流;否則,則暫緩streamn的第nt+1時間窗內(nèi)的碼流的分發(fā),在網(wǎng)絡(luò)擁塞度下降的時候,再分發(fā)該streamn的第nt+1時間窗內(nèi)的碼流。然后進入設(shè)置模塊。
所述網(wǎng)絡(luò)擁塞度可用業(yè)內(nèi)公開的任何一種方法,而擁塞度下降的幅度本可根據(jù)需要自行設(shè)定。
所述網(wǎng)絡(luò)重度擁塞全景視頻多路碼流的分發(fā)模式具體為:
判斷如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的碼流;否則,如果streamn的攝像機采集角度在范圍內(nèi),則發(fā)送streamn的第nt+1時間窗內(nèi)的低分辨率碼流;否則,進入則暫緩streamn的第nt+1時間窗內(nèi)的碼流的分發(fā),在網(wǎng)絡(luò)擁塞度下降的時候,再分發(fā)該streamn的第nt+1時間窗內(nèi)的碼流;然后進入設(shè)置模塊。
其中,θcon表示人眼敏感角度,一般為人眼視覺角度的1/5;低分辨率碼流指在SVC等編碼標(biāo)準(zhǔn)下,分層碼流中對應(yīng)的低分辨率碼流。
所述網(wǎng)絡(luò)非擁塞全景視頻多路碼流的分發(fā)模式具體為:
發(fā)送全景視頻多路碼流streamn第nt+1時間窗內(nèi)的碼流,n=1,2,...,N,然后進入設(shè)置模塊。
本領(lǐng)域的普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序指令相關(guān)硬件來完成的,所述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,所述的存儲介質(zhì)可以為ROM、RAM、磁盤、光盤等。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。