專(zhuān)利名稱(chēng):一種簡(jiǎn)單色彩圖像的壓縮方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像的壓縮方法,特別涉及一種簡(jiǎn)單色彩圖像的壓縮方法。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的廣泛應(yīng)用,傳統(tǒng)的紙質(zhì)文件已逐漸被電子文檔所取代。這既節(jié) 省了大量的造紙?jiān)牧虾投逊胚@些文檔的空間,也便于實(shí)現(xiàn)快速的查詢(xún)和傳輸。電子文檔 主要有兩類(lèi)文本文件和圖像文件。由于通常圖像文件比文本文件大的多,這不但需要較大 的存儲(chǔ)空間,而且需要較長(zhǎng)的傳輸時(shí)間,因此人們研究采用各種方法壓縮圖像文件。特別是 在網(wǎng)絡(luò)應(yīng)用普及的今天,圖像壓縮率的提高就更具實(shí)用意義。目前最普遍使用的圖像文件格式是bmp和jpg。其中,bmp未經(jīng)壓縮,因此占用儲(chǔ) 存空間較大;而jpg雖說(shuō)是一種較完善的圖像文件壓縮方法,但屬于有損壓縮,而且壓縮比 例還不夠高。在實(shí)際應(yīng)用中,有一類(lèi)圖像文件,例如建筑設(shè)計(jì)圖紙、機(jī)械設(shè)計(jì)圖紙、會(huì)計(jì)原始 憑據(jù)、銀行原始憑據(jù)包括發(fā)票、收據(jù)、印章和簽名文件等,它們通常具有圖像比較簡(jiǎn)單、色彩 比較單調(diào)的特點(diǎn),此時(shí)用jpg格式會(huì)顯得效率很低。
發(fā)明內(nèi)容
本發(fā)明就是針對(duì)上述問(wèn)題提出的一種比jpg更有效的壓縮方法,可廣泛應(yīng)用于銀 行、會(huì)計(jì)事務(wù)所、建筑設(shè)計(jì)圖紙存檔、機(jī)械設(shè)計(jì)圖紙存檔等場(chǎng)合。本發(fā)明的內(nèi)容是,它定義了一種新的圖像文檔格式1即,以實(shí)現(xiàn)圖像從bmp到Inp 間的轉(zhuǎn)換。格式bmp是對(duì)圖像的每個(gè)像素的RGB值記錄保存,因而是完全無(wú)損的。格式j(luò)pg 是對(duì)圖像的相鄰像素(2x2)進(jìn)行比較,實(shí)現(xiàn)從RGB到Y(jié)UV的轉(zhuǎn)換,屬于有損壓縮。本發(fā)明定 義的格式Inp的基本模式還是記錄RGB,因而是無(wú)損的。只在某些需要簡(jiǎn)化的場(chǎng)合才是準(zhǔn)無(wú) 損(或稱(chēng)微損)的。由于簡(jiǎn)單圖像的大片面積都是同一種色彩的像素,所以我們將這一大片面積的所 有像素都用一個(gè)像素值和這個(gè)面積中的像素個(gè)數(shù)來(lái)表示。這就實(shí)現(xiàn)了圖像的壓縮,而且是 無(wú)損的。圖像格式Inp保留了標(biāo)準(zhǔn)圖像格式bmp的頭信息,另增加了 Inp特有的頭信息,并 將bmp中以像素為單位的RGB數(shù)據(jù)變?yōu)橐跃匦胃袷綖閱挝坏腎np特有格式。Inp頭信息包 括整個(gè)圖像的色彩種數(shù)及各色彩的RGB值(圖2)。為節(jié)省空間,我們?cè)谲浖腥?種顏色 為限。對(duì)于超過(guò)8種顏色但實(shí)際很多顏色非常相近的情況,采用近似方法壓縮色彩的數(shù)量。 這樣得到的圖像也可以達(dá)到準(zhǔn)無(wú)損的效果。憑肉眼分辨不出來(lái)的。矩形格式單元又分為矩 形頭(由它定義該矩形在整個(gè)圖像中的位置和大小)和像素單元。每個(gè)像素單元有兩個(gè)數(shù) 據(jù)色彩的序號(hào)和連續(xù)同色彩的像素個(gè)數(shù)。獲取圖像色彩的方法如下設(shè)置一個(gè)3維空間(即3維數(shù)組),每維分別代表RGB 一種基本顏色,范圍0-256。遍歷圖像所有像索,以每個(gè)像素的RGB值作為坐標(biāo),在3維數(shù)組 中相應(yīng)的位置累加1。這樣,圖像所有的點(diǎn)的顏色都能在此3維空間中確定。如果圖像有N 種顏色,該空間中就有N個(gè)位置有值。如果只有8種顏色,就只有8個(gè)位置(對(duì)應(yīng)于8個(gè)不同的RGB值)有值。這就是我們要確定的8種顏色。事實(shí)上,有些相鄰像素的RGB值非常 接近,成為此3維空間中的“云朵”。我們?cè)诖恕霸贫洹敝胁捎眉訖?quán)(以落入每個(gè)RGB小空間 的個(gè)數(shù)為權(quán))平均的方法,求得這一“云朵”的重心,并以此重心點(diǎn)的RGB代表該“云朵”朵 中所有像素的顏色。X=E NiXi/ Σ Ni其中-X= R, G, BNi為此云朵中像素落入RGB空間i個(gè)小隔間內(nèi)的個(gè)數(shù)。本發(fā)明的優(yōu)點(diǎn)是在建筑設(shè)計(jì)圖紙、機(jī)械設(shè)計(jì)圖紙、會(huì)計(jì)憑據(jù)和銀行憑據(jù)領(lǐng)域采用 后,相對(duì)于jpg格式壓縮率較大,約為15-30,且為無(wú)損壓縮、不失真。
圖1為本發(fā)明圖像格式Inp和標(biāo)準(zhǔn)圖像格式bmp的比較。圖2為本發(fā)明圖像格式Inp中的Inp文件頭示意圖。圖3為本發(fā)明中以矩形為單位的Inp數(shù)據(jù)。實(shí)施方式實(shí)現(xiàn)本發(fā)明的圖像壓縮方法的步驟如下一,將要壓縮的bmp圖像文件頭讀入并寫(xiě)到Inp文件作為Inp的文件頭,如圖1所
7J\ ο二,將要壓縮的bmp圖像讀入,按每個(gè)像素的RGB值記錄到RGB三維空間。三,從步驟二的RGB空間內(nèi),計(jì)算其中的色彩點(diǎn),如果點(diǎn)數(shù)不大于8,就以這些點(diǎn)為 基準(zhǔn)存入Inp文件的Inp文件頭(無(wú)損壓縮),Inp文件頭示意圖如圖2所示。如果色彩點(diǎn)數(shù)大于8,則看是否可以歸結(jié)為RGB空間的色彩“云朵”,并將每片“云 朵”計(jì)算其重心,并以此重心的RGB值作為該“云朵”內(nèi)所有像素的RGB值。如果“云朵”數(shù) 不大于8,就以這些點(diǎn)為基準(zhǔn)存入Inp文件的Inp文件頭(微損壓縮)。如果“云朵”數(shù)大于8,則此問(wèn)題不屬于本發(fā)明討論范圍。四,根據(jù)圖像畫(huà)面的復(fù)雜性,決定分割矩形的大小。圖像越復(fù)雜,矩形越小,圖像越 簡(jiǎn)單,矩形越大??梢圆捎孟嗤匦畏指钤紙D像(其邊緣矩形將是不同的矩形)或不同 矩形分割方法兩種。采用相同矩形方法簡(jiǎn)單,但壓縮率不是最優(yōu)。我們目前采用的是矩形 長(zhǎng)寬分別為原始圖像的八分之一。如果采用不同矩形分割可以設(shè)計(jì)智能化的分割方法,使 壓縮率達(dá)到更高。但這不是本發(fā)明的內(nèi)容。五,將每個(gè)矩形的位置(X,y)和它的長(zhǎng)寬存入以矩形為單位的Inp矩形頭。六,對(duì)矩形內(nèi)的像素進(jìn)行掃描,由每個(gè)像素的RGB值,找到對(duì)應(yīng)的色彩序號(hào),例如 m,即步驟三所得到的色彩號(hào)。七,如果有N個(gè)像素的色彩序號(hào)相同,則在矩形數(shù)據(jù)內(nèi)記錄(m,N)。其中m是色彩 序號(hào),N是相同色彩像素的個(gè)數(shù)。依次類(lèi)推。八,把原始圖像所有的像素記錄進(jìn)新的Inp格式文件后,格式如圖3所示,這就完 成了圖像文件由bmp到Inp格式的轉(zhuǎn)換。作為本發(fā)明的一種優(yōu)選實(shí)施方式,即步驟四中決定分割矩形的大小時(shí),矩形長(zhǎng)寬 分別為原始圖像的八分之一。
權(quán)利要求
一種簡(jiǎn)單色彩圖像的壓縮方法,包括如下步驟步驟1、將要壓縮的bmp圖像文件頭讀入并寫(xiě)到lnp文件作為lnp的文件頭;步驟2、將要壓縮的bmp圖像讀入,按每個(gè)像素的RGB值記錄到RGB三維空間;步驟3、從步驟2的RGB三維空間內(nèi),計(jì)算其中的色彩點(diǎn),如果點(diǎn)數(shù)不大于8,就以這些點(diǎn)為基準(zhǔn)存入lnp文件的lnp文件頭,如果色彩點(diǎn)數(shù)大于8,則看是否可以歸結(jié)為RGB空間的色彩中相近色彩的集合,并對(duì)每片相近色彩的集合計(jì)算其重心,并以此重心的RGB值作為該相近色彩的集合內(nèi)所有像素的RGB值,如果相近色彩的集合數(shù)不大于8,就以這些點(diǎn)為基準(zhǔn)存入lnp文件的lnp文件頭;步驟4、根據(jù)圖像畫(huà)而的復(fù)雜性,決定分割矩形的大小,圖像越復(fù)雜,矩形越小,圖像越簡(jiǎn)單,矩形越大;步驟5、將每個(gè)矩形的位置數(shù)據(jù)x與y以及它的長(zhǎng)寬存入以矩形為單位的lnp矩形頭;步驟6、對(duì)矩形內(nèi)的像素進(jìn)行掃描,由每個(gè)像素的RGB值,找到對(duì)應(yīng)的色彩序號(hào);步驟7、如果有N個(gè)像素的色彩序號(hào)相同,則在矩形數(shù)據(jù)內(nèi)記錄(m,N),其中,m是色彩序號(hào),N是相同色彩像素的個(gè)數(shù);步驟8、把原始圖像所有的像素記錄進(jìn)新的lnp格式文件;步驟9、結(jié)束。
2.根據(jù)權(quán)利要求1所述的圖像的壓縮方法,其特征是步驟4中的矩形長(zhǎng)寬分別為原始 圖像的八分之一。
全文摘要
本發(fā)明涉及一種圖像的壓縮方法,特別涉及一種簡(jiǎn)單色彩圖像的壓縮方法。目前最普遍使用的圖像文件格式是bmp和jpg。其中,bmp未經(jīng)壓縮,因此占用儲(chǔ)存空間較大;而jpg雖說(shuō)是一種較完善的圖像文件壓縮方法,但屬于有損壓縮,而且壓縮比例還不夠高。在實(shí)際應(yīng)用中,有一類(lèi)圖像文件,例如建筑設(shè)計(jì)圖紙、機(jī)械設(shè)計(jì)圖紙、會(huì)計(jì)原始憑據(jù)、銀行原始憑據(jù)包括發(fā)票、收據(jù)、印章和簽名文件等,它們通常具有圖像比較簡(jiǎn)單、色彩比較單調(diào)的特點(diǎn),此時(shí)用jpg格式會(huì)顯得效率很低。本發(fā)明就是針對(duì)上述問(wèn)題提出的一種比jpg更有效的壓縮方法,它定義了一種新的圖像文檔格式lnp,比jpg壓縮率高且屬于無(wú)損壓縮。
文檔編號(hào)G06T9/00GK101833774SQ20101015900
公開(kāi)日2010年9月15日 申請(qǐng)日期2010年4月27日 優(yōu)先權(quán)日2010年4月27日
發(fā)明者馮正永 申請(qǐng)人:無(wú)錫朗能科技有限公司