本發明屬于網絡多視點視頻自適應傳輸領域,涉及將MPEG-DASH傳輸協議應用于3D環境中,由其是一種基于模糊控制的立體視頻質量自適應算法。
背景技術:
隨著網絡的普及,視頻在多媒體網絡傳輸中所占的比重越來越大,2011年動態圖像專家組(MPEG)與第三代合作伙伴計劃(3GPP)聯合提出基于HTTP的動態自適應流媒體傳輸(MPEG-DASH)協議,該協議規定了媒體描述文件(MPD)及媒體文件的格式。
基于HTTP動態自適應(DASH)傳輸協議的流媒體傳輸機制,是由客戶端驅動,在視頻傳輸前,服務器會將同一視頻資源分割成不同的視頻切片,并進行不同比特率編碼,最終生成一個基于二進制可擴展標記語言(XML)格式的媒體描述文件,它包含了視頻切片的比特率、分辨率、時間間隔等相應的視頻屬性信息。客戶端根據當前的網絡狀況、自身硬件的處理能力以及緩存等相關參數根據媒體描述文件所提供的統一資源定位符(URL)自適應的選擇適應于當前網絡狀況的下的視頻資源進行申請和下載。
目前已經有很多關于2D-DASH自適應方案的研究主要可以分為兩類:基于吞吐量自適應和基于緩存自適應。相較之下,3D-DASH自適應方案還不夠成熟。在目前的3D-DASH的研究主要集中在媒體描述文件的格式改進、傳輸的視點數量對最終呈現的視頻質量的影響以及傳輸視點數量的自適應切換。但是由于多視點編碼的原因,在3D環境中,客戶端會產生更多的具有不同比特率的多視點比特流版本。因此基于3D-DASH的自適應方案相對于2D要求更加嚴格。
模糊控制系統是以模糊集合論,模糊語言變量和模糊推理為基礎的一種計算機數字控制技術,其已成為當今控制系統的重要組成部分。模糊控制是模擬人的思維、推理和判斷的一種方法,不同于傳統控制方法,模糊控制以模糊的語言變量代替精確的數值輸入,以經驗化的規則設計代替精確的數學模型。將模糊控制與傳統基于緩存算法相結合,可以解決緩存門限值難以設定的問題。同時模糊控制的語言規則來自于人類有關領域的知識和經驗,一套精心設計的語言規則可以使客戶端自適應控制器具有良好的響應,在復雜多變的網絡環境中,為用戶提供更好的知覺質量。
技術實現要素:
本發明所解決的技術問題是:在無線網絡環境下,設計一種由客戶端驅動的基于模糊控制的立體視頻自適應傳輸算法,本發明中的多視點比特流包括:4視點加深度(4VD),3視點加深度(3VD),2視點加深度(2VD),使其滿足:
1)在現有的無線網絡環境下,保證申請的視頻質量緊跟網絡帶寬的變化,以防止緩存溢出造成的視頻播放停滯或帶寬利用率低等問題。
2)針對當前網絡環境,為用戶提供盡可能高的視頻質量,為用戶提供更好的視覺質量體驗。
3)當網絡環境持續小范圍波動,盡量維持選擇視頻質量穩定,以防止視頻質量頻繁波動給用戶帶來疲憊感。
4)針對于當前的網絡環境,選擇合適的多視點比特流(3VD,2VD)進行傳輸,以最大化用戶的體驗質量。
為解決上訴問題,本發明提出一種基于模糊控制的視頻自適應選擇方法,包括以下步驟:
步驟1:資源預備。在多視點視頻進行自適應傳輸前,服務器端將進行多視點比特流的資源預備。服務器將各個位置捕捉到的視頻流進行獨立對稱地編碼,并以相同的時間間隔進行視頻切片切割;
步驟2:媒體描述文件生成:按照預定規則對多視點比特流進行打包,并采用視頻質量評價方法(VQM)設置多視點比特流的自適應切換的客觀參考依據,以貼近用戶的真實體驗,將多視點視頻的屬性信息進行匯總生產媒體描述文件;
步驟3:媒體描述文件預下載。在視頻下載前,客戶端先向服務器提出申請,并下載媒體描述文件,通過解析媒體描述文件了解服務器端的碼率資源分配情況;
步驟4:進入初始緩存階段。在此階段,由于網絡環境未知,客戶端先向服務器申請視點數以及總比特率最低的多視點比特流視頻切片,當緩存區的視頻切片達到預定值時,啟動自適應傳輸;
步驟5:設計兩輸入一輸出模糊控制器。其中兩輸入分別為客戶端緩存中的視頻余量和緩存變化量,輸出為比特流選擇標準的控制變量,并設計輸入輸出的隸屬函數。
步驟6:計算估計吞吐量。根據上一個視頻切片下載速度,計算網絡吞吐量,并將計算得到的網絡吞吐量作為下一個視頻切片下載期間的網絡估計吞吐量;
步驟7:計算緩存。根據申請的多視點比特流視頻切片的總比特率、網絡吞吐量以及上一個視頻切片下載完成時的緩存余量,計算下一個視頻切片下載完成后的緩存余量;
步驟8:計算緩存的偏移量。將步驟7計算得到的緩存余量同目標緩存對比,并計算兩者的差值作為當前的緩存偏移量,并將其作為系統誤差輸入,幫助系統收斂到最終穩定狀態:
步驟9:對輸入進行模糊化。根據隸屬函數,將步驟7,步驟8緩存余量及緩存變化量由精確數值域映射到模糊語言域,得到模糊化結果。
步驟10:對輸出進行解模糊。確定解模糊函數,將輸出參數模糊值通過解模糊函數轉化為精確值,并輸出控制變量。
步驟11:計算多視點比特流切片選擇標準。根據模糊控制器輸出的控制變量以及步驟6計算得到的估計吞吐量,通過控制計算單元下一個比特流視頻切片選擇標準:
步驟12:比特流選擇。比特流選擇。根據步驟11輸出的多視點比特流切片選擇標準,在各個比特流中選擇總比特率最為接近該標準的視頻切片。最后在這些所選擇的視頻切片中選擇客觀指標值,即VQM值較大的多視點比特流視頻切片進行傳輸
步驟13:視頻下載。根據步驟12所做決策向服務器端申請下一視頻切片,等待,直到本視頻切片下載完成。
步驟14:重復步驟6~13,直到下載完成本視頻所有切片。
本發明采用以上技術方案,顯示出以下優點:
(1)在3D-DASH應用中充分考慮到緩存對于用戶的影響,進而保證了客戶端不會出現緩存的上溢和下溢。
(2)向用戶提供質量更高的多視點視頻,且保證視頻切換較為平滑穩定,提高用戶的體驗質量。
(3)將模糊控制應用到3D環境中,可以更好地保證在3D環境下用戶的緩存視頻可以穩定在一個安全值,同時保證最大程度的利用帶寬。
附圖說明
圖1為本發明具體實施系統框圖;
圖2為本發明具體實施方案的實現框圖;
圖3本發明具體實施方式的實現流程圖;
圖4為緩存視頻余量隸屬函數;
圖5為緩存變化量隸屬函數。
具體實施方案
為使本發明的目的技術方案和優點更加清楚,下面結合附圖和具體實施方案,對本發明進行進一步的詳細描述。
一種基于模糊控制的立體視頻質量自適應算法,具體步驟為:
步驟1:在視頻自適應傳輸前,服務器端進行多視點比特流的資源預備,如圖1系統框圖,本發明的具體實施方案采用3個攝像機以相同的基線距離環形排列,進行視頻捕捉,并采用3D-HEVC標準對捕捉到的視頻流進行獨立對稱地編碼,每個視點被編碼成L個比特率播放版本(v1,v2,...,vL)。以相同的時間間隔(8秒)將每個視點視頻切割成N個視頻切片。打包合成多視點比特流:兩視點加深度(2VD)、三視點加深度(3VD)和四視點加深度(4VD)。
步驟2:媒體描述文件生成。根據步驟1得到的多視點比特流(2VD,3VD,4VD),將各個比特流在客戶端渲染的虛擬視點的VQM值,作為多視點比特流的切換的客觀依據以貼近用戶的真實體驗。最終將服務器端比特流切片的比特率、視點數量、VQM值以及URL等屬性信息匯總到媒體描述文件中。
步驟3:媒體描述文件預下載。基于DASH的自適應傳輸機制,客戶端預先向服務器發送HTTP-GET請求下載媒體描述文件。并通過解析媒體描述文件獲知服務器端比特流的比特率、視點數量、VQM值以及URL等屬性信息。
步驟4:初始緩存階段。緩存開始階段,客戶端根據從媒體描述文件中得到的服務器端視頻的屬性信息,向服務器申請最低等級質量視頻且視點數最低(2VD)的比特流,直到緩存達到預設值,啟動客戶端自適應傳輸機制。
步驟5:設計兩輸入一輸出模糊控制器。設定緩存視頻余量和緩存變化量的隸屬模糊子集和隸屬函數如圖4和圖5,根據各個參數表現的物理意義,將其模糊子集分別設定為{偏小,中等,偏大},{下降,平穩,上升},其隸屬函數由經驗設定,并通過大量實驗進行調節。如圖2所示的實現框圖,設定比特流選擇標準的控制變量作為輸出,并采用重心法進行解模糊。
步驟6:計算估計吞吐量。設從申請到第i個視頻切片下載完成所需時間t,申請視頻流的總比特率為v,每段視頻切片播放時長為τ,則下載第i個視頻切片期間網絡吞吐量表示為:Ti(i)=v×τ/t。使用該吞吐量作為進行下一個視頻切片下載時的估計吞吐量,即Te(i+1)=Ti(i)。
步驟7:計算緩存。設前一個視頻切片下載完成時的緩存余量為B(i-1),根據步驟6得到的t和τ,則當前緩存計算方式為:B(i)=B(i-1)+τ-t
步驟8:計算緩存的偏移量Boffset。將目標緩存設置為Bopt,將步驟7計算得到的緩存余量同目標緩存Bopt對比,并計算兩者的差值作為緩存偏移量Boffset=B(i)-Bopt。
步驟9:輸入模糊化。根據以上步驟7和8得到兩個輸入的精確值,對應模糊控制器所涉及的隸屬函數圖形,分別得到各個輸入的模糊化結果,即各個輸入變量相對于其各個模糊子集的隸屬程度。
步驟10:對輸出進行解模糊。定解模糊規則,本發明選用重心法對輸出模糊結果進行解模糊,得到輸出控制變量f。
步驟11:計算多視點比特流切片選擇標準通過模糊控制器輸出以及步驟6計算得到的估計吞吐量Te,控制計算單元計算多視點比特流切片選擇標準
步驟12:比特流選擇。首先根據步驟11輸出的比特流切片選擇標準分別在2VD(兩視點加深度)、3VD(三視點加深度)和4VD(四視點加深度)這3種比特流中選擇總比特率最接近的視頻切片,然后在三個比特流中選擇VQM值較大的視頻切片進行傳輸。
步驟13:視頻下載。根據步驟12所選擇的視頻切片,通過媒體描述文件所提供的URL向服務器申請下載該視頻切片,等待,直到該視頻切片下載完成。
步驟14:重復步驟6~13,直到下載完成本視頻所有切片。圖3為本發明具體實施的邏輯框圖。
以上所述的僅是本發明的優選實施方式,應當指出,對于本領域的普通技術人員來說,在不脫離發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。