專利名稱::圖像壓縮控制方法及裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及圖像壓縮,特別是涉及一種動態(tài)控制圖像壓縮的像素大小的方法及裝置。
背景技術(shù):
:圖像壓縮普遍用于減小數(shù)字圖像的數(shù)據(jù)大小,以便于進(jìn)行后續(xù)的各種圖像處理、圖像存儲或傳輸。以圖像傳輸為例,系統(tǒng)設(shè)計(jì)者無不想辦法讓壓縮后的像素大小不至超過系統(tǒng)帶寬,如此才能獲得可靠的傳輸,且不會造成編碼器(傳送器)或解碼器(接收器)的緩沖器溢位(overflow)問題。沒有一種壓縮或編碼方法可以普遍適用于所有種類的圖像或其系統(tǒng)中。更糟的是,有些壓縮或編碼方法不但不能減小某些圖像的數(shù)據(jù)大小,反而會不當(dāng)增加其數(shù)據(jù)量。鑒于上述原因,因此亟需提出一種方法及裝置,其可動態(tài)控制圖像的壓縮或編碼,用于防止緩沖器溢位及數(shù)據(jù)不當(dāng)增加等問題。
發(fā)明內(nèi)容鑒于上述,本發(fā)明的目的之一是提出一種圖像壓縮控制方法及裝置,用于動態(tài)控制圖像的壓縮或編碼,以防止緩沖器溢位及數(shù)據(jù)不當(dāng)?shù)脑黾?。根?jù)上述的目的,本發(fā)明提供一種圖像壓縮控制方法。首先,壓縮一當(dāng)前塊。將該塊像素大小平均值與先前塊的像素大小平均值予以平均,以得到一平均值。如果平均值不大于一目標(biāo)值,則輸出壓縮的當(dāng)前塊;否則,刪除未壓縮的當(dāng)前塊的像素的一部份位,并輸出位刪除的當(dāng)前塊。根據(jù)一實(shí)施例,本發(fā)明提供一種圖像壓縮控制裝置。一壓縮器壓縮當(dāng)前塊。一壓縮控制器將當(dāng)前塊像素大小平均值與先前塊的像素大小平均值予以平均,以得到一平均值。如果平均值不大于一目標(biāo)值,則輸出壓縮的當(dāng)前塊。如果平均值大于目標(biāo)值,則由位刪除器刪除未壓縮的當(dāng)前塊的像素的一部份位,并輸出位刪除的當(dāng)前塊。圖1A顯示本發(fā)明實(shí)施例的圖像壓縮方法的流程圖。圖1B顯示本發(fā)明實(shí)施例的圖像壓縮裝置的方塊圖。圖1C例示根據(jù)圖1A、圖1B所進(jìn)行的圖像壓縮的圖像像素。圖2A顯示本發(fā)明實(shí)施例的圖像解壓縮(decompression)方法的流程圖。圖2B顯示本發(fā)明實(shí)施例的圖像解壓縮裝置的方塊圖。附圖符號說明10-15圖1A圖像壓縮的步驟20壓縮器22緩沖器24壓縮控制器26位刪除器30-33圖2A圖像解壓縮的步驟40解壓縮器42緩沖器44解壓縮控制器46復(fù)原器。具體實(shí)施方式圖1A顯示本發(fā)明實(shí)施例的圖像壓縮方法的流程圖,圖1B則顯示該實(shí)施例相關(guān)的圖像壓縮裝置的方塊圖。圖1C例示根據(jù)圖U、圖1B所進(jìn)行的圖像壓縮的圖像像素。為了說明簡便起見,圖式中僅顯示出幀(frame)其中一條線的部分。在進(jìn)行壓縮的一開始,圖1C所示的像素被組成多個(gè)塊(block),如附圖中虛線所示。在此例子中,每一個(gè)塊由四個(gè)相鄰像素所組成。例如,相鄰傳_素10、11、13、13組成塊#11,接下來的相鄰像素20、128、200、255組成塊#n+l。然而,本發(fā)明所使用塊的像素?cái)?shù)目并不限定于四個(gè);并且,每一塊的像素?cái)?shù)目可以是固定的,也可以是變動的。接下來,這些塊將依序由壓縮器(compressor)20來進(jìn)行壓縮或編碼(步驟10)。在本說明書中,實(shí)施例主要使用"壓縮,,一詞,然而本發(fā)明也同樣適用于"編碼"技術(shù),因此,這兩個(gè)詞在本說明書中是可以互換使用的。在本實(shí)施例中,寄存于緩沖器22的塊#11先進(jìn)行壓縮。為了便于說明起見,使用差動脈沖編碼調(diào)制(DPCM)作為壓縮方法,主要是鑒于相鄰像素之間通常會具有相近的亮度值;然而,其它的壓縮方法也可以適用。在差動脈沖編碼調(diào)制(DPCM)方法中,以后像素亮度值減去前像素亮度值;這些差值顯示于圖1C及表一的第二欄。表一<table>tableseeoriginaldocumentpage6</column></row><table>在本實(shí)施例中,針對差動脈沖編碼調(diào)制(DPCM)的結(jié)果再進(jìn)行另一壓縮一熵編碼(entropycoding),例如Huffman編碼;然而,其它實(shí)施例并不一定要使用兩次壓縮。在熵編碼(entropycoding)中,較常出現(xiàn)的DPCM碼被編以較短碼,而較少出現(xiàn)的DPCM碼則被編以較長碼。此種壓縮編碼屬于一種變長碼(variable-lengthcode),其結(jié)果顯示在表一的第三欄,其像素大小則顯示在表一的第四欄,單位為位/像素(bits/pixel)。其中,每一列的位數(shù)均乘以3,其理由是每一像素由紅(R)、綠(G)、藍(lán)(B)所共同合成顯示。由表一的最后一列可以得知,四個(gè)像素從壓縮前的96位(或平均24bits/pixel)變成壓縮后的27位(或6.7bits/pixel)。換句話說,此塊像素的壓縮率為3.5。接著,將當(dāng)前塊并n的像素大小平均值與先前一個(gè)(或前多個(gè))塊的像素大小平均值予以平均,以得到一平均值。其中,上述的先前塊是指已經(jīng)過壓縮或位刪除的塊(步驟11)。在實(shí)施例中,以壓縮控制器(compressioncontroller)24,根據(jù)壓縮器(compressor)20的輸出及寄存的先前塊的像素大小平均值,用于得到該平均值。例如,々H殳寄存的先前塊(直到塊h-l)的像素大小平均值為11.3bits/pixel,則該平均值即為9(=(11.3+6.7)/2)bits/pixel。在步驟12,將前一步驟所得到的平均值與一目標(biāo)(target)值作比較。其中,目標(biāo)值代表一個(gè)不會造成編碼器或解碼器的緩沖器溢位的系統(tǒng)帶寬,在本實(shí)施例中為12位/像素1。假如平均值不大于目標(biāo)值,則壓縮控制器24將讓壓縮器20的結(jié)果進(jìn)行輸出(步驟13),并抑制刪除器(truncator)26。相反的,假如平均值大于目標(biāo)值,則壓縮控制器24將抑制壓縮器20,并啟動刪除器(truncator)26針對當(dāng)前塊的原始像素值進(jìn)行位刪除編碼(truncationcoding)(步驟14),再將經(jīng)位刪除的結(jié)果作為輸出(步驟15)。有關(guān)于位刪除編碼將于以下配合塊#11+1例子作詳述。對于例示中的當(dāng)前塊#11,由于平均值(亦即9)不大于目標(biāo)值(亦即12),因此壓縮器20的壓縮結(jié)果將作為輸出(步驟13)。接下來,針對當(dāng)前寄存于緩沖器22的塊并n+l進(jìn)行壓縮(亦即,進(jìn)行差動脈沖編碼調(diào)制(DPCM)及熵編碼(entropycoding))。差動脈沖編碼調(diào)制(DPCM)的結(jié)果顯示在圖1C及表二的第二欄,而熵編碼的結(jié)果則顯示在表二的第三欄,其像素大小則顯示在表二的第四欄,單位為位/像素(bits/pixel)。表二<table>tableseeoriginaldocumentpage7</column></row><table>96/4=24由表二的最后一列可以得知,四個(gè)像素從壓縮前的96位(或平均24bits/pixel)變成壓縮后的634立(或15.7bits/pixel)。接著,將壓縮的當(dāng)前塊#11+1的像素大小平均值與先前一個(gè)(或前多個(gè))塊的像素大小平均值予以平均,以得到一平均值(步驟11)。在此例子中,先前塊(直到塊弁n)的像素大小平均值為9bits/pixel,則上述的平均值即為12.3(=(9+15.7)/2)bits/pixel。在步驟12,將前一步驟所得到的平均值與目標(biāo)(target)值作比較。在這個(gè)例子中,由于平均值(亦即12.3)大于目標(biāo)值(亦即12),因此壓縮控制器24將抑制壓縮器20,并啟動刪除器(truncator)26針對當(dāng)前塊并n+l的原始(未經(jīng)壓縮M象素值進(jìn)行位刪除編碼(truncationcoding)(步驟14),再將經(jīng)位刪除的結(jié)果進(jìn)行輸出(步驟15)。在實(shí)施例中,是將像素亮度值的一個(gè)或多個(gè)最低有效位(LSB)予以刪除(truncation),使得位刪除后的像素大小平均值不會大于目標(biāo)(target)值。例如,在本例子中,是將像素每一顏色的四個(gè)最低有效位(LSB)予以刪除。表三的第二欄、第三欄分別顯示位刪除前、后的像素位。經(jīng)位刪除后,當(dāng)前塊#11+1的像素大小平均值為l2bits/pixel。將此像素大小平均值與先前塊(直到塊h)的像素大小平均值(亦即9)予以平均,因而得到一更新的平均值為10.5(=(9+12)/2)。表三原始值位刪除前(二進(jìn)制)位刪除后(二進(jìn)制)20000101000001128100000001000200110010001100255111111111111對于塊紐+l,壓縮控制器24將會讓表三的位刪除結(jié)果作為輸出(步驟15),而非表二所示的壓縮結(jié)果。圖2A顯示本發(fā)明實(shí)施例的圖^f象解壓縮(decompression)方法的流程圖,圖2B則顯示該實(shí)施例相關(guān)的圖像解壓縮裝置的方塊圖。在解壓縮的一開始,解壓縮控制器(decompressioncontroller)44判定寄存于緩沖器42的像素是否曽受到位刪除(步驟30)。該判定通常是4僉視壓縮器(或編碼器)傳輸過來的標(biāo)題(header)內(nèi)容。如果此步驟的判定結(jié)果為否定的(亦即,像素未曾受到位刪除),則這些像素即由解壓縮器(decompressor)40進(jìn)行解壓縮(步驟31);其是進(jìn)行與壓縮器20相反的(inverse)運(yùn)算操作。相反的,如果步驟30的判定結(jié)果為肯定的(亦即,像素曾經(jīng)受到位刪除),則這些像素將藉由復(fù)原器(reconstructor)46來進(jìn)行位復(fù)原(步驟32),用于將被刪除的最低有效位(LSB)予以復(fù)原。例如,在該最低有效位(LSB)的位置補(bǔ)入位"0"或"1"。在本例子中,塊h+l是在位于位置[3:O]補(bǔ)上位"0",如表四第三欄所示。表四<table>tableseeoriginaldocumentpage9</column></row><table>在本實(shí)施例中,更進(jìn)行步驟33的無條件進(jìn)位(unconditionalcarry),亦即,將該補(bǔ)入的最低有效位(LSB)當(dāng)中的最高位以位'T,(亦即,carry)來替代。在這個(gè)例子中,共有四個(gè)最低有效位(LSB),而其最高位(亦即,從右邊數(shù)來第四位)以'T,(carry)來代替。此步驟主要是用于補(bǔ)償位刪除時(shí)的數(shù)據(jù)損失,以降低失真度。根據(jù)本實(shí)施例,本發(fā)明可以在壓縮(或編碼)時(shí)動態(tài)地選擇適當(dāng)?shù)膲嚎s/編碼方法,使得像素大小不至超過系統(tǒng)帶寬,因而得以避免緩沖器溢位。藉此,壓縮器/解壓縮器或者編碼器/解碼器得以運(yùn)作于最高速度而不會有溢位發(fā)生。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的申請專利范圍;凡其它未脫離發(fā)明所揭示的精神下所完成的等效改變或修飾,均應(yīng)包含在本發(fā)明的申請專利范圍內(nèi)。權(quán)利要求1.一種圖像壓縮控制方法,包含壓縮一包含數(shù)個(gè)像素的當(dāng)前塊;將該壓縮的當(dāng)前塊的像素大小平均值與先前塊的像素大小平均值予以平均,以得到一平均值;如果該平均值不大于該目標(biāo)值,則輸出該壓縮的當(dāng)前塊;及如果該平均值大于該目標(biāo)值,則刪除位壓縮的該當(dāng)前塊的像素的一部份位,并輸出該位刪除的當(dāng)前塊。2.如權(quán)利要求1所述的圖像壓縮控制方法,其中,上述的目標(biāo)值代表一個(gè)不會造成溢位的系統(tǒng)帶寬。3.如權(quán)利要求1所述的圖像壓縮控制方法,其中,上述未壓縮的當(dāng)前塊的像素的一或多個(gè)最低有效位被刪除,使得該位刪除的像素大小平均值不會大于該目標(biāo)值。4.如權(quán)利要求3所述的圖像壓縮控制方法,更包含傳輸該壓縮或位刪除的當(dāng)前塊;及判定該傳輸?shù)漠?dāng)前塊是否曾被位刪除。5.如權(quán)利要求4所述的圖像壓縮控制方法,更包含如果該傳輸當(dāng)前塊被判定未曾被位刪除,則將該傳輸當(dāng)前塊予以解壓縮;及如果該傳輸當(dāng)前塊被判定曾被位刪除,則將該傳輸當(dāng)前塊的刪除位予以復(fù)原。6.如權(quán)利要求5所述的圖像壓縮控制方法,其中,上述的傳輸當(dāng)前塊在位刪除的位置補(bǔ)入位。7.如權(quán)利要求6所述的圖像壓縮控制方法,更包含將該補(bǔ)入位的最高位以一進(jìn)位位替代。8.—種圖像壓縮控制裝置,包含壓縮器,用于壓縮包含數(shù)個(gè)像素的當(dāng)前塊;壓縮控制器,用于將該壓縮的當(dāng)前塊的像素大小平均值與先前塊的像素大小平均值予以平均,以得到一平均值,且如果該平均值不大于該目標(biāo)值,則輸出該壓縮的當(dāng)前塊;及位刪除器,如果該平均值大于該目標(biāo)值,則刪除未壓縮的該當(dāng)前塊的像素的一部份位,并輸出該位刪除的當(dāng)前塊。9.如權(quán)利要求8所述的圖像壓縮控制裝置,其中,上述的目標(biāo)值代表一個(gè)不會造成溢位的系統(tǒng)帶寬。10.如權(quán)利要求8所述的圖像壓縮控制裝置,其中,上述位刪除器將未壓縮的該當(dāng)前塊的像素的一或多個(gè)最低有效位予以刪除,使得該位刪除的像素大小平均值不會大于該目標(biāo)值。11.如權(quán)利要求8所述的圖像壓縮控制裝置,更包含緩沖器,用于寄存該當(dāng)前塊。12.如權(quán)利要求10所述的圖像壓縮控制裝置,更包含解壓縮控制器,用于判定傳輸?shù)漠?dāng)前塊是否曾被位刪除。13.如權(quán)利要求12所述的圖像壓縮控制裝置,更包含解壓縮器,如果該傳輸當(dāng)前塊被判定未曾被位刪除,則將該傳輸當(dāng)前塊予以解壓縮;及復(fù)原器,如果該傳輸當(dāng)前塊被判定曾被位刪除,則將該傳輸當(dāng)前塊的刪除位予以復(fù)原。14.如權(quán)利要求13所述的圖像壓縮控制裝置,其中,上述的復(fù)原器在位刪除的位置補(bǔ)入位。15.如權(quán)利要求14所述的圖像壓縮控制裝置,其中,上述的復(fù)原器將該補(bǔ)入位的最高位以一進(jìn)位位^齊^。全文摘要一種圖像壓縮控制方法及裝置。首先,壓縮一當(dāng)前塊。將該壓縮的當(dāng)前塊的像素大小平均值與先前塊的像素大小平均值予以平均,以得到一平均值。如果平均值不大于目標(biāo)值,則輸出壓縮的當(dāng)前塊;否則,刪除未壓縮的當(dāng)前塊的像素的一部份位,并輸出該位刪除的當(dāng)前塊。文檔編號H04N7/26GK101399982SQ20071016225公開日2009年4月1日申請日期2007年9月30日優(yōu)先權(quán)日2007年9月30日發(fā)明者鈕圣君申請人:奇景光電股份有限公司