專利名稱:使用子宏塊移位寄存器陣列的解塊濾波裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像處理裝置、方法和計(jì)算機(jī)程序產(chǎn)品,尤其涉及解塊濾波裝置、方法和計(jì)算機(jī)程序產(chǎn)品。
此美國(guó)非臨時(shí)專利申請(qǐng)要求在2004年7月2日提交的韓國(guó)專利申請(qǐng)2004-51641在35U.S.C.§119項(xiàng)下的優(yōu)先權(quán),其全部?jī)?nèi)容通過(guò)引用合并于此。
背景技術(shù):
許多圖像處理系統(tǒng)使用通過(guò)標(biāo)準(zhǔn)視頻編解碼(Standard Video Codec)壓縮的圖像數(shù)據(jù)。通常,視頻編解碼可以使用由國(guó)際電信聯(lián)盟(ITU)推薦的H.261、H.262、和H.263以及運(yùn)動(dòng)圖像專家組(MPEG)推薦的MPEG-1、MPEG-2、MPEG-3、和MPEG-4的編解碼標(biāo)準(zhǔn)。能夠?qū)崿F(xiàn)更高壓縮率的H.264視頻編解碼的研究和標(biāo)準(zhǔn)化工作目前正在進(jìn)行中。
在圖1所示的傳統(tǒng)視頻解碼器系統(tǒng)中,編碼的圖像數(shù)據(jù)通過(guò)在圖象處理器中的解碼過(guò)程恢復(fù)為原始數(shù)據(jù),并且顯示在屏幕上。參見(jiàn)圖1,傳統(tǒng)的視頻解碼器系統(tǒng)包含句法分析器102,多個(gè)用于對(duì)編碼的圖像數(shù)據(jù)進(jìn)行解碼的硬件模塊104、106、108、和110,存儲(chǔ)器712、以及外圍設(shè)備DMA。這些部件通過(guò)總線120交換數(shù)據(jù)傳輸。作為硬件模塊的示例,示出了熵解碼器104、逆變換器106、預(yù)測(cè)器108、以及解塊(deblocking)濾波器110。編碼的圖像數(shù)據(jù)由相應(yīng)的硬件模塊順序處理,并且恢復(fù)為原始數(shù)據(jù)。在解碼過(guò)程期間,相應(yīng)的模塊從內(nèi)部存儲(chǔ)器112,諸如外部存儲(chǔ)器或者SRAM中訪問(wèn)和讀出數(shù)據(jù),或者在其中存儲(chǔ)處理過(guò)的數(shù)據(jù)。
圖像數(shù)據(jù)以宏塊的形式壓縮。當(dāng)把圖像數(shù)據(jù)恢復(fù)到原始數(shù)據(jù)時(shí),由于斜率或者圖像數(shù)據(jù)值的間斷性,可能出現(xiàn)截面尺寸效應(yīng),其在恢復(fù)的圖像數(shù)據(jù)中的塊之間的邊界處產(chǎn)生宏塊中的不同屏幕。截面尺寸效應(yīng)表現(xiàn)為可容易地感知的、沿著塊之間邊界的方形格子,導(dǎo)致主觀圖像質(zhì)量的惡化。解塊濾波器110起減少截面尺寸效應(yīng)的作用。
圖2為說(shuō)明解塊濾波器110的操作的框圖。解塊濾波器110選擇其中要執(zhí)行濾波操作的邊緣(步驟S210),從外部存儲(chǔ)器200或者內(nèi)部存儲(chǔ)器112讀取相應(yīng)邊緣的像素?cái)?shù)據(jù),并且在解塊濾波器110的寄存器陣列204中存儲(chǔ)讀取的像素?cái)?shù)據(jù)(步驟S212)。解塊濾波器110保持真實(shí)圖像的邊緣部分,并且確定邊界濾波器的濾波強(qiáng)度,以防止過(guò)度濾波(步驟S214)。解塊濾波器110將邊界濾波器的濾波強(qiáng)度和閾值進(jìn)行比較,并且依據(jù)該比較結(jié)果最終判斷是否執(zhí)行濾波操作(步驟S216)。當(dāng)執(zhí)行濾波操作時(shí),解塊濾波器110使用存儲(chǔ)在寄存器陣列204中的相應(yīng)邊緣的像素?cái)?shù)據(jù),執(zhí)行濾波操作(步驟S218)。來(lái)自濾波操作的像素被輸出到外部接收器。H.264/AVC的標(biāo)準(zhǔn)中描述了用于這樣一個(gè)解塊過(guò)程的算法。
因?yàn)橐院陦K為單位壓縮圖像數(shù)據(jù)可導(dǎo)致截面尺寸效應(yīng),所以也可以以宏塊為單位執(zhí)行解塊濾波器中的邊緣濾波。圖3為說(shuō)明用于一個(gè)宏塊的濾波操作的視圖。參見(jiàn)圖3,基于位于當(dāng)前宏塊(MB)左邊的宏塊A和位于當(dāng)前宏塊上面的宏塊B執(zhí)行用于當(dāng)前宏塊的濾波操作。對(duì)于當(dāng)前宏塊的邊緣濾波,使用宏塊A的數(shù)據(jù)和宏塊B的數(shù)據(jù)。
可以執(zhí)行用于像素的亮度分量和色度分量的濾波操作。圖4A為顯示了用于一個(gè)宏塊的亮度分量的濾波操作序列的圖。圖4B為顯示了用于一個(gè)宏塊的色度分量的濾波操作序列的圖。
宏塊一般包含16×16的像素塊。如圖4A所示,在用于一個(gè)宏塊的亮度分量的濾波操作中,順序執(zhí)行用于4個(gè)垂直邊界和4個(gè)水平邊界的濾波操作。即,亮度分量的濾波操作按a,b,c,d,e,f,g,和h的次序執(zhí)行。如圖4B所示,在用于一個(gè)宏塊的色度分量的濾波操作中,以兩個(gè)接著兩個(gè)的方式,順序地執(zhí)行用于垂直邊界i和j以及水平邊界k和l的濾波操作。通常,在用于亮度分量的濾波操作執(zhí)行之后,執(zhí)行用于色度分量的濾波操作。
圖5A為示出當(dāng)執(zhí)行用于一個(gè)垂直邊界的濾波操作時(shí)所使用的像素的圖。圖5B為示出當(dāng)執(zhí)行用于一個(gè)水平邊界的濾波操作時(shí)所使用的像素的圖。如圖5A和5B所示,在左右四個(gè)像素上執(zhí)行用于一個(gè)垂直邊界的濾波操作。同樣地,在上下四個(gè)像素上執(zhí)行用于一個(gè)水平邊界的濾波操作。
在傳統(tǒng)的濾波操作期間,特別是當(dāng)為水平邊界執(zhí)行垂直分量的濾波操作時(shí),因?yàn)橐L問(wèn)八個(gè)上下像素并且在其上執(zhí)行操作,所以每次濾波操作可需要八次存儲(chǔ)器訪問(wèn)。為了為一個(gè)宏塊執(zhí)行垂直分量的濾波操作,可能需要總共768個(gè)周期。因此,在用于具有高質(zhì)量圖像數(shù)據(jù)的濾波操作中,可能存在時(shí)間延遲。因此,實(shí)時(shí)處理高質(zhì)量的圖像數(shù)據(jù)可能是困難的。
發(fā)明內(nèi)容
依據(jù)本發(fā)明的某些實(shí)施例,解塊濾波器的寄存器陣列包含第一寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于要被濾波的宏塊中的子宏塊的圖像數(shù)據(jù)量;第二寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于子宏塊中的一部分的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第一邊緣;以及第三寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于整個(gè)子宏塊的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第二邊緣。第一、第二和第三寄存器被進(jìn)一步配置為,通過(guò)經(jīng)由第一、第二和第三寄存器順序地移位要被濾波的宏塊的子宏塊中的部分,支持對(duì)該子宏塊中的部分的順序水平和垂直分量濾波。
在某些實(shí)施例中,第一和第二寄存器被配置為,通過(guò)經(jīng)由第一和第二寄存器循環(huán)移位該子宏塊的部分,支持對(duì)該子宏塊中的這些部分的順序水平分量濾波操作。順序水平分量濾波操作可以包含對(duì)第二寄存器中的數(shù)據(jù)與第一寄存器一部分中的數(shù)據(jù)的組合的順序?yàn)V波操作。在進(jìn)一步的實(shí)施例中,第一和第三寄存器被配置為,支持對(duì)子宏塊中的多個(gè)部分的并行垂直分量濾波操作。第一、第二和第三寄存器可以被配置為從解塊濾波器的內(nèi)部存儲(chǔ)器接收?qǐng)D像數(shù)據(jù)。
在本發(fā)明的某些實(shí)施例中,第一和第三寄存器是16×4寄存器,而且第二寄存器是4×4寄存器。子宏塊可以是16×4子宏塊,而且子宏塊中的部分可以是16×4子宏塊中的4×4部分。
在本發(fā)明的某些方法實(shí)施例中,解塊濾波方法包含提供第一寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于要被濾波的宏塊中的子宏塊的圖像數(shù)據(jù)量,第二寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于子宏塊的一部分的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第二邊緣,和第三寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于整個(gè)子宏塊的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第一邊緣。該方法進(jìn)一步包含,通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分,對(duì)該子宏塊中的這些部分順序地進(jìn)行水平和垂直分量濾波。
在某些實(shí)施例中,通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分、來(lái)對(duì)該子宏塊中的這些部分順序進(jìn)行水平和垂直分量濾波包含通過(guò)經(jīng)由第一和第二寄存器循環(huán)移位該子宏塊中的部分,來(lái)對(duì)該子宏塊中的這些部分順序進(jìn)行水平分量濾波,以及使用第一和第三寄存器對(duì)該子宏塊中進(jìn)行過(guò)水平分量濾波的部分并行進(jìn)行垂直分量濾波。順序水平分量濾波可以包含對(duì)第三寄存器中的數(shù)據(jù)和第一寄存器一部分中的數(shù)據(jù)的組合順序進(jìn)行濾波。第一和第三寄存器可以是16×4寄存器,而且第二寄存器可以是4×4寄存器。子宏塊可以是16×4子宏塊,而且子宏塊中的部分可以是16×4子宏塊中的4×4部分。
在本發(fā)明的其它實(shí)施例中,解塊濾波方法包含把圖像數(shù)據(jù)的宏塊劃分為多個(gè)相等尺寸的子宏塊,并且按照次序?qū)γ總€(gè)子宏塊執(zhí)行以下的操作對(duì)子宏塊執(zhí)行水平分量濾波操作;然后對(duì)水平分量濾波過(guò)的子宏塊執(zhí)行垂直分量濾波操作。例如,多個(gè)相等尺寸的子宏塊可以包含四個(gè)16×4子宏塊,而且按照次序?qū)γ總€(gè)子宏塊執(zhí)行以下的操作包含對(duì)第一子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第一子宏塊執(zhí)行垂直分量濾波操作;對(duì)第二子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第二子宏塊執(zhí)行垂直分量濾波操作;對(duì)第三子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第三子宏塊執(zhí)行垂直分量濾波操作;對(duì)第四子宏塊執(zhí)行水平分量濾波操作;以及對(duì)水平分量濾波過(guò)的第四子宏塊執(zhí)行垂直分量濾波操作。第一、第二、第三、和第四子宏塊可以以從宏塊的最上邊緣到宏塊的最下邊緣的次序定位。
本發(fā)明的某些實(shí)施例包含,能夠減少解塊濾波器的濾波操作時(shí)間的解塊濾波器的寄存器陣列結(jié)構(gòu)。在某些實(shí)施例中,提供了有效地減少執(zhí)行垂直分量的濾波操作所需要的時(shí)間的寄存器陣列結(jié)構(gòu)。在進(jìn)一步的實(shí)施例中,提供了操作這樣的寄存器陣列結(jié)構(gòu)的方法。
在某些實(shí)施例中,解塊濾波器的寄存器陣列包含寄存器陣列,其包含第一寄存器,用于順序存儲(chǔ)和輸出從要被濾波的當(dāng)前宏塊中劃分出來(lái)的、具有相同尺寸的多個(gè)子宏塊;第二寄存器,用于存儲(chǔ)在第一寄存器中存儲(chǔ)的子宏塊左邊的相鄰數(shù)據(jù);以及第三寄存器,用于存儲(chǔ)在第一寄存器中存儲(chǔ)的子宏塊上端的相鄰數(shù)據(jù)。第三寄存器首先儲(chǔ)存布置在當(dāng)前宏塊上端的宏塊中的數(shù)據(jù),然后儲(chǔ)存從第一寄存器輸出的子宏塊的數(shù)據(jù)。
包含附圖以提供對(duì)本發(fā)明的進(jìn)一步理解,而且附圖并入且構(gòu)成這個(gè)說(shuō)明書的一部分。
了本發(fā)明示例實(shí)施例,而且連同說(shuō)明書一起,用來(lái)說(shuō)明本發(fā)明的原則。在附圖中圖1為示出傳統(tǒng)視頻解碼器系統(tǒng)的框圖;圖2為說(shuō)明傳統(tǒng)解塊濾波器的操作的框圖;圖3為說(shuō)明用于一個(gè)宏塊的傳統(tǒng)濾波操作的視圖;圖4A為示出用于一個(gè)宏塊的傳統(tǒng)亮度分量濾波操作序列的圖;圖4B為示出用于一個(gè)宏塊的傳統(tǒng)色度分量濾波操作序列的圖;圖5A為示出當(dāng)執(zhí)行用于一個(gè)垂直邊界的濾波操作時(shí)所使用的像素的圖;圖5B為示出當(dāng)執(zhí)行用于一個(gè)水平邊界的濾波操作時(shí)所使用的像素的圖;圖6為示出依據(jù)本發(fā)明某些實(shí)施例,用于一個(gè)宏塊的濾波操作序列的圖;圖7為說(shuō)明依據(jù)本發(fā)明進(jìn)一步實(shí)施例的解塊濾波器的操作的圖;圖8依據(jù)本發(fā)明的某些實(shí)施例,說(shuō)明在寄存器陣列中的垂直分量濾波操作和水平分量濾波操作;圖9為一個(gè)視圖,說(shuō)明依據(jù)本發(fā)明的進(jìn)一步實(shí)施例,用于水平分量濾波操作的寄存器陣列的移位操作;以及圖10到13為說(shuō)明依據(jù)本發(fā)明某些實(shí)施例的寄存器陣列的輸入和輸出操作的圖。
具體實(shí)施例方式
現(xiàn)在將參考附圖對(duì)本發(fā)明的特定示例實(shí)施例進(jìn)行描述。然而,這個(gè)發(fā)明可以以許多不同的形式體現(xiàn),而且不應(yīng)當(dāng)被認(rèn)為是受限于此處闡述的實(shí)施例。相反,提供這些實(shí)施例以便使這個(gè)公開變得徹底和完整,并且向本領(lǐng)域技術(shù)人員充分傳達(dá)本發(fā)明的范圍。在附圖中,相同的數(shù)字表示相同的元件。應(yīng)當(dāng)理解,當(dāng)一個(gè)元件被稱為“連接”或者“耦合”到另一個(gè)元件時(shí),它可以直接連接或者耦合到另一個(gè)元件,或者可以存在介于其間的元件。此外,此處使用的“連接”或者“耦合”可以包含無(wú)線連接或者耦合。
此處使用的術(shù)語(yǔ)僅僅是用于描述特定實(shí)施例的目的,而不是用來(lái)限制本發(fā)明。除非另外明確地指出,否則此處使用的單數(shù)形式“一”和“該”用于同樣包含復(fù)數(shù)形式。需要進(jìn)一步理解當(dāng)在這個(gè)說(shuō)明書中使用術(shù)語(yǔ)“包含”和/或“包括”時(shí),其說(shuō)明所陳述特征、整數(shù)、步驟、操作、元件、和/或部件的存在,但是沒(méi)有排除一個(gè)或者多個(gè)其它特征、整數(shù)、步驟、操作、元件、部件、和/或它們的組的存在或者加入。
除非另外定義,否則此處使用的所有術(shù)語(yǔ)(包括技術(shù)和科學(xué)術(shù)語(yǔ))的意思與本發(fā)明所屬領(lǐng)域的技術(shù)人員所理解的意思相同。將要進(jìn)一步理解,術(shù)語(yǔ),諸如在通常使用的詞典中定義的那些,應(yīng)當(dāng)被解釋為它們具有與它們?cè)谙嚓P(guān)技術(shù)領(lǐng)域和本說(shuō)明書的上下文中的意思一致的意思,而且除非在此處明確地這樣定義,否則不以理想化或者過(guò)度形式化的意識(shí)來(lái)加以解釋。
將要理解,雖然此處使用了術(shù)語(yǔ)第一和第二來(lái)描述各種元件,但是這些元件將不會(huì)由這些術(shù)語(yǔ)所限制。這些術(shù)語(yǔ)僅僅用于把一個(gè)元件從另一個(gè)元件中區(qū)分出來(lái)。因此,第一項(xiàng)目可以稱為第二項(xiàng)目,而且同樣地,第二項(xiàng)目可以稱為第一項(xiàng)目,而沒(méi)有背離本發(fā)明的教導(dǎo)。此處使用的術(shù)語(yǔ)“和/或”包含一個(gè)或多個(gè)相關(guān)列出項(xiàng)目的任意和所有組合。符號(hào)“/”還可以用作“和/或”的簡(jiǎn)化標(biāo)記。
圖6為示出依據(jù)本發(fā)明某些實(shí)施例、用于一個(gè)宏塊的濾波操作序列的圖。參見(jiàn)圖6,在依據(jù)本發(fā)明某些實(shí)施例的濾波操作中,當(dāng)前宏塊被分成第一到第四子宏塊,每個(gè)子宏塊具有,例如16×4的尺寸。執(zhí)行用于位于最上部分的第一子宏塊的水平分量濾波操作。在用于第一子宏塊的水平分量濾波操作終止之后,執(zhí)行用于第一子宏塊的垂直分量濾波操作。以類似的方式,以第二、第三、和第四宏塊的次序執(zhí)行濾波操作。濾波操作次序顯示為阿拉伯?dāng)?shù)字1-16。
圖7為說(shuō)明了依據(jù)本發(fā)明的某些實(shí)施例、在濾波過(guò)程中的解塊濾波器的示例操作的方框圖。參考圖6和7,本發(fā)明的解塊濾波器710從存儲(chǔ)預(yù)測(cè)結(jié)果的雙緩沖器702中,讀出當(dāng)前宏塊的亮度和色度數(shù)據(jù),并且在內(nèi)部寄存器陣列中存儲(chǔ)讀取的數(shù)據(jù)。解塊濾波器710從外部存儲(chǔ)器202獲取在靠近當(dāng)前宏塊的宏塊中的左邊相鄰宏塊A和上面相鄰宏塊B的數(shù)據(jù),并且在內(nèi)部存儲(chǔ)器712中存儲(chǔ)獲取的數(shù)據(jù),然后在解塊濾波器710的寄存器陣列中存儲(chǔ)它們。
如上面參考圖6所述,依據(jù)本發(fā)明的某些實(shí)施例,通過(guò)把當(dāng)前宏塊劃分為四個(gè)子宏塊來(lái)執(zhí)行濾波操作。首先,把上端的第一子宏塊數(shù)據(jù)存儲(chǔ)到寄存器陣列中。解塊濾波器710從外部存儲(chǔ)器202讀出在上面相鄰宏塊B中、靠近第一子宏塊的16×4數(shù)據(jù)602,并且在內(nèi)部存儲(chǔ)器712中存儲(chǔ)讀取的數(shù)據(jù),然后在寄存器陣列中存儲(chǔ)它們。解塊濾波器710在外部存儲(chǔ)器202中存儲(chǔ)來(lái)自左邊相鄰宏塊A的4×16數(shù)據(jù),并且在寄存器陣列中存儲(chǔ)來(lái)自于該數(shù)據(jù)、對(duì)應(yīng)于上端的4×4塊606的數(shù)據(jù)。因此,在圖7的內(nèi)部存儲(chǔ)器712中存儲(chǔ)包含在宏塊B中的16×4數(shù)據(jù)602和包含在宏塊A中的4×16數(shù)據(jù)。解塊濾波器710對(duì)寄存器陣列中存儲(chǔ)的數(shù)據(jù)執(zhí)行濾波操作,并且通過(guò)雙緩沖器704輸出宏塊數(shù)據(jù)。
圖8為說(shuō)明依據(jù)本發(fā)明某些實(shí)施例的寄存器陣列的圖,并且依據(jù)本發(fā)明的進(jìn)一步實(shí)施例,說(shuō)明了可以在寄存器陣列中執(zhí)行的垂直和水平分量濾波操作?,F(xiàn)在將參考圖6和8,描述依據(jù)本發(fā)明某些實(shí)施例,在子宏塊中的濾波操作。圖8所示的寄存器陣列包含16×4X寄存器800、4×4A寄存器820、以及16×4B寄存器801。X寄存器800被分成四個(gè)4×4存儲(chǔ)區(qū)域802、804、806、和808。X寄存器800存儲(chǔ)從存儲(chǔ)預(yù)測(cè)結(jié)果的雙緩沖器702(參見(jiàn)圖7)輸入的當(dāng)前宏塊中的第一子宏塊數(shù)據(jù)。即,在X寄存器800中存儲(chǔ)將要對(duì)其執(zhí)行真正濾波操作的當(dāng)前宏塊數(shù)據(jù)。來(lái)自相鄰左邊宏塊604的上部4×4塊606的數(shù)據(jù)存儲(chǔ)在內(nèi)部存儲(chǔ)器712、以及A寄存器820中。類似于X寄存器800,B寄存器801被分成四個(gè)4×4存儲(chǔ)區(qū)域810、812、814、和816。在B寄存器801中存儲(chǔ)16×4個(gè)上面相鄰的宏塊數(shù)據(jù)602。
使用存儲(chǔ)在A寄存器820中的數(shù)據(jù),執(zhí)行存儲(chǔ)在X寄存器800中的當(dāng)前子宏塊數(shù)據(jù)的水平分量濾波操作。使用存儲(chǔ)在B寄存器801中的數(shù)據(jù)執(zhí)行垂直分量濾波操作。在存儲(chǔ)于X寄存器800中的子宏塊數(shù)據(jù)中的水平分量的濾波操作中,通過(guò)使用在A寄存器820中存儲(chǔ)的數(shù)據(jù)以及在X寄存器800最左邊處的第一區(qū)域802中存儲(chǔ)的數(shù)據(jù),相對(duì)于A寄存器820和X寄存器800之間的垂直邊界,執(zhí)行每左右四個(gè)像素、上下四個(gè)位置的濾波操作。當(dāng)用于第一區(qū)域802的濾波操作結(jié)束時(shí),在每個(gè)寄存器中存儲(chǔ)的數(shù)據(jù)左移4×4個(gè)塊。
圖9為說(shuō)明依據(jù)本發(fā)明的某些實(shí)施例、用于水平分量濾波操作的寄存器陣列的移位操作的圖。如圖9所示,當(dāng)用于第一區(qū)域802的濾波操作完成時(shí),移位在X寄存器800的第一區(qū)域802中存儲(chǔ)的數(shù)據(jù)X1,并且將其存儲(chǔ)到A寄存器820中,移位在第二區(qū)域804中存儲(chǔ)的數(shù)據(jù)X2,并且把它存儲(chǔ)到第一區(qū)域802中,移位在第三區(qū)域806中存儲(chǔ)的數(shù)據(jù)X3并且把它存儲(chǔ)到第二區(qū)域804中。此外,移位在第四區(qū)域808中存儲(chǔ)的數(shù)據(jù)X4并且把它存儲(chǔ)到第三區(qū)域806中,移位在A寄存器820中存儲(chǔ)的數(shù)據(jù)A1并且把它存儲(chǔ)到第四區(qū)域808中。重復(fù)上述過(guò)程(操作—>移位),直到用于所有存儲(chǔ)在X寄存器800中的數(shù)據(jù)的濾波操作完成為止。當(dāng)存儲(chǔ)在A寄存器820中的數(shù)據(jù)A1已經(jīng)移位四次并且位于X寄存器800的第一區(qū)域802處時(shí),完成用于X寄存器800的濾波操作。再次移位把數(shù)據(jù)定位到它們初始的存儲(chǔ)區(qū)域。
此后,執(zhí)行用于在X寄存器800中存儲(chǔ)的子宏塊數(shù)據(jù)的垂直分量濾波操作。這使用在B寄存器801中存儲(chǔ)的數(shù)據(jù)執(zhí)行。因?yàn)橄鄬?duì)于一個(gè)水平邊界,X寄存器800和B寄存器801的每一個(gè)都具有4×4的塊,所以執(zhí)行每上下四個(gè)像素16個(gè)位置的濾波操作。
通過(guò)上述過(guò)程,當(dāng)用于具有16×4尺寸的一個(gè)子宏塊的垂直和水平濾波操作完成時(shí),向X寄存器800填充用于下一子宏塊的數(shù)據(jù),先前存儲(chǔ)在X寄存器800中的數(shù)據(jù)移入B寄存器801,而且從內(nèi)部存儲(chǔ)器712輸入要存儲(chǔ)到A寄存器820中的4×4數(shù)據(jù)。存儲(chǔ)在A寄存器820和B寄存器801中的第一數(shù)據(jù)被輸出到外部接收器。可以連續(xù)地執(zhí)行這種用于整個(gè)宏塊的過(guò)程。也就是說(shuō),可以同時(shí)執(zhí)行新子宏塊數(shù)據(jù)的輸入、其濾波操作結(jié)束的子宏塊的移位、以及存儲(chǔ)在A寄存器820和B寄存器801中的數(shù)據(jù)的輸出。
圖10到13說(shuō)明了依據(jù)本發(fā)明某些實(shí)施例的圖8中的寄存器陣列的示例操作。如圖10所示,當(dāng)用于第二子宏塊最左邊4×4區(qū)域的數(shù)據(jù)X5被輸入到X寄存器800的第一區(qū)域802中,以及內(nèi)部存儲(chǔ)器712中存儲(chǔ)的A宏塊的下一個(gè)數(shù)據(jù)A2被輸入到A寄存器820中時(shí),存儲(chǔ)在X寄存器800的第一區(qū)域802中的數(shù)據(jù)X1被移入B寄存器801的第一區(qū)域810,輸出存儲(chǔ)在B寄存器801的第一區(qū)域810中的數(shù)據(jù)B1,而且輸出存儲(chǔ)在A寄存器820中的數(shù)據(jù)A1。
如圖11所示,當(dāng)?shù)诙雍陦K的第二區(qū)域數(shù)據(jù)X6輸入到X寄存器800的第二區(qū)域中時(shí),先前存儲(chǔ)在X寄存器800的第二區(qū)域804中的數(shù)據(jù)X2移入B寄存器801的第二區(qū)域812,而且輸出存儲(chǔ)在B寄存器801第二區(qū)域812中的數(shù)據(jù)B2。同時(shí)執(zhí)行用于存儲(chǔ)在A寄存器820中的數(shù)據(jù)A2和存儲(chǔ)在X寄存器800的第一區(qū)域802中的數(shù)據(jù)X5的水平分量濾波操作。
當(dāng)用于X寄存器800的第一區(qū)域802的濾波操作完成時(shí),如圖12所示,以4×4塊為單位移位存儲(chǔ)在A寄存器820和X寄存器800的相應(yīng)區(qū)域中的數(shù)據(jù)。當(dāng)在相應(yīng)寄存器中存儲(chǔ)的數(shù)據(jù)上的水平分量濾波操作結(jié)束時(shí),執(zhí)行用于存儲(chǔ)在X寄存器800的第一區(qū)域802中的數(shù)據(jù)X6、和存儲(chǔ)在A寄存器820中的數(shù)據(jù)X5的水平分量濾波操作。同時(shí),第二子宏塊的第三區(qū)域數(shù)據(jù)X7輸入到X寄存器800的第二區(qū)域804中,而且存儲(chǔ)在X寄存器800的第二區(qū)域804中的第一子宏塊的第三區(qū)域數(shù)據(jù)X3被移入B寄存器801的第二區(qū)域812。因此,輸出存儲(chǔ)在B寄存器801的第二區(qū)域812中的B宏塊的第三區(qū)域數(shù)據(jù)B3。
通過(guò)上述過(guò)程的重復(fù),如圖13所示,在第二子宏塊的第四區(qū)域數(shù)據(jù)X8的輸入結(jié)束之后,隨后執(zhí)行用于剩余水平分量的濾波操作。在水平分量濾波操作完成之后,當(dāng)數(shù)據(jù)被順序地移位和布置在相應(yīng)寄存器處時(shí),執(zhí)行用于在X寄存器800中存儲(chǔ)的數(shù)據(jù)的垂直分量濾波操作。
通過(guò)對(duì)新的子宏塊重復(fù)上述過(guò)程,可以執(zhí)行用于一個(gè)宏塊的所有濾波操作。另一方面,如上所述,當(dāng)位于X寄存器800最左邊的第一區(qū)域802僅僅填充數(shù)據(jù)時(shí),從上到下通過(guò)第一區(qū)域802移位和輸入數(shù)據(jù),剩余數(shù)據(jù)通過(guò)X寄存器800的第二區(qū)域804輸入。
當(dāng)使用本發(fā)明的寄存器陣列執(zhí)行用于一個(gè)宏塊的濾波操作時(shí),可能需要4個(gè)周期來(lái)輸入用于第一A寄存器820和X寄存器800的第一區(qū)域的數(shù)據(jù),8個(gè)周期來(lái)執(zhí)行用于這些數(shù)據(jù)的水平分量濾波操作(執(zhí)行每個(gè)位置濾波操作所需要的時(shí)間為兩個(gè)周期),以及36個(gè)周期來(lái)執(zhí)行用于一個(gè)子宏塊的水平分量濾波操作。在垂直分量濾波操作中,為了使相應(yīng)區(qū)域的布置返回到原始位置,可能要使用一個(gè)周期。因此,總共可使用37個(gè)周期來(lái)執(zhí)行用于一個(gè)子宏塊的水平分量濾波操作。此外,因?yàn)閳?zhí)行16個(gè)位置的垂直分量濾波操作,所以可使用總共32個(gè)周期。結(jié)果,完成用于一個(gè)宏塊的濾波操作所需要的時(shí)間為306(=14+4×(37+32))個(gè)周期,其中包含了14個(gè)額外開銷的周期。完成色度分量濾波操作的時(shí)間可為153(=306×0.5)個(gè)周期。因此,總共可需要459個(gè)周期來(lái)完成用于一個(gè)宏塊的解塊濾波操作。
如上所述,依據(jù)本發(fā)明某些實(shí)施例的寄存器陣列允許對(duì)要被設(shè)計(jì)的小區(qū)域進(jìn)行解塊濾波。此外,可以同時(shí)執(zhí)行數(shù)據(jù)輸入、濾波操作、數(shù)據(jù)移位、以及數(shù)據(jù)輸出,這可以允許高速執(zhí)行濾波操作。
在附圖和說(shuō)明書中已經(jīng)公開了本發(fā)明的實(shí)施例,而且雖然使用了專用術(shù)語(yǔ),但是它們僅僅以一般性和敘述性的意義使用而不是用于限制目的,本發(fā)明的范圍由權(quán)利要求所闡明。
權(quán)利要求
1.一種解塊濾波器的寄存器陣列,該寄存器陣列包含第一寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于要被濾波的宏塊中的子宏塊的圖像數(shù)據(jù)量;第二寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于子宏塊中的一部分的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第一邊緣;第三寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于整個(gè)子宏塊的圖像數(shù)據(jù)量,其中該整個(gè)子宏塊鄰近要被濾波的宏塊的第二邊緣;以及其中,所述第一、第二和第三寄存器被進(jìn)一步配置為,通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分,支持這些子宏塊中的部分的順序水平和垂直分量濾波。
2.如權(quán)利要求1所述的寄存器陣列,其中,所述第一和第二寄存器被配置為,通過(guò)經(jīng)由第一和第二寄存器循環(huán)移位子宏塊中的部分,支持在子宏塊中的這些部分上的順序水平分量濾波操作。
3.如權(quán)利要求2所述的寄存器陣列,其中,順序水平分量濾波操作包含對(duì)第二寄存器中的數(shù)據(jù)與第一寄存器的一部分中的數(shù)據(jù)的組合進(jìn)行的順序?yàn)V波操作。
4.如權(quán)利要求1所述的寄存器陣列,其中,所述第一和第三寄存器被配置為支持對(duì)子宏塊中的多個(gè)部分的并行垂直分量濾波操作。
5.如權(quán)利要求1所述的寄存器陣列,其中,第一、第二和第三寄存器被配置為從解塊濾波器的內(nèi)部存儲(chǔ)器接收?qǐng)D像數(shù)據(jù)。
6.如權(quán)利要求1所述的寄存器陣列,其中,第一和第三寄存器是16×4寄存器,而且其中第二寄存器是4×4寄存器。
7.如權(quán)利要求6所述的寄存器陣列,其中,子宏塊是16×4子宏塊,而且其中子宏塊中的部分是16×4子宏塊中的4×4部分。
8.一種解塊濾波方法,包含提供第一寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于要被濾波的宏塊中的子宏塊的圖像數(shù)據(jù)量;第二寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于子宏塊中的一部分的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第二邊緣;和第三寄存器,其被配置為存儲(chǔ)對(duì)應(yīng)于整個(gè)子宏塊的圖像數(shù)據(jù)量,其中該整個(gè)子宏塊鄰近要被濾波的宏塊的第一邊緣;以及通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分,對(duì)該子宏塊中的部分順序地進(jìn)行水平和垂直分量濾波。
9.如權(quán)利要求8所述的方法,其中,通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分、對(duì)該子宏塊中的部分順序地進(jìn)行水平和垂直分量濾波包含通過(guò)經(jīng)由第一和第二寄存器循環(huán)移位該子宏塊中的部分,對(duì)該子宏塊中的這些部分順序地進(jìn)行水平分量濾波;以及使用第一和第三寄存器對(duì)該子宏塊中被水平分量濾波過(guò)的部分,同時(shí)進(jìn)行垂直分量濾波。
10.如權(quán)利要求9所述的方法,其中,順序水平分量濾波包含對(duì)第三寄存器中的數(shù)據(jù)和第一寄存器一部分中的數(shù)據(jù)的組合進(jìn)行順序?yàn)V波。
11.如權(quán)利要求9所述的方法,其中,第一和第三寄存器是16×4寄存器,而其中第二寄存器是4×4寄存器。
12.如權(quán)利要求11所述的方法,其中,子宏塊是16×4子宏塊,而其中子宏塊中的部分是16×4子宏塊中的4×4部分。
13.一種解塊濾波方法,該方法包含把圖像數(shù)據(jù)的宏塊劃分為多個(gè)相等尺寸的子宏塊;以及按照次序?qū)γ恳蛔雍陦K執(zhí)行以下操作對(duì)子宏塊執(zhí)行水平分量濾波操作;然后后對(duì)水平分量濾波過(guò)的子宏塊執(zhí)行垂直分量濾波操作。
14.如權(quán)利要求13所述的方法,其中,所述多個(gè)相等尺寸的子宏塊包含四個(gè)16×4子宏塊,而且其中按照次序?qū)γ總€(gè)子宏塊執(zhí)行以下操作包含對(duì)第一子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第一子宏塊執(zhí)行垂直分量濾波操作;對(duì)第二子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第二子宏塊執(zhí)行垂直分量濾波操作;對(duì)第三子宏塊執(zhí)行水平分量濾波操作;對(duì)水平分量濾波過(guò)的第三子宏塊執(zhí)行垂直分量濾波操作;對(duì)第四子宏塊執(zhí)行水平分量濾波操作;以及對(duì)水平分量濾波過(guò)的第四子宏塊執(zhí)行垂直分量濾波操作。
15.如權(quán)利要求所述的方法,其中,所述第一、第二、第三、和第四子宏塊以從宏塊的最上邊緣到所述宏塊的最下邊緣的次序定位。
全文摘要
一種解塊濾波器的寄存器陣列,包含第一寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于要被濾波的宏塊中的子宏塊的圖像數(shù)據(jù)量;第二寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于子宏塊中一部分的圖像數(shù)據(jù)量,其中該子宏塊鄰近要被濾波的宏塊的第一邊緣;以及第三寄存器,被配置為存儲(chǔ)對(duì)應(yīng)于整個(gè)子宏塊的圖像數(shù)據(jù)量,其中該整個(gè)子宏塊鄰近要被濾波的宏塊的第二邊緣。該第一、第二和第三寄存器被進(jìn)一步配置為,通過(guò)經(jīng)由第一、第二和第三寄存器順序移位要被濾波的宏塊的子宏塊中的部分,支持對(duì)該子宏塊中的部分的順序水平和垂直分量濾波。
文檔編號(hào)H04N7/26GK1717055SQ20051008137
公開日2006年1月4日 申請(qǐng)日期2005年6月28日 優(yōu)先權(quán)日2004年7月2日
發(fā)明者裵鐘佑 申請(qǐng)人:三星電子株式會(huì)社