專利名稱:用于增強(qiáng)壓縮的圖像數(shù)據(jù)預(yù)處理的制作方法
用于增強(qiáng)壓縮的圖像數(shù)據(jù)預(yù)處理
相關(guān)申請(qǐng)的交叉引用
本申請(qǐng)要求2006年2月23日提交的名稱與本申請(qǐng)相同的美國(guó)臨時(shí)專利申請(qǐng) No. 60/776,648的優(yōu)先權(quán),該專利申請(qǐng)整體引用在此作為參考。
背景技術(shù):
雖然計(jì)算機(jī)曾經(jīng)是孤立的并且與其它計(jì)算機(jī)有最小限度的或者極少的交 互,但是現(xiàn)在的計(jì)算機(jī)通過局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、撥號(hào)連接等等 與其它各種計(jì)算機(jī)交互。隨著互聯(lián)網(wǎng)的普及發(fā)展,計(jì)算機(jī)間的連接變得更加重 要并且開發(fā)了很多新應(yīng)用和新技術(shù)。大規(guī)模網(wǎng)絡(luò)的發(fā)展和低成本個(gè)人計(jì)算機(jī)的 普及可用性從根本上改變了很多人工作、交互、通信和游戲的方式。
一個(gè)越來越流行的連網(wǎng)形式通常可稱為虛擬計(jì)算系統(tǒng),它可以使用諸如遠(yuǎn) 程桌面協(xié)議(RDP)、獨(dú)立計(jì)算體系結(jié)構(gòu)(ICA)及其它協(xié)議之類的協(xié)議通過 遠(yuǎn)程客戶端共享桌面和其它應(yīng)用程序。這種計(jì)算系統(tǒng)通常將鍵盤按鍵和鼠標(biāo)點(diǎn) 擊或者選擇從客戶端傳輸?shù)椒?wù)器,通過網(wǎng)絡(luò)連接(例如,互聯(lián)網(wǎng))在另一方 向上中繼回屏幕更新。由此,用戶具有這樣的體驗(yàn),即好像他們的機(jī)器作為L(zhǎng)AN 的一部分運(yùn)行,而實(shí)際上當(dāng)應(yīng)用程序出現(xiàn)在服務(wù)器側(cè)時(shí)客戶端設(shè)備僅僅發(fā)送其 屏幕快照。
因?yàn)榘凑諑捪漠?dāng)通過網(wǎng)絡(luò)連接(例如,互聯(lián)網(wǎng))傳輸位圖時(shí)這些位圖 是很昂貴的,所以現(xiàn)今大多數(shù)虛擬系統(tǒng)寧可不發(fā)送整個(gè)位圖而是發(fā)送圖形基元 和告知在客戶端側(cè)的子例程繪制什么以及如何繪制的其它操作。例如,可以告 知客戶端繪制矩形,連同關(guān)于應(yīng)在何處繪制、什么大小、色彩等等信息。例如, 矩形可用于繪制用戶界面按鍵、文檔周圍的邊框或者矩形形狀可以有用處的任 何其它用途。當(dāng)然,有許多其它的可作為基元使用的形狀和操作,它們可能更 為復(fù)雜并且需要更多的處理,這些處理必須完成以在遠(yuǎn)程客戶端傳輸和執(zhí)行操 作。
因?yàn)閼?yīng)用程序不斷獲得更復(fù)雜的圖形用戶界面,所以上述基元的使用變得更為處理密集。例如,位像已被擴(kuò)充為包括OC通道,該通道實(shí)質(zhì)上指示與 每個(gè)像素相關(guān)聯(lián)的所需水平的透明度。這一透明度水平指示客戶端如何將位圖 的每個(gè)像素與已在正顯示位圖的位置呈現(xiàn)的色彩相混合。與處理復(fù)雜基元更新 相關(guān)聯(lián)的開銷的一個(gè)更好的例子可以是動(dòng)畫對(duì)象或元素,其中命令序列必須指 示客戶端如何在動(dòng)畫的每個(gè)步驟繪制動(dòng)畫。當(dāng)基元序列過于復(fù)雜時(shí),發(fā)送可以 更簡(jiǎn)單地被顯示的位圖表示而不是可能長(zhǎng)序列的其它更復(fù)雜的原語操作有時(shí) 可能更有意義。然而,如前所述,因?yàn)榇蠖嗟谋忍亓鲏嚎s程序的限制以及網(wǎng)絡(luò) 帶寬的限制,連續(xù)發(fā)送屏幕的全位圖表示可能過于昂貴。
簡(jiǎn)要概述以上標(biāo)識(shí)的當(dāng)前位圖壓縮機(jī)制的缺陷和不足通過本發(fā)明的示例 性實(shí)施方式得以克服。例如,這里描述的各實(shí)施方式提供圖像數(shù)據(jù)的預(yù)處理機(jī) 制,以便以一般壓縮程序可以更容易地識(shí)別數(shù)據(jù)模式的方式組織通道分量;并 且因此實(shí)現(xiàn)更好的壓縮比。注意,提供本概述以便用簡(jiǎn)化的形式介紹將在以下 詳細(xì)描述中進(jìn)一步描述的一些概念。本概述不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān) 鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
一個(gè)示例性實(shí)施方式通過展示圖像數(shù)據(jù)中的普通模式提供用于增強(qiáng)數(shù)據(jù) 壓縮的圖像數(shù)據(jù)的預(yù)處理,而在圖像數(shù)據(jù)以色彩通道交錯(cuò)的形式顯示時(shí)這些模 式通常并不能被比特流處理程序識(shí)別。在這樣的實(shí)施方式中,表示為多個(gè)像素 的數(shù)字圖像被接收。每個(gè)像素由包括通常被顯示出的色彩通道的色彩空間所定 義,使得多個(gè)像素的布局作為色彩通道的交錯(cuò)序列顯現(xiàn)。接著,確定是否將數(shù) 字圖像分成平面數(shù)據(jù)源,每個(gè)數(shù)據(jù)源包括針對(duì)每個(gè)獨(dú)立色彩通道的數(shù)字圖像數(shù) 據(jù),使得數(shù)字圖像數(shù)據(jù)的冗余或者另一可識(shí)別序列可以由一個(gè)或者多個(gè)基于模 式和/或統(tǒng)計(jì)的數(shù)據(jù)壓縮模塊容易地標(biāo)識(shí)。而且,基于以上確定,將平面數(shù)據(jù)源 發(fā)送到壓縮模塊,以便幫助它們比數(shù)字圖像處于交錯(cuò)形式時(shí)更有效率地壓縮數(shù) 字圖像。
另一實(shí)施方式提供解壓縮數(shù)字圖像數(shù)據(jù)的機(jī)制,這些數(shù)字圖像數(shù)據(jù)被編碼 為色彩空間的分開的色彩通道以便改進(jìn)數(shù)據(jù)壓縮。在這一實(shí)施方式中,第一組 表示平面數(shù)據(jù)源之一的經(jīng)壓縮數(shù)字圖像數(shù)據(jù)被接收,其中每個(gè)平面數(shù)據(jù)源與用 于數(shù)字圖像多個(gè)像素的色彩空間的一個(gè)色彩通道相對(duì)應(yīng)。注意,每個(gè)平面數(shù)據(jù) 源作為分開的數(shù)字圖像數(shù)據(jù)展示,使得數(shù)字圖像數(shù)據(jù)的冗余或者任何其它可識(shí) 別序列可由基于模式和/或統(tǒng)計(jì)的數(shù)據(jù)壓縮模塊容易地標(biāo)識(shí)。其后,第二組表示另一平面數(shù)據(jù)源的經(jīng)壓縮數(shù)字圖像數(shù)據(jù)被接收。因此,第一組和第二組經(jīng)壓縮 數(shù)字圖像數(shù)據(jù)被解壓縮到它們各自的平面數(shù)據(jù)源中。在這一實(shí)例中,數(shù)字圖像 可作為解壓縮的色彩通道的交錯(cuò)序列顯示,使得數(shù)字圖像的每個(gè)像素包括與每 個(gè)平面數(shù)據(jù)源相對(duì)應(yīng)的色彩分量。
本發(fā)明的附加特征和優(yōu)點(diǎn)將在以下描述中敘述,且其部分根據(jù)本描述將是 顯而易見的,或可通過對(duì)本發(fā)明的實(shí)踐領(lǐng)會(huì)。本發(fā)明的特征和優(yōu)點(diǎn)可通過在所 附權(quán)利要求書中特別指出的工具和組合來實(shí)現(xiàn)和獲得。本發(fā)明的這些和其他特 征將通過以下描述和所附權(quán)利要求書變得更加完全明顯,或可通過對(duì)下文中所 述的本發(fā)明的實(shí)踐來領(lǐng)會(huì)。
附圖簡(jiǎn)述
為了描述可獲取本發(fā)明的上述及其他有利特征的方式,將參考附圖中示出 的本發(fā)明的特定實(shí)施方式來呈現(xiàn)以上簡(jiǎn)要描述的本發(fā)明的更具體描述??梢岳?解這些附圖僅描述本發(fā)明的典型實(shí)施方式,從而不被認(rèn)為是對(duì)其范圍的限制, 本發(fā)明將通過使用附圖用附加特征和細(xì)節(jié)來描述和說明,附圖中
圖1示出了根據(jù)示例性實(shí)施方式的用于幫助數(shù)字圖像壓縮的預(yù)處理步驟; 圖2A示出了根據(jù)示例性實(shí)施方式的為增強(qiáng)壓縮比而將數(shù)字圖像分割為平 面數(shù)據(jù)源;
圖2B示出了根據(jù)示例性實(shí)施方式的將平面數(shù)據(jù)源用于增強(qiáng)壓縮的一個(gè)特 定示例;
圖2C示出了根據(jù)示例性實(shí)施方式的將平面數(shù)據(jù)源用于展示色彩通道的模 式和數(shù)學(xué)函數(shù);
圖2D示出了根據(jù)示例性實(shí)施方式的增強(qiáng)模式識(shí)別以便更有效率地壓縮的 其它操縱數(shù)據(jù)用技術(shù);
圖3示出了根據(jù)示例性實(shí)施方式的用于改進(jìn)的數(shù)據(jù)壓縮的對(duì)圖像數(shù)據(jù)進(jìn)行 預(yù)處理的方法的流程圖;以及
圖4示出了根據(jù)示例性實(shí)施方式的解壓縮數(shù)字圖像數(shù)據(jù)的方法,這些數(shù)字 圖像數(shù)據(jù)被編碼為色彩空間的分開的色彩通道以便改進(jìn)數(shù)據(jù)壓縮。
詳細(xì)描述
本發(fā)明涉及用于將色彩空間的色彩通道分離或者分割成各個(gè)平面表示以便展示模式及其他序列以增強(qiáng)壓縮比的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品。本發(fā)明 的實(shí)施方式可以包括含有各種計(jì)算機(jī)硬件或模塊的專用或通用計(jì)算機(jī),這將在 以下做出進(jìn)一步討論。
本文中的實(shí)施方式通過將用于像素的色彩通道分割或者分離成平面數(shù)據(jù) 源而提供一種用于增強(qiáng)圖像數(shù)據(jù)壓縮的預(yù)處理步驟或者機(jī)制。通常,圖像數(shù)據(jù) 被顯示為色彩空間的通道類交錯(cuò)組,使得圖像(例如位圖)內(nèi)的每個(gè)像素具有
針對(duì)每個(gè)色彩通道的一個(gè)分量。例如,具有紅、綠和藍(lán)(RGB)色彩空間的像 素將有一個(gè)紅色色彩通道、 一個(gè)綠色色彩通道和一個(gè)藍(lán)色色彩通道。因此,示 例性實(shí)施方式將每個(gè)通道的分量分成平面數(shù)據(jù)源,使得同樣的分量在同一平面 內(nèi)示出。通過將交錯(cuò)的位圖或者數(shù)字圖像分成平面表示,每個(gè)平面可以被獨(dú)立 壓縮并且通常實(shí)現(xiàn)較高的壓縮比。對(duì)于期望在整個(gè)位圖大部分時(shí)間保持相當(dāng)固 定的通道尤其是這樣(例如,描述位圖內(nèi)元素透明度的a通道)。
換言之,示例性實(shí)施方式利用常常一個(gè)通道可以經(jīng)過轉(zhuǎn)換而其它的保持相 當(dāng)固定的事實(shí)。通過操縱通道數(shù)據(jù)或者通過將色彩空間轉(zhuǎn)換成除僅僅RGB之 外的事物可以進(jìn)一步增強(qiáng)對(duì)以上實(shí)施方式的利用。例如,按照照明度和色度定 義像素的其它色彩空間(例如,YUV、 YCoCg,等等)通常更多地按照人眼如 何感知色彩來描述色彩空間。換言之,這些類型的色彩空間將眼睛更敏感的色 彩分量與那些眼睛較不敏感的通道分開。因此,通過利用人眼的感知差異,有 可能將色彩通道內(nèi)的信息降級(jí)以增強(qiáng)壓縮模型可以更有效處理的模式,但仍使 圖像保持感知上的無損耗。
如本文所述,可以有若干方式允許修正特定色彩空間或者數(shù)字圖像的色彩 信息以便增強(qiáng)壓縮比。例如,通過降低與特定配色方案的色度通道相關(guān)聯(lián)的總 的位計(jì)數(shù)可以量化該特定通道,由此降低調(diào)色板的保真度,但不一定降低配色 方案的范圍。作為替換或者結(jié)合,樣本像素間距或者各種色度子采樣的值可以 修正為全部值的某些平均值,或者進(jìn)行其它使這些值具有共同特點(diǎn)的類似修 正。當(dāng)然,如以下將做出的更詳細(xì)描述,當(dāng)為了壓縮而預(yù)處理圖像數(shù)據(jù)時(shí)可以 有其它機(jī)制用于修正數(shù)據(jù)以增強(qiáng)模式識(shí)別。
一旦數(shù)字圖像或者位圖被分成邏輯上分開的數(shù)字圖像,即一個(gè)分開的數(shù)字 圖像對(duì)應(yīng)于每個(gè)通道信息平面,并且一旦已經(jīng)做出對(duì)數(shù)據(jù)的所有操縱或者修 正,示例性實(shí)施方式可以使用諸如二維游程長(zhǎng)度編碼方案之類的標(biāo)準(zhǔn)或者公知 的編碼模塊對(duì)這些值進(jìn)行編碼。位圖的每個(gè)掃描行可以與在其之前的掃描行區(qū)別對(duì)待,從而可以如以下將更詳細(xì)描述的那樣編碼這些差異。
雖然如下將參考附圖對(duì)有利特征的更特定引用進(jìn)行更為詳盡的描述,但是 本發(fā)明范圍內(nèi)的各實(shí)施方式還包括用于載有或具有計(jì)算機(jī)可執(zhí)行指令或數(shù)據(jù) 結(jié)構(gòu)存儲(chǔ)其上的計(jì)算機(jī)可讀介質(zhì)。這樣的機(jī)器可讀介質(zhì)可以是可由通用或?qū)S?br>
計(jì)算機(jī)訪問的任何可用介質(zhì)。作為示例而非限制,這樣的計(jì)算機(jī)可讀介質(zhì)可包
括RAM、 ROM、 EEPROM、 CD-ROM或其他光盤存儲(chǔ)、磁盤存儲(chǔ)或其他磁存 儲(chǔ)設(shè)備、或可用于承載或存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的所需程序代 碼裝置且可由通用或?qū)S糜?jì)算機(jī)訪問的任何其他介質(zhì)。當(dāng)信息在網(wǎng)絡(luò)或另一通 信連接(硬連線、無線或硬連線或無線的組合)上傳輸或提供給計(jì)算機(jī)時(shí),計(jì) 算機(jī)將連接完全視為計(jì)算機(jī)可讀介質(zhì)。因此,任何這樣的連接被適當(dāng)?shù)胤Q為計(jì) 算機(jī)可讀介質(zhì)。以上的組合也應(yīng)包括在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。
計(jì)算機(jī)可執(zhí)行指令例如包括,使通用計(jì)算機(jī)、專用計(jì)算機(jī)、或?qū)S锰幚碓O(shè) 備執(zhí)行某一功能或某組功能的指令和數(shù)據(jù)。盡管用對(duì)結(jié)構(gòu)特征和/或方法動(dòng)作專 用的語言描述了本主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于 上述具體特征或動(dòng)作。相反,上述具體特征和動(dòng)作作為實(shí)現(xiàn)權(quán)利要求的示例形 式公開的。
如此處所使用的,術(shù)語"模塊"或"組件"可以指在計(jì)算系統(tǒng)上執(zhí)行的軟 件對(duì)象或例程。此處描述的不同的組件、模塊、引擎和服務(wù)可被實(shí)現(xiàn)為在計(jì)算 系統(tǒng)上執(zhí)行的對(duì)象或進(jìn)程(例如,作為分開的線程)。盡管此處描述的系統(tǒng)和 方法可用軟件較佳地實(shí)現(xiàn),但用硬件或軟件和硬件的組合的實(shí)現(xiàn)也是可能的且 已被想到。在此描述中,"計(jì)算實(shí)體"可以是如上文定義的任何計(jì)算系統(tǒng),或 者在計(jì)算系統(tǒng)上運(yùn)行的任何模塊或模塊的組合。
圖1示出了根據(jù)示例性實(shí)施方式的被配置成為了壓縮而預(yù)處理數(shù)字圖像或 者位圖的數(shù)字圖像計(jì)算設(shè)備100。(注意到在描述本文的其它附圖或者實(shí)施方 式時(shí)以下的詳細(xì)描述有時(shí)將涉及圖1中示出的模塊和其它術(shù)語。)如所示,可 以由預(yù)處理步驟110接收數(shù)字圖像105。注意到數(shù)字圖像105可以是諸如文本 文檔、整個(gè)用戶界面的一部分、視頻中的圖形畫面或者任何其它類似類型的圖 形之類的任何類型的圖像。因此,術(shù)語數(shù)字圖像105或者位圖(在此處可以互 換使用)應(yīng)該被廣義地解釋為包括任何類型的圖形信息。
無論什么類型的數(shù)字圖像105,位圖105通常以色彩通道交錯(cuò)的形式顯示 和處理。例如,如圖2A所示,數(shù)字圖像205可以具有各種像素(例如,像素A-D),這些像素每個(gè)具有特定色彩空間(例如,在這一示例中是RGB)色彩 通道的色彩分量。如圖所示,每個(gè)像素用紅綠藍(lán)每個(gè)色彩分量的色彩通道交錯(cuò)。 注意,這一色彩空間的這種交錯(cuò)方式可以導(dǎo)致非最優(yōu)壓縮,其它色彩空間也是 如此。例如,如果數(shù)字圖像205具有全藍(lán)背景,那么數(shù)字圖像205中的每個(gè)像 素的藍(lán)色通道分量可以被全部或者部分點(diǎn)亮,而紅色和綠色通道將沒有照明。 然而,大多數(shù)數(shù)據(jù)壓縮模塊135通常不會(huì)識(shí)別這種導(dǎo)致壓縮不足的模式。更具 體地,像游程長(zhǎng)度編碼器這類的編碼器可以僅僅標(biāo)識(shí)在適于壓縮狀態(tài)下的單個(gè) 像素內(nèi)的紅色和綠色分量,但是仍然留下每個(gè)藍(lán)色分量的值不被壓縮。
為了克服這類無效率,示例性實(shí)施方式提供可以展示圖像數(shù)據(jù)中的普通模 式的預(yù)處理步驟110,這些模式在圖像以色彩通道交錯(cuò)的形式顯示時(shí)通常是不 能被比特流處理程序識(shí)別的。更具體地,如圖2A所示,數(shù)字圖像205可以被 分離或者分割為紅色通道210、綠色通道215和藍(lán)色通道220的平面數(shù)據(jù)源。 從通道到平面數(shù)據(jù)源210、 215、 220的這種分割(例如,使用平面轉(zhuǎn)換器模塊 115)使得諸如數(shù)字圖像數(shù)據(jù)的冗余或者其它可識(shí)別序列之類的模式呈現(xiàn),這 將在以下予以更詳細(xì)地描述。這種模式展示此時(shí)使得數(shù)據(jù)壓縮模塊135能將數(shù) 據(jù)更有效地壓縮到更高的比率水平。
例如,如圖2B所示,數(shù)字圖像125在黑色背景上(盡管為清楚起見在圖 2B中其作為白色出現(xiàn))示出了藍(lán)色陰影圓130。假設(shè)在RGB色彩空間中添加 色彩混合(即沒有白色或者將色彩空間中的所有色彩調(diào)零),紅色通道平面235 和綠色通道平面240將包含所有零點(diǎn)。藍(lán)色通道平面245除圓被點(diǎn)亮的區(qū)域之 外也可以包含零點(diǎn),在這一情況下該區(qū)域如以十六進(jìn)制數(shù)字"FF"所示出的那 樣被全部點(diǎn)亮。因此,將會(huì)認(rèn)識(shí)到,每個(gè)平面數(shù)據(jù)源(即紅色通道平面235、 綠色通道平面240和藍(lán)色通道平面245)此時(shí)可以使用數(shù)據(jù)壓縮模塊135分別 地壓縮。
換言之,通過將通道分量分為各種平面235、 240、 245,它們每一個(gè)的模 式可以更容易地標(biāo)識(shí)。例如,假設(shè)約一千像素(例如,IOOXIOO像素)的數(shù)字 圖像125并且使用簡(jiǎn)單的RLE壓縮程序,紅色通道平面235和綠色通道平面 240可以具有大約1000: 1的壓縮比。另一方面,藍(lán)色通道平面245可以僅僅 具有例如100: 1的壓縮比;然而,未將通道分為不同平面的數(shù)字圖像125的 總體壓縮可能僅僅比這一值稍大(如果不是更差)。因此,在這一示例中,相 對(duì)于將它們保持在其交錯(cuò)形式,通過將通道分成平面數(shù)據(jù)源235、 240、 245,壓縮比可以好大約三分之二。
更具體地,通過將交錯(cuò)位圖105分成平面表示,每個(gè)平面可以被獨(dú)立地壓 縮并且通常實(shí)現(xiàn)更高的壓縮比。對(duì)于期望在整個(gè)數(shù)字圖像105上大部分時(shí)間保 持相當(dāng)固定的通道尤其是這樣。換言之,示例性實(shí)施方式利用常常一個(gè)通道可 以進(jìn)行轉(zhuǎn)換而其它的保持相當(dāng)固定的事實(shí)。例如,假設(shè)將通常描述像素透明度 的a通道添加到RGB色彩空間。通常,a通道在整個(gè)圖像上保持固定,或者僅 僅具有用于諸如按鈕或者小的圖示符的有不同值的少量像素。因此,通過使用 上述實(shí)施方式的預(yù)處理,壓縮比比在位圖105以交錯(cuò)形式保留時(shí)增加了大約百 分之二十五。更具體地,因?yàn)樗膫€(gè)通道中的一個(gè)(在這一示例中是a通道)可 以僅僅使用相對(duì)于整個(gè)通道比特?cái)?shù)量的最小限度的比特高度地壓縮,實(shí)現(xiàn)了自 動(dòng)的百分之二十五的壓縮節(jié)省。
在許多實(shí)例中非常需要這樣高的壓縮比。例如,如上所述的虛擬計(jì)算系統(tǒng), 其中整個(gè)位圖105而不是原語操作被發(fā)送到遠(yuǎn)程客戶端設(shè)備,本文所描述的以 上及其它實(shí)施方式的使用可以實(shí)質(zhì)上降低發(fā)送這類圖像105的帶寬需求。然而, 注意,除虛擬計(jì)算系統(tǒng)之外的系統(tǒng)或者機(jī)制也可以利用這種有利特征。例如, 存儲(chǔ)消耗始終備受關(guān)注,特別隨著文檔、圖像和其它文件的大小不斷地增加。 因此,可以利用本文所描述的以上及其它實(shí)施方式壓縮那些在其它格式下可能 不能被壓縮的照片和其它圖像數(shù)據(jù)。當(dāng)然,需要高壓縮比的任何實(shí)例可以利用 本文所描述的特征。因此,使用本文所描述的這些實(shí)施方式的任何具體環(huán)境僅 僅出于示例性的目的,并且不旨在限制或者以其它方式縮小這些實(shí)施方式的范 圍,除非另行指出。
注意,盡管示例性實(shí)施方式在預(yù)處理步驟110中提供平面轉(zhuǎn)換器模塊115, 其它實(shí)施方式允許數(shù)字圖像105以平面格式存儲(chǔ)并且在傳輸過程中被檢索以便 呈現(xiàn)給數(shù)據(jù)壓縮模塊135或者根據(jù)以下更詳細(xì)地描述的各實(shí)施方式以其它方式 處理。實(shí)際上,如上所述,對(duì)位圖105的預(yù)處理IIO可以在某個(gè)較早的時(shí)刻發(fā) 生,這些結(jié)果被壓縮并存儲(chǔ),并且所壓縮的圖像105被發(fā)送到遠(yuǎn)程或者其它設(shè) 備而不需要對(duì)圖像105進(jìn)行解壓縮和再壓縮。
對(duì)以上實(shí)施方式的利用可以通過將色彩空間轉(zhuǎn)換到另一形式和/或操縱色 彩通道而得到進(jìn)一步增強(qiáng)。例如,如圖1所示,預(yù)處理步驟IIO包括可用于轉(zhuǎn) 換色彩空間的色彩空間轉(zhuǎn)換器模塊120。更具體地,諸如具有亮度和色度值的 某些色彩空間更適于某些類型的數(shù)據(jù)壓縮模塊135。換言之,通過將RGB空間轉(zhuǎn)換到亮度、色度色彩空間(例如,YUV、 YCoCg、 YCbCr,等等),在壓縮 比上的改進(jìn)可以實(shí)現(xiàn)幾乎2: 1的增加。當(dāng)然,壓縮比的增強(qiáng)類型可以取決于 所使用的數(shù)據(jù)壓縮模塊135的類型、數(shù)字圖像105的當(dāng)前形式或者其它各種因 素。還要注意,盡管以上轉(zhuǎn)換是從RGB色彩空間到亮度、色度色彩空間的, 其它類型的轉(zhuǎn)換在這里也予以考慮,并且可以包括任何下列或者其他類型的公 知色彩空間RGB、 RGBA、 CMYK (青色、洋紅色、黃色、黑色)、CIE形 式、YUV、 YIQ、 YDbDr、 HLS、 HSL (色調(diào)、飽和度、亮度)、HSV (色調(diào)、 飽和度、明度)、YCbCr、 YPbPr、 YCoCr,等等。
除將圖像105從一個(gè)色彩空間轉(zhuǎn)換到另一個(gè)之外,可能也需要修正圖像105 或者色彩空間以便在試圖增強(qiáng)數(shù)據(jù)壓縮模塊135的模式識(shí)別時(shí)實(shí)現(xiàn)某些可接收 的損耗,如本文所描述的那樣。例如, 一些亮度和色度色彩空間(例如,YCoCg) 基于視覺靈敏度將通道分成分量。換言之,人的眼睛被認(rèn)為對(duì)亮度(在圖2D 中示為270)的改變比色度值(在像素265中示為Cl和C2項(xiàng)275)更敏感。 因此,通過利用人眼的感知差異,有可能將色彩通道內(nèi)的信息降級(jí)以增強(qiáng)壓縮 模型可以更有效處理的模式,但仍使圖像保持感知上的無損耗。
如本文所述,可以有若干方式修正特定色彩空間或者數(shù)字圖像105的色彩 信息以便增強(qiáng)壓縮比。例如, 一個(gè)實(shí)施方式使用圖像修正模塊125以允許如圖 2D中所示出的使用四像素表示280的子采樣。在這一子采樣實(shí)施方式中, 一個(gè) 或者多個(gè)色彩通道值(例如,色度值275C1和/或C2)可以被調(diào)整以與鄰近像 素內(nèi)同一類型的通道的類似色度值相匹配。例如,如果兩個(gè)鄰近像素對(duì)于色彩 空間YCoCb中的諸如Co具有僅僅稍微不同的色度值275,那么可以標(biāo)準(zhǔn)化或 者另外改變這些值以增強(qiáng)模式或者冗余識(shí)別。
作為另一示例,考慮圖2D所示的四個(gè)像素280。如每個(gè)像素頂部所示,每 個(gè)對(duì)于特定色彩空間的通道具有一個(gè)原始值(即,70、 102、 94和82),但是 經(jīng)過子采樣后每個(gè)變?yōu)檩^低角落的數(shù)值87,其為所有這些數(shù)值的平均值。正如 我們所見,圖像空間的這一子采樣或者修正可以使這四個(gè)像素在這類通道值分 為平面數(shù)據(jù)源時(shí)作為模式予以識(shí)別。注意到這一子采樣實(shí)施方式可以將許多公 知算法用于將通道值標(biāo)準(zhǔn)化或者另外將其轉(zhuǎn)換為增強(qiáng)模式識(shí)別。例如,可以使 用平均值、中值或者其它統(tǒng)計(jì)值,或者標(biāo)準(zhǔn)化可以基于諸如什么類型的改變將 是不易察覺之類的其它規(guī)則或者數(shù)據(jù)。當(dāng)然,如本文所述,可以有許多修正或 者標(biāo)準(zhǔn)化通道值(甚至使用隨機(jī)值)的方式;因此本文使用以上示例僅僅用于說明性的用途。
當(dāng)然,可以使用圖像修正模塊125做出其它圖像修正。例如,色度或者其 它通道值的量化可以是合乎需要的。例如,如圖2D所示,可以使用如線格285 所示的9比特表示一個(gè)色度值。然而,這一9比特表示可以需要一些附加的處 理并且需要一個(gè)以上的字節(jié)對(duì)其進(jìn)行表示。因此,示例性實(shí)施方式考慮到量化 值,例如,其允許用于表示同一范圍值的比特的數(shù)量減少。例如,如果量化值 設(shè)置為三,則285中的九比特表示可以減少到所示的六比特表示。注意,在這 一減少中,色度或者其它通道分量的量化減小了比特大小,從而也減小了調(diào)色 板;然而,色彩范圍應(yīng)當(dāng)保持固定。另外注意,可以有其它修正通道比特值的 方法;因此本文使用特定數(shù)學(xué)變換或者量化值僅僅是用于說明性的用途,除非 另外明確指出,而不旨在限制或者另外縮小本文所描述的實(shí)施方式的范圍。
當(dāng)根據(jù)示例性實(shí)施方式預(yù)處理數(shù)字圖像105時(shí),可以有其它公知技術(shù)用于 修正色彩空間中的色度以及其它通道以便增強(qiáng)模式識(shí)別。例如,根據(jù)示例性實(shí) 施方式,控制設(shè)定130可用于在子采樣和/或量化上設(shè)定條件以便定義色彩或者 數(shù)據(jù)的其它損耗的可接受水平。更進(jìn)一步地,如本文所述,可以有定義數(shù)據(jù)壓 縮模塊135類型的其它控制設(shè)定130用于和/或設(shè)置其它所需的優(yōu)選,在轉(zhuǎn)換或 者另外修正色彩時(shí)可以考慮到這些優(yōu)選。因此,本文使用子采樣和量化的以上 示例僅僅是用于說明性的用途,除非另外明確指出,而不旨在限制或者另外縮 小本文所描述的實(shí)施方式的范圍。
如前所述,無論如何, 一旦位圖105在邏輯上被分割為孤立的平面位圖或 者平面數(shù)據(jù)源,就可以使用例如甚至諸如游程長(zhǎng)度編碼(RLE)之類的簡(jiǎn)單的 編碼方案對(duì)這些數(shù)值進(jìn)行編碼。這樣,位圖的每一行可以與在其之前的掃描行 不同對(duì)待,并且這些差異可以如下進(jìn)行編碼。例如, 一個(gè)實(shí)施方式允許含有游 程長(zhǎng)度的控制字節(jié)和許多跟隨控制字節(jié)的原始字節(jié)。控制字節(jié)可以在邏輯上分 割為兩部分, 一部分指示游程長(zhǎng)度而另一部分指示許多跟隨的原始字節(jié)。在一 個(gè)實(shí)施方式中,如果這些之中的任何一個(gè)的最大值不需要再增大,則新的控制 字節(jié)可以跟隨編碼流中的原始字節(jié)(如果有的話)。
注意, 一些實(shí)施方式考慮到對(duì)長(zhǎng)度小于三個(gè)字節(jié)的游程進(jìn)行編碼可能不值 得;從而可能不使用一個(gè)和兩個(gè)字節(jié)的值的游程長(zhǎng)度。因此,這些值可以有利 地用于指示比能以其它方式編碼的更長(zhǎng)的游程。例如,以下的偽碼示出了控制 字節(jié)如何被解碼并且如何用于以其它方式延長(zhǎng)游程?!?--—
RawLength = ControlByte >> 4; RimLength = ControlByte & OxOf; if (RunLength == 1)
RunLength = 16 + RawLength; RawLength = 0;
else if (RunLength = 2)
RunLength = 32 + RawLength; RawLength = 0;
〃 -—-
注意,如果只有數(shù)據(jù)的原始字節(jié)那么游程長(zhǎng)度有可能是零。當(dāng)然,有其它 形式的代碼和規(guī)則或者游程長(zhǎng)度可以用于實(shí)踐本文所述的各種實(shí)施方式。另 外,如以下所詳細(xì)地描述,有其它形式的壓縮(以及甚至壓縮程序的步驟)可 以有利地受益于本文所述的實(shí)施方式。因此,以上偽碼、定義以及RLE的使用 在此僅僅是用于說明性的用途,除非另外明確指出,不旨在限制或者以其它方 式縮小本文所述的實(shí)施方式的范圍。
注意,在以上示例中,當(dāng)交錯(cuò)通道被分成各個(gè)平面數(shù)據(jù)源時(shí),壓縮技術(shù)利 用比特冗余來實(shí)現(xiàn)較高的壓縮比。然而,值得注意的是,在本文所述的以上及 其它實(shí)施方式中,其它模式或者可識(shí)別的序列也可以出現(xiàn)。例如,如圖2C所 示,提供梯度圖像250,其中圖像250頂部的淺藍(lán)色逐漸變?yōu)榈撞?50的深藍(lán) 色陰影。當(dāng)轉(zhuǎn)換成藍(lán)色通道平面255的平面形式時(shí),該梯度圖像250可以隨著 色值的逐漸變化而從左到右地(表示圖像250從頂?shù)降?被表示出來。因此, 這種變化產(chǎn)生橫跨整個(gè)藍(lán)色通道平面255的從"0"到"FF"的斜率。因此, 各種壓縮程序可以識(shí)別這一模式并且更容易地壓縮該模式,不然當(dāng)其它通道與 藍(lán)色通道交錯(cuò)時(shí)不易識(shí)別該模式。
當(dāng)然,將本文所述的實(shí)施方式用于其它通道可以展示可由典型的數(shù)據(jù)壓縮 模塊135所識(shí)別的其它模式。而且,應(yīng)當(dāng)注意到,盡管為梯度標(biāo)識(shí)了簡(jiǎn)單的直線斜率,當(dāng)使用其它圖像時(shí),將通道分成它們各自的平面可以導(dǎo)致更復(fù)雜的數(shù)
學(xué)或者數(shù)字序列的模式出現(xiàn)。例如,如隨機(jī)通道平面260所示,取決于圖像105, 可以產(chǎn)生通道的正弦或者其它類型函數(shù)。然而,通過將通道分為平面形式,并 且使用如以下所述的其它修正技術(shù),即使一些更復(fù)雜的圖像也可以分解為更易 處理的壓縮程序135可以識(shí)別的函數(shù),不然將無法標(biāo)識(shí)。實(shí)際上,通過使用本 文所述的實(shí)施方式任何數(shù)量的模式、比特序列或者其它形式的冗余可以出現(xiàn), 任何數(shù)量的壓縮模塊135可以比在圖像保留在交錯(cuò)形式時(shí)更容易地將其壓縮。 此外,注意到這些壓縮模塊135可以基于模式和/或靜態(tài)。
無論什么類型的用于標(biāo)識(shí)不同模式、冗余、序列、數(shù)學(xué)函數(shù)等等的數(shù)據(jù)壓 縮模塊135,如前所述,其它實(shí)施方式考慮到壓縮的各種步驟。例如,在執(zhí)行 以上所述的平面分離和修正技術(shù)之后,可以使用RLE壓縮程序標(biāo)識(shí)不同通道或 者平面數(shù)據(jù)源的冗余。該壓縮數(shù)據(jù)可以隨后傳遞到可以標(biāo)識(shí)其它模式或者可識(shí) 別序列的另一壓縮程序。因此,這一過程可以被重復(fù)地執(zhí)行許多次以便實(shí)現(xiàn)較 高的壓縮比。當(dāng)然,然而,在某些時(shí)候可能沒有更多的益處,而且實(shí)際上某些 時(shí)候進(jìn)一步的壓縮嘗試可能事實(shí)上降低壓縮比。然而,本文所述的實(shí)施方式考 慮使用許多壓縮模塊135,包括但不限于RLE、基于MPEG、 JPEG、 GIF、 ZIP、 基于LZ、 JBIG、 DejaVu等等。
實(shí)際上,注意,整個(gè)圖像105—旦分離和/或修正成平面形式,其各部分被 發(fā)送到不同的壓縮模塊135用于處理。例如,只有a通道被傳遞到RLE壓縮程 序135用于處理,而其它通道分量被傳遞到其它的壓縮程序。這一機(jī)制在標(biāo)識(shí) 數(shù)據(jù)的何種模式或者統(tǒng)計(jì)序列最適于特定類型的壓縮機(jī)制時(shí)可以是有利的。這 樣,只要需要,任何數(shù)量任何類型的壓縮程序可以用于不同的平面數(shù)據(jù)源。
本發(fā)明也可以按照包括功能性步驟和/或非功能性動(dòng)作的方法予以描述。以 下是對(duì)可以在實(shí)踐本發(fā)明的過程中執(zhí)行的步驟和/或動(dòng)作的描述。通常,功能性 步驟按照所實(shí)現(xiàn)的結(jié)果描述本發(fā)明,然而非功能性動(dòng)作描述用于實(shí)現(xiàn)特定結(jié)果 的更加具體的動(dòng)作。盡管功能性步驟和/或非功能性動(dòng)作可以用特定的順序予以 描述或者主張權(quán)利,但是本發(fā)明并不必然地限于步驟和/或動(dòng)作的任何特定的順 序或者組合。進(jìn)一步地,在權(quán)利要求的敘述中對(duì)這些步驟和/或動(dòng)作的使用僅僅 用于指示這類項(xiàng)的所需特定使用。
圖3和圖4示出了本發(fā)明各種示例性實(shí)施方式的流程圖。以下對(duì)圖3和圖 4的描述偶爾會(huì)參照?qǐng)D1、圖2A-D中相應(yīng)的元素。盡管可能參照這些附圖中的特定元素,但是這種參照僅僅用于說明性的用途,除非明確指出,而不旨在限 制或者另外縮小所述的實(shí)施方式的范圍。
圖3示出了根據(jù)示例性實(shí)施方式的用于改進(jìn)的數(shù)據(jù)壓縮的對(duì)圖像數(shù)據(jù)進(jìn)行 預(yù)處理的方法300的流程圖。如所示,方法300包括接收數(shù)字圖像的動(dòng)作305。 例如,預(yù)處理步驟110可以接收可表示為多個(gè)像素的數(shù)字圖像105,其中每個(gè) 像素由包括通常被顯示出的色彩通道的第一色彩空間定義,以便多個(gè)像素的布 局作為色彩通道的交錯(cuò)序列出現(xiàn)。換言之,如數(shù)字圖像205所示,像素可以用 色彩空間的通道交錯(cuò)(例如,如所示的RGB)。注意,在大多數(shù)實(shí)例中色彩空 間(例如,RGB、 RGBA、 CMYK、 CIELAB、 CIELUV、 CIE、 YUV、 YIQ、 YDbDr、 HLS、 HSL、 HIS、 HSB、 YCbCr、 YPbPr、 YCoCr,等等)通常具有 三個(gè)或者更多的通道值。然而,本文的實(shí)施方式考慮到可能僅僅具有兩個(gè)或者 更多通道值的色彩空間。
如果數(shù)字圖像將被分離成平面數(shù)據(jù)源,則方法200也包括確定動(dòng)作310。 更具體地,如上述,數(shù)字圖像105可以已經(jīng)處于被分離成平面數(shù)據(jù)源(例如, 紅色通道210、綠色通道215、藍(lán)色通道220)的形式。每個(gè)平面數(shù)據(jù)源將包括 用于每個(gè)個(gè)別的色彩通道的數(shù)字圖像數(shù)據(jù),以便數(shù)字圖像數(shù)據(jù)的冗余或者另一 可識(shí)別序列可以由基于模式、基于靜態(tài)或者兩者兼具的數(shù)據(jù)壓縮模塊135容易 地標(biāo)識(shí)。進(jìn)一步地,壓縮模塊135可以是RLE、基于MPEG、 JPEG、 GIF、 ZIP、 基于LZ、 JBIG、 DejaVu或者其它公知的基于模式或統(tǒng)計(jì)的壓縮機(jī)制中的一個(gè) 或者多個(gè)。
基于以上確定,方法300還包括將平面數(shù)據(jù)源發(fā)送到數(shù)據(jù)壓縮模塊的動(dòng)作 315。更具體地, 一旦確定數(shù)字圖像105是平面數(shù)據(jù)源的形式,預(yù)處理步驟IIO 就可以將數(shù)字圖像105發(fā)送到數(shù)據(jù)壓縮模塊135。注意,通過將通道分離成平 面數(shù)據(jù)源,這種分離幫助數(shù)據(jù)壓縮模塊135比在數(shù)字圖像是交錯(cuò)形式時(shí)更有效 地壓縮數(shù)字圖像105。
注意,可以將平面數(shù)據(jù)源發(fā)送到多個(gè)壓縮模塊135。例如,可以將平面數(shù) 據(jù)源發(fā)送到數(shù)據(jù)壓縮模塊B5用于壓縮數(shù)字?jǐn)?shù)據(jù)的大的冗余,并且隨后將其發(fā) 送到另一壓縮模塊135用于其它基于模式和/或統(tǒng)計(jì)的處理。更具體地,平面數(shù) 據(jù)源可以傳遞到RLE用于對(duì)大的序列模式進(jìn)行標(biāo)識(shí)的第一壓縮機(jī)制,并且隨后 傳遞到另一通用的壓縮程序用于進(jìn)一步的數(shù)據(jù)壓縮。作為一個(gè)示例,帶有a通 道的RGB色彩空間允許a通道帶有將傳遞到RLE的大量的冗余數(shù)據(jù)。如果確定數(shù)字圖像沒有被分離成平面數(shù)據(jù)源,第一色彩通道和第二色彩通 道的各個(gè)分量可以被標(biāo)識(shí)并且分離成它們各自的平面數(shù)據(jù)源。另外注意,對(duì)以 上實(shí)施方式的其它增強(qiáng)也是可用的。例如,色彩空間可被從第二色彩空間轉(zhuǎn)換 到第一色彩空間,其中該第一色彩空間具有比第二色彩空間更高的壓縮比,或 者可用于進(jìn)一步地操縱數(shù)字圖像數(shù)據(jù)以供更好的模式或者統(tǒng)計(jì)識(shí)別。例如,色
彩空間可以從基于RGB轉(zhuǎn)換到具有亮度和色度通道。進(jìn)一步地,色彩空間可 以通過標(biāo)識(shí)平面數(shù)據(jù)源內(nèi)的區(qū)域修正,在區(qū)域中圖像數(shù)據(jù)可以更改用于更好的 模式識(shí)別?;诳刂圃O(shè)定130,和/或基于所使用的壓縮模塊135的類型,這些 標(biāo)識(shí)區(qū)域可以通過更改原始圖像數(shù)據(jù)來實(shí)現(xiàn)比沒有這種操縱時(shí)甚至更好的冗 余或者可識(shí)別的序列或模式。
這種修正可以包括子采樣,以使像素的色彩通道的色度值被修正為與鄰近 像素的另一色彩通道的色度值相匹配。這種修正還可以基于色度值的平均值或 者一些其它統(tǒng)計(jì)或其它推理來標(biāo)準(zhǔn)化數(shù)值。作為替換或者結(jié)合,該修正可以包 括色度(或者其它通道)分量的量化,這樣相應(yīng)色彩通道的比特大小降低預(yù)定 數(shù)量,以便降低所需的表示色度(或者其它通道)分量的數(shù)據(jù)量,這樣比特犬 小的降低縮減了調(diào)色板而不是色彩范圍。
注意,數(shù)字圖像可處于虛擬網(wǎng)絡(luò)計(jì)算環(huán)境中,這樣數(shù)字圖像105將被壓縮 以傳輸?shù)竭h(yuǎn)程設(shè)備。在這一事實(shí)方式中,數(shù)字圖像可能過于復(fù)雜而不能作為一 系列的基元發(fā)送到遠(yuǎn)程設(shè)備,并且如果以其交錯(cuò)形式保留,將該數(shù)字圖像壓縮 并傳輸?shù)竭h(yuǎn)程設(shè)備將極大地消耗傳輸帶寬。
圖4示出了根據(jù)示例性實(shí)施方式的解壓縮數(shù)字圖像數(shù)據(jù)的方法400,這些 數(shù)字圖像數(shù)據(jù)被編碼為色彩空間的分開的色彩通道。方法400包括將數(shù)字圖像 顯示為解壓縮的色彩通道的交錯(cuò)序列的步驟420。 420的步驟包括接收表示一 個(gè)平面數(shù)據(jù)源的第一組經(jīng)壓縮數(shù)字圖像數(shù)據(jù)的動(dòng)作405。例如,遠(yuǎn)程設(shè)備可以 接收表示至少兩個(gè)平面數(shù)據(jù)源(例如,紅色通道平面數(shù)據(jù)源210)中之一的第 一組經(jīng)壓縮數(shù)字圖像數(shù)據(jù),其中該至少兩個(gè)平面數(shù)據(jù)源中的每一個(gè)與數(shù)字圖像 105的多個(gè)像素205的第一色彩空間的色彩通道相對(duì)應(yīng)。該兩個(gè)平面數(shù)據(jù)源中 的每一個(gè)都展示為分開的數(shù)字圖像數(shù)據(jù),這樣數(shù)字圖像數(shù)據(jù)的冗余或者任何其
它可識(shí)別序列可以容易地由基于模式、基于靜態(tài)或者兩者兼具的數(shù)據(jù)壓縮模塊 135標(biāo)識(shí)。
420之后的步驟包括接收表示另一平面數(shù)據(jù)源的第二組經(jīng)壓縮數(shù)字圖像數(shù)據(jù)的動(dòng)作410。換言之,遠(yuǎn)程設(shè)備也可以接收綠色通道平面數(shù)據(jù)源215的根據(jù) 本文所述的示例性實(shí)施方式壓縮的平面數(shù)據(jù)源。此后,420的步驟包括將第一 組和第二組經(jīng)壓縮數(shù)字圖像數(shù)據(jù)解壓縮為它們各自的平面數(shù)據(jù)源的動(dòng)作415。 一旦解壓縮,平面數(shù)據(jù)源就可以完全地交錯(cuò)回到數(shù)字圖像105并且適當(dāng)?shù)仫@示, 這樣數(shù)字圖像的每個(gè)像素205包括與該至少兩個(gè)平面數(shù)據(jù)源的每一個(gè)相對(duì)應(yīng)的 色彩分量。注意,前述的關(guān)于圖像數(shù)據(jù)預(yù)處理的其它實(shí)施方式也可以與此處所 述的解壓縮實(shí)施方式相對(duì)應(yīng)。
本發(fā)明可以用其它的具體形式表達(dá)而不背離其精神或者本質(zhì)特征。所描述 的實(shí)施方式在各個(gè)方面均被認(rèn)為僅僅是示例性的而非限制性的。因此,本發(fā)明 的范圍由所附權(quán)利要求而非以上描述指示。落入這些權(quán)利要求等同意義和范圍 的所有改變將涵蓋在它們的范圍內(nèi)。
權(quán)利要求
1. 在數(shù)字圖像計(jì)算設(shè)備中,一種用于通過展示圖像數(shù)據(jù)中一個(gè)或者多個(gè)普通模式預(yù)處理圖像以改進(jìn)數(shù)據(jù)壓縮的方法,所述圖像數(shù)據(jù)在以色彩通道交錯(cuò)的形式顯示時(shí)所述模式通常不能被比特流處理程序識(shí)別,所述方法包括接收表示為多個(gè)像素的數(shù)字圖像,其中每個(gè)像素由包括通常被顯示出的至少兩個(gè)色彩通道的第一色彩空間定義,以使所述多個(gè)像素的布局作為所述至少兩個(gè)色彩通道的交錯(cuò)序列出現(xiàn);確定所述數(shù)字圖像是否被分離成至少兩個(gè)平面數(shù)據(jù)源,其中每一個(gè)包括針對(duì)每一個(gè)所述各個(gè)至少兩個(gè)色彩通道的數(shù)字圖像數(shù)據(jù),以使數(shù)字圖像數(shù)據(jù)的冗余或者另一可識(shí)別序列可以容易地由一個(gè)或者多個(gè)基于模式、基于統(tǒng)計(jì)或者兩者兼具的數(shù)據(jù)壓縮模塊標(biāo)識(shí);以及基于上述確定,將所述至少兩個(gè)平面數(shù)據(jù)源發(fā)送到所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮模塊,以便幫助所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮模塊比在所述數(shù)字圖像是交錯(cuò)形式時(shí)更有效地壓縮所述數(shù)字圖像。
2. 如權(quán)利要求1所述的方法,其特征在于,所述數(shù)字圖像處于虛擬網(wǎng)絡(luò)計(jì)算 環(huán)境并且所述數(shù)字圖像被壓縮以傳輸?shù)竭h(yuǎn)程設(shè)備,并且其中所述數(shù)字圖像過于復(fù)雜 而不能作為一系列的圖形基元發(fā)送到所述遠(yuǎn)程設(shè)備,并且所述數(shù)字圖像如果以交錯(cuò) 形式保留,則將所述數(shù)字圖像壓縮并且傳輸?shù)剿鲞h(yuǎn)程設(shè)備會(huì)過度地消耗傳輸帶寬。
3. 如權(quán)利要求1所述的方法,其特征在于,所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮模塊 包括RLE、基于MPEG、 JPEG、 GIF、 ZIP、基于LZ、 JBIG、 DejaVu或者其它 公知的基于模式或統(tǒng)計(jì)的壓縮機(jī)制中的一個(gè)或者多個(gè)。
4. 如權(quán)利要求1所述的方法,其特征在于,所述至少兩個(gè)平面數(shù)據(jù)源被發(fā)送 到第一數(shù)據(jù)壓縮模塊以壓縮數(shù)字?jǐn)?shù)據(jù)的大的冗余,并且隨后被發(fā)送到第二數(shù)據(jù)壓縮 模塊以進(jìn)行其它基于模式、統(tǒng)計(jì)或者算術(shù)的處理。
5. 如權(quán)利要求1所述的方法,其特征在于,如果確定所述數(shù)字圖像沒有被分離成所述至少兩個(gè)平面數(shù)據(jù)源,所述方法還包括為所述至少兩個(gè)色彩通道標(biāo)識(shí)第一色彩通道的各個(gè)分量,并且將它們置入與所述至少兩個(gè)平面數(shù)據(jù)源之一相對(duì)應(yīng)的第一平面數(shù)據(jù)源;以及為所述至少兩個(gè)色彩通道標(biāo)識(shí)第二色彩通道的各個(gè)分量,并且將它們置入與所 述至少兩個(gè)平面數(shù)據(jù)源中的另一個(gè)相對(duì)應(yīng)的第二平面數(shù)據(jù)源。
6. 如權(quán)利要求1所述的方法,其特征在于,所述第一色彩空間是RGB、RGBA、 CMYK、 CIELAB、 CIELUV、 CIE、 YUV、 YIQ、 YDbDr、 HLS、 HSL、 HIS、 HSB、 YCbCr、 YPbPr和YCoCr中之一。
7. 如權(quán)利要求1所述的方法,其特征在于,還包括以下步驟中的一個(gè)或者多個(gè)將第二色彩空間轉(zhuǎn)換到所述第一色彩空間,所述第一色彩空間具有比所述第 二色彩空間更高的壓縮比,或者可用于進(jìn)一步地操縱所述數(shù)字圖像數(shù)據(jù)以供更 好的模式或者統(tǒng)計(jì)識(shí)別;標(biāo)識(shí)所述至少兩個(gè)平面數(shù)據(jù)源內(nèi)的一個(gè)或者多個(gè)區(qū)域,可以在所述區(qū)域中 更改所述圖像數(shù)據(jù)以供更好的模式識(shí)別;以及基于一個(gè)或者多個(gè)控制設(shè)定,或者基于所使用的壓縮程序的類型,通過更 改原始圖像數(shù)據(jù)來修正所述區(qū)域以實(shí)現(xiàn)比沒有該操縱時(shí)甚至更好的冗余或者 其它可識(shí)別序列或模式。
8. 如權(quán)利要求7所述的方法,其特征在于,所述第一色彩空間是具有亮度 和至少一個(gè)色度分量的色彩通道的色彩空間,并且所述第二色彩空間基于 RGB。
9. 如權(quán)利要求8所述的方法,其特征在于,所述修正包括子采樣,以使像 素的一個(gè)色彩通道的至少一個(gè)色度值被修正為與鄰近像素的另一色彩通道的 色度值相匹配。
10. 如權(quán)利要求9所述的方法,其特征在于,所述修正基于所述色度值的 平均值。
11. 如權(quán)利要求8所述的方法,其特征在于,所述修正包括所述至少一個(gè) 色度分量的量化,以使所述相應(yīng)的色彩通道的比特大小被減少預(yù)定量,以便于 減少表示所述至少一個(gè)色度分量所需的數(shù)據(jù)量,并且所述比特大小的所述減少 縮小了調(diào)色板而不是色彩范圍。
12. 如權(quán)利要求1所述的方法,其特征在于,所述至少兩個(gè)平面數(shù)據(jù)源中 的至少一個(gè)被傳遞到對(duì)大的序列模式進(jìn)行標(biāo)識(shí)的第一壓縮機(jī)制的RLE,并且所述至少兩個(gè)平面數(shù)據(jù)源被傳遞到另一個(gè)通用壓縮程序以供進(jìn)一步的數(shù)據(jù)壓縮。
13. 如權(quán)利要求12所述的方法,其特征在于,所述第一色彩空間是帶有a通道的RGB色彩空間,并且所述a通道包括傳遞到所述RLE的大量的冗余數(shù) 據(jù)。
14. 在傳輸那些過于復(fù)雜而不能作為一系列圖形基元發(fā)送到遠(yuǎn)程設(shè)備的數(shù) 字圖像的虛擬網(wǎng)絡(luò)計(jì)算環(huán)境的遠(yuǎn)程設(shè)備中, 一種解壓縮被編碼為色彩空間的各 個(gè)色彩通道的數(shù)字圖像數(shù)據(jù)的方法,所述方法包括接收表示至少兩個(gè)平面數(shù)據(jù)源中之一的第一組經(jīng)壓縮數(shù)字圖像數(shù)據(jù),其中 所述至少兩個(gè)平面數(shù)據(jù)源中的每一個(gè)與數(shù)字圖像的多個(gè)像素的第一色彩空間 的各個(gè)色彩通道相對(duì)應(yīng),并且其中所述至少兩個(gè)平面數(shù)據(jù)源中的每一個(gè)都展示 為分開的數(shù)字圖像數(shù)據(jù),以使數(shù)字圖像數(shù)據(jù)的冗余或者另一個(gè)可識(shí)別序列可以 容易地由基于模式、基于統(tǒng)計(jì)或者兩者兼具的一個(gè)或者多個(gè)數(shù)據(jù)壓縮模塊標(biāo) 識(shí);接收表示所述至少兩個(gè)平面數(shù)據(jù)源中另一個(gè)的第二組經(jīng)壓縮數(shù)字圖像數(shù)據(jù);將所述第一組和第二組經(jīng)壓縮數(shù)字圖像數(shù)據(jù)解壓縮成它們各自的平面數(shù) 據(jù)源;以及將所述數(shù)字圖像顯示為所述經(jīng)解壓縮的色彩通道的交錯(cuò)序列,以使所述數(shù) 字圖像的每個(gè)像素包括與所述至少兩個(gè)平面數(shù)據(jù)源中的每一個(gè)相對(duì)應(yīng)的色彩
15. 如權(quán)利要求14所述的方法,其特征在于,所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮 模塊將所述至少兩個(gè)平面數(shù)據(jù)源壓縮為以下形式中的一個(gè)或者多個(gè)RLE、基 于MPEG、 JPEG、 GIF、 ZIP、基于LZ、 JBIG、 DejaVu或者其它公知的基于模 式或統(tǒng)計(jì)的形式。
16. 如權(quán)利要求14所述的方法,其特征在于,所述第一色彩空間是RGB、 RGBA、 CMYK、 CIELAB、 CIELUV、 CIE、 YUV、 YIQ、 YDbDr、 HLS、 HSL、 HIS、 HSB、 YCbCr、 YPbPr和YCoCr中之一。
17. 如權(quán)利要求14所述的方法,其特征在于,所述第一色彩空間在顯示所述數(shù)字圖像之前被轉(zhuǎn)換為第二色彩空間。
18. 如權(quán)利要求17所述的方法,其特征在于,所述第一色彩空間是具有亮度和至少一個(gè)色度分量的色彩通道的色彩空間,并且所述第二色彩空間基于 RGB。
19. 如權(quán)利要求14所述的方法,其特征在于,所述第一色彩空間是帶有具有大量冗余數(shù)據(jù)的a通道的RGB色彩空間,并且所述a通道作為經(jīng)壓縮RLE流 被接收。
20.在數(shù)字圖像計(jì)算設(shè)備中, 一種計(jì)算機(jī)程序產(chǎn)品用于實(shí)現(xiàn)一種用于通過 展示圖像數(shù)據(jù)中一個(gè)或者多個(gè)普通模式預(yù)處理圖像以改進(jìn)數(shù)據(jù)壓縮的方法,所述圖 像數(shù)據(jù)在以色彩通道交錯(cuò)的形式顯示時(shí)比特流處理程序通常不能識(shí)別所述模式,包 括其上存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令的一個(gè)或者多個(gè)計(jì)算機(jī)可讀介質(zhì)的所述計(jì)算機(jī)程序 產(chǎn)品在由所述計(jì)算系統(tǒng)的一個(gè)或者多個(gè)處理程序執(zhí)行時(shí),使得所述計(jì)算系統(tǒng)執(zhí)行以 下步驟接收表示為多個(gè)像素的數(shù)字圖像,其中每個(gè)像素由包括通常被顯示出的至少兩 個(gè)色彩通道的第一色彩空間定義,以使所述多個(gè)像素的布局作為所述至少兩個(gè)色彩 通道的交錯(cuò)序列出現(xiàn);確定所述數(shù)字圖像是否被分離成至少兩個(gè)平面數(shù)據(jù)源,其中每一個(gè)包括每一個(gè) 所述各個(gè)至少兩個(gè)色彩通道的數(shù)字圖像數(shù)據(jù),以使數(shù)字圖像數(shù)據(jù)的冗余或者另一可 識(shí)別序列可以容易地由一個(gè)或者多個(gè)基于模式、基于統(tǒng)計(jì)或者兩者兼具的數(shù)據(jù)壓縮 模塊標(biāo)識(shí);以及基于上述確定,將所述至少兩個(gè)平面數(shù)據(jù)源發(fā)送到所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮 模塊,以便于幫助所述一個(gè)或者多個(gè)數(shù)據(jù)壓縮模塊比在所述數(shù)字圖像是交錯(cuò)形式時(shí) 更有效地壓縮所述數(shù)字圖像。
全文摘要
本文的實(shí)施方式提供一種通過將像素的色彩通道分割或者分離成平面數(shù)據(jù)源來增強(qiáng)圖像的數(shù)據(jù)壓縮的預(yù)處理步驟或者機(jī)制。通常,圖像數(shù)據(jù)被顯示為色彩空間的通道類型的交錯(cuò)組,以使圖像(例如位圖)內(nèi)的每個(gè)像素針對(duì)每個(gè)色彩通道具有一個(gè)分量。通過將交錯(cuò)的位圖分離成平面表示,每個(gè)平面可以被獨(dú)立地壓縮并且通常實(shí)現(xiàn)較高的壓縮比。對(duì)于期望大部分時(shí)間在整個(gè)位圖中保持相當(dāng)固定的通道尤其是這樣。通過對(duì)通道數(shù)據(jù)的操縱或者通過將色彩空間從一種形式轉(zhuǎn)換為另一種形式可以進(jìn)一步增強(qiáng)對(duì)以上實(shí)施方式的利用。
文檔編號(hào)H04N7/26GK101416220SQ200780006315
公開日2009年4月22日 申請(qǐng)日期2007年1月16日 優(yōu)先權(quán)日2006年2月23日
發(fā)明者B·C·麥克唐威爾, N·Y·阿伯多, P·科勒曼 申請(qǐng)人:微軟公司