本發明涉及視頻播放的技術領域,更具體地,涉及一種自動識別立方體全景視頻的方法及系統。
背景技術:
全景視頻,即720度或者360度全景視頻,它是在720度或者360度全景的技術之上發展延伸而來,將靜態的全景圖片轉化為動態的視頻圖像,全景視頻可以在拍攝角度上下左右360度范圍內任意觀看動態視頻,讓用戶有一種身臨其境的感覺。在制作全景視頻時使用一組攝像機在拍攝點周圍同時拍攝360度(或720度)的畫面,并經過后期的圖像拼接后使之能夠在任意時刻無失真地展現拍攝點周圍畫面的視頻。
目前還沒有保存全景視頻的特有格式,現有的全景視頻還是采用與傳統視頻相同的保存格式:全景播放器播放的是經過拼接處理的以拍攝點為中心的投影面上的畫面,目前對這種投影不方便存儲,而是常常將投影的畫面變換存儲為矩形圖像,在全景播放器播放該全景視頻時將存儲的矩形圖像重新映射貼合到全景視頻播放模型上播放。因此,現有技術中無法自動識別出待播放的視頻是平面視頻還是全景視頻,而全景視頻與平面視頻的播放方式是完全不同的,如果以全景視頻的播放形式來播放平面視頻或者以平面視頻的播放形式來播放全景視頻都會造成視頻畫面的扭曲。基于上述原因,現有技術中用戶只能在發現視頻播放方式不相符的情況下,手動切換視頻播放方式加以調節,對用戶來講很不方便,極大地影響了用戶對產品的使用體驗。另一方面,全景視頻播放模型也有球體模型和立方體模型之分,如果將基于立方體模型的全景視頻以球體模型的方式進行貼圖播放,顯然是不合理的。
因此,提供一種在播放器中自動識別立方體全景視頻的方法是本領域亟待解決的問題。
技術實現要素:
有鑒于此,本發明提供了一種自動識別立方體全景視頻的方法及系統,解決了現有技術中不能自動識別立方體全景視頻的技術問題。
為了解決上述技術問題,本發明提出一種自動識別立方體全景視頻的方法,包括:
在播放器中,設置用于判定立方體全景視頻的間隙像素對的方差閾值;
從數據庫中獲取視頻的圖像幀并計算所述圖像幀的寬高比值;
在所述圖像幀的寬高比值為3:2時,按照所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置獲取間隙像素對的像素,并計算所述間隙像素對的像素方差;
在所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置的像素方差,達到或超過所述間隙像素對的方差閾值的數量達到或超過兩個時,判定所述視頻為立方體全景視頻。
進一步地,其中,在所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置的像素方差,達到或超過所述間隙像素對的方差閾值的數量達到或超過兩個時,判定所述視頻為立方體全景視頻,進一步為:
獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,并計算所述第一相鄰像素對及第二相鄰像素對的像素方差;
計算所述間隙像素對的像素方差,與所述第一相鄰像素對與第二相鄰像素對的像素方差之和的比值,得到立方體全景視頻判定比值;
在所述立方體全景視頻判定比值達到或超過預先設定的立方體全景視頻判定比值閾值時,判定所述視頻為立方體全景視頻。
進一步地,其中,獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,進一步為:
按像素行或像素列,與所述間隙像素對中間隙像素間隔設定數量像素的像素點為相鄰像素;獲取所述間隙像素與相鄰像素的像素,得到與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素。
進一步地,其中,所述設定數量像素為十五個像素。
進一步地,其中,所述立方體全景視頻判定比值閾值,為大于或等于80。
另一方面,本發明還提供一種自動識別立方體全景視頻的系統,包括:設置模塊、視頻圖像幀獲取模塊、計算模塊及立方體全景視頻判定模塊;其中,
所述設置模塊,用于在播放器中,設置用于判定立方體全景視頻的間隙像素對的方差閾值;
所述視頻圖像幀獲取模塊,用于從數據庫中獲取視頻的圖像幀并計算所述圖像幀的寬高比值;
所述計算模塊,在所述圖像幀的寬高比值為3:2時,按照所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置獲取間隙像素對的像素,并計算所述間隙像素對的像素方差;
所述立方體全景視頻判定模塊,用于在所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置的像素方差,達到或超過所述間隙像素對的方差閾值的數量達到或超過兩個時,判定所述視頻為立方體全景視頻。
進一步地,其中,所述立方體全景視頻判定模塊,用于:
獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,并計算所述第一相鄰像素對及第二相鄰像素對的像素方差;
計算所述間隙像素對的像素方差,與所述第一相鄰像素對與第二相鄰像素對的像素方差之和的比值,得到立方體全景視頻判定比值;
在所述立方體全景視頻判定比值達到或超過預先設定的立方體全景視頻判定比值閾值時,判定所述視頻為立方體全景視頻。
進一步地,其中,所述立方體全景視頻判定模塊,進一步用于:
按像素行或像素列,與所述間隙像素對中間隙像素間隔設定數量像素的像素點為相鄰像素;獲取所述間隙像素與相鄰像素的像素,得到與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素。
進一步地,其中,所述設定數量像素為十五個像素。
進一步地,其中,所述立方體全景視頻判定比值閾值,為大于或等于80。
與現有技術相比,本發明的自動識別立方體全景視頻的方法及系統,實現了如下的有益效果:
(1)本發明所述的自動識別立方體全景視頻的方法及系統,根據存儲的立方體模型全景視頻畫面的特性,判斷待播放的視頻是否為立方體模型的全景視頻,并對判斷到的全景視頻自動進行立方體模型貼圖播放,實現了全景視頻的自動識別,提升了用戶使用體驗。
(2)本發明所述的自動識別立方體全景視頻的方法及系統,還設置了立方體模型全景視頻及平面視頻的判斷機制,并針對每種視頻形式自動選擇對應的播放方式,簡化了用戶的操作,同時能夠準確地進行各種視頻的播放。
當然,實施本發明的任一產品必不特定需要同時達到以上所述的所有技術效果。
通過以下參照附圖對本發明的示例性實施例的詳細描述,本發明的其它特征及其優點將會變得清楚。
附圖說明
被結合在說明書中并構成說明書的一部分的附圖示出了本發明的實施例,并且連同其說明一起用于解釋本發明的原理。
圖1為本發明實施例1中所述自動識別立方體全景視頻的方法的流程示意圖;
圖2為本發明實施例2中所述自動識別立方體全景視頻的方法的流程示意圖;
圖3為本發明實施例3中所述自動識別立方體全景視頻的系統的結構示意圖。
具體實施方式
現在將參照附圖來詳細描述本發明的各種示例性實施例。應注意到:除非另外具體說明,否則在這些實施例中闡述的部件和步驟的相對布置、數字表達式和數值不限制本發明的范圍。
以下對至少一個示例性實施例的描述實際上僅僅是說明性的,決不作為對本發明及其應用或使用的任何限制。
對于相關領域普通技術人員已知的技術、方法和設備可能不作詳細討論,但在適當情況下,所述技術、方法和設備應當被視為說明書的一部分。
在這里示出和討論的所有例子中,任何具體值應被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實施例的其它例子可以具有不同的值。
應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步討論。
實施例1
如圖1所示,為本實施例所述自動識別立方體全景視頻的方法的流程示意圖,本實施例所述方法解決了現有技術中不能自動識別立方體全景視頻的技術問題。本實施例所述基于立方體模型播放全景視頻的方法包括以下步驟:
步驟101、在播放器中,設置用于判定立方體全景視頻的間隙像素對的方差閾值。
立方體全景視頻,是指將拿到的全景視頻圖像貼合到立方體模型的全景視頻映射面上,再根據用戶的視角位置選取對應的映射圖像在播放視窗中展現播放的技術。但是,現有技術中還沒有自動識別并播放立方體全景視頻的技術,都需要用戶手動選擇視頻播放模式,操作繁雜,不利于用戶使用體驗。
現有技術中,立方體全景視頻是以立方體六個貼合面上畫面置于同一圖像幀的形式進行存儲,并且將六個面上的圖像幀,按2層、每層3個畫面的矩形圖像幀的形式進行存儲。而立方體全景視頻的特點是相鄰貼合面之間連接的像素行或像素列是不連續的,反應在數字上就是相鄰貼合面之間連接的像素行或像素列的像素方差較大。如果該視頻是立方體全景視頻,按圖像幀以寬三分之一及寬三分之二位置為列間隙、以高二分之一位置為行間隙拆分得到的六個視頻畫面剛好就是立方體全景視頻六個貼合全景視頻映射面的視頻畫面。
步驟102、從數據庫中獲取視頻的圖像幀并計算所述圖像幀的寬高比值。
用戶發送視頻播放請求時,在該視頻播放請求中攜帶有請求播放視頻的標識,基于視頻的標識可以從視頻數據庫中獲取對應的視頻數據,解析視頻數據,便可從中分析出視頻圖像是否是全景視頻圖像,因為全景視頻與普通的平面視頻存儲格式相同,不能使用常規的手段判斷是否為全景視頻。而基于立方體全景視頻的存儲特點(圖像幀按2層、每層3個畫面的矩形圖像幀),立方體全景視頻的寬高比值必須是3:2。
步驟103、在所述圖像幀的寬高比值為3:2時,按照所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置獲取間隙像素對的像素,并計算所述間隙像素對的像素方差。
間隙像素對,是指立方體全景視頻圖像中相鄰圖像幀連接處的一行/列像素對,在立方體模型全景視頻中,由于六個全景視頻映射面是拼合在一起的,各個映射面上的視頻圖像都是獨立的,因此,立方體上相鄰視頻圖像的間隙像素是具有較大差異的,而對于平面視頻或球體模型的全景視頻,基于視頻播放的連續性,在間隙像素對上具有較大的聯系,故可以基于視頻圖像的間隙像素對判斷視頻是否為基于立方體模型的全景視頻。
步驟104、在所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置的像素方差,達到或超過所述間隙像素對的方差閾值的數量達到或超過兩個時,判定所述視頻為立方體全景視頻。
步驟105、創建立方體模型,并將所述視頻圖像貼合到所述立方體模型的全景映射面上進行播放。
基于立方體模型的全景視頻播放,是將預先處理好的立方體視頻圖像貼合到立方體模型的內側面(基于視頻圖像的前、后、左、右、上及下的位置),使得用戶觀看時得到置身立方體全景視頻內部的沉浸感。因此,在立方體貼圖時也需要確定好視頻圖像的貼片位置,避免出現視頻圖像與實際拍攝效果不一致的問題。
本實施例所述的自動識別立方體全景視頻的方法,根據存儲的立方體模型全景視頻畫面的特性,判斷待播放的視頻是否為立方體模型的全景視頻,并對判斷到的全景視頻自動進行立方體模型貼圖播放,實現了全景視頻的自動識別及自動播放,提升了用戶使用體驗。
實施例2
如圖2所示,為本實施例所述自動識別立方體全景視頻的方法的流程示意圖,本實施例在實施例1的基礎上,描述了判斷并播放立方體全景視頻、球體全景視頻及平面視頻的具體內容。本實施例所述自動識別立方體全景視頻的方法包括以下步驟:
步驟201、在播放器中,設置用于判定立方體全景視頻的間隙像素對的方差閾值。
優選地,所述方差閾值,大于或等于90。
步驟202、從數據庫中獲取視頻的圖像幀并計算所述圖像幀的寬高比值。
步驟203、在所述圖像幀的寬高比值為3:2時,按照所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置獲取間隙像素對的像素,并計算所述間隙像素對的像素方差。
步驟204、獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,并計算所述第一相鄰像素對及第二相鄰像素對的像素方差。
優選地,獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,進一步為:
按像素行或像素列,與所述間隙像素對中間隙像素間隔設定數量像素的像素點為相鄰像素;獲取所述間隙像素與相鄰像素的像素,得到與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素。
優選地,所述設定數量像素為十五個像素。所述立方體全景視頻判定比值閾值,為大于或等于80。更優選地,所述立方體全景視頻判定比值閾值,為大于或等于90。
現有技術中,在視頻編碼存儲時,是以16像素塊*16像素塊的形式進行編碼的,因此,在本實施例中將與間隙像素對中兩行/列像素間隔十五個像素塊的像素行/列設置為相鄰像素行/列,進一步地提升了進行立方體全景視頻識別的準確性。
步驟205、計算所述間隙像素對的像素方差,與所述第一相鄰像素對與第二相鄰像素對的像素方差之和的比值,得到立方體全景視頻判定比值。
步驟206、在所述立方體全景視頻判定比值達到或超過預先設定的立方體全景視頻判定比值閾值時,判定所述視頻為立方體全景視頻。
在等效矩形映射的立方體全景圖像上,相鄰像素對,即自間隙像素對中兩行/列像素分別向兩邊數間隔預定數量的行/列像素為相鄰像素,相鄰像素與間隙像素對中對應的間隙像素組成相鄰像素對,如果相鄰像素對是連續的,說明為同一視頻畫面,再加上間隙像素對之間差異較大,就說明間隙兩側為不同的視頻畫面,從數據計算上進一步確認了為立方體全景視頻,提升了自動識別判定立方體全景視頻的準確性。
步驟207、創建立方體模型,并將所述視頻圖像貼合到所述立方體模型的全景映射面上進行播放。
步驟208、在所述圖像幀的寬高比值不為3:2,或所述立方體全景視頻判定比值小于預先設定的立方體全景視頻判定比值閾值時,將所述視頻圖像發送至所述播放器按照平面視頻進行播放。
本實施例所述的自動識別立方體全景視頻的方法,還設置了立方體模型全景視頻及平面視頻的判斷機制,并針對每種視頻形式自動選擇對應的播放方式,簡化了用戶的操作,同時能夠準確地進行各種視頻的播放。
實施例3
如圖3所示,為本實施例所述自動識別立方體全景視頻的系統的結構示意圖,本實施例所述的系統用于實施上述實施例中所述自動識別立方體全景視頻的方法。本實施例所述自動識別立方體全景視頻的系統包括:設置模塊301、視頻圖像幀獲取模塊302、計算模塊303及立方體全景視頻判定模塊304。
其中,所述設置模塊301與所述視頻圖像幀獲取模塊302相藕接,用于在播放器中,設置用于判定立方體全景視頻的間隙像素對的方差閾值。優選地,所述方差閾值,大于或等于90。
所述視頻圖像幀獲取模塊302與所述設置模塊301及計算模塊303相藕接,用于從數據庫中獲取視頻的圖像幀并計算所述圖像幀的寬高比值。
所述計算模塊303與所述視頻圖像幀獲取模塊302及立方體全景視頻判定模塊304相藕接,用于在所述圖像幀的寬高比值為3:2時,按照所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置獲取間隙像素對的像素,并計算所述間隙像素對的像素方差。
所述立方體全景視頻判定模塊304與所述計算模塊303相藕接,用于在所述圖像幀的寬三分之一位置、寬三分之二位置及高二分之一位置的像素方差,達到或超過所述間隙像素對的方差閾值的數量達到或超過兩個時,判定所述視頻為立方體全景視頻。
進一步地,所述立方體全景視頻判定模塊304,用于:
獲取與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素,并計算所述第一相鄰像素對及第二相鄰像素對的像素方差;
計算所述間隙像素對的像素方差,與所述第一相鄰像素對與第二相鄰像素對的像素方差之和的比值,得到立方體全景視頻判定比值;
在所述立方體全景視頻判定比值達到或超過預先設定的立方體全景視頻判定比值閾值時,判定所述視頻為立方體全景視頻。
所述立方體全景視頻判定模塊304,進一步用于:
按像素行或像素列,與所述間隙像素對中間隙像素間隔設定數量像素的像素點為相鄰像素;獲取所述間隙像素與相鄰像素的像素,得到與所述間隙像素對相鄰的第一相鄰像素對的像素及第二相鄰像素對的像素。
進一步地,所述設定數量像素為十五個像素。
進一步地,所述立方體全景視頻判定比值閾值,為大于或等于80。更優選地,所述立方體全景視頻判定比值閾值,為大于或等于90。
所述立方體全景視頻判斷模塊304,進一步用于:
在所有間隙像素顏色差值達到或超過所述間隙像素顏色差值的閾值時,判斷所述視頻圖像為立方體的全景視頻圖像;
在所有間隙像素顏色差值小于所述間隙像素顏色差值的閾值時,將所述視頻圖像發送至所述播放器按照平面視頻進行播放。
所述立方體全景視頻判斷模塊304,還用于:
在所有間隙像素顏色差值達到或超過所述間隙像素顏色差值的閾值時,判斷所述視頻圖像為立方體的全景視頻圖像;
在所有間隙像素顏色差值小于所述間隙像素顏色差值的閾值時,獲取所述視頻圖像并計算所述視頻圖像的寬高比值;
所述間隙像素對的顏色差值的方差小于所述間隙像素對的顏色差值的方差閾值時,將所述視頻圖像發送至所述播放器按照平面視頻進行播放。
進一步地,在上述系統中,所述邊緣像素顏色差值的閾值大于或等于20。
進一步地,所述立方體全景視頻播放模塊305,用于:
創建立方體模型,并將所述視頻圖像貼合到所述立方體模型的全景映射面上;
檢測所述播放器中預先設置的顯示視窗,在所述立方體模型的全景映射面上的位置,并獲取所述顯示視窗在所述立方體模型的全景映射面上對應的圖像,并在所述顯示視窗中進行顯示。
通過以上各個實施例可知,本發明的自動識別立方體全景視頻的方法及系統,存在的有益效果是:
(1)本發明所述的自動識別立方體全景視頻的方法及系統,根據存儲的立方體模型全景視頻畫面的特性,判斷待播放的視頻是否為立方體模型的全景視頻,并對判斷到的全景視頻自動進行立方體模型貼圖播放,實現了全景視頻的自動識別及自動播放,提升了用戶使用體驗。
(2)本發明所述的自動識別立方體全景視頻的方法及系統,還設置了立方體模型全景視頻及平面視頻的判斷機制,并針對每種視頻形式自動選擇對應的播放方式,簡化了用戶的操作,同時能夠準確地進行各種視頻的播放。
本領域內的技術人員應明白,本發明的實施例可提供為方法、裝置、或計算機程序產品。因此,本發明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
雖然已經通過例子對本發明的一些特定實施例進行了詳細說明,但是本領域的技術人員應該理解,以上例子僅是為了進行說明,而不是為了限制本發明的范圍。本領域的技術人員應該理解,可在不脫離本發明的范圍和精神的情況下,對以上實施例進行修改。本發明的范圍由所附權利要求來限定。