專利名稱:包括視頻數據壓縮的數據壓縮方法
發明人Andrwy V.Zurov(俄羅斯圣彼得堡)、Sergey V.Novikov(俄羅斯圣彼得堡)、Alexander P.Tanchenko(俄羅斯圣彼得堡)。
通訊地址俄羅斯圣彼得堡Pr.20-282,Kolomyazhsky 197349并入的參考文獻Shapiro的美國專利第5.321.776號以及Pearlman等人的5,764,807號,這兩篇專利通過整體引用結合于此。
還參考了Andrey V.Zurov等人2005年6月29日提交的題為“METHOD OFVIDEO DATA TRANSMITTING”(視頻數據傳輸方法)的美國專利申請第號。
本申請要求2004年6月30日提交的臨時專利申請第60/584,102的優先權。
上述申請的公開通過引用整體結合于此。
描述發明領域本發明涉及數據壓縮技術領域,尤其可用于圖像和視頻數據壓縮。
背景技術:
目前,使用了不同的裝置和方法來進行數據壓縮。當解決照片或視頻格式的圖像數據以及視頻數據的傳輸的問題時,對這種還是那種壓縮方法的選擇是由對所傳送的圖像的質量的一組要求以及數據傳輸速率限制來確定的。如果使用低容量的信道來傳輸圖像,則選擇最優數據壓縮方法的一個主要因素是確定一般的數據流中的重要數據以及重新組織所傳送的信息以使重要的圖像數據在使用該傳輸信道發送時能獲得優先級的能力。一般而言,任何數據壓縮方法應當在很大程度上降低所傳送的信息的豐富程度以使用形成、傳送以及隨后記錄數據流所需的最少的可能比特數,用最高的真實度來傳送數據。
當今,實用的最廣闊的前景具有基于空間尺度子帶中的原始圖像分解系數的金字塔形表示的圖像數據壓縮方法。這一金字塔形表示可借助多解分析來實現。上述分析的結果是創建一分層結構樹,它具有一個根以及連接到它的最終數量的節點,稱為子孫。作為分解的基礎,使用了小波函數族(參見Jerome M.Shapiro的“An embedded Wavelet Hierarchical Image Coder”(一種嵌入式小波分層結構圖像編碼器),聲學、語音和信號處理國際研討會,1992年3月)。作為小波變換應用的結果接收的圖像頻譜由于應用了該基礎的特性而允許不僅獲得關于一般的原始數據數組的信息,還能獲得關于其單獨部分的信息。應用于圖像的該特征允許對圖像的單獨部分使用受控數據壓縮的方法。
圖像數據分解的頻譜系數的特性是當空間頻率增大時頻譜系數趨向于減小在統計上是真實的。此處最簡單但明顯不是最優的壓縮方法是通過用設置的閾值來彼此比較以及下述對系數的聲明以對圖像頻譜系數數組進行濾波,這些系數的值小于閾值,從而對以下編碼是“不重要的”。存在使用對“重要”頻譜系數的更深入分析的方法。特別地,有一種基于對樹節點的一致檢查以及對下列各項的檢測的數據壓縮方法(1994年6月14日出版的美國專利#5321776)在本節點中的分解系數重要,即該系數超過閾值層且為正的情況下的所謂的“正號”;指示該節點中的頻譜系數重要且為負的“負號”;對于其頻譜系數不重要的節點的孤立零號,即該節點的頻譜系數未超過閾值層,但具有至少一個子孫,而該子孫的頻譜系數超過閾值層;以及對于這樣的節點的零樹號其頻譜系數不重要且沒有其頻譜系數對該閾值層重要的單個子孫。
為提高壓縮程度和數據處理速率,引入了將分層結構樹劃分成根據分層結構樹分類的多個組的方法(見1998年6月9日出版的美國專利#5764807)。在該專利中,描述了一種數據編碼方法,根據該方法,當從根開始到子孫一致地檢查樹時,將每一節點中的分解頻譜系數與閾值的當前值進行比較;之后將它們添加到以下三個組之一重要組,即超過閾值系數;不重要系數組,即其值小于閾值的系數;以及不重要子孫群組。所述多個不重要系數群組的特征是用其自己的根節點以及在頻譜子帶內創建的內部分層結構樹來刻畫的。該方法包括在根節點子孫的重要子孫的頻譜至少等于所設置的閾值的情況下對每一不重要系數群中的根節點子孫的重要性的核對操作。而且,對于不重要系數群的具有至少一個重要子孫的每一根節點,在根節點子孫的重要子孫的頻譜系數至少等于所設置的閾值的情況下對根節點子孫的子孫核查重要性。
所述方法的核心概念是“零樹”的概念。如果與包括根的所有樹節點有關的頻譜系數都是不重要的,則該樹被認為對于該閾值為零。這兩種方法都考慮了閾值的設置,并對每一組將整個類樹結構編碼。而且,由于對于零樹的編碼僅需編碼其頂點的坐標的這一事實而實現了數據壓縮;這就是數據分解的頻譜系數的分層結構所包含的零樹越多,該結構就能被越緊湊和有效地編碼的原因。
在公知方法的幫助下對數據流的編碼具有在使用低容量信道,例如無線通信信道傳送信息時色彩最為閃爍地呈現的缺點。該缺點的本質是在傳送之后恢復的圖像的低質量。該缺點的原因是當實現上述方法時,所傳送的流是由頻譜分解系數的原始分布形成的,而沒有任何預先的重組。此外,在上述方法中,不同尺度以及在不同頻率子帶中的頻譜系數是憑等的。最后一個原因意味著當形成數據流時,不管它們所屬的子帶是什么,都首先發送最大的系數。在這一方法中,如果在高頻子帶中集中了大量的大系數(如果圖像包含許多小的對比度細節則會發生這一情況),則它們它們首先進入向外的流中。從而,在流的開始處將傳送通常幾乎不那么重要的小對比度細節的數據;主要的低頻數據以及較重要的改變會在稍后進入流中,并且會丟失或以較低的準確度來傳送。
本發明的目的是改善所傳送的圖像的質量。
發明概述所要求保護的方法是一種在小波子帶濾波器的幫助下對原始圖像頻譜分解系數的分層結構系統的編碼過程。作為因此應用于圖像的行和列的小波變換的結果,形成頻譜系數子帶D。在每一分解層連續地向低頻子帶應用這一變換形成了一系數分層結構。該分層結構中的每一系數對應于具有較高的精確度的系數。而且,對應于前一分解層的系數被稱為“祖先”;對應于下一分解層且與“祖先”有關的系數被稱為其“子孫”。頻譜分解的系數是實數,且用模和符號來表征。當在所要求保護的方法中編碼數據時,形成原始圖像分解頻譜系數符號的位數組Z;如果分解D的相應的頻譜系數為非負,則該數組分量具有零值。在分解的相應頻譜系數為負的情況下,符號相同的數組分量等于1。
然后,根據重要性準則評估分解系數,為本申請的目的,該重要性準則是一組帶索引的閾值數組Ti,其中i是數組索引。數組Ti是基閾值數組。當數組索引增加1時,該組中的數組分量的值減小為二分之一,即Ti=T0/2i。所要求保護的方法的本質屬性是對頻譜系數數組的重組過程。為實現這一過程,形成所謂的系數的“匹配數組(rival array)”M。該數組的形成是通過從對應于最后一個分解層且沒有子孫的樹節點到其祖先的連續轉移來實現的。在該轉移中,對祖先給予的值為在分解的所有頻譜子帶處的節點的系數子孫中的最大系數乘以相應閾值T0的值。
因此,所要求保護的方法包含帶索引的位數組集Si形成的過程,該數組的分量調節了向流發送數據的優先順序。當樹節點中匹配數組M的頻譜系數的值小于閾值Ti時,該數組的分量被聲明為零。在匹配數組的頻譜系數的值超過或等于閾值的情況下,該數組的分量被聲明為等于1。然后將原始圖像分解的頻譜系數D的數組變換成由數組集Bi標識的位碼,之后形成所得的數據流作為上述數組的一組系數。
為考慮到所述系數之間的相關而進行額外的數據壓縮的目的,形成帶索引的向量數組集Vi,該數組的分量對于任何所選的樹節點都是給定節點的子孫上的Si和Bi數組的分量以及Bi=1的給定節點的子孫上的Z數組的分量的分量。然后,形成上述數組的數據流,并為消除冗余度Bi的目的使其經受熵編碼。
此外,在所要求保護的本發明中,為了改善所傳送的圖像的質量,建議通過在每次轉移到更高層的頻譜子帶使將其系數的值增大為兩倍來形成基閾值數組。
所要求保護的本方法的連續操作以數據重組以及增加零樹的數量為代價,并且還以將圖像頻譜低頻成分歸于流開始為代價,保障了圖像數據傳輸的質量。
附圖簡述
圖1示出了根據本發明的原理成為子帶的的多級頻譜系數的示意圖。
圖2示出了原始圖像連續分解為頻譜子帶的操作。
圖3-6示出了根據本發明的操作的不同方面的框圖。
圖7示出了基閾值數組T0的分量的結構。
圖8-21示出了本發明的替換和/或詳細概念。
發明詳細描述假設具有2N×2N像素的圖像。原始圖像擁有極高的空間容量,并且描繪了最小的細節。使用小波函數基應用圖像的行和列的頻譜分解并將每一頻譜劃分成低頻和高頻成分,得到大小為2N-1×2N-1的四個頻譜系數數組。這些數組包含行和列分解的低頻系數,包括在LL1數組中;行分解的低頻系數和列分解的高頻系數,包括在LH1數組中;行分解的高頻系數和列分解的低頻系數,包括在HL1數組中;以及行和列分解的高頻系數,包括在HH1數組中。LL1數組可經受進一步的分解稱為低-高頻頻譜子帶;結果,將形成四個數組LL2、LH2、HL2和HH2,其大小為前一個的二分之一,即2N-2×2N-2。頻譜子帶形成的過程反映了連續的轉移以檢查原始圖像頻譜的高和低頻譜系數。該過程在LLN數組的大小變為等于1×1時的第N步終止。上述頻譜變換的示意圖在圖1中示出,且子帶的連續形成在圖2中示出。
在圖2中,示出了通過借助濾波器2對行中的低空間頻率濾波并借助濾波器8對行中的高空間頻率濾波對原始的二維數據數組1的連續變換。然后,通過使用濾波器4對列中的低空間頻率濾波并使用濾波器6對列中的高空間頻率I濾波來變換從濾波器2輸出的信號,并通過使用濾波器10對列中的低空間頻率濾波并使用濾波器12對高空間頻率濾波來變換從濾波器8輸出的信號。在濾波器4、6、10和12的輸出處,形成數據數組LL、HL、LH和HH,應當注意,每一數組的大小是原始數據數組大小的二分之一。此外,上述過程應用于LL數組,直到低頻子帶的大小為可能的最小值。作為連續的頻譜分解的結果接收的對象看似為分層結構樹,其節點中的分量以子孫-祖先關系彼此連接。而且,與祖先有關的分解系數總是對應于比與子孫有關的系數更低頻的頻譜成分。
作為用于原始圖像的頻譜分解的函數,在本發明中建議使用小波子帶濾波器。從用所設置的壓縮系數傳送的圖像的質量觀點來看,最理想地選擇小波函數基是一項困難的任務。已知有多種在選擇基時要遵循的準則。對于這些函數,涉及函數的平滑度、逼近的準確度、濾波器的頻率選擇性和能量分布。
當對原始圖像的頻譜分解的系數值D進行編碼時,必須考慮到系數的絕對值及其符號。為了將關于頻譜系數符號的信息傳送到數據流中,在所要求保護的方法中形成一單獨的位數組Z,其分量在D系數為非負的節點中等于0,而相應地在D系數小于0的節點中等于1。
為了進行有效的數據壓縮并保持所傳送的圖像的高質量,必須重組D系數數組并將其轉換為位表示。為這些目的,形成帶索引的閾值數組集Ti,其中一個數組是基閾值數組T0。對每一單獨的樹節點,通過關系Ti=T0/2i將Ti和T0數組的分量值連接起來。對于LLN頻譜子帶的節點,T0數組的分量值在編碼算法中確定。對于對應于前一分解層的頻譜子帶的節點,T0數組的分量值乘以2。以此方式,在根據重要性準則重組頻譜系數數組時,保證了區分圖像頻譜的高頻成分的條件。
為實現上述根據所要求保護的本發明的重組過程,形成所謂的系數的“匹配數組”M。該數組的形成是通過從對應于分解的最后一層且沒有子孫的樹節點連續轉移到其祖先來進行的。在該轉移中,對祖先給予這樣的M值,樹節點中的比率M/T0等于在對相應閾值T0的值的所有頻譜分解子帶劃分節點D的子孫系數時接收到的最大數。匹配數組的形成在所要求保護的數據壓縮方法中對于改善所傳輸的圖像的質量起關鍵作用。
為了確立是否給定節點的子孫中的閾值Ti具有重要閾值,形成帶索引的位數組集Si。如果給定樹節點中匹配數組M的頻譜系數的值小于閾值Ti,則該數組的分量被聲明為零。如果樹節點中匹配數組的頻譜系數的值等于或超過閾值,則給定數組的分量被聲明為等于1。
此外,原始圖像分解的頻譜系數D被變換成由數組Bi的集合表示的位碼。對應于給定節點的D數的這些數組的分量值使用公式Bi=[2{|D|/Ti-1}]來計算,其中花括號指的是取一個數的小數部分的運算,而方括號指的是取一個數的整數部分的運算。
為了實現根據本發明的原理的數據編碼,必須確定樹檢查的順序。建議從較低的分解層開始向較高的分解層來檢查樹節點,且在每一樹層中,建議根據用于該層設置的檢查順序來檢查節點。樹結構和其節點的檢查順序在編碼和解碼過程中被認為是固定的。
在圖3中,示出了當在樹檢查期間轉移到下一層的連續操作。在第一處31,設置當前節點和閾值索引值i。然后在32處,確定在所選擇的閾值層上是否存在根據樹檢查的方向在當前節點之后的下一節點。在存在的情況下,在下一步33,將下一層認為是當前層。之后,在34處,進行對應于當前閾值層處的當前節點和前一閾值層處的祖先的位數組S值的核查。即,根據樹檢查方向,當前節點的下一節點被認為是當前節點之后的第一個節點,對該節點,要么值Si=0且對其祖先值Si-1=1,要么值Si=1且對其祖先值Si-1=0。如果滿足條件34,則認為滿足了轉移到下一節點。如果不滿足條件34,則再一次在32處確定在所選擇的閾值層上是否有根據樹檢查方向在當前節點之后的下一節點。
在圖4-6中,描述了根據本發明的原理的數據數組編碼的處理。在開始編碼之前,選擇集合中的L個閾值數組,這等于頻譜分解D的最大系數中的位數。在第一步41,認為閾值索引的值i=0,且將當前節點認為是樹的根,選擇閾值T0以使S0=1且S-1=0。然后在42處,將樹的根中計算的向量數組V0的值傳遞到流。之后,進行根據以上在圖3中描述并示出的原理對下一樹節點43的搜索和轉移。在對下一節點的存在進行核查44之后,如果存在,則將下一節點聲明為當前節點45,并且編碼過程從操作42的輸入開始。在未檢測到下一節點的情況下,這例如在樹的邊緣之處是可能的,則進行向下一閾值層的轉移46,并且將樹的根聲明為當前節點51。在步驟52和54中,在檢測到下一節點之后,進行對下一樹節點的搜索和轉移。然后,將下一節點聲明為當前節點54。然后,連續地實現對當前節點的祖先55和當前節點55a本身的Si-1值的核查。在這一情況下,當前節點的祖先的Si-1值等于1,而當前節點的Si-1值等于0,Si數組的值被傳遞到給定節點的數據流56。然后,實現對該值的核查57。在這一情況下,當前節點的Si值等于1,且Vi數組的值被另外傳遞到給定節點的數據流58。之后,根據以上在圖3中描述并示出的原理,實現對下一樹節點的搜索和轉移52、53。
在這一情況下,作為執行操作53的結果,未確定下一樹節點,且將樹的根聲明為當前節點61。然后,根據所設置的檢查順序連續地檢查樹節點,并且確定在當前節點之后是否有根據檢查方向62的下一節點。在存在這一節點的情況下,在下一步63,確定下一節點為當前節點。之后,在步驟64處,對與當前節點的祖先相對應的Si-1位數組的值進行核查。在當前節點的祖先的Si-1值等于1的情況下,將Bi數組的值傳遞到當前節點的數據流65。然后,對給定節點核查1≤|D|/Ti<2的條件。如果滿足給定條件,則將給定節點的Z數組的值傳遞到數據流。在相反的情況下,將編碼過程返回到操作62的輸入。
在根據樹檢查方向在當前節點之后的下一節點不存在的情況下,或者如果當前節點的祖先的Si-1等于0,則進行下一閾值層的轉移68。然后,基于下一依次的閾值層的索引i未超過值L的條件,編碼過程返回到操作51的輸入。
在圖7中,示出了閾值數組T0基分量的結構。為改善所傳送的圖像質量,建議通過在每次轉移到更高層的頻譜子帶時使系數值加倍來形成基閾值數組。
繼續關注本發明,以下公開了如圖8所示的Comet編解碼器工作計劃,其中Comet編解碼器由三個塊組成視頻編解碼器音頻編解碼器網絡內核所有這三個塊彼此交互以保證同步的音頻和視頻編碼并用于在改變通信信道或終止連接時自動調整編解碼器。
視頻編解碼器視頻編解碼器實現了使用視頻流的小波的編碼和解碼。給定處理器具有以下工作周期預處理關鍵幀的編碼補償模型關鍵和補償幀的解碼后處理預處理-用于以后的編碼的必需的視頻圖像準備,即質量增強(在可從前一幀統計量獲得的基礎上)。
關鍵幀的編碼是在所開發的使用小波技術的視頻壓縮方法的基礎上進行的。
補償方法由于僅傳送幀之間的差異的這一事實而允許傳送更多的幀。該方法應當與預處理密切相關。補償方法也應當與網絡內核密切相關,因為它們主要依賴于網絡干擾。補償幀的編碼也是在小波技術的基礎上進行的。
關鍵和補償幀的解碼是使用利用小波技術的反向編碼來實現的。
后處理的目標在于通過向視頻圖像應用濾波器以進行清晰度和色彩頻譜的改善的視頻質量增強。
1.圖9中示出了關鍵幀打包打包過程由圖9所示的七個階段構成。
圖10中階段1.1的描述輸入RGB格式的靜止幀。該幀由三個平面構成紅、綠和藍,它們共同組成一圖像。使用標準的一對一函數,將該靜止幀轉換成稱為YUV的另一種格式,該YUV幀也是三個平面的聯合亮度成分Y和由色彩信號U和V調制的兩個色彩副載波。對YUV轉換最常用的公式為Y=0.299*R+0.587*G+0.114*BU=0.564*(B-Y)V=0.649*(R-Y)這一圖像表示對于進一步的分析能提供更豐富的信息。
圖11所示的階段1.2的描述輸入ⅥV格式的靜止幀。在基于小波的兩個濾波器的協助下,將該圖像解析成兩個成分高頻和低頻。轉換是一對一的,且在輸出處,轉換被表示為作為解析的結果的系數所位于的接點處的圖表。弧是系數之間的連接。為將幀解析成圖表,使用小波濾波器。小波濾波器是實驗性地選擇的,且是最適合視頻打包的。(然而,在需要時可容易地修改小波濾波器)。小波濾波器在發送方和接收方被硬編碼到程序中(它們在兩方應當是相似的)。
圖12所示的階段1.3的描述為將數據打包,階段4和5處的數據以及階段3處的圖表應當滿足限定的要求。
除了最高的接點之外的每一圖表的接點應當具有“父接點”。在階段3處,檢查來自階段2的圖表并在需要時完成它,即,為沒有“父接點”的接點指定“父接點”。
圖13所示的階段1.4的描述從該階段開始,打包過程開始。為在階段5處進行分析,應當使來自階段3的圖表經受獨特的處理并變換成獨特的機器表示一位平面。
圖14所示的階段1.5的描述分析來自階段4的位平面和其中所含的數據。在該分析的基礎上,根據其重要性來組織位平面中的數據。然后,取決于該階段上使用的壓縮率值,舍去在該階段不重要的所有數據。(壓縮率值越大,舍去的數據越多)。所保留的數據被分類成4個不同的數據流。
圖15所示的階段1.6的描述為實現更大的數據壓縮,以特殊的方式組織流中的數據并使該數據經受附加的統計分析。
圖16所示的階段1.7的描述將經組織的流聯合成整體結構,它是已打包的幀。該結構然后被傳遞以通過網絡發送。
2.構建幀(補償方法)(圖17中示出)階段I.與前一幀比較并確定差異描述輸入靜止幀。確定與前一幀的差異。可以有兩種變體確定與前一幀的差異或確定與前一基本幀的差異。第一個變體預示較小的差異,但是其在通信時刻的不存在將不允許構建下一幀。第二個變體預示較大的差異,但是幀的不存在并不是至關重要的。
階段2.差異的處理描述處理差異以刪去不必要的數據并使其更緊湊(壓縮)。
階段3.差異的打包描述對于打包,使用關鍵幀打包方法的修改。
音頻編解碼器音頻編解碼器與視頻流同步地編碼音頻流。聲音編碼意味著聲音編碼的音質模型的原始實現。允許該實現使用1400 BPS信道來發送人類語音。
網絡內核(諸如圖18所示的)應當保證數據的適時傳送,且負責為網絡干擾檢測的目的監視網絡,并基于所累積的統計量進行對視頻和音頻壓縮器的調整。圖片顯示了單向數據傳送信道的結構(對該信道的要求列出如下)。該信道由三個流構成-視頻信道-音頻信道-控制信道視頻信道負責傳遞來自視頻壓縮器的視頻幀。
音頻信道負責傳遞來自音頻壓縮器的音頻流。
控制信道負責以下各種服務功能在通信會話開始之前進行對客戶機程序的兩個或多個用戶的連接。
視頻和音頻流的同步。
網絡。
關于網絡干擾和數據丟失的通知。
進行用戶之間的短消息交換(聊天)。
圖19示出了用于互聯網上的視頻會議的程序系統的開發所需的要求和功能規范。
所有系統用戶必須在網站上注冊,在網站上用戶輸入其名字、電子郵件和口令來進行系統登錄。在用戶注冊了之后,系統向每一用戶分配唯一號碼(UID)。
在用戶已經在系統中注冊之后,他/她可將PS上傳到他/她自己的計算機并安裝它。
客戶也可對系統中的附加服務(可任選)用信用卡來支付。支付是通過CyberCash系統進行的,且在記賬服務器上注冊。
客戶機應用程序客戶機應用程序具有以下功能1.在數據庫中查看和搜索用戶。該選項在所有版本的PS中都可用。
2.請求授權以將用戶添加到聯系人列表。用戶在授權之后添加到聯系人列表。該選項在所有版本的PS中都可用。
3.將短消息發送到聯系人列表中的用戶。該選項在所有版本的PS中都可用。
4.與聯系人列表中的用戶聊天。該選項在所有版本的PS中都可用。
5.查看來自可翻譯視頻和音頻流并已授權用戶查看視頻和音頻流的用戶的視頻和音頻流。該選項在所有版本的PS中都可用。
6.與系統中被授權進行視頻會議的另一用戶進行點對點視頻會議。視頻會議對于已對該選項付費的用戶可用。
7.為多個用戶的視頻翻譯。該選項對于已為視頻翻譯的授權付費的用戶可用。
對客戶機硬件的要求-具有PII Celeron 600MHz或以上的處理器的Intel PC-64MB或以上的存儲器-聲卡-視頻攝像頭-用于撥號連接的標準56BPS調制解調器,或者-用于連接到10/100MB網絡的網卡對客戶機軟件的要求-OS Windows 98 OSR1,Windows Me,Windows 2000-Direct Show驅動程序的集合(攝像機和聲卡必須與驅動程序兼容)-TCP/IP協議驅動程序服務器應用程序1.連接服務器連接服務器是系統的所有用戶的入口點。它實現以下功能-請求用于在系統中注冊的UID和口令-保持會話期間與用戶的持久連接-用戶狀態測試-保持當前時刻在線的用戶列表-客戶機和更高服務(其描述見下文)之間的數據通信-在失敗的情況下以向用戶發送短消息并將其儲存在消息數據庫中2.重定向器重定向器是連接服務器和更高服務之間的一薄層。它負責平衡更高服務的負載。
3.目錄服務器目錄服務器儲存用戶及其聯系人列表的分布式數據庫。重定向器服務器負責這些服務器的負載。
4.消息數據庫消息數據庫是未發送消息的服務器。由于任何原因而未由連接服務器傳送到收件人的所有消息被發送到消息數據庫。當用戶登錄到系統時,連接服務器為該用戶檢查未發送消息的可用性,并且如果有任何未發送消息,則將它們發送到用戶。
5.記賬系統用戶賬戶存儲的系統。對于每一注冊的系統用戶,有一個個人賬戶。該賬戶默認為空,即在用戶在系統中注冊之后,他/她只能訪問免費的系統服務。如果用戶希望為附加服務付費,則他/她能夠使用信用卡(經由CyberCash系統)來進行。當用戶登錄到系統時,連接服務器向記賬系統請求他/她的狀態,并基于用戶的狀態分配對附加服務的訪問。
在一個實施例中,對服務器硬件的要求-具有PIII 600MHz或更快的處理器的服務器-128Mb或更高的存儲器在一個實施例中,對服務器軟件的要求-OS Windows 2000 Server-MSSQL Server 2000
圖20示出了用于視頻圖像的壓縮和傳送的程序系統的開發的功能規范。
本項目的目的是開發使用所有現有標準的無線通信的低帶寬信道來壓縮和傳送視頻圖像的程序系統(也稱為PS)。給定的PS旨在使用無線通信在實時模式中實現視頻會議和視頻傳送,并且它將用作硬件實現的原型。所開發的作為PS的基本技術的技術必須對于寬信道(56BPS和更高)也是能適應和能縮放的。這一事實允許將PS擴展到視頻電影廣播系統。
程序系統的結構示意客戶機部分客戶機部分是安裝在用戶PC上的獨立程序,該程序允許用戶向其PC上安裝了同一程序的另一用戶傳送實時視頻圖像或與該另一用戶進行實時視頻會議。與另一用戶的連接是使用無線通信信道(直接連接)或使用因特網(或其它TCP/IP網絡)來實現的。在使用因特網(或其它TCP/IP網絡)的連接的情況下,客戶機部分應當能夠與服務器程序聯系并請求此時連接到網絡的用戶。
客戶機部分包括-視頻壓縮器對來自視頻攝像機的視頻流進行編碼并將其發送到網絡內核對來自網絡內核的視頻流進行解碼并將其發送到用戶的顯示器從網絡內核接收網絡干擾統計量并修正視頻流參數-音頻壓縮器對來自聲圖(soundmap)的音頻流進行編碼并將其發送到網絡對來自網絡內核的音頻流進行編碼并將其發送到聲圖從網絡內核接收網絡干擾統計量并修正音頻流參數-網絡內核實現兩個用戶之間的連接實現網絡數據接收和發送實現對所發送數據的完整性的控制實現網絡監視并將網絡干擾統計量發送到音頻和視頻壓縮器對數據傳送原理的描述可以在網絡內核描述中找到。
對客戶機硬件的要求-具有PII Celeron 600MHz或更高的處理器的便攜式PC
-60MB或更高的存儲器-聲卡-視頻攝像機-用于連接到無線通信信道的連接設備-用于撥號連接的標準56BPS調制解調器,或該項目工作的計劃表該項目的工作以六個階段來實現。
第一階段調整和預備。程序的當前版本的表示。
在這一階段,應當完成以下工作內容-開發者準備用于視頻壓縮的程序的當前版本的技術文檔和程序模塊來進行演示;-開發者將任務設置到個人并確保個人適當地理解項目要求;-開發者演示程序的當前版本。在演示期間,開發者應當演示1.帶有通過使用移動電話的直接連接和經由因特網的連接的可能性的客戶機部分。
2.用于觀察在給定的要求規范中描述的硬件和軟件的視頻壓縮器的實現。
3.具有補償機制并且在會議模式中發送視頻和音頻流的視頻和音頻壓縮器的實現,會議模式使用帶寬為9500BPS或更高的全雙工無線通信信道以每秒3幀的速率執行可接受的質量。
4.用戶界面的當前版本的實現5.聊天功能的實現6.能夠使用9600K5信道來保證視頻流傳送的程序的當前版本的測試記錄紙的草擬。
第二階段新版本的開發-完成服務器部分的實現。
-新版本用戶的開發、重新調整和引進。
-感興趣區域實現的方法。
-補償模型的兩種版本的實現。保證這些方法和網絡內核之間的交互,這取決于網絡干擾統計量自動改變方法的設置。
-音頻壓縮器(期望的音頻流帶寬1500BPS)的實現。
-用不同的OS、通信網絡標準和硬件對系統的測試。
-新版本的演示。
-程序的當前版本的測試記錄紙的草擬。
-將源代碼以紙件媒體傳遞給顧客。
第三階段為實現編解碼器的硬件版本的預備工作-用戶應具有由其自由支配的對不同信道帶寬的調整機制、用于對視頻和音頻流進行質量調整的可理解的功能。視頻和音頻壓縮器的所有特定設置應當在沒有用戶干預的情況下自動實現。
-用戶還應具有由其自由支配的音量設置面板和視頻攝像機參數設置。
-程序必須向用戶通知呼入,且用戶必須能夠關閉不需要的呼叫。
-用戶應當具有由其自由支配的聊天功能。
服務器部分服務器程序是為使利用因特網連接(或任何其它TCP/IP網絡)的客戶機部分用戶的搜索和連接變得更容易而設計的。服務器部分是能夠注冊并跟蹤與網絡的客戶機部分的所有用戶連接的可縮放程序用戶數據庫。每一程序用戶在連接到網絡時能夠在服務器上注冊,將其它用戶添加到他/她的地址簿并查看地址簿中列出的任何用戶的當前狀態。如果所需的用戶此時在線,則服務器部分應當在無需額外調整的情況下保證與此用戶的快速連接的可能性。
記賬系統的主要任務是與用戶進行對于使用信道時間的賬戶結算。對于使用信道的付費是在每一分鐘收集的。一分鐘的成本是對每一信道確定的,并且帶有例如引入假日的特殊資費的可能性。每一客戶具有一個人賬戶。該賬戶的錢從客戶的信用卡中匯出。賬戶的補充是通過實際的匯款或通過在廣告條的幀中獲得免費分鐘來實現的。視頻廣播服務器使用http協議向記賬服務器發送請求。一個記賬服務器可以服務若干個視頻廣播服務器。
在一個實施例中,對服務器硬件的要求-具有PE 6D0MHz或更快的處理器的服務器-128Mb或更高的存儲器在一個實施例中,對服務器軟件的要求OS Windows 2000 Server
在一個實施例中,對服務器部分的要求-服務器必須具有支持無限數量的標準可縮放數據庫-服務器必須處理來自客戶機程序的不少于每秒10D個請求網絡內核(諸如圖18或21)應當保證數據的適時傳遞,并且負責為網絡干擾檢測的目的而監視網絡,且基于所累積的統計量來進行對視頻和音頻壓縮器的調整。圖片#3顯示了單向數據傳輸信道的結構(該信道的要求列出如下)。該信道由三個流構成-視頻信道-音頻信道-控制信道視頻信道負責傳遞來自視頻壓縮器的視頻幀音頻信道負責傳遞來自音頻壓縮器的音頻流控的制信道負責以下各種服務功能-在通信會話開始之前實現兩個或多個客戶機程序用戶的連接-視頻和音頻流的同步-網絡-關于網絡干擾和數據丟失的通知-實現用戶之間的短消息交換(聊天)在一個實施例中,網絡內核的要求-數據適當性的控制-連續的網絡監視-網絡干擾統計量的累積以及以視頻和音頻壓縮器設置操作的能力-具有補償功能的智能算法的可用性-聊天功能的實現-可縮放性-向多個客戶機發送一個視頻流的可能性界面用戶界面(GUI)必須提供管理客戶機程序的便利且直觀的可理解形式。GUI必須保證用程序設置來操作的簡單方式,以及與另一用戶的簡單且便利的連接。
在一個實施例中,對用戶界面(GUI)的要求-用戶界面必須簡單且直觀
-界面必須具有令人愉快的現代設計-用戶界面必須包含用于查看傳入和傳出視頻流的兩個對話框-用戶應當能夠將對話框的尺寸放大到屏幕的尺寸以及將對話框的返回到復位狀態視頻壓縮器應當能夠在視頻流編碼處理期間基于在編碼期間累積的統計量并基于在網絡內核處累積以及從其接收的統計量來進行靈活的調整。
在一個實施例中,對視頻壓縮器的要求-視頻壓縮器應當遵循上述軟件和硬件要求,實現會議模式中對視頻流的同時編碼和解碼,包括預處理和后處理-視頻壓縮器必須提供編碼和解碼的對稱方案-每秒所處理的幀數應當是5或更多,從而使用帶寬為9600 BPS的信道執行可接受的質量-補償模型應當保證靜止圖像的逐步的質量改善-補償模型應當能夠處理可能的網絡干擾-補償模型必須被實現為兩種變體用于確保數據傳遞的網絡(用于使用這類網絡的進一步硬件實現)以及用于不確保數據傳遞的網絡(用于因特網類型的網絡)音頻壓縮器音頻壓縮器使用音頻流的小波進行編碼和解碼。給定模塊的實現必須在兩個方向上有進步對市場上可用的標準化音頻流壓縮算法的使用以及基于小波技術開發自己的音頻編解碼器的可能性分析。
在一個實施例中,對音頻壓縮器的要求-音頻壓縮器應當遵循上述軟件和硬件要求實現在會議模式中對音頻流以及視頻的同時編碼和解碼-音頻壓縮器必須提供編碼和解碼的對稱方案-音頻壓縮器工作必須與視頻壓縮器工作同步-聲音質量必須足以理解人類語音-音頻數據音量在使用帶寬為9600BPS的信道時必須不超過240D BPS。理想的音量是1000BPS-音頻壓縮器必須能夠處理可能的網絡干擾
-用于連接到10/100MB網絡的網卡在一個實施例中,對客戶機軟件的要求-OS Windows 98 OSR1,Windows Me,Windows 2000-Direct Show驅動程序的集合(攝像機和聲卡必須與驅動程序兼容)-無線通信信道上的TCP/IP協議驅動程序在一個實施例中,對數據通信信道的要求-數字無線通信信道-給定無線通信信道應當提供帶寬為9600 BPS或更高的全雙工通信-兩臺計算機之間的直接撥號連接(或使用ASP經由因特網的連接),或者-用于兩臺計算機之間的直接連接的10/100MB局域網視頻壓縮器視頻壓縮器實現使用視頻流的小波的編碼和解碼。給定處理器具有以下工作周期-預處理-關鍵幀的編碼-補償模型-關鍵和補償幀的解碼-后處理預處理-用于以后的編碼的必需的視頻圖像準備,即質量增強(在從先前的幀統計量可用的基礎上)關鍵幀的編碼是在所開發的使用小波技術的視頻壓縮方法的基礎上進行的。
補償方法由于僅發送幀之間的差異的這一事實而允許發送更多幀。該方法應當與預處理密切相關。補償方法也應當與網絡內核密切相關,因為它們主要取決于網絡干擾。補償幀的編碼也是在小波技術的基礎上進行的。
關鍵和補償幀的解碼是使用利用小波技術的反向編碼來實現的。
后處理的目標在于通過向視頻圖像應用濾波器來改善清晰度和色彩頻譜的視頻質量增強。
在本發明的詳細描述中,提出了該方法的具體且最佳的實現。該方法步驟及其具體參數的詳細描述決不意味著本發明由所提出的描述窮盡。所要求保護的方法及其修改的其它優點可在根據本申請的總體發明性理念實現時發現。
權利要求
1.一種數據壓縮方法,所述方法包括以下步驟將所述數據表示為小波分解系數的數組D,創建以一根節點以及因此而連接的節點形成的所述系數的樹圖,其中除根節點之外的每一節點是相應祖先的子孫,創建數組Z,其中如果相應系數D具有正或零值,則對應于所述節點的分量等于0,且如果系數D具有負值,則該分量等于1,創建一組閾值數組Ti=T0/2i,其中T0是基閾值數組,i是閾值索引,創建數組M,其中對每一節點,M/T0的比值等于給定節點的所有子孫中的最大D/T0比值;創建一組數組Si,其中如果對應于給定節點的數組M的分量的值小于閾值數組Ti分量的值,則數組Si的分量等于0,如果相應的數組M分量的值等于或大于閾值數組Ti分量的值,則該分量等于1,創建一組數組Bi,其中的分量等于|D|/T0比的小數部分兩倍的整數部分。
2.如權利要求1所述的方法,其特征在于,還包括創建向量數組Vi的集合V的步驟,所述向量數組包括對應于給定節點的子孫的數組Si、Bi的分量,以及對應于給定節點中其Bi分量等于1的那些子孫的數組Zi的分量;創建V、S、B、Z分量的數據流,用于所述V、S、B、Z數據流的熵編碼過程。
3.如權利要求1所述的方法,其特征在于,所述基閾值數組T0的分量的值對每一后續的子帶增大為2倍。
全文摘要
一種數據處理系統包括通過對重要的金字塔形子帶表示進行編碼來對源信號進行子帶分解。在編碼過程中,使用M數組來初始化一組數組S
文檔編號G06K9/46GK101014966SQ200580022189
公開日2007年8月8日 申請日期2005年6月30日 優先權日2004年6月30日
發明者A·V·楚洛夫, S·諾維科夫, A·P·坦切科 申請人:彗星視頻技術公司