專利名稱:無失真的圖像壓縮方法
技術領域:
本發明關于一種無失真的圖像壓縮方法,尤其是一種需要較少內存空間的無失真的圖像壓縮方法。
背景技術:
隨著電子以及信息技術的進步,在計算機或各式各樣的電子裝置上處理以及顯示圖像的技術發展也越來越普遍。早期的電子信息技術只能儲存或處理較低像素的數字圖像。然而,人們對高質量圖像的需求越來越多,如何處理以及儲存高質量圖像也成為非常熱門的重點。為了得到高質量圖像,在進行圖像壓縮時常采用無失真的壓縮方式。然而無失真的高質量圖像需要儲存較高的像素,對于計算器的運算速度以及儲存媒體的容量也形成一大挑戰。例如在無失真壓縮算法中,無失真靜態圖像壓縮標準(Joint photographic experts group Lossless, JPEG-LS)是利用預測禾口前文模式(context modeling)來達到較好的壓縮比。前文模式需要至少暫存圖像的一整排的像素才能夠進行各種模式下的預測,因此需要大量的運算和儲存空間,而使得編碼器(encoder)所需的成本上升。且JPEG-LS對于不需要高壓縮率的應用來說,演算復雜度還是較高,而增加編碼器的負擔。再加上使用者對于圖像的分辨率的要求越來越高,亦增加了圖像壓縮時的負擔。 若使用現有的無失真的壓縮方式,一旦圖像的分辨率提高,編碼器更得要耗費漫長的時間以及更大量的儲存空間才能處理為高質量圖像。換句話說,現有的無失真的壓縮方式具有運算復雜度太高而導致運算效率低落,以及所需暫存空間龐大的問題。因此,如何設計一種無失真的壓縮方法,能夠兼顧高視覺質量、低運算復雜度以及低暫存空間的需求是工業界相當重要的。
發明內容
為解決上述問題,本發明提供一種無失真(lossless,亦稱為無損)的圖像壓縮方法。無失真的圖像壓縮方法僅需使用較少的內存空間,且能以較快的速度處理具有多個像素的一圖像。其中圖像的一圖像寬度為W。無失真的圖像壓縮方法包括下述步驟(a)由圖像中選取連續的N個像素,其中N為大于或等于2的正整數,且N小于圖像寬度W ; (b)執行一差異脈沖碼調制(Differential pulse code modulation, DPCM)手段,以依據此N個像素的值,得到對應此N個像素的N個非負數差值;(c)依據此N個非負數差值,計算得到一編碼參數(coding parameter);以及(d)依據編碼參數,將此N個非負數差值進行編碼。為了壓縮整張圖像,無失真的圖像壓縮方法另可包括下述步驟(e)接續選取圖像的下N個連續的像素;以及(f)返回步驟(b),直到壓縮完圖像的所有像素。其中步驟(a)可由一緩存器直接接收圖像中被選取的N個像素。而步驟(b)的差異脈沖碼調制手段可包括依據此N個像素的值,得到分別對應于此N個像素的N個像素差值;以及分別對此N個像素差值執行一變換(mapping)手段,以得到分別對應于此N個像素差值的N個非負數差值。根據本發明的一實施范例,依據此N個像素的值,得到分別對應于此N個像素的N 個像素差值的步驟可包括將此N個像素中的第一個像素的值P。作為第一個像素差值d。; 以及分別計算此N個像素中的第i個像素的值Pi與其前一個像素的值Pg的差,作為其它 N-I個像素差值,其中i為正整數,且0 < i < N。變換手段則可包括當此N個像素差值中的第i個像素差值Cli大于或等于零時, 對應的第i個非負數差值Iii為像素差值Cli乘以2,其中0 = < i < N ;以及當此N個像素差值中的第i個像素差值Cli小于零時,對應的第i個非負數差值Iii為像素差值Cli乘以2再減1。
\ 用以編碼此N個非負數差值的編碼參數可以是
權利要求
1.一種無失真的圖像壓縮方法,用以處理具有多個像素的一圖像,其中該圖像的一圖像寬度為W,其特征在于,該無失真的圖像壓縮方法包括a、由該圖像中選取連續的N個該像素,其中N為大于或等于2的正整數,且N小于該圖像寬度W;b、執行一差異脈沖碼調制手段,以依據該N個像素的值,得到對應該N個像素的N個非負數差值;c、依據該N個非負數差值,計算得到一編碼參數;以及d、依據該編碼參數,將該N個非負數差值進行編碼。
2.如權利要求1所述的無失真的圖像壓縮方法,其特征在于,另包括e、接續選取該圖像的下N個連續的該像素;以及f、返回步驟b,直到壓縮完該圖像的所有該像素。
3.如權利要求1所述的無失真的圖像壓縮方法,其特征在于,該差異脈沖碼調制手段包括依據該N個像素的值,得到分別對應于該N個像素的N個像素差值;以及分別對該N個像素差值執行一變換手段,以得到分別對應于該N個像素差值的該N個非負數差值。
4.如權利要求3所述的無失真的圖像壓縮方法,其特征在于,該依據該N個像素的值, 得到分別對應于該N個像素的N個像素差值的步驟包括將該N個像素中的第一個該像素的值P。作為第一個該像素差值d。;以及分別計算該N個像素中的第i個該像素的值Pi與其前一個該像素的值P"的差,作為其它N-I個該像素差值,其中i為正整數,且0 < i < N。
5.如權利要求3所述的無失真的圖像壓縮方法,其特征在于,該變換手段包括當該N個像素差值中的第i個該像素差值Cli大于或等于零時,對應的第i個該非負數差值Iii為該像素差值Cli乘以2,其中0 =< i <N;以及當該N個像素差值中的第i個該像素差值Cli小于零時,對應的第i個該非負數差值Ili 為該像素差值Cli乘以2再減1。
6.如權利要求1所述的無失真的圖像壓縮方法,其特征在于,該編碼參數為
7.如權利要求1所述的無失真的圖像壓縮方法,其特征在于,該步驟d包括 依據該編碼參數,以哥倫布-萊斯編碼將該N個非負數差值進行編碼。
8.如權利要求1所述的無失真的圖像壓縮方法,其特征在于,該步驟a由一緩存器直接接收該圖像中被選取的該N個像素。
全文摘要
本發明公開了一種無失真的圖像壓縮方法,用以處理具有多個像素的圖像,其中圖像的圖像寬度為W。無失真的圖像壓縮方法包括由圖像中選取連續的N個像素,其中N為大于或等于2的正整數,且N小于圖像寬度W;執行差異脈沖碼調制手段,以依據此N個像素的值,得到對應此N個像素的N個非負數差值;依據此N個非負數差值,計算得到編碼參數;以及依據編碼參數,將此N個非負數差值進行編碼。
文檔編號H04N7/26GK102271251SQ20101019721
公開日2011年12月7日 申請日期2010年6月2日 優先權日2010年6月2日
發明者周宏隆, 詹振宏 申請人:華晶科技股份有限公司