JP2017184200A - 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 - Google Patents
符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 Download PDFInfo
- Publication number
- JP2017184200A JP2017184200A JP2016073314A JP2016073314A JP2017184200A JP 2017184200 A JP2017184200 A JP 2017184200A JP 2016073314 A JP2016073314 A JP 2016073314A JP 2016073314 A JP2016073314 A JP 2016073314A JP 2017184200 A JP2017184200 A JP 2017184200A
- Authority
- JP
- Japan
- Prior art keywords
- encoding
- unit
- encoded
- files
- dictionary
- 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.)
- Granted
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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3088—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
-
- 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/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3091—Data deduplication
-
- 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/60—General implementation details not specific to a particular type of compression
- H03M7/6064—Selection of Compressor
Abstract
Description
図1は、本実施例に係る符号化装置の符号化処理の流れの一例を示す図である。図1に示すように、符号化装置は、符号化対象のファイルF1内の複数のテキストファイルf11〜f1nそれぞれを、静的辞書および動的辞書D0を用いて符号化する。符号化装置は、複数のテキストファイルf11〜f1nを通して、繰り返し出現する単語が登録される動的辞書D0の共有化を図ることで、圧縮率の向上を図る。
図2は、本実施例に係る動的辞書の一例を示す図である。図2に示される動的辞書D0は、バッファ部D1とアドレステーブルD2とを含む。バッファ部D1は、文字列を記憶する。アドレステーブルD2は、動的コードと、格納位置と、データ長とを対応付けて保持する。動的コードは、あらかじめ定められた固定長の符号であり、例えば圧縮符号である。そして、動的コードは、単語の文字列が登録された順に割り当てられる。ここでは、動的コードは、16進数「A」から始まる固定長2バイトのコードである。格納位置は、バッファ部D1に格納された文字列の位置を示す。データ長は、バッファ部D1に格納された文字列の長さ(バイト長)を示す。
図3は、ビットフィルタの一例を示す図である。図3に示されるビットフィルタB0は、所定の文書の日本語一般単語のビットフィルタである。なお、図3の例では、日本語一般単語のビットフィルタについて説明するが、英数字を含む基礎単語のビットフィルタの構成も同様であるので、省略する。
図4は、符号化ファイルの構成例を示す図である。図4に示すように、符号化ファイルF2は、ヘッダ部と、符号化データと、トレーラ部とを有する。符号化データは、複数のテキストファイルそれぞれの符号化された単語コード群を記憶する。トレーラ部は、各ファイルのアドレス、動的辞書D0の情報、復号化用のケヤキ木などを記憶する。各ファイルのアドレスは、複数のテキストファイルが符号化されたファイルを格納するアドレスを示す。各ファイルのアドレスは、一例として、符号化データの先頭からの相対アドレスである。動的辞書D0の情報は、図2に示した動的辞書の情報に対応する。ヘッダ部には、各ファイルのアドレスへのポインタやトレーラ部に格納された動的辞書D0へのポインタが格納される。符号化装置は、複数のテキストファイルを符号化すると、符号化された結果である各ファイルを符号化ファイルF2に格納し、格納したアドレスを各ファイルのアドレスに格納する。後述する復号化装置は、復号化処理において、ヘッダ部の各ファイルのアドレスへのポインタを利用して、トレーラ部の各ファイルのアドレスから復号化対象のファイルのアドレスを参照する。復号化装置は、ヘッダ部の動的辞書D0へのポインタを利用し、動的辞書D0を参照する。
図5は、本実施例に係る復号化装置の復号化処理の流れの一例を示す図である。図5では、復号化処理のワークエリアとして、メモリに記憶領域A1、記憶領域A2および記憶領域A3を設ける。復号化装置は、記憶領域A2に、図4のトレーラ部に格納された動的辞書D0の情報をロードする。また、復号化装置は、符号化ファイルF2に記憶されたテキストファイルf12の符号化データを記憶領域A1にロードし、順次単語コードを読み出す。復号化装置は、読み出した単語コードに応じた復号化処理を行う。復号化装置は、単語の文字列(文字コード)を記憶領域A3に格納し、記憶領域A3に格納された文字コードに基づいて復号化ファイルF3を生成する。
図7は、本実施例に係る符号化装置の構成の一例を示す機能ブロック図である。図7に示すように、符号化装置100は、符号化部110および記憶部120を有する。
図8は、本実施例に係る復号化装置の構成の一例を示す機能ブロック図である。図8に示すように、復号化装置200は、復号化部210および記憶部220を有する。
次に、図7に示した符号化部110の処理手順について、図9を参照して説明する。図9は、本実施例に係る符号化処理のフローチャートの一例を示す図である。
次に、図8に示した復号化部210の処理手順について、図10を参照して説明する。図10は、本実施例に係る復号化処理のフローチャートの一例を示す図である。
図11は、本実施例に係る符号化処理の用途の一例を示す図である。図11では、符号化対象のファイルF1内の複数のテキストファイルとして、掲示板への投稿文およびこれに対するコメント文が用いられる場合である。ここでは、Aさんが、掲示板に「山歩き」について投稿したところ、9件のコメントが書き込まれた場合であるとする。Aさんの投稿文および9件のコメント文は、それぞれ互いに関連を持つテキストファイルである。すなわち、それぞれのテキストファイル内で、「尾瀬ヶ原」「ニッコウキスゲ」「鳩待峠」などの未知語が、繰り返し使用されている。「尾瀬ヶ原」は、符号a1で示されている。「鳩待峠」は、符号a2で示されている。「ニッコウキスゲ」は、符号a3で示されている。Aさんの投稿文、Bさんのコメント、Cさんのコメント、Dさんのコメント、Eさんのコメント、Fさんのコメント、Gさんのコメント、Hさんのコメント、Iさんのコメント、Aさんのコメントが、それぞれテキストファイルに対応する。
上記実施例によれば、符号化装置100は、入力された複数のテキストファイルそれぞれを、静的辞書部121および複数のテキストファイルにおける単語の出現頻度に応じて生成される動的辞書部122を用いて符号化する。符号化装置100は、符号化された複数の符号化ファイルと、動的辞書部122に関する情報と、複数の符号化ファイルそれぞれの位置を示す位置情報とを含む、結合符号化ファイルF2を生成する。かかる構成によれば、符号化装置100は、複数のテキストファイルの動的辞書部122を共有することで、圧縮率を向上できる。
以下、上述の実施形態における変形例の一部を説明する。下記の変形例のみでなく、本発明の本旨を逸脱しない範囲の設計変更は適宜行われうる。
実施例の符号化装置100および復号化装置200を含む情報処理装置のハードウェア構成を、図12を参照して説明する。図12は、実施例の情報処理装置のハードウェア構成を示す図である。図12の例が示すように、コンピュータ400は、各種演算処理を実行するCPU401と、ユーザからのデータ入力を受け付ける入力装置402と、モニタ403とを有する。また、コンピュータ400は、記憶媒体からプログラム等を読み取る媒体読取装置404と、他の装置と接続するためのインターフェース装置405と、他の装置と無線により接続するための無線通信装置406とを有する。また、コンピュータ400は、各種情報を一時記憶するRAM407と、ハードディスク装置408とを有する。また、各装置401〜408は、バス409に接続される。
110 符号化部
111 ファイルリード部
112 判定部
113 第1符号化部
114 第2符号化部
115 更新部
116 ファイルライト部
120 記憶部
121 静的辞書部
122 動的辞書部
200 復号化装置
210 復号化部
211 ファイルリード部
212 判定部
213 第1復号化部
214 第2復号化部
215 更新部
216 ファイルライト部
220 記憶部
221 静的辞書部
222 動的辞書部
223 復号化用ケヤキ木
Claims (12)
- コンピュータに、
入力された複数のテキストファイルそれぞれを、静的辞書および前記複数のテキストファイルにおける単語の出現頻度に応じて生成される動的辞書を用いて符号化し、
前記符号化された複数の符号化ファイルと、前記動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む、結合符号化ファイルを生成する、
処理を行わせる符号化プログラム。 - 前記生成する処理は、前記動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを、前記結合符号化ファイルのトレーラ部に格納する
ことを特徴とする請求項1に記載の符号化プログラム。 - 前記符号化する処理は、互いに関連を持つ複数のテキストファイルにおける単語の出現頻度に応じて前記動的辞書を生成し、前記静的辞書および前記動的辞書を用いて符号化する
ことを特徴とする請求項1または請求項2に記載の符号化プログラム。 - 前記互いに関連を持つ複数のテキストファイルは、同じフォルダにある
ことを特徴とする請求項3に記載の符号化プログラム。 - 前記互いに関連を持つ複数のテキストファイルは、共通する、あるいは、関連するファイル関連情報を持つ
ことを特徴とする請求項3に記載の符号化プログラム。 - 前記互いに関連を持つ複数のテキストファイルは、共通する特定の単語を持つ
ことを特徴とする請求項3に記載の符号化プログラム。 - 前記互いに関連を持つ複数のテキストファイルは、共通する特定の単語の出現頻度が所定値以上である
ことを特徴とする請求項3に記載の符号化プログラム。 - 入力された複数のテキストファイルそれぞれを、静的辞書および前記複数のテキストファイルにおける単語の出現頻度に応じて生成される動的辞書を用いて符号化する符号化部と、
前記符号化部によって符号化された複数の符号化ファイルと、前記動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む、結合符号化ファイルを生成する生成部と、
を有することを特徴とする符号化装置。 - コンピュータが、
入力された複数のテキストファイルそれぞれを、静的辞書および前記複数のテキストファイルにおける単語の出現頻度に応じて生成される動的辞書を用いて符号化し、
前記符号化された複数の符号化ファイルと、前記動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む、結合符号化ファイルを生成する、
処理を実行する符号化方法。 - コンピュータに、
複数の符号化ファイルと、単語の出現頻度に応じて生成される動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む結合符号化ファイルから、前記複数の符号化ファイルそれぞれの位置を示す位置情報に基づいて、復号化対象の符号化ファイルを抽出し、
該抽出した符号化ファイルを前記動的辞書および静的辞書を用いて復号化する
処理を行わせる復号化プログラム。 - 複数の符号化ファイルと、単語の出現頻度に応じて生成される動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む結合符号化ファイルから、前記複数の符号化ファイルそれぞれの位置を示す位置情報に基づいて、復号化対象の符号化ファイルを抽出する抽出部と、
該抽出した符号化ファイルを前記動的辞書および静的辞書を用いて復号化する復号化部と、
を有することを特徴とする復号化装置。 - コンピュータが、
複数の符号化ファイルと、単語の出現頻度に応じて生成される動的辞書に関する情報と、前記複数の符号化ファイルそれぞれの位置を示す位置情報とを含む結合符号化ファイルから、前記複数の符号化ファイルそれぞれの位置を示す位置情報に基づいて、復号化対象の符号化ファイルを抽出し、
該抽出した符号化ファイルを前記動的辞書および静的辞書を用いて復号化する
処理を実行する復号化方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016073314A JP6686639B2 (ja) | 2016-03-31 | 2016-03-31 | 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 |
US15/471,171 US9973206B2 (en) | 2016-03-31 | 2017-03-28 | Computer-readable recording medium, encoding device, encoding method, decoding device, and decoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016073314A JP6686639B2 (ja) | 2016-03-31 | 2016-03-31 | 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017184200A true JP2017184200A (ja) | 2017-10-05 |
JP6686639B2 JP6686639B2 (ja) | 2020-04-22 |
Family
ID=59962007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016073314A Active JP6686639B2 (ja) | 2016-03-31 | 2016-03-31 | 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9973206B2 (ja) |
JP (1) | JP6686639B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019193129A (ja) * | 2018-04-26 | 2019-10-31 | 株式会社日立製作所 | データ転送装置及びデータ転送方法、並びにデータ転送装置を備えたネットワークシステム |
JP7159557B2 (ja) | 2017-12-28 | 2022-10-25 | 富士通株式会社 | 動的辞書の生成プログラム、動的辞書の生成方法および復号化装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107153647B (zh) * | 2016-03-02 | 2021-12-07 | 北京字节跳动网络技术有限公司 | 进行数据压缩的方法、装置、系统和计算机程序产品 |
US10956440B2 (en) * | 2017-10-16 | 2021-03-23 | International Business Machines Corporation | Compressing a plurality of documents |
US11387844B2 (en) * | 2019-04-19 | 2022-07-12 | Preferred Networks, Inc. | Data compression method, data compression apparatus, data decompression method, data decompression apparatus and data storage system |
US11122095B2 (en) * | 2019-09-23 | 2021-09-14 | Netapp, Inc. | Methods for dictionary-based compression and devices thereof |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09214352A (ja) * | 1996-01-31 | 1997-08-15 | Hitachi Ltd | データ圧縮方法および装置 |
WO2014097359A1 (ja) * | 2012-12-19 | 2014-06-26 | 富士通株式会社 | 圧縮プログラム、圧縮方法、圧縮装置およびシステム |
WO2014147672A1 (ja) * | 2013-03-22 | 2014-09-25 | 富士通株式会社 | 圧縮装置、圧縮方法、辞書生成装置、辞書生成方法、伸長装置、伸長方法、伸長プログラムおよび情報処理システム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870036A (en) * | 1995-02-24 | 1999-02-09 | International Business Machines Corporation | Adaptive multiple dictionary data compression |
JP2000269822A (ja) | 1999-03-12 | 2000-09-29 | Fujitsu Ltd | データ圧縮装置、及びデータ復元装置 |
US6771824B1 (en) * | 1999-12-28 | 2004-08-03 | Lucent Technologies Inc. | Adaptive variable length decoding method |
US6985965B2 (en) * | 2000-11-16 | 2006-01-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Static information knowledge used with binary compression methods |
KR20050053996A (ko) * | 2003-12-03 | 2005-06-10 | 삼성전자주식회사 | 허프만 코드를 효율적으로 복호화하는 방법 및 장치 |
GB0513433D0 (en) * | 2005-06-30 | 2005-08-10 | Nokia Corp | Signal message compressor |
EP1917901B1 (en) * | 2005-08-25 | 2019-04-17 | Olympus Corporation | Endoscope insertion shape analysis apparatus and endoscope insertion shape analysis system |
US8542135B2 (en) * | 2011-11-24 | 2013-09-24 | International Business Machines Corporation | Compression algorithm incorporating automatic generation of a bank of predefined huffman dictionaries |
JP6531398B2 (ja) * | 2015-01-19 | 2019-06-19 | 富士通株式会社 | プログラム |
JP6536243B2 (ja) * | 2015-07-16 | 2019-07-03 | 富士通株式会社 | 符号化プログラム、符号化装置、符号化方法、照合プログラム、照合装置および照合方法 |
JP6641857B2 (ja) * | 2015-10-05 | 2020-02-05 | 富士通株式会社 | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 |
-
2016
- 2016-03-31 JP JP2016073314A patent/JP6686639B2/ja active Active
-
2017
- 2017-03-28 US US15/471,171 patent/US9973206B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09214352A (ja) * | 1996-01-31 | 1997-08-15 | Hitachi Ltd | データ圧縮方法および装置 |
WO2014097359A1 (ja) * | 2012-12-19 | 2014-06-26 | 富士通株式会社 | 圧縮プログラム、圧縮方法、圧縮装置およびシステム |
WO2014147672A1 (ja) * | 2013-03-22 | 2014-09-25 | 富士通株式会社 | 圧縮装置、圧縮方法、辞書生成装置、辞書生成方法、伸長装置、伸長方法、伸長プログラムおよび情報処理システム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7159557B2 (ja) | 2017-12-28 | 2022-10-25 | 富士通株式会社 | 動的辞書の生成プログラム、動的辞書の生成方法および復号化装置 |
JP2019193129A (ja) * | 2018-04-26 | 2019-10-31 | 株式会社日立製作所 | データ転送装置及びデータ転送方法、並びにデータ転送装置を備えたネットワークシステム |
Also Published As
Publication number | Publication date |
---|---|
US9973206B2 (en) | 2018-05-15 |
US20170288694A1 (en) | 2017-10-05 |
JP6686639B2 (ja) | 2020-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6686639B2 (ja) | 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 | |
JP6742692B2 (ja) | 符号化プログラムおよび伸長プログラム | |
JP6531398B2 (ja) | プログラム | |
US10360183B2 (en) | Encoding device, encoding method, decoding device, decoding method, and computer-readable recording medium | |
JP5831298B2 (ja) | プログラム、情報処理装置およびインデックス生成方法 | |
JP6641857B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
JP6540308B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
US20180052810A1 (en) | Non-transitory computer-readable recording medium, encoding method, encoding apparatus, decoding method, and decoding apparatus | |
JP6834327B2 (ja) | 符号化プログラム、符号化装置および符号化方法 | |
US20170017619A1 (en) | Encoding method and information processing device | |
US20180285443A1 (en) | Non-transitory computer readable medium, encode device, and encode method | |
JP6805720B2 (ja) | データ検索プログラム、データ検索装置およびデータ検索方法 | |
US9479195B2 (en) | Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device | |
US11323132B2 (en) | Encoding method and encoding apparatus | |
JP7159557B2 (ja) | 動的辞書の生成プログラム、動的辞書の生成方法および復号化装置 | |
JP6511752B2 (ja) | 符号化装置、符号化方法、復号装置、復号方法、及び、プログラム | |
JP6540306B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
US20160210304A1 (en) | Computer-readable recording medium, information processing apparatus, and conversion process method | |
JP2023132713A (ja) | データ伸張装置、メモリシステム、およびデータ伸張方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200129 |
|
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: 20200303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200316 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6686639 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |