專(zhuān)利名稱(chēng):用于提高低比特率視頻的視頻質(zhì)量的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及數(shù)據(jù)壓縮,更具體地,涉及基于塊的壓縮系統(tǒng)。
背景技術(shù):
變換編碼是一種常用圖像壓縮技術(shù),其將圖像劃分為用于處理的子圖像或塊。由于塊被獨(dú)立地編碼,基于塊的壓縮在塊邊界之間引入偽影(artifact)。因此,所述變換沒(méi)有考慮塊邊界之間的相關(guān)性。于是,此技術(shù)通常能夠產(chǎn)生重度壓縮的低比特率圖像,但是,圖像中卻包含嚴(yán)重的壓縮偽影,諸如塊化(blocking)、振鈴、運(yùn)動(dòng)模糊。
從而,已提出了幾種用于解塊(deblocking)的后處理算法,以減少和/或去除壓縮偽影。然而,許多都涉及復(fù)雜的計(jì)算,并且可能對(duì)輸出圖像產(chǎn)生總的模糊效果。其它的解塊濾波器不能有效地保存邊緣信息,并且通常硬件實(shí)現(xiàn)復(fù)雜。于是,需要更簡(jiǎn)單和/或有效的解塊處理。
發(fā)明內(nèi)容
用于處理利用基于塊的壓縮進(jìn)行壓縮的圖像的方法和裝置可以包括確定是否兩個(gè)塊為相鄰塊;確定是否所述兩個(gè)相鄰塊均被再分;如果所述兩個(gè)相鄰塊并非均被再分,在這兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行解塊濾波。確定是否兩個(gè)相鄰塊均被再分可以包括獲取所述兩個(gè)相鄰塊中每一個(gè)的方差值;將所述方差值與第一閾值進(jìn)行比較;并且基于所述方差值與所述第一閾值的所述比較,確定是否所述兩個(gè)相鄰塊均被再分?;蛘?,確定是否兩個(gè)相鄰塊均被再分可以進(jìn)一步包括獲取塊大小賦值;并利用所述塊大小賦值來(lái)確定是否所述兩個(gè)相鄰塊被再分。
所述方法和裝置可以進(jìn)一步包括如果所述兩個(gè)相鄰塊并非均被再分,確定是否所述兩個(gè)相鄰塊中的一個(gè)被再分;如果所述兩個(gè)相鄰塊中的一個(gè)被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第一解塊濾波器;并且,如果所述兩個(gè)相鄰塊均未被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第二解塊濾波器。
所述方法和裝置還可以進(jìn)一步包括如果所述兩個(gè)相鄰塊均未被再分,獲得所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素的一個(gè)或多個(gè)差值;將所述一個(gè)或多個(gè)差值與第二閾值進(jìn)行比較;并且,基于所述一個(gè)或多個(gè)差值與所述第二閾值的所述比較來(lái)選擇所述第二解塊濾波器。
獲取一個(gè)或多個(gè)差值可以包括獲取所述兩個(gè)相鄰塊的三個(gè)邊緣像素之間的差值;并且,如果所述差值中的至少兩個(gè)大于所述第二閾值,選擇所述第二解塊濾波器可以包括使用高斯濾波器。
下面將參照以下附圖對(duì)各種實(shí)施例進(jìn)行詳細(xì)描述,其中,類(lèi)似的參考數(shù)字指示類(lèi)似的元件,其中圖1為圖像壓縮器的一個(gè)例子;圖2為圖像解壓縮器的一個(gè)例子;圖3示出了用于確定是否塊被再分的示例過(guò)程;圖4A到4D示出了塊再分的例子;圖5示出了圖像中兩個(gè)相鄰塊的例子;圖6示出了用于確定是否使用解塊濾波器的示例過(guò)程;
圖7示出了用于確定是否使用解塊濾波器的另一個(gè)示例過(guò)程;圖8A到8D示出了用于16×16塊的ABSDCT的排序;圖9A到9B示出了塊大小賦值數(shù)據(jù)的例子;圖10A到10D示出了塊大小賦值數(shù)據(jù)的更多例子;圖11示出了產(chǎn)生用于ABSDCT的塊大小賦值數(shù)據(jù)的示例過(guò)程;圖12為圖表,示出了不同的方差閾值;圖13示出了一些變量定義;以及圖14示出了用于確定是否在使用ABSDCT的系統(tǒng)中使用解塊濾波器的示例過(guò)程。
具體實(shí)施例方式
在使用了基于塊的離散余弦變換(DCT)的壓縮系統(tǒng)中,數(shù)據(jù)流被劃分為像素塊和經(jīng)過(guò)變換的離散余弦。由于所述變換沒(méi)有考慮塊邊界之間的相關(guān),并且由于各塊獨(dú)立編碼,這種基于塊的處理使得塊邊界之間產(chǎn)生塊偽影。
通常,在使用DCT的壓縮系統(tǒng)中,各數(shù)據(jù)塊的大小被固定。然而,有的動(dòng)態(tài)圖像壓縮技術(shù)使用已編碼DCT系數(shù)數(shù)據(jù)的自適應(yīng)大小的塊和子塊,能夠在保證圖像信號(hào)質(zhì)量的同時(shí),提供很好的壓縮。這種技術(shù)被稱(chēng)為可變塊大小DCT??勺儔K大小DCT的一個(gè)例子是在名為“Adaptive Block SizeImage Compression Method And System(自適應(yīng)塊大小圖像壓縮方法和系統(tǒng))”的美國(guó)專(zhuān)利5,021,891中公開(kāi)的自適應(yīng)塊大小離散余弦變換(ABSDCT)。DCT技術(shù)也在名為“Adaptive Block Size ImageCompression Method And System(自適應(yīng)塊大小圖像壓縮方法和系統(tǒng))”的美國(guó)專(zhuān)利5,107,345中得到公開(kāi),并且,在名為“Adaptive Block SizeImage Compression Method And System(自適應(yīng)塊大小圖像壓縮方法和系統(tǒng))”的美國(guó)專(zhuān)利5,452,104中討論了ABSDCT技術(shù)與離散四叉樹(shù)變換(Discrete Quadtree Transform)技術(shù)相結(jié)合的使用。所述自適應(yīng)塊大小被選擇以利用為了圖像數(shù)據(jù)幀內(nèi)的信息而存在的冗余。下面將更詳細(xì)地描還ABSDCT。
以下描述的實(shí)施例通過(guò)允許簡(jiǎn)單而有效的解塊過(guò)程來(lái)減少偽影,此過(guò)程可在使用了基于塊的DCT的壓縮系統(tǒng)中容易地實(shí)現(xiàn)。所述實(shí)施例在可變塊大小DCT中尤其有效。
在以下描述中,將給出具體細(xì)節(jié)以使得實(shí)施例能夠被透徹地理解。然而,本領(lǐng)域技術(shù)人員可以理解,不需要這些具體細(xì)節(jié),即可實(shí)施該實(shí)施例。例如,在框圖中示出了電路,以使得實(shí)施例不會(huì)因?yàn)椴槐匾募?xì)節(jié)而變得晦澀難懂。在其它實(shí)例中,可以詳細(xì)地示出熟知的電路、結(jié)構(gòu)和技術(shù),以使得所述實(shí)施例更為明晰易懂。
可注意到,所述實(shí)施例可以被描述為一個(gè)過(guò)程,其通過(guò)流程圖、程序框圖、結(jié)構(gòu)圖或框圖來(lái)得到描述。盡管流程圖可將操作描述為順序過(guò)程,許多操作可以并行或同時(shí)進(jìn)行。此外,所述操作的次序可以被重新安排。當(dāng)其操作完成時(shí),過(guò)程終止。過(guò)程可對(duì)應(yīng)于方法、函數(shù)、程序、子例程、子程序等。當(dāng)過(guò)程對(duì)應(yīng)于函數(shù)時(shí),其終止響應(yīng)于所述函數(shù)到調(diào)用函數(shù)或主函數(shù)的返回。
圖1示出了圖像壓縮器100的例子,而圖2示出了與圖像壓縮器100相對(duì)稱(chēng)的圖像解壓縮器200的例子。圖像壓縮器100包括可變塊大小DCT(VBSDCT)模塊110,量化模塊120,以及變長(zhǎng)編碼(VLC)模塊130。圖像解壓縮器200包括變長(zhǎng)解碼(VLD)模塊210,反量化模塊220,以及反VBSDCT模塊230。圖像解壓縮器200還包括解塊濾波模塊240,以在需要時(shí)對(duì)塊邊緣進(jìn)行濾波,以及處理器250,以控制解塊濾波模塊240。
通常,輸入到圖像壓縮器100的數(shù)據(jù)流由圖像幀組成。圖像幀一般被劃分為片,片可被劃分為數(shù)據(jù)塊,并且數(shù)據(jù)塊可被劃分為像素,像素為圖像的最小單元。每一個(gè)圖像幀包括整數(shù)個(gè)片,且每一個(gè)圖像片表示一組n個(gè)連續(xù)掃描行的圖像信息,例如16個(gè)連續(xù)掃描行。在這種情況下,每一個(gè)數(shù)據(jù)塊對(duì)應(yīng)于跨越所述幀的圖像的16×16像素塊。并且,一幀可被分割為偶數(shù)和奇數(shù)片,從而形成偶數(shù)半幀和奇數(shù)半幀。此外,圖像像素通常用紅、綠、藍(lán)(RGB)的顏色分量系統(tǒng)來(lái)表示。然而,由于人眼對(duì)亮度變化更敏感,而對(duì)色度變化不太敏感,YCbCr顏色空間通常在視頻壓縮中用來(lái)表示圖像像素。所述YCbCr顏色空間為RGB分量的線性變換,其中Y為色度分量,而Cb和Cr為顏色分量。如果幀被分割為偶數(shù)/奇數(shù)幀,對(duì)應(yīng)于Y、Cb和Cr分量,圖像幀可由三個(gè)偶數(shù)半幀和三個(gè)奇數(shù)半幀組成。
在以上的描述中,片還可以表示16個(gè)連續(xù)掃描行之外的一組連續(xù)掃描行。并且,如果塊可被再分,所述數(shù)據(jù)塊可為n×m塊,其中n不等于m。此外,具有相同或不同數(shù)目顏色分量的不同顏色空間可用來(lái)表示圖像像素。然而,16×16像素的塊大小及YCbCr顏色空間在下面將用于解釋的目的。
再參照?qǐng)D1,VBSDCT模塊110將所述數(shù)字圖像信息從空域轉(zhuǎn)換到頻域,并生成具有相應(yīng)的塊大小賦值(BSA)信息的DCT系數(shù)。VBSDCT模塊110根據(jù)需要?jiǎng)澐植⑻幚韷K和子塊中的數(shù)字圖像信息。圖3示出了過(guò)程300,以確定是否塊被再分。在過(guò)程300中,獲取DCT塊的方差值(310)。然后,將所述方差與為所述塊的大小所設(shè)置的閾值TBS進(jìn)行比較(320)?;谒龇讲钪蹬c所述閾值TBS的比較,確定是否所述塊被再分。即,如果所述方差值大于TBS,則所述塊被再分(330和340)。否則,所述塊未被再分(350)。在此,類(lèi)似過(guò)程可用在子塊上,以確定是否所述子塊被再分。在這種情況下,將所述方差與為此子塊的大小所設(shè)置的閾值進(jìn)行比較。
如果塊被劃分,BSA信息指示塊如何被再分。例如,所述BSA信息可指示16×16塊被再分為四個(gè)8×8塊,如圖4A所示,或者,8×8塊還可能再分為四個(gè)4×4塊,如圖4B所示。在其它系統(tǒng)中,BSA信息可指示16×16塊被再分為四個(gè)8×8塊,如圖4C所示。如圖所示,圖4C中8×8塊中的一個(gè)被再分為四個(gè)4×4塊,并且基于系統(tǒng)配置和/或需求,進(jìn)一步被劃分為四個(gè)2×2塊,如圖4C所示。然后,量化模塊120量化所述DCT系數(shù),并且,VLC 130利用變長(zhǎng)編碼技術(shù)壓縮已量化的DCT系數(shù)。
在圖像解壓縮器200,VLD模塊210解壓縮已壓縮的圖像信息,量化模塊220反量化所述解壓縮的圖像信息,并且,反VBSDCT模塊230利用塊大小賦值信息,將所述反量化圖像信息由頻域轉(zhuǎn)換為空域。處理器250確定是否所述圖像的兩個(gè)塊為相鄰塊,如圖5所示。然后,處理器250基于塊邊緣活動(dòng)性或忙碌度,確定是否需要對(duì)所述兩個(gè)相鄰塊進(jìn)行解塊處理。如果需要進(jìn)行解塊處理,所述兩個(gè)相鄰塊的一個(gè)或多個(gè)公共邊緣像素被解塊濾波模塊240濾波。然后,處理后的圖像信息被輸出給顯示器和/或被存儲(chǔ)以用于顯示。
圖6示出了一個(gè)過(guò)程600,其用于處理利用基于塊的壓縮來(lái)壓縮的圖像。在過(guò)程600中,確定是否兩個(gè)相鄰塊均被再分(610)。在此,所述BSA信息可用來(lái)確定是否所述兩個(gè)相鄰塊被再分。如果所述兩個(gè)相鄰塊并非均被再分,則在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用解塊濾波器(620)。
圖7示出了另一個(gè)過(guò)程700,其用于處理利用基于塊的壓縮來(lái)壓縮的圖像。在過(guò)程700中,確定是否兩個(gè)相鄰塊均被再分(710)。如果確定所述兩個(gè)相鄰塊均被再分,則不使用解塊濾波器。然而,如果所述兩個(gè)相鄰塊并非均被再分,即,所述兩個(gè)相鄰塊中的至少一個(gè)未被再分,進(jìn)一步確定是否所述兩個(gè)相鄰塊中的一個(gè)被再分(720)。如果所述兩個(gè)相鄰塊中的一個(gè)被再分,則在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)像素上使用第一解塊濾波器(730)。在此,所述第一解塊濾波器可以是兩點(diǎn)平均濾波器(two pointaveraging filter),其用在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上。如果所述兩個(gè)相鄰塊均不被再分,則在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)像素上使用第二解塊濾波器。
更具體地,獲取所述兩個(gè)相鄰塊之間一個(gè)或多個(gè)對(duì)應(yīng)的邊緣像素之間的差值(740)。差值表示跨越塊邊界的方差,并可利用各種技術(shù)被獲取和/或得到??梢垣@取兩個(gè)相鄰塊的兩個(gè)相應(yīng)邊緣像素間的簡(jiǎn)單一階差分。在其它實(shí)施例中,可以獲取和使用二階差分。所述一個(gè)或多個(gè)差值被與閾值TD進(jìn)行比較(750)?;谒鲆粋€(gè)或多個(gè)差值與閾值TD的比較,來(lái)選擇所述第二解塊濾波器(760)。
所述閾值TD通常取決于亮度,并且,對(duì)于不同的系統(tǒng)和/或不同類(lèi)型的圖像,可事先進(jìn)行設(shè)置。在一個(gè)實(shí)施例中,所述兩個(gè)相鄰塊的均值的平均可作為所述閾值TD。或者,所述閾值TD可以是所述兩個(gè)相鄰塊的均值中的差。所述閾值TD還可以被優(yōu)化,以利用比例因子α處理圖像中的亮度(intensity)變化,此α正比于如下定義的對(duì)比度,其中μc為當(dāng)前塊的均值,μn為包含了獲取所述差值中所使用的邊緣像素的塊的均值。
α=(|μc-μn|)/μn所述α的取值范圍為0到1。
此外,在一個(gè)實(shí)施例中,所述兩個(gè)相鄰塊的三個(gè)邊緣像素之間的差值被獲取并被與閾值TD進(jìn)行比較。如果所述差值中的至少兩個(gè)大于TD,選擇高斯濾波器。即,如果所述三個(gè)差值中的三個(gè)大于TD,在所述兩個(gè)相鄰塊的六個(gè)邊緣像素上使用六點(diǎn)高斯濾波器。如果所述三個(gè)差值中的兩個(gè)大于TD,則在所述兩個(gè)相鄰塊的四個(gè)邊緣像素上使用四點(diǎn)高斯濾波器。如果所述三個(gè)差值中的一個(gè)大于TD,則在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上使用平均濾波器。
再參照?qǐng)D2,處理器250從而可確定是否需要進(jìn)行解塊。如上討論,只要系統(tǒng)允許,處理器250也可以依據(jù)所述相鄰塊的特征,選擇不同的解塊濾波器。從而,解塊濾波模塊240可包括一個(gè)或多個(gè)類(lèi)型的濾波器,例如,但不限于,平均濾波器和/或高斯濾波器。
此外,如上討論,可用ABSDCT實(shí)現(xiàn)VBSDCT模塊110。以下將利用16×16像素的塊大小來(lái)描述使用了ABSDCT的壓縮技術(shù)。通常,每一個(gè)亮度和色度分量被傳送到塊交織器(block interleaver)(未示出)。在一個(gè)實(shí)施例中,如圖8A到8D所示,16×16的塊被提交給所述塊交織器,其安排在所述16×16塊內(nèi)的圖像例,以生成塊并組成數(shù)據(jù)子塊,而用于DCT分析。一個(gè)16×16 DCT被應(yīng)用于一階,四個(gè)8×8 DCT被應(yīng)用于二階,16個(gè)4×4 DCT被應(yīng)用于三階,并且,64個(gè)2×2 DCT被應(yīng)用于四階。所述DCT操作減小了圖像源中固有的空間冗余。進(jìn)行DCT后,圖像信號(hào)能量的大部分傾向于集中在少數(shù)的DCT系數(shù)中。
對(duì)于所述16×16塊和各子塊,分析變換后系數(shù),以確定編碼所述塊或子塊所需要的比特?cái)?shù)。然后,選擇需要最小比特?cái)?shù)來(lái)編碼的塊或子塊的組合,以表示圖像片段。例如,可以選擇兩個(gè)8×8子塊、六個(gè)4×4子塊,以及八個(gè)2×2子塊,以表示所述圖像片段。然后,所選中的塊或子塊的組合被依序正確地排列。
分析轉(zhuǎn)換后的系數(shù),并且選擇所述塊或子塊的組合以表示所述圖像片段。這樣,可以產(chǎn)生表示n×n塊內(nèi)的塊大小賦值的塊大小賦值信息。對(duì)于16×16數(shù)據(jù)塊而言,ABSDCT技術(shù)生成稱(chēng)為PQR信息的數(shù)據(jù),此數(shù)據(jù)表示在16×16塊內(nèi)的塊大小賦值。所述PQR信息為可變比特寬度數(shù)據(jù),并描述16×16塊被再分的程度。PQR字段的R比特表示所述16×16塊是否被再分為四個(gè)8×8塊。如圖9A所示,如果所述R比特為“0”,所述塊保持完整。在這種情況下,不需要進(jìn)一步的PQR信息,所述PQR字段僅為1比特長(zhǎng)。如果所述R比特為“1”,則所述16×16塊被再分為四個(gè)8×8塊,如圖9B所示,并且,至少四個(gè)額外的比特將存在于所述PQR字段中。
所述四個(gè)額外比特被稱(chēng)為“Q”信息。每一個(gè)Q的比特表示將8×8塊再分為四個(gè)4×4塊。對(duì)于每一個(gè)被設(shè)置的Q的比特,還有另外四個(gè)“P”的比特,其用于指示是否有4×4塊被再分為2×2。于是,PQR數(shù)據(jù)的長(zhǎng)度可為1到21比特,這取決于在所述16×16塊內(nèi)的塊大小賦值。如果每個(gè)8×8塊都被再分,則所述PQR信息將為21比特長(zhǎng)。圖10A-D示出了與PQR數(shù)據(jù)對(duì)應(yīng)的16×16塊的一些例子。
因此,每一個(gè)塊可以被劃分為大小為8×8、4×4和/或2×2的子塊,這取決于分配準(zhǔn)則。所述再分n×n塊的準(zhǔn)則為所述塊的方差,如下Block_variance=1N2Σm=0N-1Σn=0N-1x2(m,n)-[1NΣm=0N-1Σn=0N-1x(m,n)]2]]>如果n×n塊的塊方差超出某個(gè)閾值,像素的此n×n塊可被再分為4個(gè)n/2×n/2子塊。在此,對(duì)于10比特圖像,所述塊的均值的取值在(0,1023)范圍內(nèi)。這樣,所述圖像被劃分為12個(gè)面元(bin),一組閾值被用于每一個(gè)顏色分量的每一個(gè)面元。并且,可基于從不同類(lèi)型的圖像幀的數(shù)目收集到的統(tǒng)計(jì)數(shù)據(jù)來(lái)確定所述閾值。典型閾值設(shè)置如圖12所示。
圖11示出了示例過(guò)程1100,其用于為16×16塊生成PQR信息。對(duì)于每一個(gè)塊,獲取均值和方差V16(1110)。將所述方差V16與用于相應(yīng)均值的適當(dāng)閾值T16進(jìn)行比較(1115)。如果所述方差V16不大于閾值T16,PQR數(shù)據(jù)的R值被設(shè)置為0,并且所述過(guò)程結(jié)束(1120)。否則,所述R值被設(shè)置為1(1125)。然后,為所述四個(gè)8×8子塊0到3中的每一個(gè),獲取方差V8(i),{i=1到4},如圖9B所示,并且將各方差V8(i)與適當(dāng)?shù)拈撝礣8進(jìn)行比較,以為所述PQR數(shù)據(jù)確定Q值(1130到1140)。如果方差V8(i)不大于閾值T8,相應(yīng)的Q(i)被設(shè)置為0(1145)。否則,所述Q(i)的值被設(shè)置為1(1150)。然后為Q(i)被設(shè)置為1的各8×8塊的四個(gè)4×4子塊中的每一個(gè),獲取方差V4(j),{j=1到4},并且將各方差V4(j)與適當(dāng)?shù)拈撝礣4進(jìn)行比較,以為所述PQR數(shù)據(jù)確定所述Q值(1155到1165)。如果方差V4(j)不大于閾值T4,相應(yīng)的Q(j)被設(shè)置為0(1170)。否則,所述Q(j)值被設(shè)置為1(1175)。
這樣,所述PQR信息可以被生成,并在諸如圖像解壓縮器200的圖像解壓縮器中用于解塊。所述PQR信息被用于確定圖像中的邊緣內(nèi)容。塊中的所述邊緣信息越大,所述塊大小越小,而所述PQR碼越長(zhǎng)。圖14示出了示例過(guò)程1400,其用于處理利用ABSDCT壓縮的圖像,而圖13示出了在過(guò)程1400中使用的各種定義。
當(dāng)確定是否對(duì)兩個(gè)相鄰塊使用解塊濾波器時(shí),對(duì)于各塊,獲取所述PQR信息(1410)。如果各PQR比特均大于5比特(1415),此過(guò)程結(jié)束。也即,各塊均被確認(rèn)為被再分,并被認(rèn)為包含了足夠的邊緣信息。否則,如果所述PQR比特中的一個(gè)大于5比特,在{x1,y1}上使用兩點(diǎn)平均濾波器(1420和1425)。如果所述PQR比特均不大于5比特,則獲取差值d1、d2和d3(1430)。如果d1、d2和d3大于閾值TD,則在{x1,x2,x3,y1,y2,y3}上使用六點(diǎn)高斯濾波器(1435和1440)。如果d1和d2大于閾值TD,則在{x1,x2,y1,y2}上使用四點(diǎn)高斯濾波器(1445和1450)。如果d1大于閾值TD,則在{x1,y1}上使用兩點(diǎn)平均濾波器(1455和1460)。
在過(guò)程1400中,所述實(shí)施例不限于平均濾波器和/或高斯濾波器。也可以使用平均濾波器和/或高斯濾波器之外的各種濾波器。
如所示,可容易地在解壓縮器中實(shí)現(xiàn)解塊濾波模塊。于是,可以顯著地減少偽影,并且提高圖像的視覺(jué)質(zhì)量??勺⒁獾?,當(dāng)解塊濾波模塊240如所示被從反VBSDCT模塊230和從處理器250分離地實(shí)現(xiàn)時(shí),解塊濾波模塊240、反VBSDCT模塊230以及處理器250中的一個(gè)或其組合可一起實(shí)現(xiàn)。
并且,所示實(shí)施例可以通過(guò)硬件、軟件、固件、中間件、微碼或其組合來(lái)實(shí)現(xiàn)。當(dāng)在軟件、固件、中間件或微碼中實(shí)現(xiàn)時(shí),所述實(shí)施例的要素為用以執(zhí)行所需任務(wù)的程序代碼或代碼片段,其可被存儲(chǔ)于機(jī)器可讀介質(zhì)中(未示出)。代碼片段可以表示過(guò)程、函數(shù)、子程序、程序、例程、子例程、模塊、軟件包、類(lèi)或者指令、數(shù)據(jù)結(jié)構(gòu)或程序語(yǔ)句的任意組合。通過(guò)傳送和/或接收信息、數(shù)據(jù)、變量、參數(shù)或存儲(chǔ)內(nèi)容,代碼片段可與另一個(gè)代碼片段或硬件電路相結(jié)合。信息、變量、參數(shù)、數(shù)據(jù)等,可以通過(guò)任何適當(dāng)?shù)姆绞?,進(jìn)行傳送、轉(zhuǎn)送或發(fā)送,所述方式包括存儲(chǔ)共享、消息傳遞、令牌傳遞、網(wǎng)絡(luò)傳輸?shù)?。并且,所述機(jī)器可讀介質(zhì)可以在用于計(jì)算機(jī)系統(tǒng)的產(chǎn)品中實(shí)現(xiàn),并且可以使得機(jī)器可讀代碼裝置具體化于其中。
此外,盡管使用可變塊大小DCT對(duì)所述實(shí)施例進(jìn)行描述,如上所述的解塊技術(shù)也可以在具有固定塊大小的DCT中實(shí)現(xiàn)。在這種情況下,可以生成所述BSA信息,但不能用于實(shí)際的DCT。而是,所述BSA信息將用在圖像解壓縮器,以確定是否需要對(duì)于兩個(gè)相鄰塊進(jìn)行解塊。
可注意到,前述實(shí)施例僅僅作為例子,而不能理解為是對(duì)本發(fā)明的限制。對(duì)所述實(shí)施例的描述意在進(jìn)行說(shuō)明,而非限制權(quán)利要求的范圍。同樣,本方案可輕易地應(yīng)用于其它類(lèi)型的裝置,而且許多替換、改變和變化對(duì)于本領(lǐng)域技術(shù)人員是顯而易見(jiàn)的。
權(quán)利要求
1.用于處理利用基于塊的壓縮來(lái)壓縮的圖像的方法,其包括確定是否兩個(gè)塊為相鄰塊;如果確定所述兩個(gè)塊為相鄰塊,確定是否所述兩個(gè)相鄰塊均被再分;如果確定所述兩個(gè)相鄰塊并非均被再分,在這兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行解塊濾波。
2.根據(jù)權(quán)利要求1的方法,其中,確定是否兩個(gè)相鄰塊均被再分包括獲取所述兩個(gè)相鄰塊中每一個(gè)的方差值;將所述方差值與第一閾值進(jìn)行比較;并且基于所述方差值與所述第一閾值的所述比較,確定是否所述兩個(gè)相鄰塊均被再分。
3.根據(jù)權(quán)利要求1的方法,其中,確定是否兩個(gè)相鄰塊均被再分包括獲取塊大小賦值;并且利用所述塊大小賦值來(lái)確定是否所述兩個(gè)相鄰塊被再分。
4.根據(jù)權(quán)利要求1的方法,進(jìn)一步包括如果所述兩個(gè)相鄰塊并非均被再分,確定是否所述兩個(gè)相鄰塊中的一個(gè)被再分;如果所述兩個(gè)相鄰塊中的一個(gè)被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第一解塊濾波器;并且,如果所述兩個(gè)相鄰塊均未被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第二解塊濾波器。
5.根據(jù)權(quán)利要求4的方法,其中,利用所述第二解塊濾波器包括在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上使用兩點(diǎn)平均濾波器。
6.根據(jù)權(quán)利要求4的方法,進(jìn)一步包括如果所述兩個(gè)相鄰塊均未被再分,獲取所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素的一個(gè)或多個(gè)差值;將所述一個(gè)或多個(gè)差值與第二閾值進(jìn)行比較;并且,基于所述一個(gè)或多個(gè)差值與所述第二閾值的所述比較,選擇所述第二解塊濾波器。
7.根據(jù)權(quán)利要求6的方法,其中,所述獲取一個(gè)或多個(gè)差值包括獲取所述兩個(gè)相鄰塊的邊緣像素之間的一階差分。
8.根據(jù)權(quán)利要求6的方法,其中,所述獲取一個(gè)或多個(gè)差值包括獲取所述兩個(gè)相鄰塊邊緣像素之間的二階差分。
9.根據(jù)權(quán)利要求6的方法,其中,所述獲取一個(gè)或多個(gè)差值包括獲取所述兩個(gè)相鄰塊的三個(gè)邊緣像素之間的差值;并且其中,選擇所述第二解塊濾波器包括如果所述差值中的至少兩個(gè)大于所述第二閾值,使用高斯濾波器。
10.根據(jù)權(quán)利要求9的方法,其中,使用高斯濾波器包括如果所述差值大于所述第二閾值,在所述兩個(gè)相鄰塊的六個(gè)邊緣像素上使用六點(diǎn)高斯濾波器。
11.根據(jù)權(quán)利要求9的方法,其中,使用高斯濾波器包括如果所述差值中的兩個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的四個(gè)邊緣像素上使用四點(diǎn)高斯濾波器。
12.根據(jù)權(quán)利要求9的方法,其中,選擇所述第二解塊濾波器還包括如果所述差值中的一個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上使用兩點(diǎn)平均濾波器。
13.用于處理利用基于塊的壓縮來(lái)壓縮的圖像的裝置,其包括用于確定是否兩個(gè)塊為相鄰塊的裝置;如果確定所述兩個(gè)塊為相鄰塊,確定是否所述兩個(gè)相鄰塊均被再分的裝置;如果確定所述兩個(gè)相鄰塊并非均被再分,在這兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行解塊濾波的裝置。
14.根據(jù)權(quán)利要求13的裝置,其中,所述用于確定是否兩個(gè)相鄰塊均被再分的裝置包括用于獲取所述兩個(gè)相鄰塊中每一個(gè)的方差值的裝置;用于將所述方差值與第一閾值進(jìn)行比較的裝置;以及基于所述方差值與所述第一閾值的所述比較,確定是否所述兩個(gè)相鄰塊均被再分的裝置。
15.根據(jù)權(quán)利要求13的裝置,其中,所述用于確定是否兩個(gè)相鄰塊均被再分的裝置包括用于獲取塊大小賦值的裝置;以及用于利用所述塊大小賦值來(lái)確定是否所述兩個(gè)相鄰塊被再分的裝置。
16.根據(jù)權(quán)利要求13的裝置,進(jìn)一步包括如果所述兩個(gè)相鄰塊并非均被再分,確定是否所述兩個(gè)相鄰塊中的一個(gè)被再分的裝置;如果所述兩個(gè)相鄰塊中的一個(gè)被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第一解塊濾波器的裝置;以及,如果所述兩個(gè)相鄰塊均未被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第二解塊濾波器的裝置。
17.根據(jù)權(quán)利要求16的裝置,進(jìn)一步包括如果所述兩個(gè)相鄰塊均未被再分,獲取所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素的一個(gè)或多個(gè)差值的裝置;用于將所述一個(gè)或多個(gè)差值與第二閾值進(jìn)行比較的裝置;以及,基于所述一個(gè)或多個(gè)差值與所述第二閾值的所述比較,選擇所述第二解塊濾波器的裝置。
18.根據(jù)權(quán)利要求17的裝置,其中,所述用于獲取一個(gè)或多個(gè)差值的裝置包括用于獲取所述兩個(gè)相鄰塊的三個(gè)邊緣像素之間的差值的裝置;并且其中,所述用于選擇所述第二解塊濾波器的裝置包括如果所述差值中的至少兩個(gè)大于所述第二閾值,使用高斯濾波器的裝置。
19.根據(jù)權(quán)利要求18的裝置,其中,所述使用高斯濾波器的裝置包括如果所述差值大于所述第二閾值,在所述兩個(gè)相鄰塊的六個(gè)邊緣像素上使用六點(diǎn)高斯濾波器的裝置。
20.根據(jù)權(quán)利要求18的裝置,其中,所述使用高斯濾波器的裝置包括如果所述差值中的兩個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的四個(gè)邊緣像素上使用四點(diǎn)高斯濾波器的裝置。
21.根據(jù)權(quán)利要求18的裝置,其中,所述用于選擇所述第二解塊濾波器的裝置進(jìn)一步包括如果所述差值中的一個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上使用平均濾波器的裝置。
22.一種用于含有基于塊的圖像壓縮系統(tǒng)的計(jì)算機(jī)系統(tǒng)的產(chǎn)品,所述產(chǎn)品包括機(jī)器可讀介質(zhì),該介質(zhì)使得機(jī)器可讀代碼裝置具體化于該介質(zhì)中,所述產(chǎn)品包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于確定是否兩個(gè)塊為相鄰塊;具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果確定所述兩個(gè)塊為相鄰塊,確定是否所述兩個(gè)相鄰塊均被再分;具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果確定所述兩個(gè)相鄰塊并非均被再分,在這兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行濾波。
23.根據(jù)權(quán)利要求22的產(chǎn)品,其中,所述用于確定是否兩個(gè)相鄰塊均被再分的機(jī)器可讀代碼裝置包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于獲取所述兩個(gè)相鄰塊中每一個(gè)的方差值;具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于將所述方差值與第一閾值進(jìn)行比較;以及具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于基于所述方差值與所述第一閾值的所述比較來(lái)確定是否所述兩個(gè)相鄰塊均被再分。
24.根據(jù)權(quán)利要求22的產(chǎn)品,其中,所述用于確定是否兩個(gè)相鄰塊均被再分的機(jī)器可讀代碼裝置包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于獲取塊大小賦值;以及具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于利用所述塊大小賦值來(lái)確定是否所述兩個(gè)相鄰塊被再分。
25.根據(jù)權(quán)利要求22的產(chǎn)品,進(jìn)一步包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述兩個(gè)相鄰塊并非均被再分,確定是否所述兩個(gè)相鄰塊中的一個(gè)被再分;具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述兩個(gè)相鄰塊中的一個(gè)被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第一解塊濾波器;以及,具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述兩個(gè)相鄰塊均未被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上使用第二解塊濾波器。
26.根據(jù)權(quán)利要求25的產(chǎn)品,進(jìn)一步包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述兩個(gè)相鄰塊均未被再分,獲取所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素的一個(gè)或多個(gè)差值;具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于將所述一個(gè)或多個(gè)差值與第二閾值進(jìn)行比較;以及,具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于基于所述一個(gè)或多個(gè)差值與所述第二閾值的所述比較來(lái)選擇所述第二解塊濾波器。
27.根據(jù)權(quán)利要求26的產(chǎn)品,其中,所述用于獲取一個(gè)或多個(gè)差值的機(jī)器可讀代碼裝置包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,用于獲取所述兩個(gè)相鄰塊的三個(gè)邊緣像素之間的差值;并且其中,所述用于選擇所述第二解塊濾波器的代碼包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述差值中的至少兩個(gè)大于所述第二閾值,使用高斯濾波器。
28.根據(jù)權(quán)利要求27的產(chǎn)品,其中,所述使用高斯濾波器的機(jī)器可讀代碼裝置包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述差值大于所述第二閾值,在所述兩個(gè)相鄰塊的六個(gè)邊緣像素上使用六點(diǎn)高斯濾波器。
29.根據(jù)權(quán)利要求27的產(chǎn)品,其中,所述使用高斯濾波器的機(jī)器可讀代碼裝置包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述差值中的兩個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的四個(gè)邊緣像素上使用四點(diǎn)高斯濾波器。
30.根據(jù)權(quán)利要求27的產(chǎn)品,其中,用于選擇所述第二解塊濾波器的機(jī)器可讀代碼裝置進(jìn)一步包括具體化于所述機(jī)器可讀介質(zhì)中的機(jī)器可讀代碼裝置,如果所述差值中的一個(gè)大于所述第二閾值,在所述兩個(gè)相鄰塊的兩個(gè)邊緣像素上使用平均濾波器。
31.用于處理使用基于塊的壓縮來(lái)壓縮的圖像的裝置,其包括處理器,其被配置為,確定是否兩個(gè)塊為相鄰塊,并且,如果確定所述兩個(gè)塊為相鄰塊,確定是否所述兩個(gè)相鄰塊被再分;解塊濾波器,其被配置為,如果確定所述兩個(gè)相鄰塊中的至少一個(gè)未被再分,在這兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行濾波。
32.根據(jù)權(quán)利要求31的裝置,其中,所述處理器利用塊大小賦值信息來(lái)確定是否兩個(gè)相鄰塊被劃分。
33.根據(jù)權(quán)利要求31的裝置,其中,所述處理器基于各塊的方差值來(lái)確定是否兩個(gè)相鄰塊被劃分。
全文摘要
實(shí)施例描述了用于處理利用基于塊的壓縮的圖像的方法、裝置和系統(tǒng)。在一個(gè)實(shí)施例中,方法包括確定是否兩個(gè)塊為相鄰塊,如果所述兩個(gè)塊為相鄰塊,確定是否所述兩個(gè)相鄰塊均被再分;如果確定所述兩個(gè)相鄰塊并非均被再分,在所述兩個(gè)相鄰塊的一個(gè)或多個(gè)邊緣像素上進(jìn)行解決濾波。
文檔編號(hào)G06K9/40GK1774722SQ200480010253
公開(kāi)日2006年5月17日 申請(qǐng)日期2004年3月17日 優(yōu)先權(quán)日2003年3月17日
發(fā)明者V·R·拉韋德蘭, A·C·歐文 申請(qǐng)人:高通股份有限公司