欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的制作方法

文檔序號:7638725閱讀:207來源:國知局

專利名稱::在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的制作方法
技術(shù)領(lǐng)域
:本發(fā)明涉及用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別(transitioningcompressionlevels)的系統(tǒng)、方法和介質(zhì)。
背景技術(shù)
:對于將圖像或其它內(nèi)容從服務器流式傳輸至多個客戶機的能力的需求在快速增長。利用流式圖像的多媒體應用日益普及,并且其包括視頻游戲、導航軟件、流式電影或視頻等。然而,這些應用常常是網(wǎng)絡資源密集的,并且當內(nèi),供商使用它們來分發(fā)內(nèi)容,尤其是對于大量用戶的時候,會導致帶寬瓶頸和網(wǎng)絡減速。隨著流式圖像應用的日益普及,與其關(guān)聯(lián)的網(wǎng)絡性能問題將會惡化。為了減少流式圖像內(nèi)容對網(wǎng)絡的影響,內(nèi)M供商常常在傳輸之前壓縮其圖像。于是客戶機系統(tǒng)在向用戶顯示圖像之前就必須對收到的圖像進行解壓縮。取決于壓縮的級別,可以通過利用壓縮來顯著降低網(wǎng)絡通信量。用于視頻圖像的一種壓縮方案是Motion-JPEG(動態(tài)-JPEG),其通過以JPEG格式對每一幀進行加密,將聯(lián)合圖像專家組(JPEG)數(shù)字圖像壓縮標準擴展到視頻。JPEG組創(chuàng)建了ISO/IEC國際標準10918-1ITU-T建議T-81(下文稱為"JPEG")來創(chuàng)建一種解碼/編碼標準。JPEG和Motion-JPEG是有損壓縮標準,并且因而信息在壓縮過程中有損失。Motion-JPEG提供了良好的每幀壓縮級別,但是其壓縮步驟中的一些,例如Huffman編碼,并不總是必需的,并且可能降低性能。運動圖像專家組(MPEG>S,j建了另一系列的壓縮標準,包括MPEG-1、MPEG-2和MPEG-4(分別為ISO/IEC國際標準11172、13818和14496)。MPEG工作組設計了MPEG標準來實現(xiàn)多媒體流式傳輸,并且利用基于塊的運動補償預測(motioncompensatedprediction,MCP)來幫助壓縮。對于很多應用來說,MPEG改進了Modon-JPEG的性能。然而,對于交互式流式圖像應用來說,MPEG并不是最優(yōu)的。MPEG要求服務器生成多幀電影來獲得良好的壓縮級別,這使得它不太適用于具有逐幀交互的交互式應用。相反,MPEG被設計和優(yōu)化用于將諸如電影或其它視頻這樣的可預測內(nèi)容流式傳輸給客戶機或其它用戶設備。交互式流式圖像系統(tǒng)向希望將內(nèi)M服務器分發(fā)至多個客戶機的內(nèi)容提供商提出了重大挑戰(zhàn)。交互式流式圖像系統(tǒng)通常對于每幀接收用戶輸入,以便基于最新的用戶信息來定制每個圖像幀。舉例來說,基于地圖的應用(map-basedapplication)可以基于用戶位置和方位(heading)提供圖像幀,以便該應用可以創(chuàng)建這樣的圖像,即該圖像向用戶顯示他們在該位置和方位會看到什么。在另一例子中,顯示了關(guān)于在汽車后面的事物的虛擬視圖的應用可以使其圖像基于該汽車的當前位置、方向和速度。因為每一幀都必須基于新的信息而被重新計算,所以MPEG并不提供有效的方法,因為當處理單幀的時候,它并不獲得其最佳的壓縮率。類似地,當隨交互式流式圖像系統(tǒng)使用的時候,Motion-JPEG并不提^fJH壬何優(yōu)勢,因為它應用了對于每個圖像幀來說可能資源過于密集的壓縮方法。因此,需要一種用于管理交互式流式圖像系統(tǒng)的有效機制。當內(nèi),供商希望向多個客戶機系統(tǒng)提供交互式圖像內(nèi)容的時候,甚至更需要這樣的機制。
發(fā)明內(nèi)容通過用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的系統(tǒng)、方法和介質(zhì)解決了以上指出的大部分問題。一個實施例提供了一種用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的方法。實施例通??梢园ㄓ善交K(smoothingmodule)接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求。實施例通常還可以包括通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由所述平滑模塊進行平滑探試(smoothingheuristic)。實施例還可以包括基于所生成的多幀平滑例程,由所述平滑模塊為所述圖像幀設置新的壓縮級別。另一實施例提供了一種機器可訪問介質(zhì),其含有當在數(shù)據(jù)處理系統(tǒng)中執(zhí)行的時候,有效地使所述系統(tǒng)實現(xiàn)用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的一系列操作的指令。所述一系列操作通常包括由平滑模塊接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求。所述一系列操作通常還可以包括通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由所述平滑才莫塊進行平滑探試。實施例還可以包括這樣的一系列操作,其用于基于所生成的多幀平滑例程,由所述平滑模塊為所述圖像幀設置新的壓縮級別。一個實施例提供了一種流式圖像系統(tǒng)。所述系統(tǒng)通常可以包括內(nèi)容發(fā)生器,其用于生成圖像流的新的圖像幀。所述系統(tǒng)通常還可以包括平滑模塊,其用于通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來進行平滑探試,從而為所述新的圖像幀選擇新的壓縮級別。所述系統(tǒng)通常還可以包括內(nèi)容編碼器,其用于基于所選擇的壓縮級別對所述新的圖像幀進行編碼。下面參照附圖,借助于例子較為詳細地描述了本發(fā)明的實施例,在附圖中,同樣的參考標記可以表示類似的元件,并且在附圖中圖1根據(jù)一個實施例描繪了用于將圖傳A服務器流式傳輸至多個客戶機的系統(tǒng)的環(huán)境;圖2根據(jù)一個實施例描繪了圖1的流式圖像系統(tǒng)的客戶機的結(jié)構(gòu);圖3根據(jù)一個實施例描繪了用于生成、編碼和傳輸新的圖像幀的流程圖的例子;圖4根據(jù)一個實施例描繪了用于接收用戶輸入以及接收并向用戶顯示圖像幀的流程圖的例子;以及圖5根據(jù)一個實施例描繪了用于編碼和解碼圖像幀的流程圖的例子。具體實施方式下面詳細描述附圖中所描繪的本發(fā)明的示例實施例。如此詳細的示例實施例是為了清楚地表達本發(fā)明。然而,所提供的大量細節(jié)并不旨在限制實施例的預期變化;相反,本發(fā)明涵蓋了落入所附權(quán)利要求所限定的本發(fā)明的精神和范圍內(nèi)的所有修改、等效和替換。下面的詳細描述目的是使這樣的實施例對本領(lǐng)域的普通技術(shù)人員是顯而易見的。公開了用于轉(zhuǎn)變流式圖像系統(tǒng)的壓縮級別的系統(tǒng)、方法和介質(zhì)。一個實施例提供了一種用于在流式圖像系統(tǒng)中的圖像幀之間轉(zhuǎn)變壓縮級別的方法。實施例可以包括由平滑模塊接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求。實施例通常還可以包括通過基于初始壓縮級別、目標壓縮級別,以及達到該目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由該平滑模塊進行平滑探試。實施例還可以包括基于所生成的多幀平滑例程,由該平滑模塊為該圖像幀設置新的壓縮級別。進一步的實施例還可以包括由該平滑才莫塊向內(nèi)容編碼器傳輸對新的壓縮級別的指示。所公開的實施例提供了一種用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的方法和系統(tǒng)。在所公開的實施例中,生成圖像流的服務器可以請求平滑模塊確定圖像流的每個圖像幀的壓縮級別。平滑模塊可以通過為圖像流的一個或多個圖像幀生成多幀平滑例程來進行平滑探試。平滑模塊可以使用諸如由此開始的初始壓縮級別、目標壓縮級別,以及其中達到目標壓縮級別的幀數(shù)這樣的信息?;谒傻亩鄮交?,平滑模塊然后可以為每個圖像幀設置壓縮級別。服務器然后可以在將圖像幀傳輸給客戶機之前使用該壓縮級別對該圖像幀進行編碼??蛻魴C然后可以對使用該壓縮級別的圖像幀進行解碼并且將圖像顯示給用戶。使用所公開的壓縮級別轉(zhuǎn)變系統(tǒng),服務器可以有利地為用戶在高壓縮級別與低壓縮級別之間進行轉(zhuǎn)變,而很少或不影響用戶的觀看體驗。這可以允許服務器在僅需要較低質(zhì)量的圖像的時候通過平滑地提高壓縮級別,以及同樣地在需要較高質(zhì)量的圖像的時候平滑地降低壓縮級別來保存帶寬。交互式圖像流式系統(tǒng)可以有利地使用所公開的系統(tǒng)來根據(jù)用戶的活動以及與其環(huán)境的交互來平滑地提供變化的壓縮級別。所公開的壓縮級別轉(zhuǎn)變系統(tǒng)對于這樣的流式圖像系統(tǒng)也可以是有用的,即該流式圖像系統(tǒng)是非交互式的,但變化的壓縮級別對其來:^兌在降低帶寬或其它資源需求方面可以提供好處。雖然以下參照硬件和/或軟件的特定配置描述了具體的實施例,但是本領(lǐng)域的技術(shù)人員將意識到,利用其它大體等效的硬件和/或軟件系統(tǒng)可以有利地實現(xiàn)本發(fā)明的實施例?,F(xiàn)轉(zhuǎn)至附圖,圖l根據(jù)一個實施例描繪了用于將圖〗象從服務器流式傳輸至多個客戶機的系統(tǒng)的環(huán)境。在所描繪的環(huán)境中,交互式圖像流式系統(tǒng)100包括通過網(wǎng)絡104連接的服務器102和一個或多個客戶機106。客戶機106可以通過網(wǎng)絡104將客戶機信息傳輸給服務器102,并且服務器102然后可以基于客戶機信息生成新的圖像幀。在服務器102生成新的圖像幀之后,其然后可以以規(guī)定的壓縮級別對圖像幀進行編碼,并且將編碼的圖像幀以及對用于編碼圖像幀的壓縮級別的指示傳輸給客戶機106??蛻魴C106然后可以基于壓縮級別對圖像幀進行解碼,并且將圖像顯示給用戶。使用交互式圖像流式系統(tǒng)100,客戶機106和服務器102因而可以一起工作以^J^于每個周期的客戶機信息生成流式圖像流的每個圖像幀。交互式圖像流式系統(tǒng)100可以基于客戶機信息、連續(xù)圖像之間的差異,以及其它信息,有利地選擇適當?shù)膲嚎s級別(如隨后將較為詳細描述的),這會導致交互式圖像流式系統(tǒng)100中帶寬和處理的更有效使用。服務器102、一個或多個客戶機106及其任意或全部組件均可以在通用或?qū)S糜嬎銠C系統(tǒng)(例如,個人計算機、工作站、服務器、大型計算機、筆記本式或膝上型計算機、平板PC、臺式計算機、便攜式計算機系統(tǒng)、PDA、機頂盒、移動電話、無線設備等中的一個或多個)上執(zhí)行。在一個實施例中,計算機系統(tǒng)可以包括中央處理器(CPU)以及關(guān)聯(lián)的易失性和非易失性存儲器,其包括隨機訪問存儲器(RAM)和基本輸入/輸出系統(tǒng)只讀存儲器(BIOSROM)、系統(tǒng)監(jiān)視器、鍵盤、一個或多個軟盤驅(qū)動器、CD-ROM驅(qū)動器、硬盤存儲驅(qū)動器(也稱為"硬驅(qū)動器,,或"》更盤驅(qū)動器")、諸如鼠標之類的指點設備,以及任選的網(wǎng)絡接口適配器,所有這些均使用用于將這些組件電連接在一起的主板或系統(tǒng)平面(systemplanar)來進行電連接。在一個實施例中,服務器102可以是國際商業(yè)機器公司(IBM)eSever或者類似的服務器,其具有執(zhí)行軟件的一個或多個處理器或處理器線程,以及/或者與數(shù)據(jù)存儲設備(例如,RAM、只讀存儲器(ROM)、閃速存儲器、光盤驅(qū)動器、硬盤驅(qū)動器等)耦合的一個或多個狀態(tài)機。在一個實施例中,客戶機106可以是無線設備,其具有與數(shù)據(jù)存儲設^合的處理器以及諸如鍵板和顯示屏之類的用戶輸入和輸出設備。網(wǎng)絡104可以是任何類型的數(shù)據(jù)通信通道或是數(shù)據(jù)通信通道的任意組合,例如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、LAN、WAN、以太網(wǎng)、無線網(wǎng)絡等。當位于中心的服務器102向多個分布式客戶機106傳輸流式圖像內(nèi)容時,因特網(wǎng)或其它〃^共網(wǎng)絡尤其可用作網(wǎng)絡104,因為這將促進服務器102與多個客戶機106之間的通信。一些或全部客戶機106可以通過無線網(wǎng)絡104與因特網(wǎng)網(wǎng)絡104(以;SJ良務器102)通信。然而,本領(lǐng)域的技術(shù)人員將認識到,利用任何類型的數(shù)據(jù)通信通道均可以實現(xiàn)文中所描述的發(fā)明。服務器102可以包括諸如通信模塊110、內(nèi)容變化檢測器112、內(nèi)容發(fā)生器114、內(nèi)容編碼器116和平滑模塊118這樣的組件。通信模塊110可以促進服務器102通過網(wǎng)絡104將信息傳輸給客戶機106,以及通過網(wǎng)絡104從客戶機106接收信息。在其與客戶機106的通信中,通信模塊110可以使用任何類型的協(xié)議,例如客戶機-服務器協(xié)議。在一個實施例中,服務器102可以使用通信模塊110從客戶機106接收客戶機信息,并且可以使用通信模塊110將編碼的圖像幀和/或壓縮信息傳輸給客戶機106??蛻魴C信息可以包括標識客戶機106或其用戶(或者用戶的偏好)的信息,以及與應當被流式傳輸給客戶機106的圖#^關(guān)的信息,例如用戶的當前位置或取向(orientation)。在一個例子中,對于基于用戶的當前位置向用戶顯示三維(3-D)圖像的圖像流式應用來說,客戶機信息可以包括用戶位置的指示,例如坐標。對于向用戶顯示關(guān)于他們將會看到什么的虛擬表現(xiàn)的另一應用來說,客戶機信息還可以包括諸如羅盤方向的方向信息,其提供對用戶正在注視的方向的指示。本領(lǐng)域的技術(shù)人員將認識到,可以將任何類型的信息包括作為客戶機信息。內(nèi)容發(fā)生器114可以基于通信模塊110所接收到的客戶機信息來生成新的圖像幀。內(nèi)容發(fā)生器114(其可以是多媒體或流式圖像應用)可以使用任何類型的方法來確定新的圖像幀的內(nèi)容。舉例來說,內(nèi)容發(fā)生器114可以基于客戶機106或其用戶的當前位置或方向、基于接收或計算的用戶的速度、基于事件的發(fā)生、基于當前時間、基于當前天氣或照明*、基于其它客戶機106或用戶的位置,或者任何其它的因素來生成新的圖像幀。在一個示例性實施例中,內(nèi)容發(fā)生器114生成新的圖像幀,從而創(chuàng)建客戶機106的當前位置的3-D表示。在另一示例性實施例中,基于用戶及其客戶機106的當前位置和方向,內(nèi)容發(fā)生器114可以生成新的圖像幀,其描繪了關(guān)于具有客戶機106的用戶會看到什么的虛擬視圖。在另一實施例中,內(nèi)容發(fā)生器114基于對客戶機信息的重復接收,可以確定客戶機106的速度和方向,并且然后可以使用所確定的速度和方向來生成適當?shù)男碌膱D像幀。內(nèi)容變化檢測器112可以分析內(nèi)容發(fā)生器114所生成的新的圖像幀,并且將其與先前的圖像幀進行比較以確定它們是否不同。內(nèi)容變化檢測器112可以使用任何類型的方法或者方法的組合來確定新的圖像幀與先前的幀之間的內(nèi)容是否有變化。內(nèi)容變化檢測器112所使用的方法可以由管理員或者用戶選擇,其可以基于當前網(wǎng)絡104條件,或者其它因素。在一個實施例中,內(nèi)容變化檢測器112可以使用每個圖像幀的壓縮大小的比較來確定是否已發(fā)生了變化。交互式系統(tǒng)中未變化的壓縮圖像幀大小有可能指示客戶機106正在重復請求相同的圖像以及連續(xù)的圖像幀是相同的。在另一實施例中,內(nèi)容變化檢測器112可以利用兩個圖像幀的位圖的向量或統(tǒng)計處理,通過4吏用Boolean分析來確定向量間是否存在差異。在進一步的實施例中,當圖像具有較高的規(guī)律性并且速度較為關(guān)鍵時,內(nèi)容變化檢測器112可以利用統(tǒng)計處理算法的索引形式(indexedversion)的向量。在可選的實施例中,內(nèi)容變化檢測器112可以使用場景跟蹤(scenetracking)或者其它算法來嘗試預測客戶機106的用戶與其環(huán)境進行交互的水平,使用該預測來幫助確定新的圖像幀是否與先前的圖像幀相同。在另一可選的實施例中,內(nèi)容變化檢測器112可以使用客戶機信息來確定圖像中是否已發(fā)生了變化,因為舉例來說,如果客戶機的位置沒有任何變化,則圖像也不太可能會變化。在另一可選的實施例中,內(nèi)容變化檢測器U2可以使用內(nèi)容變化檢測方法之一來確定圖像幀之間的變化的大小或程度,而不是確定是否已發(fā)生了變化。當變化的大小或程度將影響選取的壓縮級別時,這可能是有用的。內(nèi)容編碼器116和平滑模塊118可以組合地或者單獨地用于確定待傳輸?shù)膱D像幀的適當?shù)膲嚎s級別,并且以所選擇的壓縮級別對圖像幀進行編碼。在一個實施例中,如果在連續(xù)的圖像幀之間不存在內(nèi)容變化(如內(nèi)容變化檢測器112所確定的),則內(nèi)容編碼器116可以希望改善待傳輸?shù)膱D像幀的質(zhì)量(并且因而降低壓縮級別)。在交互式圖像流式系統(tǒng)中,靜態(tài)圖像(連續(xù)幀之間沒有變化)指示從客戶機的觀點來看該圖像是靜止的,并且因而在重要性上提升圖像質(zhì)量。相比較而言,如果連續(xù)圖^#:此不同,則從客戶機106的觀點來看圖像是運動的,并且可以利用較低質(zhì)量的圖像(具有較高的壓縮級別)。當用戶在觀看表現(xiàn)運動的圖像時,圖像中的細節(jié)可能不太重要,因為細節(jié)變得模糊,并且眼睛是造成細節(jié)丟失的原因。當用戶在觀看靜止的圖像時,圖像細節(jié)可能較為重要,因為用戶很可能會注意到細節(jié)的任何瑕瘋或缺失、壓縮人為結(jié)杲等等?;谒兄挠脩艉?或客戶機106的運動,基于圖像流中所描繪的運動(如連續(xù)圖像之間的差異或其缺失所表示的),所公開的系統(tǒng)有利地改變壓縮級別。當連續(xù)圖像在各幀之間發(fā)生變化(意味著運動)的時候,內(nèi)容編碼器116可以增加壓縮級別,并且降低帶寬要求,而不會減損用戶的觀看體驗。當連續(xù)圖^^目同(意味著靜止的客戶機106)的時候,內(nèi)容編碼器116可以降低壓縮級別,并且提高圖像的質(zhì)量。雖然這樣的動作可能增加帶寬要求,但是可以為用戶保持流式圖像質(zhì)量。在一個實施例中,內(nèi)容編碼器116可能不需要傳輸連續(xù)的同樣圖像,而是可以只傳輸對使用先前的圖像的指示,從而在靜止用戶的情況下節(jié)約帶寬。在可選的實施例中,內(nèi)容編碼器116和平滑模塊118還可以使所選擇的壓縮級別基于幀之間變化的大小或程度,從而使得幀的輕微變化不導致壓縮級別上的大跳躍。如關(guān)于圖3較為詳細描述的,內(nèi)容編碼器116可以使用平滑模塊118的平滑算法來平滑不同壓縮級別之間的轉(zhuǎn)變,從而改善用戶體驗。平滑模塊118可以使用初始壓縮級別、目標壓縮級別,以及系統(tǒng)愿意等待直到滿足目標壓縮級別的幀數(shù)來作為輸入。在可選的實施例中,平滑模塊118可以基于任何因素(例如初始壓縮級別和目標壓縮級別)來確定系統(tǒng)愿意等待直到滿足目標壓縮級別的幀數(shù)。舉例來說,如果初始與目標壓縮級別之間的差距大,則平滑模塊118可以選取較大的幀數(shù)。使用這些輸入,平滑模塊118可以通過運行生成多幀平滑例程的平滑探試來確定圖像幀的新的壓縮級別。在一個實施例中,平滑模塊118可以通過諸如Motion-JPEG或MPEG這樣的壓縮標準的有損量化步驟來改變壓縮級別,如關(guān)于圖5較為詳細描述的。關(guān)于圖5所描述的壓縮算法可以根據(jù)需要對不同的壓縮級別利用乘數(shù)查找表(multiplierlookuptable)。本領(lǐng)域的技術(shù)人員將認識到,平滑模塊118可以使用任何類型的平滑機制。所公開的平滑才莫塊118可以有利地提供一種有效和高效的機制,其用于在諸如所公開的交互式圖像流式系統(tǒng)100這樣的圖像流式系統(tǒng)中轉(zhuǎn)變壓縮級別。所公開的平滑模塊118還可以在任何其它類型的圖像流式系統(tǒng)(例如具有像電影或其它視頻這樣的固定內(nèi)容的系統(tǒng))中轉(zhuǎn)變壓縮級別。在任何圖像流式系統(tǒng)中,服務器102均可以使用平滑模塊118來促進向上或向下轉(zhuǎn)變壓縮級別,而不使服務器影響用戶的觀看體驗。所公開的平滑探試還可以允許服務器102平滑在多個幀上的壓縮級別之間的轉(zhuǎn)變,以便使該轉(zhuǎn)變不會過多地侵擾用戶的觀看質(zhì)量。響應于用戶活動(即,用戶在其客戶機106應用中的動作),交互式圖像流式系統(tǒng)100可以利用平滑模塊118來促進用于降低帶寬要求的壓縮級別變化。因此,通過有利地為流中的圖像幀轉(zhuǎn)變壓縮級別,所公開的系統(tǒng)可以促進系統(tǒng)具有變化的壓縮級別并且獲得效率。通過使用平滑探試來平滑不同壓縮級別之間的轉(zhuǎn)變,從而當在網(wǎng)絡約束下操作時可以保持流式圖像的視覺質(zhì)量。圖2根據(jù)一個實施例描繪了圖1的流式圖像系統(tǒng)的客戶機的結(jié)構(gòu)。在所描繪的實施例中,客戶機106包括通信模塊202、解碼器204、用戶顯示i殳備206、用戶輸入i殳備208、位置確定i殳備210,以及方向確定i殳備212。類似于服務器102的通信模塊110,通信模塊202可以促進客戶機106通過網(wǎng)絡104向服務器102傳輸信息,以及通過網(wǎng)絡104從服務器102接收信息。在其與服務器102的通信中,通信模塊202可以使用任何類型的協(xié)議。在一個實施例中,客戶機106可以使用通信模塊202將客戶機信息傳輸給服務器102,并且可以使用通信模塊202從服務器102接收編碼的圖4象幀和/或?qū)嚎s級別的指示。解碼器204可以對通信模塊202所接收的編碼圖像進行解碼,例如通過對編碼圖像進行解壓縮。解碼器204可以使用通信模塊202所接收的對壓縮級別的指示來幫助它對圖像進行解碼。另外,解碼器204可以訪問與壓縮級別相關(guān)聯(lián)的一個或多個乘數(shù)查找表,以便解碼器204可以正確地對圖像進行解碼。在解碼器204處理圖像之后,用戶顯示設備206可以向用戶顯示解碼的圖像,例如通過顯示屏、打印的圖像、全息圖或者任何其它輸出設備。如前所述,客戶機信息可以包括對用戶和/或客戶機106的身份、偏好、位置、取向或其它信息的指示。任選的用戶輸入設備208、位置確定設備210和方向確定設備212可以幫助請求或提供客戶機信息。舉例來說,用戶輸入設備208可以接收來自任何類型的設備的用戶輸入,例如通過鍵板、鍵盤、按鈕、記錄筆、鼠標、操作桿、虛擬現(xiàn)實設備、話音命令,或者眼睛移動等。用戶輸入可以包括用戶偏好,例如對較高或較低壓縮級別的請求、對較快屏幕速率的請求等等。用戶輸入還可以包括用戶位置或取向。位置確定設備210可以確定客戶機106和/或用戶的當前位置。位置確定設備210可以是任何類型的位置確定設備,例如全球定位系統(tǒng)(GPS)接收器或者慣'f生測量單元(inertialmeasurementunit,IMU)。方向確定i殳備212可以確定客戶機106和/或用戶的當前取向。方向確定i殳備212可以是任何類型的方向確定設備,例如電子羅盤、使用三角測量法的GPS接收器、常規(guī)羅盤,或者IMU。由用戶輸入設備208、位置確定設備210和/或方向確定設備212所生成的客戶機信息可以允許服務器102基于客戶機106和/或用戶的當前狀態(tài)來定制每個生成的圖像幀。圖3才艮據(jù)一個實施例描繪了用于生成、編碼和傳輸新的圖^^幀的流程圖的例子。服務器102或其任何(獨立或組合)組件可以實現(xiàn)流程圖300的方法。流程圖300從元素302開始,接收客戶機信息。在一個實施例中,通信模塊110可以通過網(wǎng)絡104從客戶機106接^戶機信息。在收到客戶機信息之后,在元素304處,內(nèi)容發(fā)生器112可以基于所接收的客戶機信息生成新的圖像幀。內(nèi)容發(fā)生器112可以根據(jù)應用,使用任何類型的算法來生成新的圖《象幀。舉例來說,內(nèi)容發(fā)生器112可以生成表示從用戶的觀點來看的視圖的圖像幀(如果應用這樣要求的話)。在元素306處,平滑模塊118接下來可以為所生成的圖像幀確定初始壓縮級別。在一個實施例中,平滑模塊118可以簡單地選擇最近最常使用的壓縮級別作為初始壓縮級別。在另一實施例中,平滑模塊118可以4吏初始壓縮級別基于系統(tǒng)是否在多幀平滑例程內(nèi)。當在多幀平滑例程內(nèi)時,初始壓縮級別可以基于適于多幀平滑例程的當前幀的壓縮級別。在一個例子中,平滑模塊118啟動壓縮例程,該壓縮例程在六(6)幀內(nèi)從壓縮級別五(5)開始并且結(jié)束于壓縮級別十(10),每幀遞增一個壓縮級別,第三幀的初始壓縮級別可以是壓縮級別七(7)(5+2=7)。在一個實施例中,平滑模塊118可以利用延續(xù)一到兩秒的多幀平滑例程,以便降低對用戶的影響。在一個例子中,如果正以每秒15幀傳輸圖像流,則從一個壓縮級別轉(zhuǎn)變到另一個壓縮級別的具有15到30幀的多幀平滑例程可以證明是有益的。本領(lǐng)域的技術(shù)人員將認識到,平滑模塊118可以利用其它的多幀平滑例程。在平滑模塊118確定了初始壓縮級別之后,在元素308處,內(nèi)容變化檢測器112可以將所生成的新圖像與先前的圖像進行比較。如前所述,內(nèi)容變化檢測器112可以使用任何方法來比較這兩個圖像。如果內(nèi)容變化檢測器112在判決塊310處確定在所生成的新圖像與先前的圖像幀之間內(nèi)容已發(fā)生了變化,則流程圖300的方法繼續(xù)到元素314。在元素314處,平滑模塊U8可以對新圖像進行平滑探試,以便降低其質(zhì)量和增加壓縮級別。當圖像之間的內(nèi)容變化指示用戶的視點可能是移動的并且用戶因而有可能容忍較低的圖像質(zhì)量時,平滑模塊118增加壓縮級別。如果內(nèi)容變化檢測器112在判決塊310處確定在所生成的新圖像與先前的圖像幀之間內(nèi)容沒有發(fā)生變化,則流程圖300的方法繼續(xù)到元素312。在元素312處,平滑模塊118可以對新圖像進行平滑探試,以便提高其質(zhì)量并且降低壓縮級別。當圖像之間缺乏內(nèi)容變化指示用戶的視點可能是靜止的并且用戶因而有可能要求較高的圖像質(zhì)量時,平滑模塊118可以降低壓縮級別。平滑模塊118可以使用任何方法在元素312或314處進行其平滑探試。在一個實施例中,通過在多個圖像幀上導致多階段壓縮例程的一系列壓縮質(zhì)量步驟,平滑模塊118可以在初始壓縮級別與目標壓縮級別之間(才艮據(jù)壓縮級別是增加還是降低而沿著適當?shù)姆较?進行遞增。舉例來說,在最小壓縮級別與最大壓縮級別之間,平滑才莫塊118可以使用五個壓縮級別。然而,對于每個壓縮級別,服務器102和客戶機106可能各自需要含有用于該壓縮級別的乘數(shù)查找表,如將關(guān)于圖5較為詳細描述的。壓縮級別的數(shù)目要求在服務器102和客戶機106這二者處的存儲器使用與探試法和所得到的流式圖像的平滑性之間的折衷。數(shù)目較多的壓縮級別可能導致壓縮級別之間較平滑的轉(zhuǎn)變,但卻可能需要額外的存儲量,這可能是成問題的,尤其是對于處理和存儲資源可能有限的客戶機106來說。對于平滑轉(zhuǎn)變來說,通常希望三個或更多的壓縮級別,但是本領(lǐng)域的技術(shù)人員將認識到,在可能的降低性能的情況下,較少的級別也是可能的。在生成多幀平滑例程中,平滑模塊118可以使用從一個壓縮級別到另一壓縮級別的粗線性轉(zhuǎn)變,或者可選地可以使用任何其它類型的算法,例如一種偏向較高或較低壓縮級別的算法。在平滑模塊118已經(jīng)進行了其平滑探試之后,在元素316處,內(nèi)容編碼器116可以基于來自平滑模塊118的結(jié)果,為圖像幀設置新的壓縮級別。利用新的壓縮級別,在元素318處,內(nèi)容編碼器116然后可以基于新的壓縮級別對新的圖像幀進行編碼。如前所述,內(nèi)容編碼器116可以使用任何類型的編碼算法對新的圖像幀進行編碼。在元素320處,通信模塊110然后可以將經(jīng)編碼的新的圖像幀以及對新的壓縮級別的指示傳輸給客戶機106,之后流程圖300的方法終止。流程圖300的方法還可以返回元素302來對每一幀重復該過程。圖4根據(jù)一個實施例描繪了用于接收用戶輸入以及接收并向用戶顯示圖像幀的流程圖的例子??蛻魴C106或其任何(獨立或組合)組件可以實現(xiàn)流程圖400的方法。流程圖400從元素402開始,接收用戶輸入。在一個實施例中,通信模塊202可以通過用戶輸入設備208接收來自用戶的輸入,如前所述??蛇x地,通信模塊202可以接收來自位置確定i殳備210或方向確定設備212的輸入。在元素404處,用戶輸入設備可以視情況處理用戶輸入,例如通過將輸入轉(zhuǎn)變成用于傳輸?shù)牧硪环N形式。在元素406處,通信模塊202接下來可以通過網(wǎng)絡104向服務器102傳輸對用戶輸入的指示。在傳輸了對用戶輸入的指示之后,流程圖400的方法可以繼續(xù)到元素408,在其中,通信模塊202可以通過網(wǎng)絡104從服務器102接收編碼的圖像幀。在元素410處,通信模塊202還可以通過網(wǎng)絡104從服務器102接收對編碼的圖像幀的壓縮級別的指示。在一個實施例中,通信模塊202可以在相同的傳輸中接收編碼的圖像幀以及對壓縮級別的指示。使用對壓縮級別的指示,在元素412處,解碼器204可以對編碼的圖像幀進行解碼。解碼器204可以使用與所指示的壓縮級別相關(guān)的乘數(shù)查找表來實現(xiàn)解碼過程的解除量化步驟,如關(guān)于圖5較為詳細描述的。在圖像幀^:解碼之后,在元素414處,用戶顯示i殳備206可以向用戶顯示經(jīng)解碼的圖^f象幀,之后流程圖400的方法終止。流程圖400的方法還可以返回元素402來對每一幀重復整個流程圖。流程圖400的公開方法允許在客戶機106設備上顯示交互式圖像流。通信模塊202可以向服務器102傳輸對用戶的交互的指示,并且接收回基于用戶的交互經(jīng)編碼的圖像幀。解碼器204然后可以對圖像幀進行解碼,并且用戶顯示i殳備206向用戶顯示經(jīng)解碼的圖像幀??梢詫γ恳粠貜蛨D3和圖4的方法,以〗更給予用戶交互式圖^f象流式體驗。文中所描述的平滑探試基于用戶的動作有利地促進了對壓縮級別的改變,與此同時減少了對用戶的觀看#的降低,從而允許有效和高效地使用可用帶寬。圖5根據(jù)一個實施例描繪了用于對圖像幀進行編碼和解碼的流程圖的例子。服務器102的內(nèi)容編碼器116以及客戶機106的解碼器206可以單獨或組合地實現(xiàn)流程圖500的方法。流程圖500的方法可以表示對諸如MPEG或Motion-JPEG這樣的典型視頻編碼和解碼方案或算法的描述。流程圖500的方法并不意味著是窮舉的,并且特定的編碼方案可以具有更多的步驟,例如MPEG算法的運動補償步驟,或者完全不同的方法。本領(lǐng)域的技術(shù)人員將認識到,圖5的方法僅僅是一個例子,并且還可以隨所公開的實施例使用其它的編碼/解碼方法。流程圖500開始于元素502,在其中,內(nèi)容編碼器116可以接收待編碼的輸入圖像幀。內(nèi)容編碼器116接下來可以對輸入圖像幀進行離散余弦變換(DCT)運算。DCT運算可以是一種大體上無損的數(shù)學變換,其獲得信號(輸入圖像幀的空間信息),并且將該信號變換成一個或多個8x8像素塊形式的適于壓縮的數(shù)字數(shù)據(jù)作為輸出。在內(nèi)容編碼器116內(nèi),在元素506處,基于所選擇的壓縮級別來量化DCT運算的輸出。內(nèi)容編碼器116通過將來自適當?shù)牟檎冶淼某?shù)用作除數(shù),可以對從DCT運算輸出的每個8x8像素塊進行量化步驟。適當?shù)牟檎冶砜梢允桥c所選擇的壓縮級別相關(guān)聯(lián)的查找表。在一個實施例中,可以對每個可能的壓縮級別都有查找表。流程圖500的方法然后可以繼續(xù)到元素508,在其中,內(nèi)容編碼器116可以壓縮從元素506輸出的經(jīng)量化的DCT值。在元素508處,內(nèi)容編碼器116可以按照鋸齒形序列將經(jīng)量化的DCT值重新排列成一維陣列,并且然后可以寸吏用熵編碼機制(entropyencodingmechanism),其中該熵編碼才幾制使用游程長度編碼(RLE)和/或Huffman編碼。通過數(shù)學反轉(zhuǎn)和解壓縮經(jīng)編碼的圖像幀,客戶機106的解碼器206可以對編碼的圖像幀進行解碼。通過對接收的圖像幀進行解壓縮,解碼器206可以從元素510開始,并且在元素512處,解碼器206可以基于所選擇的壓縮級別對所接收的圖像進行解除量化(也稱為逆量化)。在解壓縮步驟之后,通過將來自適當?shù)牟檎冶淼某?shù)用作乘數(shù)因數(shù)(multiplicationfactor),解碼器206可以對每個8x8像素塊進行解除量化步驟。適當?shù)牟檎冶砜梢允桥c選擇的壓縮級別相關(guān)聯(lián)的查找表。相同的查找表可以有利地分別存儲在服務器102和客戶機106這二者中。解碼器206然后可以對所接收的圖像幀進行逆DCT變換,其導致然后可以被顯示或者以別的方式被處理的輸出圖像幀。流程圖500的方法然后可以終止。一般而言,被執(zhí)行以便實現(xiàn)本發(fā)明的實施例的例程可以是操作系統(tǒng)的一部分或者是具體的應用、組件、程序、模塊、對象或指令序列。本發(fā)明的計算機程序通常包括大量指令,其可以由本地計算機轉(zhuǎn)換成機器可讀格式,并且因此得到可執(zhí)行指令。此外,程序包括對于該程序是本地駐留的、或者在存儲器中或存儲設備上找得到的變量和數(shù)據(jù)結(jié)構(gòu)。另外,可以基于在本發(fā)明的具體實施例中為其實現(xiàn)了下文所描述的各種程序的應用來標識下文所描述的各種程序。然而,應當理解,僅是為了方便起見而使用所遵循的任何特定的程序命名法,并且因而本發(fā)明不應當限于只在由這樣的命名法所標識和/或暗示的任何具體應用中4吏用。對于獲益于本公開的本領(lǐng)域的技術(shù)人員來說,本發(fā)明顯然設想了用于在流式圖像系統(tǒng)中轉(zhuǎn)變壓縮級別的方法、系統(tǒng)和介質(zhì)。應當理解,在詳細說明和附圖中所示出和描述的本發(fā)明的形式是作為例子的。下面的4又利要求應當廣義地被理解為包括所公開的示例實施例的所有變化。權(quán)利要求1.一種用于在流式圖像系統(tǒng)中的圖像幀之間轉(zhuǎn)變壓縮級別的方法,所述方法包括由平滑模塊接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求;通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由所述平滑模塊進行平滑探試;以及基于所生成的多幀平滑例程,由所述平滑模塊為所述圖像幀設置新的壓縮級別。2.根據(jù)權(quán)利要求l的方法,其進一步包括由所述平滑模塊向內(nèi)容編碼器傳輸對所迷新的壓縮級別的指示。3.根據(jù)權(quán)利要求1或2的方法,其進一步包括由所述平滑模塊接收所述初始壓縮級別、所述目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)。4.根據(jù)權(quán)利要求1至3中任何一項的方法,其中所述目標壓縮級別是高于所述初始壓縮級別的壓縮級別。5.根據(jù)權(quán)利要求1至3中任何一項的方法,其中所述目標壓縮級別是低于所述初始壓縮級別的壓縮級別。6.根據(jù)前述權(quán)利要求中任何一項的方法,其中達到所述目標壓縮級別的幀數(shù)大于或等于十五。7.根據(jù)前述權(quán)利要求中任何一項的方法,其中所述新的壓縮級別與乘數(shù)查找表相關(guān)聯(lián)。8.根據(jù)前述權(quán)利要求中任何一項的方法,其中通過生成多幀平滑例程而由所述平滑才莫塊進行平滑探試包括為交互式流式圖像流的多個幀生成所述多幀平滑例程。9.一種機器可訪問介質(zhì),其含有當在數(shù)據(jù)處理系統(tǒng)中執(zhí)行的時候,有效使所述數(shù)據(jù)處理系統(tǒng)進行以下操作的指令,所述操作包括由平滑模塊接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求;通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由所述平滑模塊進行平滑探試;以及基于所生成的多幀平滑例程,由所述平滑模塊為所述圖像幀設置新的壓縮級別。10.根據(jù)權(quán)利要求9的機器可訪問介質(zhì),其進一步包括由所述平滑模塊向內(nèi)容編碼器傳輸對所述新的壓縮級別的指示。11.根據(jù)權(quán)利要求9或10的機器可訪問介質(zhì),其進一步包括由所述平滑模塊接收所述初始壓縮級別、所述目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)。12.根據(jù)權(quán)利要求9至11中任何一項的機器可訪問介質(zhì),其中所述目標壓縮級別是高于所述初始壓縮級別的壓縮級別。13.根據(jù)權(quán)利要求9至11中任何一項的機器可訪問介質(zhì),其中所述目標壓縮級別是低于所述初始壓縮級別的壓縮級別。14.根據(jù)權(quán)利要求9至13中任何一項的機器可訪問介質(zhì),其中達到所述目標壓縮級別的幀數(shù)大于或等于十五。15.根據(jù)權(quán)利要求9至14中任何一項的機器可訪問介質(zhì),其中所述新的壓縮級別與乘數(shù)查找表相關(guān)聯(lián)。16.根據(jù)權(quán)利要求9至15中任何一項的機器可訪問介質(zhì),其中通過生成多幀平滑例程而由所述平滑模塊進行平滑探試包括為交互式流式圖寸象流的多個幀生成所述多幀平滑例程。17.—種流式圖像系統(tǒng),所述系統(tǒng)包括內(nèi)容發(fā)生器,所述內(nèi)容發(fā)生器適于生成圖像流的新的圖像幀;與所述內(nèi)容發(fā)生器進行通信的平滑模塊,所述平滑模塊適于通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來進行平滑探試,從而為所述新的圖像幀選擇新的壓縮級別;以及與所述平滑才莫塊進行通信的內(nèi)容編碼器,所述內(nèi)容編碼器適于基于所選擇的壓縮級別對所述新的圖像幀進行編碼。18.根據(jù)權(quán)利要求17的系統(tǒng),其進一步包括與所述內(nèi)容編碼器進行通信的一個或多個乘數(shù)查找表,所述一個或多個乘數(shù)查找表各自與壓縮級別相關(guān)聯(lián)。19.根據(jù)權(quán)利要求17或18的系統(tǒng),其進一步包括與所述內(nèi)容編碼器進行通信的通信模塊,所述通信模塊適于向客戶機傳輸經(jīng)編碼的新的圖像幀以及對所述新的壓縮級別的指示。20.根據(jù)權(quán)利要求17至19中任何一項的系統(tǒng),其中內(nèi)容平滑器進一步適于基于所述初始壓縮級別和所述目標壓縮級別來確定達到所述目標壓縮級別的幀數(shù)。全文摘要公開了用于轉(zhuǎn)變流式圖像系統(tǒng)的壓縮級別的系統(tǒng)、方法和介質(zhì)。一個實施例提供了一種用于在流式圖像系統(tǒng)中的圖像幀之間轉(zhuǎn)變壓縮級別的方法。實施例可以包括由平滑模塊接收對于與圖像幀相關(guān)聯(lián)的新的壓縮級別的請求。實施例通常還可以包括通過基于初始壓縮級別、目標壓縮級別,以及達到所述目標壓縮級別的幀數(shù)來生成多幀平滑例程,從而由所述平滑模塊進行平滑探試。實施例還可以包括基于所生成的多幀平滑例程,由所述平滑模塊為所述圖像幀設置新的壓縮級別。進一步的實施例可以包括由所述平滑模塊向內(nèi)容編碼器傳輸對所述新的壓縮級別的指示。文檔編號H04N7/50GK101223791SQ200680026210公開日2008年7月16日申請日期2006年7月13日優(yōu)先權(quán)日2005年7月19日發(fā)明者K·J·小艾爾斯,S·斯威森,V·D·托申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
普格县| 北流市| 库车县| 东城区| 时尚| 佛学| 南木林县| 十堰市| 沧源| 平顶山市| 三台县| 金阳县| 镇安县| 璧山县| 自治县| 田阳县| 博客| 龙口市| 盘山县| 郑州市| 顺昌县| 宁明县| 宁乡县| 莒南县| 汝州市| 读书| 太白县| 平武县| 侯马市| 玉田县| 江口县| 花垣县| 康平县| 田东县| 富顺县| 郯城县| 教育| 遂川县| 泰顺县| 唐山市| 博乐市|