新四季網

同時執行視頻數據水平和垂直濾波的解塊濾波器及其方法

2023-06-11 04:47:36

專利名稱:同時執行視頻數據水平和垂直濾波的解塊濾波器及其方法
技術領域:
本發明涉及視頻解碼,尤其涉及用於消除可能在H.264/高級視頻編碼(AVC)標準系統中出現的塊偽像(blocking artifact)的解塊濾波器和用於操作它的方法。
背景技術:
許多視頻處理系統使用標準化的視頻編解碼器,諸如由國際電信聯盟建議的H.261、H.262和H.263。諸如運動圖像專家組(MPEG)-1、MPEG-2和MPEG-4之類的編解碼器標準應用到那些視頻編解碼器。近來,已經對能夠獲得更高壓縮率的H.264/AVC視頻編解碼器進行了研究和標準化工作。
在H.264/AVC視頻編碼標準中,以塊為單位進行圖像壓縮編碼,然後解碼。結果,可能在解碼後的圖像中出現塊偽像。塊偽像有兩種主要起因第一,由於連同H.264/AVC一起的大多數壓縮技術對預定大小的塊執行離散餘弦變換(DCT),然後對經DCT變換的塊進行量化,所以單獨地變換和量化不重疊的塊單位,而不考慮它們相鄰塊或像素之間的相關性,這可能導致數據損失和/或塊偽像。第二,由於逐塊預測運動向量來補償圖像,所以包含在塊中的像素具有相同的運動向量,這可能導致塊偽像。
解塊濾波器可以消除基於塊編碼時出現的塊邊緣誤差,並且可以改善最終解碼圖像的外觀。H.264/AVC標準可以與解塊濾波器功能一起使用來防止和/或減少塊偽像。但很不幸的是,這樣的實現可能使解碼器的實現很複雜。

發明內容
根據本發明一些實施例,解塊濾波器包括當前宏塊(macroblock)緩衝存儲器,配置來存儲要濾波的當前宏塊的視頻數據;側(side)宏塊緩衝存儲器,配置來存儲位於當前宏塊側的相鄰宏塊的視頻數據的一部分;寄存器緩衝器陣列,配置來存儲為當前濾波而從當前宏塊緩衝存儲器讀取的視頻數據、從側宏塊緩衝存儲器讀取的視頻數據和相鄰宏塊的數據;和連接到寄存器緩衝器陣列的邊緣濾波器,配置來對視頻數據的當前宏塊的子塊的邊緣執行水平或垂直濾波,並且同時對視頻數據的當前宏塊的後續子塊的邊緣執行水平或垂直濾波中的另一個。垂直濾波使用來自相鄰宏塊的數據,而水平濾波使用來自側宏塊緩衝存儲器的視頻數據。
在其它實施例中,解塊濾波器還包括外部存儲器,配置來存儲包括相鄰宏塊的視頻數據的已濾波和未濾波的視頻數據。
在又一實施例中,解塊濾波器還包括濾波輸出緩衝存儲器,配置來暫時存儲由邊緣濾波器濾波的視頻數據。
在又一實施例中,當前宏塊緩衝存儲器、側宏塊存儲器和輸出緩衝存儲器中的每一個包括至少兩個配置來用於流水線濾波操作的緩衝存儲器。
在又一實施例中,解塊濾波器包括外部存儲控制器,配置來從外部存儲器讀取視頻數據,並且將讀取的視頻數據存儲在當前宏塊緩衝存儲器和/或側宏塊緩衝存儲器中;和寄存器緩衝器陣列控制器,配置來從當前宏塊緩衝存儲器、側宏塊緩衝存儲器和外部存儲器中讀取視頻數據,並且將所讀取的視頻數據存儲在寄存器緩衝器陣列中。
在又一實施例中,寄存器陣列配置來從當前宏塊緩衝存儲器讀取子塊視頻數據、從側宏塊緩衝存儲器讀取視頻數據和從外部存儲器讀取視頻數據或相鄰宏塊,存儲所讀取的視頻數據,暫時存儲由邊緣濾波器濾波的子塊視頻數據,並且提供所存儲的當前宏塊的子塊視頻數據用來後續邊緣的濾波。
在又一實施例中,解塊濾波器還包括連接到邊緣濾波器的濾波強度生成器,配置來確定邊緣濾波的濾波強度;和連接到濾波強度生成器的閾值生成器,配置來確定是否執行邊緣濾波。濾波強度生成器與邊緣濾波器分離。
在又一實施例中,濾波強度生成器配置來在運動向量產生處理的同時使用在運動向量產生處理期間產生的運動向量來產生濾波強度。
在又一實施例中,邊緣濾波器包括為色度或亮度分量分離地運行的多個濾波引擎來允許同時濾波當前宏塊的子塊的垂直和水平邊緣。
在又一實施例中,解塊濾波器還包括緩衝存儲控制器,配置來分別控制向當前宏塊緩衝存儲器、側宏塊緩衝存儲器和濾波輸出緩衝存儲器輸入的視頻數據和從它們輸出的視頻數據。
在又一實施例中,邊緣濾波器配置來同時對視頻數據的亮度分量和視頻數據的色度分量執行濾波操作。
在又一實施例中,視頻數據配置來由H.264/AVC視頻編解碼器進行處理。
在本發明進一步的實施例中,通過將對應於視頻數據的16×16宏塊的水平邊緣和垂直邊緣分為4×4子塊的邊緣來執行宏塊視頻數據的解塊濾波,並且從16×16宏塊的頂水平邊緣的4×16塊到16×16宏塊的底水平邊緣的4×16塊執行解塊濾波,使得對於每個4×16塊,執行四個4×4子塊的垂直邊緣的水平濾波和隨後四個4×4子塊的水平邊緣的垂直濾波。
在進一步的實施例中,執行解塊濾波還包括執行第一4×16塊的水平濾波,同時執行第二4×16塊的水平濾波和第一4×16塊的垂直濾波,同時執行第三4×16塊的水平濾波和第二4×16塊的垂直濾波,同時執行第四4×16塊的水平濾波和第三4×16塊的垂直濾波,並且執行第四4×16塊的垂直濾波。
在進一步的實施例中,各個4×16塊的水平和/或垂直濾波還包括接收第一4×4子塊的數據,同時執行第一4×4子塊的濾波和第二4×4子塊的數據接收,同時執行第二4×4子塊的濾波和第三4×4子塊的數據接收,同時執行第三4×4子塊的濾波和第四4×4子塊的數據接收,並且執行第四4×4子塊的濾波。
在進一步的實施例中,4×4子塊的各個子塊的濾波包括同時濾波四個像素行。
在進一步的實施例中,執行解塊濾波包括對視頻數據的亮度分量和色度分量執行濾波操作。
在進一步的實施例中,視頻數據配置來由H.264/AVC視頻編解碼器進行處理。


通過結合附圖對本發明的優選實施例進行詳細描述,本發明的上述目的和優點將會變得更加清楚,其中圖1是常規視頻解碼器系統的方框圖;圖2圖解用在解塊濾波操作中的宏塊;圖3A和3B是圖解宏塊中的邊緣濾波順序的圖;
圖4是根據本發明一些實施例的解塊濾波器的方框圖;圖5是圖解根據本發明一些實施例的宏塊中的邊緣濾波順序的圖;圖6是圖解根據本發明一些實施例的濾波操作中的流水線結構的方框圖;以及圖7是圖解根據本發明一些實施例的解塊濾波操作的流程圖;具體實施方式
雖然本發明可以經受各種修改和替換形式,但在附圖中通過實例顯示其特定實施例,並在將這裡進行詳細描述。然而,應該理解的是,這不意欲將本發明限制為公開的特定形式,相反,本發明涵蓋落入權利要求所限定的本發明宗旨和範圍中的所有修改、等效物和替代。相同的附圖標記在描述和附圖中表示相同的元件。
正如在這裡使用的那樣,除非另外說明,單數形式的「一(個)」、「該」意欲包含「一類」、「多個」之類的複數形式。將進一步理解的是,如在說明書中所使用的那樣,術語「包括」表示所述特徵、整數、步驟、操作、元件和/或部件的存在,但是不排除一個或多個其它特徵,整數、步驟、操作、元件、部件和/或它們的組的存在和添加。將理解的是,當元件表示為「連接到」或「耦合到」其它元件時,它既可以直接連接到或耦合到其它元件,也可以存在中間元件。此外,這裡使用的「連接到」或「耦合到」可以包括無線連接或耦合。正如在這裡使用的那樣,術語「和/或」包括相關的列出項的一或多個的任何一個和所有組合。
正如本發明所屬的領域的普通技術人員通常所理解的那樣,除非另外定義,這裡使用的所有術語(包括技術和科學術語)具有相同的含義。將進一步理解的是,諸如在常用字典中定義的術語,應該解釋為具有與在相關領域中的它們的含義一致的含義,並且除非在這裡明確定義,否則不應解釋為理想化或過分正式的含義。
圖1是常規視頻解碼器系統的方框圖。通常,壓縮數據通過解碼處理被解壓縮為原始數據,並顯示在視頻處理器中的屏幕上。參照圖1,用於解碼視頻數據的視頻解碼器10包括分析器11、熵解碼器12、逆變換單元13、運動向量計算器14、逆間/內預測單元(inverse inter/intra-prediction unit)15、解塊濾波器16、多個硬體模塊(未示出)、外部存儲控制器(未示出)和個人計算機接口(PCI)模塊(未示出)。
從內部存儲器讀取在解碼處理中使用的數據,或將在解碼處理中使用的數據寫入外部存儲器,並且模塊通過圖1所示的系統總線17交換數據。由上述硬體模塊順序執行解碼處理來將壓縮視頻數據解壓縮為原始數據。由於以宏塊為單位壓縮和解壓縮視頻數據,因此可能在解壓縮的圖像的塊之間的邊界上出現基於塊的屏幕差異。這種塊偽像可以通過圖1的解塊濾波器16來減少。由於所述塊偽像可能通過以預定大小的塊為單位的視頻數據壓縮引起,所以也可以以宏塊為單位執行解塊濾波器16的邊緣濾波。
圖2圖解用在解塊濾波操作中的宏塊。參照圖2,當前宏塊標記為X,當前宏塊的相鄰宏塊標記為A、B、C和D。如圖2所示,位於當前宏塊X左側的宏塊標記為A,並且位於當前宏塊X上方的宏塊標記為B。為了濾波當前宏塊X邊緣,如圖2所示,需要宏塊A和B的數據。換句話說,需要位於當前宏塊X的左側的宏塊A來進行水平濾波,並且需要位於當前宏塊X的上方的宏塊B來進行垂直濾波。
圖3A和3B是圖解宏塊中的邊緣濾波順序的圖。參照圖3A和3B,對包含在宏塊中的像素的亮度分量和色度分量執行關於宏塊的濾波操作。圖3A顯示要濾波的亮度分量的邊界,而圖3B顯示要濾波的色度分量的邊界。以a、b、c、d的順序濾波亮度分量的垂直邊界,而以e、f、g、h的順序濾波亮度分量的水平邊界。以i、j的順序濾波色度分量的垂直邊界,並且以k、l的順序濾波色度分量的水平邊界。通常,在濾波色度分量前濾波亮度分量。
為了執行濾波操作,可以使用水平或垂直邊界的任意一側的四個像素。換句話說,對於水平濾波操作,可以使用位於垂直邊界左側的四個像素和位於垂直邊界右側的四個像素,而對於垂直濾波操作,可以使用位於水平邊界上方的四個像素和位於水平邊界下方的四個像素。要修正的像素數和所應用的濾波強度可以根據包括相鄰4×4塊的宏塊中使用的量化參數、相鄰4×4塊的編碼模式和/或相鄰4×4塊的運動向量而改變。
如上所述,當使用常規濾波方法時,對於濾波操作可能需要至少800個周期,包括用於存儲器存取和濾波所需的時間。結果,在高解析度視頻數據的濾波處理中可能出現延遲,這種延遲可能導致很難實時處理高解析度視頻數據。
圖4是根據本發明一些實施例的解塊濾波器的方框圖。根據解塊濾波器算法,選擇對應於要濾波的邊緣的像素,並且從內部或外部存儲器讀取所選擇的像素並將其存儲在緩衝器中用於濾波操作。為了保持實際圖像的邊緣部分並防止過度濾波,獲得邊界濾波強度,並且將其與一閾值比較來確定是否執行濾波。例如,在H.264/AVC標準中公開了這樣的解塊濾波器算法。
設計根據本發明一些實施例的解塊濾波器400的硬體結構來降低存儲器存取次數,並允許高效濾波操作。根據本發明一些實施例的解塊濾波器400還可以允許並行執行水平濾波和垂直濾波。
為此,本發明一些實施例的解塊濾波器400包括兩個輸出緩衝存儲器(0和1)402、兩個X緩衝存儲器(0和1)404、兩個A緩衝存儲器(0和1)406、輸出緩衝存儲控制器408、X緩衝存儲控制器410、A緩衝存儲控制器412、外部總線接口414、寄存器緩衝器陣列416、寄存器緩衝器陣列控制器418、邊緣濾波器420、濾波強度生成器422、閾值生成器424、外部存儲控制器426和外部存儲器430,其配置如圖所示。
兩個輸出緩衝存儲器(0和1)402是用於在將數據輸出到外部存儲器430之前暫時存儲由邊緣濾波器420濾波的數據的存儲器。兩個X緩衝存儲器(0和1)404是用於存儲對應於正在濾波的邊緣的宏塊的數據的存儲器。換句話說,X緩衝存儲器(0和1)404存儲圖2的當前宏塊X的數據。兩個A緩衝存儲器(0和1)406存儲在當前宏塊X的左側的相鄰宏塊數據中的、與當前宏塊相鄰的四個4×4子塊的數據。輸出緩衝存儲控制器408控制輸出緩衝存儲器(0和1)402的數據輸入和輸出。X緩衝存儲控制器410控制X緩衝存儲器(0和1)404的數據輸入和輸出,並且A緩衝存儲控制器412控制A緩衝存儲器(0和1)406的數據輸入和輸出。外部總線接口414執行接口功能,諸如從內部存儲器或外部存儲器讀取用於解碼處理的數據,或者將數據存儲在內部存儲器或外部存儲器。
為了執行濾波操作,寄存器緩衝器陣列416存儲從X緩衝存儲器(0和1)404讀取的當前宏塊的數據、從A緩衝存儲器(0和1)406讀取的位於當前宏塊左側的宏塊的數據和從外部存儲器430讀取的位於當前宏塊上方的宏塊的數據,並且在由邊緣濾波器420濾波的數據當中存儲要用在後續濾波操作中的數據。邊緣濾波器420使用存儲在寄存器緩衝器陣列416中的數據濾波邊緣。濾波強度生成器422確定濾波強度來恢復實際圖像的邊緣部分並防止/降低過度濾波,並且閾值生成器424計算閾值來確定是否執行濾波。外部存儲器430存儲用於濾波的視頻數據並存儲經濾波的數據。寄存器緩衝器陣列418控制寄存器緩衝器陣列416,而外部存儲控制器426控制外部存儲器430。
將參照圖4描述根據本發明一些實施例的解塊濾波器400的操作。為了濾波宏塊,使用與當前宏塊相關的信息和與相鄰宏塊相關的信息。換句話說,使用與位於當前宏塊左側的宏塊A相關的信息來濾波當前宏塊的垂直邊緣,而使用與位於當前宏塊上方的宏塊B相關的信息來濾波當前宏塊的水平邊緣。如上所述,在圖1的視頻解碼器系統中,解塊濾波器16從解塊濾波器16之前的級的預測器15接收與要濾波的當前宏塊相關的信息,並且將信息存儲在X緩衝存儲器(0和1)404中。在一些實施例中,對於視頻解碼器系統的有效流水線結構,X緩衝存儲器的數量是2。
也使用用於存儲相鄰宏塊A和B來濾波當前宏塊的水平/垂直邊緣的存儲緩衝器,並且A緩衝存儲器406存儲與位於當前宏塊左側的宏塊A相關的信息並根據MBAFF模式存儲4*32像素信息。根據本發明一些實施例,對於視頻解碼器系統的流水線結構,A緩衝存儲器406的數量也是2。
在H.264/AVC主簡檔(profile)的情況下,當與位於當前宏塊上方的宏塊B相關的信息支持最大解析度2048*1024時,根據MBAFF模式使用128*4*32像素信息。這裡,128是包含在圖像的一行中的宏塊的數量。然而,像素信息量可能多到不能存儲在內部存儲緩衝器中。因此,這樣一種結構可能更有效,即,在該結構中,與位於當前宏塊X上方的宏塊B相關的信息存儲在外部存儲器430中,並且在濾波之前預先讀取與宏塊B相關的必要像素信息並將其存儲在內部寄存器緩衝器陣列416。此外,如圖4所示,為了存取外部存儲器430,可以使用外部總線接口模塊414與系統總線432交換數據。
在圖4中,寄存器緩衝器陣列416存儲在用於濾波操作的像素之中的、用於後續濾波操作的數據和用於高速濾波操作的流水線結構的經濾波的像素,由此可以有效地處理濾波。換句話說,與常規解塊濾波器不同,根據本發明一些實施例的寄存器緩衝器陣列416讀取用於邊緣濾波的信息,執行濾波操作,並且在完成垂直/水平邊緣濾波之前在寄存器中存儲所讀取的信息,由此有助於高速流水線結構並降低不必要的存儲器存取周期。
邊緣濾波器420接收來自寄存器緩衝器陣列416的像素信息、來自濾波強度生成器422的邊界濾波強度和來自閾值生成器424的閾值,並且執行實際濾波操作。對於高速濾波操作,邊緣濾波器420包括分離地對色度或亮度分量進行操作來允許同時濾波4×4子塊的垂直或水平邊緣的四個濾波引擎。四個濾波引擎中的每一個濾波包含在每個4×4子塊中的一行數據中的像素。
根據本發明一些實施例的解塊濾波器400的邊緣濾波器420同時濾波亮度分量和色度分量來降低濾波操作所需的時間。
如圖4所示,根據本發明一些實施例的解塊濾波器400配置來使得濾波強度生成器422安裝在邊緣濾波器420之外。為了確定濾波強度,可以使用運動向量信息和比較各種條件的處理。運動向量信息用於圖1所示的常規視頻解碼器10中的預測器15之前的級。因此,通常實際上在內部存儲器中存儲運動向量信息,並且當產生濾波強度時使用所存儲的信息。然而,在根據本發明一些實施例的解塊濾波器400中,在產生運動向量期間產生濾波強度來共享運動向量信息,而不用分離地存儲運動向量信息。通過這樣做,不僅可以節約內部存儲器,而且由於在解塊濾波器之前的級產生濾波強度可以降低解塊濾波操作所需的時間。
用於流水線結構的兩個輸出緩衝存儲器(0和1)臨時存儲濾波的數據,並且將濾波的數據輸出到外部存儲器430。
解塊濾波器400以4×4子塊為單位執行濾波操作,並且對每個塊邊緣存取至少兩個像素。結果,存儲器存取數量增加,這可能影響解碼器的性能。因此,根據本發明一些實施例的解塊濾波器400配置得可以降低存儲器存取數量,並且有效地並行執行水平濾波和垂直濾波。
根據常規濾波順序,在濾波垂直邊緣後濾波水平邊緣。在這種情況下,為了濾波宏塊,可以執行64個水平濾波操作和64個垂直濾波操作。如果用於數據輸入/輸出的存儲器存取所需的周期數和濾波操作所需的周期數大約是15個周期,則總共需要1920個周期,這可能導致很難實時處理高解析度視頻數據。然而,根據本發明一些實施例的解塊濾波器400通過可以同時處理垂直和水平濾波的硬體結構,可以降低存儲器存取和用於濾波操作所需的周期的數量。
圖5是圖解根據本發明一些實施例的宏塊中的邊緣濾波順序的圖。在圖5中,顯示了16×16宏塊,並且16個子塊的每一個是4×4塊。從頂水平行的四個4×4子塊開始到底水平行的四個4×4子塊為止執行宏塊的解塊濾波。在順序對四個4×4子塊的垂直邊緣執行水平濾波後,順序對四個4×4子塊的水平邊緣執行垂直濾波。
換句話說,濾波宏塊的順序如下,在以如圖5A所示的順序1、2、3、4對子塊執行水平濾波(I)之後,以如圖5B所示的順序1、2、3、4對子塊執行垂直濾波(I′)。在垂直濾波(I′)完成後,以5、6、7、8的順序對子塊執行水平濾波(II),然後以5、6、7、8的順序對子塊執行垂直濾波(II′)。在垂直濾波(II′)完成後,以9、10、11、12的順序對子塊執行水平濾波(III),然後以9、10、11、12的順序對子塊執行垂直濾波(III′)。在垂直濾波(III′)完成後,以13、14、15、16的順序對子塊執行水平濾波(IV),然後以13、14、15、16的順序對子塊執行垂直濾波(IV′)。
圖6是圖解根據本發明一些實施例的濾波操作中的流水線結構的方框圖。根據本發明一些實施例的解塊濾波方法使用4×16塊作為其基本處理單位。換句話說,如圖5所示,順序對四個4×4子塊1、2、3和4(即,4×16塊)、四個4×4子塊5、6、7和8、四個4×4子塊9、10、11和12和四個4×4子塊13、14、15和16執行濾波。根據本發明一些實施例的解塊濾波方法使用4×16塊,即四個4×4子塊,作為其基本處理單位來以二級流水線結構的形式處理水平濾波和垂直濾波。在4×16塊中,使用四個4×4子塊以二級流水線結構的形式處理水平濾波和垂直濾波。
將參照圖5和6描述根據本發明一些實施例的流水線結構。在對第一4×16塊執行水平濾波(I)後,同時對第一4×16塊執行垂直濾波(I′)和對第二4×16塊執行水平濾波(II)。然後同時對第二4×16塊執行垂直濾波(II′)和對第二4×16塊執行水平濾波(III)。然後同時對第三4×16塊執行垂直濾波(III′)和對第四4×16塊執行水平濾波(IV)。最後對第四4×16塊執行垂直濾波(IV′)。
換句話說,在根據本發明一些實施例的解塊濾波方法中,由於以流水線形式執行水平濾波和垂直濾波,因此對子塊5、6、7、8執行水平濾波,同時對子塊1、2、3、4執行垂直濾波。此外,對子塊5、6、7、8執行垂直濾波,同時對子塊9、10、11、12執行水平濾波。對子塊9、10、11、12執行垂直濾波,同時對子塊13、14、15、16執行水平濾波。最後對子塊13、14、15、16執行垂直濾波。
在4×16塊中,在關於第一4×4子塊的數據輸入後,同時執行第一4×4子塊的濾波和關於第二4×4子塊的數據輸入。同時執行第二4×4子塊的濾波和關於第三4×4子塊的數據輸入。同時執行第三4×4子塊的濾波和關於第四4×4子塊的數據輸入。最後執行第四4×4子塊的濾波。
例如,在圖5的第一4×16塊即4×4子塊1、2、3、4水平濾波中,在執行4×4子塊1的水平濾波的同時,輸入用於4×4子塊2的水平濾波的數據。以相同方式,在執行4×4子塊2的水平濾波同時,輸入用於4×4子塊3的水平濾波的數據。在執行4×4子塊3的水平濾波的同時,輸入用於4×4子塊4的水平濾波的數據。最後執行4×4子塊4的水平濾波。
因此,根據本發明一些實施例的解塊濾波方法可以關於4×16塊同時處理水平濾波和垂直濾波。此外,關於每個4×4塊,水平濾波和垂直濾波可以同時處理數據輸入和濾波操作。
為了降低濾波操作所需的時間,根據本發明一些實施例的解塊濾波方法同時處理關於亮度分量和色度分量的濾波操作。
如圖4所示,通過根據本發明一些實施例的解塊濾波器400中的寄存器緩衝器陣列416實現具有高速流水線結構的處理濾波操作的功能。換句話說,在根據本發明一些實施例的解塊濾波方法中,以4×16塊執行垂直和水平濾波,並且使用寄存器緩衝器陣列416將濾波的4×16塊用於後續垂直濾波,來降低在基於4×4塊的濾波操作中不必要的存儲器存取。因此,可以跳過用於後續濾波的、在內部緩衝存儲器中存儲數據的處理,這產生降低存儲器存取所需的周期的效果。
圖7是圖解根據本發明一些實施例的解塊濾波操作的流程圖。參照圖7,從內部X緩衝存儲器讀取用於垂直邊緣的水平濾波的宏塊A和宏塊X的第一4×4子塊的數據,並且存儲在寄存器緩衝器陣列來提供要濾波的數據(S701)。在提供了要濾波的數據後,在操作S702確定要濾波的數據是否是垂直邊緣。如果要濾波的數據是垂直邊緣,則在操作S703執行水平濾波。在操作S704,在對數據執行水平濾波的同時,將宏塊X的第二4×4子塊的數據提供到寄存器緩衝器陣列用於後續水平濾波。使用經受水平濾波的數據和接下來要在操作S707濾波4×4子塊的數據來更新寄存器緩衝器陣列。重複該處理直到在操作S708和S709中完成水平濾波。在操作S710和S711,在執行水平濾波的同時,從外部存儲器將用於第一或第二子塊的垂直濾波的宏塊B的4×16塊數據提供到寄存器緩衝器陣列。
在以流水線形式完成四個垂直邊緣的水平濾波後,可以在操作S705執行垂直濾波。可以在操作S718輸出經受水平和垂直濾波的宏塊A的數據。
在操作S705,以基於4×4塊的流水線結構的形式使用經受水平濾波的宏塊X的4×16塊數據和宏塊B的4×16塊數據來執行垂直濾波,同時在操作S703對後續垂直邊緣執行上述水平濾波。然後,在操作S712,使用經受垂直濾波的數據和經受水平濾波的4×4子塊數據更新寄存器緩衝器陣列。重複該處理直到在操作S713和S714完成4×4垂直濾波為止。
在完成垂直濾波後,在操作S715,宏塊X的四個4×16塊的數據存儲在A緩衝存儲器中,用於後續宏塊的解塊濾波,同時,在操作S716,將經受垂直和水平濾波的宏塊B的數據存儲在將要輸出到外部存儲器的輸出緩衝器,然後在後續水平和垂直濾波中輸出到外部存儲器。使用用於後續垂直濾波的4×4宏塊X的數據更新寄存器緩衝器陣列。在對所有垂直和水平邊緣執行該處理之後,在操作S717和操作S719中,完成宏塊的解塊濾波,並且將濾波後的數據輸出到外部存儲器。
基於根據本發明一些實施例的解塊濾波器和解塊濾波方法,使用可以同時處理數據輸入、濾波操作、垂直濾波、水平濾波和數據輸出的流水線結構可以執行高速濾波操作。
儘管已參照本發明的確定優選實例表示和描述了本發明,但本領域內的普通技術人員將理解的是,可在不背離由所附權利要求書限定的本發明宗旨和範圍的前提下對本發明進行各種形式和細節上的修改。
權利要求
1.一種解塊濾波器,包括當前宏塊緩衝存儲器,配置來存儲要濾波的當前宏塊的視頻數據;側宏塊緩衝存儲器,配置來存儲位於當前宏塊側的相鄰宏塊的視頻數據的一部分;寄存器緩衝器陣列,配置來存儲為當前濾波而從當前宏塊緩衝存儲器讀取的視頻數據、從側宏塊緩衝存儲器讀取的視頻數據和相鄰宏塊的數據;和連接到寄存器緩衝器陣列的邊緣濾波器,配置來對視頻數據的當前宏塊的子塊的邊緣執行水平或垂直濾波,並且同時對視頻數據的當前宏塊的後續子塊的邊緣執行水平或垂直濾波中的另一個,其中垂直濾波使用來自相鄰宏塊的數據,而水平濾波使用來自側宏塊緩衝存儲器的視頻數據。
2.如權利要求1所述的解塊濾波器,還包括外部存儲器,配置來存儲包括相鄰宏塊的視頻數據的已濾波和未濾波的視頻數據。
3.如權利要求2所述的解塊濾波器,還包括濾波輸出緩衝存儲器,配置來暫時存儲由邊緣濾波器濾波的視頻數據。
4.如權利要求3所述的解塊濾波器,其中當前宏塊緩衝存儲器、側宏塊存儲器和輸出緩衝存儲器中的每一個包括至少兩個配置來用於流水線濾波操作的緩衝存儲器。
5.如權利要求3所述的解塊濾波器,還包括外部存儲控制器,配置來從外部存儲器讀取視頻數據,並且將讀取的視頻數據存儲在當前宏塊緩衝存儲器和/或側宏塊緩衝存儲器中;和寄存器緩衝器陣列控制器,配置來從當前宏塊緩衝存儲器、側宏塊緩衝存儲器和外部存儲器中讀取視頻數據,並且將所讀取的視頻數據存儲在寄存器緩衝器陣列中。
6.如權利要求5所述的解塊濾波器,其中寄存器陣列配置來從當前宏塊緩衝存儲器讀取子塊視頻數據、從側宏塊緩衝存儲器讀取視頻數據和從外部存儲器讀取視頻數據或相鄰宏塊,存儲所讀取的視頻數據,暫時存儲由邊緣濾波器濾波的子塊視頻數據,並且提供所存儲的當前宏塊的子塊視頻數據用來濾波後續邊緣。
7.如權利要求5所述的解塊濾波器,還包括連接到邊緣濾波器的濾波強度生成器,配置來確定邊緣濾波的濾波強度;和連接到濾波強度生成器的閾值生成器,配置來確定是否執行邊緣濾波,其中濾波強度生成器與邊緣濾波器分離。
8.如權利要求7所述的解塊濾波器,其中濾波強度生成器配置來在運動向量產生處理的同時使用在運動向量產生處理期間產生的運動向量來產生濾波強度。
9.如權利要求1所述的解塊濾波器,其中邊緣濾波器包括為色度或亮度分量單獨地運行的多個濾波引擎,以允許同時濾波當前宏塊的子塊的垂直和水平邊緣。
10.如權利要求5所述的解塊濾波器,還包括緩衝存儲控制器,配置來分別控制向當前宏塊緩衝存儲器、側宏塊緩衝存儲器和濾波輸出緩衝存儲器輸入的視頻數據和從它們輸出的視頻數據。
11.如權利要求1所述的解塊濾波器,其中邊緣濾波器配置來同時對視頻數據的亮度分量和視頻數據的色度分量執行濾波操作。
12.如權利要求1所述的解塊濾波器,其中視頻數據配置來由H.264/AVC視頻編解碼器進行處理。
13.一種解塊濾波方法,包括存儲要濾波的當前宏塊的視頻數據;存儲位於當前宏塊側的相鄰宏塊的視頻數據的一部分;存儲為當前濾波而從當前宏塊緩衝存儲器讀取的視頻數據、從側宏塊緩衝存儲器讀取的視頻數據和相鄰宏塊的視頻數據;和對視頻數據的當前宏塊的子塊的邊緣執行水平或垂直濾波,並且同時對視頻數據的當前宏塊的後續子塊的邊緣執行水平或垂直濾波中的另一個,其中垂直濾波使用來自相鄰宏塊的數據,而水平濾波使用來自側宏塊緩衝存儲器的視頻數據。
14.一種解塊濾波方法,包括將對應於視頻數據的16×16宏塊的水平邊緣和垂直邊緣分為4×4子塊的邊緣;和從16×16宏塊的頂水平邊緣的4×16塊到16×16宏塊的底水平邊緣的4×16塊執行解塊濾波,使得對於每個4×16塊,執行四個4×4子塊的垂直邊緣的水平濾波和隨後四個4×4子塊的水平邊緣的垂直濾波。
15.如權利要求14所述的解塊濾波方法,其中執行解塊濾波還包括執行第一4×16塊的水平濾波;同時執行第二4×16塊的水平濾波和第一4×16塊的垂直濾波;同時執行第三4×16塊的水平濾波和第二4×16塊的垂直濾波;同時執行第四4×16塊的水平濾波和第三4×16塊的垂直濾波;和執行第四4×16塊的垂直濾波。
16.如權利要求15所述的解塊濾波方法,其中各個4×16塊的水平和/或垂直濾波包括接收第一4×4子塊的數據;同時執行第一4×4子塊的濾波和第二4×4子塊的數據接收;同時執行第二4×4子塊的濾波和第三4×4子塊的數據接收;同時執行第三4×4子塊的濾波和第四4×4子塊的數據接收;和執行第四4×4子塊的濾波。
17.如權利要求16所述的解塊濾波方法,其中4×4子塊的各個子塊的濾波包括同時濾波四個像素行。
18.如權利要求14所述的解塊濾波方法,其中執行解塊濾波包括對視頻數據的亮度分量和色度分量執行濾波操作。
19.如權利要求14所述的解塊濾波方法,其中視頻數據配置來由H.264/AVC視頻編解碼器進行處理。
全文摘要
提供一種解塊濾波器,包括當前宏塊緩衝存儲器,配置來存儲要濾波的當前宏塊的視頻數據;側宏塊緩衝存儲器,配置來存儲位於當前宏塊側的相鄰宏塊的視頻數據的一部分;寄存器緩衝器陣列,配置來存儲為當前濾波而從當前宏塊緩衝存儲器讀取的視頻數據、從側宏塊緩衝存儲器讀取的視頻數據和相鄰宏塊的數據;和連接到寄存器緩衝器陣列的邊緣濾波器,配置來對視頻數據的當前宏塊的子塊的邊緣執行水平或垂直濾波,並且同時對視頻數據的當前宏塊的後續子塊的邊緣執行水平或垂直濾波中的另一個。垂直濾波使用來自相鄰宏塊的數據,而水平濾波使用來自側宏塊緩衝存儲器的視頻數據。
文檔編號H04N7/30GK1812576SQ20051002296
公開日2006年8月2日 申請日期2005年12月19日 優先權日2004年12月17日
發明者鄭得秀, 鄭昌永, 李容美, 姜桯善 申請人:三星電子株式會社

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀