JP2007214997A - 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム - Google Patents

符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム Download PDF

Info

Publication number
JP2007214997A
JP2007214997A JP2006033938A JP2006033938A JP2007214997A JP 2007214997 A JP2007214997 A JP 2007214997A JP 2006033938 A JP2006033938 A JP 2006033938A JP 2006033938 A JP2006033938 A JP 2006033938A JP 2007214997 A JP2007214997 A JP 2007214997A
Authority
JP
Japan
Prior art keywords
data
prediction
code
pixel
color
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
Application number
JP2006033938A
Other languages
English (en)
Other versions
JP4618436B2 (ja
Inventor
Taro Yokose
太郎 横瀬
Masao Morita
雅夫 森田
Tomonori Taniguchi
友紀 谷口
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2006033938A priority Critical patent/JP4618436B2/ja
Priority to US11/519,947 priority patent/US7382294B2/en
Priority to KR20060094918A priority patent/KR100810675B1/ko
Priority to CN2006101363614A priority patent/CN101018337B/zh
Publication of JP2007214997A publication Critical patent/JP2007214997A/ja
Application granted granted Critical
Publication of JP4618436B2 publication Critical patent/JP4618436B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Color Television Systems (AREA)

Abstract

【課題】 比較的軽い処理負荷で、カラー画像の符号データを生成することができる符号化装置を提供する。
【解決手段】 画像データの符号化処理は、画像データを中間コードに変換するソースコーダと、中間コードを符号データに変換するエントロピーコーダとで実現されることが多い。そこで、本画像処理装置2は、ソースコーダにおける処理を点順で行い、後段のエントロピーコーダを並列化することにより、符号化処理の処理時間を短縮し、複数の色成分の共通情報と各色成分に固有の個別情報とに分解して符号化することにより、面順で復号化できる画像データの符号量を小さくする。
【選択図】図4

Description

本発明は、カラー画像の画像データを符号化する符号化装置に関する。
例えば、特許文献1は、入力された画像を複数の符号器に均等に振り分けながら複数の符号器で並列して処理を行う符号化処理を開示する。
特開2000−217003号公報
本発明は、上述した背景からなされたものであり、比較的軽い処理負荷で、カラー画像の符号データを生成することができる符号化装置を提供することを目的とする。
[符号化装置]
上記目的を達成するために、本発明にかかる符号化装置は、カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成する予測手段と、前記予測手段により画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成する中間コード生成手段と、前記中間コード生成手段により生成された中間コードをエントロピー符号化する第1及び第2の符号化手段とを有し、前記中間コード生成手段は、予測データと画素データとの差が既定の範囲内であるか否かに応じて、生成された中間コードそれぞれを前記第1の符号化手段又は前記第2の符号化手段に振り分ける。
好適には、前記第1の符号化手段は、複数の色成分に関する中間コードを符号化し、前記第2の符号化手段は、複数の色成分に関する中間コードを、色成分毎に符号化し、前記中間コード生成手段は、予測データと画素データとの差が既定の範囲内である場合に、予測が的中した旨を示す一致情報を前記第1の符号化手段に振り分け、予測データと画素データとの差が既定の範囲外である場合に、この画素データに含まれる複数の色成分値、又は、複数の色成分それぞれの予測誤差値を前記第2の符号化手段に振り分ける。
好適には、前記第2の符号化手段は、エントロピー符号化処理を行う複数のエントロピー符号化器を含み、前記中間コード生成手段は、予測データと画素データとの差が既定の範囲外である場合に、画素データに含まれる複数の色成分値、又は、複数の色成分それぞれの予測誤差値を、複数の前記エントロピー符号化器それぞれに振り分けて、並行して符号化させる。
また、本発明にかかる符号化装置は、入力されたカラー画像から、エントロピー符号化処理の対象となる中間コードを生成する中間コード生成手段と、前記中間コード生成手段により生成される中間コードのうち、同一の画素に関して、複数の色成分で同一の値を有する中間コードをエントロピー符号化して、これらの色成分の中間コードに対応する単一の符号を生成する第1の符号化手段と、前記中間コード生成手段により生成される中間コードのうち、各色成分に固有の中間コードそれぞれをエントロピー符号化する第2の符号化手段とを有する。
好適には、前記中間コード生成手段は、既定の予測方法を用いて予測処理を行い、予測が的中したか否かを示す一致情報と、各色成分の画素値又は予測誤差値とを、前記中間コードとして生成し、前記第1の符号化手段は、前記中間コード生成手段により生成された一致情報を符号化し、前記第2の符号化手段は、前記中間コード生成手段により生成された各色成分の画素値又は予測誤差値を符号化する。
[復号化装置]
また、本発明にかかる復号化装置は、予測符号化処理により生成されたカラー画像の符号データを復号化する復号化装置であって、入力された符号データのうち、複数の色成分に共通する符号を復号化して、複数の色成分に共通する中間コードを生成する第1の復号化手段と、入力された符号データのうち、既定の色成分に固有の固有符号を復号化して、この色成分に固有の中間コードを生成する第2の復号化手段と、前記第1の復号化手段により復号化された中間コード、及び、前記第2の復号化手段により復号化された中間コードを用いて、この色成分の画像データを生成する画像生成手段とを有する。
[符号化方法]
また、本発明にかかる符号化方法は、複数のエントロピー符号化器を用いた符号化方法であって、カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成し、画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成し、生成された中間コードを、予測データと画素データとの差が既定の範囲内であるか否かに応じて、複数の前記エントロピー符号化器に振り分ける。
[復号化方法]
また、本発明にかかる復号化方法は、複数のエントロピー復号化器を用いた復号化方法であって、入力された符号データのうち、複数の色成分に共通する符号を、第1のエントロピー復号化器に割り当てて、複数の色成分に共通する中間コードを生成し、入力された符号データのうち、既定の色成分に固有の固有符号を、第2のエントロピー復号化器に割り当てて、この色成分に固有の中間コードを生成し、第1のエントロピー復号化器及び第2のエントロピー復号化器により復号化された中間コードを用いて、この色成分の画像データを生成する。
[プログラム]
また、本発明にかかるプログラムは、カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成するステップと、画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成するステップと、生成された中間コードを、予測データと画素データとの差が既定の範囲内であるか否かに応じて、複数のエントロピー符号化器に振り分けるステップとをコンピュータに実行させる。
本発明の符号化装置によれば、比較的軽い処理負荷で、カラー画像の符号データを生成することができる。
[背景と概略]
カラー画像の符号化処理は、点順符号化処理と面順符号化処理とに大別される。点順符号化処理とは、画素ごとに色成分をまとめて符号化する形式をいい、面順符号化処理とは、色成分ごとに1つの画像として符号化する形式をいう。
一般的な処理では、部分画像を構成する画素データが局在する点順が扱いやすい。ここで、画素データとは、それぞれの画素に関するデータであり、例えば、複数の色成分値などが含まれる。
一方、色ごとに印字するプリンタのようなデバイスでは、面順で扱う必要がある。
面順符号化処理は、点順符号化処理と比較して、以下に示す2つの問題を有する。
第1の問題点は、処理時間が長いことである。すなわち、処理時間は符号化方式に依存するが、処理時間が画素数に比例する符号化方式の場合、面順で符号化すると、色数分だけ画素が増えることになるので、処理時間が増加する。
第2の問題点は、符号量が多いことである。すなわち、面順で符号すると、複数の面(色)の間で重複する情報でも、各面で個別に持つ必要があり、このため、符号量が増加する傾向にある。なお、各面を完全に無相関にできれば、そのような符号量の増加は発生しないが、通常の画像では色成分間に相関がある。
ここで、画像データの符号化処理は、画像データを中間コードに変換するソースコーダと、中間コードを符号データに変換するエントロピーコーダとで実現されることが多い。
そこで、本実施形態における画像処理装置2は、ソースコーダにおける処理を点順で行い、後段のエントロピーコーダを並列化することで、主に第1の問題点を解消し、各面の共通情報と各面に固有の個別情報とに分解して符号化することにより、主に第2の問題点を解消する。
[ハードウェア構成]
次に、本実施形態における画像処理装置2のハードウェア構成を説明する。
図1は、本発明にかかる符号化方法及び復号化方法が適応される画像処理装置2のハードウェア構成を、制御装置21を中心に例示する図である。
図1に例示するように、画像処理装置2は、CPU212及びメモリ214などを含む制御装置21、通信装置22、HDD・CD装置などの記録装置24、並びに、LCD表示装置あるいはCRT表示装置およびキーボード・タッチパネルなどを含むユーザインターフェース装置(UI装置)25から構成される。
画像処理装置2は、例えば、プリンタ装置3の内部に設けられた処理ユニットであり、本発明にかかる符号化プログラム5及び復号化プログラム6(後述)がインストールされている。なお、本例では、プログラムの形式で説明するが、符号化プログラム5及び復号化プログラム6の全部又は一部がASICなどのハードウェアで実現されてもよい。
[符号化プログラム]
図2は、制御装置21(図1)により実行され、本発明にかかる符号化方法を実現する第1の符号化プログラム5の機能構成を例示する図である。
図2に例示するように、第1の符号化プログラム5は、データ調整部500、予測部510、ラン計数部520、色情報分解部530、共通情報符号器540、及び、固有情報符号器を有し、固有情報符号器は、R色情報符号器552、G色情報符号器554及びB色情報符号器556を含む。なお、予測部510、ラン計数部520及び色情報分解部530は、ソースコーダに相当し、共通情報符号器540及び固有情報符号器(R色情報符号器552、G色情報符号器554及びB色情報符号器556)は、エントロピーコーダに相当する。
符号化プログラム5において、データ調整部500は、入力された画像データを、予測部510における処理単位の画素データに変換する。
例えば、データ調整部500は、入力された画像データが色成分毎に分類されている場合には、各色成分値をまとめて画素データを生成する。
本例のデータ調整部500は、入力されたRGB画像のR値、G値及びB値をそれぞれ3ビット、3ビット及び2ビットに限定色化し、限定色化されたR値、G値及びB値を並べて、8ビットの画素データを生成し、生成された画素データを予測部510及び色情報分解部530に出力する。
予測部510は、既定の予測方法で、処理対象となる注目画素の予測データを生成し、生成された予測データと、注目画素の画素データとを比較し、比較結果(予測データと画素データとの差が既定の範囲内であるか否か)をラン計数部520に出力する。この既定の範囲とは、符号化処理における非可逆性を規定する情報であり、この範囲が大きいほど、非可逆性が大きくなり、高圧縮率が実現される。
本例では、連長符号化方式(ランレングス符号化方式)が適用されるため、予測部510は、直前画素の画素データ(8ビット)を予測データとして読み出し、この予測データと注目画素の画素データとを比較し、これらのデータが一致したか否かをラン計数部520に出力する。
ラン計数部520は、予測部510から入力される比較結果に基づいて、同一の画素データが連続する連続数(ラン)を計数する。また、ラン計数部520は、予測部510から入力される比較結果を色情報分解部530に通知する。
本例のラン計数部520は、予測部510から一致した旨が入力される場合には、ランのカウント値をカウントアップしていき、予測部510から一致しなかった旨が入力された時に、これまでのカウント値をランとして共通情報符号器540に出力する。また、本例のラン計数部520は、予測部510から一致しなかった旨が入力される場合には、連続して予測が外れている数(以下、リテラル数)をカウントしていき、予測部510から一致した旨が入力された時に、これまでのリテラル数を共通情報符号器540に出力する。
色情報分解部530は、予測部510により比較結果に応じて、データ調整部500から入力される画素データを複数の色成分値に分解し、分解された各色成分値を固有情報符号器(R色情報符号器552、G色情報符号器554及びB色情報符号器556)に出力する。
本例の色情報分解部530は、予測データと画素データとが一致した旨をラン計数部520から連続して通知される場合には、1つの画素データのみをR成分、G成分及びB成分に分解し、分解されたR成分、G成分及びB成分をそれぞれR色情報符号器552、G色情報符号器554及びB色情報符号器556に出力する。また、本例の色情報分解部530は、予測データと画素データとが一致しなかった旨をラン計数部520から通知される場合には、それぞれの画素データをR成分、G成分及びB成分に分解し、分解されたR成分、G成分及びB成分をそれぞれR色情報符号器552、G色情報符号器554及びB色情報符号器556に出力する。
すなわち、本例の符号化プログラム5は、ランが続いている間は、ランに含まれる1つの画素値(複数の色成分)のみを符号化し、ラン以外の画素については、各画素の画素値を符号化する。
共通情報符号器540は、ラン計数部520から入力される共通の中間コードをエントロピー符号化する。共通の中間コードとは、ソースコーダで生成される中間コードのうち、複数の色成分で共通する中間コードである。
本例の共通情報符号器540は、ラン計数部520から入力されるラン長、又は、ラン中の画素でないことを示す識別子(リテラル)及びリテラル数をエントロピー符号化し、生成された符号データを共通符号データとして外部に出力する。
固有情報符号器(R色情報符号器552、G色情報符号器554及びB色情報符号器556)は、色情報分解部530から入力される固有の中間コードをエントロピー符号化する。固有の中間コードとは、ソースコーダで生成される中間コードのうち、各色成分に固有の中間コードである。
本例の固有情報符号器(R色情報符号器552、G色情報符号器554及びB色情報符号器556)は、色情報分解部530から入力される色成分値をエントロピー符号化し、符号化された色成分値を固有符号データとして外部に出力する。すなわち、R色情報符号器552は、R成分値を符号化し、G色情報符号器554は、G成分値を符号化し、B色情報符号器556は、B成分値を符号化する。
図3は、符号化プログラム5(図2)による符号化処理(S10)のフローチャートである。
また、図4は、符号化処理(S10)において生成されるデータを例示する図である。
図3に示すように、ステップ100(S100)において、データ調整部500(図2)は、入力された画像データ(RGB)に対して、限定色化処理を施して、限定色化された複数の色成分を配列して画素データを生成する。
生成される画素データは、図4(A)に例示するように、階調数を落としたR値、G値及びB値を含む。
ステップ105(S105)において、データ調整部500は、生成された画素データの中から、走査順に注目画素Xを設定し、注目画素Xの画素データを予測部510及び色情報分解部530に出力する。
予測部510(図2)は、注目画素Xの直前画素の画素データを予測データとして保持しており、この予測データと、注目画素Xの画素データとを比較し、比較結果をラン計数部520に出力する。
ステップ110(S110)において、符号化プログラム5は、注目画素Xの画素データが予測データと一致した場合(予測が的中した場合)に、S115の処理に移行し、注目画素Xの画素データが予測データと一致しない場合(予測が外れた場合)に、S135の処理に移行する。
ステップ115(S115)において、ラン計数部520は、画素データと予測データとが一致した旨を予測部510から入力されると、ランのカウントアップを開始する。
データ調整部500は、画素データと予測データとが不一致となるまで、走査順に注目画素Xを設定し、予測部510は、順に設定される画素データとその直前の画素データ(すなわち、予測データ)とを比較して、一致した旨をラン計数部520に出力する。
ラン計数部520は、画素データと予測データとが不一致となるまで、ランをカウントし、カウント値をラン長として共通情報符号器540に出力する。
また、ラン計数部520は、ランがカウントされている旨を色情報分解部530に通知する。
ステップ120(S120)において、共通情報符号器540は、ラン計数部520から入力されたラン長(共通の中間コード)をエントロピー符号化し、ラン長の符号を共通符号として外部に出力する。
ステップ125(S125)において、色情報分解部530は、ランがカウントされている旨をラン計数部520から通知されると、データ調整部500から入力される画素データの1つを、各色成分値に分解し、分解されたR値、G値及びB値をそれぞれR色情報符号器552、G色情報符号器554及びB色情報符号器556に出力する。
ステップ130(S130)において、R色情報符号器552、G色情報符号器554及びB色情報符号器556は、色情報分解部530から入力されるR値、G値及びB値をそれぞれエントロピー符号化し、R値、G値及びB値の符号を各色の固有符号として外部に出力する。
ステップ135(S135)において、ラン計数部520は、画素データと予測データとが一致しなかった旨を予測部510から入力されると、リテラル数のカウントアップを開始する。
データ調整部500は、画素データと予測データとが一致するまで、走査順に注目画素Xを設定し、予測部510は、順に設定される画素データとその直前の画素データ(すなわち、予測データ)とを比較して、一致しなかった旨をラン計数部520に出力する。
ラン計数部520は、画素データと予測データとが一致するまで、リテラル数をカウントし、リテラル及びリテラル数を共通情報符号器540に出力する。
また、ラン計数部520は、リテラル数がカウントされている旨を色情報分解部530に通知する。
ステップ140(S140)において、共通情報符号器540は、ラン計数部520から入力されたリテラル(画素データと予測データとが一致しない旨を示す識別子)及びリテラル数をエントロピー符号化し、リテラル及びリテラル数の符号を共通符号として外部に出力する。
ステップ145(S145)において、色情報分解部530は、リテラル数がカウントされている旨をラン計数部520から通知されると、データ調整部500から入力される画素データそれぞれを、各色成分値に分解し、分解されたR値、G値及びB値をそれぞれR色情報符号器552、G色情報符号器554及びB色情報符号器556に出力する。
ステップ150(S150)において、R色情報符号器552、G色情報符号器554及びB色情報符号器556は、色情報分解部530から入力されるR値、G値及びB値をそれぞれエントロピー符号化し、R値、G値及びB値の符号を各色の固有符号として外部に出力する。
ステップ155(S155)において、符号化プログラム5は、入力された画像データの全画素について処理を行ったか否かを判断し、未処理の画素が存在する場合には、S105の処理に戻り、全ての画素が処理された場合には、符号化処理(S10)を終了する。
このように、画素データと予測データとが一致する場合には、共通符号902(図4(B))としてラン長が符号化され、固有符号(図4(C)では、R色のみを例示)として、画素値が符号化される。また、画素データと予測データとが一致しない場合には、共通符号902(図4(B))として、リテラル及びリテラル数(画素数)が符号化され、固有符号(図4(C)のR固有符号904を参照)として、複数の画素値が符号化される。
図5(A)は、符号化処理(S10)により生成される符号データ900を説明する図であり、図5(B)は、各色成分を単純に連長符号化方式で符号化した符号データを説明する図である。
図5(A)に例示するように、本実施形態における符号化処理(S10)で生成される符号データ900は、複数の色成分に共通して必要となる共通符号902と、各色成分(本例では、R成分、G成分及びB成分)に固有の固有符号(本例では、R固有符号904、G固有符号906及びB固有符号908)とを含む。
本例の共通符号902には、画素データと予測データとが連続して一致した数を示すラン長と、画素データと予測データとが不一致であったことを示すリテラルと、画素データと予測データとが連続して不一致となる数を示すリテラル数とが含まれる。
また、本例のR固有符号904には、R成分に固有の情報として、画素データと予測データとが一致している場合のR成分値(ラン中のR画素値)と、画素データと予測データとが不一致となる場合のR成分値(予測外れのR画素値)とが含まれる。同様に、G固有符号906には、ラン中のG画素値、及び、予測外れのG画素値が含まれ、B固有符号908には、ラン中のB画素値、及び、予測外れのB画素値が含まれる。
一方、カラー画像(RGB)をR画像、G画像及びB画像に分版し、分版された画像それぞれを連長符号化方式で符号化すると、図5(B)に例示する面順符号データが生成される。
図5(A)に例示する符号データ900と、図5(B)に例示する面順符号データとを比較してわかるように、単に面順に符号化した面順符号データでは、ラン長、リテラル及び画素数(リテラル数)が冗長である。
なお、画素データ単位で予測処理を行うか、各色成分値単位で予測処理を行うかの違いがあるため、符号データ900に含まれるラン長及び画素数(リテラル数)と、面順符号データに含まれるラン長(Rラン長、Gラン長及びBラン長)及びリテラル数(R画素数、G画素数及びB画素数)とが完全に一致するわけではないが、大部分において一致するものと考えられる。
[復号化プログラム]
次に、復号化処理を説明する。
図6は、制御装置21(図1)により実行され、本発明にかかる復号化方法を実現する第1の復号化プログラム6の機能構成を例示する図である。
図6に例示するように、第1の復号化プログラム6は、複数の復号ユニット60を有する。本例では、R成分の復号処理を行うR色復号ユニット60R、G成分の復号処理を行うG色復号ユニット60G、及び、B成分の復号処理を行うB色復号ユニット60Bが設けられており、複数の色成分が並行して復号化される。これらの復号ユニット60は、処理対象となる色が異なるだけで、実質的に同一の機能を有する。そこで、以下、R色復号ユニット60Rを説明する。
R色復号ユニット60Rは、符号入力部600R、共通情報復号器610R、R色情報復号器620R、ラン制御部630R、及び、色データ生成部640Rを有する。
復号化プログラム6において、符号入力部600Rは、入力された符号データのうち、共通符号902(図5)及びR固有符号904(図5)を選択し、選択された共通符号902を共通情報復号器610Rに出力し、選択されたR固有符号904をR色情報復号器620Rに出力する。
共通情報復号器610Rは、符号入力部600Rから入力された共通符号902をエントロピー復号化し、復号化されたラン長、又は、リテラル及びリテラル数をラン制御部630Rに出力する。
R色情報復号器620Rは、符号入力部600Rから入力されたR固有符号904をエントロピー復号化し、復号化されたラン中の画素値、又は、予測外れの画素値を色データ生成部640Rに出力する。
ラン制御部630Rは、共通情報復号器610Rからラン長が入力された場合には、入力されたラン長に対応する回数だけ、同一の画素値を複製するよう色データ生成部640Rに指示する。
また、ラン制御部630Rは、共通情報復号器610Rからリテラル及びリテラル数が入力された場合には、入力されたリテラル数に対応する数の画素値を切り出すよう色データ生成部640に指示する。
色データ生成部640Rは、ラン制御部630Rからの指示に応じて、R色情報復号器620Rから入力された画素値を配列して、R成分の画像データを生成し、生成されたR成分の画像データを外部に出力する。
具体的には、色データ生成部640Rは、ラン制御部630Rからラン長に対応する回数だけ同一の画素値を複製するよう指示されると、R色情報復号器620Rから入力された画素値を、指示された回数だけ複製することにより、同一の画素値からなるランを再現する。また、色データ生成部640Rは、ラン制御部630Rからリテラル数だけ画素値を切り出すよう指示されると、R色情報復号器620Rから入力されるデータ列(画素値群)から、指定された個数の画素値を切り出すことにより、予測外れの画素群を再現する。
図7は、復号化プログラム6(図6)による復号化処理(S20)のフローチャートである。なお、複数の色成分の復号化処理は、実質的に同一の動作により並行して行われる。以下の説明では、R成分に関する復号化処理のみを説明する。
図7に示すように、ステップ200(S200)において、符号入力部600R(図6)は、入力された符号データのうち、共通符号902(図5)及びR固有符号904(図5)を選択し、選択された共通符号902を共通情報復号器610Rに出力し、選択されたR固有符号904をR色情報復号器620Rに出力する。
共通情報復号器610Rは、符号入力部600Rから入力された共通符号902の1つを注目符号としてエントロピー復号化し、復号化されたラン長、又は、リテラル及びリテラル数をラン制御部630Rに出力する。
R色情報復号器620Rは、共通情報復号器610Rとは独立して、符号入力部600Rから入力されたR固有符号904をエントロピー復号化し、復号化された画素値(ラン中の画素値又は予測外れの画素値)を色データ生成部640Rに出力する。なお、本例では、R色情報復号器620Rが、エントロピー復号化された画素値を保持するバッファ残量に応じてR固有符号を復号化していく形態を具体例として説明するが、R色情報復号器620Rは、共通情報復号器610Rにより復号化されるラン長及びリテラル数に応じて、R固有符号を復号化してもよい。
ステップ205(S205)において、ラン制御部630Rは、共通情報復号器610Rからリテラルが入力されるか否かに基づいて、復号化された情報がラン長であるかリテラル数であるかを判断する。
復号化プログラム6は、復号化された注目符号がラン長である場合には、S210の処理に移行し、復号化された注目符号がリテラル数を含む場合には、S220の処理に移行する。
ステップ210(S210)において、ラン制御部630Rは、共通情報復号器610Rからラン長が入力されると、入力されたラン長に対応する回数だけ、同一の画素値を複製するよう色データ生成部640Rに指示する。
ステップ215(S215)において、色データ生成部640Rは、ラン制御部630Rからの指示に応じて、色情報復号器620Rから入力された画素値(本例では、最初の3ビット)を、指示された回数だけ複製して、同一の画素値からなるランを再現し、再現されたラン(ランの画素群)を外部に出力する。
ステップ220(S220)において、ラン制御部630Rは、共通情報復号器610Rからリテラル及びリテラル数が入力されると、入力されたリテラル数に対応する数の画素値を切り出すよう色データ生成部640に指示する。
ステップ225(S225)において、色データ生成部640Rは、ラン制御部630Rからの指示に応じて、R色情報復号器620Rから入力されるデータ列(画素値群)から、指定された個数の画素値(本例では、それぞれの画素値が3ビット)を切り出して、予測外れの画素群を再現し、再現された画素群を外部に出力する。
ステップ230(S230)において、復号化プログラム6は、入力された全ての共通符号902を処理したか否かを判断し、未処理の共通符号902が存在する場合には、S200に戻って、次の共通符号902を注目符号としてS200〜S225までの処理を行い、全ての共通符号902が処理された場合には、復号化処理(S20)を終了する。
このように、本実施形態における復号化プログラム6は、各色成分の符号データをそれぞれ独立して復号化することができる。すなわち、面順での復号化処理が可能になるため、プリンタ装置などのように各色成分で独立して処理を行うデバイスでは、本符号化処理が好適である。
[第2実施形態]
次に、第2の実施形態を説明する。
上記実施形態では、本発明を連長符号化方式に適用する形態を説明したが、他の符号化方式に適用できる。
そこで、第2の実施形態では、複数の予測器が設けられた予測符号化方式に本発明を適用する形態を説明する。
図8は、第2の実施形態で用いられる予測符号化方式を説明する図であり、図8(A)は、複数の予測器それぞれにより参照される画素の位置を例示し、図8(B)は、それぞれの予測器(すなわち、参照画素)に対応付けられた符号を例示し、図8(C)は、本予測符号化方式で生成される符号データを例示する。
図8(A)に例示するように、複数の予測器は、注目画素Xに対して既定の相対位置にある複数の参照画素A〜D(参照画素とは、参照される画素を意味する)を参照して、参照画素A〜Dの画素値それぞれを、注目画素Xに対する予測値として読み出す。具体的には、参照画素Aは、注目画素Xの主走査方向上流に設定され、参照画素B〜Dは、注目画素Xの上方(副走査方向上流)の主走査ライン上に設定されている。
また、予測誤差算出部は、注目画素Xの画素値と、参照画素A(注目画素の直前の画素)の画素値との差分を予測誤差値として算出する。
また、図8(B)に例示するように、それぞれの予測器A〜D(すなわち、参照画素A〜D)には、符号が対応付けられている。すなわち、本例では、各参照位置(参照画素A〜D)が予測方法に対応しており、それぞれ符号が割り当てられている。
いずれかの予測値(すなわち、参照画素A〜Dの画素値)が注目画素Xの画素値と一致する場合(すなわち、予測が的中した場合)には、予測が的中した参照位置に対応する予測器IDの連続一致数をカウントして、その予測器ID及び連続一致数を符号化し、いずれの予測値も注目画素Xの画素値と一致しなかった場合(すなわち、予測が外れた場合)には、予測誤差値が符号化される。
生成される符号データは、図8(C)に例示するように、予測器IDを示す符号(符号A、符号Bなど)と、その予測器で予測が連続して的中した連続一致数(ラン数)の符号と、予測誤差値の符号とを含む。
図9は、図8で説明した予測符号化方式で生成される符号データを説明する図であり、図9(A)は、本実施形態で生成される符号データ922を例示し、図9(B)は、本予測符号化方式で単純に各色成分を符号化した場合の面順符号データを例示し、図9(C)は、本予測符号化方式で画素毎に符号化した場合の点順符号データを例示する。
本実施形態では、画素単位(すなわち、画素データの単位)で予測処理を行う。本例の画素データは、複数の色成分の画素値、及び、それぞれの画素に付加される付加情報(タグ情報)を含むため、図9(A)に例示するように、予測器ID、そのラン長(連続一致数)、予測外れであることを示すリテラル、及び、画素に対する付加情報(本例では、タグ誤差)が、複数の色成分で共通する共通符号922として符号化され、各色成分に固有の固有符号(C固有符号924、M固有符号926、Y固有符号928及びK固有符号930)として、各色成分の予測画素値(C誤差、M誤差、Y誤差及びK誤差)が符号化される。
一方、単純に面順符号化すると、図9(B)に例示する面順符号データが生成される。この面順符号データでは、予測器ID、ラン長、リテラル及びタグ誤差が、複数の色成分の間で重複し冗長である。
また、単純に点順符号化すると、図9(C)に例示する点順符号データが生成される。この点順符号データでは、画素データの単位で算出された画素データが含まれているため、画素データ全体を復号化した後でないと、各色成分の画素値を算出できない。すなわち、単純に点順符号化すると、面順で復号化することができない。
[符号化プログラム]
図10は、制御装置21(図1)により実行され、本発明にかかる符号化方法を実現する第2の符号化プログラム7の機能構成を例示する図である。
図10に例示するように、第2の符号化プログラム7は、データ調整部700、複数の予測器710、複数のラン計数部720、色情報分解部730、予測誤差算出部740、選択部750、共通情報符号器760、及び、固有情報符号器を有し、固有情報符号器は、C色情報符号器772、M色情報符号器774、Y色情報符号器776及びK色情報符号器778を含む。なお、複数の予測器710、複数のラン計数部720、色情報分解部730、予測誤差算出部740、及び選択部750は、ソースコーダに相当し、共通情報符号器760及び固有情報符号器は、エントロピーコーダに相当する。
符号化プログラム7において、データ調整部700は、入力された画像データを、予測器710における処理単位の画素データに変換する。
本例では、CMYKのカラー画像が入力される場合を具体例として説明するため、本例のデータ調整部700は、入力されたCMYK画像のC値、M値、Y値及びK値、並びに、画素に対する制御方法を指定するタグ情報を並べて、画素データを生成し、生成された画素データを予測器710及び色情報分解部730に出力する。
複数の予測器710それぞれは、既定の予測方法で、入力された画素データについて予測データを生成し、生成された予測データと、処理対象である画素データとを比較して、比較結果を、対応するラン計数部720に出力する。比較結果とは、画素データと予測データとの差分が既定の範囲(以下、許容範囲という)内であるか否かを示す情報であり、例えば、画素データと予測データとが一致しているか否かを示す情報である。この許容範囲は、非可逆性を許容する範囲であり、画像データと予測データとが差分が許容範囲内であれば、一致していたものとみなして符号化する。
本例のA予測器710Aは、図8(A)に例示する参照画素Aの画素データを予測データとして読み出して、予測データと注目画素Xの画素データとを比較し、その比較結果をAラン計数部720Aに出力する。同様に、B予測器710Bは、図8(A)に例示する参照画素Bの画素データを予測データとして読み出し、比較結果をBラン計数部720Bに出力し、C予測器710Cは、図8(A)に例示する参照画素Cの画素データを予測データとして読み出し、比較結果をCラン計数部720Cに出力し、D予測器710Dは、図8(A)に例示する参照画素Dの画素データを予測データとして読み出し、比較結果をDラン計数部720Dに出力する。
各ラン計数部720は、各予測器710から入力される比較結果に基づいて、同一の参照位置で予測が連続して的中する連続一致数(ラン長)を計数する。また、各ラン計数部720は、各予測器710から入力される比較結果を選択部750に通知する。
本例のAラン計数部720Aは、A予測器710から入力される比較結果に基づいて、参照位置Aのラン長を計数し、参照位置Aの予測器ID及びそのラン長を選択部750に出力する。同様に、他のラン計数部720は、対応する予測器710から入力される比較結果に基づいて、各参照位置のラン長を計数し、各参照位置の予測器ID及びそのラン長を選択部750に出力する。
色情報分解部730は、データ調整部700から入力される画素データを複数の色成分値及びタグ情報に分解し、分解された各色成分値及びタグ情報を予測誤差算出部740に出力する。
予測誤差算出部740は、色情報分解部730から入力された複数の色成分値及びタグ情報に基づいて、各色成分値及びタグ情報の予測誤差値を算出し、算出された各色成分の予測誤差値(C誤差、M誤差、Y誤差及びK誤差)及び各色成分のタグ誤差値を選択部750に出力する。
選択部750は、ラン計数部720のいずれかから予測が的中した旨が入力されている間は、各ラン計数部720から入力される予測器ID及びそのラン長を保持し、いずれのラン計数部720からも予測が外れた旨が入力されると、保持されている予測器ID及びラン長に基づいて、最長のランとなる予測部ID及びラン長の組合せを決定し、決定された予測部ID及びラン長を共通情報符号器760に出力する。
次に、選択部750は、予測誤差算出部740から入力された各色成分の予測誤差値(C誤差、M誤差、Y誤差及びK誤差)をそれぞれC色情報符号器772、M色情報符号器774、Y色情報符号器776及びK色情報符号器778に出力し、予測誤差算出部740から入力されたタグ情報の予測誤差(タグ誤差)を共通情報符号器760に出力する。
共通情報符号器760は、選択部750から入力される共通の中間コード(予測器ID、ラン長、リテラル、及び、タグ誤差)をエントロピー符号化する。
固有情報符号器(C色情報符号器772、M色情報符号器774、Y色情報符号器776及びK色情報符号器778)は、選択部750から入力される固有の中間コード(C誤差、M誤差、Y誤差、及びK誤差)をエントロピー符号化する。
図11は、符号化プログラム7(図10)による符号化処理(S30)のフローチャートである。
図11に示すように、ステップ300(S300)において、データ調整部700(図10)は、入力された画像データ(CMYK、タグ)を配列して画素データを生成する。
ステップ305(S305)において、データ調整部700は、生成された画素データの中から、走査順に注目画素Xを設定し、注目画素Xの画素データを複数の予測器710及び色情報分解部730に出力する。
複数の予測器710(図10)それぞれは、注目画素Xに対応する参照画素の画素データを予測データとして保持しており、この予測データと、注目画素Xの画素データとを比較し、比較結果を、対応するラン計数部720に出力する。
ステップ310(S310)において、符号化プログラム7は、注目画素Xの画素データがいずれかの予測データと一致した場合(予測が的中した場合)に、S315の処理に移行し、注目画素Xの画素データがいずれの予測データとも一致しない場合(予測が外れた場合)に、S330の処理に移行する。
ステップ315(S315)において、複数のラン計数部720それぞれは、画素データと予測データとが一致した旨を、対応する予測器710から入力されると、ランのカウントアップを開始する。
データ調整部700は、画素データと予測データとがいずれも不一致となるまで、走査順に注目画素Xを設定し、複数の予測部710は、順に設定される画素データと予測データとを比較して、一致した旨をラン計数部720に出力する。
ラン計数部720は、画素データと予測データとが不一致となるまで、ランをカウントし、カウント値をラン長として選択部750に出力する。
また、複数のラン計数部720それぞれは、選択部750に比較結果(画素データと予測データとが一致しているか否か)を通知する。
ステップ320(S320)において、選択部750は、いずれのラン計数部720からも予測が外れた旨(画素データと予測データとが一致しなかった旨)が入力されると、複数のラン計数部720から入力された予測器ID及びラン長に基づいて、最適な予測器ID及びラン長の組合せを決定し、決定された予測部ID及びラン長を共通情報符号器760に出力する。
ステップ325(S325)において、共通情報符号器760は、選択部750から入力された予測器ID及びラン長をエントロピー符号化し、予測器ID及びラン長の符号を共通符号922(図9(A))として外部に出力する。
ステップ330(S330)において、色情報分解部730は、データ調整部700から入力される画素データそれぞれを色成分値(C値、M値、Y値及びK値)及びタグ情報に分解し、分解された各色成分値及びタグ情報を予測誤差算出部740に出力する。
ステップ335(S335)において、予測誤差算出部740は、色情報分解部730から入力された注目画素Xの各色成分値及びタグ情報それぞれについて、予測誤差を算出し、各色成分の予測誤差値(C誤差、M誤差、Y誤差及びK誤差)及びタグ情報の誤差(タグ誤差)を選択部750に出力する。
なお、本フローチャートでは、便宜上、色情報分解部730による画素データの分解処理、及び、予測誤差算出部740による予測誤差の算出処理は、予測部710による予測処理などの後の処理として記載しているが、実際には予測器710などの動作とは独立して、全ての注目画素Xについて画素データの分解処理及び予測誤差算出処理が行われる。
選択部750は、いずれの予測器710も予測が外れた場合(すなわち、ランが途切れた場合(S315からS325を経由)、又は、予測外れが連続する場合(S310:No))に、予測誤差算出部740から入力される予測誤差(各色成分の予測誤差値、及び、タグ誤差)のうち、そのときの注目画素Xのタグ誤差とリテラルを共通情報符号器760に出力し、そのときの注目画素XのC誤差、M誤差、Y誤差及びK誤差をそれぞれC色情報符号器772、M色情報符号器774、Y色情報符号器776及びK色情報符号器778に出力する。
ステップ340(S340)において、共通情報符号器760は、選択部750から入力されたリテラル及びタグ誤差をエントロピー符号化し、符号かされたリテラル及びタグ誤差を共通符号922として外部に出力する。
ステップ345(S345)において、C色情報符号器772、M色情報符号器774、Y色情報符号器776及びK色情報符号器778は、選択部750から入力されるC誤差、M誤差、Y誤差及びK誤差をそれぞれエントロピー符号化し、符号化されたC誤差、M誤差、Y誤差及びK誤差を、それぞれC固有符号924、M固有符号926、Y固有符号928及びK固有符号930として外部に出力する。
ステップ350(S350)において、符号化プログラム7は、入力された画像データの全画素について処理を行ったか否かを判断し、未処理の画素が存在する場合には、S305の処理に戻り、全ての画素が処理された場合には、符号化処理(S30)を終了する。
[復号化プログラム]
次に、第2の実施形態における復号化処理を説明する。
図12は、制御装置21(図1)により実行され、本発明にかかる復号化方法を実現する第2の復号化プログラム8の機能構成を例示する図である。
図12に例示するように、第2の復号化プログラム8は、4つの復号ユニット80を有する。これらの復号ユニット80は、処理対象となる色が異なるだけで、実質的に同一の機能を有する。そこで、以下、C成分の復号処理を行うC色復号ユニット80Cを説明する。
C色復号ユニット80Cは、符号入力部800C、共通情報復号器810C、ラン制御部820C、逆予測部830C、C色情報復号器840C、及び、色データ生成部850Cを有する。
復号化プログラム8において、符号入力部800Cは、入力された符号データのうち、共通符号922(図9)及びC固有符号924(図9)を選択し、選択された共通符号922を共通情報復号器810Cに出力し、選択されたC固有符号924をC色情報復号器840Cに出力する。
共通情報復号器810Cは、符号入力部800Cから入力された共通符号922をエントロピー復号化し、復号化された予測器ID及びラン長、又は、リテラル及びタグ誤差をラン制御部820Cに出力する。
ラン制御部820Cは、共通情報復号器810Cから予測器ID及びラン長が入力された場合には、入力された予測器ID及びラン長に応じて予測データ(C値及びタグ情報)を生成するよう逆予測部830Cに指示する。
また、ラン制御部820Cは、共通情報復号器810Cからリテラル及びタグ誤差が入力された場合には、参照画素Aの予測データ(C値及びタグ情報)を読み出すよう逆予測部830Cに指示する。なお、リテラル及びタグ誤差は、逆予測部830Cを介して、色データ生成部850Cに出力される。
逆予測部830Cは、ラン制御部820Cの指示に応じて、予測データを生成し、生成された予測データを色データ生成部850Cに出力する。
具体的には、逆予測部830Cは、ラン制御部820Cから予測器ID及びラン長が指定された場合に、ラン長に対応する回数だけ、予測器IDに対応する参照画素(図8(A))のC値及びタグ情報(復号済みのC値及びタグ情報)を読み出し色データ生成部850に復号画素値として出力する。また、逆予測部830は、ラン制御部820Cから参照画素Aの画素データを読み出すように指示された場合に、これに応じて、参照画素AのC値及びタグ情報を読み出し、読み出されたC値及びタグ情報を色データ生成部850Cに出力する。
C色情報復号器840Cは、符号入力部800Cから入力されたC固有符号924をエントロピー復号化し、復号化されたC誤差を色データ生成部850Cに出力する。
色データ生成部850Cは、逆予測部830Cから入力された予測データと、C色情報復号器840Cから入力された予測誤差(C誤差)とに基づいて、C色成分の画像データを生成し、生成されたC色成分の画像データを外部に出力する。
具体的には、色データ生成部850Cは、逆予測部830からリテラルが入力された場合(すなわち、予測外れに相当する画素を復号化する場合)、逆予測部830Cから入力される参照画素AのC値(予測データ)と、C色情報復号器840Cから入力されるC誤差とを合算して、注目画素XのC値を生成し、逆予測部830から入力される参照画素Aのタグ情報(予測データ)とタグ誤差とを合算して、注目画素Xのタグ情報を生成する。
また、色データ生成部850Cは、逆予測部830からリテラルが入力されない場合(すなわち、予測的中の画素を復号化する場合)、逆予測部830Cから入力される予測データ(予測部IDに対応する参照画素のC値及びタグ情報)をそのまま注目画素XのC値及びタグ情報とする。
図13は、復号化プログラム8(図12)による復号化処理(S40)のフローチャートである。なお、複数の色成分の復号化処理は、実質的に同一の動作により並行して行われる。以下の説明では、C成分に関する復号化処理のみを説明する。
図13に示すように、ステップ400(S400)において、符号入力部800C(図12)は、入力された符号データのうち、共通符号922(図9)及びC固有符号924(図9)を選択し、選択された共通符号922を共通情報復号器810Cに出力し、選択されたC固有符号924をC色情報復号器840Cに出力する。
共通情報復号器810Cは、符号入力部800Cから入力された共通符号922の1つを注目符号としてエントロピー復号化し、復号化された予測器ID及びラン長、又は、リテラル及びタグ誤差をラン制御部820Cに出力する。
C色情報復号器840Cは、共通情報復号器810Cとは独立して、符号入力部800Cから入力されたC固有符号924をエントロピー復号化し、復号化された予測誤差値(C誤差)を色データ生成部850Cに出力する。なお、本例では、C色情報復号器840Cが、エントロピー復号化された予測誤差値を保持するバッファ残量に応じて、C固有符号を復号化していく形態を具体例として説明するが、C色情報復号器840Cは、共通情報復号器810Cによりリテラルが復号化されるか否かに応じて、C固有符号を復号化してもよい。
ステップ405(S405)において、ラン制御部820Cは、共通情報復号器810Cからリテラルが入力されるか否かに基づいて、復号化された情報が予測器ID及びラン長であるかリテラル及びタグ誤差であるかを判断する。
復号化プログラム8は、復号化された注目符号が予測器ID及びラン長である場合には、S410の処理に移行し、復号化された注目符号がリテラル及びタグ誤差である場合には、S420の処理に移行する。
ステップ410(S410)において、ラン制御部820Cは、共通情報復号器810Cから予測器ID及びラン長が入力されると、入力された予測器ID及びラン長に対応する予測処理を行うよう逆予測部830Cに指示する。
ステップ415(S415)において、逆予測部830は、注目画素Xの位置を走査方向に更新しながら、ラン長に対応する回数だけ、予測器IDに対応する予測処理を行う。この予測処理によって、予測器IDに対応する参照画素のC値及びタグ情報が読み出されて、注目画素XのC値及びタグ情報として色データ生成部850Cに出力される。
色データ生成部850Cは、逆予測部830から入力されたC値及びタグ情報を各注目画素Xの値として外部に出力する。
ステップ420(S420)において、ラン制御部820Cは、共通情報復号器610Rからリテラル及びタグ情報が入力されると、参照画素AのC値及びタグ情報を読み出すよう逆予測部830に指示する。
逆予測部830Cは、ラン制御部820Cからの指示に応じて、参照画素AのC値及びタグ情報を予測データとして読み出し、読み出された予測データを色データ生成部850に出力する。
ステップ425(S425)において、色データ生成部850Cは、逆予測部830Cから入力される予測データ(参照画素AのC値及びタグ情報)と、共通情報復号器810Cにより復号化されたタグ誤差と、C色情報復号器840Cにより復号化された予測誤差(C誤差)とに基づいて、注目画素XのC値及びタグ情報を算出し、算出された注目画素XのC値及びタグ情報を外部に出力する。すなわち、参照画素AのC値と、C誤差との合算値が、注目画素XのC値となり、参照画素Aのタグ情報と、タグ誤差との合算値が、注目画素Xのタグ情報となる。
ステップ430(S430)において、復号化プログラム8は、入力された全ての共通符号922を処理したか否かを判断し、未処理の共通符号922が存在する場合には、S400に戻って、次の共通符号922を注目符号としてS400〜S425までの処理を行い、全ての共通符号922が処理された場合には、復号化処理(S40)を終了する。
このように、本発明は、複数の予測器710が設けられた予測符号化方式に対しても適用可能である。
[変形例]
次に、上記実施形態の変形例を説明する。
図14は、第1の実施形態における符号化プログラムの変形例である。なお、本図に示された各構成のうち、図6に示された構成と実質的に同一のものには同一の符号が付されている。
図14に例示するように、第3の復号化プログラム62は、図6に示された符号化プログラム6の共通部分(符号入力部、共通情報復号器、及びラン制御部)を複数の色成分で共用するように構成したものである。
図6では、複数の色成分の復号化処理を非同期に実行させるため、各復号ユニットを完全に分離させたが、複数の色成分の復号化処理を同じタイミングで実行させてもかまわない場合には、図14に例示するように、一部の構成を共用してもよい。
同様に、図12に例示した復号化プログラム8でも、共通情報復号器及びラン制御部を共用させることができる。
本発明にかかる符号化方法及び復号化方法が適応される画像処理装置2のハードウェア構成を、制御装置21を中心に例示する図である。 制御装置21(図1)により実行され、本発明にかかる符号化方法を実現する第1の符号化プログラム5の機能構成を例示する図である。 符号化プログラム5(図2)による符号化処理(S10)のフローチャートである。 符号化処理(S10)において生成されるデータを例示する図である。 (A)は、符号化処理(S10)により生成される符号データ900を説明する図であり、(B)は、各色成分を単純に連長符号化方式で符号化した符号データを説明する図である。 制御装置21(図1)により実行され、本発明にかかる復号化方法を実現する第1の復号化プログラム6の機能構成を例示する図である。 復号化プログラム6(図6)による復号化処理(S20)のフローチャートである。 第2の実施形態で用いられる予測符号化方式を説明する図である。 図8で説明した予測符号化方式で生成される符号データを説明する図である。 制御装置21(図1)により実行され、本発明にかかる符号化方法を実現する第2の符号化プログラム7の機能構成を例示する図である。 符号化プログラム7(図10)による符号化処理(S30)のフローチャートである。 制御装置21(図1)により実行され、本発明にかかる復号化方法を実現する第2の復号化プログラム8の機能構成を例示する図である。 復号化プログラム8(図12)による復号化処理(S40)のフローチャートである。 第1の実施形態における符号化プログラムの変形例である。
符号の説明
2・・・画像処理装置
5,7・・・符号化プログラム
500・・・データ調整部
510・・・予測部
520・・・ラン計数部
530・・・色情報分解部
540・・・共通情報符号器
552・・・R色情報符号器
554・・・G色情報符号器
556・・・B色情報符号器
6・・・復号化プログラム
600・・・符号入力部
610・・・共通情報復号器
620・・・色情報復号器
630・・・ラン制御部
640・・・色データ生成部
900・・・符号データ
902・・・共通符号
904・・・R固有符号
906・・・G固有符号
908・・・B固有符号

Claims (9)

  1. カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成する予測手段と、
    前記予測手段により画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成する中間コード生成手段と、
    前記中間コード生成手段により生成された中間コードをエントロピー符号化する第1及び第2の符号化手段と
    を有し、
    前記中間コード生成手段は、予測データと画素データとの差が既定の範囲内であるか否かに応じて、生成された中間コードそれぞれを前記第1の符号化手段又は前記第2の符号化手段に振り分ける
    符号化装置。
  2. 前記第1の符号化手段は、複数の色成分に関する中間コードを符号化し、
    前記第2の符号化手段は、複数の色成分に関する中間コードを、色成分毎に符号化し、
    前記中間コード生成手段は、予測データと画素データとの差が既定の範囲内である場合に、予測が的中した旨を示す一致情報を前記第1の符号化手段に振り分け、予測データと画素データとの差が既定の範囲外である場合に、この画素データに含まれる複数の色成分値、又は、複数の色成分それぞれの予測誤差値を前記第2の符号化手段に振り分ける
    請求項1に記載の符号化装置。
  3. 前記第2の符号化手段は、エントロピー符号化処理を行う複数のエントロピー符号化器を含み、
    前記中間コード生成手段は、予測データと画素データとの差が既定の範囲外である場合に、画素データに含まれる複数の色成分値、又は、複数の色成分それぞれの予測誤差値を、複数の前記エントロピー符号化器それぞれに振り分けて、並行して符号化させる
    請求項2に記載の符号化装置。
  4. 入力されたカラー画像から、エントロピー符号化処理の対象となる中間コードを生成する中間コード生成手段と、
    前記中間コード生成手段により生成される中間コードのうち、同一の画素に関して、複数の色成分で同一の値を有する中間コードをエントロピー符号化して、これらの色成分の中間コードに対応する単一の符号を生成する第1の符号化手段と、
    前記中間コード生成手段により生成される中間コードのうち、各色成分に固有の中間コードそれぞれをエントロピー符号化する第2の符号化手段と
    を有する符号化装置。
  5. 前記中間コード生成手段は、既定の予測方法を用いて予測処理を行い、予測が的中したか否かを示す一致情報と、各色成分の画素値又は予測誤差値とを、前記中間コードとして生成し、
    前記第1の符号化手段は、前記中間コード生成手段により生成された一致情報を符号化し、
    前記第2の符号化手段は、前記中間コード生成手段により生成された各色成分の画素値又は予測誤差値を符号化する
    請求項4に記載の符号化装置。
  6. 予測符号化処理により生成されたカラー画像の符号データを復号化する復号化装置であって、
    入力された符号データのうち、複数の色成分に共通する符号を復号化して、複数の色成分に共通する中間コードを生成する第1の復号化手段と、
    入力された符号データのうち、既定の色成分に固有の固有符号を復号化して、この色成分に固有の中間コードを生成する第2の復号化手段と、
    前記第1の復号化手段により復号化された中間コード、及び、前記第2の復号化手段により復号化された中間コードを用いて、この色成分の画像データを生成する画像生成手段と
    を有する復号化装置。
  7. 複数のエントロピー符号化器を用いた符号化方法であって、
    カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成し、
    画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成し、
    生成された中間コードを、予測データと画素データとの差が既定の範囲内であるか否かに応じて、複数の前記エントロピー符号化器に振り分ける
    符号化方法。
  8. 複数のエントロピー復号化器を用いた復号化方法であって、
    入力された符号データのうち、複数の色成分に共通する符号を、第1のエントロピー復号化器に割り当てて、複数の色成分に共通する中間コードを生成し、
    入力された符号データのうち、既定の色成分に固有の固有符号を、第2のエントロピー復号化器に割り当てて、この色成分に固有の中間コードを生成し、
    第1のエントロピー復号化器及び第2のエントロピー復号化器により復号化された中間コードを用いて、この色成分の画像データを生成する
    復号化方法。
  9. カラー画像を構成する画素データそれぞれについて、既定の予測方法を用いて予測データを生成するステップと、
    画素データそれぞれについて生成される予測データと、画素データとを比較して、予測データと画素データとの差が既定の範囲内であるか否かに応じて、中間コードを生成するステップと、
    生成された中間コードを、予測データと画素データとの差が既定の範囲内であるか否かに応じて、複数のエントロピー符号化器に振り分けるステップと
    をコンピュータに実行させるプログラム。
JP2006033938A 2006-02-10 2006-02-10 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム Expired - Fee Related JP4618436B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006033938A JP4618436B2 (ja) 2006-02-10 2006-02-10 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム
US11/519,947 US7382294B2 (en) 2006-02-10 2006-09-13 Coding apparatus, decoding apparatus, coding method, decoding method, computer readable medium and computer data signal
KR20060094918A KR100810675B1 (ko) 2006-02-10 2006-09-28 부호화 장치, 복호화 장치, 부호화 방법, 복호화 방법, 및프로그램
CN2006101363614A CN101018337B (zh) 2006-02-10 2006-10-17 编码装置、解码装置、编码方法以及解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006033938A JP4618436B2 (ja) 2006-02-10 2006-02-10 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2007214997A true JP2007214997A (ja) 2007-08-23
JP4618436B2 JP4618436B2 (ja) 2011-01-26

Family

ID=38367806

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006033938A Expired - Fee Related JP4618436B2 (ja) 2006-02-10 2006-02-10 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム

Country Status (4)

Country Link
US (1) US7382294B2 (ja)
JP (1) JP4618436B2 (ja)
KR (1) KR100810675B1 (ja)
CN (1) CN101018337B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー
CN107864381A (zh) * 2016-09-21 2018-03-30 富士施乐株式会社 图像处理设备和图像处理方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508599B1 (ko) * 2008-03-18 2015-04-03 삼성전자주식회사 2×2 블록 기반 이진 영상 압축 방법
US8548041B2 (en) * 2008-09-25 2013-10-01 Mediatek Inc. Adaptive filter
US8755444B2 (en) 2010-08-06 2014-06-17 Qualcomm Incorporated Two-stage entropy decoding
KR101824167B1 (ko) 2011-04-06 2018-02-02 삼성디스플레이 주식회사 표시 장치를 위한 영상 압축 장치 및 방법
CN103379323A (zh) * 2012-04-16 2013-10-30 乐金电子(中国)研究开发中心有限公司 一种先进运动矢量预测amvp的并行实现方法、装置及系统
CN103379322A (zh) * 2012-04-16 2013-10-30 乐金电子(中国)研究开发中心有限公司 一种先进运动矢量预测amvp的并行实现方法、装置及系统
US9363517B2 (en) * 2013-02-28 2016-06-07 Broadcom Corporation Indexed color history in image coding
CN104811722B (zh) * 2015-04-16 2019-05-07 华为技术有限公司 一种视频数据的编解码方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336458A (ja) * 1997-06-04 1998-12-18 Fuji Xerox Co Ltd カラー画像符号化装置およびカラー画像復号装置
JP2002335407A (ja) * 2001-05-08 2002-11-22 Fuji Xerox Co Ltd 画像符号化装置および画像符号化方法
JP2004032588A (ja) * 2002-06-28 2004-01-29 Fuji Xerox Co Ltd 画像符号化装置および画像符号化プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6744925B2 (en) * 1996-03-19 2004-06-01 Mitsubishi Denki Kabushiki Kaisha Encoding apparatus, decoding apparatus, encoding method, and decoding method
JP2713298B2 (ja) 1996-10-25 1998-02-16 日本電気株式会社 カラー画像信号の復号化装置
JP4142180B2 (ja) * 1998-10-29 2008-08-27 富士通株式会社 動きベクトル符号化装置および復号装置
JP2000217003A (ja) 1999-01-20 2000-08-04 Ricoh Co Ltd 符号化装置および復号化装置
JP2001285648A (ja) 2000-04-04 2001-10-12 Sony Corp 画像処理装置および画像処理方法、並びに記録媒体
US7535961B2 (en) 2003-07-16 2009-05-19 Samsung Electronics Co., Ltd. Video encoding/decoding apparatus and method for color image
KR100718122B1 (ko) * 2003-07-16 2007-05-15 삼성전자주식회사 컬러 평면 간 예측을 이용한 무손실 영상 부호화/복호화방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336458A (ja) * 1997-06-04 1998-12-18 Fuji Xerox Co Ltd カラー画像符号化装置およびカラー画像復号装置
JP2002335407A (ja) * 2001-05-08 2002-11-22 Fuji Xerox Co Ltd 画像符号化装置および画像符号化方法
JP2004032588A (ja) * 2002-06-28 2004-01-29 Fuji Xerox Co Ltd 画像符号化装置および画像符号化プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー
CN107864381A (zh) * 2016-09-21 2018-03-30 富士施乐株式会社 图像处理设备和图像处理方法
US10694194B2 (en) 2016-09-21 2020-06-23 Fuji Xerox Co., Ltd. Image processing apparatus, non-transitory computer readable storage medium, and image processing method

Also Published As

Publication number Publication date
US7382294B2 (en) 2008-06-03
KR20070081411A (ko) 2007-08-16
JP4618436B2 (ja) 2011-01-26
KR100810675B1 (ko) 2008-03-07
US20070188356A1 (en) 2007-08-16
CN101018337B (zh) 2010-09-01
CN101018337A (zh) 2007-08-15

Similar Documents

Publication Publication Date Title
JP4618436B2 (ja) 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム
US7460042B2 (en) Encoding circuit, decoding circuit, encoder circuit, decoder circuit, and CABAC processing method
JP5018582B2 (ja) 予測値生成装置、予測値生成方法及び復号装置
JP2007281589A (ja) データ処理装置、データ処理方法及びプログラム
JP3694999B2 (ja) 画像符号化装置および画像復号装置ならびにそれらの方法
US6898322B2 (en) Coding method, coding apparatus, decoding method and decoding apparatus using subsampling
JP4327036B2 (ja) 算術符号復号化方法及びその装置
JP2007214998A (ja) 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム
JP2006311055A (ja) 符号化装置、復号化装置、符号化方法、復号化方法及びプログラム
JP5206273B2 (ja) 画像符号化装置、画像符号化システム
JP5842357B2 (ja) 画像処理装置及び画像処理プログラム
JP2008035230A (ja) データ圧縮装置およびデータ圧縮プログラム
US6298165B1 (en) Method for improving data encoding and decoding efficiency
US20100158115A1 (en) Method and apparatus for coding and decoding using bit-precision
JP2004112483A (ja) 画像処理装置
JP2007166492A (ja) 画像処理装置、符号化方法及びプログラム
JP2004519131A (ja) アセンブルされたビットストリームの部分的暗号化
JP2003333347A (ja) 2値画像データの圧縮方法及び復元方法、並びに2値画像データの圧縮装置及び復元装置
JPH0575477A (ja) ハフマン符号化装置および復号化装置
US6847317B2 (en) System and method for a dyadic-monotonic (DM) codec
JP2006340134A (ja) 符号化装置、符号化方法、及びプログラム
WO2003001679A3 (en) A coding method, particularly a numeric coding method
US20090279796A1 (en) Method and apparatus for encoding and decoding image
US8170113B2 (en) Encoder, data file, encoding method, computer readable medium and computer data signal
JP2000092333A (ja) 画像符号化復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100909

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: 20100929

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: 20101012

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4618436

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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