專利名稱:文本圖像編碼的制作方法
文本圖像編碼 背景當(dāng)今,圖像經(jīng)常以電子格式進(jìn)行存儲、操縱和傳送。特別是對于圖像的存儲和傳 送,電子圖像的數(shù)據(jù)大小仍然是重要的。通常,電子圖像的大小越小,它就越易于存儲或傳 送。電子圖像的數(shù)據(jù)大小可通過壓縮該數(shù)據(jù)來減少。遺憾的是,明顯的壓縮通常是有損的, 這意味著在壓縮和解壓縮循環(huán)期間信息丟失了。該損失的信息導(dǎo)致圖像的視覺質(zhì)量在解壓 縮之后被降級。換言之,盡管較高的壓縮促進(jìn)了圖像的存儲和傳輸,但這樣的壓縮通常在解壓縮 之后降級了所得到的電子圖像的視覺質(zhì)量。因此,一般在所實(shí)現(xiàn)的壓縮比與良好的視覺質(zhì) 量之間達(dá)到一種平衡。改進(jìn)這種平衡的一種方式是改進(jìn)應(yīng)用于電子圖像的壓縮算法。如果 改進(jìn)了壓縮算法,則可在不犧牲視覺質(zhì)量的情況下得到較高的壓縮比。本文在下面描述特 別適用于具有文本部分的圖像的新穎且高級的壓縮算法。概述文本圖像編碼涉及編碼圖像的文本部分,該圖像可具有文本部分和圖形部分兩 者。在一示例實(shí)施例中,將圖像的文本塊分解成多個(gè)基色和索引圖,其中該索引圖具有各個(gè) 索引值,每一索引值參考一個(gè)基色以表示該文本塊。查明該索引圖的一特定索引的一組鄰 近索引值。從多個(gè)預(yù)定上下文中生成匹配該組鄰近索引值的上下文。該匹配上下文包括一 組符號?;谠撈ヅ渖舷挛暮驮撎囟ㄋ饕鶎?yīng)的符號確定至少一個(gè)符號到值的映射,其 中該符號到值的映射包括從相應(yīng)符號到相應(yīng)值的至少一個(gè)映射。根據(jù)該符號到值的映射和 該特定索引所對應(yīng)的符號來將該特定索引重新映射到特定值。在通過重新映射索引圖的每 一個(gè)索引來轉(zhuǎn)換了該索引圖之后,可編碼經(jīng)轉(zhuǎn)換的索引圖和各基色來壓縮它們。提供本概述以便用簡化的形式介紹在下面的詳細(xì)描述中進(jìn)一步描述的一些概念。 本概述不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要 求保護(hù)的主題的范圍。此外,本文描述了其他方法、系統(tǒng)、方案、裝置、設(shè)備、介質(zhì)、過程、應(yīng)用 編程接口(API)、安排等實(shí)現(xiàn)。附圖簡述在各附圖中使用相同的標(biāo)號引用相同和/或?qū)?yīng)的方面、特征和組件。
圖1是其中可在具有文本部分的圖像上實(shí)現(xiàn)文本圖像編碼的示例場景的框圖。圖2是用于將圖像的各塊區(qū)分為文本塊或圖形塊的示例標(biāo)識過程的框圖。圖3是將示例文本塊分解成基色和索引圖的框圖。圖4是示出一種用于對圖形塊和文本塊進(jìn)行圖像編碼的方法的示例的流程圖,該 方法包括編碼和解碼。圖5是示出按上下文類別組織的、用于文本塊的索引圖編碼的多種不同示例上下 文的表格圖。圖6是示出按符號的、用于文本塊的編碼的多種不同索引映射的表格圖,其中這 些映射是按上下文類別組織的。圖7是示出用于分別使用圖5和圖6的上下文和符號映射進(jìn)行文本圖像編碼的方法的示例的流程圖。圖8是可實(shí)現(xiàn)文本圖像編碼的示例圖像編碼器的框圖。圖9是可實(shí)現(xiàn)文本圖像解碼的示例圖像解碼器的框圖。圖10是示出用于對文本塊進(jìn)行編碼的方法的示例的流程圖。圖11是示出用于對文本塊進(jìn)行解碼的方法的示例的流程圖。圖12是可用于實(shí)現(xiàn)文本圖像編碼的示例設(shè)備的框圖。詳細(xì)描述文本圖像編碼的介紹隨著因特網(wǎng)的快速發(fā)展和富媒體應(yīng)用的廣泛采用,除自然圖像之外還產(chǎn)生了復(fù)合圖像。復(fù)合圖像可包括但不限于網(wǎng)頁、幻燈片、海報(bào)等等。復(fù)合圖像包括文本部分和圖形部 分。文本部分包括例如由(例如位圖化的)像素形成的各種字體的字母數(shù)字或其他字符或 者當(dāng)前不能作為單獨(dú)的整體字符來識別的其他方面。圖形部分包括例如自然圖片。對于自然圖片,許多現(xiàn)有的圖像和視頻編碼標(biāo)準(zhǔn)(例如,JPEG2000和H. 264/AVC) 已經(jīng)展示出良好的編碼性能。然而,它們在壓縮復(fù)合圖像時(shí),特別是由于其中的任何文本部 分而是不適當(dāng)?shù)摹T谝皇纠龑?shí)施例中,區(qū)分復(fù)合圖像的文本部分和圖形部分。隨后使用不 同于圖形部分的編碼方法來編碼這些文本部分。圖1是其中可在具有文本部分的圖像上實(shí)現(xiàn)文本圖像編碼的示例場景100的框 圖。如所示的,場景100包括圖像102和重構(gòu)圖像112。圖像102包括至少一個(gè)文本部分 104和至少一個(gè)圖形部分106。重構(gòu)圖像112包括至少一個(gè)重構(gòu)文本部分114和至少一個(gè) 重構(gòu)圖形部分116。場景100還包括編碼過程108、解碼過程110和通信過程118。對于一示例實(shí)施例,圖像102由編碼過程108編碼。使用第一編碼方法編碼文本 部分104,并且使用不同的第二編碼方法編碼圖形部分106。隨后經(jīng)由通信過程118從一個(gè) 設(shè)備將圖像102的壓縮版本通信傳送至另一個(gè)設(shè)備和/或從一個(gè)存儲器通信傳送至另一個(gè) 存儲器。在本文下面特別參考圖12來描述可用于實(shí)現(xiàn)文本圖像編碼的實(shí)施例的示例設(shè)備。在通信過程118之后,將解碼過程110應(yīng)用于圖像102的壓縮版本以產(chǎn)生解壓版 本,它稱為重構(gòu)圖像112。將第一解碼方法應(yīng)用于文本部分104的壓縮版本以產(chǎn)生重構(gòu)文本 部分114。將第二解碼方法應(yīng)用于圖形部分106的壓縮版本以產(chǎn)生重構(gòu)圖形部分116。盡 管圖像102/112包括文本部分104/114和圖形部分106/116兩者,但如本文所述的發(fā)明原 理還適用于僅包括文本部分104/114的圖像102/112。文本圖像編碼的示例實(shí)施例圖2是用于將圖像102的各塊區(qū)分為文本塊202 (T)或圖形塊202 (G)的示例標(biāo)識 方法200的框圖。因此,在該示例中使用基于塊的方法。如所示的,標(biāo)識方法200包括圖像 102、塊202和塊類型標(biāo)識過程204。對于一示例實(shí)施例,圖像102被劃分成多個(gè)塊202并且因而包括這多個(gè)塊。這些 塊202可以是任何大小、形狀或比例。然而,這些塊的一個(gè)示例值是16像素乘16像素。將 塊類型標(biāo)識過程204應(yīng)用于每個(gè)塊202。從而將每個(gè)塊202區(qū)分為文本塊202 (T)或圖形塊 202 (G)??墒褂萌魏渭夹g(shù)來將各塊標(biāo)識為文本部分或圖形部分。僅作為示例,可使用在 2006年2月24日提交的、發(fā)明人為Feng Wu等、并轉(zhuǎn)讓給同一受讓人(微軟公司)的、標(biāo)題為“Block-Based Fast Image Compression(基于塊的快速圖像壓縮)”的共同待審的美國非臨時(shí)專利申請第11/276,342號中所述的技術(shù)來實(shí)現(xiàn)塊類型標(biāo)識。盡管塊202被區(qū)分為兩 種圖像部分類型之一,但另選地可以存在多于兩種可能的圖像塊類型。同樣,圖形塊202(G) 可細(xì)分為不同類型的圖形塊(例如,平滑、混合等)。每個(gè)相應(yīng)的圖像塊類型可使用其自己 的相應(yīng)算法類型來編碼。應(yīng)當(dāng)理解,對于已知僅具有文本部分的圖像,可省略塊類型標(biāo)識過 程 204。圖3是將塊分解成基色302和索引圖304的示例文本塊分解過程300的框圖。如 所示的,文本輸入塊202 (T)被分解300成一個(gè)或多個(gè)基色302和至少一個(gè)索引圖304。在 該例中,輸入塊202(T)由圖像的8像素乘8像素的部分形成。然而,輸入塊202(Τ)可以是 不同的大小或者比例(例如它不必是正方形的)。一般而言,輸入塊202 (T)表示形成圖像的文本部分的一個(gè)或多個(gè)字符的至少一 部分的像素。輸入塊202(Τ)的每個(gè)像素顏色是由一個(gè)或兩個(gè)字母如下表示的LB=淡藍(lán), DB=深藍(lán),B=黑,DY=深黃,以及LY=淡黃。因而,頂行包括8個(gè)像素,它們從左至右如 下淡藍(lán),淡藍(lán),深藍(lán),黑,深黃,淡黃,淡黃和淡黃。在一示例實(shí)施例中,輸入塊202 (T)被分解300成基色302和索引圖304?;?02 是從輸入塊202(T)提取的顏色?;?02的每種顏色與一個(gè)值(如數(shù)值)相關(guān)聯(lián)。在所 示示例中,淡藍(lán)與0相關(guān)聯(lián),深藍(lán)與1相關(guān)聯(lián),黑與2相關(guān)聯(lián),深黃與3相關(guān)聯(lián),以及淡黃與4 相關(guān)聯(lián)。輸入塊202 (T)的像素顏色由索引圖304表示為具有與各基色302相關(guān)聯(lián)的數(shù)值 的矩陣。索引圖304表示包含在輸入塊202 (T)的各像素中的結(jié)構(gòu)信息。索引圖304因此 具有與輸入塊202(Τ)相同的維度,在本例中為8乘8。索引圖304的頂行包括8個(gè)索引值, 它們從左至右如下:0,0,1,2,3,4,4和4。在一示例實(shí)施例中,將基色302和索引圖304分 開編碼。為允許更有效的編碼和有可能更高的壓縮率,通過使用結(jié)構(gòu)感知的范例基于多個(gè) 上下文重新映射這些索引值來編碼索引圖304。在下面特別參考圖5、6等進(jìn)一步描述用于 該重新映射的示例上下文和方法。接下來,概括地描述用于文本圖像編碼的方案的示例實(shí)施例。如圖3所示,使用多 個(gè)基色和索引圖在空間域中表示文本塊。該索引圖指示文本塊的結(jié)構(gòu)信息。為分解文本塊, 應(yīng)用顏色量化算法來生成該表示,隨后是進(jìn)行結(jié)構(gòu)感知的上下文自適應(yīng)算術(shù)編碼。關(guān)于顏色量化,通常諸如向量量化和K-均值(K-means)等傳統(tǒng)顏色量化方法被設(shè) 計(jì)成最小化有限數(shù)量的顏色的顯示失真。然而,顏色量化后的圖像的熵可能會高,這使其難 以壓縮。在一示例的描述方法中,壓縮的位數(shù)也在顏色量化期間得到考慮。因?yàn)榛人?引圖所花費(fèi)的位少得多,所以文本塊的熵通常主要取決于索引圖。為減少熵,限制索引圖的 多樣性和無序性。為此,使用兩步量化過程來實(shí)現(xiàn)比率和失真的折衷。作為第一步,執(zhí)行局部量化以將鄰近的相似像素群集到一個(gè)組中。這確?;蛘咧?少增加鄰近像素將會趨向于被量化成相同基色的概率。結(jié)果,減少了相關(guān)聯(lián)的索引圖的無 序性。具體地,給出鄰近像素之間所允許的最大失真,將距離在閾值之下的每個(gè)鄰近像素群 集到同一個(gè)組中,該組由它們的平均值來表示。作為第二步,在局部量化之后將塊進(jìn)一步量化成多個(gè)基色。特別地,同一組中的各 像素被量化成相同的顏色。給定塊的基色的總數(shù)取決于內(nèi)容。并非將每個(gè)塊量化成固定數(shù)量的顏色,而是將所允許的最大失真設(shè)置為一個(gè)常數(shù)。僅作為示例,該常數(shù)可以等于q2/4, 其中q是在H. 264/高級視頻編碼(H. 264/AVC)(即MPEG-4部分10)幀內(nèi)編碼中使用的量化 步長。在該例中,16x16的宏塊的基色數(shù)量可從1至8地變化。在實(shí)踐中,可使用在其中將 每個(gè)像素視為向量的樹結(jié)構(gòu)向量量化(TSVQ)方法。用TSVQ方法,最大失真可以是在TSVQ 中拆分樹的準(zhǔn)則。在一示例實(shí)施例中,關(guān)于文本塊的熵編碼,基色和索引圖可用上下文自適應(yīng)算術(shù)編碼器來壓縮。首先量化基色的YUV分量。索引圖示出許多不同的文本塊之間的相似模式。 使用預(yù)定上下文和預(yù)定義的重新映射來利用這些相似模式以增強(qiáng)壓縮。在編碼索引圖時(shí),以掃描行順序安排這些索引。從要被編碼的索引的鄰近索引值 推斷出匹配該索引的預(yù)定上下文。隨后根據(jù)其匹配的上下文和各鄰近索引將當(dāng)前索引值重 新映射到一個(gè)符號,并且使用該上下文用算術(shù)編碼器編碼該符號。在本文下面特別參考圖 5描述示例預(yù)定上下文,并且在本文下面特別參考圖6來描述示例預(yù)定義映射。圖4是示出用于涉及圖形塊和文本塊的圖像編碼的一般方法的示例的流程圖 400。圖像編碼包括編碼和解碼兩者。流程圖400包括i^一 (11)個(gè)框402-422。在框402, 接受具有圖形部分和文本部分的圖像作為輸入。在框404,將圖像的各塊標(biāo)識為圖形塊或文 本塊。流程圖400的左邊(例如框406和416)與圖形塊有關(guān)。流程圖400的右邊(例如, 框408、410、418和420)與文本塊有關(guān)。在框406,編碼每個(gè)圖形塊。在框408,將每個(gè)文本塊分解成一個(gè)或多個(gè)基色和索 引圖。在框410,使用編碼上下文和重新映射來編碼每個(gè)被分解的文本塊。本文在下面特別 參考圖5描述示例結(jié)構(gòu)感知編碼上下文。本文在下面特別參考圖6描述示例預(yù)定義映射。 在框412,從第一設(shè)備和/或存儲器發(fā)送具有壓縮圖形塊和壓縮文本塊的編碼位流。在框414,在第二設(shè)備和/或存儲器處接收該編碼位流。在框416,解碼壓縮圖形 塊以產(chǎn)生重構(gòu)圖形塊。以壓縮形式接收到的每個(gè)分解文本塊在框418處使用重新映射和編 碼上下文來解碼。在框420,通過將解碼的基色和解碼的索引圖組合成重構(gòu)文本塊來重組每 個(gè)已經(jīng)解碼的分解文本塊。在框422,通過將解碼和重構(gòu)圖形塊與解碼和重構(gòu)文本塊合并來 重構(gòu)原始圖像的一個(gè)版本。在重構(gòu)了圖像的全部或部分之后,可在包括屏幕、打印機(jī)等顯示 設(shè)備上呈現(xiàn)它。圖5是示出按上下文類別組織的用于索引圖編碼的多個(gè)不同示例上下文502的表 格圖500。如所示的,表格圖500包括十五(15)個(gè)預(yù)定上下文502,它們被分成五(5)個(gè)上 下文類別(a)-(e)。這15個(gè)上下文是根據(jù)最接近的鄰近索引(或像素)定義的。一般而 言,四個(gè)相鄰的鄰近索引定義每個(gè)上下文。對于每個(gè)上下文,存在至多四種不同的可能符號或形狀。每種形狀表示一個(gè)鄰近 索引,而不同的形狀指示不同的可能索引值。僅作為示例,所示的符號形狀(或更一般地符 號類型)是圓形,正方形,三角形和六角形。在對應(yīng)于符號的鄰近索引足夠靠近一個(gè)特定 索引時(shí)將它們認(rèn)為是最接近的,使得它們用作該特定索引的顏色/符號的概率預(yù)測器。在一示例實(shí)施例中,這四個(gè)最接近的鄰近索引是相鄰的。這四個(gè)相鄰的鄰近索引 包括沿基本方向(例如,左、右、上或下)的兩個(gè)鄰近索引和沿對角線方向(例如,左上、右 上、左下或右下)的兩個(gè)鄰近索引?;蛘撸蓪ι舷挛氖褂贸膫€(gè)以外的不同數(shù)量的鄰近索 弓丨。更具體地,如所示的這四個(gè)相鄰的鄰近索引包括左索引、左上索引、上索引和右上索引。
左、右、上和下的定義是相對于掃描行模式的并且不必相對于圖像的紋理(盡管 可以這么定義它們)。換言之,正被掃描進(jìn)行編碼的塊的第一行和該掃描的方向分別確定該 塊的上和左-右(或右-左)模式。換言之,對用于上下文的(例如四個(gè))鄰近索引的選 擇可基于在根據(jù)掃描行模式映射特定索引時(shí)知道哪些鄰近索引。任何給定類別(a)-(e)的上下文502各自具有相同數(shù)量的不同顏色索引,如由正 在被重新映射的當(dāng)前索引的鄰近索引所確定的。上下文類別(a)的單個(gè)上下文502具有四 個(gè)相同的鄰近顏色索引。上下文類別(b)的上下文502恰好具有三個(gè)相同的鄰近顏色索引。 上下文類別(b)包括四種不同的上下文502以表示四個(gè)索引的四種可能的位置排列,其中 有且只有一個(gè)索引不同于其它三個(gè)。上下文類別(c)的上下文502具有兩對相同的鄰近顏色索引。上下文類別(c)包 括三種不同的上下文。上下文類別(d)的上下文502恰好具有兩個(gè)相同的鄰近顏色索引。 上下文類別(d)包括六種不同的上下文以表示四個(gè)索引的六種不同位置排列,其中兩個(gè)索 引相互不同并且還與該兩個(gè)相同的索引不同。上下文類別(e)的單個(gè)上下文502沒有相同 的(即四個(gè)不同的)鄰近顏色索引。一般而言,索引圖的由這些符號之一(例如,圓形、正方形、三角形或六角形)表示 的這些索引值被重新映射。執(zhí)行該重新映射是因?yàn)樵谙嗤慕Y(jié)構(gòu)感知的上下文中索引的概 率分布與鄰近索引的真實(shí)值相關(guān)。一般而言,鄰近像素的索引值比其他值具有更高概率來 出現(xiàn)在正在被重新映射的當(dāng)前特定索引中。將具有高概率的索引重新映射到較小的值。將上下文類別(b)的上下文502作為 示例,對應(yīng)于圓形符號的索引值具有最高的出現(xiàn)概率。因此,將該索引值重新映射到0,這在 將文本塊作為整體進(jìn)行壓縮時(shí)使得當(dāng)前索引的壓縮在最后更有效率。定義表格圖500的預(yù) 定上下文502,以使得具有成為當(dāng)前索引的最高概率的基色值基于其結(jié)構(gòu)感知的上下文被 使用符號(例如圓形符號)重新映射為零。在下面特別參考圖6描述用于各上下文類別的 每一個(gè)的示例預(yù)定義上下文映射。表格圖500的上下文502主要適用于內(nèi)部索引。更具體地,它們不適用于頂行或 外側(cè)的列(例如,最左邊和最右邊的列)。然而,其它上下文可應(yīng)用于其鄰近索引至少部分 不可用的邊界索引。這些(例如二十二個(gè))其它上下文可用于類似地編碼邊界索引。圖6是示出按符號的多個(gè)不同索引映射602的表格圖600,其中這些映射是按上下 文類別組織的。表格圖600的五(5)個(gè)上下文類別(a)-(e)分別對應(yīng)于(圖5的)表格圖 500的五個(gè)上下文類別(a)-(e)。每個(gè)上下文類別包括將給定符號映射到其相關(guān)聯(lián)的索引 值的至少一個(gè)索引映射602。這些符號到索引值映射用于基于匹配當(dāng)前索引的預(yù)定上下文 502來重新映射當(dāng)前索引。在一示例實(shí)施例中,表格圖500的上下文502得到仔細(xì)地安排,使得對于五個(gè)上下 文類別(a)-(e)中的任何一個(gè)的相同符號映射到相同的索引值。(然而,每個(gè)上下文502的 符號可不同地安排。)在表格圖600中顯而易見的是,對于上下文類別(a)-(e)中的每一 個(gè),圓形符號映射到索引值=0。當(dāng)存在時(shí),對于上下文類別(b)-(d)中的每一個(gè),正方形符 號映射到索引值=1。同樣,對于上下文類別⑷和(e)中的每一個(gè),三角形符號映射到索 引值=2,并且對于上下文類別(e)六角形映射到索引值=3。圖7是示出用于分別使用圖5和圖6的預(yù)定上下文502和預(yù)定義符號映射602進(jìn)行文本圖像編碼的方法的示例的流程圖700。流程圖700包括四(4)個(gè)框702-708。在框 702,查明索引圖的當(dāng)前索引的一組鄰近索引值。例如,可從索引圖304查明與當(dāng)前索引相 鄰的并且位于左、左上、上和右上位置處的四個(gè)鄰近索引值。在框704處,從多個(gè)預(yù)定上下文中生成匹配該組鄰近索引值的上下文,該匹配的 上下文包括一組符號。例如,如果存在三個(gè)相同的鄰近顏色索引,則(圖5的)具有四個(gè)符 號(其中三個(gè)相同)的預(yù)定上下文502可從上下文類別(b)中生成以匹配所查明的鄰近索 引組。為進(jìn)一步闡明所述實(shí)施例的某些原理,提供一個(gè)特定的像素顏色示例。對于此例, 假定當(dāng)前索引的鄰近索引左索引為深藍(lán),左上索引為黑,上索引為深藍(lán),以及右上索引為深 藍(lán)。這對應(yīng)于上下文類別(b)中的左邊第二個(gè)上下文502。因此圓形符號對應(yīng)于深藍(lán)像素 顏色,并且因此正方形符號對應(yīng)于黑像素顏色。
在框706,基于匹配上下文確定符號到值的映射,該符號到值的映射包括從相應(yīng)符 號到相應(yīng)值的至少一個(gè)映射。例如,參考(圖6的)上下文類別(b)的索引映射602。對于 深藍(lán)像素顏色,圓形符號被映射到0,且對于黑像素顏色,正方形符號被映射到1。在框708,根據(jù)符號到值的映射中的哪一個(gè)符號對應(yīng)于當(dāng)前索引,將當(dāng)前索引重新 映射到一個(gè)值。例如,如果當(dāng)前索引是深藍(lán)且因而對應(yīng)于圓形符號,則使用索引映射602將 當(dāng)前索引重新映射到值0。如果當(dāng)前索引是黑且因而對應(yīng)于正方形符號,則將當(dāng)前索引重新 映射到值1。如果當(dāng)前索引不匹配鄰近索引值組中這些顏色之一(即,如果當(dāng)前索引的顏色 既不是深藍(lán)也不是黑),則當(dāng)前索引的值不會被重新映射改變。圖8是可實(shí)現(xiàn)文本圖像編碼的示例圖像編碼器800的框圖。圖像編碼器800可體 現(xiàn)為軟件、固件、硬件、固定邏輯電路、它們的某種組合等等。在左邊的塊標(biāo)識開關(guān)802處輸 入圖像,并且從在右邊的多路復(fù)用器820輸出壓縮圖像位流(例如,并且被通信傳送到至圖 9的圖像解碼器900)。僅作為示例,圖像編碼器800可實(shí)現(xiàn)經(jīng)修改的H. 264/AVC幀內(nèi)編碼 方案的編碼側(cè)。修改H. 264/AVC幀內(nèi)編碼方案,以便使用此處所述的結(jié)構(gòu)感知的上下文和 索引映射來標(biāo)識并編碼文本塊。如所示的,圖像解碼器800 —般包括面向圖形的組件804-808和面向文本的組件 810-818。更具體地,圖像編碼器800包括塊標(biāo)識開關(guān)802、離散余弦變換器(DCT)804、量化 器806、熵編碼器808和多路復(fù)用器820。圖像編碼器800還包括顏色量化器810、算術(shù)編碼 器812、上下文自適應(yīng)算術(shù)編碼器814、上下文生成器/索引重新映射器816和多路復(fù)用器 818。在一示例實(shí)施例的操作中,將圖像輸入到塊標(biāo)識開關(guān)802。塊標(biāo)識開關(guān)802區(qū)分圖 形塊和文本塊。將圖形塊轉(zhuǎn)送到DCT 804,并且將文本塊轉(zhuǎn)送到顏色量化器810。DCT 804、 量化器806和熵編碼器808能以本領(lǐng)域已知的方式(例如根據(jù)H. 264/AVC)運(yùn)行以編碼圖 形塊。例如,DCT 804可將離散余弦變換應(yīng)用于圖形塊。量化器806量化DCT系數(shù),并且熵 編碼器808編碼經(jīng)量化的DCT系統(tǒng)。另外,可另選地使用非熵編碼。熵編碼器808輸出壓 縮圖形位流。顏色量化器/分解器810從塊標(biāo)識開關(guān)802接受文本塊作為輸入。顏色量化器 810執(zhí)行在上文針對兩步量化過程所描述的步驟中的一個(gè)或兩個(gè)。即,顏色量化器810執(zhí)行 局部量化以分組鄰近像素。顏色量化器810還將分組像素的顏色量化成基色。之后,顏色 量化器/分解器810將經(jīng)顏色量化的文本塊分解成基色和索引圖。顏色量化器810輸出基色和作為索引圖的顏色索引。算術(shù)編碼器812從顏色量化器810接受這些基色作為輸入并且編碼它們以壓縮它 們的數(shù)據(jù)大小。另外,可另選地使用非算術(shù)編碼方案。算術(shù)編碼器812輸出壓縮基色作為 位流并且將它們轉(zhuǎn)送至多路復(fù)用器818。 上下文自適應(yīng)算術(shù)編碼器814從顏色量化器810接受具有顏色索引的索引圖作為 輸入。在上下文自適應(yīng)算術(shù)編碼器814編碼索引圖之前,上下文生成器/索引重新映射器 816重新映射其顏色索引。上下文生成器/索引重新映射器816有權(quán)訪問鄰近編碼像素。 例如,上下文生成器/索引重新映射器816可直接查明鄰近編碼像素。或者,可由另一個(gè)組 件(例如,顏色量化器810和/或上下文自適應(yīng)算術(shù)編碼器814等)查明鄰近編碼像素并 且將它們提供給上下文生成器/索引重新映射器816。參考(圖5的)表格圖500,上下文生成器/索引重新映射器816的上下文生成器 生成匹配所查明的鄰近像素的上下文502。所生成的上下文502包括一個(gè)或多個(gè)符號并且 屬于相關(guān)聯(lián)的上下文類別(a)-(e)。參考(圖6的)表格圖600,確定與同一上下文類別相 關(guān)聯(lián)的索引映射602。上下文生成器/索引重新映射器816的索引重新映射器隨后使用所 確定的索引映射602根據(jù)該索引圖的每個(gè)特定像素對應(yīng)的符號重新映射該特定像素。在重新映射了索引圖的每個(gè)索引像素之后,上下文自適應(yīng)算術(shù)編碼器814使用算 術(shù)編碼方案編碼該重新映射的索引圖?;蛘撸墒褂梅撬阈g(shù)的上下文自適應(yīng)編碼器。將編 碼基色從算術(shù)編碼器812提供給多路復(fù)用器818,并且將編碼(且重新映射)的索引圖從上 下文自適應(yīng)算術(shù)編碼器814提供給多路復(fù)用器818。多路復(fù)用器818將編碼基色和編碼索 引圖組合成壓縮文本位流。多路復(fù)用器820從熵編碼器808接收壓縮圖形位流并從多路復(fù)用器818接收壓縮 文本位流。多路復(fù)用器820組合各壓縮位流并且將組合的壓縮位流轉(zhuǎn)送到存儲器以用于存 儲、轉(zhuǎn)送到網(wǎng)絡(luò)以用于傳輸?shù)鹊?。或者,可分開傳遞壓縮圖形和文本位流。圖9是可實(shí)現(xiàn)文本圖像解碼的示例圖像解碼器900的框圖。圖像解碼器900可體 現(xiàn)為軟件、固件、硬件、固定邏輯電路、它們的某種組合等等。一般而言,在左邊的多路分解 器902處輸入壓縮圖像位流(例如,來自圖8的圖像編碼器800),并且在右邊從重構(gòu)器920 輸出重構(gòu)圖像。僅作為示例,圖像解碼器900可實(shí)現(xiàn)經(jīng)修改的H. 264/AVC幀內(nèi)編碼方案的解 碼側(cè)。修改H. 264/AVC幀內(nèi)編碼方案,以使得文本塊與圖形塊分開地進(jìn)行標(biāo)識和解碼。文 本塊是使用本文所述的結(jié)構(gòu)感知的上下文和索引映射來解碼的。如所示的,圖像解碼器900包括多路分解器902和圖像重構(gòu)器920。一般而言,圖 像解碼器900包括面向圖形的組件904-908和面向文本的組件910-918。面向圖形的組件 包括熵解碼器904、解量化器906和逆DCT 908。面向文本的組件包括多路分解器910、算術(shù) 解碼器912、上下文自適應(yīng)算術(shù)解碼器914、上下文生成器/索引重新映射器916和重組器 918。在一示例實(shí)施例的操作中,將組合的壓縮位流輸入到多路分解器902。多路分解器 902區(qū)分具有圖形塊的壓縮圖形位流和具有文本塊的壓縮文本位流。將圖形位流的圖形塊 轉(zhuǎn)送到熵解碼器904,并將文本位流的文本塊轉(zhuǎn)送到多路分解器910。熵解碼器904、解量化器906和逆DCT 908能以本領(lǐng)域已知的方式(例如根據(jù) H. 264/AVC)運(yùn)行以從圖形位流解碼圖形塊。例如,可由熵解碼器904解碼壓縮圖形位流。另外,可另選地使用非熵解碼。由解量化器906解量化解碼圖形位流,并且用逆DCT 908將 解量化的圖形數(shù)據(jù)轉(zhuǎn)換回空間域以產(chǎn)生解碼圖形塊。將解碼圖形塊轉(zhuǎn)送到重構(gòu)器920。
多路分解器910從多路分解器902接受具有文本塊的壓縮文本位流作為輸入。多 路分解器910從索引圖的顏色索引中分離出基色并且將它們分開輸出。將各基色轉(zhuǎn)送到算 術(shù)解碼器912。算術(shù)解碼器912解碼這些基色。另外,可另選地使用非算術(shù)的解碼方案。將 解碼基色轉(zhuǎn)送到重組器918。上下文生成器/索引重新映射器916有權(quán)訪問特定像素的鄰近解碼像素。這些鄰 近解碼像素可由上下文生成器/索引重新映射器916直接查明,或者它們可由一個(gè)或多個(gè) 其它組件(例如,多路分解器910、上下文自適應(yīng)算術(shù)解碼器914等)查明并且被提供給上 下文生成器/索引重新映射器916。上下文生成器/索引重新映射器916的上下文生成器 從多個(gè)預(yù)定上下文502中生成匹配這些鄰近解碼像素的上下文。如在(圖5的)表格圖 500中所示,所生成的上下文是一組符號。上下文生成器/索引重新映射器916的索引重新映射器基于所生成的上下文使用 (圖6的)表格圖600確定符號到值的映射602。符號到值的映射包括從相應(yīng)符號到相應(yīng) 值的至少一個(gè)映射。索引重新映射器還根椐符號到值的映射中的哪個(gè)符號對應(yīng)于特定像素 來將該特定像素重新映射到特定值。上下文生成器/索引重新映射器916隨后輸出該特定 像素的特定值。對于索引圖的每個(gè)像素重復(fù)該過程。上下文自適應(yīng)算術(shù)解碼器914從多路分解器910接受多個(gè)顏色索引并且從上下文 生成器/索引重新映射器916接受每個(gè)特定像素的每個(gè)重新映射值。上下文自適應(yīng)算術(shù) 解碼器914使用多個(gè)顏色索引和該特定像素的特定值解碼索引圖。例如,上下文自適應(yīng)算 術(shù)解碼器914可逐像素地解碼壓縮索引圖,同時(shí)由上下文生成器/索引重新映射器916重 新映射解壓索引圖。另外,可另選地使用非算術(shù)的解碼方案。應(yīng)當(dāng)理解,在上下文自適應(yīng)算 術(shù)解碼器914用適當(dāng)?shù)慕獯a方案解壓了索引之后,上下文生成器/索引重新映射器916的 索引重新映射器重新映射該解壓索引。隨后使用該重新映射索引來解壓另一個(gè)(例如下一 個(gè))索引,因?yàn)楫?dāng)前索引的解壓涉及使用解碼的鄰近索引。上下文自適應(yīng)算術(shù)解碼器914 將解碼索引圖轉(zhuǎn)送至重組器918。重組器918從算術(shù)解碼器912接受解碼基色并從上下文自適應(yīng)算術(shù)解碼器914接 受解碼索引圖并且將它們組合起來以重組文本塊。重組器918將重組文本塊轉(zhuǎn)送至重構(gòu)器 920。因此,重構(gòu)器920從逆DCT 908接收解碼圖形塊并且從重組器918接收解碼文本塊。 重構(gòu)器920通過組合圖形塊和文本塊來重構(gòu)圖像。圖10是示出用于對文本塊進(jìn)行編碼的方法的示例的流程圖。流程圖1000包括 i^一 (11)個(gè)框1002-1022。在框1002,將文本塊輸入到編碼過程。在框1004,量化文本塊 的顏色以減少包含在該文本塊中的不同顏色的總數(shù)。例如,可將上述兩步量化過程的一個(gè) 或兩個(gè)步驟應(yīng)用于文本塊???006和1012用于分解文本塊。在框1006,查明量化文本塊的基色。在框1012, 響應(yīng)于所查明的基色構(gòu)建文本塊的索引圖。框1008和1010與基色有關(guān)。在框1008,(例 如用算術(shù)方法)編碼各基色。在框1010,通信傳送(例如發(fā)送)文本塊的編碼基色。框1014-1018與索引圖的索引的編碼(包括重新映射)有關(guān)。在框1014,對于索 引圖的一特定索引,基于最接近該特定索引的一個(gè)或多個(gè)鄰近索引值并參考一組預(yù)定上下文(例如圖5的表格圖500的上下文)來生成匹配的編碼上下文。在框1016,響應(yīng)于與該特定索引相對應(yīng)并被包括在所生成的編碼上下文中的符 號,基于預(yù)定義的映射(例如圖6的表格圖600的映射)重新映射該特定索引的值。如果預(yù) 定義的映射隨著上下文類別變化,則可響應(yīng)于與所生成的對應(yīng)于該特定索引的編碼上下文 相關(guān)聯(lián)的上下文類別來執(zhí)行該特定索引的重新映射,其中該上下文類別包括一個(gè)或多個(gè)索 引映射。每個(gè)索引映射將符號映射到值,其中該特定索引對應(yīng)于這些符號之一。在框1018, 對于索引圖的每個(gè)索引重復(fù)框1014和1016的動(dòng)作以將該索引圖轉(zhuǎn)換成重新映射的索引 圖。
在框1020,(例如用算術(shù)方法)編碼經(jīng)轉(zhuǎn)換的索引圖。在框1022,通信傳送(例 如發(fā)送)文本塊的編碼索引圖。圖11是示出用于對文本塊進(jìn)行解碼的方法的示例的流程圖1100。流程圖1100包 括九(9)個(gè)框1102-1108。框1102-1104與解碼基色有關(guān),并且框1106-1114與解碼索引圖 有關(guān)。在框1102,接收編碼基色。在框1104,(例如用算術(shù)方法)解碼編碼基色。在框1106,接收編碼索引圖。在框1108,(例如用算術(shù)方法)解碼編碼索引圖。在 框1110,對于解碼索引圖的一個(gè)特定索引,參考一組預(yù)定上下文(例如圖5的表格圖500的 上下文)并且基于最接近該特定索引的一個(gè)或多個(gè)鄰近索引值來生成匹配的編碼上下文。在框1112,響應(yīng)于與該特定索引相對應(yīng)并且被包括在該匹配的編碼上下文中的符 號,基于預(yù)定義的索引映射(例如圖6的表格圖600的映射)重新映射該特定索引的值。每 個(gè)索引映射將符號映射到值,其中該特定索引對應(yīng)于索引映射的各符號之一。在框1114,對 于索引圖的每個(gè)索引重復(fù)框1110和1112的動(dòng)作以再現(xiàn)該索引圖。在框1116,組合解碼基色和解碼且重新映射的索引圖以重組文本塊。在框1118, 輸出重構(gòu)文本塊。在附圖中,圖4、7、10和11分別是流程圖400、700、1000和1100。例如, 這些流程圖的實(shí)現(xiàn)可被實(shí)現(xiàn)為處理器可執(zhí)行指令。處理器可執(zhí)行指令可體現(xiàn)為軟件、固件、 硬件、固定邏輯電路、它們的某種組件等等。這些流程圖的動(dòng)作可在許多不同環(huán)境中、通過 多種不同設(shè)備、和/或結(jié)合各種各樣的不同編碼標(biāo)準(zhǔn)來執(zhí)行。因此,盡管某些框的描述及其 動(dòng)作參考了本文所述的其它元素,但它們僅作為示例才這樣做的。描述這些方法的次序不 旨在被解釋為限制,并且可以組合、增加、重新排列和/或省略任何數(shù)量的所述框以實(shí)現(xiàn)相 應(yīng)的方法、或者實(shí)現(xiàn)與其等效的替換方法。用于文本圖像編碼的示例設(shè)備實(shí)現(xiàn)圖12是可用于實(shí)現(xiàn)文本圖像編碼的示例設(shè)備1202的框圖1200。如所示的,兩個(gè) 設(shè)備1202(1)和1202(d)能夠經(jīng)由網(wǎng)絡(luò)1214參與通信,其中“d”表示整數(shù)。盡管兩個(gè)設(shè)備 1202是明確示出的,但可根據(jù)實(shí)現(xiàn)使用一個(gè)或多于兩個(gè)設(shè)備1202。作為示例而非限制,網(wǎng) 絡(luò)1214可以是因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、以太網(wǎng)、公用網(wǎng)絡(luò)、專用網(wǎng)絡(luò)、電纜網(wǎng)絡(luò)、數(shù)字訂戶線(DSL) 網(wǎng)絡(luò)、電話網(wǎng)絡(luò)、光纖網(wǎng)絡(luò)、網(wǎng)格計(jì)算機(jī)網(wǎng)絡(luò)、連接至這樣的網(wǎng)絡(luò)的途徑、無線網(wǎng)絡(luò)、網(wǎng)狀網(wǎng) 絡(luò)、它們的某種組合等等?;蛘撸芍苯舆B接兩個(gè)設(shè)備1202。一般而言,設(shè)備1202可表示任何計(jì)算機(jī)或具有處理能力的設(shè)備,諸如服務(wù)器、臺 式、筆記本等計(jì)算機(jī);工作站或其他通用計(jì)算機(jī)設(shè)備;數(shù)據(jù)存儲倉庫裝置;個(gè)人數(shù)字助理 (PDA);移動(dòng)電話;游戲平臺;娛樂設(shè)備;路由器計(jì)算節(jié)點(diǎn);網(wǎng)狀或其它網(wǎng)絡(luò)節(jié)點(diǎn);無線接入 點(diǎn);它們的某種組合;等等。如所示的,設(shè)備1202包括一個(gè)或多個(gè)輸入/輸出(I/O)接口1204、 至少一個(gè)處理器1206和一個(gè)或多個(gè)介質(zhì)1208。介質(zhì)1208包括處理器可執(zhí)行指令 1210。在設(shè)備1202的一示例實(shí)施例中,I/O接口 1204可包括(i)用于跨網(wǎng)絡(luò)1214通信 的網(wǎng)絡(luò)接口,(ii)用于在顯示屏幕上顯示信息的顯示設(shè)備接口,(iii) 一個(gè)或多個(gè)人類設(shè) 備接口,等等。(i)網(wǎng)絡(luò)接口的示例包括網(wǎng)卡、調(diào)制解調(diào)器、一個(gè)或多個(gè)端口、網(wǎng)絡(luò)通信棧、無 線電等等。( )顯示設(shè)備接口的示例包括圖形驅(qū)動(dòng)程序、圖形卡、屏幕或監(jiān)視器的硬件或軟 件驅(qū)動(dòng)程序等等。(iii)人類設(shè)備接口的示例包括通過有線或者無線地通信傳送至人類設(shè) 備接口組件1212的那些接口(例如,鍵盤、遙控器、鼠標(biāo)或其它圖形定點(diǎn)設(shè)備等)。一般而言,處理器1206能夠執(zhí)行、完成和/或以其它方式實(shí)現(xiàn)處理器可執(zhí)行指令, 如處理器可執(zhí)行指令1210。介質(zhì)1208包括一個(gè)或多個(gè)處理器可訪問介質(zhì)。換言之,介質(zhì) 1208可包括可由處理器1206執(zhí)行以使設(shè)備1202完成功能執(zhí)行的處理器可執(zhí)行指令1210。 處理器可執(zhí)行指令可體現(xiàn)為軟件、固件、硬件、固定邏輯電路、它們的某種組件等等。因而,可在處理器可執(zhí)行指令的一般上下文中描述文本圖像編碼的實(shí)現(xiàn)。一般而 言,處理器可執(zhí)行指令包括執(zhí)行和/或啟用特定任務(wù)和/或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、 程序、應(yīng)用程序、編碼、模塊、協(xié)議、對象、組件、元數(shù)據(jù)及其定義、圖像數(shù)據(jù)結(jié)構(gòu)、面向上下文 和映射的數(shù)據(jù)結(jié)構(gòu)、其它數(shù)據(jù)結(jié)構(gòu)、應(yīng)用編程接口(API)等等。處理器可執(zhí)行指令可位于分 開的存儲介質(zhì)中,由不同的處理器執(zhí)行,和/或通過各種傳輸介質(zhì)傳播或存在??墒褂萌魏慰蓱?yīng)用的具有處理能力的技術(shù)實(shí)現(xiàn)處理器1206,并且可以將它實(shí)現(xiàn)為 通用處理器(例如中央處理單元(CPU)、微處理器、控制器等)、圖形處理單元(GPU)、專用 或特殊用途處理器、其派生物等等。介質(zhì)1208可以是作為設(shè)備1202的一部分被包括的和 /或可由設(shè)備1202訪問的任何可用介質(zhì)。它包括易失性和非易失性介質(zhì)、可移動(dòng)和不可移 動(dòng)介質(zhì)、存儲和傳輸介質(zhì)(例如無線或有線通信信道)、硬編碼邏輯介質(zhì)、它們的組合等等。 介質(zhì)1208在體現(xiàn)為制品和/或合成物時(shí)是有形介質(zhì)。例如,介質(zhì)1208可包括用作處理器可 執(zhí)行指令1210的長期大容量存儲的盤或閃存陣列、用作當(dāng)前正在執(zhí)行和/或以其它方式處 理的指令的短期存儲的隨機(jī)存取存儲器(RAM)、網(wǎng)絡(luò)1214上的用于傳輸通信的鏈路等等。如明確所示的,介質(zhì)1208至少包括處理器可執(zhí)行指令1210。一般而言,處理器可 執(zhí)行指令1210在由處理器1206執(zhí)行時(shí)使設(shè)備1202能夠執(zhí)行本文所述的各種功能。這些 功能包括但不限于(i)在(分別在圖4、7、10和11的)流程圖400、700、1000和1100中 所示的那些動(dòng)作;(ii)在圖1-3的不同地描述的過程、場景等中所示的那些動(dòng)作;(iii)由 圖8和9的編碼器800和解碼器900分別實(shí)現(xiàn)的那些動(dòng)作;(iv)分別涉及圖5和6的上下 文502和映射602的那些動(dòng)作;本文所述的其它算法的那些動(dòng)作;它們的組合;等等。在劃分成多個(gè)框或其它元素的各附圖中示出了圖1-12的設(shè)備、動(dòng)作、方面、特征、 功能、過程、模塊、數(shù)據(jù)結(jié)構(gòu)、技術(shù)、組件等等。然而,描述和/或示出圖1-12的次序、互連、相 互關(guān)系、布局等不旨在被解釋為限制,并且能以實(shí)現(xiàn)用于文本圖像編碼的一個(gè)或多個(gè)系統(tǒng)、 方法、設(shè)備、過程、介質(zhì)、裝置、安排等的任何方式來修改、組合、重新安排、增加、省略任何數(shù) 量的框和/或其它元素。盡管已經(jīng)以專用于結(jié)構(gòu)、邏輯、算法和功能特征和/或附圖的語言描述了系統(tǒng)、介 質(zhì)、設(shè)備、方法、過程、裝置、機(jī)制、方案、方式、進(jìn)程、安排和其它示例實(shí)施例,但可以理解,在 所附權(quán)利要求書中定義的發(fā)明不必受限于上述這些具體特征或動(dòng)作。相反,上述這些具體特征和動(dòng)作是作為實(shí)現(xiàn)所要求保護(hù)的發(fā)明的示例形式而公開的.
權(quán)利要求
一個(gè)或多個(gè)包含處理器可執(zhí)行指令的處理器可訪問有形介質(zhì),當(dāng)所述處理器可執(zhí)行指令被執(zhí)行時(shí)指示設(shè)備執(zhí)行下列動(dòng)作從圖像的多個(gè)塊中標(biāo)識文本塊;以及通過對每個(gè)文本塊實(shí)現(xiàn)下列動(dòng)作來壓縮所述文本塊將所述文本塊分解成基色和索引圖,所述索引圖具有多個(gè)索引值,每個(gè)索引值參考一基色以表示文本塊的至少一部分;通過對所述索引圖的所述多個(gè)索引值的至少一部分實(shí)現(xiàn)下列動(dòng)作來轉(zhuǎn)換所述索引圖基于所述索引圖中最接近所述索引值的一個(gè)或多個(gè)其它索引值并且參考一組預(yù)定上下文來生成匹配所述索引值的編碼上下文;以及響應(yīng)于與所述索引值相對應(yīng)并且被包括在所述匹配的編碼上下文中的符號,重新映射所述索引值;以及編碼所述經(jīng)轉(zhuǎn)換的索引圖以產(chǎn)生壓縮索引圖。
2.如權(quán)利要求1所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述壓縮動(dòng)作還 包括下列動(dòng)作編碼每個(gè)文本塊的基色;發(fā)送所述編碼基色和所述壓縮索引圖作為位流的一部分。
3.如權(quán)利要求2所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,包括各處理器可 執(zhí)行指令,當(dāng)所述處理器可執(zhí)行指令被執(zhí)行時(shí)指示所述設(shè)備執(zhí)行下列其他動(dòng)作從所述圖像的所述多個(gè)塊中標(biāo)識圖形塊; 使用預(yù)定圖像壓縮算法來編碼所述圖形塊;以及 發(fā)送所述編碼圖形塊作為所述位流的一部分。
4.如權(quán)利要求3所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述預(yù)定圖像壓 縮算法與H. 264/高級視頻編碼(H. 264/AVC)標(biāo)準(zhǔn)一致。
5.如權(quán)利要求1所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于 所述匹配的編碼上下文包括多個(gè)符號;所述生成動(dòng)作包括基于所述匹配的編碼上下文為所述一個(gè)或多個(gè)其它索引值的每個(gè) 索引值建立索引值到符號的對應(yīng)關(guān)系;以及所述重新映射動(dòng)作包括(i)使用所建立的索引值到符號的對應(yīng)關(guān)系來確定對應(yīng)于所 述索引值的符號,以及(ii)用來自索引映射的所述映射索引值代替所述索引值,所述索引 映射將對應(yīng)于所述索引值的符號映射到所述映射索引值。
6.一個(gè)或多個(gè)包含處理器可執(zhí)行指令的處理器可訪問有形介質(zhì),當(dāng)所述處理器可執(zhí)行 指令被執(zhí)行時(shí)指示設(shè)備執(zhí)行下列動(dòng)作查明索引圖的特定索引的一組鄰近索引值,所述索引圖具有各個(gè)索引值,每一索引值 參考多個(gè)基色中的一個(gè)基色以表示文本塊的至少一部分;從多個(gè)預(yù)定上下文中生成匹配所述鄰近索引值組的上下文,所述匹配上下文包括一組 符號;基于所述匹配上下文和所述特定索引所對應(yīng)的符號來確定至少一個(gè)符號到值的映射, 所述符號到值的映射包括從相應(yīng)符號到相應(yīng)值的至少一個(gè)映射;以及根據(jù)所述符號到值的映射和所述特定索引所對應(yīng)的符號來將所述特定索引重新映射 到特定值。
7.如權(quán)利要求6所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,包括各處理器可 執(zhí)行指令,當(dāng)所述處理器可執(zhí)行指令被執(zhí)行時(shí)指示所述設(shè)備執(zhí)行下列其他動(dòng)作將所述文本塊分解成所述多個(gè)基色和所述索引圖;對所述索引圖的每個(gè)索引值重復(fù)所述查明、生成、確定、和重新映射的動(dòng)作以產(chǎn)生經(jīng)轉(zhuǎn) 換的索引圖;以及編碼所述經(jīng)轉(zhuǎn)換的索引圖以壓縮所述經(jīng)轉(zhuǎn)換的索引圖的大小。
8.如權(quán)利要求6所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,包括各處理器可 執(zhí)行指令,當(dāng)所述處理器可執(zhí)行指令被執(zhí)行時(shí)指示所述設(shè)備執(zhí)行下列其他動(dòng)作解碼所述多個(gè)基色;解碼所述索引圖;對所述索引圖的每個(gè)索引值重復(fù)所述查明、生成、確定和重新映射的動(dòng)作以產(chǎn)生重新 映射的索引圖;以及組合所述多個(gè)基色和所述重新映射的索引圖以重組所述文本塊。
9.如權(quán)利要求6所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述多個(gè)預(yù)定上 下文中的每一個(gè)包括一種或多種符號類型的四個(gè)符號,每種相應(yīng)的符號類型與由所述鄰近 索引值組所建立的相應(yīng)基色相對應(yīng)。
10.如權(quán)利要求9所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述多個(gè)預(yù)定上 下文包括至少一個(gè)具有四個(gè)相同的鄰近顏色索引的上下文,至少一個(gè)恰好具有三個(gè)相同 的鄰近顏色索引的上下文,至少一個(gè)具有兩對相同的鄰近顏色索引的上下文,至少一個(gè)恰 好具有兩個(gè)相同的鄰近顏色索引的上下文,以及至少一個(gè)沒有相同的鄰近顏色索引的上下 文。
11.如權(quán)利要求9所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述鄰近索引值 組包括與所述特定索引相鄰的索引值。
12.如權(quán)利要求6所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述多個(gè)預(yù)定上 下文中的每一個(gè)包括四個(gè)符號,其中的兩個(gè)符號沿著相對于所述特定索引的至少一個(gè)基本 方向,并且其中的兩個(gè)符號沿著相對于所述特定索引的至少一個(gè)對角線方向。
13.如權(quán)利要求12所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述四個(gè)符號 包括左符號、左上符號、上符號和右上符號;所述左、左上、上和右上是相對于所述特定索引 定義的。
14.如權(quán)利要求6所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,包括各處理器可 執(zhí)行指令,當(dāng)所述處理器可執(zhí)行指令被執(zhí)行時(shí),指示所述設(shè)備執(zhí)行下列其他動(dòng)作量化所述文本塊的顏色以減少所述文本塊的熵水平;以及在所述量化動(dòng)作之后,將所述文本塊分解成所述多個(gè)基色和所述索引圖。
15.如權(quán)利要求14所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述量化動(dòng)作 包括下面的動(dòng)作將鄰近相似像素群集到各組中以在局部水平上執(zhí)行量化。
16.如權(quán)利要求15所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述量化動(dòng)作還包括下面的動(dòng)作將每個(gè)組中的像素量化成所述多個(gè)基色之一。
17.如權(quán)利要求16所述的一個(gè)或多個(gè)處理器可訪問介質(zhì),其特征在于,所述量化動(dòng)作 還包括下面的動(dòng)作通過將所允許的最大失真設(shè)置為常數(shù),根據(jù)所述文本塊的內(nèi)容來限制所述多個(gè)基色的 總數(shù)。
18.一種設(shè)備,包括多路分解器,所述多路分解器用于接受具有至少一個(gè)文本塊的文本位流并且用于輸出 各基色和具有多個(gè)編碼索引值的索引圖,所述各基色和所述索引圖表示所述文本塊;上下文自適應(yīng)解碼器,所述上下文自適應(yīng)解碼器用于從所述多路分解器接受所述索弓I 圖并用于解碼所述索引圖以產(chǎn)生多個(gè)索引值和解碼的像素;上下文生成器和索引重新映射器,所述上下文生成器和索引重新映射器有權(quán)訪問所述 文本塊的每個(gè)特定索引值的鄰近解碼像素;所述上下文生成器從多個(gè)預(yù)定上下文中生成匹 配所述鄰近解碼像素的上下文,所述匹配的上下文包括一組符號;所述索引重新映射器用 于基于所述匹配的上下文來確定至少一個(gè)符號到值的映射,所述符號到值的映射包括從相 應(yīng)符號到相應(yīng)值的映射;所述索引重新映射器還用于根據(jù)所述符號到值的映射中的哪個(gè)符 號對應(yīng)于一特定索引值來將所述特定索引值重新映射到一特定值;所述上下文生成器和所 述索引重新映射器用于輸出所述特定索引值的所述特定值;以及其中,所述上下文自適應(yīng)解碼器用于從所述上下文生成器和所述索引重新映射器接受 所述特定值作為所述特定索引值的解碼像素。
19.如權(quán)利要求18所述的設(shè)備,其特征在于,還包括解碼器,所述解碼器用于從所述多路分解器接受所述基色并且用于解碼所述基色以產(chǎn) 生解碼基色;以及重組器,所述重組器用于從所述解碼器接受所述解碼基色和從所述上下文自適應(yīng)解碼 器接受所述解碼像素,所述重組器用于組合所述解碼基色和所述解碼像素以重組所述文本 塊來產(chǎn)生重構(gòu)文本塊。
20.如權(quán)利要求19所述的設(shè)備,其特征在于,還包括另一個(gè)多路分解器,所述另一個(gè)多路分解器用于接收組合的位流并且用于輸出具有所 述至少一個(gè)文本塊的文本位流和具有至少一個(gè)圖形塊的圖形位流;熵解碼器,所述熵解碼器用于從所述另一個(gè)多路分解器接受所述圖形位流并且用于解 碼所述圖形塊以產(chǎn)生解碼圖形塊;解量化器,所述解量化器用于解量化所述解碼圖形塊以產(chǎn)生解量化圖形塊; 逆變換器,所述逆變換器用于變換所述解量化圖形塊以產(chǎn)生重構(gòu)圖形塊;以及 重構(gòu)器,所述重構(gòu)器用于從所述重構(gòu)文本塊和所述重構(gòu)圖形塊重構(gòu)復(fù)合圖像的至少一 部分。
全文摘要
文本圖像編碼涉及編碼圖像的文本部分。在一示例實(shí)施例中,將圖像的文本塊分解成多個(gè)基色和索引圖,該索引圖具有各個(gè)索引值,每一索引值參考一基色以表示該文本塊。查明該索引圖的一特定索引的一組鄰近索引值。從多個(gè)上下文中生成匹配這些鄰近索引值的上下文。該匹配上下文包括一組符號?;谠撈ヅ渖舷挛暮驮撎囟ㄋ饕鶎?yīng)的符號確定至少一個(gè)符號到值的映射。根據(jù)該符號到值的映射和該特定索引所對應(yīng)的符號將該特定索引重新映射到特定值。
文檔編號H04N7/24GK101816177SQ200880107027
公開日2010年8月25日 申請日期2008年9月12日 優(yōu)先權(quán)日2007年9月13日
發(fā)明者F·吳, S·李, W·丁, Y·魯 申請人:微軟公司