專利名稱:用于視頻壓縮的數(shù)據(jù)處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本實用新型一般涉及視頻壓縮,并且更具體地涉及塊視頻壓縮和Dambrackas視頻壓縮系統(tǒng)。
背景技術(shù):
視頻由按空間和時間維度而被布置的像素陣列組成。視頻包含單個幀內(nèi)的空間冗余,以及幀之間的時間冗余。例如,當(dāng)相鄰的像素具有相同或相似的顏色時空間冗余經(jīng)常發(fā)生。當(dāng)像素在多個視頻的幀中保持相同的顏色,或當(dāng)攝像機移動時像素僅偏移(shift)其位置時,時間冗余經(jīng)常發(fā)生。通過在傳送期間去除這些冗余,被用于表示數(shù)字視頻圖像的數(shù)據(jù)量經(jīng)過視頻壓縮而被減少,有效地減少在通信信道上傳送所述視頻所需的帶寬。視頻壓縮是磁盤空間、視頻質(zhì)量和解壓縮硬件的成本之間的折衷(tradeoff),其中最終目標(biāo)是視頻數(shù)據(jù)的快速和準(zhǔn)確的傳送。 存在許多用于執(zhí)行更有效率的視頻壓縮的方案。這些解決方案中的一個是Dambrackas視頻壓縮(DVC)。DVC減少了從客戶端傳送到服務(wù)器以逐幀表示視頻數(shù)據(jù)的數(shù)據(jù)的量。在標(biāo)題為“視頻壓縮系統(tǒng)(Video Compression System) ”的美國專利No. 7321623中更詳細地論述了 DVC,其以引用的方式被合并于此處。DVC是面向行和像素的視頻壓縮的方法,其通常具有五個命令,用于逐巾貞(from frame to frame)表示視頻數(shù)據(jù)。通常,這些命令涉及表示是否應(yīng)從先前巾貞的相鄰像素(上方或到左邊)復(fù)制新巾貞中的像素或連續(xù)像素系列,留下與所述先前幀中的相同像素相同的,構(gòu)造成兩個像素顏色系列,或構(gòu)造成單個像素(made to be series of two pixel colors, or made to be an individual pixel)。該方法提供了傳送變化視頻數(shù)據(jù)的幀的有效方法,而不需要傳送所述幀中的所有視頻數(shù)據(jù)并由此極大地增加了所需帶寬。用于視頻壓縮的另外的常規(guī)系統(tǒng)包括塊壓縮系統(tǒng)。這些系統(tǒng)識別幀中已改變的塊,并僅僅傳送已改變的塊。塊可以是所述幀的一部分,例如是16X16像素或任何其他合適的尺寸。同樣地,取決于塊和幀尺寸,所述幀將由許多塊組成。一些硬件系統(tǒng)具有引擎,例如偵聽引擎,所述引擎檢測幀中的哪些塊已從幀到幀而改變。這些塊壓縮方案可以利用該信息僅發(fā)送針對已改變的塊的視頻信息。然而,這些塊方案沒有實現(xiàn)所述DVC壓縮系統(tǒng)的一些壓縮益處。然而,DVC是不應(yīng)用到塊的面向幀、行和像素的壓縮方案,并且沒有利用引擎的優(yōu)勢,所述引擎逐幀檢測塊中的變化。無論何時視頻屏幕的任何部分改變,DVC編碼和壓縮整個視頻屏幕用于傳送到客戶端。由于DVC編碼和壓縮整個屏幕,所述視頻屏幕上的小的變化經(jīng)常導(dǎo)致比絕對必要的數(shù)據(jù)字節(jié)更大量的數(shù)據(jù)字節(jié)被發(fā)送到所述客戶端。常規(guī)的系統(tǒng)沒有實現(xiàn)塊系統(tǒng)和DVC壓縮兩者的優(yōu)勢。因此,存在對實現(xiàn)DVC壓縮以及塊壓縮的優(yōu)勢的視頻壓縮系統(tǒng)的需求。
發(fā)明內(nèi)容[0007]根據(jù)與本實用新型相一致的方法和系統(tǒng),提供了在數(shù)據(jù)處理系統(tǒng)中用于視頻壓縮的方法,所述方法包括檢查當(dāng)前視頻幀和先前的視頻幀,并確定所述當(dāng)前視頻幀中哪些像素從所述先前的視頻幀改變。所述方法進一步包括確定所述當(dāng)前視頻幀中具有若干(anumber of)像素的塊尺寸,并確定所述當(dāng)前視頻幀中哪些像素塊從所述先前的視頻幀改變。所述方法還包括以DVC協(xié)議格式編碼已改變的所述塊的所述像素,以及以所述DVC協(xié)議格式傳送所述已改變的塊的編碼,而不傳送沒有改變的所述當(dāng)前視頻幀的所述塊。在一個實施方式中,提供了在數(shù)據(jù)處理系統(tǒng)中用于視頻壓縮的方法,包括確定所述當(dāng)前視頻幀中具有若干像素的塊尺寸,并且接收已從先前的視頻幀改變的當(dāng)前視頻幀的塊的編碼,而不接收沒有改變的塊。所述方法進一步包括以DVC協(xié)議格式解碼所述塊的所述像素。在另一實施方式中,提供了用于視頻壓縮的數(shù)據(jù)處理系統(tǒng),包括處理器,所述處理器被配置為檢查當(dāng)前視頻幀和先前的視頻幀,確定所述當(dāng)前視頻幀中的哪些像素從所述先前的視頻幀改變,并確定所述當(dāng)前視頻幀中具有若干像素的塊尺寸。所述數(shù)據(jù)處理系統(tǒng)進 一步包括塊改變檢測器,所述塊改變檢測器被配置為確定所述當(dāng)前視頻幀中哪些像素的塊從所述先前的視頻幀改變。所述數(shù)據(jù)處理系統(tǒng)還包括編碼器,所述編碼器被配置為以DVC協(xié)議格式編碼已改變的所述塊的所述像素,并以所述DVC協(xié)議格式傳送所述已改變的塊的所述編碼,而不傳送沒有改變的所述當(dāng)前視頻幀的所述塊。
圖I描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)的示例性KVM計算機系統(tǒng);圖2示出了與與本實用新型相一致的系統(tǒng)和方法相一致的示例性客戶端計算機系統(tǒng);圖3描繪了示出根據(jù)與本實用新型相一致的方法的示例性步驟的流程圖;圖4描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)具有已改變的4個塊的幀。在該例子中,顯示了視頻的幀;圖5描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)具有矩形形狀的4個塊的示例性幀。
具體實施方式
根據(jù)本實用新型的方法和系統(tǒng)將DVC壓縮與塊壓縮相結(jié)合。當(dāng)傳送正在改變的視頻幀時,它們確定哪些塊從塊到塊已改變并傳送關(guān)于所述已改變的塊的信息。在這樣做時,它們將DVC壓縮應(yīng)用于所述已改變的塊,進一步實現(xiàn)附加的壓縮效率并減少要被從幀到幀傳送的數(shù)據(jù)量。因而,關(guān)于所述已改變的塊的信息可以是被傳送的唯一的信息,并且使用DVC命令壓縮所述改變的塊中被傳送的信息,以及結(jié)果,所述被傳送的信息被進一步減少并更有效率地被構(gòu)造(made more efficient)。這些方法和系統(tǒng)可以實現(xiàn)塊壓縮系統(tǒng)和DVC系統(tǒng)的結(jié)合的益處。這些系統(tǒng)提供了提高DVC的方式,以便僅編碼和壓縮已改變的視頻數(shù)據(jù)的塊,并且因此更少字節(jié)的數(shù)據(jù)將被發(fā)送到所述客戶端。這些系統(tǒng)也可以利用檢測從幀到幀的塊改變的引擎以及所述DVC壓縮協(xié)議。如果所述引擎指示塊或塊系列被改變,則不需要評估整個幀也不需要傳送整個幀。也不需要傳送所述DVC命令和關(guān)于整個幀的相關(guān)信息。例如,如果在幀的中間的四個塊的集合已經(jīng)改變,則根據(jù)本實用新型的方法和系統(tǒng)可以傳送僅關(guān)于這四個塊的數(shù)據(jù)。常規(guī)的DVC典型地傳送用于所述整個屏幕的無變化命令直到第一塊的開始,并且隨后其傳送關(guān)于所述塊的第一行的改變,接著傳送從所述塊的末端到所述幀中的行的結(jié)束的無變化命令。隨后對于下一行,所述DVC協(xié)議傳送從該行的開始到第一塊的開始的無變化命令,并且隨后傳送在所述塊中相同行上已發(fā)生的改變,接著傳送從所述塊的末端到所述幀中該行的末端的無變化命令。其可以對所述塊中的每行這樣做,并且隨后傳送從所述塊的末端到所述屏幕的末端的無變化命令。在該場景下,根據(jù)本實用新型的方法和系統(tǒng)識別哪些塊已改變并使用所述DVC命令識別在那些改變的塊中所述信息如何已改變以進一步減少被傳送以識別如何顯示所述新幀的總信息。對于視頻幀中的少量的改變,或?qū)τ谝曨l幀中的多個非連接的改變,所述塊方法能夠?qū)е卤话l(fā)送到所述客戶端的數(shù)據(jù)字節(jié)的數(shù)目的相當(dāng)大的減少。減少被從所述視頻編碼器發(fā)送到所述視頻客戶端的數(shù)據(jù)的字節(jié)數(shù)目減少了網(wǎng)絡(luò)帶寬并使所述解決方案更有效率。來自制造商(諸如Nuvoton和ServerEngines)的一些視頻控制器包括在塊基礎(chǔ)上工作的視頻改變引擎。因為所述協(xié)議是面向行的,現(xiàn)有的DVC沒有完全利用這些改變引擎。通過集成塊方法,DVC可以利用這些改變引擎并通過減少DVC命令的數(shù)量而減少檢測和確定對所述視頻的改變所需的CPU周期并減少網(wǎng)絡(luò)帶寬使用率,所述DVC命令被發(fā)送以指示對所述視頻顯示的改變。DVC相當(dāng)大的推進了減少從所述視頻編碼器被發(fā)送到所述視頻客戶端的數(shù)據(jù)量。根據(jù)本實用新型的方法和系統(tǒng)進一步減少了被處理和發(fā)送的視頻數(shù)據(jù)字節(jié)的數(shù)量。DVC典型地包括五種不同類型的單或多字節(jié)命令構(gòu)造像素(Make Pixel) (MP);構(gòu)造系列(MS);無變化(NC);復(fù)制左邊(CL)和復(fù)制上方(CA)。這些DVC命令和DVC的其他方面在美國專利No. 7321623中被詳細地論述。DVC也在美國專利申請公開No. 2007/0253492中被論述,其以引用的方式被合并入此處。在一個實施方式中,這些命令被使用并且不被修改。在一個實施方式中,根據(jù)本實用新型的方法和系統(tǒng)向DVC增加三個新命令。它們也可以實施對用于DVC的傳輸協(xié)議的改變,典型地是Avocent視頻會話協(xié)議(AVSP)。AVSP可以被修改以便其指示其正在傳輸?shù)腄VC數(shù)據(jù)的幀是否是以像素塊格式。如果所述DVC數(shù)據(jù)是以常規(guī)的幀格式,則不需要對AVSP進行改變。一旦幀的改變的塊被識別,用所述三個新命令編碼所述塊。可以使用其他合適的命令,并且所述命令不被限于這三個。通常,通過單個塊、鄰接的塊的行、或形成矩形的塊的區(qū)域,所述塊在所述命令中被識別。第一新DVC命令,Block Number Singular(BNS)指示正在對于哪個特定塊發(fā)送接下來的DVC數(shù)據(jù)。第二新DVC命令,Block Number Multiple (BNM)指示其應(yīng)用于的起始塊和鄰接的塊(第一塊之后)的數(shù)量,對于這些塊DVC數(shù)據(jù)正被發(fā)送(indicates the starting block and the number of contiguous blocks(after thefirst block) it applies to for which DVC data is being sent)。在一個實施方式中,在左上方中的O處開始并且從左向右以及隨后從上到下進行而對所述塊進行編號。每個塊的尺寸可以在DVC傳送的開始之前被確定并且可以是諸如AVSP的包圍協(xié)議(encompassingprotocol)的一部分,在所述包圍協(xié)議上DVC數(shù)據(jù)被發(fā)送。第三新命令,Block NumberRectangular (BNR)指示形成矩形塊的起始塊和水平維度以及垂直維度上的塊的數(shù)目。典型地,塊的大小可以是16 X 16像素或32 X 32像素,但也可以使用任何其他大小。圖I描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)的示例性KVM計算機系統(tǒng)。這些系統(tǒng)可以在客戶端和目標(biāo)計算機系統(tǒng)之間的網(wǎng)絡(luò)上實現(xiàn)DVC視頻壓縮。KVM系統(tǒng)100在圖I中被示出,其中一個或多個目標(biāo)系統(tǒng)114-1. . . 114-k由一個或多個客戶站(clientstations) 124-1,124-2,. . . 124-r (統(tǒng)稱124)控制或訪問。每個目標(biāo)系統(tǒng)114包括目標(biāo)計算機102以及相關(guān)聯(lián)的和附加的本地單元116。雖然一些客戶站可以僅包括視頻顯示器108和客戶單元,每個客戶站124通常包括客戶單元126、鍵盤106、視頻監(jiān)視器108和鼠標(biāo)(或類似的點擊式設(shè)備)110。特定目標(biāo)計算機102-i的操作可以在任何客戶站124的所述視頻監(jiān)視器108上被遠程地查看,并且所述客戶站124的所述鍵盤106和鼠標(biāo)110可以被用于向所述目標(biāo)計算機102-i提供鍵盤和鼠標(biāo)輸入。如在圖I中所示的,在KVM系統(tǒng)100中,客戶站124能夠控制或訪問多于一個的目標(biāo)計算機。注意圖I中的目標(biāo)系統(tǒng)和客戶站之間所畫的線表示那些方(those sides)之間潛在的(并且不是必然實際存在的)有線或無線(例如RF)鏈接。因此,每個目標(biāo)計算機102可以由多于一個的客戶站124控制或訪問,并且每個客戶站124可以控制多于一個的目標(biāo)計算機102。在一個實施方式中,所述客戶站可·以被置于所述目標(biāo)系統(tǒng)的幾百英尺內(nèi)。此外,在一定的環(huán)境下(in certain contexts),所述目標(biāo)系統(tǒng)被認為是視頻傳送器或發(fā)送單元,并且所述客戶系統(tǒng)是視頻接收單元或接收器,盡管兩個單元傳送和接收。通常,視頻從目標(biāo)系統(tǒng)行進到客戶站,而鍵盤和鼠標(biāo)數(shù)據(jù)從客戶站移動到目標(biāo)系統(tǒng)。如在圖I中所示的,本地或目標(biāo)系統(tǒng)114包括目標(biāo)計算機102和相關(guān)聯(lián)的本地單元116。所述本地系統(tǒng)114也可以包括鍵盤118、鼠標(biāo)(或其他點擊類型的設(shè)備)120和本地監(jiān)視器122,每個均被直接連接到所述本地單元116。所述客戶站124包括客戶單元126。所述本地或目標(biāo)計算機102可以是計算機、服務(wù)器、處理器、或處理器或邏輯元件的其他集合。通常,目標(biāo)計算機可以包括任何處理器或處理器的集合。舉例來說,目標(biāo)計算機可以是在制造或加工生產(chǎn)線上被置于(或被嵌入)服務(wù)器、臺式計算機(諸如PC、蘋果Macintosh或類似物)、自助式服務(wù)設(shè)備(kiosk)、ATM、交換機、機頂盒、器具(諸如電視、DVR、DVD播放器以及類似物)、車輛、升降機中的處理器或處理器的集合或邏輯元件。目標(biāo)計算機的集合可以是機架中的服務(wù)器的集合或一些其他集合,并且它們可以是彼此獨立的或在網(wǎng)絡(luò)中被彼此連接或由一些其他結(jié)構(gòu)彼此連接。所述本地和客戶監(jiān)視器122、108可以是數(shù)字的或模擬的。所述本地單元116是例如印刷電路板(“PCB” )的設(shè)備或機構(gòu),所述設(shè)備或機構(gòu)被本地安裝到所述目標(biāo)/本地計算機102。該設(shè)備可以是接近于所述計算機但在所述計算機的外部,或者可以被安裝在所述計算機的外殼內(nèi)。在一個實施方式中,不管所述本地單元116的定位,在所述目標(biāo)計算機102和所述本地單元116之間存在直接的電連接。通過無線連接鏈路134,所述本地/目標(biāo)系統(tǒng)114上的各種組件無線地或通過有線連接與所述客戶站124上的組件通信。在一個實施方式中,所述無線連接或鏈路134遵循IEEE802. Ila標(biāo)準(zhǔn)協(xié)議,盡管本領(lǐng)域技術(shù)人員將會認識到其他協(xié)議和通信的方法是可能的。所述本地單元116接收本地鼠標(biāo)和鍵盤信號(例如做為PS2信號)。這些信號由所述本地單元116提供給所述目標(biāo)計算機102。所述目標(biāo)計算機102產(chǎn)生視頻輸出信號,例如RGB (紅、綠、藍)信號,所述信號被提供給所述本地單元116,所述本地單元116而又提供所述信號以驅(qū)動所述本地監(jiān)視器122。所述目標(biāo)計算機102也可以產(chǎn)生被提供到所述本地單元116的音頻輸出信號。如所述的,所述目標(biāo)計算機102不需要具有鍵盤、鼠標(biāo)或監(jiān)視器,并且可以完全由客戶站124控制。本地單元116傳送圖像數(shù)據(jù),用于傳送到客戶站(例如通過客戶單元126)。在被傳送之前,所述數(shù)據(jù)中的一些或所有可以被壓縮。另外,本地單元116可以(從客戶站124)接收鼠標(biāo)和鍵盤數(shù)據(jù),所述鼠標(biāo)和鍵盤數(shù)據(jù)隨后被提供給所述本地/目標(biāo)計算機102。所述目標(biāo)計算機102可以執(zhí)行所述接收的數(shù)據(jù)并可以在其本地監(jiān)視器122上顯示輸出。所述客戶站124通過有線或無線連接(例如802. Ila無線連接134)從所述目標(biāo)計算機102的所述本地單元116接收視頻數(shù)據(jù)。所述客戶單元126接收來自所述本地單元116的(可能壓縮的)視頻數(shù)據(jù)(不是所有所述數(shù)據(jù)需要被壓縮)。所述客戶單元126解壓縮(當(dāng)需要時)來自所述本地單元116的所述視頻數(shù)據(jù)并將其提供給合適的再現(xiàn) (rendering)單元,例如提供給所述客戶監(jiān)視器108,所述再現(xiàn)單元顯示所述視頻數(shù)據(jù)。另夕卜,客戶鼠標(biāo)110和鍵盤106可以被用于產(chǎn)生合適的信號(例如PS2信號),所述合適的信號可以通過客戶單元126而被傳送到本地單元116,用于在目標(biāo)計算機102上執(zhí)行。圖2示出了和與本實用新型相一致的系統(tǒng)和方法相一致的示例性客戶計算機系統(tǒng)??蛻粲嬎銠C124包括總線203或用于通信信息的其他通信機制,以及與總線203相耦合用于處理所述信息的處理器205。處理器205或另一視頻處理組件可以實現(xiàn)本文所述的塊和DVC編碼和解碼??蛻粽?24也可以包括與客戶計算機124相似的組件,包括所提到的所述組件中的一些或所有??蛻粲嬎銠C124也包括被耦合到總線203用于存儲要由處理器205執(zhí)行的信息和指令的主存儲器207,諸如隨機訪問存儲器(RAM)或其他動態(tài)存儲設(shè)備。此外,主存儲器207可以被用于存儲在要由處理器205執(zhí)行的指令的執(zhí)行期間的臨時變量或其他中間信息。主存儲器207包括程序213,用于實現(xiàn)與根據(jù)本實用新型的方法和系統(tǒng)相一致的處理。客戶計算機124進一步包括被耦合到總線203的只讀存儲器(ROM) 209或其他靜態(tài)存儲設(shè)備,用于存儲用于處理器205的靜態(tài)信息和指令。存儲設(shè)備211 (諸如磁盤或光盤)被提供并被耦合到總線203,用于存儲信息和指令。根據(jù)一個實施例,處理器205執(zhí)行包含在主存儲器207中的一個或多個指令的一個或多個序列。這樣的指令可以被從另一個計算機可讀介質(zhì)(諸如存儲設(shè)備211)讀入主存儲器207中。主存儲器207中的指令序列的執(zhí)行導(dǎo)致處理器205執(zhí)行本文所述的處理。多處理布置中的一個或多個處理器也可以被用于執(zhí)行包含在主存儲器207中的指令序列。在可替代的實施例中,硬線電路可以被用于代替軟件指令或與軟件指令相結(jié)合。因此,實施例不限于硬件電路和軟件的任何特定組合。盡管相對于主存儲器207和存儲設(shè)備211進行描述,與本實用新型相一致的方法和系統(tǒng)的指令和其他方面可以駐留(reside)在現(xiàn)在已知的或以后被發(fā)現(xiàn)的另一計算機可讀介質(zhì)上,諸如軟盤、軟磁盤、硬盤、磁帶、CD-ROM、磁性物、光學(xué)或物理介質(zhì),RAM、PR0M、以及EPROM、FLASH-EPR0M、任何其他存儲芯片或存儲盒(cartridge)、或計算機能夠從其中讀取的任何其他介質(zhì)。此外,在美國專利7321623中描述的任何系統(tǒng)可以與根據(jù)本實用新型的方法和系統(tǒng)一起使用,和/或適宜于與根據(jù)本實用新型的方法和系統(tǒng)一起使用。[0034]圖3描繪了示出根據(jù)與本實用新型相一致的方法的示例性步驟的流程圖。下面將結(jié)合圖4和圖5論述圖3的步驟。圖4描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)具有已改變的4個塊的幀。在該例子中,視頻的幀被顯示。所述幀被分成許多相等大小的塊,例如16X16像素。在該圖中,僅顯示了已從先前的視頻幀改變的塊并且所述塊可以不是按所示的比例??梢源嬖诒人镜膲K更多的已改變或未改變的塊。例如,所述先前的幀被發(fā)送,并且隨后新的幀僅在塊402-408中改變。為了編碼所述用于傳送的視頻幀,偵聽引擎檢測所述已改變的塊402-408(步驟302)。隨后,所述系統(tǒng)確定哪個命令適合于每個已改變的塊或塊的集合(步驟 304)。特別地,圖4描繪了根據(jù)與本實用新型相一致的方法和系統(tǒng)具有矩形形狀的4個塊的示例性幀。在該例子中,所述偵聽引擎檢測到所述塊402-408已從視頻幀400之前的視頻幀改變(步驟302)。所述系統(tǒng)可以檢查以查看已改變的塊是否是矩形的已改變的塊的 集合的開始(步驟306)。在檢測到矩形格式的塊(例如塊402-408)之后,其以所述DVC協(xié)議編碼塊的所述矩形盒中的像素。其這樣做好像所述矩形盒中的各個塊是一個單個的更大的塊。在該情況下,所述Block Rectangular命令被使用并且識別所述盒402-408中的所述塊(步驟308)。應(yīng)該注意的是盡管圖4中所示的塊形成正方形,任何矩形可以被檢測。在一個實施方式中,通過指示開始的塊號(例如塊402),接著水平方向上的塊的數(shù)量(例如2),以及垂直方向上的塊的數(shù)量(例如2),所述偵聽引擎識別所述塊。例如,所述命令可以包括用于水平方向上具有2塊和垂直方向上具有2塊的塊402的Block Rectangular的402-408,其中所述塊是形成具有在所述幀中被檢測到的變化的矩形塊的402-408。使用所述DVC協(xié)議,所述塊中的像素(例如32X32像素)被編碼(步驟310)。該編碼產(chǎn)生一系列各種合適的DVC命令,所述DVC命令描述了要被再現(xiàn)的所述視頻數(shù)據(jù),并且在一個實施方式中,恰是由塊402-408形成的該矩形塊中的所述像素。這些DVC命令可以被附加到所述Block Rectangular命令(步驟312),所述Block Rectangular命令指示哪些塊正在改變。這傳送所述信息以通過所述接收組件再現(xiàn)所述塊。在一個實施方式中,所述系統(tǒng)為所述幀中已改變的所有矩形塊的集合重復(fù)該編碼(步驟306)。當(dāng)所述編碼完成或當(dāng)所述編碼進行時所述系統(tǒng)可以將所述編碼發(fā)送到所述接收組件(步驟314)。所述系統(tǒng)檢查更多改變的塊(步驟316),并且如果存在更多改變的塊,則其確定要用于那些塊的命令(步驟304)。圖5描繪了具有4個改變的塊的示例性幀,所述4個改變的塊包括一個單個的改變的塊和排成行的三個改變的塊。在該例子中,通過檢測改變的塊在改變的塊的行中是第一塊,所述系統(tǒng)檢測一行已改變的塊504-508 (步驟318)。在檢測一行塊之后,其以所述DVC協(xié)議編碼所述行的塊中的像素。其這樣做好像所述行中的各個塊是一個單個的更大的矩形塊。在該情況下,所述Block Multiple命令被使用并且識別所述行中的塊404-408(步驟320)。在一個實施方式中,通過指示開始的塊號(例如塊504),接著在所述順序行中塊的數(shù)量(例如3),其這樣做。例如,所述命令可以包括用于具有全部3塊的塊號60的BlockMultiple,其中所述塊是504-508,是所述幀中第60、第61和第62塊。使用所述DVC協(xié)議,所述塊中的所述像素(例如16X48像素)被編碼(步驟322)。該編碼產(chǎn)生一系列各種合適的DVC命令,所述各種合適的DVC命令描述了要被再現(xiàn)的視頻數(shù)據(jù),并且在一個實施方式中,恰是由塊504-508形成的該矩形塊中的所述像素。這些DVC命令可以被附加到所述Block Multiple命令(步驟324),所述Block Multiple命令指示哪些塊正在改變。這編碼并傳送所述信息以通過所述接收組件再現(xiàn)所述塊。在一個實施方式中,所述系統(tǒng)為所述幀中已變化的所有鄰接的塊重復(fù)該編碼(步驟318)。當(dāng)所述編碼完成或當(dāng)所述編碼進行時所述系統(tǒng)可以將所述編碼發(fā)送到所述接收組件(步驟314)。所述系統(tǒng)檢查更多的已改變的塊(步驟316),并且如果存在更多的已改變的塊,則其確定要用于那些塊的命令(步驟304)。對于所述單個的已改變的塊502,所述系統(tǒng)用Block Single命令編碼所述改變(步驟326),所述Block Single命令指示哪個單個的塊已改變。例如,該命令可以包括用于于塊號45的Block Single (當(dāng)塊502是所述幀中的塊號45時)。使用所述DVC協(xié)議,所述塊中的像素(例如16 X 16像素)被編碼(步驟328)。這產(chǎn)生一系列各種合適的DVC命令(例如,構(gòu)造像素(MP)、構(gòu)造系列(MS)、無變化(NC)、復(fù)制左邊(CL)、以及復(fù)制上方(CA)),所述各種合適的DVC命令描述了要被再現(xiàn)的視頻數(shù)據(jù),并且在一個實施方式中,恰是該塊502中的像素。(可替代地,特定的塊之外的像素可以被用作用于DVC復(fù)制命令的參考。例如,如果恰在所述塊的左上角中的像素的左邊的像素與所述塊的第一行中的第一個像素相 同,則可以對所述塊中第一個像素執(zhí)行拷貝左邊命令)。這些DVC命令可以被附加到BlockSingle命令(步驟330),所述Block Single命令指示哪個塊正在改變。這編碼并傳送所述信息以通過所述接收組件再現(xiàn)所述塊。在一個實施方式中,所述系統(tǒng)為所述幀中已改變的所有單個的塊重復(fù)該編碼。當(dāng)所述編碼完成或當(dāng)所述編碼進行時所述系統(tǒng)可以將所述編碼發(fā)送到所述接收組件(步驟314)。所述系統(tǒng)檢查更多的已改變的塊(步驟316),并且如果存在更多的已改變的塊,則其確定要用于那些塊的命令(步驟304)。所述接收組件可以接收所述命令(例如Block Single、Block Multiple、BlockRectangular),并且相應(yīng)地解碼它們以再現(xiàn)所述視頻用于顯示。所述塊命令之后的指示符被解釋以確定哪些塊正在被接收,并且隨后所述解碼器可以使用所述DVC命令,其跟隨解碼這些已改變的塊中的像素。各個實施例的先前的描述提供了例示(illustration)和說明,但并不意在是窮舉的或?qū)⒈緦嵱眯滦拖拗圃谒_的精確形式。根據(jù)上面的教導(dǎo),修改和變化是可能的,或者依照本實用新型,根據(jù)實踐,修改和變化可以被獲得。將會被理解的是本實用新型意在覆蓋包括在隨附的權(quán)利要求的精神和范圍內(nèi)的各種修改和相等同的配置。
權(quán)利要求1. 一種用于視頻壓縮的數(shù)據(jù)處理系統(tǒng),包括 處理器,所述處理器包括 用于檢查當(dāng)前視頻幀和先前的視頻幀的單元; 用于確定所述當(dāng)前視頻幀中哪些像素從所述先前的視頻幀改變的單元; 用于確定所述當(dāng)前視頻幀中具有若干像素的塊尺寸的單元; 塊改變檢測器,所述塊改變檢測器確定所述當(dāng)前視頻幀中哪些像素塊從所述先前的視頻幀改變;以及 編碼器,所述編碼器以DVC協(xié)議格式編碼已改變的所述塊的所述像素,并且以所述DVC協(xié)議格式傳送所述已改變的塊的所述編碼,而不傳送所述當(dāng)前視頻幀的未改變的塊。
專利摘要提供了用于視頻壓縮的數(shù)據(jù)處理系統(tǒng)。所述系統(tǒng)包括處理器,所述處理器包括用于檢查當(dāng)前視頻幀和先前的視頻幀的單元;用于確定所述當(dāng)前視頻幀中哪些像素從所述先前的視頻幀改變的單元;用于確定所述當(dāng)前視頻幀中具有若干像素的塊尺寸的單元;塊改變檢測器,所述塊改變檢測器確定所述當(dāng)前視頻幀中哪些像素塊從所述先前的視頻幀改變;以及編碼器,所述編碼器以DVC協(xié)議格式編碼已改變的所述塊的所述像素,并且以所述DVC協(xié)議格式傳送所述已改變的塊的所述編碼,而不傳送所述當(dāng)前視頻幀的未改變的塊。
文檔編號H04N7/26GK202713525SQ20112033220
公開日2013年1月30日 申請日期2011年8月24日 優(yōu)先權(quán)日2010年8月24日
發(fā)明者C·S·西格曼, D·惠勒 申請人:阿沃森特公司