JP2008067351A - 符号化装置、復号化装置、符号化方法及びプログラム - Google Patents
符号化装置、復号化装置、符号化方法及びプログラム Download PDFInfo
- Publication number
- JP2008067351A JP2008067351A JP2007157176A JP2007157176A JP2008067351A JP 2008067351 A JP2008067351 A JP 2008067351A JP 2007157176 A JP2007157176 A JP 2007157176A JP 2007157176 A JP2007157176 A JP 2007157176A JP 2008067351 A JP2008067351 A JP 2008067351A
- Authority
- JP
- Japan
- Prior art keywords
- group
- compressed information
- code
- encoding
- symbol
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【解決手段】 画像処理装置2は、ソースコーダで生成されたシンボルを、既定数のシンボルからなるブロックにまとめ、ブロック毎に符号語を割り振る。すなわち、図1(B)に例示するように、ブロックに対しては1対1の符号であるが、シンボルから見ると多対1の符号を構成する。これにより、可変長符号の処理に起因する分岐処理又はフィードバックループは、シンボル単位で発生することがなくなり、処理速度の向上が期待できる。
【選択図】図1
Description
上記目的を達成するために、本発明にかかる符号化装置は、複数の被圧縮情報をまとめて、被圧縮情報のグループを生成するグループ生成手段と、前記グループ生成手段により生成されたグループに対して、符号を割り当てる符号割当手段と、それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化する被圧縮情報符号化手段とを有する。
好適には、前記グループ生成手段により生成された下位グループから、既定のパターンに合致する被圧縮情報を削除するパターンマッチ手段をさらに有し、前記グループ分類手段は、前記パターンマッチ手段により下位グループから被圧縮情報が削除された場合に、被圧縮情報が削除された下位グループを上位グループに分類する。
また、本発明にかかる復号化装置は、複数の被圧縮情報からなるグループに割り当てられた符号に基づいて、このグループに属する被圧縮情報の符号長を特定する符号長特定手段と、前記符号長特定手段により特定された各被圧縮情報の符号長に基づいて、前記グループに属する被圧縮情報を復号化する被圧縮情報復号化手段とを有する。
また、本発明にかかる符号化方法は、複数の被圧縮情報をまとめて、被圧縮情報のグループを生成し、生成されたグループに対して、符号を割り当て、それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化する。
また、本発明にかかるプログラムは、複数の被圧縮情報をまとめて、被圧縮情報のグループを生成するステップと、生成されたグループに対して、符号を割り当てるステップと、それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化するステップとをコンピュータに実行させる。
例えば、ハフマン符号は、各シンボル値に対して1対1で付与される。すなわち、ハフマン符号化処理は、1入力(シンボル)に対して1出力(符号語)を与える。ここで、シンボルとは、エントロピー符号化処理の対象となる被圧縮情報である。換言すると、被圧縮情報には、エントロピー符号化処理の対象となるシンボルの他、モデリングがなされる前の被圧縮データ(例えば、JPEG符号化処理における画像データ又はDCT係数など)も含まれうる。
このような1対1の符号化処理は、構成及び設計が簡単であるが、図1(A)に例示するように、1シンボルごとに符号長が変わる。このため、ソフトウェア処理で出力のためにシリアライズする処理では、分岐が多発するため処理速度を低下させる要因となる。また、ハードウェア処理であっても、符号語長がフィードバックループを形成するため、処理速度に対する制約となる。
なお、説明の便宜上、ハフマン符号という用語を使ったが、上記の問題点は、国際標準JPEGの固定的なハフマン符号を含めて一般的な可変長符号化に存在する。
これにより、分岐又はフィードバックループは、シンボル単位からブロック単位に削減できるため、処理速度の向上が期待できる。
なお、本実施形態では、ブロックごとに符号語を割り振るエントロピーコーダと、ソースコーダとを組み合わせた形態を具体例として説明するが、この場合に、エントロピーコーダのブロックがソースコーダのブロックと一致する必要はなく、実装コストなどの理由でブロックサイズを変えてもよい。ただし、エントロピーコーダとソースコーダのブロックサイズについて、何らかの関係(例えば、いずれか一方が他方の約数となる関係)がある方が好ましいケースもある。
次に、以下の実施形態における画像処理装置2のハードウェア構成を説明する。
図2は、本発明にかかる符号化方法が適応される画像処理装置2のハードウェア構成を、制御装置20を中心に例示する図である。
図2に例示するように、画像処理装置2は、CPU202及びメモリ204などを含む制御装置20、通信装置22、HDD・CD装置などの記録装置24、並びに、LCD表示装置あるいはCRT表示装置及びキーボード・タッチパネルなどを含むユーザインターフェース装置(UI装置)26から構成される。
画像処理装置2は、例えば、プリンタ装置10に設けられた処理装置であり、通信装置22又は記録装置24などを介して画像データを取得し、取得された画像データを符号化して蓄積し、蓄積された符号データを復号化して印刷する。
以下、第1の実施形態を説明する。
図3は、制御装置20(図2)により実行され、本発明にかかる符号化方法を実現する符号化プログラム5の機能構成を例示する図である。
図3に例示するように、符号化プログラム5は、ソースコーダ500、グループ生成部510、ビット数算出部520、シンボル変換部530、グループ分類部540、符号割当部550、及び符号統合部560を有する。
符号化プログラム5は、例えば、図2に例示した記録媒体240に記録され、この記録媒体240を介して、制御装置20(図2)に供給される。
なお、本例では、画像データを符号化する場合を具体例として説明する。
本例のソースコーダ500は、既定の予測方法を用いて注目画素の画素値を予測し、この予測値と注目画素値との差分値(以下、予測誤差値)を算出し、算出された予測誤差値をシンボルとする。画像データでは近傍画素間で相関が高いため、シンボル値(予測誤差値)の出現頻度は0近傍で高くなることが期待できる。
本例のグループ生成部510は、ソースコーダ500から入力されたシンボルを、入力順に既定数ずつまとめて、既定数のシンボルが含まれたブロックを生成する。
本例のビット数算出部520は、グループ生成部510からシンボルのブロックが入力されると、ブロックに含まれる各シンボルについて、必要最小限のビット数(必要ビット数)を算出し、算出された必要ビット数をグループ分類部540及びシンボル変換部530に出力する。
本例のシンボル変換部530は、グループ生成部510から入力されたシンボルを、ビット数算出部520から入力された必要ビット数のビット列(すなわち、必要ビット数で表現されたシンボル)に変換する。
本例のグループ分類部540は、ブロックに含まれるシンボルの必要ビット数の組合せに基づいて、このブロックを分類すべき上位グループを決定する。
本例の符号割当部550は、上位グループ毎に、ブロックの出現頻度を計数し、上位グループ毎の出現頻度に応じて、各上位グループにハフマン符号(以下、グループ符号)を割り当てる。
なお、本例の符号割当部550は、グロックの出現頻度を上位グループ毎に計数し、計数値に基づいて符号表を設計するが、出現頻度を推定し、推定値に基づいて符号表を設計してもよいし、推定される出現頻度に応じて予め設計された符号表を用いてもよい。
本例の符号統合部560は、符号割当部550により割り当てられた符号(グループ符号)と、シンボル変換部530により変換されたシンボル値のビット列(必要ビット数で表現されたシンボル値)とを統合して、ブロック符号を生成する。
図4(A)に例示するように、グループ生成部510は、ソースコーダ500から入力されるシンボル(8ビット)を入力順に4つずつまとめて、4つのシンボルS0〜S3が含まれたブロックを生成する。本例では、各シンボルS0〜S3は、8ビットで表現された予測誤差値であり、1ブロックのビット数は32ビットである。
シンボル変換部530は、図4(B)に例示するように、ブロックに含まれる各シンボルを、必要ビット数で表現されたシンボルに変換する。シンボル表現に必要なビット数(必要ビット数)は、シンボル値に対して底2のlogをとり1を加算することで得られる。ただし、シンボル値0は0ビットと定義する。例えば、シンボル値1は1ビット、シンボル値2〜3は2ビット、シンボル値4〜7は3ビットである。本例では、シンボルが8ビットであるため、必要ビット数は、0〜8ビットの9種類となる。そして、例えば、あるブロックの必要ビット数が3、1、4、1だったとすると、本例のグループ分類部540は、これらの必要ビット数の組合せ「3、1、4、1」に基づいて、ブロックを上位グループに分類するため、このブロックは、上位グループ「3141」に縮退する。このような上位グループは6561(=9の4乗)種類存在するが、符号割当部550は、各上位グループ毎にブロックの出現確率を計測してハフマン符号を設計し、符号語とする。
なお、上位グループ「3141」には、512(=8×2×16×2)のブロックが縮退される。これらを個別に見分けるために、各シンボルを必要ビット数で表現したものを上述の符号語の後に付加する。すなわち、符号統合部560は、図4(C)に例示するように、上位グループに割り当てられた符号(上位グループ「3141」の符号語)と、ブロックに含まれるシンボル値(必要ビット数で表現されたシンボル値)とを統合する。
次に、画像処理装置2(符号化プログラム5)の全体動作を説明する。
図5は、符号化プログラム5(図3)による符号化処理(S10)のフローチャートである。
図5に示すように、ステップ100(S100)において、ソースコーダ500は、画像データが入力されると、走査順に予測誤差値を算出し、算出された予測誤差値をシンボルとしてグループ生成部510に出力する。
グループ生成部510は、ソースコーダ500から入力されるシンボル(予測誤差)を入力順に4つずつまとめて、4つのシンボルが含まれたブロックを生成し、生成されたブロック(下位グループ)をビット数算出部520及びシンボル変換部530に出力する。
また、本画像処理装置2は、複数のブロックを上位グループに分類し、上位グループに対して符号を割り当てることにより、符号表のサイズを抑えることができる。
また、本画像処理装置2は、ブロック内のシンボルに対する処理を独立に並列化することができるので、そのような処理が可能なアーキテクチャで高速化を図ることができる。
図6は、制御装置20(図2)により実行される復号化プログラム6の機能構成を例示する図である。
図6に例示するように、復号化プログラム6は、符号長特定部600、シンボル抽出部610、シンボル復号部620、及びデータ再生部630を有する。
復号化プログラム6は、例えば、図2に例示した記録媒体240に記録され、この記録媒体240を介して、制御装置20(図2)に供給される。
本例の符号長特定部600は、上位ブロックに割り当てられた符号(グループ符号)に基づいて、ブロックに含まれる各シンボルのビット数(すなわち必要ビット数)を特定し、特定されたビット数をシンボル抽出部610に出力する。
本例のシンボル抽出部610は、符号長特定部600により特定されたシンボルのビット数に基づいて、ブロックに含まれる各シンボルのビット列(必要ビット数で表現されたシンボル値)を切り出す。
本例のシンボル復号部620は、シンボル抽出部610により切り出されたシンボルのビット列(必要ビット数で表現されたシンボル値)の上位に0のビット列を付加して8ビット表現のシンボルを生成し、生成されたシンボルをデータ再生部630に出力する。
本例のデータ再生部630は、シンボル復号部620から入力されるシンボル(予測誤差値)に基づいて、元の画像データを生成する。
図7は、復号化プログラム6(図6)による復号化処理(S20)のフローチャートである。
図7に示すように、ステップ200(S200)において、符号長特定部600は、入力された符号データのグループ符号を復号化して、各ブロックの必要ビット数の組を特定する。
次に、上記実施形態の変形例1を説明する。
上記実施形態では、図4に例示するように、ブロックに含まれるシンボルの必要ビット数の組合せに基づいて、各ブロックを上位グループに分類していたが、第1の変形例では、ブロックに含まれるシンボルの必要ビット数のうちの最大値に基づいて、各ブロックを上位グループに分類する。
例えば、図8(A)に例示するように、4つのシンボルS0〜S3が含まれたブロックが存在する場合に、これらのシンボルの必要ビット数のうち、最大値を検出する。本例では、シンボルS0(予測誤差4)の必要ビット数が3ビットであり、シンボルS1(予測誤差1)の必要ビット数が1ビットであり、シンボルS2(予測誤差11)の必要ビット数が4ビットであり、シンボルS3(予測誤差1)の必要ビット数が1ビットである。そのため、本例の最大値は4である。
そして、本変形例では、最大値となったビット数でブロック内の各シンボルが表現される。すなわち、本例では、図8(B)に例示するように、シンボルS0〜S3が全て4ビットで表現される。
そして、図8(C)に例示するように、上位ブロックに割り当てられた符号(グループ符号)と、最大値のビット数で表現されたシンボル値(本例では、4ビット表現されたシンボルS0〜S3)とを統合して、ブロック符号が作成される。
図9に例示するように、第2の符号化プログラム52は、図3の符号化プログラム5に最大値検出部570を追加した構成をとる。
本例の最大値検出部570は、ブロックに含まれる複数のシンボルのうち、シンボル値が最大となるシンボルを検出する。
本変形例のシンボル変換部530は、ビット数算出部520により算出された必要ビット数で、ブロックに含まれる全シンボルを表現する。
本変形例のグループ分類部540は、ビット数算出部520により算出された必要ビット数(すなわち、最大値検出部570により検出されたシンボルの必要ビット数)に基づいて、各ブロックを上位グループに分類する。
なお、ブロックに含まれるシンボル数を8の倍数にすれば、最大値の必要ビット数で表現されるパートが、バイトバウンダリになる。さらにハフマン符号語をバイトバウンダリで設計すれば、符号全体がバイトバウンダリになり、さらなる高速化が期待できる。
また、ハフマン符号語は、いくつかのブロックをまとめて表現してもよい。例えば1バイトを4ビットずつに分けて、上位4ビットで第1のブロックを、また下位4ビットで第2のブロックの符号語を格納するようにしてもよい。
上記実施形態では、図10(A)に例示するように、各シンボルを必要ビット数で表現したが、第2の変形例では、図10(B)に例示するように、必要ビット数で表現されたシンボルのビット列から、さらに最上位ビット(すなわち、シンボルのMSB)を省略する。すなわち、Nビット表現すべきシンボルが、同一ビットを含む場合、そのビットは省略してもよい。例えば、シンボル2とシンボル3を2ビット表現する場合、いずれもMSB(Most Significant Bit)は、1となる。したがって、このビットを2ビット表現に含める必要はない。
また、第2の変形例では、Nビット表現されるシンボルが1種類である場合、Nビット表現を省略してもよい。例えば、図10(A)に例示するシンボル値「1」は、1ビット表現されるが、1ビット表現されるシンボルはシンボル値「1」の1種類だけであるから、図10(B)に例示するように、シンボル値「1」のビット列を省略できる。このシンボル値「1」は、グループ符号「3141」の「1」によって復号化できる。
上記実施形態及び変形例1では、暗黙にシンボル値が小さいシンボルほど高い頻度で出現するという仮定をおいていた。特に前段にソースコーダを設ける場合、そのような仮定はごく一般的であり、またそうなるようにソースコーダを設計することも比較的容易である。
しかしそうでないケースもありえる。そこで、第3の変形例では、シンボル値そのままではなく、変換する例について述べる。
本変形例は、必要ビット数を算出する前にシンボル値の変換を行う。この変換は、より多く出現するシンボル値に、より小さいインデクスが振られるように行う。これは予め計測したり他のデータから予測したりして出現頻度を求め、これをソートして得られる出現頻度順のシンボル値を表すルックアップテーブルなどで簡単に実現できる。
上記変形例3のさらなる変形例として、1パス目では上記変形例2(実施形態でもよい)で説明した符号化処理を行いつつ、同時に出現頻度を計測しておき、さらに圧縮率を高めたい場合に、上記変形例3で再処理する。このとき出現頻度から正確に再処理後の符号量が求められるので、これを元に再処理の是非を判定するような構成でもよい。
また、上記実施形態では、シンボル変換部530がシンボル単位でシンボルの変換を行っているが、複数シンボル単位で変換を行ってもよい。例えば、隣あう2シンボルのパターンについて、ルックアップテーブルを生成すればよい。こうすることで記憶を有する情報源の圧縮率を向上することができる。
また、上記実施形態では、ソースコーダ500がシンボルとして予測誤差値を算出しているが、他の方法でシンボルを生成してもよい。
次に、第2の実施形態を説明する。
上記第1の実施形態では、予測誤差値毎に符号を割り振るため、周期性を持った被圧縮情報に対しては冗長となる。例えば、JPEG-LSのgolomb-rice符号(パラメータk=1)の場合、図11(A)に例示するように、予測誤差値が5,0,2,0,8,0と連続すると、それぞれの予測誤差値が、4,2,3,2,6,2bitに符号化される。これは周期性を考慮できていないため、冗長である(図 2)。なお、上記の議論は、Huffman符号又はgolomb-rice符号に限定されるものではなく、一般的な可変長符号化について成立する。
そこで、第2の実施形態は、冗長な予測誤差値データを適切に消去する。具体的には、符号化処理において、本実施形態の符号化プログラム54(後述)は、パターンマッチング処理を行って、図11(B)に例示するように、既定のパターンにマッチした予測誤差を消去し、エントロピ符号化の対象数を減少させる。次に、符号化プログラム54は、図11(C)に例示するように、パターンマッチング結果に応じて、復号時に必要となる挿入情報を付与する。
ただし、パターンにマッチングしたからといって必ずしも予測誤差を消去する必要はない。例えば、挿入情報表現の符号長とエントロピ符号長を比較し、効率的なほうを利用することが考えられる。
また、復号化処理においては、復号化プログラムは、挿入情報を読み取り、必要なら予測誤差値の消去位置を特定し、特定された消去位置に、適切な値を埋め戻す。
また、パターンマッチングする被圧縮情報の数(以下、ブロックと呼ぶ)を十分大きくすれば、挿入情報を追加したことによるオーバーヘッドは無視できる。
また、冗長なデータを消去しているので、エントロピ符号化の処理対象を減らすことができ、高速化できる。
挿入情報は、復号時に消去したパターン(または挿入位置)を特定するものであり、復号時にはその挿入情報に従って、適切な値を再び挿入すればよい。
一般的に、予測誤差値は0にピークをもった分布になることから、本実施形態では、消去する値を予測誤差0とし、1ブロックに含まれるシンボル数(予測誤差値の数)を8として具体的に説明する。
図12に例示するように、第3の符号化プログラム54は、図9の符号化プログラム52のグループ生成部510及び符号統合部560をそれぞれ第2のグループ生成部512及び第2の符号統合部562で置換し、さらに、パターンマッチ部580及び挿入情報符号化部590を追加した構成をとる。
本例のパターンマッチ部580は、ブロックに含まれる8つの予測誤差値と、図13(A)に例示する被圧縮情報パターンとを比較し、いずれかのパターンがマッチした場合に、そのパターンに対応する0をブロックから削除してグループ生成部512に出力し、マッチしたパターンのパターン名を挿入情報符号化部590に出力する。
本例の挿入情報符号化部590は、パターンマッチ部580から入力されたパターン名に対応する符号(挿入情報表現)を符号統合部562に出力する。
本例の符号統合部562は、符号割当部550により割り当てられたグループ符号と、シンボル変換部530により変換されたシンボル値(予測誤差値)のビット列との間に、挿入情報符号化部590から入力された挿入情報表現を挿入する。
次に、パターンマッチ部580が、パターンマッチング処理に合う場合には、パターンにマッチした予測誤差値(冗長な予測誤差0)をブロックから削除し、エントロピ符号かの対象数を減少させる。
次に、最大値検出部570、ビット数算出部520及びグループ分類部540が、ブロック(予測誤差値0が削除されたものも含まれうる)に含まれる予測誤差値(被圧縮情報)の表現に必要なビット数を特定し、特定されたビット数の最大値でブロックをグルーピングする。また、符号割当部550が、グルーピングされたブロックに対して符号を割り当てる。
最後に、符号統合部562が、挿入情報符号化部590により符号化された挿入情報を、符号割当部550により割り当てられた符号(グループ符号)に次いで挿入する。
また、変形例2で後述するブロック単位のランレングスコーダと結合することで、更なる高速化が期待できる。ただし、s3はマッチング後の被圧縮情報が8個の倍数でなくなるため、処理をバイトバウンダリにするためには、冗長なダミー情報を含むことになる。
また、s2xを2種類,s3xを3種類,s4xを4種類用意してあるのは、位相差に対応するためである。
図13(A)に例示した9種類のパターンは、挿入情報表現(パターン名の符号)に対応付けられており、復号時にはそれぞれのパターンに従って、予測誤差0が埋め戻される。
次に、上記第2の実施形態の変形例を説明する。
第1の変形例では、上記第2の実施形態よりも更に高圧縮にするために、図13(B)に例示するように、マッチングパターンの追加を行う。追加されるマッチングパターンは、エッジに対応するためのものである。なぜなら、CG画像(コンピュータにより生成された画像)などでは、予測誤差値がe1,e2xなどの単独ピークを持ったものになることが多いからである。
特に、第1の実施形態の変形例1のように、ブロック内の被圧縮情報の表現に必要なビット数の最大値でグルーピングした場合に効果が大きく、圧縮率/処理速度を改善できる。
また、エッジ対応のマッチングパターン(図13(B)の下方から3つ)に一致した場合には、特に、予測誤差値ではなく、予測誤差値0を消去した後の画素値をそのまま符号とすることが考えられる。こうすれば容易にバイトバウンダリを実現でき、高速性も維持できる。
なお、本変形例での挿入情報は、図13(B)のマッチングパターン名と、ブロック先頭又は末尾からの非ゼロ値までのオフセット(距離)とその値(x)を含むものである。ただし、ここでは、予測誤差(x)を挿入情報として用いているが、予測誤差を計算する前の(x)に対応する箇所の画素値をそのまま符号にすることもできる。この場合、誤差値から画素値を復元する処理がなくなり、高速な復号が実現できるようになる。
また、オフセットを2つ準備し、2箇所のピークを持ったパターンも同様の考え方で作成できる。
また、図14に例示するように、さらに直前ブロックの最後尾の画素値で、注目ブロックが埋められている場合には、ランレングス符号化を実施することも可能であり、こうすることで、最大値検出処理などの比較的重い処理を省き高速な符号化ができる。
次に、上記変形例1のマッチングパターンが好ましい理由について述べる。
図15(A)は、代表的な予測式(図15(C)に例示するX=A+B-C)で予測誤差を算出したときの、非ゼロの箇所x(x≧1)の出現頻度を示している。ただし、非圧縮情報としてCG画像を利用し、一つのブロックに含まれる被圧縮情報は32個として計算している。
図15(A)からわかるように、非ゼロ値の箇所としては、1、2、3、4である場合がほとんどであることがわかる。
(調査パターン1)非ゼロ値が2個連続 (例えば、0xx000…00)
(調査パターン2)非ゼロ値-ゼロ値-非ゼロ値 (例えば、0x0x00…00)
(調査パターン3)その他(上記調査パターン1又は2以外)
図15(B)からわかるように、非ゼロ値が連続するパターンがほとんどを占めている。また、非ゼロ値-ゼロ値-非ゼロ値の調査パターン2と、非ゼロ値が2個連続する調査パターン1とを合わせると、全体の約80%以上を占めていることがわかる。
結果的に、ブロックサイズが32程度であれば、ピークはせいぜい1個〜2個程度であることがわかる。
以上より、図13(B)のエッジ対応パターン(e2, e2a、e2bパターン)を導入するだけで、圧縮率が向上する。
なお、これは予測式(X=A+B-C)で、斜め方向の予測ができないことに起因するものである。しかし、注目画素近傍の値A,B,Cなどを用いて予測する場合には、同様の傾向が見られる。例えば、X=Aで予測した場合には、縦方向又は斜め方向のエッジでe2xが多数発生する。
(調査パターン4)非ゼロ値2個が連続し、非ゼロ値が1個孤立 (例えば、0xx000x0…)
(調査パターン5)非ゼロ値が3個連続 (例えば、0x00xxx00000…)
(調査パターン6)その他(上記調査パターン4又は調査パターン5以外)
この場合、調査パターン4に該当する場合が多いことがわかる。これは、図13(B)のエッジ対応パターンe2x及びe1の組み合わせパターンを準備しておけば、非ゼロ値が3個のブロックを効率的に圧縮できることを意味している。
同様にして、非ゼロ値が4個の場合においても、エッジ対応パターンe2x及びe1の組み合わせが好ましいことが推定できる。
5,52・・・符号化プログラム
500・・・ソースコーダ
510・・・グループ生成部
520・・・ビット数算出部
530・・・シンボル変換部
540・・・グループ分類部
550・・・符号割当部
560・・・符号統合部
570・・・最大値検出部
580・・・パターンマッチ部
590・・・挿入情報符号化部
6・・・復号化プログラム
600・・・符号長特定部
610・・・シンボル抽出部
620・・・シンボル復号部
630・・・データ再生部
Claims (9)
- 複数の被圧縮情報をまとめて、被圧縮情報のグループを生成するグループ生成手段と、
前記グループ生成手段により生成されたグループに対して、符号を割り当てる符号割当手段と、
それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化する被圧縮情報符号化手段と
を有する符号化装置。 - 前記グループ生成手段は、複数の被圧縮情報をまとめて、被圧縮情報の下位グループを生成し、
前記グループ生成手段により生成された下位グループを、上位グループに分類するグループ分類手段
をさらに有し、
前記符号割当手段は、前記上位グループに対して、符号を割り当て、
前記被圧縮情報符号化手段は、同一の前記上位グループに属する下位グループの被圧縮情報を、この上位グループに割り当てられた可変長符号を用いて符号化する
請求項1に記載の符号化装置。 - 前記グループ生成手段は、入力された複数の被圧縮情報を入力順に既定数ずつまとめて、既定数の被圧縮情報が含まれた下位グループを生成し、
前記グループ分類手段は、前記下位グループに属する被圧縮情報を表現するためのビット数に基づいて、下位グループを上位グループに分類する
請求項2に記載の符号化装置。 - 前記符号割当手段は、各グループの出現確率に応じて、それぞれのグループにエントロピー符号を割り当てる
請求項1に記載の符号化装置。 - 入力された被圧縮情報に基づいて、この被圧縮情報よりも少ないビット数で表現されたビット列に変換する被圧縮情報変換手段
をさらに有し、
前記被圧縮情報符号化手段は、それぞれのグループに属する被圧縮情報について前記被圧縮情報変換手段により変換されたビット列と、このグループに割り当てられた符号とを用いて、符号化する
請求項1に記載の符号化装置。 - 前記グループ生成手段により生成された下位グループから、既定のパターンに合致する被圧縮情報を削除するパターンマッチ手段
をさらに有し、
前記グループ分類手段は、前記パターンマッチ手段により下位グループから被圧縮情報が削除された場合に、被圧縮情報が削除された下位グループを上位グループに分類する
請求項2に記載の符号化装置。 - 複数の被圧縮情報からなるグループに割り当てられた符号に基づいて、このグループに属する被圧縮情報の符号長を特定する符号長特定手段と、
前記符号長特定手段により特定された各被圧縮情報の符号長に基づいて、前記グループに属する被圧縮情報を復号化する被圧縮情報復号化手段と
を有する復号化装置。 - 複数の被圧縮情報をまとめて、被圧縮情報のグループを生成し、
生成されたグループに対して、符号を割り当て、
それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化する
符号化方法。 - 複数の被圧縮情報をまとめて、被圧縮情報のグループを生成するステップと、
生成されたグループに対して、符号を割り当てるステップと、
それぞれのグループに属する被圧縮情報を、各グループに割り当てられた符号を用いて符号化するステップと
をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007157176A JP4893956B2 (ja) | 2006-08-07 | 2007-06-14 | 符号化装置、復号化装置、符号化方法及びプログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006214348 | 2006-08-07 | ||
JP2006214348 | 2006-08-07 | ||
JP2007157176A JP4893956B2 (ja) | 2006-08-07 | 2007-06-14 | 符号化装置、復号化装置、符号化方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008067351A true JP2008067351A (ja) | 2008-03-21 |
JP4893956B2 JP4893956B2 (ja) | 2012-03-07 |
Family
ID=39289592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007157176A Expired - Fee Related JP4893956B2 (ja) | 2006-08-07 | 2007-06-14 | 符号化装置、復号化装置、符号化方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4893956B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013201602A (ja) * | 2012-03-26 | 2013-10-03 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
JP2014027658A (ja) * | 2012-07-30 | 2014-02-06 | Intel Corp | 圧縮エンコーディング及びデコーディング方法並びに装置 |
JP2014146972A (ja) * | 2013-01-29 | 2014-08-14 | Fuji Xerox Co Ltd | 符号化装置、復号装置、符号化・復号システム、及びプログラム |
US9161047B2 (en) | 2013-01-25 | 2015-10-13 | Fuji Xerox Co., Ltd. | Image encoding apparatus and method, image decoding apparatus, and non-transitory computer readable medium |
JP2019525583A (ja) * | 2016-07-13 | 2019-09-05 | エーティーアイ・テクノロジーズ・ユーエルシーAti Technologies Ulc | デルタカラー圧縮用のビットパッキング |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0322690A (ja) * | 1989-06-20 | 1991-01-31 | Fujitsu Ltd | 可変長符号化方式及び可変長復号化方式 |
JPH0484565A (ja) * | 1990-07-26 | 1992-03-17 | Matsushita Electric Ind Co Ltd | 画像信号圧縮伸張装置 |
-
2007
- 2007-06-14 JP JP2007157176A patent/JP4893956B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0322690A (ja) * | 1989-06-20 | 1991-01-31 | Fujitsu Ltd | 可変長符号化方式及び可変長復号化方式 |
JPH0484565A (ja) * | 1990-07-26 | 1992-03-17 | Matsushita Electric Ind Co Ltd | 画像信号圧縮伸張装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013201602A (ja) * | 2012-03-26 | 2013-10-03 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
JP2014027658A (ja) * | 2012-07-30 | 2014-02-06 | Intel Corp | 圧縮エンコーディング及びデコーディング方法並びに装置 |
US9161047B2 (en) | 2013-01-25 | 2015-10-13 | Fuji Xerox Co., Ltd. | Image encoding apparatus and method, image decoding apparatus, and non-transitory computer readable medium |
JP2014146972A (ja) * | 2013-01-29 | 2014-08-14 | Fuji Xerox Co Ltd | 符号化装置、復号装置、符号化・復号システム、及びプログラム |
JP2019525583A (ja) * | 2016-07-13 | 2019-09-05 | エーティーアイ・テクノロジーズ・ユーエルシーAti Technologies Ulc | デルタカラー圧縮用のビットパッキング |
JP6990227B2 (ja) | 2016-07-13 | 2022-01-12 | エーティーアイ・テクノロジーズ・ユーエルシー | デルタカラー圧縮用のビットパッキング |
Also Published As
Publication number | Publication date |
---|---|
JP4893956B2 (ja) | 2012-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102687404B (zh) | 用于数据压缩的数据值出现信息 | |
KR100894002B1 (ko) | 선택적 압축과 복원 및 압축 데이터에 대한 데이터 포맷을위한 장치 및 방법 | |
JP3337633B2 (ja) | データ圧縮方法及びデータ復元方法並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP4893957B2 (ja) | 符号化装置、復号化装置、符号化方法及びプログラム | |
AU2012332327B2 (en) | Method and apparatus for image compression storing encoding parameters in 2D matrices | |
US7826670B2 (en) | Data compression apparatus and data compression program storage medium | |
JP2007228582A (ja) | 圧縮率の向上のために改善されたコンテキストモデル選択を使用するcabac符号化方法及び装置、並びにcabac復号化方法及び装置 | |
JP2010136417A (ja) | データ圧縮装置、及びデータ復元装置 | |
JP4893956B2 (ja) | 符号化装置、復号化装置、符号化方法及びプログラム | |
KR20180067956A (ko) | 데이터 압축 장치 및 방법 | |
WO2021145105A1 (ja) | データ圧縮装置、およびデータ圧縮方法 | |
JP4758494B2 (ja) | ビット長を符号に変換する回路及び方法 | |
JP6005273B2 (ja) | データストリームの符号化方法、送信方法、伝送方法、データストリームを符号化するための符号化装置、送信装置、および、伝送装置 | |
JP5842357B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP4377351B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP2007336056A (ja) | 符号化装置、符号化方法及びプログラム | |
JP2005260408A (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP4131970B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP4377352B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP4743884B2 (ja) | 画像符号化装置及びその制御方法 | |
JP4181147B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP4095454B2 (ja) | データ復号装置及びデータ復号方法 | |
JP2006217503A (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP4743883B2 (ja) | 画像符号化装置およびその制御方法 | |
KR20000050342A (ko) | 비손실 데이터 압축 및 신장방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100520 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110804 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111005 |
|
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: 20111124 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4893956 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150106 Year of fee payment: 3 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |