專利名稱:借助將色彩模式轉化的運算方法
技術領域:
本發(fā)明涉及借助將色彩模式轉化的運算方法,尤其是關于應用圖像壓縮/解壓格式中浮點數(shù)據轉換的運算方法。
背景技術:
在彩色化時代,許多多媒體功能也慢慢成為文件或演示文稿制作時的基本配備。 例如在演示文稿中顯示出壓縮圖片或是播放影像文件等,通過影像或是聲音的表現(xiàn),以加深聽眾對于此演示文稿的印象。以圖片文件為例作說明,通常所見的單張彩色白底影像, 它是由很多一個點一個點的順序組成,而每一個像素主要由紅、綠、藍以三原色所構成,每一個原色用一個位表示。但未經壓縮的影像在進行資料儲存時,會占用非常大的儲存空間.且未經壓縮的影像資料通過通訊網路傳話時,所需的傳輸時間也將相對地長,為解決上述問題,使用者如能將影像資料予以壓縮,即可達到減少儲存空間、縮短傳輸時間的雙重效能。因此由國際標準組織與國際電報電話咨詢委員會兩邊人員共同成立聯(lián)合影像專家群,他們共同制定了一個稱為Jpeg的靜態(tài)影像壓縮的同際標準。
然而由于JPEG/MPEG檔案的高壓縮率,使得圖片或是影像文件無論在進行壓縮或解壓縮的過程中.均要較高的計算功率。而且在壓縮或是解壓縮的運算過程中,多為浮點 (具有小數(shù)點的數(shù)字)運算,因此,對于中央處理器而言更是沉重的負擔。
若是中央處理器的運算能力較差時,可能會導致圖片播放的速度變慢、瀏覽時不順暢,而在影像文件播放的方面,則會導致畫面停格,無法連續(xù)及影音無法同步的現(xiàn)象。
在一般嵌入式個人裝置,由于浮點運算器使用的機會不大、費用較為昂貴,因此, 其中處理器幾乎很少有內建浮點運算器。然而,當這些嵌入式個人裝置來要進行一些影像壓縮及解壓縮的過程時,由于沒有浮點運算器的輔助,因此,會降低其運算速度,而產主圖片播放的速度變慢、影像文件播放無法連續(xù)及影音無法同步等現(xiàn)象。發(fā)明內容
本發(fā)明為解決背景技術中存在的上述技術問題,而提出借助將色彩模式轉化的運算方法。
本發(fā)明的技術解決方案是本發(fā)明為借助將色彩模式轉化的運算方法,應用于影像壓縮/解壓縮過程中,將待運算的轉換矩陣中具有浮點數(shù)的部份轉換為整數(shù)后,再進行運算,以提升整體運算效率,其特殊之處在于該方法包含下列步驟
1)放大轉換矩陣的值域范圍;
2)將轉換矩陣整數(shù)化,形成整數(shù)矩陣;
3)利用整數(shù)矩陣進行數(shù)值運算;
4)將色彩模式轉換后的結果還原為初始的值域范圍。
上述步驟1)包含以轉換矩陣乘以二的正整數(shù)次方的次方數(shù)為基準來進行偏移運算,以還原為初始的值域范圍。
上述步驟幻包含通過舍棄轉換矩陣中浮點數(shù)的小數(shù)部份,形成整數(shù)矩陣。
上述步驟幻包含將轉換矩陣乘以二的正整數(shù)次方,放大其值域范圍。
上述步驟4)包含將色彩模式轉換后的結果進行偏移運算,以還原為初始的值域范圍。
圖1為本方法壓縮過程示意圖2為本方法解縮過程示意圖;具體實施方式
參見圖1,本發(fā)明方法包含下列步驟1)放大轉換矩陣的值域范圍;幻將轉換矩陣整數(shù)化,形成整數(shù)矩陣;幻利用整數(shù)矩陣進行數(shù)值運算;4)將色彩模式轉換后的結果還原為初始的值域范圍。
其主要技術內容如下
基于256色和16色的色彩壓縮,包含以轉換矩陣乘以二的正整數(shù)次方的次方數(shù)為基準來進行偏移運算,以還原為初始的值域范圍。
i.基于數(shù)據色彩模型的壓縮以其相對其他算法快速解壓性能成為首選。其中可使用有LZ77,LZSS, LZff, LZA, Lffl等多種。算法上的差異使的對不同類型的數(shù)據敏感程度不一。對不同圖形的壓縮率也有所不同。
ii.上述算法在壓縮圖形數(shù)據時都有一共性,即數(shù)據復雜度和壓縮率的關系很大。 簡單說就是,當圖形中少數(shù)顏色的內容占的面積越大,壓縮率越高。
iii.針對以上特點,選用基于256色及16色存儲格式進行壓縮,其原因如下,4096 色為12bit像素格式,由于交錯存儲,像素被打碎,交錯組合造成數(shù)據復雜度提高,壓縮后壓縮率不高。而使用256色每像素一個字節(jié),當有大色塊時其數(shù)據單一重復,壓縮率高。而 16色則因其16種顏色總共只可能有256種數(shù)據組合,且源數(shù)據量較小,而能獲得較少的數(shù)據復雜度及不錯的壓縮率。
iv.同其它有損壓縮的方法一樣,將圖形轉為256色實際上也會丟棄部分圖像信息。采用常見的球殼選色法或佛絡伊得-斯騰堡抖色皆可取的較理想之效果。
v.本方案并不限使用何種具體壓縮算法,但只要是上述方法之一或其它基于數(shù)據色彩的方法,均可利用本方案取得高度的壓縮效果。
Shadow Mask技術,包含通過舍棄轉換矩陣中浮點數(shù)的小數(shù)部份,形成整數(shù)矩陣。
i.由前述內容可知,采用前述方法壓縮的圖形在數(shù)據內容較為單一時能獲得較高的壓縮率。但如果每一副圖形都以大色塊構成,其表現(xiàn)力不免有所折扣。而且即便以較少顏色繪制簡單圖形,不管壓縮算法如何先進,其壓縮后的SUE也只會趨近一較小的(火商) (即無數(shù)據冗余之理想值),而有一定具體內容要表現(xiàn)的彩色圖形,此值仍有相當尺寸。
ii.由于動畫是上下有一定關聯(lián)的序列畫面,所以,本方案采用Siadow Mask技術來簡化待壓縮圖形。對動畫來說,每一禎畫面都可能和其前面或后面的畫面有所相同。而不同,也就是變化的部分往往只占到全部畫面的20%不到。這樣假定我們已知上一畫面的內容,那么下一畫面只需知道不同的20%就可以繪制出來。
iii.基于上述思想,在壓縮之前先對所有的圖形進行內容比較,將相同的冗余部分變?yōu)镸ask Shadow,這樣就使得Mask Shadow占到待壓圖形的大部分面積,也就是說去除了冗余內容的Siadowed圖形文件中絕大部分面積都是同一種顏色,也就是Mask Shadow的顏色。
iv.上述處理過的圖形壓縮后的size從總體上已遠小于直接壓縮的結果。
關鍵禎,包含將轉換矩陣乘以二的正整數(shù)次方,放大其值域范圍。
i.上述數(shù)據比較的方法涉及如何比較的問題。即每一禎圖形以哪一禎為模板來去除自己的冗余部分。假定有一組動畫共十禎,如后九禎同第一禎比較平均每禎相同的像素為70 %,而同第二禎比較則可能平均每禎相同的像素為80 %。全部都比一遍則需比較幾十次,如禎數(shù)較多則全部比較的次數(shù)以平方關系隨禎數(shù)上升。
ii.本方案提供了兩種靈活的MASK方案
參見圖2,
1.關鍵禎法關鍵禎法的原則如下,先以第一禎為關鍵禎,其后的禎以此禎為模板進行比較生成Mask Shadow,在此過程中設定一個feiin值,當某禎的Mask Siadow的面積小于此fein值,即認為動畫內容同前一禎相比發(fā)生了較大變化,即將此禎也當作關鍵禎, 不進行Mask。在此之后的動畫就以前面的關鍵禎分別進行比較然后取Mask面積大的,并將其所使用關鍵禎ID記入此Mask圖。此方法的好處是各禎內容相對獨立,可單獨解出。
2. Sequenced Mask的方案較簡單,即假定每一禎同上一禎相似度最高(實際往往也如此),每一禎都以上一禎為模板生成Mask。此方法的解壓合成速度快,但每一禎對上一禎有依賴性,適合順序播放。
色盤調整,包含將色彩模式轉換后的結果進行偏移運算,以還原為初始的值域范圍。
由于壓縮所處理的是256/16色圖形,映像在4096色上就會有調色板。在這里加入了 24bit真彩色向4096色調色板調整的過程,并針對16色/256色圖形分別生成16色合成調色板和256色奇偶冗余調色板,將256色奇偶冗余的調色板裁掉以占用最小的空間。
智能裁減
i.當動畫內容被Siadow Mask處理過之后,其壓縮大小相對處理前已經大大縮小,但對于一定尺寸之圖形,既使其中沒有任何內容(例如全白),其壓縮后也還是有一定尺寸。
ii.此處引入智能裁減的方法進一步減小數(shù)據,此方法的思想是如果大塊的連續(xù)區(qū)域都為Mask Shadow所覆蓋,則干脆將此區(qū)域拋棄,而只記下其位置。
iii.經此裁減之后Mask過的圖形面積也大大縮小,其壓縮后尺寸就更小,相似度很高的禎有時甚至會僅剩下幾百,幾十甚至零字節(jié)。
間接合成
i.當圖形被解壓,顯然,一幅Mask圖要依賴關鍵禎或前一禎的內容來還原其本來的內容。
ii.間接合成用于關鍵禎法壓縮的動畫,當一個Mask圖被解壓時,先解出關鍵禎 (此禎也可能在內存中緩沖,以直接使用加快速度),然后解出Mask禎,將Mask禎上的未 Mask像素與關鍵禎合并成生為一禎就已還原出這一禎。
直接合成解壓(Direct Unmask Uncompress)。
直接合成解壓用于kquenced Mask的數(shù)據,此法的思想是解壓即合成。當mask圖數(shù)據在解壓輸出時,如果解出的是Mask像素,則丟棄,否則貼到上一禎圖形的對應位置上。 此法在解壓完成后就得到了當前的圖形。速度相當快。適合于順序播放的動畫。
快速轉色(Fast Map Palette)
i.上面還原出來的圖形數(shù)據都還是16色或256色的圖形數(shù)據,要最終能夠顯示, 還要把它轉成4096色。為了能夠取得快速的轉色過程,在壓縮圖形中攜帶了 16色合成調色板。避免了位運算。所謂合成調色板對12bit色來說,每像素要占1.5字節(jié)空間。那么, 兩像素共有3字節(jié),將來兩像素看成一個顏色操作,則源數(shù)據每次操作1字節(jié),目標數(shù)據每次操作3字節(jié)。完全避免了位運算。
ii. 256色如采用合成調色板轉色則調色板太大,此處使用奇偶冗余調色板技術。 此方法要素為,每種顏色建立4字節(jié)的調色板,兩個字節(jié)為奇像素,兩個字節(jié)為偶像素。交替使用以減少位運算而獲致高速。
iii.為了能讓速度進一步提高,在16色轉色中將上述兩種方法結合起來,構成冗余合成調色板,在CPU上取得了進一步的性能提升。
全域轉色(Global Area Map Palette)和局域轉色(Local Area Map Palette)
i.在圖像解壓縮并合成后,必須經過轉色才能顯示出來。關鍵禎中包含其它禎中沒有的圖像數(shù)據,因此針對關鍵禎使用全域轉色法,將整副圖像配合冗余合成調色板進行轉換。
ii局域轉色的方法利用了裁減后的圖形對前一禎的依賴,由前述技術可知,針對 Sequenced Mask方式的圖形每禎圖形都是前一禎圖形的局部改變。所以,此處只要采用靈巧的方法配合冗余合成調色板對發(fā)生改變的部分像素進行轉色就可以得到正確的結果。由于這一部分的像素僅是全部圖形面積的一小部分。局域轉色使得轉色操作的數(shù)據大大減少。從而使轉色速度明顯提高。
全域貼圖(GlobalArea BitTransfer)和局域貼圖(Local Area BitTransfer)
i.對于關鍵禎,使用全域貼圖法,將整個圖像拋入顯示緩沖。
ii.局域貼圖的方法同局域轉色的方法有點類似,在我們最終顯示時我們也不必把全部的圖形數(shù)據拋到屏幕,只要把發(fā)生改變的部分拋到屏幕就可以得到正確的結果。由于這一部分的像素僅是全部圖形面積的一小部分。局域貼圖使得貼圖操作的數(shù)據大大減少。從而使貼圖速度也明顯提高。
權利要求
1.借助將色彩模式轉化的運算方法,應用于影像壓縮/解壓縮過程中,將待運算的轉換矩陣中具有浮點數(shù)的部份轉換為整數(shù)后,再進行運算,以提升整體運算效率,其特征在于該方法包含下列步驟1)放大轉換矩陣的值域范圍;2)將轉換矩陣整數(shù)化,形成整數(shù)矩陣;3)利用整數(shù)矩陣進行數(shù)值運算;4)將色彩模式轉換后的結果還原為初始的值域范圍。
2.根據權利要求1所述的借助將色彩模式轉化的運算方法,其特征在于所述步驟1) 包含以轉換矩陣乘以二的正整數(shù)次方的次方數(shù)為基準來進行偏移運算,以還原為初始的值域范圍。
3.根據權利要求1所述的借助將色彩模式轉化的運算方法,其特征在于所述步驟2) 包含通過舍棄轉換矩陣中浮點數(shù)的小數(shù)部份,形成整數(shù)矩陣。
4.根據權利要求1所述的借助將色彩模式轉化的運算方法,其特征在于所述步驟3) 包含將轉換矩陣乘以二的正整數(shù)次方,放大其值域范圍。
5.根據權利要求1所述的借助將色彩模式轉化的運算方法,其特征在于所述步驟4) 包含將色彩模式轉換后的結果進行偏移運算,以還原為初始的值域范圍。
全文摘要
本發(fā)明提供借助將色彩模式轉化的運算方法,其通過影像壓縮/解壓縮過程中將色彩模式轉換的轉換矩陣中具有浮點數(shù)的部分整數(shù)化后,以整數(shù)進行累加、累積等運算,最后再還原為值域范圍,提升整體運算效率。
文檔編號H04N7/26GK102523449SQ20111044707
公開日2012年6月27日 申請日期2011年12月17日 優(yōu)先權日2011年12月17日
發(fā)明者陳淮琰 申請人:無敵科技(西安)有限公司