一種視頻濾波方法及裝置的製作方法
2023-05-02 07:47:41 3
專利名稱:一種視頻濾波方法及裝置的製作方法
技術領域:
本發明涉及視頻編解碼領域,尤其涉及ー種視頻濾波方法及裝置。
背景技術:
現有的視頻編解碼標準是以圖像宏塊或塊為基礎的算法實現的。這種實現方式不可避免的會在塊邊界產生塊效應。因此在視頻處理中引入了濾波技術來消除這種塊效應。在視頻處理中,主要有兩種濾波方式ー種是環內濾波,ー種是環外濾波。在H. 264視頻標準中,主要採用環內濾波方式,而在其他早期的MPEG標準中大多採用環外濾波方式。視頻標準中,在濾波完一個宏塊的圖像數據後需要將宏塊的數據寫到外部的存儲設備中,將圖像數據存放到外部存儲設備主要有兩種存儲方式ー是按照圖像原始方式存放,即按順序一行一行的存儲圖像數據。ニ是將圖像按照宏塊方式存放,即按ー個宏塊ー個宏塊的順序存放圖像數據。第一種存放方式寫入外部存儲設備時,需要按照塊存儲的ニ維存儲方式寫入,讀出數據比較方便。第二種方式寫入時比較方便,但是在讀取數據時需要ニ維方式讀取,耗時較多。目前大多數視頻編解碼器都採用第一種存儲方式。這種存放方式在寫入時耗時太多,佔用較多帶寬,同時由於是ニ維存儲方式,寫完一行數據就需要跳轉地址,由於外部存儲設備的特性,必然會耗費大量的時間,造成帶寬的浪費。在H. 264視頻標準的濾波中,視頻濾波的主要過程是將視頻解碼器的重建出來的圖像,經過濾波計算後去除塊效應,然後將數據傳輸到外部存儲設備(DDR器件)存儲,提供後續模塊顯示或者處理。但是在濾波模塊將數據傳輸到DDR設備吋,容易和其他訪問DDR的設備發生爭搶數據,不能有效的利用帶寬,造成帶寬的浪費。
發明內容
本發明解決的技術問題在於提供了ー種視頻濾波方法及裝置,該方法解決了目前視頻濾波中帶寬利用率較低並且不夠靈活的問題。為解決上述問題,本發明提供了ー種視頻濾波方法,所述方法包括,重建模塊進行圖像數據解碼後,將所述解碼後的圖像數據發送至濾波模塊進行存儲;濾波模塊的內部存儲區進行存儲,至少三個內部存儲區中一個存儲區放滿後,啟動濾波計算模塊;濾波計算模塊對所述解碼後的圖像數據進行濾波;在內部存儲區的圖像數據濾波完成後,濾波數據上傳模塊將所述濾波後的圖像數據存儲至外部存儲器。上述的方法,其中,將所述濾波後的圖像數據存儲至外部存儲器的同時,所述方法還包括,存儲濾波圖像數據的存儲區之外的其他內部存儲區繼續接收重建模塊的圖像數據。上述的方法,其中,所述圖像數據是以宏塊為單位,每個宏塊的圖像數據存放ー個、存儲區。上述的方法,其中,所述濾波計算模塊對所述解碼後的圖像數據進行濾波具體為,先進行行濾波,然後是列濾波,如此往復,直至整個宏塊濾波完成;上述的方法,其中,所述內部存儲區的圖像數據濾波完成具體為,判斷所述內部存儲區的圖像數據是否為第二個宏塊或者是最後一個宏塊,若是,將所述內部存儲區的圖像數據上傳,否則進行下一個宏塊的數據濾波。上述的方法,其中,所述濾波數據上傳模塊中存在ー個可配置的地址跳轉步長參數,用於配合外部存儲存儲器的物理特性,置相鄰兩行圖像數據的寫入地址在不同的存儲區域。上述的方法,其中,將圖像數據的色度分量UV按照UV間插的方式寫到外部的存儲器中。本發明還提供了 ー種視頻濾波裝置,所述裝置包括,重建模塊,用於進行圖像數據解碼後,將所述解碼後的圖像數據發送至濾波模塊進行存儲;濾波模塊,包括至少三個內部存儲區,用於存儲所述解碼後的圖像數據;濾波計算模塊,用於在ー個內部存儲區放滿後啟動,對所述解碼後的圖像數據進行濾波;濾波數據上傳模塊,用於在在內部存儲區的圖像數據濾波完成後,將所述濾波後的圖像數據存儲至外部存儲器。上述的裝置,其中,所述濾波計算模塊用於對所述解碼後的圖像數據進行濾波具體為,先進行行濾波,然後是列濾波,如此往復,直至整個宏塊濾波完成;所述內部存儲區的圖像數據濾波完成具體為,判斷所述內部存儲區的圖像數據是否為第二個宏塊或者是最後一個宏塊,若是,將所述內部存儲區的圖像數據上傳,否則進行下一個宏塊的數據濾波。上述的裝置,其中,所述濾波數據上傳模塊中存在ー個可配置的地址跳轉步長參數,用於配合外部存儲存儲器的物理特性,置相鄰兩行圖像數據的寫入地址在不同的存儲區域,以及將圖像數據的色度分量UV按照UV間插的方式寫到外部的存儲器中。和現有技術相比,採用本發明的技術方案,能有效提高帶寬利用率,在増加少量內部存儲空間的情況下,能夠明顯的提高寫脈衝時寬(burst Length),同時結合外部存儲設備的特性,採用參數化的跳轉步長,可以根據實際外部存儲設備的情況來調整參數,増加了靈活性。
此處所說明的附圖用來提供對本發明的進ー步理解,構成本發明的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中圖I是是實施例一中視頻濾波的方法流程圖;圖2是濾波模塊的控制於存儲器的存儲流程圖;圖3是是ー個宏塊濾波前後的數據存放位置圖;、
圖4是濾波圖像數據上傳的流程圖;圖5是濾波一個宏塊所需存儲器分布圖;圖6是兩個宏塊濾波完成後的數據存放位置圖;圖7是數據搬移後的存放位置圖;圖8是本發明實施例ー種視頻濾波裝置結構圖。
具體實施例方式為了使本發明所要解決的技術問題、技術方案及有益效果更加清楚、明白,以下結合附圖和實施例,對本發明進行進一歩詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用幹限定本發明。本發明實施例一為ー種視頻濾波的方法,在該方法中,提出了ー種round-robin (輪流)方式的內部存儲方式,round-robin方式是將內部存儲區輪循使用的ー種方式,採用三個內部存儲塊輪流存儲數據,由於視頻解碼器採用了兩級流水方式,需要分配給前ー級重建流水線ー個內部存儲塊,同時還需要分配給後ー級濾波流水線ー個內部存儲塊,剰餘ー個內部存儲塊用於存儲一個宏塊濾波後的數據。在實施例一中,該ー種視頻濾波的方法,如圖I所示,是實施例一中視頻濾波的方法流程圖,具體包括,S101,重建模塊將圖像數據發送至濾波模塊,濾波模塊的內部存儲區進行存儲,在放滿ー個內部存儲區時,啟動濾波計算模塊;S102,此時濾波計算模塊取出數據進行行列濾波,如此反覆;S103,在兩個內部存儲區的圖像數據濾波完成後,將所述濾波後的圖像數據存儲至外部DDR(Double Data Rate,雙倍速率同步動態隨機存儲器)設備中;同時另外ー個內部存儲區還可以繼續接收重建模塊的圖像數據;其中本發明內部是以三個內部存儲區為例,但不限於三個存儲區,可以具有多個存儲區。內部存儲區採用單ロ的同步動態隨機存儲器SDRAM實現,可以存儲一個宏塊的重建數據。在上述實施例一中,採用了三個內部存儲塊來存儲數據,一個用來存放重建圖像的數據,另外兩個用來存放濾波後的數據,等待兩個宏塊的數據都完成後才進行圖像數據寫入外部存儲單元的操作。由於圖像格式的原因,該實施例還支持將一行宏塊的最後ー個宏塊進行單個宏塊的數據上傳。出於節省面積的、考慮,這三個主要的內部存儲塊均採用單端ロ的RAM。該實施例中,解碼器分為重建和濾波兩級流水線來完成一個宏塊的解碼過程,整個濾波模塊的控制和存儲器存儲過程如圖2所示,是濾波模塊的控制於存儲器的存儲流程圖S201,重建過程完成ー個宏塊的圖像數據的解碼;S202,啟動宏塊的濾波過程;由於濾波邊界順序以及濾波特性的原因,濾波前後數據存放方式如圖3所示,是一個宏塊濾波前後的數據存放位置圖,在圖3中,U代表為存放上邊一行宏塊相鄰像素的存儲區,L代表存放左邊ー個宏塊相鄰像素的存儲區,B代表當前需要濾波的宏塊,其中ー個方格代表ー個4x4像素塊,BUF為緩存器。在第二個宏塊進行濾波時需要用到前面ー個宏塊的濾波後的一列數據,因此需要讀取前ー個內部存儲塊的數據,同時保證在濾波操作後將濾波後的數據仍然存放到原來的位置上,S203,在兩個宏塊的數據濾波完成後將數據寫到外部存儲區;其中,等數據寫完後需要將第二個宏塊的右邊一列的數據搬移到単獨的一個存放存儲塊,在下一個宏塊濾波時用到;這樣完成了兩個宏塊數據濾波上傳的過程。若該宏塊行的宏塊數為單數,則在最後一個宏塊時必須進行單個宏塊的濾波和上傳。整個圖像數據濾波上傳的狀態機如圖4所示,是濾波圖像數據上傳的流程圖,其中S401,先開始行濾波然後是列濾波,如此往復,直至整個宏塊濾波完成;S402,判斷是否為第二個宏塊或者是最後一個宏塊,若是將圖像數據的上傳,在數據傳輸完畢後則進行數據的搬移過程,否則進行下一個宏塊的數據濾波。在整個濾波過程中所需的存儲器memory情況如圖5所示,是濾波ー個宏塊所需存儲器分布圖,圖5代表的濾波ー個宏塊所需要的存儲區,U代表為存放上邊一行宏塊相鄰像素的存儲區,L代表存放左邊ー個宏塊相鄰像素的存儲區,B代表當前需要濾波的宏塊,其中一個方格代表ー個4x4像素塊,BUF為緩存器。在行濾波時,需要將行數據讀出,放到暫存的內部緩存器BUF中,完成行列濾波後,將數據的寫回位置在垂直方向上做了調整,主要是考慮到下一個宏塊行數據濾波的需要,將最後ー個4x4塊的所在行調整到ー個UPmemory (代表存放中上邊一行宏塊相鄰像素的存儲區),兩個宏塊濾波完成後的數據存放位置如圖6所示,是兩個宏塊濾波完成後的數據存放位置圖,在圖6中,表示濾波兩個宏塊後的像素存放格式,U代表為存放上邊一行宏塊相鄰像素的存儲區,L代表存放左邊ー個宏塊相鄰像素的存儲區,B代表當前需要濾波的宏塊,其中一個方格代表ー個4x4像素塊,該圖是相對於圖6 (沒有濾波前)的存放位置變化圖。數據上傳結束後進行右邊一列的數據搬移後的數據存放位置如圖7所示,是數據搬移後的存放位置圖,相對於圖6而言,是將宏塊的右邊一列數據搬移到左邊存儲區的存放方式,即將數據搬移的數據作為下一個宏塊的左邊濾波數據。本發明實施例還提供了ー種視頻濾波裝置,如圖8所示,是本發明實施例ー種視頻濾波裝置結構圖,其包括,重建模塊,用於重建圖像數據,並將所述圖像數據放到濾波模塊的內部存儲區;濾波模塊,包含多個內部存儲區,接收所述重建的圖像數據,在一個存儲區放滿後,啟動濾波計算模塊;
、
濾波計算模塊,從內部存儲區取出圖像數據進行行列濾波,如此往復,等到兩個內部存儲區的圖像數據濾波完成後,將數據通過濾波數據上傳模塊放到外部DDR設備中。濾波數據上傳模塊,將數據放到外部DDR設備中。所述濾波計算模塊用於對所述解碼後的圖像數據進行濾波具體為,先進行行濾波,然後是列濾波,如此往復,直至整個宏塊濾波完成;所述內部存儲區的圖像數據濾波完成具體為,判斷所述內部存儲區的圖像數據是否為第二個宏塊或者是最後一個宏塊,若是,將所述內部存儲區的圖像數據上傳,否則進行下一個宏塊的數據濾波。
濾波數據上傳模塊,在該模塊中存在ー個可配置的地址跳轉步長的參數,用於配合外部的存儲設備的物理特性,讓相鄰兩行圖像數據的寫入地址在不同的存儲區域,可以有效的避免打開和關閉不同行引起的效率降低問題。在上述實施例中,將圖像的色度分量UV的數據按照UV間插的方式寫到外部的存儲區中,保證UV數據的上傳也能夠使用較長的burst length,進ー步提高UV數據上傳的效率。在上述實施例中,一是採用內部存儲邏輯的方式,將兩個宏塊的數據一起上傳,增加一次數據寫入的burst length ;ニ是採用可配置的參數來調整步長;三是採用UV間插的數據存放格式。通過仿真證明,上述方法能夠有效的提高數據傳輸的帶寬利用率。上述說明示出並描述了本發明的優選實施例,但如前所述,應當理解本發明並非局限於本文所披露的形式,不應看作是對其他實施例的排除,而可用於各種其他組合、修改和環境,並能夠在本文所述發明構想範圍內,通過上述教導或相關領域的技術或知識進行改動。而本領域人員所進行的改動和變化不脫離本發明的精神和範圍,則都應在本發明所附權利要求的保護範圍內。權利要求
1.一種視頻濾波方法,其特徵在於,所述方法包括, 重建模塊進行圖像數據解碼後,將所述解碼後的圖像數據發送至濾波模塊進行存儲; 濾波模塊的內部存儲區進行存儲,至少三個內部存儲區中一個存儲區放滿後,啟動濾波計算模塊; 濾波計算模塊對所述解碼後的圖像數據進行濾波; 在內部存儲區的圖像數據濾波完成後,濾波數據上傳模塊將所述濾波後的圖像數據存儲至外部存儲器。
2.根據權利要求I所述的方法,其特徵在於,將所述濾波後的圖像數據存儲至外部存儲器的同時,所述方法還包括,存儲濾波圖像數據的存儲區之外的其他內部存儲區繼續接收重建模塊的圖像數據。
3.根據權利要求I或2所述的方法,其特徵在於,所述圖像數據是以宏塊為單位,每個宏塊的圖像數據存放一個存儲區。
4.根據權利要求3所述的方法,其特徵在於,所述濾波計算模塊對所述解碼後的圖像數據進行濾波具體為, 先進行行濾波,然後是列濾波,如此往復,直至整個宏塊濾波完成。
5.根據權利要求4所述的方法,其特徵在於,所述內部存儲區的圖像數據濾波完成具體為, 判斷所述內部存儲區的圖像數據是否為第二個宏塊或者是最後一個宏塊,若是,將所述內部存儲區的圖像數據上傳,否則進行下一個宏塊的數據濾波。
6.根據權利要求I或2所述的方法,其特徵在於,所述濾波數據上傳模塊中存在一個可配 置的地址跳轉步長參數,用於配合外部存儲存儲器的物理特性,置相鄰兩行圖像數據的寫入地址在不同的存儲區域。
7.根據權利要求I或2所述的方法,其特徵在於, 將圖像數據的色度分量UV按照UV間插的方式寫到外部的存儲器中。
8.一種視頻濾波裝置,其特徵在於,所述裝置包括, 重建模塊,用於進行圖像數據解碼後,將所述解碼後的圖像數據發送至濾波模塊進行存儲; 濾波模塊,包括至少三個內部存儲區,用於存儲所述解碼後的圖像數據; 濾波計算模塊,用於在一個內部存儲區放滿後啟動,對所述解碼後的圖像數據進行濾波; 濾波數據上傳模塊,用於在在內部存儲區的圖像數據濾波完成後,將所述濾波後的圖像數據存儲至外部存儲器。
9.根據權利要求8所述的裝置,其特徵在於,所述濾波計算模塊用於對所述解碼後的圖像數據進行濾波具體為,先進行行濾波,然後是列濾波,如此往復,直至整個宏塊濾波完成; 所述內部存儲區的圖像數據濾波完成具體為,判斷所述內部存儲區的圖像數據是否為第二個宏塊或者是最後一個宏塊,若是,將所述內部存儲區的圖像數據上傳,否則進行下一個宏塊的數據濾波。
10.根據權利要求8所述的裝置,其特徵在於,所述濾波數據上傳模塊中存在一個可配置的地址跳轉步長參數,用於配合外部存儲存儲器的物理特性,置相鄰兩行圖像數據的寫入地址在不同的存儲區域,以及 將圖像數據的色度分量UV按照UV間插的方式寫到外部的存儲器中。
全文摘要
本發明涉及一種視頻濾波方法,該方法包括,重建模塊進行圖像數據解碼後,將所述解碼後的圖像數據發送至濾波模塊進行存儲;濾波模塊的內部存儲區進行存儲,至少三個內部存儲區中一個存儲區放滿後,啟動濾波計算模塊;濾波計算模塊對所述解碼後的圖像數據進行濾波;在內部存儲區的圖像數據濾波完成後,濾波數據上傳模塊將所述濾波後的圖像數據存儲至外部存儲器。本發明還涉及一種視頻濾波裝置。採用本發明的技術方案,能有效提高帶寬利用率,在增加少量內部存儲空間的情況下,能夠明顯的提高寫脈衝時寬,同時結合外部存儲設備的特性,採用參數化的跳轉步長,可以根據實際外部存儲設備的情況來調整參數,增加了靈活性。
文檔編號H04N7/26GK102685480SQ201110063489
公開日2012年9月19日 申請日期2011年3月16日 優先權日2011年3月16日
發明者高崇興 申請人:中興通訊股份有限公司