專利名稱:用于合成圖像壓縮的塊重組的系統(tǒng)和方法
用于合成圖像壓縮的塊重組的系統(tǒng)和方法
背景技術(shù):
合成圖像是描繪具有完全不同特征的多種類型的內(nèi)容的圖像。對于非限制性示例,屏幕截圖可能包含在純色背景上呈現(xiàn)的文本圖像(例如簡單的文本)以及連續(xù)色調(diào)圖像。由于文本圖像和連續(xù)色調(diào)圖像的特征是完全不同的-文本圖像通常具有很少的顏色, 用銳邊分離不同顏色的像素,而連續(xù)色調(diào)圖像傾向于具有在相鄰像素間平滑過渡的大量的顏色,因此,為合成圖像設(shè)計(jì)有效的單一壓縮方式是非常困難的。解決該壓縮合成圖像的挑戰(zhàn)的一種方法是采用混合光柵內(nèi)容(MRC)模型,其將合成圖像分割為多個(gè)層并且用單獨(dú)的壓縮器對多個(gè)層的每一層進(jìn)行壓縮。對于非限制性示例,屏幕截圖可以被分割為包含文本和簡單圖形的層和包含連續(xù)色調(diào)圖像的層。由于MRC 跨越多個(gè)層來分布圖像的像素,所以每一層通常包括“不關(guān)注(don' t care)”像素(或孔),其值是由其他層確定的。一些壓縮方法將圖像分割為像素塊并對這些塊進(jìn)行操作。圖像的任一層中的像素塊可以只包含“不關(guān)注”像素,因此,其不是從單獨(dú)的層重建圖像所需的。下文中,這樣的塊被稱為“不關(guān)注”塊。如果一個(gè)塊包括至少一個(gè)非“不關(guān)注”像素,則它不是“不關(guān)注”塊。為了有效地壓縮合成圖像,其中將要被壓縮的圖層包含“不關(guān)注”像素和塊,減少或消除由于對層中的“不關(guān)注”塊進(jìn)行不必要的操作而造成的在壓縮的字節(jié)流中的開銷是很重要的。在某些應(yīng)用中,能在基于web的執(zhí)行環(huán)境中壓縮合成圖像而不必修改所使用的實(shí)際壓縮器也是很重要的。前述的相關(guān)技術(shù)的示例和與其相關(guān)的限制意在說明而不是唯一的。在閱讀說明書和研究附圖之后,相關(guān)技術(shù)的其他限制將是很明顯的。
圖1描述了支持對合成圖像的基于塊的重組的系統(tǒng)的示例框圖。圖2描述了根據(jù)圖1的支持對合成圖像的基于塊的重組的過程的示例的流程圖。圖3(a)_(e)示出了根據(jù)圖1和圖2的對合成圖像的基于塊的重組的示例。
具體實(shí)施例方式在附圖中以示例的方式而不是限制的方式圖示了本方法,在附圖中類似的標(biāo)記指示相似的元素。應(yīng)注意在本公開中的對“一種”或“一個(gè)”或“一些”實(shí)施例的引用不必是同一實(shí)施例,這樣的引用意味著至少一個(gè)。提出了新的方法,其考慮通過跳過圖層中的“不關(guān)注”塊而不引入明顯的開銷也不要求改變所使用的壓縮方法來支持對合成圖像進(jìn)行基于塊的壓縮的系統(tǒng)和方法。更具體地,基于塊的壓縮方法首先將合成圖像分割為多個(gè)層。接著,該方法有效地跳過原始圖像中的“不關(guān)注”塊,可能用新的維數(shù)僅從原始圖像的層中的非“不關(guān)注”塊來重組新的圖層集合,之后對新組合的圖像進(jìn)行壓縮。這個(gè)步驟不影響解壓縮的圖像的維數(shù)或分辨率。該方法隨后可對壓縮的圖層進(jìn)行解壓縮并且通過將解壓縮的塊復(fù)制到其在原始圖像中的各自的位置來恢復(fù)圖像。由于這樣的方法不要求訪問源代碼,它適用任何“現(xiàn)成的”壓縮方法并且可利用可能已經(jīng)在目標(biāo)環(huán)境中可用的高度優(yōu)化的壓縮功能,例如在本地Flash運(yùn)行環(huán)境中的JPEG解碼器/壓縮器或者在移動裝置上的硬件優(yōu)化的JPEG解碼器。此外,這樣的方法沒有在諸如屏幕共享的實(shí)際應(yīng)用中弓I入任何開銷。如以下所使用的,(二維)圖像可以被分成一個(gè)或多個(gè)層,其中,每一層具有MXN 個(gè)塊,分別在X維為M個(gè)塊,在y維為N個(gè)塊,其中,每個(gè)塊為LXL個(gè)像素的大小。因此,圖像中的每一層在X維有MXL個(gè)像素并且在y維有NXL個(gè)像素,共有MXNXLXL個(gè)像素。圖1描述了支持對合成圖像的基于塊的重組的系統(tǒng)的示例框圖。盡管該框圖以功能上分開的方式來描述組件,但這樣的描述僅為了說明的目的。明顯地,在圖中描繪的組件可以任意地進(jìn)行組合或被分為獨(dú)立的軟件、固件和/或硬件組件。而且,顯然無論這樣的組件是如何被組合或劃分的,它們都可以在同一主機(jī)或多個(gè)主機(jī)上執(zhí)行,其中多個(gè)主機(jī)可以是由一個(gè)或多個(gè)網(wǎng)絡(luò)連接的。在圖1的示例中,系統(tǒng)100包括一個(gè)或多個(gè)主機(jī)/主機(jī)裝置(未示出),其每一個(gè)可用于運(yùn)行圖像分割引擎102、層重組引擎104、層壓縮引擎106和可選的圖像解壓縮和合成引擎108中的至少一個(gè)或多個(gè)。在這里使用的術(shù)語“引擎”或“組件”指的是軟件、固件、 硬件或用于實(shí)現(xiàn)目的的其他組件。引擎或組件通常會包括在非易失性存儲器(也被稱為輔助存儲器)中存儲的軟件指令。當(dāng)執(zhí)行該軟件指令時(shí),至少該軟件指令的子集被處理器加載到內(nèi)存(也被稱為主存儲器)中。處理器接著執(zhí)行內(nèi)存中的軟件指令。處理器可以是共享的處理器、專用的處理器或者共享的處理器或?qū)S玫奶幚砥鞯慕M合。典型的程序?qū)▽τ布M件(例如I/O裝置)的調(diào)用,其通常要求執(zhí)行驅(qū)動程序。驅(qū)動程序可以或可以不被視為引擎的一部分,但該區(qū)別并不重要。在圖1的示例中,運(yùn)行引擎和組件的每一個(gè)主機(jī)可以是計(jì)算裝置、通信裝置、存儲裝置或能夠運(yùn)行軟件組件的任何電子裝置。對于非限制性示例,計(jì)算裝置可以是但不限于膝上型PC、桌面PC、平板型PC、iPod、PDA或服務(wù)器機(jī)器。存儲裝置可以是但不限于硬盤驅(qū)動器、閃存驅(qū)動器或任何便攜存儲裝置。通信裝置可以是但不限于移動電話或智能電話。在圖1的示例中,對于非限制性示例,圖像分割引擎102可操作地用于根據(jù)MRC成像模型將合成圖像分解或分割為多個(gè)(圖像)層。MRC為合成圖像采用多層、多分辨率成像模型,其中,對于非限制性示例,這樣的模型包括至少一個(gè)或多個(gè)彩色圖層以代表圖像的前景和背景層,以及將要被用作蒙版(mask)的二進(jìn)制圖層。蒙版層描述如何從其他兩層恢復(fù)或重建圖像。更具體地,當(dāng)蒙版層像素的值是1時(shí),選擇來自前景層的相應(yīng)的像素用于恢復(fù)的圖像;當(dāng)蒙版層像素的值為0時(shí),選擇來自背景層的相應(yīng)像素。在該3層模型下,前景層實(shí)質(zhì)上是通過蒙版層被貼在背景層上?;蛘?,擴(kuò)展的MRC成像模型可以是由一個(gè)背景層與一對或多對前景和蒙版層構(gòu)成的。給定背景層,通過蒙版層使前景層顯象在背景層上以組成為新的背景圖像,并且可以通過另一個(gè)蒙版層使另一個(gè)前景層顯象到該新的背景上,這個(gè)過程可以被重復(fù)多次。或者,可以通過在其他層的其中一個(gè)層中定義透明顏色來隱式地編碼蒙版層?;蛘撸瑑蓚€(gè)或多個(gè)二進(jìn)制蒙版層可以被組合為單個(gè)非二進(jìn)制蒙版層。在圖1的示例中,圖像分割引擎102可操作地用于將諸如頁面的合成圖像根據(jù)該圖像的內(nèi)容來分解或表示為一層、兩層、三層或多層。對于非限制性示例,由圖片構(gòu)成的頁面可以僅由背景層來表示;包含黑白文本的頁面可以使用蒙版層并且前景和背景分別被默認(rèn)為黑色和白色。對于非限制性示例,圖像分割引擎102可是首先識別(在很大程度上)代表文本和簡單圖形的顏色的集合。接著,圖像分割引擎102可以將其顏色在該集合中的所有像素分配給前景層而將所有其他像素分配給背景層。在圖1的示例中,層重組引擎104可操作地用于基于所分解的原始圖層,識別和跳過原始圖層中的“不關(guān)注”塊,用可能的新維數(shù)來重組一個(gè)或多個(gè)新的圖層。這個(gè)步驟不影響解壓縮的圖像的維數(shù)或分辨率。層重組引擎104首先識別在所接收的一個(gè)或多個(gè)層的每一層中的“不關(guān)注,,塊并作出標(biāo)記,其中每個(gè)“不關(guān)注”塊只包含“不關(guān)注”像素,“不關(guān)注,, 像素的值將由其他層確定。接著,層重組引擎104為包含相應(yīng)的原始圖層中的所有非“不關(guān)注”塊的一個(gè)或多個(gè)新的圖層的每一個(gè)選擇可能的新維數(shù),同時(shí)以“未使用的”塊的形式來最小化開銷。假定壓縮器作用于層中大小為LXL像素每個(gè)塊和N個(gè)非“不關(guān)注”塊如果所有非“不關(guān)注”塊適合于所使用的壓縮器的最大寬度,則層重組引擎104簡單地將層中所有非“不關(guān)注”塊排列為一行,即層重組引擎104選擇維數(shù)(N*L) XL ;否則層重組引擎104計(jì)算質(zhì)因數(shù),N = ko^k^. . . *kn,其中Ici是N的質(zhì)因數(shù),并且通過將質(zhì)因數(shù)的集合分為兩個(gè)單獨(dú)集合以及通過將兩個(gè)集合中的質(zhì)因數(shù)相乘來分別計(jì)算長度和寬度以嘗試選擇維數(shù),即層重組引擎104為僅有非“不關(guān)注”塊的新的重組層選擇維數(shù)(kx。*kxl*. · · *kxw*L) X (kyQ*kyl*. · · *kyh*L)。如果在前面的步驟中發(fā)現(xiàn)無效維數(shù),則層重組引擎104將N加1,接著重復(fù)之前的步驟直到其發(fā)現(xiàn)有效的維數(shù)為止。在為一個(gè)或多個(gè)層的每一個(gè)確定維數(shù)之后,層重組引擎104通過將原始圖層的每一層中的所有非“不關(guān)注”塊從上到下且從左到右復(fù)制到相應(yīng)的新組成的圖層來重組該一個(gè)或多個(gè)新圖層的每一層。通過僅從原始圖層中的非“不關(guān)注”塊重組新的圖層,層重組引擎104消除或減少了當(dāng)用之前提及的基于塊的壓縮方法對層進(jìn)行壓縮時(shí)由“不關(guān)注”塊所引入的開銷。更具體地,鑒于壓縮效率的考慮,不需要給“不關(guān)注”塊中的任何“不關(guān)注”像素分配值,甚至任意、 平均或統(tǒng)一的值,因?yàn)楦静粔嚎s這些像素或塊。而且,對于將要被壓縮或跳過的“不關(guān)注” 或非“不關(guān)注”塊的每一個(gè)都不需要單獨(dú)的頭部,這有效地消除了在壓縮期間由這樣的頭部所引入的開銷。此外,因?yàn)閮H對跳過所有“不關(guān)注”塊的重組的新圖像的層進(jìn)行壓縮,所以沒有必須要修改壓縮器來跳過這樣的“不關(guān)注”塊,這有效地消除了訪問、改變或優(yōu)化正在使用的壓縮器的源代碼的需求,因?yàn)檫@在一些環(huán)境(例如在瀏覽器內(nèi)部運(yùn)行的AJAX)中經(jīng)常是根本不可能的或者由于執(zhí)行速度慢使得在其他環(huán)境(由Adobe的Flash Player執(zhí)行的ActionScript)中是極其昂貴的。在圖1的示例中,層壓縮引擎106利用由基于MRC的分解過程提供的自由度來對一個(gè)或多個(gè)新創(chuàng)建的圖層的每一個(gè)用其自己的壓縮器進(jìn)行處理和壓縮,其中每個(gè)壓縮器可采用自己的壓縮方法和壓縮參數(shù),例如圖像分辨率或顏色映射。分解原始合成圖像的方法影響層壓縮引擎106的操作,并且由層壓縮引擎106為給定的層選擇的壓縮器和分辨率將與該層的內(nèi)容類型相匹配,這在改善了壓縮的同時(shí)減少了失真可見度。對于非限制性示例, 在上文討論的RC分解和TI分解的情況下,背景層適合于諸如JPEG或JPEG-2000的連續(xù)色調(diào)圖像壓縮器,除非在原始文檔中不存在連續(xù)色調(diào)圖像并且未掃描該文檔,在這種情況下, 其他壓縮器可能更有效。在RC情形中,蒙版層是很均勻的并且可以使用諸如MMR、JBIG和 JBIG-2的標(biāo)準(zhǔn)二進(jìn)制壓縮器對其進(jìn)行很好的壓縮。前景層可包含許多邊緣和連續(xù)色調(diào)細(xì)節(jié),并且可以使用在位圖格式下的無損數(shù)據(jù)壓縮(例如PNG)而不是通常的連續(xù)色調(diào)壓縮器(例如JPEG)來對其進(jìn)行壓縮。在TI情形中,文本對象和邊緣被放置在二進(jìn)制的蒙版層中,因此,可以使用諸如MMR、JBIG、JBIG-2和PWC的標(biāo)準(zhǔn)二進(jìn)制編碼器對其進(jìn)行有效的編碼。前景層通常會包含大的均勻的區(qū)域,因此,也可以用諸如JPEG的壓縮器進(jìn)行有效的壓縮。此外,可以對前景層進(jìn)行二次采樣,在圖像質(zhì)量上沒有更多的損失且圖像中的邊緣從連續(xù)色調(diào)層移到二進(jìn)制層。層壓縮引擎106還可以以諸如TIFF-FX的格式對重組的圖像的壓縮的層進(jìn)行封裝或者將其封裝為ITU-T數(shù)據(jù)流以用于向圖像解壓縮和合成引擎108的傳送。在圖1的示例中,可選的圖像解壓縮和合成引擎108檢索、解壓縮和處理(其可能包括縮放)重組的圖像的壓縮層的每一個(gè),并進(jìn)一步根據(jù)所使用的MRC成像模型來重建原始圖像。應(yīng)注意,不同于層壓縮引擎106的壓縮操作,圖像解壓縮和合成引擎108的解壓縮操作不受圖像分割引擎102分解原始圖像的方式的影響。而且,圖像解壓縮和合成引擎 108和層壓縮引擎106需要就將要用于壓縮一個(gè)或多個(gè)層的壓縮器的類型及其關(guān)聯(lián)的參數(shù)先達(dá)成一致,目的在于圖像解壓縮和合成引擎108能使用相應(yīng)類型的解壓縮器并用相同的 (壓縮/解壓縮)方法和參數(shù)正確地解壓縮這些層。一旦解壓縮了一個(gè)或多個(gè)層,圖像解壓縮和合成引擎108利用蒙版層來將其他層中的每個(gè)塊復(fù)制到其原始位置以重建原始圖像。 在某些情況下蒙版層不是作為單獨(dú)的層來表示的,圖像解壓縮和合成引擎108可以在其中一個(gè)層中定義透明的顏色以隱式地編碼蒙版。當(dāng)圖1所描述的系統(tǒng)100運(yùn)行時(shí),圖像分割引擎102接收原始合成圖像并且基于多層MRC圖像模型將該圖像分割為一個(gè)或多個(gè)圖層。在將該圖像分解為一個(gè)或多個(gè)層后, 圖像分割引擎102將這些圖層供應(yīng)給層重組引擎104。接著,層重組引擎104識別并跳過在原始一個(gè)或多個(gè)層的每一個(gè)上的所有“不關(guān)注”塊,并用可能的新的維數(shù)重組一組相應(yīng)的新的圖層,其中,每個(gè)新的層只包含在相應(yīng)的原始層中的非“不關(guān)注”塊。然后,將這些新組成的圖層提供給層壓縮引擎106,其選擇一組壓縮器,每個(gè)壓縮器適用于根據(jù)該層的內(nèi)容來對其中一個(gè)圖層進(jìn)行壓縮。接著,層壓縮引擎106對一個(gè)或多個(gè)圖層的每一個(gè)使用其相應(yīng)的壓縮器進(jìn)行壓縮,并且在一些實(shí)施例中,以適合于向圖像解壓縮和合成引擎108進(jìn)行傳送的格式來對重組的圖像的壓縮的層進(jìn)行封裝。可選的解壓縮和合成引擎108檢索、解壓縮和處理重組的圖像的每一個(gè)壓縮的圖層,并通過將每個(gè)塊拷貝到其在所使用的MRC成像模型下的原始位置來從這些解壓縮的圖層重建原始圖像。圖2描述了根據(jù)圖1的支持對合成圖像的基于塊的重組的過程的示例的流程圖。 盡管該圖為了說明的目的以特定次序描述了功能步驟,但該過程不限于任何特定的步驟次序或安排。相關(guān)領(lǐng)域的技術(shù)人員應(yīng)理解在該圖中描繪的多個(gè)步驟是可以以各種方式省略、 重新排列、組合和/或改寫的。在圖2的示例中,流程圖200開始于塊202,這里將合成圖像分割或分解為一個(gè)或多個(gè)原始圖層。如上文所討論的,這樣的分解是在MRC圖像模型下進(jìn)行的。流程圖200繼續(xù)到塊204,這里識別該一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊,其中每一個(gè)“不關(guān)注”塊只包含“不關(guān)注”像素。流程圖200繼續(xù)到塊206,這里跳過原始圖層中的所有“不關(guān)注”塊, 從相應(yīng)的原始圖層重組一個(gè)或多個(gè)新的圖層。在重組期間,可能為一個(gè)或多個(gè)層的每一個(gè)確定新的維數(shù)。流程圖200繼續(xù)到塊208,這里對一個(gè)或多個(gè)重組的圖層的每一個(gè)使用其各自的壓縮器進(jìn)行壓縮。可基于每個(gè)圖層的內(nèi)容來為該層選擇壓縮器。可選地,流程圖200 繼續(xù)到塊210,這里使用對應(yīng)于所使用的壓縮器的解壓縮器來對一個(gè)或多個(gè)壓縮的圖層進(jìn)行解壓縮。流程圖200結(jié)束于塊212,這里從該一個(gè)或多個(gè)解壓縮的圖層來重建原始圖像。 這樣的重建可以利用蒙版層將其他層中的每個(gè)塊復(fù)制到其原始位置。圖3(a)_(e)示出了根據(jù)圖1和圖2的對合成圖像的基于塊的重組的示例。在圖 3(a)中,301是合成圖像,其包含在前景中的文本圖像部分302和在背景中的連續(xù)色調(diào)圖像部分303。在典型的3層MRC模型下,在該情形下采用RC分解方法可以將合成圖像301分解為前景層1304、蒙版層305和背景層306。這里,前景層1304表示文本,前景層2306表示連續(xù)色調(diào)圖片,并且具有大量的指示圖像的文本和圖像部分的區(qū)域的蒙版層305被用來選擇將要用于每個(gè)像素的層。應(yīng)注意,層1304和層2306包含“不關(guān)注”部分的像素,其值將由其他層來確定,即層1的“不關(guān)注”部分的像素值將由層2來確定,反之亦然。圖3(b) 示出了層2306的分塊視圖,其在χ維為8個(gè)塊且在y維為6個(gè)塊,共48個(gè)塊。在這些塊之間,標(biāo)記為10、11、17、18、19、25、26和27的塊是“不關(guān)注”塊307,而其余的標(biāo)記為1_4、9、 13-28,33-36和41-48的塊為非“不關(guān)注”塊308,因?yàn)槠涓髯园辽僖粋€(gè)非“不關(guān)注”像素。圖3(c)示出了層2306的抽象的二進(jìn)制視圖,圖像的左部分以灰色標(biāo)記的是“不關(guān)注” 塊307,以白色標(biāo)記的是非“不關(guān)注”塊308。一旦已經(jīng)識別出層2306中的“不關(guān)注”塊,則在層2306的新重組的層中跳過這些塊。假設(shè)正在使用的壓縮器的最大寬度不能容納8個(gè) “不關(guān)注”±夬307,那么可以將層2306的新維數(shù)選擇為5X8,其中5和8都是層2306上的非 “不關(guān)注”塊的總數(shù)40的質(zhì)因數(shù)的乘積。圖3(d)示出了層2306的新組合的圖層,其僅有在維數(shù)5X8下從上到下且從左到右復(fù)制的非“不關(guān)注”塊。相應(yīng)地也可以重組層1304和蒙版層305。一旦進(jìn)行重組以跳過所有的“不關(guān)注”±夬,就可以如圖3(e)所示分別使用PNG壓縮器309、JBIG壓縮器310和JPEG壓縮器311單獨(dú)地對層1304、蒙版層305和層2306中的每一個(gè)進(jìn)行壓縮。選擇PNG壓縮器309來對包含許多銳邊和其他細(xì)節(jié)的前景層1304進(jìn)行壓縮,選擇JBIG壓縮器310來對蒙版層進(jìn)行壓縮,因?yàn)槊砂鎸邮欠浅>鶆虻亩祱D像,以及選擇JPEG壓縮器311來對層2306進(jìn)行壓縮,因?yàn)閷?包含連續(xù)色調(diào)圖像。根據(jù)本公開的教導(dǎo)使用常規(guī)的通用或?qū)S玫臄?shù)字計(jì)算機(jī)或可編程的微處理器可以實(shí)現(xiàn)一個(gè)實(shí)施例,這對計(jì)算機(jī)領(lǐng)域的技術(shù)人員是顯而易見的。基于本公開的教導(dǎo)熟練的程序員可以容易地準(zhǔn)備合適的軟件編碼,這對軟件領(lǐng)域的技術(shù)人員是顯而易見的。也可以通過制備集成電路或通過將常規(guī)組件電路的適當(dāng)網(wǎng)絡(luò)互聯(lián)來實(shí)現(xiàn)本發(fā)明,這對本領(lǐng)域技術(shù)人員是顯而易見的。一個(gè)實(shí)施例包括計(jì)算機(jī)程序產(chǎn)品,其為其上存儲指令的機(jī)器可讀介質(zhì)(媒體),其中指令用于對一個(gè)或多個(gè)主機(jī)編程以執(zhí)行此處所述的任何特征。機(jī)器可讀介質(zhì)可包括但不限于一種或多種類型的盤,包括軟盤、光盤、DVD、CD-ROM、微型驅(qū)動和磁光盤、ROM、RAM、 EPR0M、EEPR0M、DRAM、VRAM、閃存裝置、磁卡或光卡、納米系統(tǒng)(包括分子存儲器IC)或者適合于存儲指令和/或數(shù)據(jù)的任何類型的媒體或裝置。本發(fā)明包括在任何一個(gè)計(jì)算機(jī)可讀介質(zhì)(媒體)上所存儲的軟件,所述軟件用于控制通用的/專用的計(jì)算機(jī)或微處理器的硬件, 以及用于使計(jì)算機(jī)或微處理器能與觀察者或利用本發(fā)明的結(jié)果的其他機(jī)制進(jìn)行交互。這樣的軟件包括但不限于裝置驅(qū)動程序、操作系統(tǒng)、執(zhí)行環(huán)境/容器以及應(yīng)用。為了說明和描述的目的提供了對所要求保護(hù)的主題的各種實(shí)施例的上述描述。其意不在于窮盡或?qū)⑺蟊Wo(hù)的主題限制到所公開的精確形式。許多修改和變化對本領(lǐng)域的技術(shù)人員而言是顯而易見的。具體地,盡管在上述的系統(tǒng)和方法的實(shí)施例中使用了“組件”概念,但明顯地這樣的概念可以與諸如類、方法、類型、接口、模塊、對象模型的對等概念以及其他合適的概念互換地使用。為了最恰當(dāng)?shù)孛枋霰景l(fā)明的原理及其實(shí)際應(yīng)用而選擇和描述了實(shí)施例,因此使相關(guān)領(lǐng)域的其他技術(shù)人員能理解所要求保護(hù)的主題的各種實(shí)施例和適合于具體使用的該各種修改是可預(yù)期的。
權(quán)利要求
1.一種系統(tǒng),包括在主機(jī)上運(yùn)行的圖像分割引擎,其操作時(shí),將合成圖像分解為一個(gè)或多個(gè)原始圖層; 在主機(jī)上運(yùn)行的層重組引擎,其操作時(shí), 識別在所述一個(gè)或多個(gè)原始圖層的每一個(gè)中的“不關(guān)注”塊; 通過跳過在所述一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊來重組一個(gè)或多個(gè)新的圖層; 在主機(jī)上運(yùn)行的層壓縮引擎,其操作時(shí),對一個(gè)或多個(gè)新創(chuàng)建的圖層的每一個(gè)用其自己的壓縮器進(jìn)行處理和壓縮。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),還包括在主機(jī)上運(yùn)行的圖像解壓縮和合成引擎,其操作時(shí), 檢索、解壓縮以及處理所壓縮的一個(gè)或多個(gè)層的每一個(gè); 從解壓縮的一個(gè)或多個(gè)層重建原始圖像。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中主機(jī)是計(jì)算裝置、通信裝置、存儲裝置或能夠運(yùn)行軟件組件的任一電子裝置。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中圖像分割引擎基于混合光柵內(nèi)容(MRC)成像模型來分解所述合成圖像。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其中MRC成像模型包括前景層、背景層和蒙版層。
6.根據(jù)權(quán)利要求5所述的系統(tǒng),其中蒙版層是用前景層中的透明顏色來隱式地編碼的。
7.根據(jù)權(quán)利要求4所述的系統(tǒng),其中MRC成像模型包括一個(gè)背景層和一對或多對前景層與蒙版層。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其中圖像分割引擎將合成圖像依據(jù)該圖像的內(nèi)容分解和表示為一層、兩層、三層或多層。
9.根據(jù)權(quán)利要求1所述的系統(tǒng),其中層重組引擎為包含相應(yīng)的原始圖層中的所有非“不關(guān)注”塊的一個(gè)或多個(gè)新的圖層的每一個(gè)選擇可能的新維數(shù)。
10.根據(jù)權(quán)利要求1所述的系統(tǒng),其中層重組引擎通過將在所述一個(gè)或多個(gè)原始圖層的每一個(gè)中的所有非“不關(guān)注”塊復(fù)制到相應(yīng)的新的圖層中來重組該一個(gè)或多個(gè)新的圖層的每一個(gè)。
11.根據(jù)權(quán)利要求1所述的系統(tǒng),其中層重組引擎消除或減少由所述一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊引入的開銷。
12.根據(jù)權(quán)利要求1所述的系統(tǒng),其中壓縮器是JPEG、MMR, JBIG、PffC和PNG的其中一個(gè)。
13.根據(jù)權(quán)利要求1所述的系統(tǒng),其中 壓縮器采用其自己的壓縮方式和壓縮參數(shù)。
14.根據(jù)權(quán)利要求1所述的系統(tǒng),其中層壓縮引擎基于該層的內(nèi)容的類型為每個(gè)新的圖層選擇壓縮器。
15.根據(jù)權(quán)利要求1所述的系統(tǒng),其中層壓縮引擎以適合于傳送的格式來封裝所壓縮的一個(gè)或多個(gè)層。
16.根據(jù)權(quán)利要求2所述的系統(tǒng),其中圖像解壓縮和合成引擎基于所使用的MRC成像模型來重建原始圖像。
17.根據(jù)權(quán)利要求2所述的系統(tǒng),其中圖像解壓縮和合成引擎通過將所述一個(gè)或多個(gè)新的圖層中的每個(gè)塊復(fù)制到其在原始圖像中的原始位置來重建原始圖像。
18.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 將合成圖像分割為一個(gè)或多個(gè)原始圖層;識別所述一個(gè)或多個(gè)原始圖層的每一個(gè)中的“不關(guān)注”塊; 通過跳過所述一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊來重組一個(gè)或多個(gè)新的圖層; 對所述一個(gè)或多個(gè)重組的圖層的每一個(gè)用基于該層的內(nèi)容所選擇的其自己的壓縮器來進(jìn)行處理和壓縮。
19.根據(jù)權(quán)利要求18所述的方法,還包括檢索、解壓縮以及處理所壓縮的一個(gè)或多個(gè)層的每一個(gè); 從解壓縮的一個(gè)或多個(gè)層重建原始圖像。
20.根據(jù)權(quán)利要求18所述的方法,還包括基于混合光柵內(nèi)容(MRC)成像模型來分解合成圖像。
21.根據(jù)權(quán)利要求18所述的方法,還包括根據(jù)合成圖像的內(nèi)容將該圖像分解和表示為一層、兩層、三層或多層。
22.根據(jù)權(quán)利要求18所述的方法,還包括為包含相應(yīng)的原始圖層中的所有非“不關(guān)注”塊的一個(gè)或多個(gè)新的圖層的每一個(gè)選擇可能的新維數(shù)。
23.根據(jù)權(quán)利要求18所述的方法,還包括通過將所述一個(gè)或多個(gè)原始圖層的每一個(gè)中的所有非“不關(guān)注”塊復(fù)制到相應(yīng)的新的圖層中來重組該一個(gè)或多個(gè)新的圖層的每一個(gè)。
24.根據(jù)權(quán)利要求18所述的方法,還包括消除或減少由所述一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊引入的開銷。
25.根據(jù)權(quán)利要求18所述的方法,還包括基于每個(gè)新的圖層的內(nèi)容的類型來為每個(gè)新的圖層選擇壓縮器。
26.根據(jù)權(quán)利要求18所述的方法,還包括以適合于傳送的格式來封裝所壓縮的一個(gè)或多個(gè)層。
27.根據(jù)權(quán)利要求18所述的方法,還包括基于每個(gè)新的圖層的內(nèi)容的類型來為每個(gè)新的圖層選擇壓縮器。
28.根據(jù)權(quán)利要求19所述的方法,還包括 基于所使用的MRC成像模型來重建原始圖像。
29.根據(jù)權(quán)利要求19所述的方法,還包括通過將所述一個(gè)或多個(gè)新的圖層中的每個(gè)塊復(fù)制到其在原始圖像中的原始位置來重建原始圖像。
30.一種在其上存儲有軟件指令的計(jì)算機(jī)可讀介質(zhì),當(dāng)執(zhí)行所述指令時(shí)使系統(tǒng) 將合成圖像分割為一個(gè)或多個(gè)原始圖層;識別所述一個(gè)或多個(gè)原始圖層的每一個(gè)中的“不關(guān)注”塊; 通過跳過所述一個(gè)或多個(gè)原始圖層中的“不關(guān)注”塊來重組一個(gè)或多個(gè)新的圖層; 對所述一個(gè)或多個(gè)重組的圖層的每一個(gè)用基于該層的內(nèi)容所選擇的其自己的壓縮器來進(jìn)行壓縮;檢索、解壓縮以及處理所壓縮的一個(gè)或多個(gè)層的每一個(gè); 從解壓縮的一個(gè)或多個(gè)層重建原始圖像。
全文摘要
提出了新的方法,其考慮了通過跳過圖層中的“不關(guān)注”塊而不引入明顯的開銷也不要求改變所使用的壓縮方法來支持對合成圖像進(jìn)行基于塊的壓縮的系統(tǒng)和方法?;趬K的壓縮方式首先將合成圖像分割為多個(gè)層,然后可能用新的維數(shù)且僅從原始圖像層中的非“不關(guān)注”塊來重組圖層的新的集合。該方法隨后可對壓縮的圖層進(jìn)行解壓縮并且通過將解壓縮的塊復(fù)制到其在原始圖像中的各自的位置來恢復(fù)圖像。
文檔編號H04N7/26GK102428693SQ201080021672
公開日2012年4月25日 申請日期2010年5月14日 優(yōu)先權(quán)日2009年5月18日
發(fā)明者B·O·克里斯汀森 申請人:思杰系統(tǒng)有限公司