專利名稱:一種基于圖片內容選擇壓縮算法的方法和設備的制作方法
技術領域:
本發(fā)明涉及圖片處理技術,尤其涉及一種基于圖片內容選擇壓縮算法的方法和設備。
背景技術:
終端軟件產品中經常存在發(fā)送或者接收圖片的需求,比較常見的有用戶通過手機從網(wǎng)站上下載圖片、或用戶在使用即時通信軟件進行交流的過程中傳送截圖等。通常情況下,圖片的數(shù)據(jù)量一般都比較大,為了達到節(jié)省圖片存儲空間以及數(shù)據(jù)傳輸帶寬的目的, 需要在發(fā)送或接收前對圖片進行壓縮處理。目前,圖片壓縮方法主要包括無損壓縮和有損壓縮,其中,無損壓縮利用數(shù)據(jù)的統(tǒng)計冗余進行壓縮,壓縮后的圖片可完全恢復原始數(shù)據(jù)而不引起任何失真,但是壓縮率會相應受到數(shù)據(jù)統(tǒng)計冗余度的限制。而有損壓縮利用了人類對圖像中某些色彩成分不敏感的特性,允許壓縮過程中損失一定的信息,在恢復原始數(shù)據(jù)時或多或少會有一些失真,但壓縮率相對于無損壓縮較高。無損壓縮和有損壓縮適用于不同類型的圖片。對于色彩變化豐富且分布平滑的圖片適合采用有損壓縮,壓縮后的圖片具有較低的失真度以及較高的壓縮率, 但是如果采用無損壓縮對其進行處理,則壓縮率會很低;對于色彩簡單的圖片則適合采用無損壓縮,壓縮后的圖片具有較高的保真度和較高的壓縮率,但是如果采用有損壓縮對其進行處理,則會造成嚴重失真。在現(xiàn)有技術中,終端軟件產品在圖片進行壓縮的時候,往往只是根據(jù)經驗或者系統(tǒng)中某種類型圖片出現(xiàn)的頻率,采用一種特定壓縮算法,即,無論待壓縮的圖片是何種內容,都采用同一種壓縮算法對其進行壓縮。很明顯,這種方式無法使終端軟件產品所采用的壓縮算法適用于所有待壓縮的圖片,會造成部分圖片壓縮后可以獲得良好的保真度以及壓縮率,而對于其他圖片壓縮后或者壓縮效率太低、或者產生失真,獲得不佳的壓縮效果,進而影響到用戶的使用體驗?;谏鲜鰡栴},希望可以提供一種根據(jù)圖片內容智能選擇壓縮算法的方法和設備。
發(fā)明內容
本發(fā)明的目的是提供了一種基于圖片內容選擇壓縮算法的方法和設備,可以根據(jù)圖片的內容,智能地選擇合適的壓縮算法,在保持較高保真度的同時還可以有效地提高壓縮效率。根據(jù)本發(fā)明的一個方面,提供了一種基于圖片內容選擇壓縮算法的方法,該方法包括以下步驟a)對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù);b)對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷如果其小于第一閾值,則對所述原始圖片進行無損壓縮;
如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,則對所述原始圖片進行有損壓縮;如果所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值, 則計算所述原始圖片像素值的均方差,然后對所述原始圖片像素值的均方差進行判斷,如果其大于第三閾值,則對所述原始圖片進行無損壓縮;否則,對所述原始圖片進行有損壓縮。根據(jù)本發(fā)明的另一個方面,還提供了一種基于圖片內容選擇壓縮算法的設備,該設備包括圖片分析裝置,用于對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù)、以及計算所述原始圖片像素值的均方差;算法選擇裝置,用于將所述原始圖片單位面積內不同像素值與預定閾值進行比較,并根據(jù)所述比較結果選擇適當?shù)膲嚎s算法;圖片壓縮裝置,包括用于對所述原始圖片進行無損壓縮的無損壓縮單元、以及用于對所述原始圖片進行有損壓縮的有損壓縮單元,其中如果所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值,或者所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值、且所述原始圖片像素值的均方差大于第三閾值,則所述無損壓縮單元對所述原始圖片進行無損壓縮;以及如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,或者所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值且小于第二閾值、且所述原始圖片像素值的均方差小于第三閾值,則所述有損壓縮單元對所述原始圖片進行有損壓縮。與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點可以根據(jù)圖片的內容選擇相應的壓縮算法,從而不但可以使壓縮后的圖片保持較高的保真度,還可以有效地提高壓縮效率;此外, 壓縮算法的選擇是根據(jù)圖片單位面積內不同像素值的個數(shù)以及像素值的方差兩個方面,其中,單位面積內不同像素值的個數(shù)可以反映出圖片色彩的豐富程度,而像素值的方差可以反映出圖片色彩分布的平滑程度,因此,基于這兩個方面在一定程度上可以準確地識別圖片的內容,從而保證了壓縮算法選擇的準確性,進而保證了壓縮后的圖片具有良好的效果。
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯圖I為根據(jù)本發(fā)明一個方面的基于圖片內容選擇壓縮算法的方法流程圖;圖2 (a)、圖2(c)、圖2(e)和圖2(g)為四張不同的原始圖片;圖2 (b)、圖2 (d)、圖2 (f)和圖2 (h)分別為圖2 (a)、圖2 (C)、圖2 (e)和圖2 (g)中原始圖片的直方圖;圖3為根據(jù)本發(fā)明另一個方面的基于圖片內容選擇壓縮算法的設備示意圖;以及圖4為根據(jù)本發(fā)明一個優(yōu)選實施例的基于圖片內容選擇壓縮算法的設備示意圖。
具體實施例方式下面結合附圖對本發(fā)明作進一步詳細描述。
圖I為根據(jù)本發(fā)明一個方面的基于圖片內容選擇壓縮算法的方法流程圖,如圖所示,該方法包括以下步驟步驟S101,對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù)。具體地,首先,獲取整個原始圖片中不同像素值的個數(shù),其中,所述像素值是用來反映像素彩色的數(shù)值,即,具有相同像素值的像素具有相同的色彩,具有不同像素值的像素則色彩不同。整個原始圖片中不同像素值個數(shù)的多少則反映了該原始圖片色彩的豐富程度。可以采用多種方法獲取原始圖片中不同像素值個數(shù)。在本實施例中,基于原始圖片的直方圖統(tǒng)計該原始圖片中不同像素值的個數(shù)。在其他實施例中,也可以通過其他方法獲取原始圖片單位面積內不同像素值的個數(shù)。由于不同原始圖片的尺寸不一樣,所以需要對原始圖片中不同像素值的個數(shù)進行單位化,即,計算該原始圖片單位面積內不同像素值的個數(shù), 也就是,使用整個原始圖片中不同像素值的個數(shù)除以該原始圖片面積所得到的比值。由于原始圖片的面積和該原始圖片像素的總個數(shù)成正比,所以,在其他實施例中,對原始圖片中不同像素值的個數(shù)進行單位化的方法還可以是使用整個原始圖片中不同像素值的個數(shù)除以該原始圖片像素的總個數(shù)。接著,執(zhí)行步驟S102,對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷,如果所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值,則執(zhí)行步驟S107,對所述原始圖片進行無損壓縮,否則執(zhí)行步驟S103,判斷所述原始圖片單位面積內不同像素值的個數(shù)是否介于第一閾值和第二閾值之間。具體地,將所述原始圖片單位面積內不同像素值的個數(shù)與第一閾值進行比較,其中,所述第一閾值為預先設定的數(shù)值,是基于不同壓縮算法對大量圖片進行壓縮后,通過對壓縮效果(壓縮率和保真度)進行分析和比較后制定的。如果所述原始圖片單位面積內不同像素值的個數(shù)小于所述第一閾值,則說明該原始圖片的色彩比較簡單,在這種情況下,適合選擇無損壓縮對該原始圖片進行處理,如果使用有損壓縮的話,容易導致圖片失真。以圖 2(a)所示的圖片為例進行說明,該圖片為對文字網(wǎng)頁的截圖,其色彩單一(參考圖2(b), 圖2(b)為圖2(a)的直方圖),如果采用有損壓縮,圖片中文字(特別是文字的邊緣)將會變得模糊,影響用戶查看的效果,而無損壓縮則不會出現(xiàn)上述問題。在本實施例中,所述無損壓縮的算法包括行程長度編碼(run-lengthencoding RLE)、LZW(Lempel-Ziv-Welch)編碼、信息熵編碼中的一種或其任意組合,在其他實施例中,還可以包括其他任何可以實現(xiàn)無損壓縮的算法,在此不再一一列舉。每種壓縮算法都具有其自身的特點,適用于形成不同格式的圖片。以本實施例中所采用的壓縮算法為例,行程長度編碼適用于形成PCX、TGA以及 TIFF格式的圖片,LZff適編碼用于形成GIF和TIFF格式的圖片,而信息熵編碼適用于形成 PNG、MNG以及TIFF格式的圖片。如果所述原始圖片單位面積內不同像素值的個數(shù)大于所述第一閾值,則說明所述原始圖片的色彩較為豐富,在這種情況下,需要將所述原始圖片單位面積內不同像素值的個數(shù)進一步與第二閾值進行比較,其中,與第一閾值相似,所述第二閾值也是預先設定的數(shù)值,是通過利用不同壓縮方法對大量圖片進行壓縮后,分析不同壓縮方法的效果后得到的。執(zhí)行了步驟S103后,如果所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值,則執(zhí)行步驟S104,計算所述原始圖片像素值的均方差,否則,執(zhí)行步驟S106,對所述原始圖片進行有損壓縮。
具體地,如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,則說明該原始圖片的色彩非常豐富,如圖2(g)所示的圖片(其直方圖請參考圖2(h))。對于色彩非常豐富的圖片,適合使用有損壓縮進行處理。經過有損壓縮后的圖片雖然會損失一些信息,但是由于圖片的色彩非常豐富,所以即使是損失了一定的信息后,仍然不影響用戶視覺上的觀看效果,且壓縮率相應也會比較低。在本實施例中,所述有損壓縮的算法為基于離散余弦變換(Discrete Cosine Transform,DCT)或者小波變換的變換編碼,其中,所述變換編碼適用于形成JPEG格式的圖片。在其他實施例中,還可以是其他任何可以實現(xiàn)有損壓縮的算法,在此不再一一列舉。如果所述原始圖片單位面積內不同像素值的個數(shù)小于第二閾值,即,介于所述第一閾值和第二閾值之間,說明該原始圖片的色彩比較豐富,如圖2(c)和圖2(e)中的圖片所示(圖2(d)和圖2(f)分別為圖2(c)和圖2(e)的直方圖)。在這種情況下,除了色彩的豐富程度之外,色彩分布的平滑與否也會影響到壓縮算法的選擇。為了更準確的選擇壓縮算法,使得壓縮效果達到最佳,還要進一步對該原始圖片色彩的分布進行分析。需要說明的是,在對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷的時候,如果所述原始圖片單位面積內不同像素值的個數(shù)恰好等于第一閾值、或者恰好等于第二閾值,在這樣的情況下,本發(fā)明所提供的方法優(yōu)選地對所述原始圖片像素值的均方差進行計算,而不是直接判定是采用無損壓縮還是有損壓縮,如此一來,在后續(xù)的步驟中,將基于像素值的均方差對所述原始圖片的壓縮方法進行選擇,從而可以進一步保證壓縮算法選擇的準確性。當然,也可以設定當所述原始圖片單位面積內不同像素值的個數(shù)等于第一閾值時選擇無損壓縮,而當所述原始圖片單位面積內不同像素值的個數(shù)等于第二閾值時選擇有損壓縮,對此本發(fā)明不做任何限定。執(zhí)行了步驟S104后,將所述原始圖片像素值的均方差與第三閾值相比較,如果大于第三閾值,則執(zhí)行步驟S107,對所述原始圖片進行無損壓縮,否則執(zhí)行步驟S106,對所述原始圖片進行有損壓縮。具體地,在所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值的前提下,將所述原始圖片像素值的均方差與第三閾值相比較。如果所述均方差大于第三閾值,則說明所述原始圖片色彩比較豐富但色彩分布不均,如圖2(e)中的圖片所示, 在這種情況下,適合采用無損壓縮算法對該原始圖片進行處理;如果所述均方差小于第三閾值,則說明所述原始圖片色彩比較豐富且色彩分布較為平滑,如圖2(c)中的圖片所示, 在這種情況下,適合采用有損壓縮對該原始圖片進行處理。其中,與第一閾值和第二閾值相似,所述第三閾值也是預先設定的數(shù)值,是通過利用不同壓縮方法對大量彩色較為豐富圖片進行壓縮后,分析不同壓縮方法的效果后得到的。需要說明的是,如果所述原始圖片像素值的均方差等于第三閾值,則可以采用無損壓縮,也可以采用有損壓縮。優(yōu)選地,在確定了對待壓縮圖片使用的壓縮算法后,還可以對采用該壓縮算法所形成圖片的格式和/或圖片的大小(即壓縮后圖片存儲所占用的空間大小)進行預測,并將該預測結果提供給用戶進行參考,如此一來,便于用戶據(jù)此做出相應的選擇。例如,當確定了原始圖片將采用LZW編碼進行無損壓縮處理、并且預測壓縮后所形成的GIF圖片的大小為720Kb (或者預測結果為一個范圍)后,可以將圖片的格式和/或圖片的大小提供給用戶,該用戶可以據(jù)此來判斷是否進行壓縮操作。
進一步地,對于具有相關技術知識的較高級別用戶,可以提供關于閾值設定的選項。用戶根據(jù)經驗或者使用場景的需要,可以調整本發(fā)明方法中所涉及到的閾值,從而獲得關于無損壓縮和有損壓縮算法選擇的不同標準,在保真度與壓縮率之間取得適合自身需求的折中。與現(xiàn)有技術相比,本發(fā)明所提供的方法可以根據(jù)圖片的內容選擇相應的壓縮算法,從而不但可以使壓縮后的圖片保持較高的保真度,還可以有效地提高壓縮效率;此外, 壓縮算法的選擇是根據(jù)圖片單位面積內不同像素值的個數(shù)以及像素值的方差兩個方面,其中,單位面積內不同像素值的個數(shù)可以反映出圖片色彩的豐富程度,而像素值的方差可以反映出圖片色彩分布的平滑程度,因此,基于這兩個方面在一定程度上可以準確地識別圖片的內容,從而保證了壓縮算法選擇的準確性,進而保證了壓縮后的圖片具有良好的效果。相應地,本發(fā)明還提供了一種基于圖片內容選擇壓縮算法的設備,請參考圖3。如圖所示,該設備包括圖片分析裝置301、算法選擇裝置302以及圖片壓縮裝置303,其中所述圖片分析裝置301,用于對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù)、以及計算所述原始圖片像素值的均方差;所述算法選擇裝置302,用于將所述原始圖片單位面積內不同像素值與預定閾值進行比較,并根據(jù)所述比較結果選擇適當?shù)膲嚎s算法;所述圖片壓縮裝置303,用于對所述原始圖片進行壓縮,其中,所述圖片壓縮裝置 303包括無損壓縮單元3031和有損壓縮單元3032,所述無損壓縮單元3031用于對原始圖片進行無損壓縮,所述有損壓縮單元3032用于對原始圖片進行有損壓縮。下面,對上述裝置的具體工作過程進行說明。首先,所述圖片分析裝置301獲取原始圖片的直方圖,并基于該直方圖統(tǒng)計該原始圖片中不同像素值的個數(shù),其中,所述像素值是用來反映像素彩色的數(shù)值,即,具有相同像素值的像素具有相同的色彩,具有不同像素值的像素則色彩不同。整個原始圖片中不同像素值個數(shù)的多少則反映了該原始圖片色彩的豐富程度。在其他實施例中,所述圖片分析裝置301也可以通過其他方式獲取原始圖片中不同像素值的個數(shù)。由于不同原始圖片的尺寸不一樣,所以接下來,所述圖片分析裝置301需要對原始圖片中不同像素值的個數(shù)進行單位化,即,計算該原始圖片單位面積內不同像素值的個數(shù),也就是,使用整個原始圖片中不同像素值的個數(shù)除以該原始圖片面積所得到的比值。由于原始圖片的面積和該原始圖片像素的總個數(shù)成正比,所以,在其他實施例中,所述圖片分析裝置301對原始圖片中不同像素值的個數(shù)進行單位化的方法還可以是使用整個原始圖片中不同像素值的個數(shù)除以該原始圖片像素的總個數(shù)。接著,所述算法選擇裝置302對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷,其中如果所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值,則說明該原始圖片的色彩比較簡單,適合選擇無損壓縮對該原始圖片進行處理,在這種情況下,所述算法選擇裝置302選擇對所述原始圖片使用無損壓縮。在本實施例中,所述無損壓縮的算法包括行程長度編碼(run-length encoding RLE) > LZff (Lempel-Ziv-ffelch)編碼、信息熵編碼中的一種或其任意組合。在其他實施例中,還可以包括其他任何可以實現(xiàn)無損壓縮的算法,在此不再一一列舉。每種壓縮算法都具有其自身的特點,適用于形成不同格式的圖片。以本實施例中所采用的壓縮算法為例,行程長度編碼適用于形成PCX、TGA以及TIFF格式的圖片,LZW適編碼用于形成GIF和TIFF格式的圖片,而信息熵編碼適用于形成PNG、MNG以及 TIFF格式的圖片。如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,則說明該原始圖片的色彩非常豐富。對于色彩非常豐富的圖片,適合使用有損壓縮進行處理,這是因為,經過有損壓縮后的圖片雖然會損失一些信息,但是由于圖片的色彩非常豐富,所以即使是損失了一定的信息后,仍然不影響用戶視覺上的觀看效果,且壓縮率相應也會比較低。所以, 所述算法選擇裝置302選擇對所述原始圖片使用有損壓縮。在本實施例中,所述有損壓縮的算法為基于離散余弦變換(DiscreteCosine Transform,DCT)或者小波變換的變換編碼, 其中,所述變換編碼適用于形成JPEG格式的圖片。在其他實施例中,還可以是其他任何可以實現(xiàn)有損壓縮的算法,在此不再一一列舉。如果所述原始圖片單位面積內不同像素值的個數(shù)介于第一閾值和第二閾值之間, 則說明該原始圖片的色彩比較豐富,在這種情況下,除了色彩的豐富程度之外,色彩分布的平滑與否也會影響到所述算法選擇裝置302對壓縮算法的選擇。為了使所述算法選擇裝置 302可以更準確地選擇壓縮算法,使壓縮效果達到最佳,還需要所述圖片分析裝置301需要進一步通過直方圖計算所述原始圖片像素值的均方差,然后,所述算法選擇裝置302將所述原始圖片像素值的均方差與第三閾值相比較,如果所述均方差大于第三閾值,則說明所述原始圖片色彩比較豐富但色彩分布不均,在這種情況下,所述算法選擇裝置302選擇對所述原始圖片使用無損壓縮;如果所述均方差小于第三閾值,則說明所述原始圖片色彩比較豐富且色彩分布較為平滑,在這種情況下,所述算法選擇裝置302選擇對所述原始圖片使用有損壓縮。如果所述原始圖片像素值的均方差等于第三閾值,則可以采用無損壓縮,也可以采用有損壓縮。其中,所述第一閾值、第二閾值以及第三閾值均為預先設定的數(shù)值,是基于不同壓縮算法對大量圖片進行壓縮后,通過對壓縮效果(壓縮率和保真度)進行分析和比較后制定的。優(yōu)選地,還可以包括閾值設定裝置(未示出),用于提供第一閾值、第二閾值和/或第三閾值的設定選項,用戶可以根據(jù)使用場景的需要,通過該設定選項調整相應閾值的大小。 用戶對第一閾值、第二閾值和/或第三閾值進行設定后,所述閾值設定裝置將設定結果提供給算法選擇裝置302?;诟鞣N不同閾值設定的組合,所述算法選擇裝置302可獲得關于無損壓縮和有損壓縮算法選擇的不同標準,從而在保真度與壓縮率之間取得適合不同需求的折中。優(yōu)選地,在所述算法選擇裝置302對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷的時候,如果所述原始圖片單位面積內不同像素值的個數(shù)恰好等于第一閾值、 或者恰好等于第二閾值,所述圖片分析裝置301將對所述原始圖片像素值的均方差進行計算,而不是所述算法選擇裝置302直接判定是采用無損壓縮還是有損壓縮,如此一來,所述算法選擇裝置302將基于像素值的均方差對所述原始圖片的壓縮方法進行選擇,從而可以進一步保證壓縮算法選擇的準確性。當然,也可以設定當所述原始圖片單位面積內不同像素值的個數(shù)等于第一閾值時,所述算法選擇裝置302選擇無損壓縮,而當所述原始圖片單位面積內不同像素值的個數(shù)等于第二閾值時,所述算法選擇裝置302選擇有損壓縮,對此本發(fā)明不做任何限定。
優(yōu)選地,如圖4所示,本發(fā)明所提供的設備進一步還包括結果預測裝置304,用于預測壓縮后所形成圖片的格式、和/或圖片的大小,并將該預測結果提供給用戶,便于用戶據(jù)此做出相應的選擇。具體地,所述算法選擇裝置302在確定了對待壓縮圖片使用的壓縮算法后,所述結果預測裝置304對采用該壓縮算法所形成圖片的格式和/或圖片的大小進行預測,并將該預測結果提供給用戶進行參考,如此一來,便于用戶據(jù)此做出相應的選擇。 例如,當所述算法選擇裝置302確定了原始圖片將采用LZW編碼進行無損壓縮處理后,所述結果預測裝置304預測采用該LZW編碼進行壓縮后所形成的GIF圖片的大小為720Kb (或者預測結果為一個范圍)后,將圖片的格式和/或圖片的大小提供給用戶,該用戶可以據(jù)此來判斷是否進行壓縮操作。實施上述具體實施方式
,有效地解決了現(xiàn)有技術中出現(xiàn)的問題,本發(fā)明所提供的設備可以根據(jù)圖片的內容選擇相應的壓縮算法,從而不但可以使壓縮后的圖片保持較高的保真度,還可以有效地提高壓縮效率;此外,壓縮算法的選擇是根據(jù)圖片單位面積內不同像素值的個數(shù)以及像素值的方差兩個方面,其中,單位面積內不同像素值的個數(shù)可以反映出圖片色彩的豐富程度,而像素值的方差可以反映出圖片色彩分布的平滑程度,因此,基于這兩個方面在一定程度上可以準確地識別圖片的內容,從而保證了壓縮算法選擇的準確性, 進而保證了壓縮后的圖片具有良好的效果。本發(fā)明提供的基于圖片內容選擇壓縮算法的方法可以使用可編程邏輯器件結合來實現(xiàn),也可以實施為計算機程序軟件,例如根據(jù)本發(fā)明的實施例可以是一種計算機程序產品,運行該程序產品使計算機執(zhí)行用于所示范的方法。所述計算機程序產品包括計算機可讀存儲介質,該介質上包含計算機程序邏輯或代碼部分,用于實現(xiàn)所述基于圖片內容選擇壓縮算法的方法。所述計算機可讀存儲介質可以是被安裝在計算機中的內置介質或者可從計算機主體拆卸的可移動介質(例如熱拔插技術存儲設)。所述內置介質包括但不限于可重寫的非易失性存儲器,例如RAM、R0M、快閃存儲器和硬盤。所述可移動介質包括但不限于光存儲媒體(例如CD-ROM和DVD)、磁光存儲媒體(例如MO)、磁存儲媒體(例如盒帶或移動硬盤)、具有內置的可重寫的非易失性存儲器的媒體(例如存儲卡)和具有內置ROM的媒體(例如ROM盒)。以上所揭露的僅為本發(fā)明的一種較佳實施例而已,當然不能以此來限定本發(fā)明之權利范圍,因此依本發(fā)明權利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權利要求
1.一種基于圖片內容選擇壓縮算法的方法,該方法包括以下步驟a)對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù);b)對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷如果其小于第一閾值,則對所述原始圖片進行無損壓縮;如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,則對所述原始圖片進行有損壓縮;如果所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值,則計算所述原始圖片像素值的均方差,然后對所述原始圖片像素值的均方差進行判斷,如果其大于第三閾值,則對所述原始圖片進行無損壓縮;否則,對所述原始圖片進行有損壓縮。
2.根據(jù)權利要求I所述的方法,還包括獲取所述原始圖片的直方圖,并基于所述原始圖片的直方圖,計算該原始圖片單位面積內不同像素值的個數(shù)、或者所述原始圖片像素值的均方差。
3.根據(jù)權利要求I或2所述的方法,其中,所述無損壓縮的算法包括行程長度編碼、LZW 編碼、信息熵編碼中的一種或其任意組合。
4.根據(jù)權利要求I或2所述的方法,其中,所述有損壓縮的算法包括變化編碼。
5.根據(jù)權利要求1-4中任一項所述的方法,還包括c)提供第一閾值、第二閾值和/或第三閾值的設定選項,用戶基于該設定選項調整相應閾值的大小。
6.根據(jù)權利要求1-5中任一項所述的方法,其中,在對所述原始圖片進行無損壓縮或有損壓縮之前還包括d)預測壓縮后所形成圖片的格式、和/或圖片的大小,并將該預測結果提供給用戶。
7.一種基于圖片內容選擇壓縮算法的設備,包括圖片分析裝置,用于對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù)、以及計算所述原始圖片像素值的均方差;算法選擇裝置,用于將所述原始圖片單位面積內不同像素值與預定閾值進行比較,并根據(jù)所述比較結果選擇適當?shù)膲嚎s算法;圖片壓縮裝置,包括用于對所述原始圖片進行無損壓縮的無損壓縮單元、以及用于對所述原始圖片進行有損壓縮的有損壓縮單元,其中如果所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值,或者所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值、且所述原始圖片像素值的均方差大于第三閾值,則所述無損壓縮單元對所述原始圖片進行無損壓縮;以及如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,或者所述原始圖片單位面積內不同像素值的個數(shù)小于第一閾值且小于第二閾值、且所述原始圖片像素值的均方差小于第三閾值,則所述有損壓縮單元對所述原始圖片進行有損壓縮。
8.根據(jù)權利要求7所述的設備,其中所述圖片分析裝置,用于獲取所述原始圖片的直方圖,并基于所述原始圖片的直方圖, 計算該原始圖片單位面積內不同像素值的個數(shù)、或者所述原始圖片像素值的均方差。
9.根據(jù)權利要求7或8所述的設備,其中所述無損壓縮單元采用的算法包括行程長度編碼、LZW編碼、信息熵編碼中的一種或其任意組合。
10.根據(jù)權利要求7或8所述的設備,其中所述有損壓縮單元采用的算法包括所述有損壓縮的算法包括變化編碼。
11.根據(jù)權利要求7-10所述的設備,還包括閾值設定裝置,用于提供第一閾值、第二閾值和/或第三閾值的設定選項,供用戶對相應閾值的大小進行調整。
12.根據(jù)權利要求7-11中任一項所述的設備,還包括結果預測裝置,用于預測壓縮后所形成圖片的格式、和/或圖片的大小,并將該預測結果提供給用戶。
全文摘要
本發(fā)明提供了一種基于圖片內容選擇壓縮算法的方法,該方法包括a)對原始圖片進行分析,計算該原始圖片單位面積內不同像素值的個數(shù);b)對所述原始圖片單位面積內不同像素值的個數(shù)進行判斷如果其小于第一閾值,則對所述原始圖片進行無損壓縮;如果所述原始圖片單位面積內不同像素值的個數(shù)大于第二閾值,則對所述原始圖片進行有損壓縮;如果所述原始圖片單位面積內不同像素值的個數(shù)大于第一閾值且小于第二閾值,則計算所述原始圖片像素值的均方差,然后對所述原始圖片像素值的均方差進行判斷,如果其大于第三閾值,則對所述原始圖片進行無損壓縮;否則,對所述原始圖片進行有損壓縮。
文檔編號H04N1/64GK102611823SQ201210065660
公開日2012年7月25日 申請日期2012年1月13日 優(yōu)先權日2012年1月13日
發(fā)明者楊木祥 申請人:百度在線網(wǎng)絡技術(北京)有限公司