(57)【要約】  【課題】  符号化処理による画質劣化の影響を緩和する符号化装置を提供する。  【解決手段】  符号化装置２は、画像要素の画像データ（非透明色データ）と透明色データとを同一の非可逆符号化処理により符号化し、非透明色データがとるべきデータの範囲及び透明色データがとるべきデータの範囲と、非可逆符号化処理が施された場合の非透明色データとを比較し、非透明色データがそれぞれの透明色のデータ範囲内である場合に、非透明色データがそれぞれの非透明色のデータ範囲内におさまるように非可逆符号化処理の内容を変更する。【選択図】図３
2005151382.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像データと、この画像データに付加された付加データとを、非可逆符号化処理により符号化する符号化手段と、
前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、前記非可逆符号化処理が施された場合の画像データを評価する符号評価手段と、
前記符号評価手段による評価結果に基づいて、前記符号化手段による非可逆符号化処理の内容を制御する符号化制御手段と
を有する符号化装置。
【請求項２】
前記符号評価手段は、非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲内であるか否かを判定し、
前記符号化制御手段は、前記非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲外である場合に、この非可逆符号化処理の内容を変更せずに、画像データ及び付加データを符号化させ、非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲内である場合に、非可逆符号化処理の内容を変更して画像データ及び付加データを符号化させる
請求項１に記載の符号化装置。
【請求項３】
前記画像データは、複数のレイヤに振り分けられた画像要素のデータであり、前記付加データは、いずれかのレイヤに含まれ、いずれのレイヤに含まれる画像要素を出力すべきであるかを指定する出力制御データであり、
前記符号評価手段は、前記非可逆符号化処理が施された後の画像データを評価し、
前記符号化制御手段は、前記非可逆符号化処理が施された後の画像データが、前記出力制御データに対して規定されたデータ範囲外となるように、前記符号化手段による非可逆符号化の内容を制御し、
前記符号化手段は、前記符号化制御手段による制御に応じて、前記画像データ及び前記出力制御データが含まれるレイヤを非可逆に符号化する
請求項１に記載の符号化装置。
【請求項４】
いずれかのレイヤを構成するそれぞれの画素について、これらの画素が取りうる数値範囲の一部は、前記出力制御データに対して割り当てられ、前記数値範囲の他の一部は、前記画像データに対して割り当てられており、
前記レイヤから、前記画像データに対して割り当てられた数値範囲内の画素値を有する画素を画像要素の画素として検出する画素検出手段
をさらに有し、
前記符号化制御手段は、少なくとも前記画素検出手段により検出された画像要素の画素について、前記非可逆符号化処理が施された後の画素値が前記画像データに対して割り当てられた数値範囲に入るように、前記符号化手段による非可逆符号化の内容を制御する
請求項３に記載の符号化装置。
【請求項５】
前記符号評価手段は、
前記非可逆符号化処理により符号化された画像データを復号化する復号化手段と、
前記復号化手段により復号化された画像データの値と、前記付加データに対して規定されたデータ範囲とを比較する比較手段と
を有し、
前記符号化制御手段は、前記比較手段による比較結果に基づいて、非可逆符号化処理及び復号化処理が施された後の画像データの値が前記データ範囲内となるように、前記符号化手段による非可逆符号化の内容を制御する
請求項１〜４のいずれかに記載の符号化装置。
【請求項６】
前記符号化手段は、前記復号化手段により復号化された画像データの値が前記付加データに対して規定されたデータ範囲と少なくとも一部で一致する場合に、復号化された画像データと入力された画像データとの差分に応じて非可逆符号化処理を行い、
前記符号評価手段は、前記差分に応じて非可逆符号化処理がなされた場合の画像データを評価する
請求項５に記載の符号化装置。
【請求項７】
前記符号評価手段は、前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、前記非可逆符号化処理が施された場合の画像データ及び付加データを評価し、
前記符号化制御手段は、前記画像データ及び前記付加データの評価結果に基づいて、前記符号化手段による非可逆符号化処理の内容を制御する
請求項１〜６のいずれかに記載の符号化装置。
【請求項８】
入力された画像データとこの画像データに付加された付加データとを符号化する符号化方法であって、
前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、非可逆符号化処理が施された場合の画像データを評価し、
前記画像データの評価結果に基づいて、前記非可逆符号化処理の内容を決定し、
決定された非可逆符号化処理により、前記画像データ及び前記付加データを符号化する
符号化方法。
【請求項９】
入力された画像データとこの画像データに付加された付加データとを符号化する符号化装置において、
前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、非可逆符号化処理が施された場合の画像データを評価するステップと、
前記画像データの評価結果に基づいて、前記非可逆符号化処理の内容を決定するステップと、
決定された非可逆符号化処理により、前記画像データ及び前記付加データを符号化するステップと
を前記符号化装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データとこの画像データに付加された付加データとを含むデータファイルを符号化する符号化装置に関する。
【背景技術】
【０００２】
例えば、特許文献１は、各色に対応してそれぞれ割り当てられたデータが複数集まって構成される画像用データを非可逆符号化する画像用データの符号化方法において、上記データの１つを透明色に割り当てると共に、その透明色を可逆とした画像用データの符号化方法を開示する。
【特許文献１】特開平１０−１６４６２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述した背景からなされたものであり、簡単な構成で非可逆符号化処理によるデータの劣化を緩和する符号化装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
［符号化装置］
上記目的を達成するために、本発明にかかる符号化装置は、入力された画像データと、この画像データに付加された付加データとを、非可逆符号化処理により符号化する符号化手段と、前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、前記非可逆符号化処理が施された場合の画像データを評価する符号評価手段と、前記符号評価手段による評価結果に基づいて、前記符号化手段による非可逆符号化処理の内容を制御する符号化制御手段とを有する。
【０００５】
好適には、前記符号評価手段は、非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲内であるか否かを判定し、前記符号化制御手段は、前記非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲外である場合に、この非可逆符号化処理の内容を変更せずに、画像データ及び付加データを符号化させ、非可逆符号化処理が施された後の画像データが前記付加データに対して規定されたデータ範囲内である場合に、非可逆符号化処理の内容を変更して画像データ及び付加データを符号化させる。
【０００６】
好適には、前記画像データは、複数のレイヤに振り分けられた画像要素のデータであり、前記付加データは、いずれかのレイヤに含まれ、いずれのレイヤに含まれる画像要素を出力すべきであるかを指定する出力制御データであり、前記符号評価手段は、前記非可逆符号化処理が施された後の画像データを評価し、前記符号化制御手段は、前記非可逆符号化処理が施された後の画像データが、前記出力制御データに対して規定されたデータ範囲外となるように、前記符号化手段による非可逆符号化の内容を制御し、前記符号化手段は、前記符号化制御手段による制御に応じて、前記画像データ及び前記出力制御データが含まれるレイヤを非可逆に符号化する。
【０００７】
好適には、いずれかのレイヤを構成するそれぞれの画素について、これらの画素が取りうる数値範囲の一部は、前記出力制御データに対して割り当てられ、前記数値範囲の他の一部は、前記画像データに対して割り当てられており、前記レイヤから、前記画像データに対して割り当てられた数値範囲内の画素値を有する画素を画像要素の画素として検出する画素検出手段をさらに有し、前記符号化制御手段は、少なくとも前記画素検出手段により検出された画像要素の画素について、前記非可逆符号化処理が施された後の画素値が前記画像データに対して割り当てられた数値範囲に入るように、前記符号化手段による非可逆符号化の内容を制御する。
【０００８】
好適には、前記符号評価手段は、前記非可逆符号化処理により符号化された画像データを復号化する復号化手段と、前記復号化手段により復号化された画像データの値と、前記付加データに対して規定されたデータ範囲とを比較する比較手段とを有し、前記符号化制御手段は、前記比較手段による比較結果に基づいて、非可逆符号化処理及び復号化処理が施された後の画像データの値が前記データ範囲内となるように、前記符号化手段による非可逆符号化の内容を制御する。
【０００９】
好適には、前記符号化手段は、前記復号化手段により復号化された画像データの値が前記付加データに対して規定されたデータ範囲と少なくとも一部で一致する場合に、復号化された画像データと入力された画像データとの差分に応じて非可逆符号化処理を行い、前記符号評価手段は、前記差分に応じて非可逆符号化処理がなされた場合の画像データを評価する。
【００１０】
好適には、前記符号評価手段は、前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、前記非可逆符号化処理が施された場合の画像データ及び付加データを評価し、前記符号化制御手段は、前記画像データ及び前記付加データの評価結果に基づいて、前記符号化手段による非可逆符号化処理の内容を制御する。
【００１１】
［符号化方法］
また、本発明にかかる符号化方法は、入力された画像データとこの画像データに付加された付加データとを符号化する符号化方法であって、前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、非可逆符号化処理が施された場合の画像データを評価し、前記画像データの評価結果に基づいて、前記非可逆符号化処理の内容を決定し、決定された非可逆符号化処理により、前記画像データ及び前記付加データを符号化する。
【００１２】
［プログラム］
また、本発明にかかるプログラムは、入力された画像データとこの画像データに付加された付加データとを符号化する符号化装置において、前記画像データ又は前記付加データがとるべきデータの範囲に基づいて、非可逆符号化処理が施された場合の画像データを評価するステップと、前記画像データの評価結果に基づいて、前記非可逆符号化処理の内容を決定するステップと、決定された非可逆符号化処理により、前記画像データ及び前記付加データを符号化するステップとを前記符号化装置に実行させる。
【発明の効果】
【００１３】
本発明の符号化装置によれば、非可逆符号化処理によるデータの劣化を緩和することができる。
【発明を実施するための最良の形態】
【００１４】
［第１の実施形態］
まず、本発明の理解を助けるために、その背景を説明する。
画像ファイルには、画像データに加えて、付加的な情報を示す付加データが含まれる場合がある。例えば、画像データと画像データに付加された付加データとを含むデータファイルとしては、画像データを複数のレイヤから構成するものがある。
例えば、ＭＲＣ（Mixed Raster Content）では背景レイヤ、前景レイヤ、選択レイヤをもち、選択レイヤは、上記付加データとして、背景レイヤと前景レイヤとのいずれが表示されるかを選択する。したがって、表示又はプリント出力される画像データは、選択レイヤに応じて背景レイヤと前景レイヤとが合成された画像データとなる。
また、選択レイヤの代わりに前景レイヤに含まれる画素のある値を透明色として規定し、透明色の値をもつ領域は背景レイヤ、透明色以外(非透明色)の値をもつ領域は前景レイヤを合成するようにしたものがある。
このように、付加データは、例えば、画像の出力を制御する出力制御データ（透明色データ、補正値指定データ、色指定データ又は出力サイズ指定データなど）であり、画像データ及び付加データを含む画像ファイルが非可逆符号化されると、データの値が一部で変化してしまう。特に、付加データが出力制御データである場合には、非可逆符号化によるデータの変化が画質劣化となってあらわれる場合がある。
以下、出力制御データの具体例として、透明色データについて説明する。
【００１５】
図１は、透明色データを説明する図であり、図１（Ａ）は、透明色データが含まれたレイヤ構成の画像ファイルを例示し、図１（Ｂ）は、透明色データが定義されているデータ範囲を例示する図である。
図１（Ａ）に例示するように、画像ファイル８００は、画像要素が割り当てられた前景レイヤ８１０及び背景レイヤ８２０を含む。これら前景レイヤ８１０及び背景レイヤ８２０は、互いに重なり合い、それぞれに割り当てられた画像要素を合成することにより１つの出力画像を形成する。その際、前景レイヤ８１０は、背景レイヤ８２０に割り当てられた画像要素の少なくとも一部を出力画像として出力するように指定する透明色エリア８１２を有する。この透明色エリア８１２は、透明色の画素が配列された領域（透明色データ）であり、プリンタ装置又はモニタなどの画像出力装置（不図示）に対して、この領域に対応する位置の背景レイヤ８２０上の画像要素を出力画像の一部とするよう指示する。
【００１６】
図１（Ｂ）に例示するように、透明色データには、画素値がとりうる全範囲のうち、特定の数値範囲が割り当てられており、非透明色データに他の数値範囲が割り当てられている。本例では、画素値が０〜２５５の２５６階調をとりうる場合に、上限値Ｔ１〜下限値Ｔ２が透明色データに対して割り当てられており、この上限値Ｔ１から下限値Ｔ２までのいずれかの画素値を有する画素は、透明色の画素として画像出力装置に認識され、他の範囲の画素値を有する画素は、非透明色の画素（すなわち、画像要素）として認識される。なお、透明色データに割り当てられるデータ範囲は、上限値又は下限値のみが規定された範囲や、１つの数値のみからなる範囲であってもよい。
【００１７】
このような画像ファイルは、一般的にデータ量が大きいため、通常、符号化処理により画像データを圧縮しているが、上記のような透明色をもつ画像データ（透明色データ）を非可逆符号化すると透明色の画素が非透明色の画素に変化したり、非透明色の画素が透明色の画素に変化する場合がある。透明色の画素が非透明色の画素に変化すると、本来合成されるべき背景レイヤの画素が合成されずに前景レイヤの画素が合成される。また、非透明色の画素が透明色の画素に変化すると本来合成されるべき前景レイヤの画素が合成されずに背景レイヤの画素が合成される。このように透明色をもつ画像データの画素値の変化は、本来表示されるべきレイヤが表示されなくなるという重大な問題を発生させる場合があり、著しい画質劣化の原因となる。
そこで、本実施形態における符号化装置２は、非可逆符号化処理がなされた後であっても透明色データ及び非透明色データがそれぞれに割り当てられたデータ範囲内におさまるように非可逆符号化処理の内容を制御する。ここで、非可逆符号化処理の内容とは、例えば、非可逆符号化方式の種類、及び、それぞれの非可逆符号化方式による圧縮率（符号量）などであり、符号化装置２は、非可逆符号化方式の種類を切り替えたり、圧縮率を変更することにより、非可逆符号化処理がなされた後の透明色データ及び非透明色データがそれぞれに割り当てられたデータ範囲内におさまるようにする。
なお、透明色データと非透明色データとが混在する画像ファイルを符号化する場合に、透明色の画素に対しては可逆符号化処理を施し、非透明色の画素に対しては非可逆符号化処理を施すことにより、画質劣化を防止する方法も考えられるが、このように符号化方式を切り替えると、符号化方式を切り替えるための構成及び制御が複雑になるだけでなく、処理負荷が大きくなると共に、高い圧縮率を実現できない。また、非透明色の画素が非可逆符号化処理により透明色の画素に変化する可能性もあり、非可逆符号化処理による画質劣化を十分に緩和することができない。
【００１８】
次に、本実施形態における符号化装置２の構成を説明する。
図２は、本発明にかかる符号化装置２のハードウェア構成を例示する図である。
図２に示すように、符号化装置２は、ＣＰＵ２０２及びメモリ２０４などを含む制御装置２０、通信装置２２、ＬＣＤ表示装置あるいはＣＲＴ表示装置及びキーボード・タッチパネルなどを含むユーザインターフェース装置（ＵＩ装置）２３、並びに、ＨＤＤ・ＣＤ装置などの記録装置２４などから構成される。
例えば、符号化装置２は、汎用コンピュータ又はプリンタ装置などである。
【００１９】
［符号化プログラム］
図３は、制御装置２０（図２）により実行され、本発明にかかる符号化方法を実現する符号化プログラム５の構成を例示する図である。
図３に示すように、符号化プログラム５は、データ取得部５００、属性判定部５１０、非可逆符号化部５２０、符号制御部５３０及びデータ出力部５４０を有する。また、符号制御部５３０は、復号化部５３２及び誤差制御部５３４を含む。
符号化プログラム５は、例えば、プリンタドライバとして、記録媒体２４０（図２）又はネットワークを介して制御装置２０に供給され、メモリ２０４にロードされて実行される。
【００２０】
符号化プログラム５において、データ取得部５００は、通信装置２２（図２）又は記録装置２４を介して、符号化すべき画像ファイル（本例では、画像データ及び透明色データ）を取得し、取得された画像ファイルを画素毎に属性判定部５１０に対して出力する。データ取得部５００により取得される画像ファイルは、本例では、図１に例示した複数のレイヤからなる画像ファイルである。なお、データ取得部５００は、ベクターデータで表現された画像ファイルを取得した場合には、取得されたベクターデータをラスタライズして属性判定部５１０に対して出力する。
【００２１】
属性判定部５１０は、データ取得部５００から入力された画像ファイル（画素値）に基づいて、このデータの属性（画像データ又は付加データ）を判定する。本例では、属性判定部５１０は、入力された画素値が透明色データであるか非透明色データであるかを、それぞれに割り当てられたデータ範囲と比較して判定する。属性判定部５１０は、入力された画素値と判定結果とを符号制御部５３０に対して出力し、入力された画像ファイルを非可逆符号化部５２０に対して出力する。
【００２２】
非可逆符号化部５２０は、符号制御部５３０（後述）により設定された符号化パラメータに応じて、属性判定部５１０から入力された画像ファイル（画像データ又は付加データ）を非可逆に符号化し、復号化部５３２及びデータ出力部５４０に対して出力する。ここで、符号化パラメータとは、非可逆符号化部５２０による非可逆符号化処理の内容（例えば圧縮率など）を規定する変数であり、本実施形態では、各画素について画素値の変更が許容される上限値（すなわち、後述する変更許容値）である。
なお、非可逆符号化部５２０は、後に詳述する非可逆符号化方式を適用して高い圧縮率を実現するが、例えば、ＪＰＥＧ−ｂａｓｅｌｉｎｅなどの画像の特性に適応した他の非可逆符号化方式を適用してもよい。すなわち、非可逆符号化部５２０は、人間の視覚特性や画像の特性などに応じて、高周波成分の除去又は近傍領域における画素値の均一化などを行い、高い圧縮率を実現する。この際に、非可逆符号化によるデータの変化が発生する。
【００２３】
符号制御部５３０は、透明色データ及び非透明色データのとるべき数値範囲に基づいて非可逆符号化部５２０により生成された符号データを評価して、符号データの評価結果により透明色の画素が非透明色の画素に変化したり非透明色の画素が透明色の画素に変化する場合に、符号化パラメータを再設定して符号化をやり直させる。すなわち、符号制御部５３０は、画像データ及び付加データの符号データを評価し、この評価結果を非可逆符号化部５２０にフィードバックする。なお、本実施形態では、符号制御部５３０は、透明色の画素及び非透明色の画素の全てについて、それぞれ対応する数値範囲（透明色データの数値範囲及び非透明色データの数値範囲）におさまるように符号化パラメータを調整するが、これに限定されるものではなく、例えば、画像データの特徴的な部分（例えば肌色領域など）の画素についてのみ、それぞれ対応する数値範囲におさまるか否かを評価してもよいし、特定の割合以上（例えば９８％以上）の画素がそれぞれ対応する数値範囲におさまるか否かを評価してもよい。
【００２４】
符号制御部５３０についてさらに詳細に説明する。符号制御部５３０は、復号化部５３２及び誤差制御部５３４を含む。復号化部５３２は、非可逆符号化部５２０から入力された符号データを復号化し、復号データとして誤差制御部５３４に対して出力する。
誤差制御部５３４は、属性判定部５１０から入力された属性判定の結果に基づいて、符号化対象の画素が透明色の画素であるか非透明色の画素であるかを判定する。さらに、誤差制御部５３４は、復号化部５３２から入力された復号データが、判定された透明色データ又は非透明色データの範囲内であるか否かを判定する。復号データが、判定された透明色データ又は非透明色データの範囲内である場合に、符号データの出力指示を非可逆符号化部５２０に対して出力し、判定された透明色データ又は非透明色データの範囲外である場合に、復号データと非可逆符号化前のデータとの差分を算出し、算出された差分に基づいて符号化パラメータを再設定し、非可逆符号化部５２０に対して再符号化を指示する。
【００２５】
データ出力部５４０は、非可逆符号化部５２０から入力された符号データを通信装置２２（図２）又は記録装置２４（図２）に対して出力する。なお、データ出力部５４０は、非可逆符号化部５２０から入力された符号データと共に、符号化処理に用いられた符号化パラメータを出力してもよい。
【００２６】
図４は、非可逆符号化部５２０のより詳細な構成を説明する図である。
図４に示すように、非可逆符号化部５２０は、非可逆な画素値変換処理を行うフィルタ処理部と、予測符号化により画像データを符号データに変換する予測符号化部とから構成される。
フィルタ処理部は、第１予測部５２１ａ、第２予測部５２１ｂ、画素値変更処理部５２２及び誤差分配処理部５２３を有する。なお、本例では、２つの予測部５２１（第１予測部５２１ａ及び第２予測部５２１ｂ）を有する形態を説明するが、予測部５２１は１つ以上あればよく、例えば、５つの予測部５２１により構成されてもよい。
【００２７】
第１予測部５２１ａ及び第２予測部５２１ｂは、それぞれ所定の手法で画像データに基づいて注目画素の画素値を予測し、予測値として画素値変更処理部５２２に対して出力する。例えば、第１予測部５２１ａおよび第２予測部５２１ｂは、それぞれ異なる位置にある画素の画素値を参照して、注目画素の画素値を予測する。
画素値変更処理部５２２は、注目画素の画素値と予測値とを比較し、その差分が符号制御部５３０（図３）により設定された変更許容値より小さい場合には予測値を、予測符号化部に対して出力し、さらに、注目画素の画素値と予測値との差分（以下、誤差値）を誤差分配処理部５２３に対して出力する。一方、画素値変更処理部５２２は、注目画素の画素値と予測値との差分が変更許容値以上の場合には、注目画素の画素値をそのまま予測符号化部に対して出力し、誤差分配処理部５２３に対して０を出力する。すなわち、変更許容値は、注目画素について画素値の変更が許容される範囲を規定する数値である。これにより、フィルタ処理部は、符号制御部５３０により設定された変更許容値以上の誤差値を誤差分配しない。
誤差分配処理部５２３は、画素値変更処理部５２２から入力された誤差値に基づいて、誤差分配値を生成し、画像データに含まれる所定の画素の画素値にこれを加算する。誤差分配値は、例えば、重み行列を用いた誤差拡散法や平均誤差最小法に従って、誤差値に重み行列の値を掛け合わせて算出される。
このようにフィルタ処理部は、後述する予測符号化部が画像データを圧縮しやすように画像データに含まれる画素値を変換する。その際に、フィルタ処理部は、画素値の変更により生じた真の画素値との差分を、周辺画素に配分して、画素値の変更を巨視的に目立たなくする。
【００２８】
また、予測符号化部は、図４に例示するように、第１予測部５２４ａ、第２予測部５２４ｂ、予測誤差算出部５２５、選択部５２６、ラン計数部５２７及び符号生成部５２８を有する。
第１予測部５２４ａ及び第２予測部５２４ｂは、フィルタ処理部における第１予測部５２１ａ及び第２予測部５２１ｂとほぼ同様に、それぞれ所定の手法で画像データに基づいて注目画素の画素値を予測し、予測値として選択部５２６に対して出力する。
予測誤差算出部５２５は、所定の手法で画像データに基づいて注目画素の画素値を予測し、その予測値を注目画素の実際の画素値から減算し、予測誤差値として選択部５２６に対して出力する。
選択部５２６は、画像データと予測値とを比較して注目画素における予測の一致／不一致を検出する。選択部５２６は、その結果、予測が的中した予測部５２４があればその識別番号を、いずれも的中しなかった場合は予測誤差値を、ラン計数部５２７及び符号生成部５２８に対して出力する。
【００２９】
ラン計数部５２７は、識別番号が第１予測部５２４ａを指している場合には、内部カウンタを１だけ増やす。また識別番号が第１予測部５２４ａ以外を指している場合で、かつ内部カウンタが０でない場合には、内部カウンタの値をランデータとして符号化部５２８に対して出力する。
符号生成部５２８は、ランデータ及び予測誤差値が同時に与えられた場合、まずランデータを符号化してから予測誤差値を符号化する。一方、符号生成部５２８は、識別番号又は予測誤差値のみが与えられた場合には、識別番号又は予測誤差値を符号化する。
【００３０】
なお、上記ラン計数部５２７及び符号生成部５２８による符号化処理は、第１予測部５２４ａの的中確率が高いことを想定した形態であるが、他の符号化方法を用いてもよい。例えば、高速復号等の目的から固定長符号を与えた場合、符号生成部５２８は、第１予測部５２４ａが的中した旨を２進数「０１」、第２予測部５２４ｂが的中した旨を２進数「１０」、いずれの予測部も外れた旨を２進数「００」でそれぞれ符号化し、予測誤差を符号＋８ｂｉｔの２進数で符号化する。また、圧縮率を向上させたい場合には、符号生成部５２８は、Ｈｕｆｆｍａｎ符号化、算術符号化等の可変長符号化を用いて符号化してもよい。例えば、発生確率の高そうな第１予測部５２４ａに１ｂｉｔの符号を与えたＨｕｆｆｍａｎ符号の場合、第１予測部５２４ａが的中した旨を２進数「０」、第２予測部５２４ｂが的中した旨を２進数「１０」、いずれの予測部５２４も予測が外れた旨を２進数「１１」で符号化する。また、符号生成部５２８は、算術符号化など他の符号体系を用いて符号化してもよい。
【００３１】
上記のように、非可逆符号化部５２０が既定の許容誤差範囲内である場合に連続する画素を同一の画素値に変換して圧縮率を高める形態では、誤差制御部５３４は、非可逆符号化部５２０に対して許容誤差範囲（変更許容値）を設定することにより、非可逆符号化処理の内容を制御する。例えば、誤差制御部５３４は、復号化された透明色画素の画素値が透明色データの数値範囲から外れている場合に、現在設定されている変更許容値よりも小さい変更許容値を再設定し、再符号化を指示する。
なお、非可逆符号化部５２０がＪＰＥＧを適用して非可逆符号化処理を行う場合には、誤差制御部５３４は、非可逆符号化部５２０に対してスケーリング・ファクタを設定することにより、非可逆符号化処理の内容を制御する。
【００３２】
次に、符号化装置２の全体的な動作を説明する。
図５は、符号化装置２（符号化プログラム５）の動作（Ｓ１０）を示すフローチャートである。
図５に示すように、ステップ１００（Ｓ１００）において、データ取得部５００（図３）は、通信装置２２（図２）又は記録装置２４（図２）を介して、符号化の対象となる画像ファイルを取得し、取得された画像ファイルに含まれるデータを画素毎に入力データとして属性判定部５１０に対して出力する。属性判定部５１０は、データ取得部５００から入力された入力データが透明色データであるか非透明色データであるかを判定し、入力データを非可逆符号化部５２０に対して出力し、入力データ及び判定結果（属性情報）を誤差制御部５３４に対して出力する。
【００３３】
ステップ１０５（Ｓ１０５）において、符号制御部５３０は、フィードバック処理の繰返し回数などを初期化すると共に、非可逆符号化部５２０に対して既定の符号化パラメータを初期値として設定する。
ステップ１１０（Ｓ１１０）において、符号制御部５３０は、利用者からの入力などに応じて、フィードバック処理の繰返し上限を設定する。
【００３４】
ステップ１１５（Ｓ１１５）において、非可逆符号化部５２０は、属性判定部５１０から入力されたデータを非可逆に符号化し、符号データとして復号化部５３２に対して出力する。
ステップ１２０（Ｓ１２０）において、復号化部５３２は、非可逆符号化部５２０から入力された符号データを復号化し、復号データとして誤差制御部５３４に対して出力する。
【００３５】
ステップ１２５（Ｓ１２５）において、誤差制御部５３４は、属性判定部５１０から入力された判定結果（属性情報）に基づいて、符号化対象の画素が透明色の画素であるか非透明色の画素であるかを判定する。符号化プログラム５は、符号化対象の画素が透明色の画素である場合にＳ１３０の処理に移行し、符号化対象の画素が非透明色の画素である場合にＳ１６０の処理に移行する。
【００３６】
ステップ１３０（Ｓ１３０）において、誤差制御部５３４は、復号化部５３２から入力された復号データと透明色データに対して割り当てられたデータ範囲とを比較して、復号データが透明色の数値範囲内であるか否かを判定する。符号化プログラム５は、復号データが透明色の数値範囲内である場合に、Ｓ１９０の処理に移行し、復号データが透明色の数値範囲外（すなわち、非透明色の数値範囲内）である場合に、Ｓ１４０の処理に移行する。
【００３７】
ステップ１４０（Ｓ１４０）において、符号制御部５３０は、復号データと入力データとの差分に基づいて、復号データが透明色の数値範囲内におさまるようにフィードバック処理を行い、非可逆符号化部５２０に再度符号化処理を行うよう指示してＳ１１５の処理に戻る。
【００３８】
ステップ１６０（Ｓ１６０）において、誤差制御部５３４は、復号化部５３２から入力された復号データと非透明色データに対して割り当てられたデータ範囲とを比較して、復号データが非透明色の数値範囲内であるか否かを判定する。符号化プログラム５は、復号データが非透明色の数値範囲内である場合に、Ｓ１９０の処理に移行し、復号データが非透明色の数値範囲外（すなわち、透明色の数値範囲内）である場合に、Ｓ１７０の処理に移行する。
【００３９】
ステップ１７０（Ｓ１７０）において、符号制御部５３０は、復号データと入力データとの差分に基づいて、復号データが非透明色の数値範囲内におさまるようにフィードバック処理を行い、非可逆符号化部５２０に再度符号化処理を行うよう指示してＳ１１５の処理に戻る。
【００４０】
ステップ１９０（Ｓ１９０）において、非可逆符号化部５２０は、符号データをデータ出力部５４０に対して出力する。データ出力部５４０は、非可逆符号化部５２０から入力された符号データを符号ファイルとして通信装置２２（図２）又は記録装置２４（図２）に対して出力する。
【００４１】
図６は、フィードバック処理（Ｓ１４０又はＳ１７０）を説明するフローチャートである。
まず、ステップ１４０（Ｓ１４０）のフィードバック処理について説明する。
図６に示すように、ステップ１４２（Ｓ１４２）において、誤差制御部５３４は、この画素に対してなされたフィードバック処理の回数と、繰返し上限とを比較して、フィードバック処理の回数が繰返し上限値を超えていないか判定する。符号化プログラム５は、フィードバック回数が繰返し上限値以下である場合に、Ｓ１４４の処理に移行し、フィードバック回数が繰返し上限値よりも大きい場合に、Ｓ１５０の処理に移行する。
【００４２】
ステップ１４４（Ｓ１４４）において、誤差制御部５３４（比較手段）は、復号データ（非可逆符号化後のデータ）と入力データ（非可逆符号化前のデータ）との差分を算出する。
ステップ１４６（Ｓ１４６）において、誤差制御部５３４（符号化制御手段）は、算出された差分に基づいて、復号データが透明色データの数値範囲内におさまるような符号化パラメータを生成し、生成された符号化パラメータを非可逆符号化部５２０に対して出力する。
ステップ１４８（Ｓ１４８）において、誤差制御部５３４は、フィードバック処理の繰返し回数を１つ加算して記憶する。
【００４３】
ステップ１５０（Ｓ１５０）において、誤差制御部５３４は、フィードバック処理の回数が繰返し上限値を超えた場合に適用する符号化パラメータを予め記憶しており、この符号化パラメータを非可逆符号化部５２０に対して設定し、フィードバック処理を禁止する。
【００４４】
また、ステップ１７０（Ｓ１７０）のフィードバック処理は、ステップ１４０（Ｓ１４０）のフィードバック処理と実質的に同一である。
【００４５】
図７は、誤差制御部５３４による符号化パラメータの再設定を説明する図であり、図７（Ａ）は、復号データと入力データとの差分に応じた透明色画素に対する符号化パラメータＦｖ（ΔＶ）を例示し、図７（Ｂ）は、復号データと入力データとの差分に応じた非透明色画素に対する符号化パラメータＧｖ（ΔＶ）を例示する。
図７（Ａ）に示すように、誤差制御部５３４は、復号データと入力データとの差分に対応する透明色画素に対する符号化パラメータＦｖ（ΔＶ）を記憶しており、復号データと入力データとの差分に応じて、透明色の画素に対する符号化パラメータを非可逆符号化部５２０に対して設定する。本図で例示するように、符号化パラメータＦｖ（ΔＶ）は、様々な傾きを有する一次関数として定義される。この傾きは、例えば、非可逆符号化方式の種類、符号化対象である画像要素の種類（写真画像、文字画像、線画など）、又は、符号化対象である付加データのデータ範囲などに応じて異なる。なお、本例の符号化パラメータＦｖ（ΔＶ）は、実験的に求められた数値を一次関数で近似したものであるが、これに限定されるものではなく、曲線でフィッティングされた回帰曲線、又は、離散的な関数でフィッティングされたものであってもよい。
図７（Ｂ）に例示するように、誤差制御部５３４は、復号データと入力データとの差分に対応する非透明色画素に対する符号化パラメータＧｖ（ΔＶ）を記憶しており、復号データと入力データとの差分に応じて、非透明色の画素に対する符号化パラメータを非可逆符号化部５２０に対して設定する。なお、非透明色画素に対する符号化パラメータＧｖ（ΔＶ）は、透明画素に対する符号化パラメータＦｖ（ΔＶ）と同様に算出されたものである。
【００４６】
以上説明したように、本実施形態における符号化装置２によれば、非可逆符号化により、透明色の画素値が非透明色の画素値に変化することや、非透明色の画素値が透明色の画素値に変化することを防止することができる。
【００４７】
［変形例］
図８は、変形例における符号化プログラム５２の構成を示す図である。
図８に示すように、符号化プログラム５２は、符号制御部５３０の中に、予備的な符号化処理を行う第１非可逆符号化部５３６を有し、この符号化制御部５３０の後段に、第２非可逆符号化部５２０を有する。なお、図７における各構成のうち、図３に示された構成と実質的に同一のものには同一の符号が付されている。
【００４８】
符号化プログラム５２において、第１非可逆符号化部５３６は、第２非可逆符号化部５２０と同一の符号化方式を用いて、入力された画像データの一部に対して非可逆符号化処理を施し、復号化部５３２に対して出力する。
復号化部５３２は、第１非可逆符号化部５３６から入力された符号データを復号化し、誤差制御部５３４は、復号化部５３２により復号化された復号データに基づいて符号化パラメータを第１非可逆符号化部５３６に設定する。
第２非可逆符号化部５２０は、符号制御部５３０におけるフィードバック処理により決定された符号化パラメータに応じて、入力された画像データを非可逆に符号化し、符号データとしてデータ出力部５４０に対して出力する。
【００４９】
このように、本変形例では、第１非可逆符号化部５３６が、画像データの少なくとも一部に対して予備的に非可逆符号化処理を施し、符号制御部５３０が、この第１非可逆符号化部５３６により符号化された符号データを評価して符号化パラメータを決定する。
これにより、符号化パラメータを決定するための符号化処理の処理負荷を軽減することができる。
【００５０】
また、上記実施形態では、符号化装置２は、属性判定部５１０においてそれぞれの画素の属性（透明色の画素又は非透明色の画素）を判定し、非可逆符号化処理が施された場合のデータがこの属性に対応するデータ範囲におさまらない場合に、符号化パラメータの再設定を行っているが、これに限定されるものではなく、例えば、入力データと復号データとの差分が既定の範囲内であるか否かに応じて、符号化パラメータを再設定するか否かを決定してもよい。
また、上記実施形態では、符号化装置２は、非可逆符号化部５２０により符号化処理が施された透明色データ及び非透明色データを復号化することにより、非可逆符号化が施された場合の透明色データ及び非透明色データを評価しているが、これに限定されるものではなく、例えば、非可逆符号化が施された透明色データ又は非透明色データに対応付けて、入力データと復号データとの差分（又は、適用すべき符号化パラメータ）を予め記憶しておき、非可逆符号化が施された透明色データ又は非透明色データに対応する差分（又は符号化パラメータ）を読み出してもよい。すなわち、符号化装置２は、非可逆符号化が施された透明色データ又は非透明色データを復号化することなくそのまま評価対象として評価してもよい。
【図面の簡単な説明】
【００５１】
【図１】透明色データを説明する図であり、（Ａ）は、透明色データが含まれたレイヤ構成の画像ファイルを例示し、（Ｂ）は、透明色データが定義されているデータ範囲を例示する図である。
【図２】本発明にかかる符号化装置２のハードウェア構成を例示する図である。
【図３】制御装置２０（図２）により実行され、本発明にかかる符号化方法を実現する符号化プログラム５の構成を例示する図である。
【図４】非可逆符号化部５２０のより詳細な構成を説明する図である。
【図５】符号化装置２（符号化プログラム５）の動作（Ｓ１０）を示すフローチャートである。
【図６】フィードバック処理（Ｓ１４０又はＳ１７０）を説明するフローチャートである。
【図７】誤差制御部５３４による符号化パラメータの再設定を説明する図であり、（Ａ）は、復号データと入力データとの差分に応じた透明色画素に対する符号化パラメータＦｖ（ΔＶ）を例示し、（Ｂ）は、復号データと入力データとの差分に応じた非透明色画素に対する符号化パラメータＧｖ（ΔＶ）を例示する。
【図８】変形例における符号化プログラム５２の構成を示す図である。
【符号の説明】
【００５２】
２・・・符号化装置
５，５２・・・符号化プログラム
５００・・・データ取得部
５１０・・・属性判定部
５２０・・・非可逆符号化部（第２非可逆符号化部）
５３０・・・符号制御部
５３２・・・復号化部
５３４・・・誤差制御部
５３６・・・第１非可逆符号化部
５４０・・・データ出力部
８００・・・画像ファイル
８１０・・・前景レイヤ
８１２・・・透明色エリア
８２０・・・背景レイヤ
【図１】
2005151382.tif 000003
【図２】
2005151382.tif 000004
【図３】
2005151382.tif 000005
【図４】
2005151382.tif 000006
【図５】
2005151382.tif 000007
【図６】
2005151382.tif 000008
【図７】
2005151382.tif 000009
【図８】
2005151382.tif 000010