(57)【要約】  【課題】  目標符号量に達するまでの符号化処理のやり直しが少ない画像処理装置を提供する。  【解決手段】  画像処理装置２は、入力された画像をブロックに分割し、全ブロックにおける特徴量の分布と、目標特徴量とに基づいて、量子化強度の選択基準を設定し、設定された選択基準に基づいて、各ブロックに適用する量子化強度を選択し、選択された量子化強度で各ブロックの画像情報を量子化し符号化する。選択基準の設定は目標符号量に基づいてなされるため、符号化処理のやり直しの減少が期待できる。【選択図】図５
2009027664.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像の特徴量に基づいて、量子化強度を選択するための選択基準を設定する基準設定手段と、
前記基準設定手段により設定された選択基準に基づいて、入力された画像の部分画像領域それぞれについて、複数の量子化強度のいずれかを選択する強度選択手段と、
前記強度選択手段により選択された量子化強度で、各部分画像領域の画像情報を量子化する量子化手段と
を有する画像処理装置。
【請求項２】
前記強度選択手段は、前記基準設定手段により設定された選択基準と、部分画像領域それぞれの特徴量とに基づいて、部分画像領域それぞれの量子化強度を選択する
請求項１に記載の画像処理装置。
【請求項３】
前記基準設定手段は、前記特徴量として、各部分画像領域に含まれる階調値の範囲の広さを用いる
請求項１に記載の画像処理装置。
【請求項４】
前記量子化手段により量子化された画像情報を符号化する符号化手段と、
前記符号化手段により符号化された画像情報の符号量が上限値を超える場合に、入力された画像を再量子化するように決定する再量子化決定手段と
をさらに有し、
前記基準設定手段は、前記再量子化決定手段により再量子化するよう決定された場合に、前記選択基準を更新する
請求項１に記載の画像処理装置。
【請求項５】
部分画像領域それぞれの特徴量を算出する特徴量算出手段
をさらに有し、
前記基準設定手段は、前記特徴量算出手段により算出された特徴量の分布に基づいて、選択基準を設定し、
前記強度選択手段は、前記特徴量算出手段により算出された各部分画像領域の特徴量と、前記基準設定手段により設定された選択基準とに基づいて、量子化強度を選択する
請求項２に記載の画像処理装置。
【請求項６】
入力された画像の特徴量に基づいて、量子化強度を選択するための選択基準を設定するステップと、
設定された選択基準に基づいて、入力された画像の部分画像領域それぞれについて、複数の量子化強度のいずれかを選択するステップと、
選択された量子化強度で、各部分画像領域の画像情報を量子化するステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関する。
【背景技術】
【０００２】
例えば、特許文献１には、前もって指定したサイズ以内に総圧縮コードサイズが収まるよう、繰り返し解像度変換を行う画像処理装置が開示されている。
【特許文献１】特開２００３−３３８９３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、目標符号量に達するまでの符号化処理のやり直しを減少させることを目的とする。
【課題を解決するための手段】
【０００４】
請求項１に係る本発明は、入力された画像の特徴量に基づいて、量子化強度を選択するための選択基準を設定する基準設定手段と、前記基準設定手段により設定された選択基準に基づいて、入力された画像の部分画像領域それぞれについて、複数の量子化強度のいずれかを選択する強度選択手段と、前記強度選択手段により選択された量子化強度で、各部分画像領域の画像情報を量子化する量子化手段とを有する。
【０００５】
請求項２に係る本発明では、前記強度選択手段は、前記基準設定手段により設定された選択基準と、部分画像領域それぞれの特徴量とに基づいて、部分画像領域それぞれの量子化強度を選択する。
請求項３に係る本発明では、前記基準設定手段は、前記特徴量として、各部分画像領域に含まれる階調値の範囲の広さを用いる。
【０００６】
請求項４に係る本発明では、前記量子化手段により量子化された画像情報を符号化する符号化手段と、前記符号化手段により符号化された画像情報の符号量が上限値を超える場合に、入力された画像を再量子化するように決定する再量子化決定手段とをさらに有し、前記基準設定手段は、前記再量子化決定手段により再量子化するよう決定された場合に、前記選択基準を更新する。
【０００７】
請求項５に係る本発明では、部分画像領域それぞれの特徴量を算出する特徴量算出手段をさらに有し、前記基準設定手段は、前記特徴量算出手段により算出された特徴量の分布に基づいて、選択基準を設定し、前記強度選択手段は、前記特徴量算出手段により算出された各部分画像領域の特徴量と、前記基準設定手段により設定された選択基準とに基づいて、量子化強度を選択する。
【０００８】
請求項６に係る本発明は、入力された画像の特徴量に基づいて、量子化強度を選択するための選択基準を設定するステップと、設定された選択基準に基づいて、入力された画像の部分画像領域それぞれについて、複数の量子化強度のいずれかを選択するステップと、選択された量子化強度で、各部分画像領域の画像情報を量子化するステップとをコンピュータに実行させる。
【発明の効果】
【０００９】
本発明の画像処理装置によれば、目標符号量に達するまでの符号化処理のやり直しを減少させることができる。
【発明を実施するための最良の形態】
【００１０】
図１は、画像処理装置２のハードウェア構成を、制御装置２１を中心に例示する図である。
図１に例示するように、画像処理装置２は、ＣＰＵ２１２及びメモリ２１４などを含む制御装置２１、通信装置２２、ＨＤＤ・ＣＤ装置などの記録装置２４、並びに、ＬＣＤ表示装置あるいはＣＲＴ表示装置およびキーボード・タッチパネルなどを含むユーザインターフェース装置（ＵＩ装置）２５から構成される。
画像処理装置２は、例えば、画像処理プログラム５（後述）がインストールされた汎用コンピュータであり、通信装置２２又は記録装置２４などを介して画像データを取得し、取得された画像データを符号化してプリンタ装置３に送信する。
【００１１】
図２は、制御装置２１（図１）により実行される画像処理プログラム５の機能構成を例示する図である。
図２に例示するように、画像処理プログラム５は、領域設定部５００、特徴量算出部５１０、選択基準設定部５２０、強度選択部５３０、量子化部５４０、及び符号化部５５０を有する。なお、量子化部５４０及び符号化部５５０の機能が一体となって実現されていてもよい。
【００１２】
画像処理プログラム５において、領域設定部５００は、通信装置２２又は記録装置２４などを介して、ラスタライズされた画像データを取得し、取得された画像データに対して、既定サイズの部分画像領域（以下、ブロック）を設定する。
本例の領域設定部５００は、取得された画像データに対して、走査順に、既定サイズの矩形領域をブロックとして設定し、各ブロックの画素値を特徴量算出部５１０及び量子化部５４０に出力する。
【００１３】
特徴量算出部５１０は、領域設定部５００により設定されたブロックそれぞれの特徴量を算出し、算出された特徴量を選択基準設定部５２０及び強度選択部５３０に出力する。算出される特徴量は、各ブロック内の画像情報の特徴を示す値であり、例えば、周波数成分、画素値のヒストグラム、ダイナミックレンジ（ブロック内の最大画素値から最小画素値までの広さ）、色数（階調数）、エントロピー、分散などである。
本例の特徴量算出部５１０は、各ブロックについて、ブロック内の最大画素値と最小画素値との差分（すなわち、ダイナミックレンジ）を算出し、算出されたダイナミックレンジを選択基準設定部５２０及び強度選択部５３０に出力する。
【００１４】
選択基準設定部５２０は、入力された画像の特徴量に基づいて、量子化強度を選択するための選択基準を設定する。例えば、選択基準設定部５２０は、特徴量算出部５１０から入力される各ブロックの特徴量を保持して、特徴量の分布を特定し、特定された分布と、所望の符号量とに基づいて、選択基準を設定する。
本例の選択基準設定部５２０は、特徴量算出部５１０から入力される各ブロックのダイナミックレンジ（各ブロックに含まれる階調値の範囲の広さ）を保持し、入力画像全体のダイナミックレンジの分布と、目標符号量とに基づいて、選択基準を算出し、算出された選択基準を強度選択部５３０に出力する。
【００１５】
強度選択部５３０は、選択基準設定部５２０により設定された選択基準と、特徴量算出部５１０により算出された各ブロックの特徴量とに基づいて、ブロックそれぞれに適用される量子化強度を選択する。
本例の強度選択部５３０は、注目ブロックのダイナミックレンジが選択基準以上である場合に、注目ブロックの上限階調数２を選択し、ダイナミックレンジが選択基準未満である場合に、注目ブロックの上限階調数１を選択する。
【００１６】
量子化部５４０は、強度選択部５３０により選択された量子化強度で、各ブロックの画像情報を量子化し、量子化された画像情報を符号化部５５０に出力する。画像情報の量子化は、単純な線形量子化をはじめとして、非線形量子化、解像度変換、ベクトル量子化、Ｎレベル化（ブロックトランケーション符号化）、周波数変換を援用した量子化（ＪＰＥＧ）などである。
本例の量子化部５４０は、強度選択部５３０により注目ブロックについて上限階調数２が選択された場合に、注目ブロック内の最大値と最小値の平均を閾値として、ブロック内の画素値を閾値以上のグループと閾値未満のグループとに分類し、各グループの平均画素値で各グループの画素を塗り潰す。また、本例の量子化部５４０は、強度選択部５３０により注目ブロックについて上限階調数１が選択された場合に、注目ブロック内の全画素を、このブロック内の平均画素値で塗り潰す。すなわち、本例の量子化部５４０は、Ｎレベル化によって、各ブロックの画素値を量子化する。
【００１７】
符号化部５５０は、量子化部５４０から入力された画像情報を符号化する。本例では、量子化部５４０によってＮレベル化処理がなされるため、本例の符号化部５５０は、限定色化処理と相性のよい符号化方式（例えば、ランレングス符号化方式、ＬＺ符号化方式）を適用することが望ましい。
【００１８】
図３は、選択基準の設定方法を説明する図である。
上記のように、量子化強度が複数用意されている場合に、各量子化強度が適用されるブロックの数が符号量に大きく影響する。量子化の強度は、符号化の精度を示しており、一般に量子化が弱いほど、符号量は多くなる。そしてある量子化強度に対して平均的にはある符号量が期待できるが、この符号量は量子化強度によって異なる。従って、例えば量子化強度ＱＬに対して符号量ＣＬが期待できる場合、図３（Ａ）の推定式によって、総符号量が推定できる。
ここでＣＬが定数で既知だとすると、ＱＬで処理するブロック数が求まれば符号量が推定できる。
本実施形態では、特徴量に応じて量子化を制御するので、特徴量ごとのブロック数の分布がわかれば、図３（Ｂ）に示すように、総符号量が推定できる。逆に、図３（Ｃ）に例示するように、所望の符号量（目標符号量）を得るための選択基準を求めることもできる。
【００１９】
図４は、量子化部５４０（図２）をより詳細に説明する図である。
図４に例示するように、量子化部５４０は、１階調化部５４２、２階調化部５４４、及び選択部５４６を有する。
１階調化部５４０は、領域設定部５００（図２）から入力される各ブロックの画像情報を１階調で表現された画像情報に変換する。より具体的には、１階調化部５４０は、各ブロックの全画素値を、ブロック内の平均画素値で置換する。
２階調化部５４０は、領域設定部５００から入力された各ブロックの中から、最大値及び最小値を特定し、特定された最大値と最小値との平均を閾値として、ブロック内の画素値を閾値以上のグループと閾値未満のグループとに分類し、各グループの平均画素値で各グループの画素を塗り潰す。
選択部５４６は、強度選択部５３０（図２）により上限階調数１が選択されたブロックについては、１階調化部５４２から入力された画像情報を符号化部５５０（図２）に出力し、強度選択部５３０により上限階調数２が選択されたブロックについては、２階調化部５４４から入力された画像情報を符号化部５５０に出力する。
【００２０】
図５は、画像処理プログラム５の動作（Ｓ１０）を示すフローチャートである。
図５に示すように、ステップ１００（Ｓ１００）において、領域設定部５００は、画像データが入力されると、入力された画像に対して既定サイズのブロックを設定する。
【００２１】
ステップ１１０（Ｓ１１０）において、特徴量算出部５１０は、領域設定部５００により順次設定されるブロックの特徴量（ダイナミックレンジ）を算出し、算出された各ブロックの特徴量を選択基準設定部５２０及び強度選択部５３０に出力する。選択基準設定部５２０及び強度選択部５３０は、特徴量算出部５１０から入力される特徴量を順次保持していく。
【００２２】
ステップ１２０（Ｓ１２０）において、画像処理プログラム５は、全てのブロックについて特徴量を算出したか否かを判断し、未処理のブロックが存在する場合に、Ｓ１１０の処理に戻り、未処理のブロックが存在しない場合に、Ｓ１３０の処理に移行する。
【００２３】
ステップ１３０（Ｓ１３０）において、選択基準設定部５２０は、特徴量算出部５１０により算出された特徴量の分布と、目標符号量とに基づいて、選択基準を算出し、算出された選択基準を強度選択部５３０に出力する。
【００２４】
ステップ１４０（Ｓ１４０）において、強度選択部５３０は、注目ブロックの特徴量（ダイナミックレンジ）と、選択基準設定部５２０から入力された選択基準とを比較して、ダイナミックレンジが選択基準以上である場合に、上限階調数２を選択し、ダイナミックレンジが選択基準未満である場合に、上限階調数１を選択し、選択した上限階調数を量子化部５４０に通知する。
【００２５】
ステップ１５０（Ｓ１５０）において、量子化部５４０は、注目ブロックの画像情報を、強度選択部５３０により選択された上限階調数に応じて量子化する。
【００２６】
ステップ１６０（Ｓ１６０）において、符号化部５５０は、量子化部５４０により量子化された注目ブロックの画像情報を符号化する。
【００２７】
ステップ１７０（Ｓ１７０）において、画像処理プログラム５は、全てのブロックについて符号化処理が終了したか否かを判断し、未処理のブロックが存在する場合に、Ｓ１４０の処理に戻って、次の注目ブロックを処理対象とし、未処理のブロックが存在しない場合に、符号データを外部に出力してＳ１０の処理を終了する。
【００２８】
以上説明したように、本実施形態の画像処理装置２は、入力された画像の特徴量に基づいて、量子化強度の選択基準を設定し、設定された選択基準に基づいて、各ブロックに適用する量子化強度を選択する。選択基準の設定は目標符号量に基づいてなされるため、符号化処理のやり直しの減少が期待できる。
【００２９】
［変形例１］
次に、上記実施形態の変形例を説明する。
上記実施形態では、図３（Ａ）の推定式を前提して、量子化強度の選択基準を決定しているが、実際には、推定式のＣＬは画像の内容に応じて変動する。そのため、所望の符号量が得られない場合もある。
そこで、第１の変形例では、符号化処理の結果を選択基準設定部５２０にフィードバックするように構成する。
【００３０】
図６は、第２の画像処理プログラム５２の機能構成を例示する図である。なお、本図に示された各構成のうち、図２に示された構成と実質的に同一のものには同一の符号が付されている。
図６に例示するように、本変形例における画像処理プログラム５２は、図２の画像処理プログラム５に制御部５６０を追加した構成をとる。
制御部５６０は、符号化部５５０から入力された符号データの符号量が目標符号量以下となっているか否かを判断し、目標符号量以下となっていない場合に、選択基準設定部５２０にフィードバックを行い、入力された画像データの再量子化を他の構成に指示する。例えば、制御部５６０は、符号化部５５０から入力された符号データに基づいて、実際の実測値ＣＬ'を算出し、算出されたＣＬ'を選択基準設定部５２０にフィードバックする。この場合に、選択基準設定部５２０は、制御部５６０からフィードバックされたＣＬ'に基づいて、選択基準を再設定し、強度選択部５３０及び量子化部５４０は、再設定された選択基準に基づいて、入力された画像情報を再量子化する。
なお、制御部５６０は、図３（Ａ）に例示した推定式の右辺に（試行時の符号量）/（試行時の推定量）を乗じて選択基準を再設定するよう選択基準設定部５２０に指示してもい。また、制御部５６０は、あるいは試行結果を補完して、各量子化強度のブロック数を算出してもよい。
【００３１】
図７は、第１の変形例における画像処理プログラム５２の動作（Ｓ１２）を示すフローチャートである。なお、本図に示された各処理のうち、図５に示された処理と実質的に同一のものには同一の符号が付されている。
図７に示すように、本変形例では、全ブロックの符号化処理が終了した後（Ｓ１７０：Ｙｅｓ）に、フィードバック処理（Ｓ１８０）が追加されている。
【００３２】
ステップ１８０（Ｓ１８０）では、制御部５６０（図６）が、符号化部５５０から入力された符号データの符号量と、目標符号量とを比較して、符号データの符号量が目標符号量以下となっているか否かを判断する。
制御部５６０は、符号データの符号量が目標符号量を超えると判断した場合に、符号化部５５０から入力された符号データ（試行結果）に基づいて、実際の実測値ＣＬ'を算出し、算出された実測値ＣＬ'で選択基準を再設定するように選択基準設定部５２０に指示する。この場合に、画像処理プログラム５２は、Ｓ１３０の処理に戻って、選択基準を再設定して、量子化処理及び符号化処理を再度行う。
また、制御部５６０は、符号データの符号量が目標符号量以下であると判断した場合に、符号化部５５０から入力された符号データをそのまま外部に出力して、処理を終了させる。
【００３３】
［変形例２］
次に、第２の変形例を説明する。
上記実施形態及び第１の変形例では、全ブロックの特徴量を算出してから選択基準を設定して量子化及び符号化を行っているが、例えば、符号化処理が比較的軽い場合などには、最初の試行で符号化してもよい。
そこで、第２の変形例では、最初の試行において、選択基準を算出するときには足がかりとなる特徴量分布がないので、所定のデフォルトの選択基準を利用して量子化及び符号化を行い、最初の試行で目標符号量を達成できなかった場合に、最初の試行で算出された特徴量を用いて、選択基準を再設定する。
なお、最初の試行は、量子化なしで可逆符号化するように構成してもよい。
【００３４】
図８は、第２の変形例における画像処理プログラム５２の動作（Ｓ２０）を示すフローチャートである。
図８に示すように、ステップ２００（Ｓ２００）において、領域設定部５００（図６）は、画像データが入力されると、入力された画像に対して既定サイズのブロックを設定する。
ステップ２１０（Ｓ２１０）において、選択基準設定部５２０は、デフォルトの選択基準を設定する。
【００３５】
ステップ２２０（Ｓ２２０）において、特徴量算出部５１０は、領域設定部５００により順次設定されるブロック（以下、注目ブロック）の特徴量（ダイナミックレンジ）を算出し、算出された特徴量を選択基準設定部５２０及び強度選択部５３０に出力する。選択基準設定部５２０及び強度選択部５３０は、特徴量算出部５１０から入力される特徴量を順次保持していく。
【００３６】
ステップ２３０（Ｓ２３０）において、強度選択部５３０（図６）は、注目ブロックの特徴量（ダイナミックレンジ）と、選択基準設定部５２０により設定された選択基準とを比較して、ダイナミックレンジが選択基準以上である場合に、上限階調数２を選択し、ダイナミックレンジが選択基準未満である場合に、上限階調数１を選択し、選択した上限階調数を量子化部５４０に通知する。
ステップ２４０（Ｓ２４０）において、量子化部５４０は、注目ブロックの画像情報を、強度選択部５３０により選択された上限階調数に応じて量子化する。
ステップ２５０（Ｓ２５０）において、符号化部５５０は、量子化部５４０により量子化された注目ブロックの画像情報を符号化する。
【００３７】
ステップ２６０（Ｓ２６０）において、画像処理プログラム５２は、全てのブロックについて符号化処理が終了したか否かを判断し、未処理のブロックが存在する場合に、Ｓ２２０の処理に戻って、次の注目ブロックを処理対象とし、未処理のブロックが存在しない場合に、Ｓ２７０の処理に移行する。
【００３８】
ステップ２７０（Ｓ２７０）において、制御部５６０（図６）は、符号化部５５０から入力された符号データの符号量と、目標符号量とを比較して、符号データの符号量が目標符号量以下となっているか否かを判断する。
制御部５６０は、符号データの符号量が目標符号量を超えると判断した場合に、符号化部５５０から入力された符号データ（試行結果）に基づいて、実際の実測値ＣＬ'を算出し、算出された実測値ＣＬ'で選択基準を設定するように選択基準設定部５２０に指示する。
また、制御部５６０は、符号データの符号量が目標符号量以下であると判断した場合に、符号化部５５０から入力された符号データをそのまま外部に出力する。
画像処理プログラム５２は、符号データの符号量が目標符号量を超えると判断された場合に、Ｓ２８０の処理に移行し、符号量が目標符号量以下であると判断された場合に、処理を終了する。
【００３９】
ステップ２８０（Ｓ２８０）において、選択基準設定部５２０は、制御部５６０からの指示に応じて、特徴量算出部５１０により算出された特徴量の分布と、目標符号量とに基づいて、選択基準を算出し、算出された選択基準を強度選択部５３０に出力する。
【００４０】
［その他の変形例］
なお、上記実施形態及び変形例では、量子化強度のレベル数が２である場合を説明したが、量子化強度のレベル数が２以上の場合、選択基準の自由度が２以上になるのに対して、図３（Ａ）の推定式は１個だけなので、選択基準を一意に求めることができなくなる。
このような場合には、他の制約条件を加える必要がある。制約条件としては、例えば、各基準の間隔の配置（なるべく等しくなるようにとか、等比配列になるようにとか）、各基準に含まれるブロック数の分布、もっとも粗い量子化レベルに含まれるブロック数の制限などが利用できる。
【図面の簡単な説明】
【００４１】
【図１】画像処理装置２のハードウェア構成を、制御装置２１を中心に例示する図である。
【図２】制御装置２１（図１）により実行される画像処理プログラム５の機能構成を例示する図である。
【図３】選択基準の設定方法を説明する図である。
【図４】量子化部５４０（図２）をより詳細に説明する図である。
【図５】画像処理プログラム５の動作（Ｓ１０）を示すフローチャートである。
【図６】第２の画像処理プログラム５２の機能構成を例示する図である。
【図７】第１の変形例における画像処理プログラム５２の動作（Ｓ１２）を示すフローチャートである。
【図８】第２の変形例における画像処理プログラム５２の動作（Ｓ２０）を示すフローチャートである。
【符号の説明】
【００４２】
２・・・画像処理装置
５，５２・・・画像処理プログラム
５００・・・領域設定部
５１０・・・特徴量算出部
５２０・・・選択基準設定部
５３０・・・強度選択部
５４０・・・量子化部
５５０・・・符号化部
５６０・・・制御部
【図１】
2009027664.tif 000003
【図２】
2009027664.tif 000004
【図３】
2009027664.tif 000005
【図４】
2009027664.tif 000006
【図５】
2009027664.tif 000007
【図６】
2009027664.tif 000008
【図７】
2009027664.tif 000009
【図８】
2009027664.tif 000010