編碼器設(shè)備、解碼器設(shè)備和方法
【技術(shù)領(lǐng)域】
[0001] 本公開設(shè)及用于對(duì)接收到的數(shù)據(jù)進(jìn)行編碼W產(chǎn)生相應(yīng)編碼數(shù)據(jù)的編碼器設(shè)備。此 夕F,本公開還設(shè)及用于對(duì)數(shù)據(jù)進(jìn)行編碼W產(chǎn)生相應(yīng)編碼數(shù)據(jù)的方法。此外,本公開設(shè)及用于 對(duì)接收到的編碼數(shù)據(jù)進(jìn)行解碼W產(chǎn)生相應(yīng)解碼數(shù)據(jù)的解碼器設(shè)備。此外,本公開設(shè)及用于 對(duì)編碼數(shù)據(jù)進(jìn)行解碼W產(chǎn)生相應(yīng)解碼數(shù)據(jù)的方法。本公開還設(shè)及包括一個(gè)或多個(gè)上述編碼 器設(shè)備與一個(gè)或多個(gè)上述解碼器設(shè)備的組合的編解碼器。此外,本公開設(shè)及記錄在非瞬態(tài) (非瞬時(shí))機(jī)器可讀數(shù)據(jù)存儲(chǔ)介質(zhì)上的軟件產(chǎn)品,其中該軟件產(chǎn)品可在計(jì)算硬件上執(zhí)行W 執(zhí)行上述方法。英國(guó)專利申請(qǐng)GB1303658. 7的公開內(nèi)容通過全文引用合并于此。
【背景技術(shù)】
[0002] -般而言,當(dāng)前的數(shù)據(jù)通信網(wǎng)絡(luò)和數(shù)據(jù)處理設(shè)備需要處理越來(lái)越大量的數(shù)據(jù)。運(yùn) 種數(shù)據(jù)處理相應(yīng)地需要更大的數(shù)據(jù)通信帶寬和/或更大的數(shù)據(jù)存儲(chǔ)容量。提供運(yùn)樣的帶寬 和/或存儲(chǔ)容量的成本是很高的。因此,在進(jìn)行數(shù)據(jù)通信和/或存儲(chǔ)時(shí)對(duì)數(shù)據(jù)進(jìn)行壓縮將 具有可觀的益處。
[0003] 當(dāng)前,信息通常表示為數(shù)據(jù)的形式,例如音頻、圖像、視頻、圖表、ECG、地震數(shù)據(jù)、測(cè) 量數(shù)據(jù)、數(shù)字、Excel表單、字符、文本、新聞、ASCII字符、化icode字符、二進(jìn)制數(shù)據(jù)、廣告、 多維數(shù)據(jù)等。此外,運(yùn)些數(shù)據(jù)可W表達(dá)為不同格式,例如比特、字節(jié)、字、字符、數(shù)字、圖片,等 等。此外,可W采用近幾十年間開發(fā)的多種不同編碼方法對(duì)當(dāng)前的信息進(jìn)行編碼。如上所 述,信息的存儲(chǔ)和/或傳輸常常是必要的,因此,將信息表達(dá)為盡可能小量(例如,就W比特 為單位的數(shù)據(jù)大小而言)的編碼數(shù)據(jù)(例如,賭編碼數(shù)據(jù)和附加信息)將會(huì)是有益的。
[0004]在考慮數(shù)據(jù)編碼方法時(shí),將每條信息視為一個(gè)元素或符號(hào)是很方便的。將多條 信息運(yùn)樣表示為元素或符號(hào)允許例如使用化annon賭計(jì)算方法(見參考文獻(xiàn)巧]、[3]和
[4] )來(lái)計(jì)算信息的賭??蒞在多種不同算法(例如賭編碼算法和/或賭修正(entropy modifynig)算法)之前或之后,針對(duì)多種不同符號(hào)表示來(lái)執(zhí)行運(yùn)種計(jì)算。例如,可W使用多 種賭編碼方法來(lái)對(duì)單個(gè)符號(hào)進(jìn)行賭編碼。此外,還可W將符號(hào)從一種形式轉(zhuǎn)換為另一種形 式,例如,數(shù)字可W轉(zhuǎn)換為文本,文本可W轉(zhuǎn)換為字,比特可W轉(zhuǎn)換為字節(jié)。
[0005] 單個(gè)符號(hào)的示例包括例如比特值(1、6、8、10、……比特)、字節(jié)值(8比特)、字值 (16、32、64、128、……比特)、(ASCII、Unicode、中文、阿拉伯……)字符、二進(jìn)制位置標(biāo)記 (W2為基)、八進(jìn)制(W8為基)標(biāo)記、十進(jìn)制(W10為基)標(biāo)記、十六進(jìn)制(W16為基) 標(biāo)記、或羅馬數(shù)字標(biāo)記??蛇x地,數(shù)字符號(hào)可W具有小數(shù)點(diǎn),即分?jǐn)?shù)或?qū)崝?shù)值,或具有非小數(shù) 形式(自然數(shù)或整數(shù)值)。此外,可選地,符號(hào)可W包括圖片、數(shù)據(jù)或數(shù)據(jù)庫(kù)元素,等等。另 夕F,數(shù)字和字符還可W表示為基于單個(gè)數(shù)字或字符(例如ASCII)的符號(hào),或表示為例如數(shù) 值、字或句的多個(gè)ASCII符號(hào)的組合。
[0006] 如上所述,符號(hào)表示允許執(zhí)行信息的賭的計(jì)算。此外,可W通過使用不同符號(hào)表示 來(lái)計(jì)算同一條給定信息的賭,從而產(chǎn)生不同的賭結(jié)果,例如,采用不同符號(hào)集合來(lái)表示信息 可能使得由集合中一個(gè)或多個(gè)符號(hào)表示的信息具有不同的賭。而且,根據(jù)需要,不同符號(hào)的 賭編碼可W差異很大。上述信息的一些表示適于被賭編碼為非常接近它們的理想賭(例如 利用算術(shù)編碼器或行程編碼器得到的賭),而一些表示則需要更多的附加信息W實(shí)現(xiàn)成功 的賭編碼,例如字或數(shù)據(jù)庫(kù)元素所遇到的情況。
[0007] 上面提到的附加信息需要從給定編碼器W運(yùn)樣或那樣的方式傳遞到對(duì)應(yīng)解碼器, W使得能夠?qū)崿F(xiàn)編碼數(shù)據(jù)的唯一解碼。另外,當(dāng)一些附加信息在給定編碼器和給定解碼器 處均已知時(shí),運(yùn)也是有益的,運(yùn)樣,運(yùn)些信息就完全不需要傳遞,或例如通過使用標(biāo)識(shí)一個(gè) 或多個(gè)表的一個(gè)或多個(gè)索引而W很小的格式來(lái)傳遞。
[0008] 換言之,W相應(yīng)編碼數(shù)據(jù)傳遞上述信息的方式在編碼數(shù)據(jù)所實(shí)現(xiàn)的數(shù)據(jù)壓縮度方 面的差別很大,可能的替代方案是,例如,將整個(gè)原始信息本身W原始符號(hào)的形式、W壓縮 形式的符號(hào)、或W可用信息替代的選擇索引的形式來(lái)發(fā)送。此外,整個(gè)被傳遞的信息或其部 分可W被重用,運(yùn)也為壓縮信息、相應(yīng)數(shù)據(jù)或相應(yīng)編碼數(shù)據(jù)在更大程度上創(chuàng)造了多種可選 項(xiàng)。
[0009] 特別地,當(dāng)表示信息的原始數(shù)據(jù)量增加時(shí),在傳送該信息時(shí),常常沒有可供選擇的 合適靜態(tài)表或數(shù)據(jù)庫(kù)。但是,在與編碼形式的信息傳送相關(guān)聯(lián)地傳遞一個(gè)或多個(gè)表之后,對(duì) 于例如編碼方法參考了所述表的后來(lái)傳送的其他信息而言,就可能存在一些可再用的表。 還可W理解,要壓縮的信息可能是較大信息體的一部分,例如,一條信息可能是全部或部分 數(shù)據(jù)的分析結(jié)果、一個(gè)或多個(gè)數(shù)據(jù)塊的方法參數(shù),等等,例如多級(jí)方法的層級(jí)、數(shù)據(jù)庫(kù)引用、 原始數(shù)據(jù)的一部分(例如視頻的R0I、帖片、圖像)。
[0010] 當(dāng)要傳送大量數(shù)據(jù)時(shí),數(shù)據(jù)的賭占據(jù)大部分要傳遞的數(shù)據(jù)量。類似地,當(dāng)僅要傳遞 較少數(shù)量的數(shù)據(jù)時(shí),附加信息通常在很大程度上成為被傳遞數(shù)據(jù)的主要部分,換言之,附加 信息可能占據(jù)可觀的數(shù)據(jù)開銷。因此,需要優(yōu)化W最小化賭編碼數(shù)據(jù)和附加數(shù)據(jù)的總和,如 下所說(shuō)明的那樣,根據(jù)本公開的連續(xù)統(tǒng)運(yùn)算器(Continuum化erator)是非常出色的優(yōu)化工 具。
[0011] 當(dāng)前存在很多種不同數(shù)據(jù)壓縮方法可用于壓縮數(shù)據(jù)。一些壓縮方法是專用于一 些特定種類的數(shù)據(jù)的,例如JPEG/PNG用于壓縮圖像、AAC/MP3用于壓縮音頻、PNG/GIF用于 壓縮圖表、肥VC/VP9用于壓縮視頻,等等。一些方法更為折中,例如BZip、7Zip、RLE、SRLE、 化C、行程編碼、算術(shù)編碼等。此外,還有一些方法可用于修正比特?cái)?shù)據(jù)的賭(例如:英國(guó)專 利申請(qǐng)GB1303658. 7中描述的在賭修正器(EM)中采用的方法),并且還有一些方法可W 修正并非W各個(gè)比特位表示的符號(hào)數(shù)據(jù)的賭,例如在英國(guó)專利申請(qǐng)GB1303661. 1中描述的 DPCM、Delta編碼和ODelta編碼,W及在英國(guó)專利申請(qǐng)GB1303660. 3中描述的RLE和SRLE。 盡管參考文獻(xiàn)巧]、[3]和[4]中描述的Shannon賭是公知的,但其并未在當(dāng)前的壓縮方法 中被廣泛適當(dāng)?shù)厥褂?。可W使用W下公式1來(lái)計(jì)算化annon賭:
[001引其中:
[0014]n是不同符號(hào)的數(shù)量;W及
[0015] P(Xi)是由i索引的符號(hào)的概率。
[0016] 通常將賭乘W所有符號(hào)的數(shù)量W使其值與其他計(jì)算得到的賭值更加有可比性。也 可W通過將該可比賭值除W值l〇g(2)來(lái)改變?cè)摽杀荣€值,W估計(jì)所使用的比特。
[0017] 與賭不同的是,在有損編碼中常常使用率失真(RD)優(yōu)化來(lái)選擇最佳壓縮方法或 方法組合。在無(wú)損編碼中,賭本身可用于選擇方法或算法,因?yàn)樵跓o(wú)損編碼中,沒有RD優(yōu)化 所基于的失真,因此與附加信息一起,僅通過賭即可方便地估計(jì)率本身。
[0018] 與上述信息相對(duì)應(yīng)的數(shù)據(jù)的交織也是已知的現(xiàn)有技術(shù)方法。例如,給定圖像中如 參考文獻(xiàn)[11]中描述的表示為RGB的像素顏色值可W表示為平面形式(RRRR. . .,GGGG..., BBBB...)或交織形式(RGB,RGB,RGB,RGB,...)。
[0019] 在英國(guó)專利申請(qǐng)GB2301252(見參考文獻(xiàn)[10])中,描述了一種對(duì)數(shù)據(jù)中存在的比 特進(jìn)行編碼的已知方法。該已知方法采用多個(gè)不同長(zhǎng)度剩余符號(hào),但是W嚴(yán)格定義的方式 逐個(gè)使用該多個(gè)不同剩余符號(hào),它們表示不同的比特動(dòng)態(tài),并且該已知方法僅適用于比特 符號(hào)。但是,單獨(dú)或W已知組合來(lái)使用任何已知方法不足W解決與數(shù)據(jù)壓縮有關(guān)的=個(gè)主 要問題中的任何一個(gè)。所有上述方法及其組合都有很多缺點(diǎn)。
[0020] 在對(duì)信息編碼(例如壓縮)時(shí),出現(xiàn)S個(gè)主要問題:
[0021] 1)第一個(gè)問題設(shè)及在壓縮信息時(shí)要使用的符號(hào)的最適當(dāng)形式的選擇方式;
[0022] 2)第二個(gè)問題設(shè)及最有效地減小結(jié)果中相似符號(hào)的方式;W及
[0023] 3)第=個(gè)問題設(shè)及最有效地減小編碼數(shù)據(jù)和附加信息的數(shù)據(jù)大?。ɡ鐚⑵渥?小化)但仍使得能夠(例如在解碼器中解壓縮時(shí))解碼出唯一數(shù)據(jù)的方式。
【發(fā)明內(nèi)容】
[0024] 本公開意在提供對(duì)表示信息的數(shù)據(jù)進(jìn)行編碼W產(chǎn)生相應(yīng)編碼數(shù)據(jù)的改進(jìn)方法。
[00巧]此外,本公開還意在提供對(duì)表示信息的數(shù)據(jù)進(jìn)行編碼W產(chǎn)生相應(yīng)編碼數(shù)據(jù)的改進(jìn) 編碼器。
[0026] 此外,本公開意在提供對(duì)例如由上述改進(jìn)的數(shù)據(jù)編碼方法產(chǎn)生的編碼數(shù)據(jù)進(jìn)行解 碼的改進(jìn)方法。
[0027] 此外,本公開意在提供對(duì)例如由上述改進(jìn)的編碼器產(chǎn)生的編碼數(shù)據(jù)進(jìn)行解碼的改 進(jìn)解碼器。
[0028] 根據(jù)第一方面,提供了一種編碼器,用于對(duì)提供到該編碼器的數(shù)據(jù)值1)編碼W產(chǎn) 生相應(yīng)編碼數(shù)據(jù)值2),其中編碼器包括數(shù)據(jù)處理裝置(20),用于將一個(gè)或多個(gè)編碼過程應(yīng) 用于數(shù)據(jù)值1)W產(chǎn)生編碼數(shù)據(jù)值2),其特征在于:
[0029] (a)數(shù)據(jù)處理裝置(20)可操作用于,如果該數(shù)據(jù)值1)不是W數(shù)值符號(hào)表示的,貝U 至少部分地W數(shù)值符號(hào)的集合表示該數(shù)據(jù)值1);
[0030] 化)數(shù)據(jù)處理裝置(20)可操作用于產(chǎn)生中間數(shù)據(jù)(40),其中W原始值表示數(shù)值符 號(hào),W修正值表示至少一個(gè)符號(hào),該修正值具有由連續(xù)統(tǒng)運(yùn)算器產(chǎn)生的一個(gè)或多個(gè)連續(xù)統(tǒng) 符號(hào),其中該一個(gè)或多個(gè)連續(xù)統(tǒng)符號(hào)修正前面的符號(hào)值W適應(yīng)擴(kuò)展符號(hào)范圍;W及
[0031] (C)數(shù)據(jù)處理裝置(20)可操作用于處理中間數(shù)據(jù)(40)W產(chǎn)生編碼數(shù)據(jù)值2)。
[0032] 本發(fā)明的優(yōu)勢(shì)包括編碼器添加的一個(gè)或多個(gè)連續(xù)統(tǒng)符號(hào)的組合能夠提供相比于 要編碼的數(shù)據(jù)值1)具有更高數(shù)據(jù)壓縮度的編碼數(shù)據(jù)值2)。
[0033] 可選地,在編碼器中,數(shù)據(jù)處理裝置可操作用于基于計(jì)算出的符號(hào)在多個(gè)部分或 片段中的出現(xiàn)概率及其壓縮效率,將數(shù)據(jù)值1)分割為所述多個(gè)部分或片段。
[0034] 可選地,在編碼器中,使用連續(xù)統(tǒng)運(yùn)算器產(chǎn)生中間數(shù)據(jù)(40),W通過一種或多種變 換方法和/或通過一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)來(lái)變換數(shù)據(jù)值I)中的符號(hào)。可選地,在編碼器 中,通過多個(gè)數(shù)據(jù)流提供編碼數(shù)據(jù)值2),其中至少一個(gè)流傳遞指示所述一個(gè)或多個(gè)轉(zhuǎn)換表 (LUT)和/或一種或多種變換方法的信息??蛇x地,在編碼器中,指示所述一個(gè)或多個(gè)轉(zhuǎn)換 表(LUT)的信息參考在傳遞編碼數(shù)據(jù)值2)之前傳遞的一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)和/或能 夠從編碼器的備選源得到指示所述一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)的信息。
[0035] 可選地,編碼器可操作用于處理的數(shù)據(jù)值1)包括W下中的至少一種:捕獲音頻信 號(hào)、捕獲視頻信號(hào)、捕獲圖像、文本數(shù)據(jù)、地震數(shù)據(jù)、傳感器信號(hào)、模數(shù)(ADC)轉(zhuǎn)換數(shù)據(jù)、生物 信號(hào)數(shù)據(jù)、日歷數(shù)據(jù)、經(jīng)濟(jì)數(shù)據(jù)、數(shù)學(xué)數(shù)據(jù)、二進(jìn)制數(shù)據(jù)。
[0036] 可選地,在編碼器中,數(shù)據(jù)處理裝置可操作用于通過采用W下中的至少一種對(duì)中 間數(shù)據(jù)(40)編碼W產(chǎn)生編碼數(shù)據(jù)值。:賭修正、賭修正(EM)編碼、ODelta編碼、RLE、SRLE、 算術(shù)編碼、行程編碼、VLC。
[0037] 根據(jù)第二方面,提供了一種編碼器中的方法,該編碼器用于對(duì)提供到該編碼器的 數(shù)據(jù)值1)編碼W產(chǎn)生相應(yīng)編碼數(shù)據(jù)值2),其中編碼器包括數(shù)據(jù)處理裝置,用于將一個(gè)或多 個(gè)編碼過程應(yīng)用于數(shù)據(jù)值1)W產(chǎn)生編碼數(shù)據(jù)值2),其特征在于,該方法包括:
[0038] (a)使用數(shù)據(jù)處理裝置(20)在該數(shù)據(jù)值1)不是W數(shù)值符號(hào)表示的情況下,至少部 分地W數(shù)值符號(hào)的集合表示該數(shù)據(jù)值1);
[003引 化)使用數(shù)據(jù)處理裝置(20)產(chǎn)生中間數(shù)據(jù)(40),其中W原始值表示數(shù)值符號(hào),W 修正值表示至少一個(gè)符號(hào),該修正值具有由連續(xù)統(tǒng)運(yùn)算器產(chǎn)生的一個(gè)或多個(gè)連續(xù)統(tǒng)符號(hào), 其中該一個(gè)或多個(gè)連續(xù)統(tǒng)符號(hào)修正前面的符號(hào)值W適應(yīng)擴(kuò)展符號(hào)范圍;W及
[0040] (C)使用數(shù)據(jù)處理裝置(20)處理中間數(shù)據(jù)(40)W產(chǎn)生編碼數(shù)據(jù)值2)。
[0041] 可選地,該方法包括使用數(shù)據(jù)處理裝置基于計(jì)算出的符號(hào)在多個(gè)部分或片段中的 出現(xiàn)概率及其壓縮效率,將數(shù)據(jù)值1)分割為所述多個(gè)部分或片段。
[0042] 可選地,該方法包括針對(duì)數(shù)據(jù)值1)中的符號(hào),使用連續(xù)統(tǒng)運(yùn)算器產(chǎn)生中間數(shù)據(jù) (40),所述中間數(shù)據(jù)是通過由一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)和/或一種或多種變換方法限定的 一次或多次變換和或轉(zhuǎn)換,對(duì)所述符號(hào)進(jìn)行變換而產(chǎn)生的??蛇x地,該方法包括通過多個(gè)數(shù) 據(jù)流提供編碼數(shù)據(jù)值2),其中至少一個(gè)流傳遞指示所述一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)和/或一 種或多種變換方法的信息??蛇x地,在該方法中,指示所述一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)的信息 參考在傳遞編碼數(shù)據(jù)值2)之前傳遞的一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)和/或能夠從編碼器的備 選源得到指示所述一個(gè)或多個(gè)轉(zhuǎn)換表(LUT)的信息。