專利名稱:一種視頻解碼方法和裝置的制作方法
技術領域:
本發(fā)明涉及數(shù)字視頻信號的處理,具體地說,本發(fā)明涉及一種視頻解碼方法和裝置。
背景技術:
移動通信技術日趨發(fā)達,手機、PDA等移動終端設備在視頻應用方面的技術越來越先進。視頻被發(fā)送或下載到移動終端后,在移動終端解碼播放。視頻質量的提高的同時,視頻解碼過程中的計算復雜度也大大增加,加大了移動終端的處理器的運算負荷,解碼過程中消耗的功率也隨之增大。移動設備的電池技術在不斷發(fā)展,但是由于電池電量增長的速度無法抵消移動設備日益復雜豐富的應用帶來的能量消耗,加上移動設備無法隨時隨地充電,能耗控制對于移動設備來說,一直是最重要的問題之一。隨著3G用戶數(shù)量的不斷增長,可下載的視頻內容越來越豐富,消費者對移動設備優(yōu)質視覺體驗的需求也日益增長。播放視頻所消耗的能量占移動設備消耗總能量的比重也將不斷增加。因此,視頻播放時,對解碼器功率的控制成為一個重要的問題。
如果能夠降低解碼器的計算復雜度,就可以縮短解碼的時間,而播放視頻的速度是一定的,這樣移動設備的處理器就可以有更多的空閑時間,從而達到降低功率的效果。計算復雜度的減少需要引入一些近似計算,這樣圖像質量會有所下降。因此,需要這樣一種技術,即可以根據(jù)需求,通過近似計算,減少解碼過程中的計算復雜度,又能夠保持圖像質量在用戶可接受的范圍。當電量充足或是用戶需要高質量的圖像時,解碼器可以不進行任何近似計算,解出高質量的圖像,當電量不足或是用戶希望省電時,解碼器可以適當降低圖像質量,以滿足功率減小的需要。
申請?zhí)枮?2813469.9名稱為“資源可分級解碼”的中國專利申請公開了一種復雜性可分級的解碼器系統(tǒng)和方法。該系統(tǒng)包括具有多個功能塊的解碼器,用于對壓縮視頻數(shù)據(jù)解碼。解碼器還包括多個分級功能,可以有選擇地減少至少一個功能塊的復雜性。本地資源控制器用于為解碼器生成分級規(guī)則,其中,為響應來自系統(tǒng)資源管理器的復雜性請求而選擇一個分級規(guī)則,再者,分級規(guī)則是從本地資源控制器可用的多個預先確定的規(guī)則中進行選擇。在查詢表中查找預先確定的分級規(guī)則,而查詢表是在脫機狀態(tài)下設計的。綜上所述在該發(fā)明中,分級規(guī)則來自脫機狀態(tài)下設計的查找表,不涉及對計算復雜度進行準確控制。
申請?zhí)枮?00580010306.4名稱為“用于復雜度可伸縮視頻解碼器的方法和設備”的中國專利申請中,采用了不同的圖像分辨率,需要編碼器提供基層圖像和增強層圖像的比特流。該發(fā)明同樣不涉及對計算復雜度的準確控制。
發(fā)明內容
本發(fā)明要解決不能對解碼器的計算復雜度進行準確控制的技術問題,從而提供一種視頻解碼裝置和方法,能夠準確控制解碼時間減少到未經(jīng)分級處理時的某個百分比,同時保持圖像質量可以接受。
為了實現(xiàn)上述發(fā)明目的,根據(jù)本發(fā)明的一個方面,提供了一種視頻解碼方法,包括下列步驟 1)根據(jù)預設所需減少的時間百分比K,確定環(huán)路濾波的處理級別; 2)計算視頻宏塊的殘差矩陣; 3)根據(jù)已經(jīng)解碼的視頻宏塊計算預測值矩陣; 4)對所述殘差矩陣與預測值矩陣之和,根據(jù)所述環(huán)路濾波的處理級別進行環(huán)路濾波。
該方法中,所述步驟1)包括11)估算B幀環(huán)路濾波占整個解碼時間的百分比LFB;以及 12)根據(jù)K與LFB的關系確定所述環(huán)路濾波的處理級別。
上述方法中,所述步驟12)包括121)對于K≤LFB,確定所述環(huán)路濾波的處理級別為省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且 所述步驟4)包括41)省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
上述方法中,所述步驟41)中所述視頻B幀內部分宏塊平均分布在每個B幀中。
上述方法中,所述步驟41)中所述視頻B幀內部分宏塊分布于接近圖像邊緣的區(qū)域。
上述方法中,所述步驟12)包括122)對于K>LFB,確定所述環(huán)路濾波的處理級別為省略對視頻B幀全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且 所述步驟4)包括42)省略對視頻B幀內全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
上述方法中,所述步驟42)中所述視頻P幀內部分宏塊平均分布在每個P幀中。
上述方法中,所述步驟42)中所述視頻P幀內部分宏塊分布于接近圖像邊緣的區(qū)域。
上述方法中,所述步驟1)包括13)估算環(huán)路濾波分級處理節(jié)省的時間占整個解碼時間的百分比LFsaved; 所述步驟3)包括31)對于K>LFsaved,確定所述B幀內非幀內預測宏塊的亮度插值的處理級別,根據(jù)所述B幀內非幀內預測宏塊的亮度插值的處理級別進行幀間預測,從而計算所述預測值矩陣。
上述方法中,所述步驟3)中的亮度插值的處理級別包括a)保持原始插值處理;b)只進行1/2插值或整像素點處理;c)只進行整像素點處理。
上述方法中,所述步驟31)包括 311)根據(jù)預設的亮度插值處理級別,幀間預測每個處理單元第一個B幀的第一個非幀內預測宏塊; 312)根據(jù)所述K、所述LFsaved、所述處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內非幀內預測宏塊的亮度插值分級處理所節(jié)省的時間,確定下一個非幀內預測宏塊的亮度插值處理級別。
上述方法中,所述步驟311)所述預設的亮度插值處理級別是保持原始插值處理。
上述方法中,所述步驟3)包括根據(jù)所述K、所述LFsaved、處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內非幀內預測宏塊的亮度插值分級處理所節(jié)省的時間,確定下一個處理單元中省略解碼操作的的B幀的個數(shù)。
根據(jù)本發(fā)明的另一方面,還提供了一種視頻解碼裝置,包括 分級控制器,用于根據(jù)預設所需減少的時間百分比K,確定環(huán)路濾波的處理級別; 計算殘差矩陣單元,用于計算視頻宏塊的殘差矩陣; 幀預測單元,用于根據(jù)已經(jīng)解碼的視頻宏塊計算預測值矩陣; 環(huán)路濾波單元,用于對所述殘差矩陣與預測值矩陣之和,根據(jù)所述環(huán)路濾波的處理級別進行環(huán)路濾波。
上述裝置中,所述分級控制器,用于估算B幀環(huán)路濾波占整個解碼時間的百分比LFB;以及根據(jù)K與LFB的關系確定所述環(huán)路濾波的處理級別。
上述裝置中,所述分級控制器,對于K≤LFB,用于確定所述環(huán)路濾波的處理級別為省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且 所述環(huán)路濾波單元,用于省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
上述裝置中,所述分級控制器,對于K>LFB,用于確定所述環(huán)路濾波的處理級別為省略對視頻B幀全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且 所述環(huán)路濾波單元,用于省略對視頻B幀內全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
上述裝置中,所述分級控制器,用于估算所述環(huán)路濾波分級處理節(jié)省的時間占整個解碼時間的百分比LFsaved,根據(jù)所述K、所述LFsaved,確定所述B幀內非幀內預測宏塊的亮度插值的處理級別; 所述幀預測單元,用于根據(jù)所述B幀內非幀內預測宏塊的亮度插值的處理級別進行幀間預測。
上述裝置中,所述分級控制器,還用于根據(jù)所述K、所述LFsaved、處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內宏塊的亮度插值分級處理所節(jié)省的時間,確定省略解碼下一個處理單元中的B幀的個數(shù)x; 所述計算殘差矩陣單元和所述幀預測單元,用于根據(jù)所述x,省略下一個處理單元內的B幀的解碼操作。
本發(fā)明的效果是,給定一個百分比K,本發(fā)明所述的可分級解碼器可以使計算時間減少原先的K,同時保持圖像質量可以接受。
圖1是公知的視頻解碼器的結構圖; 圖2是根據(jù)本發(fā)明的一個實施例的視頻解碼器的結構圖; 圖3是亮度插值示意圖; 圖4是根據(jù)本發(fā)明的一個實施例的參數(shù)示意圖。
具體實施例方式 為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖,對根據(jù)本發(fā)明一個實施例的視頻解碼器進一步詳細說明。應當理解,此處所描述的具體實施過程僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明適用于采用混合差分脈沖編碼調制/離散余弦變換(hybridDPCM/DCT)的各種視頻標準,包括H.263,H.264,MPEG-4,AVS等。在本發(fā)明介紹的具體實施例中,以AVS標準為例。
AVS標準的一個解碼順序例如 I P B B P B B I B B P B B 如上所示,幀分為3類,幀內解碼圖像(I幀)、前向幀間解碼圖像(P幀)、雙向幀間解碼圖像(B幀)。I幀采用幀內預測,P幀可以參考前面的1或2幀。B幀參考前后各1幀,只有I幀和P幀可以作為參考幀。每隔若干幀,就會出現(xiàn)一個I幀,這個間隔是由編碼器決定的。連續(xù)的B幀的數(shù)目是由編碼器決定的一個定值,取值范圍是0到2。對于其他視頻編解碼標準,其視頻序列結構是類似的。
圖1是現(xiàn)有的通用解碼器的結構示意圖。解碼一般過程是以宏塊,即16×16的像素區(qū)域作為運算基本單元。解碼器收到視頻碼流之后,首先由計算殘差矩陣單元計算殘差矩陣。包括熵解碼(VLD),熵解碼解出的變換系數(shù),經(jīng)過反量化和反變換得到殘差矩陣。另一方面,如果進行幀內預測,使用當前幀已經(jīng)解碼的宏塊計算出當前宏塊的預測值。如果進行幀間預測,將從解碼器輸出得到的運動矢量傳遞到運動補償模塊101,由運動矢量和參考幀計算得到預測值,其中參考幀是先前解碼的1幀或2幀。預測值矩陣和殘差矩陣相加,再經(jīng)過環(huán)路濾波(Loop Filter,記為LF)100去除塊效應,提高圖像質量,從而完成當前幀的解碼。解碼器將解碼完成的幀輸出,同時例如幀內解碼圖像(I幀)和前向幀間解碼圖像(P幀)等需要作為后面的幀的參考幀,被存入幀緩存。
本發(fā)明的思想是,利用系統(tǒng)時鐘得到宏塊的處理時間,并計算解碼器各模塊分級處理所節(jié)省的時間,估計或計算各模塊時間占總解碼時間的比例,根據(jù)這些比例與需求的比較結果,動態(tài)調整各模塊分級處理的級別。根據(jù)本發(fā)明一個實施例,首先獲取需要減少的計算量K,也即需要減少的解碼運算時間,通過對解碼器的幾個主要模塊,如環(huán)路濾波100、運動補償101的分級處理來實現(xiàn)計算量或解碼運算時間減少K。其中運動補償101的分級處理體現(xiàn)為幀間預測的亮度插值(Luminance Interpolation,記作LIP)的分級處理。將環(huán)路濾波100、運動補償模塊101的處理分為幾個不同的級別,每個級別對應不同的計算復雜度,減少的計算越多,圖像的失真一般也越大。分級處理的基本思想是根據(jù)需求精簡一部分的計算,并且盡量保持圖像質量,這就要求精簡計算復雜度大但是對圖像質量影響不大的操作。由于B幀不作為參考幀,因此,B幀中由于分級處理造成圖像質量的下降不會引起差錯傳遞,可以將近似計算在B幀中進行,甚至跳過某些B幀,即不進行解碼。相反的,I幀和P幀的圖像質量必須有保證,在本實施例所述的解碼器中,對于I幀不進行任何近似計算和分級處理,對于P幀只進行環(huán)路濾波的分級處理。這是因為環(huán)路濾波計算復雜度大,而且對于圖像質量的影響是各模塊中最小的。
圖2是根據(jù)本發(fā)明的一個實施例的分級解碼器結構示意圖。在視頻序列解碼前,分級控制器根據(jù)K的大小確定環(huán)路濾波的分級處理級別。在解碼過程中,B幀的每個非幀內預測宏塊解碼之前,分級控制器以環(huán)路濾波分級處理所節(jié)省的時間百分比LFsaved為依據(jù),確定運動補償模塊101的亮度插值分級處理的級別。另外,分級控制器還根據(jù)已經(jīng)解碼的宏塊的累計解碼時間和已解碼的B幀內宏塊的亮度插值分級處理所節(jié)省的時間,確定是否應該跳過B幀。當B幀被跳過時,其相應的碼流將不進行熵解碼以及隨后的所有操作。
如果視頻幀序列中連續(xù)B幀數(shù)目為0,那么只進行P幀環(huán)路濾波的分級處理,這種情況在實際應用中出現(xiàn)非常少。根據(jù)本發(fā)明的一個實施例,每組連續(xù)B幀數(shù)目為2,以P幀B幀B幀或I幀B幀B幀為一個“處理單元”。按照解碼順序從第2幀開始,上述處理單元循環(huán)出現(xiàn)直到序列結束。根據(jù)視頻幀序列本身的此特點,按照處理單元進行解碼可以循環(huán)操作。另外,因為本發(fā)明的方法中包括預測和估算的步驟,而各處理單元是獨立的,所以可以避免由于個別單元控制不準確而影響到全局解碼的問題。本領域技術人員應該理解,若連續(xù)B幀數(shù)目為1,則以P幀B幀或I幀B幀為一個“處理單元”。當然也可以不劃分處理單元,對整個視頻的所有的P幀和B幀順次處理。下面將詳細描述根據(jù)處理單元進行分級處理的方法。
首先根據(jù)需要節(jié)省的計算時間的百分比K確定環(huán)路濾波模塊的處理方式。環(huán)路濾波模塊的分級處理方式具體為,先考慮不做B幀的環(huán)路濾波,如果不能滿足計算復雜度減少的要求,則考慮不做P幀的環(huán)路濾波。環(huán)路濾波以宏塊為單位進行,在作分級處理時,一次省去一個宏塊的環(huán)路濾波操作。
不同內容不同特點的視頻,B幀和P幀中每個宏塊環(huán)路濾波的平均時間也各不相同。對于實際視頻序列,可能在不同時間段包含了不同的特性,但B幀和P幀環(huán)路濾波占整個解碼時間的比例是一個相對固定的值。這兩個比例也可以通過大量解碼統(tǒng)計得到,計作LFB,LFP。如果K≤LFB,說明只需要對B幀的部分或全部宏塊不進行環(huán)路濾波就可以滿足計算復雜度減小的需求,選擇這些不作環(huán)路濾波的宏塊,使它們平均分布在每個B幀中,且在每個B幀中盡量分布于接近圖像的邊緣人眼不關注的區(qū)域。如果K>LFB,需要對B幀所有宏塊不作環(huán)路濾波,則還需要節(jié)省的計算時間的百分比為M=K-LFB,比較M與LFP,如果M≤LFP,說明對P幀的某些宏塊不進行LF就可以滿足計算復雜度減小的需求,選擇這些不作環(huán)路濾波的宏塊,使它們平均分布在每個P幀中,且在每個P幀中,盡量分布于接近圖像的邊緣人眼不關注的區(qū)域。如果M>LFP,則對B幀和P幀的所有宏塊都不進行環(huán)路濾波,但這樣仍然不能滿足計算復雜度減少的需求,需要進行B幀亮度插值的分級處理或跳過B幀。
當對B幀和P幀的所有宏塊均不進行環(huán)路濾波,則環(huán)路濾波分級處理所節(jié)省的百分比IFsaved=LFB+LFP,還需要節(jié)省計算時間百分比N=M-LFP時,對B幀的非幀內預測宏塊的亮度插值進行分級處理或跳過B幀。下面詳細描述亮度插值的分級處理和跳過B幀個數(shù)的確定。
圖3是AVS標準的亮度插值示意圖,其中示出了整數(shù)像素點、1/2樣本點和1/4樣本點的位置。其中大寫字母表示整數(shù)像素點,圖中b、h和j表示1/2樣本點,除整像素點和1/2樣本點以外的各點是1/4樣本點。當熵解碼得到的運動矢量指向非整數(shù)像素點時,為了獲得亮度預測值矩陣,需要對參考幀進行亮度插值。大多數(shù)標準中都采用1/4插值,對于以D點為左上頂點的16個樣本點的正方形區(qū)域,運動矢量可能指向D、a、b、c、d、e、f、g、h、i、j、k、n、p、q和r中的任意一點,而這些點對應的插值計算的復雜度是不一致的。D點是整數(shù)像素點,獲得以D點為左上頂點的亮度預測矩陣,不需要插值,因此D點的計算復雜度是最小的;其余各點對應各自的插值操作,計算復雜度有所不同,總體說來,1/2插值的計算復雜度小于1/4插值。只在B幀中進行的亮度插值的分級處理,共分為3個級別1)保持原始插值處理,即對插值不做簡化處理;2)只進行1/2插值或整像素點處理,以圖3為例,即a,d,e的插值轉為D的處理,c,f,g的插值轉為b的插值,i,n,p轉為h點插值,k,q,r轉為j點插值;3)將a,b...r點插值全部轉為整像素點D的處理。對于D、a、b、c、d、e、f、g、h、i、j、k、n、p、q和r這16個點,每個點的計算復雜度是一定的,解碼器在每個點進行亮度插值的時鐘數(shù)可以通過大量解碼統(tǒng)計得到,作為常數(shù)保存在解碼器中。
亮度插值分級處理的方法如下在視頻序列的每個“處理單元”中,解碼第一個B幀的第一個非幀內預測宏塊時,首先給定其一個預設的亮度插值的級別,優(yōu)選的,保持原始插值處理。在每一個處理單元中,如果下一個宏塊是B幀的非幀內預測宏塊,則根據(jù)在不做環(huán)路濾波且進行了亮度插值的分級處理的情況下,記錄當前處理單元第一幀(I幀或P幀)的解碼時間Ta,當前處理單元從B幀第一個宏塊到當前宏塊的累計解碼的時間tb,和當前處理單元從B幀第一個宏塊到當前宏塊的亮度插值分級處理所節(jié)省的時間ts,確定下一個宏塊的亮度插值級別,直到當前處理單元結束。在個人計算機(PC)、數(shù)字信號處理器(DSP)、可編程邏輯門陣列(FPGA)等平臺下,都有獲得系統(tǒng)時鐘數(shù)的方法,因此Ta和tb容易獲得。在運動補償模塊中,確定分級前后分別對D、a、b、c、d、e、f、g、h、i、j、k、n、p、q和r中的哪兩個點進行處理,二者所需時鐘數(shù)的差值就是亮度插值節(jié)省的時間,累計每次亮度插值節(jié)省的時間,獲得ts。在確定B幀每個非幀內預測宏塊亮度插值級別之前,由當前的tb、ts,可以估算出當前處理單元B幀解碼時間Tb和當前處理單元亮度插值所能節(jié)省的時間Ts。其中BMBcurrent和BMBtotal分別表示當前處理單元已經(jīng)解碼的宏塊數(shù)和當前處理單元B幀宏塊的總數(shù)。表示亮度插值節(jié)省的時間與不進行分級處理時解碼總時間的比,公式中各參數(shù)的關系如圖4所示,比較IPSaved與N的大小,如果IPSaved比N大的量大于某個閾值,說明亮度插值的近似計算程度太大,可以降低亮度插值的級別,做更精細的計算。如果IPSaved比N小的量大于某個閾值,說明亮度插值的近似計算程度太小,可以提高亮度插值的級別,做更簡單的計算。上述閾值接近或等于0,優(yōu)選的取值范圍是
。
在每個處理單元解碼結束后,分級處理器還將根據(jù)已經(jīng)解碼的各處理單元的Ta,Tb,Ts和K判斷跳過下一個處理單元中B幀的個數(shù)。亮度插值所能減少的時鐘數(shù)是有限的,當所有的插值計算都轉化為整像素點處理時,亮度插值所耗費的時鐘數(shù)達到最小值,如果發(fā)現(xiàn)已解碼單元的亮度插值分級不能滿足要求,則跳過下一個處理單元的B幀。對于第一個處理單元的B幀是不跳過的。確定跳過B幀個數(shù)的方法具體如下以S表示除了環(huán)路濾波和亮度插值以外的部分應當減少的時鐘數(shù),CB表示估算出的跳過B幀所節(jié)省的總時間。S和CB的初始值都是0。一個處理單元解碼結束時,計算這個處理單元的更新對應于整個視頻序列的Stotal,使它等于當前已經(jīng)解碼的各處理單元S的和。(Stotal-CB)表示對環(huán)路濾波和亮度插值進行了分級處理,采用了跳過B幀的方法之后,當前應該減少但尚未減少的計算復雜度。如果Stotal-CB>0,則令
其中,這里的
表示向下取整,Tb是分級處理后的B幀解碼的平均時間,x2表示連續(xù)B幀的數(shù)目,x是x1、x2二者中的最小值。算出x以后,跳過下一個處理單元的前x個B幀,并更新CB值,使其等于原先的CB加上Tb×x。如果x=0,表示應該減少但尚未減少的計算復雜度比B幀解碼的平均時間小,則不跳過B幀。
上面描述了環(huán)路濾波,亮度插值分級處理的算法和跳過B幀的方法。
當除了第一個處理單元內B幀外的所有B幀都被跳過之后,計算量是無法繼續(xù)減小的,這時,視頻僅有I幀、去除了環(huán)路濾波的P幀和第一個處理單元內的去除了環(huán)路濾波且整像素點亮度插值的B幀,對應本發(fā)明提出的編解碼系統(tǒng)中最基本的圖像質量。此時的K就是計算量或計算時間所能減少的最大百分比,記作Kmax。為了保證最基本的圖像質量,當K>Kmax時,不再進行更多的近似計算或分級處理等操作。Kmax由視頻序列的內容決定,對于連續(xù)B幀數(shù)目為2的情況,一般在70%以上。當K<Kmax時,根據(jù)本發(fā)明的實施例完全可以達到實際應用中的計算復雜度可分級的要求。
應該注意到并理解,在不脫離后附的權利要求所要求的本發(fā)明的精神和范圍的情況下,能夠對上述詳細描述的本發(fā)明做出各種修改和改進。因此,要求保護的技術方案的范圍不受所給出的任何特定示范教導的限制。
權利要求
1.一種視頻解碼方法,包括下列步驟
1)根據(jù)預設所需減少的時間百分比K,確定環(huán)路濾波的處理級別;
2)計算視頻宏塊的殘差矩陣;
3)根據(jù)已經(jīng)解碼的視頻宏塊計算預測值矩陣;
4)對所述殘差矩陣與預測值矩陣之和,根據(jù)所述環(huán)路濾波的處理級別進行環(huán)路濾波。
2.根據(jù)權利要求1所述的方法,其特征在于,
所述步驟1)包括11)估算B幀環(huán)路濾波占整個解碼時間的百分比LFB;以及
12)根據(jù)K與LFB的關系確定所述環(huán)路濾波的處理級別。
3.根據(jù)權利要求2所述的方法,其特征在于,
所述步驟12)包括121)對于K≤LFB,確定所述環(huán)路濾波的處理級別為省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且
所述步驟4)包括41)省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
4.根據(jù)權利要求3所述的方法,其特征在于,所述步驟41)中所述視頻B幀內部分宏塊平均分布在每個B幀中。
5.根據(jù)權利要求3或4所述的方法,其特征在于,所述步驟41)中所述視頻B幀內部分宏塊分布于接近圖像邊緣的區(qū)域。
6.根據(jù)權利要求2所述的方法,其特征在于,
所述步驟12)包括122)對于K>LFB,確定所述環(huán)路濾波的處理級別為省略對視頻B幀全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且
所述步驟4)包括42)省略對視頻B幀內全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
7.根據(jù)權利要求6所述的方法,其特征在于,所述步驟42)中所述視頻P幀內部分宏塊平均分布在每個P幀中。
8.根據(jù)權利要求6或7所述的方法,其特征在于,所述步驟42)中所述視頻P幀內部分宏塊分布于接近圖像邊緣的區(qū)域。
9.根據(jù)權利要求1所述的方法,其特征在于,
所述步驟1)包括13)估算環(huán)路濾波分級處理節(jié)省的時間占整個解碼時間的百分比LFsaved;
所述步驟3)包括31)對于K>LFsaved,確定所述B幀內非幀內預測宏塊的亮度插值的處理級別,根據(jù)所述B幀內非幀內預測宏塊的亮度插值的處理級別進行幀間預測,從而計算所述預測值矩陣。
10.根據(jù)權利要求9所述的方法,其特征在于,所述步驟3)中的亮度插值的處理級別包括a)保持原始插值處理;b)只進行1/2插值或整像素點處理;c)只進行整像素點處理。
11.根據(jù)權利要求9或10所述的方法,其特征在于,所述步驟31)包括
311)根據(jù)預設的亮度插值處理級別,幀間預測每個處理單元第一個B幀的第一個非幀內預測宏塊;
312)根據(jù)所述K、所述LFsaved、所述處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內非幀內預測宏塊的亮度插值分級處理所節(jié)省的時間,確定下一個非幀內預測宏塊的亮度插值處理級別。
12.根據(jù)權利要求11所述的方法,其特征在于,所述步驟311)所述預設的亮度插值處理級別是保持原始插值處理。
13.根據(jù)權利要求9所述的方法,其特征在于,所述步驟3)包括根據(jù)所述K、所述LFsaved、處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內非幀內預測宏塊的亮度插值分級處理所節(jié)省的時間,確定下一個處理單元中省略解碼操作的的B幀的個數(shù)。
14.一種視頻解碼裝置,包括
分級控制器,用于根據(jù)預設所需減少的時間百分比K,確定環(huán)路濾波的處理級別;
計算殘差矩陣單元,用于計算視頻宏塊的殘差矩陣;
幀預測單元,用于根據(jù)已經(jīng)解碼的視頻宏塊計算預測值矩陣;
環(huán)路濾波單元,用于對所述殘差矩陣與預測值矩陣之和,根據(jù)所述環(huán)路濾波的處理級別進行環(huán)路濾波。
15.根據(jù)權利要求14所述的裝置,其特征在于,
所述分級控制器,用于估算B幀環(huán)路濾波占整個解碼時間的百分比LFB;以及根據(jù)K與LFB的關系確定所述環(huán)路濾波的處理級別。
16.根據(jù)權利要求15所述的裝置,其特征在于,
所述分級控制器,對于K≤LFB,用于確定所述環(huán)路濾波的處理級別為省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且
所述環(huán)路濾波單元,用于省略對視頻B幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
17.根據(jù)權利要求15所述的裝置,其特征在于,
所述分級控制器,對于K>LFB,用于確定所述環(huán)路濾波的處理級別為省略對視頻B幀全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波;并且
所述環(huán)路濾波單元,用于省略對視頻B幀內全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波,且省略對視頻P幀內部分或全部宏塊的所述殘差矩陣與預測值矩陣之和做環(huán)路濾波。
18.根據(jù)權利要求14所述的裝置,其特征在于,
所述分級控制器,用于估算所述環(huán)路濾波分級處理節(jié)省的時間占整個解碼時間的百分比LFsaved,根據(jù)所述K、所述LFsaved,確定所述B幀內非幀內預測宏塊的亮度插值的處理級別;
所述幀預測單元,用于根據(jù)所述B幀內非幀內預測宏塊的亮度插值的處理級別進行幀間預測。
19.根據(jù)權利要求18所述的裝置,其特征在于,
所述分級控制器,還用于根據(jù)所述K、所述LFsaved、處理單元內已經(jīng)解碼的宏塊的累計解碼時間和所述處理單元內已解碼的B幀內宏塊的亮度插值分級處理所節(jié)省的時間,確定省略解碼下一個處理單元中的B幀的個數(shù)x;
所述計算殘差矩陣單元和所述幀預測單元,用于根據(jù)所述x,省略下一個處理單元內的B幀的解碼操作。
全文摘要
本發(fā)明提供一種視頻解碼方法,包括下列步驟1)根據(jù)預設所需減少的時間百分比K,確定環(huán)路濾波的處理級別;2)計算視頻宏塊的殘差矩陣;3)根據(jù)已經(jīng)解碼的視頻宏塊計算預測值矩陣;4)對所述殘差矩陣與預測值矩陣之和,根據(jù)所述環(huán)路濾波的處理級別進行環(huán)路濾波。根據(jù)本發(fā)明,給定一個百分比K,所述視頻解碼方法可以使計算時間減少原先的K,同時保持圖像質量可以接受。
文檔編號H04N7/36GK101340584SQ200810118099
公開日2009年1月7日 申請日期2008年8月11日 優(yōu)先權日2008年8月11日
發(fā)明者磊 陳, 陳益強, 雯 紀, 張繪國 申請人:中國科學院計算技術研究所