Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6431487B2 - データエンコーダ、データデコーダ及び方法 - Google Patents
[go: Go Back, main page]

JP6431487B2 - データエンコーダ、データデコーダ及び方法 - Google Patents

データエンコーダ、データデコーダ及び方法 Download PDF

Info

Publication number
JP6431487B2
JP6431487B2 JP2015559444A JP2015559444A JP6431487B2 JP 6431487 B2 JP6431487 B2 JP 6431487B2 JP 2015559444 A JP2015559444 A JP 2015559444A JP 2015559444 A JP2015559444 A JP 2015559444A JP 6431487 B2 JP6431487 B2 JP 6431487B2
Authority
JP
Japan
Prior art keywords
data
encoded
parts
encoder
decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015559444A
Other languages
English (en)
Other versions
JP2016512004A (ja
JP2016512004A5 (ja
Inventor
オッシ カレヴォ
オッシ カレヴォ
トゥオマス カルッカイネン
トゥオマス カルッカイネン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gurulogic Microsystems Oy
Original Assignee
Gurulogic Microsystems Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gurulogic Microsystems Oy filed Critical Gurulogic Microsystems Oy
Publication of JP2016512004A publication Critical patent/JP2016512004A/ja
Publication of JP2016512004A5 publication Critical patent/JP2016512004A5/ja
Application granted granted Critical
Publication of JP6431487B2 publication Critical patent/JP6431487B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • H03M7/48Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Multimedia (AREA)

Description

本発明は、データエンコーダ、及び対応するデータ符号化の方法に関する。また、本発明は、データデコーダ、及び対応する符号化データを復号する方法に関する。更に、本発明は、機械可読データ記憶媒体に記録されたソフトウェア製品であって、該ソフトウェア製品は、上記方法を実施するためにコンピュータハードウェアで実行可能である、ソフトウェア製品に関する。上記データエンコーダは、上記データデコーダと同様に、例えば、データ通信システム及びデータ供給システムの構成部品として、また消費者向け電子製品において使用可能である。加えて、本発明は、上記データエンコーダを少なくとも1つ、及び上記データデコーダを少なくとも1つ備えるコーデック装置に関する。
発明の背景
現代社会においてデータが益々利用されるにつれ、簡便であるが有効な、無損失データ圧縮を提供する方法、並びに、それに対応して可逆データ展開を提供する簡便な方法が必要とされている。データを圧縮する従来既知のランレングス符号化法は、連続データを圧縮する目的にしか真に有効ではなく、そのような連続データは、通常、パケット化データ交換を頻繁に実行するデータ通信システム内においてはそれ程一般的なものではない。データ通信システム内、例えばインターネットにおけるパケット化データ交換では、多数の小データパケットの伝送が生じる。しかしながら、データ圧縮の技術分野における当業者にとっては、ランレングス符号化(run-length encoding;RLE)によって、その他既知のデータ圧縮手法と比較して、より良いデータ圧縮率が得られることは周知である。
あらゆるバリエーションのランレングス符号化法は、当該方法によって符号化されるバイトのカウンター及び文字を利用する。それら方法を実施する際、カウンターが、そのような文字の各ランに対して設定される。さらに、それら方法においては、その文字に対するカウンターの表し方に関し幾つかのバリエーションがあるが、これらは、常に、バイトの文字を用いて同じ出力データに符号化される。その結果、一般的に既知のRLE法では、比較的低いデータ圧縮率しか得られないことが分かっている。
表1には、既知の現存技術を示す文献が示されている。
[表1]既知の技術
Figure 0006431487
「ランレングス符号化(Run-length encoding)」-ウィキペディア(2012年11月28日にアクセス)URL: http://en.wikipedia.org/wiki/Run-length_encoding 「ハフマン符号化(Huffman coding)」-ウィキペディア(2012年11月28日にアクセス)URL: http://en.wikipedia.org/wiki/Huffman_coding 「(ランレングス符号化)(Run Length Encoding (RLE))-議論及び実装」(2012年12月18日にアクセス)URL: http://michael.dipperstein.com/rle/index.html アルトゥーロ・カンポス(Arturo Campos)による「ランレングス符号化(Run Length Encoding)」(2012年12月18日にアクセス) URL: http://www.arturocampos.com/ac_rle.html 「通信の数学的理論(A Mathematical Theory of Communication)」クロード・E・シャノン(Claude E. Shannon) (1948)(2012年11月28日にアクセス)URL: http://cm.bell-labs.com/cm/ms/what/shannonday/shannon1948.pdf シャノンの情報源符号化定理(Shannon's source coding theorem)-ウィキペディア(2012年11月28日にアクセス) URL: http://en.wikipedia.org/wiki/Source_coding_theorem 「エントロピー(Entropy)」-ウィキペディア(2012年11月28日にアクセス) URL: http://en.wikipedia.org/wiki/Entropy 「可変長符号(Variable-length code)」-ウィキペディア(2012年11月28日にアクセス)URL: http://en.wikipedia.org/wiki/Arithmetic_coding 「算術符号化(Arithmetic coding)」-ウィキペディア(2012年11月28日にアクセス)URL: http://en.wikipedia.org/wiki/Arithmetic_coding 「差分符号化(Delta encoding)」-ウィキペディア(2012年11月28日にアクセス)URL: http://en.wikipedia.org/wiki/Delta_coding
本発明は、入力データを圧縮することにより対応する圧縮出力データを生成する改良法を提供することを目的とする。
本発明は、入力データを符号化することにより対応する符号化出力データを生成する改良法を提供することを目的とする。
本発明は、圧縮入力データを受信し、対応する展開出力データを生成するデータ展開の改良法を提供することを目的とする。
本発明は、入力データを復号することにより対応する復号出力データを生成する改良法を提供することを目的とする。
本発明は、上記方法を利用するように動作可能であるエンコーダ、デコーダ及びコーデック装置を提供することを目的とする。
本発明の第1の態様によれば、添付の請求項1に記載のエンコーダが提供される。即ち、入力データ(D1)を符号化することにより対応符号化出力データ(D2)を生成するエンコーダであって、
入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を備え
上記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するように動作可能であり、少なくとも1つのパートが、第1データストリームにおいて、オリジナルのシンボルに関連し、第2データストリームにおける少なくとも別のパートが、上記第1データストリームにおけるシンボルの少なくとも幾つかの出現を示すカウンターに関連し、エンコーダは、上記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するように動作可能であることを特徴とするエンコーダが提供される。
本発明は、上記エンコーダが、上記複数のパート(A、B)をそれぞれ個別に取り扱うことによって、既知の種類のエンコーダと比較して、より高度に実質的に可逆圧縮を提供することが可能であると言う利点を有する。
「出現を表す」と言う語句は、広義に解釈されるべきであり、データストリームに存在する相互に類似の連続文字の数を単に直接カウントするカウンターに限定されるものではない。
オプションで、上記エンコーダが作動する際には、上記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む。
オプションで、上記エンコーダは、符号化出力データ(D2)を、入力データ(D1)に対して圧縮形態で生成するように動作可能である。
オプションで、上記エンコーダは、可変長符号化(VLC)、ハフマン符号化、ゴロム符号化、算術符号化、レンジ符号化、差分符号化、ODelta符号化、レンペル・ジブ符号化、BWT符号化のうちの少なくとも1つを利用することによって、上記複数のパート(A、B)を符号化することにより符号化出力データ(D2)を生成するように動作可能である。さらにオプションで、上記エンコーダは、エントロピー符号化法を用いることにより上記複数のパート(A、B)の少なくとも1つを符号化するように動作可能であり、上記エントロピー符号化法は、符号化出力データ(D2)においてパート(A及び/又はB)をエントロピー符号化する際に、1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを用いてパート(A及び/又はB)の値を符号化することができる。
オプションで、上記エンコーダは、符号化出力データ(D2)に1つ又は複数のマーカーを含めるように動作可能であり、該1つ又は複数のマーカーは、上記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである。
オプションで、上記エンコーダは、上記ランレングス符号化(RLE)表現が実質的に可逆方式で実施されるように構成されている。
本発明の第2の態様によれば、エンコーダにおいて入力データ(D1)を符号化することにより対応する符号化出力データ(D2)を生成する方法であって、当該方法は、入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を用いることを含み、当該方法は、
(a)上記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するエンコーダを用いること、但し、少なくとも1つのパートは、第1データストリームにおいて、オリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるオリジナルのシンボルの少なくとも幾つかの出現を示すカウンターに関連するものとする、並びに
(b)上記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するエンコーダを用いること、
を更に含むことを特徴とする、方法が提供される。
「出現を表す」と言う語句は、広義に解釈されるべきであり、データストリームに存在する相互に類似の連続文字の数を単に直接カウントするカウンターに限定されるものではない。
オプションで、上記方法において、上記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む。
オプションで、上記方法は、符号化出力データ(D2)を、力データ(D1)に対して圧縮形態で生成するエンコーダを用いることを含む。
オプションで、上記方法は、可変長符号化(VLC)、ハフマン符号化、ゴロム符号化、算術符号化、レンジ符号化、差分符号化、ODelta符号化、レンペル・ジブ符号化、BWT符号化のうちの少なくとも1つを利用することによって、上記複数のパート(A、B)を符号化することにより符号化出力データ(D2)を生成するように動作可能であるエンコーダを用いることを含む。さらにオプションで、上記方法は、エントロピー符号化法を用いることにより上記複数のパート(A、B)の少なくとも1つを符号化するエンコーダを用いることを含み、上記エントロピー符号化法は、符号化出力データ(D2)においてパート(A及び/又はB)をエントロピー符号化する際に、1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを用いてパート(A及び/又はB)の値を符号化することができる。
オプションで、上記方法は、符号化出力データ(D2)に1つ又は複数のマーカーを含めるエンコーダを用いることを含み、該1つ又は複数のマーカーは、上記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである。
オプションで、上記方法は、上記ランレングス符号化(RLE)表現を実質的に可逆方式で実施することを含む。
本発明の第3の態様によれば、符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成するデコーダであって、該デコーダは、符号化入力データ(D2)を複数の別々のパート(A、B)に復号し、但し、少なくとも1つのパートは、第1データストリームにおいて、オリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるオリジナルのシンボルの少なくとも幾つかの出現を示すカウンターに関連するものとする、かつ上記複数のパート(A、B)を共に結合することにより結合データを生成し、ランレングス復号処理を介して該結合データを復号することにより復号出力データ(D3)を生成する、データ処理装置を備えることを特徴とするデコーダが提供される。
「出現を表す」と言う語句は、広義に解釈されるべきであり、データストリームに存在する相互に類似の連続文字の数を単に直接カウントするカウンターに限定されるものではない。
オプションで、上記デコーダが作動する際には、上記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む。
オプションで、上記デコーダは、復号出力データ(D3)を、符号化入力データ(D2)に対して展開形態で生成するように動作可能である。
オプションで、上記デコーダは、逆可変長符号化(VLC)、逆ハフマン符号化、逆ゴロム符号化、逆算術符号化、逆レンジ符号化、逆差分符号化、逆ODelta符号化、逆レンペル・ジブ符号化、逆BWT符号化のうちの少なくとも1つを利用することによって、符号化入力データ(D2)を復号することにより上記複数のパート(A、B)を生成するように動作可能である。さらにオプションで、上記デコーダは、エントロピー復号法を用いることにより上記複数のパート(A、B)の少なくとも1つを復号するように動作可能であり、上記エントロピー復号法は、上記デコーダが、パート(A及び/又はB)を生成する処理にある場合に、符号化入力データ(D2)から1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを復号することができる。
オプションで、上記デコーダは、符号化入力データ(D2)において1つ又は複数のマーカーを特定するように動作可能であり、該1つ又は複数のマーカーは、上記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである。
オプションで、上記デコーダは、上記ランレングス復号処理が実質的に可逆方式で実施されるように構成されている。
本発明の第4の態様によれば、デコーダにおいて符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成する方法であって、当該方法は、データ処理装置を用いることを含み、当該方法は、
(a)符号化入力データ(D2)を複数の別々のパート(A、B)に復号するデコーダを用いること、但し、少なくとも1つのパートは、第1データストリームにおいて、るオリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるオリジナルのシンボルの少なくとも幾つかの出現を示すカウンターに関連するものとする、
(b)上記複数のパート(A、B)を結合することにより対応結合データを生成するデコーダを用いること、並びに
(c)上記結合データにランレングス復号処理を適用することにより復号出力データ(D3)を生成するランレングス復号処理を用いること、
を含むことを特徴とする、方法が提供される。
「出現を表す」と言う語句は、広義に解釈されるべきであり、データストリームに存在する相互に類似の連続文字の数を単に直接カウントするカウンターに限定されるものではない。
オプションで、上記方法において、上記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む。
オプションで、上記方法は、復号出力データ(D3)を、符号化入力データ(D2)に対して展開形態で生成するデコーダを用いることを含む。
オプションで、上記方法は、逆可変長符号化(VLC)、逆ハフマン符号化、逆ゴロム符号化、逆算術符号化、逆レンジ符号化、逆差分符号化、逆ODelta符号化、逆レンペル・ジブ符号化、逆BWT符号化のうちの少なくとも1つを利用することによって、上記複数のパート(A、B)を復号することにより復号出力データ(D3)を生成するデコーダを用いることを含む。さらにオプションで、上記方法は、エントロピー復号法を用いることにより上記複数のパート(A、B)の少なくとも1つを復号するデコーダを用いることを含み、上記エントロピー復号法は、上記デコーダが、パート(A及び/又はB)を生成する処理にある場合に、符号化入力データ(D2)から1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを復号することができる。
オプションで、上記方法は、符号化入力データ(D2)において1つ又は複数のマーカーを特定するデコーダを用いることを含み、該1つ又は複数のマーカーは、上記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである。
オプションで、上記方法は、実質的に可逆方式で上記ランレングス復号処理を実施することを含む。
本発明の第5の態様によれば、入力データ(D1)を符号化することにより対応符号化データ(D2)を生成する、本発明の第1の態様によるエンコーダと、符号化出力データ(D2)を復号することにより対応出力復号データ(D3)を生成する、本発明の第3の態様によるデコーダとを備えるコーデック装置が提供される。
本発明による第6の態様によれば、機械可読データ記憶媒体に記録されたソフトウェア製品であって、該ソフトウェア製品は、本発明の第2の態様による方法を実行するのにコンピュータハードウェアで実行可能であることを特徴とする、ソフトウェア製品が提供される。
本発明の第7の態様によれば、機械可読データ記憶媒体に記録されたソフトウェア製品であって、該ソフトウェア製品は、本発明の第4の態様による方法を実行するのにコンピュータハードウェアで実行可能であることを特徴とする、ソフトウェア製品が提供される。
本発明の特徴は、添付の特許請求の範囲によって規定される発明の要旨から逸脱することなく、各種組合せにおいて組合せられ得ることが理解される。
以下、本発明の実施形態について以下の図面を参照し、例示のみの目的で説明する。
本発明によるエンコーダの図である。 本発明によるコーデック装置の図である。
実施形態の説明
添付の図面において、下線を付した番号は、その下線を付した番号が位置する要素、又はその下線を付した番号が隣接する要素を表すのに用いられる。下線が付されていない番号は、要素にその下線が付されていない番号を結合させる線によって特定されるその要素に関する。番号に下線が付されておらず、関連する矢印が付随する場合、下線が付されていないその番号が、その矢印が指し示す全体要素を特定するのに用いられる。
概して、本発明は、ランレングス符号化(RLE)法に基づくものであるが、ランレングス符号化法よりも顕著に向上させるものである。
RLE法は、現代においては、可逆方式等で、例えばマルチメディアデータフォーマット等の各種画像情報を符号化するために利用されている。しかしながら、このようなRLE法は、例えば写真等の連続階調画像や非形式化データに対して十分に機能しない。それにもかかわらず、従来のRLEが、大抵ハフマン符号化と組み合わされ、かつBMP、GIF、PCX、TIFF等の標準的な現存フォーマットを利用して、ファクシミリ機等の装置において利用されている。
本発明の実施形態は、現存する既知のRLE法と比較してデータ圧縮率を向上をさせ、データ圧縮及び符号化の向上を達成する簡便な解決手段に関連する。また、本発明の実施形態は、RLEと同様にカウンターを利用するが、関係する文字独自のデータ出力パートに書き込まれるという違いを有する。即ち、カウンターと文字が、パートA及びパートBにそれぞれ別々に書き込まれるという違いを有する相互に異なるパートのこのような分離は、文字の定義とランレングス情報が共に混在する現存のRLEアプローチとは対照的である。
このように、本発明の実施形態は、新規分割ランレングス法、即ち連続データ、例えばグラフィック、画像、ビデオ、音声、テキスト、及びバイナリデータを含む、あらゆる種類の1Dデータ、2Dデータ及び3Dデータの前処理及び後処理に有効である「SRLE」に関連する。該分割ランレングス法は、デバイス、マイクロプロセッサ等における実施を目的として、ネットワーク用途のために更新可能である。また、分割ランレングス法は、機械可読データ記憶媒体に記憶された1つ又は複数のソフトウェア製品を用いて容易に実施可能であり、該ソフトウェア製品は、コンピュータハードウェアで実行可能である。
図1を参照すると、例えばデジタルハードウェア、及び/又は、機械可読データ記憶媒体に記憶され、かつコンピュータハードウェアで実行可能な1つ又は複数のソフトウェア製品により実施されるエンコーダ10が示されており、該エンコーダ10は、入力データD1を受信し、対応する符号化出力データD2を生成するように動作可能である。このようなエンコーダ10に関しては、入力データD1のエントロピーE1、並びに出力データD2のエントロピーE2を計算することが可能である。エントロピーE1、E2は、所与のデータセットを提供するのに必要な多数のビットにおいて明らかにされる。
エンコーダ10の演算方式を説明するために、例となるランレングス(RL)が、通常、1つ又は複数のバイト値で表現される。しかしながら、本発明の実施形態を説明するために、ここでは、英数字の文字について説明する。入力データD1が以下の文字列で表される。
[式1]
WWW WWW WWW WWW BWW WWW WWW WWW WBB BWW WWW WWW WWW WWW WWW WWW WWW WBW WWW WWW WWW WWW W
このような文字列に関連するエントロピーE1は、62個の「W」文字と、5個の「B」文字であり、式2及び式3から計算可能であるとおり25.66ビットで表すことができる。
[式2]
Figure 0006431487
シャノン(Shannon)の理論により、所与のメッセージを所与のアルファベットで符号化する最短の可能な表現の平均長Lは、それらのエントロピーEをアルファベットに存在するシンボルNの数の対数で割った値であることが特定されている。
[式3]
Figure 0006431487
上記一連の文字は、既知である2つの代替RLE法を用いて符号化することにより、26.55ビットに対応する関連算出エントロピーE2を用いて以下の一連のRLEとして出力データD2を生成することが可能である。
[式4]
12W 1B 12W 3B 24W 1B 14W
或は、35.49ビットに対応する関連算出エントロピーE2を用いて以下の一連のRLEとして出力データD2を生成することも可能である。
[式5]
WW12BWW12BB3WW24BWW14
式4は、数字(N)が先行する所与の文字の単純な表現であり、数字(N)は、該所与の文字の頻度を示し、即ち、12個の「W」の後に1個の「B」が続き、その後に12個の「W」が続くこと等を示す表現である。逆に、式5において文字は、式1の配列における文字に対応する文字を表し、その文字の後にその文字の頻度の表示が続いている。
式4は、最小のラン値が1であり得ることを示し、式5は、最小のラン値が2であり得ることを示す。これにより、この情報を利用し、ゼロ(0)から始まるストリーム値を自動的に生成する実装の構築が可能になる。例えば、式4は数字'=数字−1(N'=N−1)を用いて、以下のとおり式4'として書き換えることができる。
[式4']
11W 0B 11W 2B 23W 0B 13W
そして、式5は、(N'=N−2)を用いて、以下のとおり式5'として書き換えることができる。
[式5']
WW10BWW10BB1WW22BWW12
こうして、データのエントロピーは変わらないが、テーブル伝送に必要となるビット量及び場合によっては必要なエスケープ符号又は連続値シンボルの量を低減することによって、エントロピー符号化により好適なラン値を作成する。修正された式4'及び/又は5'が用いられる場合、デコーダもそれに対応して修正されなければならない。この事は、式4'においてその補正は(N=N'+1)であり、式5'においてその補正は(N=N'+2)であることを意味する。
上述のエスケープ符号は、希な値を検出し、かつ特定することが望まれる場合に好適に用いられ、その希な値を、別にその元の形で書き込む。幾つかのシンボルから値を構築することが望まれる場合には、連続値が好適に用いられるが、そのような幾つかのシンボルは、互いに合算され、又は互いに減算がされ、さらに該シンボルは同じストリームに書き込まれ、元の値又は修正された値であってもよい他の要素と共にエントロピー符号化され得るものである。最も一般的には、好ましい実施形態においては、エスケープ符号は、希な値をあるシンボルに置換するが、元の値も、その元ビットカウントと共にそのままストリームに加えられる。1つ又は複数の連続値が、後に実行されるエントロピー圧縮を目的として、修正した希な値に加えて、同じストリームにおいて出現し得る。
このような既知のRLE法(式4及び式5)並びに修正RLE法(式4'及び式5')によれば、入力データD1に存在したエントロピーよりも符号化出力データD2におけるエントロピーが大きくなると言う結果を生じ、つまりE2>E1となるが、出力データD2に存在するシンボルの総数は減少する。RLEデータは、例えばハフマン符号化(Huffman coding)、可変長符号化(variable length coding;VLC)等の更なる符号化を適用することによって圧縮可能であることが知られているが、このような更なる符号化では、準最適なデータ圧縮結果しか得られない。このような準最適な動作は、フォーマットの不一致が原因で生じる。
式4及び式5は、パートAによって示される文字、並びに同文字に関連するカウンター、つまりパートBが混じった物であり、式1、式4及び式5'に関し、該パートが表2において指定されている。
[表2]本発明に従うパートA及びパートB
Figure 0006431487
エンコーダ10が、本発明に従って機能する場合、出力データD2は、式4及び式5'にあるような混合型ではないが、パートA及びパートBは、別々に表現され、つま分割されており、それらの相互の対応性は、符号化データD2の構造によって定義され、例えば1つ又は複数のマーカーによって定義される。
本発明の例示実施形態によれば、式1において入力データD1は、25.66ビットのエントロピーE1と関係している。式1の文字配列は、以下の2つの入力パートにランレングス符号化される。
パートA: 12 1 12 3 24 1 14
パートB: W B W B W B W,
ここで、パートAは15.65ビットの関連算出エントロピーEを有し、パートBは、6.90ビットの関連算出エントロピーEを有する。これらパートは、上述の式4から導かれる。エントロピーEA、の合計は、22.55ビットであり、入力データD1に関連するエントロピーと較べて3.11ビット小さく、つまり12%小さく、既知である従来のRLEによって生成される符号のエントロピー、つまり36.55ビットよりも14.00ビット小さく、つまり38%小さい。したがって、有利なデータ圧縮が、本発明に従って、RLEによって生成されるカウンター及び文字情報を分割し、次いで、例えばVLC符号化、ハフマン符号化、ゴロム符号化(Golomb coding)、算術符号化、レンジ符号化、差分符号化、ODelta符号化、レンペル・ジブ符号化(Lempel−Ziv coding)、BWT符号化等の圧縮法を適用することで達成することができる。オプションで、この符号化は、エンコーダ10の前に適用され、オプションで、対応する復号も、デコーダ50に含まれる。
オプションで、エンコーダ10において、パートB及び/又はパートAは、データD1において最大の許容可能なランレングス及び1つ又は複数の関連エスケープ符号又は1つ又は複数の関連連続値シンボルを有することにより、データD2により大きい値のランレングスシンボルが存在することを示すように、例えば可変長符号化(VLC)又はレンジ符号化を用いて符号化される。同様に、デコーダ50は、当該エンコーダで受信されるデータD2に存在する1つ又は複数の上記エスケープ符号又は連続値シンボルを特定するように実施され、該1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルは、データD1を復号する際、即ちパートA及び/又はパートBを再生成する時にデコーダ50において解釈される。
本発明の別の例示実施形態によれば、式1において、入力データD1は、25.66ビットのエントロピーE1と関連している。式1の文字列は、以下の2つの入力パートにランレングス符号化(RLE)される。
パートA:10 10 1 22 12
パートB:W W B W W B B W W B W W,
ここで、パートAは、9.61ビットの関連算出エントロピーEを有し、パートBは、11.02ビットの関連算出エントロピーEを有する。これらパートは、上述の式5'から導かれる。エントロピーEA、の合計は、20.63ビットであり、入力データD1に関連するエントロピーと較べて5.03ビット小さく、つまり20%小さく、既知である従来のRLEによって生成される符号のエントロピー、つまり36.55ビットよりも14.86ビット小さく、つまり42%小さい。したがって、有利なデータ圧縮が、本発明に従って、RLEによって生成されるカウンター及び文字情報を分割し、次いで、例えばVLC符号化、ハフマン符号化等の圧縮法を適用することで達成することができる。有利には、本発明の実施形態には、エンコーダから対応するデコーダに1つ又は複数の符号化テーブルが送信されることにより、該エンコーダから送信され、該デコーダで受信された符号化データの復号を支援することが含まれる。符号化テーブルを伝送する極めて有利な方法の幾つかが、例えば本出願人によって提出された特許出願GB GB1403039.9に開示されている。エントロピー符号化と符号テーブルの伝送を組み合わせた更なる方法が、本出願人により提出された特許出願GB GB1403038.1に開示されている。上述の開示された方法の両方が、本発明の実施形態と組み合わせて用いるのに好適に適合するものであり、エントロピー符号化に必要とされる更なる符号化データを最小化するのに役立つ。
上述の符号テーブルの伝送方法は、SRLEによって生成されるデータがその後エントロピー符号化される全ての場合において適用可能であることに留意されたい。
上述の例示実施形態は、入力データD1においてRLE法を適用することにより対応するRLEデータを生成すること、次いでそのRLEデータを文字パート、つまり上記パートB、並びに対応するランレングスカウントパート、つまり上記パートAに分割すること(つまり、パートAに関連するデータはパートBに関連するデータから分離される)、並びに次いで該パートに対して別々に符号化を適用することにより符号化出力データD2を生成することから得られる利点を明確に示している。オプションで、追加の符号、例えば1つ又は複数のマーカーが、符号化出力データD2の何れの部分がパートA及びパートBに対応するかを示すために含まれるが、このような追加の符号を含むことは、つまり対応する後続の復号作業を補助するためのものである。このようなデータ符号化処理は、図2に記述されるような方式で機能的に実施される図1のエンコーダ10において有利に実施される。
図2には、20によって包括的に示されるコーデック装置が示されている。コーデック装置20は、本発明に従って入力データD1を符号化することにより対応符号化出力データD2を生成する方法を実施するように構成されたエンコーダ10を備える。エンコーダ10は、デジタルハードウェアにおいて、例えば機械可読データ記憶媒体に記録された1つ又は複数のソフトウェア製品を実行するように動作可能であるコンピュータハードウェアとして有利に実施される。エンコーダ10は、以下の3つの機能を実行するように動作可能である。
(a)エンコーダ10の第1ステージ30Aは、入力データD1の文字を決定し又はその文字表現を生成するように入力データD1を処理し、かつ対応ランレングスカウントを生成するように動作可能であること、
(b)エンコーダ10の第2ステージ30Bは、第1ステージ30Aにおいて生成された上記文字及びそれらの対応ランレングスカウントを2つのパート、即ちパートB及びAそれぞれに、構造化された方式で分割するように動作可能であること、並びに
(c)エンコーダ10の第3ステージ30Cは、例えばハフマン符号化又は可変長符号化(VLC)を介してパートA及びBのデータを符号化することにより、出力符号化データD2を生成するように動作可能であること。
出力データD2は、オプションで、データキャリア40、例えば光学データ記憶ディスクメモリに記憶される。或は、出力データD2は、データ通信ネットワーク45、例えばインターネットを介してコーデック装置20のデコーダ50に伝達される。デコーダ50は、有利には、デジタルハードウェアにおいて、例えば機械可読データ記憶媒体に記録された1つ又は複数のソフトウェア製品を実行するように動作可能であるコンピュータハードウェアとして実施される。さらに、デコーダ50は、作動する際には、エンコーダ10によって実行される処理演算の逆を実行するように動作可能であり、即ち、デコーダ50は、以下の3つの機能を実行するように動作可能である。
(i)デコーダ50の第1ステージ60Aは、符号化データD2を受信し、かつ例えば逆ハフマン符号化又は逆可変長符号化(VLC)を介してパートA及びBのデータを復号することによりパートA及びBを再生成するように動作可能であること、
(ii)デコーダ50の第2ステージ60Bは、第1ステージ60Aからの再生成パートA及びBを結合することにより文字及びそれらに対応のランレングスカウントを混合データとして生成すること、並びに
(iii)デコーダ50の第3ステージ60Cは、上記混合データに逆ランレングス符号化を適用することにより同混合データから復号出力データD3を再生成すること。
オプションで、エンコーダ10及びデコーダ50の少なくとも1つが、消費者向け電子製品、例えばテレビ、スマートフォン、ファクシミリ機、タブレットコンピュータ、パーソナルコンピュータ(PC)、ビデオレコーダー、ビデオプレイヤー、デジタルカメラ、テレビ会議システム、監視装置、携帯パーソナルマルチメディアプレーヤー等において実施されるが、これらは実際の用途のほんの一部の例に過ぎない。
本発明に関し、符号化データを2つのパート、即ちパートA及びBに分割することについて上記に説明したが、2つを超えるパートに符号化データを分割することも、多次元データに対して任意に可能であることが理解される。さらに、本発明に関し、2つのパート、即ちパートA及びBに対応する復号データを結合することについて上記に説明したが、2つを超えるパートを結合することが、多次元データに対して任意に可能であることが理解される。
上記に記載した発明の実施形態に対する変更は、添付の特許請求の範囲によって定義される発明の要旨から逸脱することのない限り可能である。本発明を説明し、また特許請求する際に用いられる「含む」又は「備える」("including"、"comprising")、「組み込む」("incorporating")、「から成る」("consisting of")、「有する」("have")、「である」("is")等の表現は、非排他的な方式で理解されるべきことが意図されており、即ち明示されていない事項、成分又は要素が存在し得る。単数での表記は、複数にも関連するものと理解される。添付の特許請求の範囲における括弧内の数値は、請求項の理解を補助するためのものであり、それら請求項によって記載される主題を限定するものとして解釈してはならない。
以下に、出願当初の特許請求の範囲に記載されていた、好適な実施形態を載せておく。
[1]入力データ(D1)を符号化することにより対応符号化出力データ(D2)を生成するエンコーダ(10)であって、
前記入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を備え、
前記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するように動作可能であり、少なくとも1つのパートが、第1データストリームにおいて、オリジナルのシンボルに関連し、第2データストリームにおける少なくとも別のパートが、前記第1データストリームにおけるシンボルの少なくとも幾つかの出現を示すカウンターに関連し、
前記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するように動作可能である、
エンコーダ(10)。
[2]前記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む、[1]に記載のエンコーダ(10)。
[3]符号化出力データ(D2)を、入力データ(D1)に対して圧縮形態で生成するように動作可能である、[2]に記載のエンコーダ(10)。
[4]可変長符号化(VLC)、ハフマン符号化、ゴロム符号化、算術符号化、レンジ符号化、差分符号化、レンペル・ジブ符号化、BWT符号化のうちの少なくとも1つを利用することによって、前記複数のパート(A、B)を符号化することにより前記符号化出力データ(D2)を生成するように動作可能である、[1]から[3]の何れかに記載のエンコーダ(10)。
[5]エントロピー符号化法を用いることにより前記複数のパート(A、B)の少なくとも1つを符号化するように動作可能であり、前記エントロピー符号化法は、前記符号化出力データ(D2)においてパート(A及び/又はB)をエントロピー符号化する際に、1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを用いることによってパート(A及び/又はB)の値を符号化することができる、[4]に記載のエンコーダ(10)。
[6]前記符号化出力データ(D2)に1つ又は複数のマーカーを含めるように動作可能であり、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである、[1]から[5]の何れかに記載のエンコーダ(10)。
[7]前記ランレングス符号化(RLE)表現は、実質的に可逆方式で実施される、[1]から[6]の何れかに記載のエンコーダ(10)。
[8]エンコーダ(10)において入力データ(D1)を符号化することにより対応する符号化出力データ(D2)を生成する方法であって、前記方法は、入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を用いることを含み、さらに前記方法は、
(a)前記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するエンコーダ(10)を用いること、但し、少なくとも1つのパートは、第1データストリームにおいて、オリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるシンボルの少なくとも幾つかの出現を示すカウンターに関連するものとすることと;
(b)前記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するエンコーダ(10)を用いることと;
を更に含む、方法。
[9]前記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む、[8]に記載の入力データ(D1)を符号化する方法。
[10]前記エンコーダ(10)を用いて、前記符号化出力データ(D2)を、入力データ(D1)に対して圧縮形態で生成することを含む、[8]に記載の方法。
[11]前記エンコーダ(10)を用いて、
変長符号化(VLC)、ハフマン符号化、ゴロム符号化、算術符号化、レンジ符号化、差分符号化、レンペル・ジブ符号化、BWT符号化のうちの少なくとも1つを利用することによって、前記複数のパート(A、B)を符号化することにより前記符号化出力データ(D2)を生成することを含む、[8]から[10]の何れかに記載の方法。
[12]前記エンコーダ(10)を用いて、エントロピー符号化法を用いることにより前記複数のパート(A、B)の少なくとも1つを符号化することを含み、前記エントロピー符号化法は、符号化出力データ(D2)においてパート(A及び/又はB)をエントロピー符号化する際に、1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを用いることによってパート(A及び/又はB)の値を符号化することができる、[11]に記載の方法。
[13]前記エンコーダ(10)を用いて、前記符号化出力データ(D2)に1つ又は複数のマーカーを含めることを含み、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである、[8]から[12]の何れかに記載の方法。
[14]実質的に可逆方式で前記ランレングス符号化(RLE)表現を実装することを含む、[8]から[13]の何れかに記載の方法。
[15]符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成するデコーダ(50)であって、前記デコーダ(50)はデータ処理装置を備え、
前記データ処理装置は、前記符号化入力データ(D2)を複数の別々のパート(A、B)に復号するように構成され、但し、少なくとも1つのパートは、第1データストリームにおいて、オリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるシンボルの少なくとも幾つかの出現を示すカウンターに関連し、
前記データ処理装置はさらに、前記複数のパート(A、B)を共に結合することにより結合データを生成し、ランレングス復号処理を介して該結合データを復号することにより前記復号出力データ(D3)を生成するように構成される、
る、
デコーダ(50)。
[16]前記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む、[15]に記載のデコーダ(50)。
[17]復号出力データ(D3)を、符号化入力データ(D2)に対して展開形態で生成するように動作可能である、[15]に記載のデコーダ(50)。
[18]逆可変長符号化(VLC)、逆ハフマン符号化、逆ゴロム符号化、逆算術符号化、逆レンジ符号化、逆差分符号化、逆レンペル・ジブ符号化、逆BWT符号化のうちの少なくとも1つを利用することによって、前記符号化入力データ(D2)を復号することにより前記複数のパート(A、B)を生成するように動作可能である、[15]から[17]の何れかに記載のデコーダ(50)。
[19]エントロピー復号法を用いることにより前記複数のパート(A、B)の少なくとも1つを復号するように動作可能であり、前記エントロピー復号法は、前記符号化入力データ(D2)から1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを復号することができる、[18]に記載のデコーダ(50)。
[20]前記符号化入力データ(D2)において1つ又は複数のマーカーを特定するように動作可能であり、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである、[15から[19]の何れかに記載のデコーダ(50)。
[21]前記ランレングス復号処理は、実質的に可逆方式で実施される、[15]から[20]の何れかに記載のデコーダ(50)。
[22]デコーダ(50)において符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成する方法であって、前記方法は、データ処理装置を用いることを含み、前記方法はさらに、
(a)符号化入力データ(D2)を複数の別々のパート(A、B)に復号するデコーダ(50)を用いること、但し、少なくとも1つのパートは、第1データストリームにおいて、オリジナルのシンボルに関連するものであり、第2データストリームにおける少なくとも別のパートは、第1データストリームにおけるシンボルの少なくとも1つの出現を示すカウンターに関連することと;
(b)前記複数のパート(A、B)を結合することにより対応結合データを生成するデコーダ(50)を用いることと;
(c)前記結合データにランレングス復号処理を適用することにより前記復号出力データ(D3)を生成するランレングス復号処理を用いることと;
を含む、方法。
[23]前記オリジナルのシンボルは、文字、アルファベット要素、数字、ビット、バイト、ワードのうちの少なくとも1つを含む、[22]に記載の方法。
[24]前記デコーダ(50)を用いて、前記復号出力データ(D3)を、符号化入力データ(D2)に対して展開形態で生成することを含む、[22]または[23]に記載の方法。
[25]前記デコーダ(50)を用いて、
逆可変長符号化(VLC)、逆ハフマン符号化、逆ゴロム符号化、逆算術符号化、逆レンジ符号化、逆差分符号化、逆レンペル・ジブ符号化、逆BWT符号化のうちの少なくとも1つを利用することによって、前記複数のパート(A、B)を復号することにより復号出力データ(D3)を生成することを含む、[22]から[24]の何れかに記載の方法。
[26]エントロピー復号法を用いることにより前記複数のパート(A、B)の少なくとも1つを復号するデコーダ(50)を用いることを含み、前記エントロピー復号法は、前記符号化入力データ(D2)から1つ又は複数のエスケープ符号又は1つ又は複数の連続値シンボルを復号することができる、[25]に記載の方法。
[27]前記デコーダ(50)を用いて、前記符号化入力データ(D2)において1つ又は複数のマーカーを特定することを含み、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである、[22]から[26]の何れかに記載の方法。
[28]実質的に可逆方式で前記ランレングス復号処理を実施することを含む、[22]から[27]の何れかに記載の方法。
[29]入力データ(D1)を符号化することにより対応符号化データ(D2)を生成する[1]から[7]の何れかに記載のエンコーダ(10)と、符号化出力データ(D2)を復号することにより対応出力復号データ(D3)を生成する[15]から[21]の何れかに記載のデコーダ(50)とを備えるコーデック装置(20)。
[30]装置の処理手段に実行されると、前記装置に、[8]から[14]及び[22]から[28]の何れかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。

Claims (12)

  1. 入力データ(D1)を符号化することにより対応符号化出力データ(D2)を生成するエンコーダ(10)であって、
    前記入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を備え、
    前記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するように動作可能であり、前記複数のパートのうちの少なくとも1つのパートが、オリジナルのシンボルに関連し、前記複数のパートのうちの少なくとも別のパートの1つが、前記オリジナルのシンボルの少なくとも1つについての出現を示すカウンターに関連し、前記少なくとも1つのパートは第1ストリームに含まれ、前記少なくとも別のパートの1つは前記第1ストリームとは異なる第2ストリームに含まれ、ただし前記少なくとも別のパートの1つに含まれる値の個数は、前記少なくとも1つのパートに含まれる値の個数よりも少なく、
    前記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するように動作可能であり、
    符号化された前記少なくとも1つのパート及び符号化された前記少なくとも別のパートの1つは前記符号化出力データ(D2)に含まれる、
    エンコーダ(10)において、
    前記符号化出力データ(D2)に1つ又は複数のマーカーを含めるように動作可能であり、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである、エンコーダ(10)
  2. 符号化出力データ(D2)を、入力データ(D1)に対して圧縮形態で生成するように動作可能である、請求項1に記載のエンコーダ(10)。
  3. エントロピー符号化を用いることにより前記複数のパート(A、B)の少なくとも1つを符号化するように動作可能である、請求項1に記載のエンコーダ(10)。
  4. 前記ランレングス符号化(RLE)表現は、可逆方式で実施される、請求項1からの何れか1項に記載のエンコーダ(10)。
  5. エンコーダ(10)において入力データ(D1)を符号化することにより対応する符号化出力データ(D2)を生成する方法であって、前記方法は、入力データ(D1)のランレングス符号化(RLE)表現を生成するデータ処理装置を用いることを含み、さらに前記方法は、
    (a)前記ランレングス符号化(RLE)表現を複数のパート(A、B)に分割するエンコーダ(10)を用いること、但し、前記複数のパートのうちの少なくとも1つのパートは、オリジナルのシンボルに関連するものであり、前記複数のパートのうちの少なくとも別のパートの1つは、前記オリジナルのシンボルの少なくとも1つについての出現を示すカウンターに関連し、前記少なくとも1つのパートは第1ストリームに含まれ、前記少なくとも別のパートの1つは前記第1ストリームとは異なる第2ストリームに含まれ、前記少なくとも別のパートの1つに含まれる値の個数は、前記少なくとも1つのパートに含まれる値の個数よりも少ない、前記用いることと;
    (b)前記複数のパート(A、B)を別々に符号化することにより符号化出力データ(D2)を生成するように前記エンコーダ(10)を用いることと;
    を更に含み、符号化された前記少なくとも1つのパート及び符号化された前記少なくとも別のパートの1つは前記符号化出力データ(D2)に含まれ
    さらに前記方法は、前記符号化出力データ(D2)に1つ又は複数のマーカーを含めることを含み、該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を示すものである、方法。
  6. 符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成するデコーダ(50)であって、前記デコーダ(50)はデータ処理装置を備え、
    前記データ処理装置は、前記符号化入力データ(D2)に含まれる複数の別々のパート(A、B)を前記符号化入力データ(D2)から復号するように構成され、但し、前記複数のパートのうちの少なくとも1つのパートは、オリジナルのシンボルに関連するものであり、前記複数のパートのうちの少なくとも別のパートの1つは、前記オリジナルのシンボルの少なくとも1つについての出現を示すカウンターに関連し、前記少なくとも1つのパートは第1ストリームに含まれ、前記少なくとも別のパートの1つは前記第1ストリームとは異なる第2ストリームに含まれ、ただし前記少なくとも別のパートの1つに含まれる値の個数は、前記少なくとも1つのパートに含まれる値の個数よりも少なく、
    前記データ処理装置はさらに、前記複数のパート(A、B)を共に結合することにより結合データを生成し、ランレングス復号処理を介して該結合データを復号することにより前記復号出力データ(D3)を生成するように構成される、
    デコーダ(50)において、
    前記符号化入力データ(D2)において1つ又は複数のマーカーを特定するように動作可能であり、ただし該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである、デコーダ(50)
  7. 復号出力データ(D3)を、符号化入力データ(D2)に対して展開形態で生成するように動作可能である、請求項に記載のデコーダ(50)。
  8. エントロピー復号を用いることにより前記複数のパート(A、B)の少なくとも1つを復号するように動作可能である、請求項に記載のデコーダ(50)。
  9. 前記ランレングス復号処理は、可逆方式で実施される、請求項からの何れか1項に記載のデコーダ(50)。
  10. デコーダ(50)において符号化入力データ(D2)を復号することにより対応復号出力データ(D3)を生成する方法であって、前記方法は、データ処理装置を用いることを含み、前記方法はさらに、
    (a)前記符号化入力データ(D2)に含まれる複数の別々のパート(A、B)を前記符号化入力データ(D2)から復号するデコーダ(50)を用いること、但し、前記複数のパートのうちの少なくとも1つのパートは、オリジナルのシンボルに関連するものであり、前記複数のパートのうちの少なくとも別のパートの1つは、前記オリジナルのシンボルの少なくとも1つについての出現を示すカウンターに関連し、前記少なくとも1つのパートは第1ストリームに含まれ、前記少なくとも別のパートの1つは前記第1ストリームとは異なる第2ストリームに含まれ、前記少なくとも別のパートの1つに含まれる値の個数は、前記少なくとも1つのパートに含まれる値の個数よりも少ない、前記用いることと;
    (b)前記複数のパート(A、B)を結合することにより対応結合データを生成するデコーダ(50)を用いることと;
    (c)前記結合データにランレングス復号処理を適用することにより前記復号出力データ(D3)を生成するランレングス復号処理を用いることと;
    を含み、
    さらに前記方法は、前記符号化入力データ(D2)において1つ又は複数のマーカーを特定するように動作可能であり、ただし該1つ又は複数のマーカーは、前記複数のパート(A、B)のそれぞれに対応する符号化データの出現を決定するものである、方法。
  11. 入力データ(D1)を符号化することにより対応符号化データ(D2)を生成する請求項1からの何れか1項に記載のエンコーダ(10)と、符号化出力データ(D2)を復号することにより対応出力復号データ(D3)を生成する請求項からの何れか1項に記載のデコーダ(50)とを備えるコーデック装置(20)。
  12. 装置の処理手段に実行されると、前記装置に、請求項または10に記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
JP2015559444A 2013-03-01 2014-03-01 データエンコーダ、データデコーダ及び方法 Active JP6431487B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1303660.3 2013-03-01
GB1303660.3A GB2507603B (en) 2013-03-01 2013-03-01 Data encoder, data decoder and method
PCT/EP2014/000530 WO2014131527A1 (en) 2013-03-01 2014-03-01 Data encoder, data decoder and method

Publications (3)

Publication Number Publication Date
JP2016512004A JP2016512004A (ja) 2016-04-21
JP2016512004A5 JP2016512004A5 (ja) 2016-06-09
JP6431487B2 true JP6431487B2 (ja) 2018-11-28

Family

ID=48142237

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015559444A Active JP6431487B2 (ja) 2013-03-01 2014-03-01 データエンコーダ、データデコーダ及び方法

Country Status (7)

Country Link
US (1) US8823560B1 (ja)
EP (1) EP2962399A1 (ja)
JP (1) JP6431487B2 (ja)
KR (1) KR101610609B1 (ja)
CN (1) CN105191145B (ja)
GB (1) GB2507603B (ja)
WO (1) WO2014131527A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2527588B (en) 2014-06-27 2016-05-18 Gurulogic Microsystems Oy Encoder and decoder
GB2539239B (en) 2015-06-10 2017-10-04 Gurulogic Microsystems Oy Encoders, decoders and methods utilizing mode symbols
KR102379182B1 (ko) * 2015-11-20 2022-03-24 삼성전자주식회사 연속 데이터 압축 장치 및 방법
CN106559084B (zh) * 2016-11-15 2019-07-30 浙江工业大学 一种基于算术编码的无损数据压缩编码方法
CN106790550B (zh) * 2016-12-23 2019-11-08 华中科技大学 一种适用于配电网监测数据压缩的系统
US10593257B2 (en) * 2018-03-15 2020-03-17 Samsung Display Co., Ltd. Stress profile compression
BR112020025515A2 (pt) * 2018-06-21 2021-03-09 Sony Corporation Dispositivo e método de codificação, mídia de armazenamento legível por computador, e, dispositivo e método de decodificação
CN110417811B (zh) * 2019-08-22 2021-08-10 上海兆芯集成电路有限公司 比特流编码压缩的方法及装置
US11115049B1 (en) * 2020-08-24 2021-09-07 Innogrit Technologies Co., Ltd. Hardware friendly data decompression
CN113890540B (zh) * 2021-09-24 2025-06-06 浪潮(北京)电子信息产业有限公司 一种并行加速lz77解码方法及装置
KR20250014117A (ko) 2023-07-19 2025-02-03 알비클라우드 주식회사 효율적 알파 인코딩 기반의 클라우드 스트리밍 서비스 제공 방법 및 이를 위한 장치
CN116738471B (zh) * 2023-08-10 2023-10-20 陕西昕晟链云信息科技有限公司 基于区块链的去中心化数据分析方法
CN117411947B (zh) * 2023-12-15 2024-02-23 安徽中科大国祯信息科技有限责任公司 基于云边协同的水务数据快速传输方法
CN118674565B (zh) * 2024-05-30 2025-04-25 广东智云城建科技有限公司 一种基于大数据的财务自动化管理系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0722342B2 (ja) * 1982-08-12 1995-03-08 三菱電機株式会社 色彩画像符号化方法
JPS61136378A (ja) * 1984-12-07 1986-06-24 Canon Inc 符号化方式
JPS61136379A (ja) * 1984-12-07 1986-06-24 Canon Inc 符号化方式
US5233348A (en) * 1992-03-26 1993-08-03 General Instrument Corporation Variable length code word decoder for use in digital communication systems
JP2000156643A (ja) * 1998-11-19 2000-06-06 Matsushita Electric Ind Co Ltd 可変長符号の復号化方法および可変長符号の復号化プログラムを記録した記録媒体
US6781528B1 (en) * 2002-10-24 2004-08-24 Apple Computer, Inc. Vector handling capable processor and run length encoding
JP3870171B2 (ja) 2003-03-11 2007-01-17 キヤノン株式会社 符号化方法及び符号化装置、コンピュータプログラム並びにコンピュータ可読記憶媒体
JP2007311024A (ja) * 2007-07-30 2007-11-29 Toshiba Corp 情報記憶媒体、情報記録方法及び情報再生方法
CN101202548A (zh) * 2007-12-28 2008-06-18 北京邮电大学 一种双游程数据编码方法
CN101299611B (zh) * 2008-06-30 2011-10-05 中国电子科技集团公司第二十八研究所 一种基于集合游程的数据压缩方法
US8108361B2 (en) * 2008-07-31 2012-01-31 Microsoft Corporation Efficient column based data encoding for large-scale data storage
GB2481870B (en) 2010-12-14 2012-06-13 Realvnc Ltd Method and system for remote computing
CN102724505B (zh) * 2012-06-06 2015-01-28 西安电子科技大学 Jpeg_ls游程编码fpga实现方法

Also Published As

Publication number Publication date
GB2507603A (en) 2014-05-07
GB201303660D0 (en) 2013-04-17
JP2016512004A (ja) 2016-04-21
KR20150105486A (ko) 2015-09-16
CN105191145A (zh) 2015-12-23
WO2014131527A1 (en) 2014-09-04
EP2962399A1 (en) 2016-01-06
US8823560B1 (en) 2014-09-02
GB2507603B (en) 2014-10-01
KR101610609B1 (ko) 2016-04-07
CN105191145B (zh) 2018-09-25

Similar Documents

Publication Publication Date Title
JP6431487B2 (ja) データエンコーダ、データデコーダ及び方法
JP2016512004A5 (ja)
KR101737294B1 (ko) 심볼 압축을 수반하는 데이터의 소스 코딩 및 디코딩을 위한 방법들 및 디바이스들
CN105359418B (zh) 编码器、解码器和编码解码方法
RU2630750C1 (ru) Устройство и способ для кодирования и декодирования исходных данных
CN108322220A (zh) 编解码方法、装置及编解码设备
US8682091B2 (en) Real-time image compression
KR20140137505A (ko) 무손실 이미지 압축 및 복원 방법과 이를 수행하는 장치
JP6073506B2 (ja) エントロピー変更器及び方法
KR20260019670A (ko) 범위 비대칭 숫자 시스템 인코딩 및 디코딩의 피쳐
KR102393743B1 (ko) 모드 심볼들을 사용하는 인코더, 디코더 및 방법
JP5453399B2 (ja) 特有数値でデータを符号化および復号するための方法および装置
KR20120012790A (ko) 입력 비트 시퀀스를 인코딩하는 방법과 디바이스 및 대응하는 디코딩 방법 및 디바이스
Das et al. Design an Algorithm for Data Compression using Pentaoctagesimal SNS
JP5640305B1 (ja) データ量削減装置
JP2013176157A (ja) 画像圧縮装置
KR20210012580A (ko) 이진데이터의 압축 방법 및 장치
Usibe et al. Noise Reduction in Data Communication Using Compression Technique
KR20210012842A (ko) 이진데이터의 압축방법 및 그 장치
KR20160126855A (ko) 데이터 부호화 및 복호화 방법과 장치
JP2010118871A (ja) 画像処理装置、画像処理方法、プログラム及び記憶媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150903

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150903

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20150903

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160328

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20160328

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161005

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20161013

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20161118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180827

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181102

R150 Certificate of patent or registration of utility model

Ref document number: 6431487

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350