JP6593445B2 - 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 - Google Patents
符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 Download PDFInfo
- Publication number
- JP6593445B2 JP6593445B2 JP2017542666A JP2017542666A JP6593445B2 JP 6593445 B2 JP6593445 B2 JP 6593445B2 JP 2017542666 A JP2017542666 A JP 2017542666A JP 2017542666 A JP2017542666 A JP 2017542666A JP 6593445 B2 JP6593445 B2 JP 6593445B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- digits
- encoding
- numerical
- representation
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/02—Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
- H03M7/12—Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word having two radices, e.g. binary-coded-decimal code
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4031—Fixed length to variable length coding
- H03M7/4037—Prefix coding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4031—Fixed length to variable length coding
- H03M7/4037—Prefix coding
- H03M7/4043—Adaptive prefix coding
- H03M7/4068—Parameterized codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
最初に、図1を用いて、実施例1に係る符号化・復号化装置10が実施する数値の符号化処理の概要について説明する。図1は、数値の符号化の流れを概略的に示した図である。対象ファイル30は、複数の数値のデータが含まれている。例えば、対象ファイル30は、所定の区切り文字により区切られて複数の数値のデータが記憶されている。図1の例では、符号化・復号化装置10が、圧縮処理の対象である対象ファイル30に含まれる「・・・,1,7,4096,・・・」を符号化する場合を例に説明する。図1の例では、対象ファイル30に記憶された数値を10進数表記で示している。対象ファイル30には、区切り文字「,」(カンマ)により「1」、「7」、「4096」の数値が区切られて記憶されている。なお、図1に示した対象ファイル30は、一例であり、これに限定されるものではない。
次に、図2を用いて、実施例1に係る符号化・復号化装置10が実施する数値の復号化処理の概要について説明する。図2は、数値の復号化の流れを概略的に示した図である。符号化・復号化装置10の復号化部50は、符号化ファイル31から数値の符号データを順に読み出す(図2(1))。図2の例では、図1にて符号化された「0001」、「0111」、「11110001000000000000」をそれぞれ読み出す。復号化部50は、読み出した各符号データを復号化する(図2(2))。例えば、復号化部50は、読み出した各符号データをそれぞれ先頭のビットから順に「0」が出現するまでのビット数をカウントして、瞬時符号の桁数を識別する。図2の例では、「0001」は、先頭の1ビット目が「0」であることから1桁と識別される。「0111」も、先頭の1ビット目が「0」であることから1桁と識別される。「11110001000000000000」は、先頭から5ビット目が「0」であることから5桁と識別される。復号化部50は、符号データから瞬時符号を分離して数値部分の符号を抽出し、瞬時符号から識別した桁数に応じたビット単位で数値部分の符号を数値に復号化する。図2の例では、「0001」は、先頭の瞬時符号「0」を除いて数値部分の符号「001」が分離され、8進数の数値「1」や10進数の数値「1」に復号化される。「0111」は、先頭の瞬時符号「0」を除いて数値部分の符号「111」が分離され、8進数の数値「7」や10進数の数値「7」に復号化される。「11110001000000000000」は、先頭の瞬時符号「11110」を除いて数値部分の符号「001000000000000」が分離され、8進数の数値「10000」や10進数の数値「4096」に復号化される。このように、復号化部50は、短い符号長に符号化された符号データを元の数値に復元できる。
次に、符号化・復号化装置10の構成について説明する。図3は、実施例1に係る符号化・復号化装置の構成の一例を示す図である。符号化・復号化装置10は、対象ファイル30の圧縮などの符号化、および、圧縮されたデータの復号化を行う装置である。符号化・復号化装置10は、例えば、パーソナルコンピュータ、サーバコンピュータなどのコンピュータや、タブレット端末、スマートフォンなどの情報処理装置である。符号化・復号化装置10は、1台のコンピュータとして実装してもよく、また、複数台のコンピュータによるクラウドとして実装することもできる。なお、本実施例では、符号化・復号化装置10を1台のコンピュータとした場合を例として説明する。図3に示すように、符号化・復号化装置10は、記憶部20と、制御部21とを有する。なお、符号化・復号化装置10は、コンピュータや情報処理装置が有する上記の機器以外の他の機器を有してもよい。
実施例1に係る符号化・復号化装置10が対象ファイル30を符号化して圧縮する符号化処理の流れについて説明する。図8Aは、実施例1に係る符号化処理の手順の一例を示すフローチャートである。この符号化処理は、所定のタイミング、例えば、対象ファイル30を指定して符号化開始を指示する所定操作が行われたタイミングで実行される。
上述してきたように、本実施例に係る符号化・復号化装置10は、符号化対象の数値を、8進数表現の数値符号に符号化すると共に、符号化対象の数値を8進数表現した際の桁数を示した瞬時符号を付加した符号データを生成する。これにより、符号化・復号化装置10は、小さい数値を短い符号長の符号に圧縮できる。これにより、符号化・復号化装置10は、データを高い圧縮率で圧縮できる。
次に、実施例2に係る符号化・復号化装置10が対象ファイル30を符号化して圧縮する符号化処理の流れについて説明する。図11Aは、実施例2に係る符号化処理の手順の一例を示すフローチャートである。この符号化処理は、所定のタイミング、例えば、対象ファイル30を指定して符号化開始を指示する所定操作が行われたタイミングで実行される。
上述してきたように、本実施例に係る符号化・復号化装置10は、複数の前記符号化対象の数値をそれぞれ8進数表現した桁数ごとに出現頻度を算出する。符号化・復号化装置10は、算出された出現頻度の多い桁数の順に、先頭のビットから桁数が対応付けられ、符号化対象の数値を8進数表現した際の桁数を示した瞬時符号を付加した符号データを生成する。これにより、符号化・復号化装置10は、8進数表現した際の出現頻度の多い桁数の数値の瞬時符号を短くでき、短い符号長の符号に圧縮できる。これにより、符号化・復号化装置10は、データをより高い圧縮率で圧縮できる。
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。最初に、圧縮処理を行う符号化プログラムについて説明する。図14は、符号化プログラムを実行するコンピュータの一例を示す図である。
次に、復号化を行う復号化プログラムについて説明する。図15は、復号化プログラムを実行するコンピュータの一例を示す図である。なお、図14と同一の部分については同一の符号を付して、説明を省略する。
20 記憶部
21 制御部
30 対象ファイル
31 符号化ファイル
40 符号化部
41 抽出部
42 生成部
43 出力部
44 算出部
50 復号化部
51 識別部
52 復号部
Claims (8)
- コンピュータに、
符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を数値符号に符号化すると共に、前記2 n 進数表現の数値の桁数を示した瞬時符号を前記数値符号に付加した符号データを生成する
処理を実行させることを特徴とする符号化プログラム。 - 前記生成する処理は、前記2 n 進数表現の数値の桁数分のビット数のビット列とされた前記瞬時符号であって、前記瞬時符号の先頭のビットから順に各ビットに前記2 n 進数表現の数値の1桁目から昇順に各桁が対応づけられ、前記2 n 進数表現の数値の桁数に対応したビットに0または1の一方がセットされ、数値の桁数に対応しないビットに0または1の他方がセットされた前記瞬時符号を前記数値符号に付加した符号データを生成する
ことを特徴とする請求項1に記載の符号化プログラム。 - 前記コンピュータに、
複数の前記符号化対象の数値をそれぞれ2 n 進数表現の数値の桁数ごとに出現頻度を算出する処理をさらに実行させ、
前記生成する処理は、前記2 n 進数表現の数値の桁数に対応したビット数のビット列とされた前記瞬時符号であって、前記瞬時符号の先頭のビットから順に各ビットに前記算出された出現頻度の多い順に前記2 n 進数表現の数値の各桁が対応付けられ、前記2 n 進数表現の数値の桁数に対応したビットに0または1の一方がセットされ、数値の桁数に対応しないビットに0または1の他方がセットされた前記瞬時符号を前記数値符号に付加した符号データを生成する
ことを特徴とする請求項1に記載の符号化プログラム。 - コンピュータが、
符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を数値符号に符号化すると共に、前記2 n 進数表現の数値の桁数を示した瞬時符号を前記数値符号に付加した符号データを生成する
処理を実行することを特徴とする符号化方法。 - 符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を数値符号に符号化すると共に、前記2 n 進数表現の数値の桁数を示した瞬時符号を付加した符号データを生成する生成部
を有することを特徴とする符号化装置。 - コンピュータに、
符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を符号化した数値符号に、前記2 n 進数表現の数値の桁数を示した瞬時符号が付加された符号データの前記瞬時符号から2n進数表現での桁数を識別し、
識別した桁数に応じて、前記数値符号をnビット単位で数値に復号化する
処理を実行させることを特徴とする復号化プログラム。 - コンピュータが、
符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を符号化した数値符号に、前記2 n 進数表現の数値の桁数を示した瞬時符号が付加された符号データの前記瞬時符号から2n進数表現での桁数を識別し、
識別した桁数に応じて、前記数値符号をnビット単位で数値に復号化する
処理を実行することを特徴とする復号化方法。 - 符号化対象の数値を2 n進数表現(nは2以上の自然数)した2 n 進数表現の数値を符号化した数値符号に、前記2 n 進数表現の数値の桁数を示した瞬時符号が付加された符号データの前記瞬時符号から2n進数表現での桁数を識別する識別部と、
前記識別部により識別された桁数に応じて、前記数値符号をnビット単位で数値に復号化する復号部と、
を有することを特徴とする復号化装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/078120 WO2017056327A1 (ja) | 2015-10-02 | 2015-10-02 | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017056327A1 JPWO2017056327A1 (ja) | 2018-07-19 |
JP6593445B2 true JP6593445B2 (ja) | 2019-10-23 |
Family
ID=58422984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017542666A Active JP6593445B2 (ja) | 2015-10-02 | 2015-10-02 | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10447295B2 (ja) |
EP (1) | EP3358748B1 (ja) |
JP (1) | JP6593445B2 (ja) |
WO (1) | WO2017056327A1 (ja) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2389278A1 (fr) * | 1977-04-29 | 1978-11-24 | Thomson Csf | Systeme de stockage magnetique d'informations numeriques codees avec transcodage reversible en code bipolaire a haute densite d'ordre n |
JPS54156446A (en) * | 1978-05-30 | 1979-12-10 | Ricoh Co Ltd | Code conversion system |
US5548110A (en) * | 1986-04-18 | 1996-08-20 | Cias, Inc. | Optical error-detecting, error-correcting and other coding and processing, particularly for bar codes, and applications therefor such as counterfeit detection |
JPS62298280A (ja) * | 1986-06-18 | 1987-12-25 | Ricoh Co Ltd | 画像符号化方法 |
JPS63269623A (ja) | 1987-04-28 | 1988-11-07 | Fujitsu Ltd | 圧縮デ−タデコ−ド装置 |
US5287490A (en) * | 1991-03-07 | 1994-02-15 | Digital Equipment Corporation | Identifying plausible variable length machine code of selecting address in numerical sequence, decoding code strings, and following execution transfer paths |
JPH07273661A (ja) | 1994-03-28 | 1995-10-20 | Toshiba Corp | 圧縮符号化復号化装置 |
US6959412B2 (en) * | 2002-03-04 | 2005-10-25 | Seagate Technology Llc | Error correction coding utilizing numerical base conversion for modulation coding |
-
2015
- 2015-10-02 WO PCT/JP2015/078120 patent/WO2017056327A1/ja active Application Filing
- 2015-10-02 EP EP15905480.8A patent/EP3358748B1/en active Active
- 2015-10-02 JP JP2017542666A patent/JP6593445B2/ja active Active
-
2018
- 2018-03-29 US US15/940,081 patent/US10447295B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3358748B1 (en) | 2022-05-11 |
EP3358748A1 (en) | 2018-08-08 |
EP3358748A4 (en) | 2018-09-26 |
WO2017056327A1 (ja) | 2017-04-06 |
JPWO2017056327A1 (ja) | 2018-07-19 |
US10447295B2 (en) | 2019-10-15 |
US20180226986A1 (en) | 2018-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6616877B2 (ja) | Vlsiでの効率的なハフマン符号化を行う装置および方法 | |
US9077368B2 (en) | Efficient techniques for aligned fixed-length compression | |
WO2019153700A1 (zh) | 编解码方法、装置及编解码设备 | |
JP3778087B2 (ja) | データ符号化装置及びデータ復号装置 | |
JP6681313B2 (ja) | データを符号化するための方法、コンピュータ・プログラムおよびシステム | |
KR20150092585A (ko) | 이진 영상에 기반한 유전체 데이터 압축 방법 및 장치 | |
KR20170040343A (ko) | 적응형 레이트 압축 해시 프로세싱 디바이스 | |
JP2019036810A (ja) | データ圧縮装置、データ復元装置、データ圧縮プログラム、データ復元プログラム、データ圧縮方法、およびデータ復元方法 | |
JP6609404B2 (ja) | 圧縮プログラム、圧縮方法および圧縮装置 | |
JP5472610B2 (ja) | 数値データ列の符号化/復号化の方法および装置 | |
JP6593445B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
US9479195B2 (en) | Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device | |
WO2007108395A1 (ja) | 可変長符号の復号装置および復号方法 | |
CN103312338B (zh) | 用于解码的设备和方法 | |
JP2016170750A (ja) | データ管理プログラム、情報処理装置およびデータ管理方法 | |
JP2016052046A (ja) | 圧縮装置、伸長装置およびストレージ装置 | |
JP5626440B2 (ja) | 数値データ列の符号化/復号化の方法および装置 | |
JP2010258532A (ja) | ビット長を符号に変換する回路及び方法 | |
JP6512294B2 (ja) | 圧縮プログラム、圧縮方法および圧縮装置 | |
Nguyen et al. | A proposed approach to compound file fragment identification | |
CN109698704B (zh) | 比对型基因测序数据解压方法、系统及计算机可读介质 | |
JP6903892B2 (ja) | 検証プログラム、検証装置、検証方法、符号化プログラム、符号化装置および符号化方法 | |
JP2003273746A (ja) | 可変長符号復号装置 | |
JP2016139958A (ja) | 情報処理装置及びプログラム | |
KR102355585B1 (ko) | 플래시 메모리 산술 인코딩과 디코딩을 위한 방법과 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190409 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190815 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190827 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190909 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6593445 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |