(57)【要約】【課題】階調を拡張すると想定される部分では小さな符号化歪で符号化し、階調を縮小すると想定される部分では大きな符号化歪で符号化することにより、階調補正後の画質が向上する。【解決手段】歪計算部１１１が各符号化パスの符号化により生じる歪を計算し、歪修正部１１２が再生画像に施される階調補正特性に応じて歪を修正する。符号量計算部１１３が各符号化パスの符号量を計算して、傾き計算部１１４が修正した歪と符号量の関係に基づく傾きを算出する。切り捨てポイント導出部１１５がその傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する。【選択図】図２
2012119841.tif 000002
【特許請求の範囲】
【請求項１】
画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換部と、
前記変換部が生成した変換係数に対して量子化を行う量子化部と、
前記量子化部が量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化部と、
前記エントロピ符号化部が生成した符号データを記憶する符号メモリ部と、
レート制御に必要な歪と符号量の計算に基づいて前記符号化パスの切り捨てポイントを決定するレート制御情報抽出部と、
前記レート制御情報抽出部が決定した切り捨てポイントまでの符号データを前記符号メモリ部から抽出し符号ストリームとして出力する符号データ抽出部とを備え、
前記レート制御情報抽出部は、
各符号化パスの符号化により生じる歪を算出する歪計算部と、
前記歪計算部が計算した歪を、前記画像信号の再生画像に施される階調補正特性に応じて修正する歪修正部と、
各符号化パスの符号量を算出する符号量計算部と、
前記歪修正部が修正した歪と前記符号量計算部が算出した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算部と、
前記傾き計算部が算出した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出部とを有する画像符号化装置。
【請求項２】
前記歪修正部は、再生画像に施される階調補正特性の傾きを用いて符号化対象コードブロックの重み係数を算出し、当該重み係数を用いて歪を修正することを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記歪修正部は、符号化対象コードブロックと空間的に同一位置にある低域の変換係数の平均値を求め、当該平均値における階調補正特性の微分係数を階調補正特性の傾きとして用いることを特徴とする請求項２記載の画像符号化装置。
【請求項４】
前記歪修正部は、符号化対象コードブロックと空間的に同一位置にある低域の変換係数の最大値および最小値から定まる傾きを階調補正特性の傾きとして用いることを特徴とする請求項２記載の画像符号化装置。
【請求項５】
前記歪修正部は、再生画像に施される階調補正特性の傾きと、符号化対象コードブロックと空間的に同一位置にある画像信号のコントラストとを用いて当該符号化対象コードブロックの重み係数を算出し、当該重み係数を用いて歪を修正することを特徴とする請求項１記載の画像符号化装置。
【請求項６】
前記歪修正部は、符号化対象コードブロックと空間的に同一位置にある低域の変換係数の最大値および最小値の差を画像信号のコントラストとして用いることを特徴とする請求項５記載の画像符号化装置。
【請求項７】
前記歪修正部は、符号化対象コードブロックにおいて変換係数の絶対値が最大となる値を画像信号のコントラストとして用いることを特徴とする請求項５記載の画像符号化装置。
【請求項８】
画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換ステップと、
前記変換ステップで生成した変換係数に対して量子化を行う量子化ステップと、
前記量子化ステップで量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化ステップと、
前記エントロピ符号化ステップで生成した符号データを符号メモリ部に記憶する符号メモリステップと、
レート制御に必要な歪と符号量の計算に基づいて前記符号化パスの切り捨てポイントを決定するレート制御情報抽出ステップと、
前記レート制御情報抽出ステップで決定した切り捨てポイントまでの符号データを前記符号メモリ部から抽出し符号ストリームとして出力する符号データ抽出ステップとを備え、
前記レート制御情報抽出ステップは、
各符号化パスの符号化により生じる歪を算出する歪計算ステップと、
前記歪計算ステップで計算した歪を、前記画像信号の再生画像に施される階調補正特性に応じて修正する歪修正ステップと、
各符号化パスの符号量を算出する符号量計算ステップと、
前記歪修正ステップで修正した歪と前記符号量計算ステップで算出した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算ステップと、
前記傾き計算ステップで算出した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出ステップとを有する画像符号化方法。
【請求項９】
コンピュータを、
画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換手段と、
前記変換手段が生成した変換係数に対して量子化を行う量子化手段と、
前記量子化手段が量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化手段と、
前記エントロピ符号化手段が生成した符号データを記憶する符号メモリ手段と、
レート制御に必要な歪と符号量の計算に基づいて前記符号化パスの切り捨てポイントを決定するレート制御情報抽出手段と、
前記レート制御情報抽出手段が決定した切り捨てポイントまでの符号データを前記符号メモリ手段から抽出し符号ストリームとして出力する符号データ抽出手段として機能させ、
前記レート制御情報抽出手段は、
各符号化パスの符号化により生じる歪を算出する歪計算手段と、
前記歪計算手段が計算した歪を、前記画像信号の再生画像に施される階調補正特性に応じて修正する歪修正手段と、
各符号化パスの符号量を算出する符号量計算手段と、
前記歪修正手段が修正した歪と前記符号量計算手段が算出した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算手段と、
前記傾き計算手段が算出した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出手段として機能させる画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、階調補正を想定して画像信号を符号化する画像符号化装置、ならびにその方法およびプログラムに関するものである。
【背景技術】
【０００２】
現在、インターネットを中心に静止画像符号化方式であるＪＰＥＧが広く普及しているが、さらなる性能改善、機能付加の要求を背景として、ＪＰＥＧ２０００符号化方式が標準化された。以下に、非特許文献１として挙げた勧告書に従ってＪＰＥＧ２０００符号化アルゴリズムの基本方式の概略を説明する。
【０００３】
このアルゴリズムに入力される画像信号は、ウェーブレット変換部で２次元のウェーブレット変換が施され、複数のサブバンドに帯域分割される。ここで、２次元のウェーブレット変換は１次元のウェーブレット変換の組み合わせとして実現される。つまり、垂直方向の１次元ウェーブレット変換を列毎に順次行う処理と、水平方向の１次元ウェーブレット変換をライン毎に順次行う処理である。ここで、１次元のウェーブレット変換は、図１１に示すように、所定の特性を持つローパスフィルタとハイパスフィルタ、およびダウンサンプラから構成されるものである。
【０００４】
こうして生成された２次元のウェーブレット変換係数は、低域成分をＬ、高域成分をＨとし、水平方向の変換を１文字目、垂直副走査方向の変換を２文字目で表現することで、図１２に示すようにＬＬ，ＨＬ，ＬＨ，ＨＨと表現される。また、これらの帯域分割された成分はサブバンドと呼ばれている。ここで、水平、垂直方向の低域成分（ＬＬ成分）は再帰的にウェーブレット変換が施される。再帰的に施される各ウェーブレット変換によって生成される各サブバンドを分解レベルと称し、図１２中ＬＬ，ＨＬ，ＬＨ，ＨＨの前に記載された数字がこれにあたる。即ち、ウェーブレット変換の分解回数２の場合には、最低解像度成分の分解レベルは２となり、反対に最高解像度成分のＨＬ，ＬＨ，ＨＨの分解レベルは１になる。
【０００５】
次に、各サブバンドのウェーブレット変換係数は、サブバンド毎に設定された量子化ステップサイズに従って量子化される。続いて、各サブバンドの量子化後のウェーブレット変換係数をコードブロックと呼ばれる固定サイズの領域に分割した後、多値データからなるコードブロックを２値のビットプレーン表現に変換し、各ビットプレーンを３通りの符号化パス（Ｓｉｇｎｉｆｉｃａｎｔ  Ｐｒｏｐａｇａｔｉｏｎ  Ｄｅｃｏｄｉｎｇ  Ｐａｓｓ，Ｍａｇｎｉｔｕｄｅ  Ｒｅｆｉｎｅｍｅｎｔ  Ｐａｓｓ，Ｃｌｅａｎｕｐ  Ｐａｓｓ）に分割する。
【０００６】
３つの符号化パスから出力される２値信号は、それぞれの符号化パス毎にコンテクストモデリングが行われ、エントロピ符号化が行われる。また、エントロピ符号化処理と並行して、各コードブロックに於いて符号化パス毎の符号量と歪情報を計算する。
【０００７】
最後に、ラグランジェの乗数法を用いて画質劣化（歪）を最小にしながら、目標とする符号サイズ以下に符号量を調整するレート制御が行われる。レート制御の方法は、標準化されているわけではなくアプリケーションに応じて任意の方法を使うことができるが、以下に非特許文献１として挙げた勧告書のＪ．１４．３に参考情報として記載されているレート制御部のメカニズムについて概略を説明する。
【０００８】
この方法では、各コードブロックｉにおける切り捨てポイントをｎｉ、各切り捨てポイントまでの符号量をＲ（ｉ，ｎｉ）、歪をＤ（ｉ，ｎｉ）とした時、ラグランジェの乗数法を使い、次式（１）を最大にする切り捨てポイントによって生ずる画面全体での総符号量Ｒが目標符号量Ｒｍａｘの範囲内であることを満足するまで変数λを調整する。
Σ（Ｒ（ｉ，ｎｉ）−λＤ（ｉ，ｎｉ））      （１）
【０００９】
ここで、歪とは、ある符号化パスまでの符号を送った時に再生画像の平均二乗誤差が符号データを伝送しない時と比較してどれだけ減少したかを示すもので、厳密に言えば、歪の減少量ということになる。従って、符号化前は歪Ｄは０、最終ビットプレーンまで符号化すると歪Ｄは平均二乗誤差に等しくなる。
【００１０】
上式（１）を最大にする切り捨てポイントを見つけることは、図１３に示すように、各コードブロックの符号量Ｒと歪Ｄをグラフに表した時（以下、ＲＤ曲線と称する）、その接線の傾きがλ−１となる切り捨てポイントを見つけることと等価である。図１３では、２つのコードブロックｃ１，ｃ２において、接線の傾きがλ−１となる切り捨てポイントがｎｃ１，ｎｃ２で、その切り捨てポイントまでの符号量がＲ（ｃ１，ｎｃ１），Ｒ（ｃ２，ｎｃ２）となることを表している。レート制御では、このようなＲを全てのコードブロックに対して加算し、Ｒｍａｘと比較する処理となる。
【００１１】
これをコードブロック毎に見た場合、（Ｒ（ｉ，ｎｉ）−λＤ（ｉ，ｎｉ））を最大化する切り捨てポイントｎｉを次のように見つける必要がある。
【００１２】
Set ｎｉ＝０
For ｋ＝１，２，３，・・・
Set ΔＲ（ｉ，ｋ）＝Ｒ（ｉ，ｋ）−Ｒ（ｉ，ｎｉ）
and ΔＤ（ｉ，ｋ）＝Ｄ（ｉ，ｋ）−Ｄ（ｉ，ｎｉ）
If（ΔＤ（ｉ，ｋ）／ΔＲ（ｉ，ｋ））＞λ−1   then  set ｎｉ＝ｋ
【００１３】
なお、このアルゴリズムでは、多数のλに対して上記処理を実行しなければ切り捨てポイントｎｉを求めることができない。そこで、傾きＳ（ｉ，ｋ）＝ΔＤ（ｉ，ｋ）／ΔＲ（ｉ，ｋ）がｋについて単調減少になるように予め補正しておく。
【００１４】
全てのコードブロックでこれらの情報の導出が完了したら、総符号量が目標符号量Ｒｍａｘとなるような符号データを作成する。具体的には、あるλに対する総符号量Ｒｓｕｍに対してＲｓｕｍ≦Ｒｍａｘを満たす最大のＲｓｕｍを与えるλを見つけることになる。ここで、あるλに対する総符号量は各コードブロックに於いて切り捨てポイントを一意に求め、その切り捨てポイントまでの符号データの総和を算出して初めてわかる。そこで、Ｒｓｕｍ≦Ｒｍａｘを満たす最大のＲｓｕｍを与えるλを見つけるには、通常は、λの複数の候補に対する総符号量を算出して、所望の値に近い総符号量を与えるλを収束演算により算出する。λが求まったら、そのλに対応する切り捨てポイントまでの符号データを全てのコードブロックから集めて、更に各コードブロックにおける符号化パス数を付加情報として付け加え、最終的な符号データを構成する。こうして、目標符号量Ｒｍａｘのもとで歪を最小とする符号データを生成することができる。
【００１５】
上記の方法では、総符号量Ｒｓｕｍが目標符号量Ｒｍａｘ以下の条件で画面全体での総歪量（平均二乗誤差）が最小となる切り捨てポイントを算出している。しかし、平均二乗誤差を最小化した画像が、必ずしも主観的に最適な画質であるとは限らない。そこで、人の視覚特性に応じて、上式（１）の歪Ｄ（ｉ，ｎｉ）を修正して主観画質の改善を図る手法も提案されている。ＪＰＥＧ２０００規格書Ｊ．１２に「Ｖｉｓｕａｌ  ｆｒｅｑｕｅｎｃｙ  ｗｅｉｇｈｔｉｎｇ」として紹介されている方法では、サブバンド毎に重み係数ｗ（ｎ）（ｎはサブバンドのインデックス）を設定し、主観画質への影響が小さい高域のサブバンドに対しては重み係数を小さな値に、主観画質への影響が大きい低域のサブバンドに対しては重み係数を大きな値にする。そして、各コードブロックの歪Ｄ（ｉ，ｎｉ）に対して、そのコードブロックが属するサブバンドに設定された重み係数を掛けることにより、歪の修正値Ｄ’を算出する。
Ｄ’（ｉ，ｎｉ，）＝Ｄ（ｉ，ｎｉ）・ｗ（ｎ）      （２）
【００１６】
歪を修正した後は、前述した総歪量を最小化する手順と同じ手順で各コードブロックの切り捨て符号化パス数を決定する。これにより、平均二乗誤差最小化の条件で生成した符号データに比べて、低域のサブバンドでは切り捨て符号化パス数が少なく、高域のサブバンドでは切り捨て符号化パス数が多くなり、主観的な画質向上が期待できる。
【００１７】
以上のようなＪＰＥＧ２０００国際標準規格は、ＩＳＯおよびＩＴＵ−Ｔ等の標準化機関を通して入手することができる。また、ＪＰＥＧ２０００の最新情報については、http://www.jpeg.orgを参照することにより入手することができる。
【先行技術文献】
【非特許文献】
【００１８】
【非特許文献１】勧告書（ＩＳＯ／ＩＥＣ  １５４４４−１：２００２）
【発明の概要】
【発明が解決しようとする課題】
【００１９】
リモートセンシングなどの用途では、遠隔地で撮影された画像信号を伝送した後、再生された画像に対し、階調補正、解像度変換、輪郭強調・抽出、ノイズ除去、カラーシェーディングなど目標となる被写体が判別し易くなるよう様々な画像処理を施して、画像の判読を行う。階調補正では、人の視覚感度を考慮し、暗い部分の輝度レベルを明るくする、コントラストの低い部分の階調を拡張するなどの処理がよく行われる。
【００２０】
しかしながら、従来の符号化処理ではこのような一連の後処理を考慮せずに、原信号領域での平均二乗誤差を最小にするように設計することが多い。そのため、再生画像の階調を拡張すると、拡張した部分で符号化歪も強調されてしまい、画像の判読性に悪影響を及ぼすことがある。逆に、判読時に階調を縮小する部分にも他の部分と同様に符号化を施すので、不要に精度の高い符号化となり、符号量の増加に繋がるという問題があった。
【００２１】
この発明は、上記のような課題を解決するためになされたもので、階調を拡張すると想定される部分では小さな符号化歪で符号化し、階調を縮小すると想定される部分では大きな符号化歪で符号化することにより、階調補正後の画質が向上することを目的とする。
【課題を解決するための手段】
【００２２】
この発明に係る画像符号化装置は、画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換部と、変換部が生成した変換係数に対して量子化を行う量子化部と、量子化部が量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化部と、エントロピ符号化部が生成した符号データを記憶する符号メモリ部と、レート制御に必要な歪と符号量の計算に基づいて符号化パスの切り捨てポイントを決定するレート制御情報抽出部と、レート制御情報抽出部が決定した切り捨てポイントまでの符号データを符号メモリ部から抽出し符号ストリームとして出力する符号データ抽出部とを備え、レート制御情報抽出部は、各符号化パスの符号化により生じる歪を算出する歪計算部と、歪計算部が計算した歪を、画像信号の再生画像に施される階調補正特性に応じて修正する歪修正部と、各符号化パスの符号量を算出する符号量計算部と、歪修正部が修正した歪と符号量計算部が計算した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算部と、傾き計算部が計算した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出部とを有するものである。
【００２３】
また、この発明に係る画像符号化方法は、画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換ステップと、変換ステップで生成した変換係数に対して量子化を行う量子化ステップと、量子化ステップで量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化ステップと、エントロピ符号化ステップで生成した符号データを符号メモリ部に記憶する符号メモリステップと、レート制御に必要な歪と符号量の計算に基づいて符号化パスの切り捨てポイントを決定するレート制御情報抽出ステップと、レート制御情報抽出ステップで決定した切り捨てポイントまでの符号データを符号メモリ部から抽出し符号ストリームとして出力する符号データ抽出ステップとを備え、レート制御情報抽出ステップは、各符号化パスの符号化により生じる歪を算出する歪計算ステップと、歪計算ステップで計算した歪を、画像信号の再生画像に施される階調補正特性に応じて修正する歪修正ステップと、各符号化パスの符号量を算出する符号量計算ステップと、歪修正ステップで修正した歪と符号量計算ステップで算出した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算ステップと、傾き計算ステップで算出した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出ステップとを有するものである。
【００２４】
また、この発明に係る画像符号化プログラムは、コンピュータを、画像信号に直交変換を施し、複数の周波数成分の変換係数を生成する変換手段と、変換手段が生成した変換係数に対して量子化を行う量子化手段と、量子化手段が量子化した変換係数を複数のコードブロックに分割し、当該コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、当該符号化パス毎に符号化して符号データを生成するエントロピ符号化手段と、エントロピ符号化手段が生成した符号データを記憶する符号メモリ手段と、レート制御に必要な歪と符号量の計算に基づいて符号化パスの切り捨てポイントを決定するレート制御情報抽出手段と、レート制御情報抽出手段が決定した切り捨てポイントまでの符号データを符号メモリ手段から抽出し符号ストリームとして出力する符号データ抽出手段として機能させ、レート制御情報抽出手段は、各符号化パスの符号化により生じる歪を算出する歪計算手段と、歪計算手段が計算した歪を、画像信号の再生画像に施される階調補正特性に応じて修正する歪修正手段と、各符号化パスの符号量を算出する符号量計算手段と、歪修正手段が修正した歪と符号量計算手段が算出した符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算手段と、傾き計算手段が算出した傾きに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出手段として機能させるものである。
【発明の効果】
【００２５】
この発明によれば、各符号化パスの符号化により生じる歪を、画像信号の再生画像に施される階調補正特性に応じて修正し、各コードブロックにおける修正した歪と符号量の関係に基づく傾きを算出して切り捨てポイントを導出するようにしたので、階調を拡張すると想定される部分では小さな符号歪で符号化でき、また、階調を縮小すると想定される部分では大きな符号化歪で符号化できるようになり、階調補正後の画質を向上させることができる。
【図面の簡単な説明】
【００２６】
【図１】この発明の実施の形態１に係る画像符号化装置の構成を示すブロック図である。
【図２】この発明の実施の形態１に係るレート制御情報抽出部の構成を示すブロック図である。
【図３】図１に示すエントロピ符号化部によるビットプレーンの分解を説明する図である。
【図４】図１に示すエントロピ符号化部によるビットプレーンから符号化パスへの分解を説明する図である。
【図５】再生画像に施されると想定する階調補正を示すグラフである。
【図６】図１に示す歪修正部による歪の修正値の算出処理を示すフローチャートである。
【図７】２レベルのウェーブレット変換係数の例を示す図である。
【図８】図１に示す歪修正部による歪の修正値の別の算出処理を示すフローチャートである。
【図９】この発明の実施の形態２に係る歪修正部による歪の修正値の算出処理を示すフローチャートである。
【図１０】実施の形態２に係る歪修正部による歪の修正値の別の算出処理を示すフローチャートである。
【図１１】従来技術におけるウェーブレット変換部の構成を示す図である。
【図１２】従来技術におけるウェーブレット変換の流れを示す図である。
【図１３】従来技術における最適な符号化パス導出を説明するグラフである。
【発明を実施するための形態】
【００２７】
実施の形態１．
図１に示す画像符号化装置１００は、入力された画像信号に対し、直交変換の一種である２次元のウェーブレット変換を再帰的に行う変換部１０１、変換部１０１によって生成されたウェーブレット変換係数を予め設定された量子化ステップサイズで量子化処理する量子化部１０２、量子化されたウェーブレット変換係数をビットプレーンに分解し２値算術符号化するエントロピ符号化部１０３、エントロピ符号化された符号データを一時的に格納する符号メモリ部１０４、レート制御に必要な歪と符号量を計算し、どの符号化パスまでの符号データを符号ストリームとして出力するかを判断するレート制御情報抽出部１０５、レート制御情報抽出部１０５が判断した切り捨てポイントまでの符号データを符号メモリ部１０４から抽出して符号ストリームとして出力する符号データ抽出部１０６を備える。
【００２８】
図２に、レート制御情報抽出部１０５の内部構成を示す。
レート制御情報抽出部１０５は、符号化パス毎の歪を計算する歪計算部１１１、符号化パス毎の歪を修正する歪修正部１１２、符号化パス毎の符号量をカウントする符号量計算部１１３、歪と符号量からＲＤ曲線の傾きＳを計算する傾き計算部１１４、各コードブロックで切り捨てる符号化パスを決定する切り捨てポイント導出部１１５を備える。
【００２９】
なお、画像符号化装置１００における処理は１または複数のプログラムによりコンピュータ上で実現してもよく、または、その少なくとも一部をハードウェアで実現してもよい。例えば画像符号化装置１００をコンピュータで構成する場合には、変換部１０１、量子化部１０２、エントロピ符号化部１０３、レート制御情報抽出部１０５および符号データ抽出部１０６の処理内容を記述しているプログラムをコンピュータのメモリに格納し、また、符号メモリ部１０４をＲＡＭ等の記憶装置によって構成し、コンピュータのＣＰＵがメモリに格納されているプログラムを実行する。
【００３０】
次に、画像符号化装置１００の動作を説明する。
まず、不図示の画像入力装置（例えば、イメージセンサ等）から入力された画像信号に対して、変換部１０１が１次元のウェーブレット変換を垂直方向、水平方向の両方向に２次元的に施し、サブバンドに帯域分割する。ここで、１次元のウェーブレット変換は、低域通過フィルタ（Ｌ）と高域通過フィルタ（Ｈ）のフィルタバンクによって構成される。先立って図１２を用いて説明したように、２次元のウェーブレット変換を例えば２回再帰的に施す場合、まず第１回目のウェーブレット変換により１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨが生成される。続いてその１ＬＬのサブバンドに対して２回目のウェーブレット変換を施し、２ＬＬ，２ＨＬ，２ＬＨ，２ＨＨが生成される。先頭の数字は分解レベルを表しており、続くＬまたはＨの２つの英字は、水平方向、垂直方向のフィルタの種類を表している。
【００３１】
続いて、量子化部１０２が、サブバンド毎に設定された量子化ステップサイズによりウェーブレット変換係数を量子化する。
【００３２】
続いて、エントロピ符号化部１０３が、各サブバンドのウェーブレット変換係数をコードブロックと呼ばれる固定サイズの矩形領域に分割した後、多値データからなるそれぞれのコードブロックを２値のビットプレーンに変換する。通常、このコードブロックの大きさは６４×６４、３２×３２などのサイズに設定される。
【００３３】
ここで、図３を用いてビットプレーンの分解について詳しく説明する。
図３（ａ）は４×４のコードブロックの一例を表している。図内の数値は、量子化後の変換係数の値を示している。これらのデータを、正負を表す１ビットの信号と絶対値の表現に変換し、変換したデータを縦方向に２進表現した結果を各行単位に並べたものが図３（ｂ）となる。次に、図３（ｂ）のデータのうち、同一のビット番号のビットを集めたものが図３（ｃ）となる。ここで、最下位ビット（ＬＳＢ：Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）を第０ビット、最上位ビット（ＭＳＢ：Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）を第３ビットとした時、第０ビットで集めたものを第０ビットプレーン、第１ビットで集めたものを第１ビットプレーン、第２ビットで集めたものを第２ビットプレーン、第３ビットで集めたものを第３ビットプレーンとしている。これ以外にも、正負を表すビットの集まりとして符号ビットプレーンを作成する。
【００３４】
続いて、エントロピ符号化部１０３が、ビットプレーン内の各ビットを、そのコンテクストに応じて、３通りの符号化パス、シグニフィカントプロパゲーションデコーディングパス（Ｓｉｇｎｉｆｉｃａｎｔ  Ｐｒｏｐａｇａｔｉｏｎ  Ｄｅｃｏｄｉｎｇ  Ｐａｓｓ）、マグニチュードリファインメントパス（Ｍａｇｎｉｔｕｄｅ  Ｒｅｆｉｎｅｍｅｎｔ  Ｐａｓｓ）、クリーンナップパス（Ｃｌｅａｎｕｐ  Ｐａｓｓ）に分割する。
【００３５】
エントロピ符号化部１０３は続いて、それぞれの符号化パス毎に算術符号化するためのコンテクストモデリングを行う。図４に、コードブロックのビットプレーン数が６で、有効なビットプレーン数が４の場合の例を示す。ＭＳＢプレーンから数えて全て０となるビットプレーンはコンテクストモデリング、符号化は行わず、全て０のビットプレーンの数をヘッダに書くだけとする。そして、最初に１が出現したビットプレーンについては全てのビットがクリーンナップパスに分類されるが、その他のビットプレーンについては前述したように３種類の符号化パスに分類される。
エントロピ符号化部１０３はコンテクストモデリングが終了すると、算術符号によるエントロピ符号化を実施する。
【００３６】
エントロピ符号化処理と並行して、歪計算部１１１では、各コードブロックにおいてあるパスの符号化が終了する度にその符号化パスと１つ前の符号化パスにおける歪Ｄの差分ΔＤを計算する。ここで、歪とは、ある符号化パスまでの符号を送った時に再生画像の平均二乗誤差が符号データを伝送しない時と比較してどれだけ減少したかを示すもので、厳密に言えば歪の減少量ということになる。従って、最終ビットプレーンまで差分ΔＤを累積するとその平均二乗誤差に等しくなる。本実施の形態では、画像判読時に再生画像の階調を補正することを想定して、歪計算部１１１で算出した歪を補正後の画像信号領域における歪に換算するために、歪修正部１１２で歪Ｄの差分ΔＤをΔＤ’に修正する。歪の修正方法の詳細は、フローチャートを使って後述する。
【００３７】
符号量計算部１１３は、各コードブロックにおいてあるパスの符号化が終了する度にその符号化パスでの出力バイト数ΔＲをカウントする。
傾き計算部１１４は、現符号化パスでの出力バイト数ΔＲと歪の修正値ΔＤ’からＲＤ曲線の傾きＳを算出する。
【００３８】
切り捨てポイント導出部１１５は、傾きＳとレート制御用のパラメータλから、各コードブロックで傾きＳがλ−１に最も近い符号化パスを検出し、その切り捨てポイントとする。そして、切り捨てポイントを符号データ抽出部１０６に送る。
【００３９】
符号データ抽出部１０６は、符号メモリ部１０４から、各コードブロックにおける切り捨てポイントから定まる符号化パスまでの符号データを読み込み、各コードブロックに含まれる符号化パス数を付加情報として付け加えた後、それらのデータを指定された順に並べて、所定のヘッダ情報を付加した上で符号ストリームとして出力する。
【００４０】
ここで、歪修正部１１２の歪修正処理の詳細を説明する。この処理では、画像再生後の判読時に再生画像の階調を補正することを想定して歪Ｄの値を修正し、階調補正後の画質向上を図る。
【００４１】
図５は、想定する階調補正を示すグラフである。グラフの横軸は原信号の入力輝度レベル、縦軸は階調補正後の補正輝度レベルを示し、階調補正をしない場合は破線の特性になる。本実施の形態１では、画像判読時に輝度レベルを図５の太実線のように対数変換して、視覚感度の鈍い暗い部分の階調を特に拡張して表示することを想定し、切り捨てパスを決定する。修正後の輝度レベルｆ（ｘ）は、次式（３）で表されるとする。
ｆ（ｘ）＝（ｌｏｇ（ｘ）−ｌｏｇ（ｘｍｉｎ））
／（ｌｏｇ（ｘｍａｘ）−ｌｏｇ（ｘｍｉｎ））・２５５      （３）
ただし、ｘは原信号の輝度レベル、ｘｍａｘ，ｘｍｉｎは画面内での輝度レベル最大値、最小値である。
【００４２】
以下、各コードブロックの符号量Ｒと歪Ｄの関係の傾きＳを導出する時に、符号化パス間の歪Ｄの差分ΔＤを修正する処理を、図６に示すフローチャートを使って説明する。
歪修正部１１２は、まずステップＳＴ１にて、符号化対象コードブロックにおける全ての符号化パスにおいて、一つ前の符号化パスと歪Ｄの差分ΔＤを算出する。これは、符号化対象の符号化パスを切り捨てることに伴う二乗誤差の変化量である。
【００４３】
次にステップＳＴ２にて、符号化対象コードブロック（ＣＢ）がＬＬ成分に属すか否かを判断し、ＬＬ成分でなければ（ステップＳＴ２“ＮＯ”）、符号化対象コードブロックと空間的に同一位置に存在する低域成分のウェーブレット変換係数を特定する（ステップＳＴ３）。
【００４４】
図７に、３レベルのウェーブレット変換係数の例を示す。高域成分（１ＨＬ）の符号化対象コードブロックと、そのコードブロックと空間的に同一位置に存在する低域成分（２ＬＬ）のウェーブレット変換係数の位置関係を示している。空間的に同一位置に存在する低域成分のウェーブレット変換係数は以下のように特定する。高域成分のサブバンドの左上、右下の座標をそれぞれ（０，０）、（ｘ０＿１ＨＬ，ｙ０＿１ＨＬ）、低域成分のサブバンドの左上、右下の座標をそれぞれ（０，０）、（ｘ０＿２ＬＬ，ｙ０＿２ＬＬ）とする。また、高域成分のサブバンドにおける符号化対象コードブロックの左上、右下の座標をそれぞれ（ｃｘ０，ｃｙ０）、（ｃｘ１，ｃｙ１）とする。
【００４５】
このとき、処理対象のサブバンドからｎレベル（図７の場合は２レベル）解像度の低い低域成分における空間的に同一位置のウェーブレット変換係数の左上、右下の座標（ｂｘ０，ｂｙ０）、（ｂｘ１，ｂｙ１）を、次式（４）から算出する。
ｂｘ０＝［ｃｘ０／２ｎ−１］
ｂｙ０＝［ｃｙ０／２ｎ−１］      （４）
ｂｘ１＝［ｃｘ１／２ｎ−１］
ｂｙ１＝［ｃｙ１／２ｎ−１］
ただし、［ｘ］は、ｘを超えない最大の整数を表す。
【００４６】
次にステップＳＴ４にて、符号化対象コードブロックと空間的に同一位置に存在するＬＬ成分のウェーブレット変換係数の平均値Ｌａを算出する。なお、符号化対象コードブロックがＬＬ成分の場合には、符号化対象コードブロックのウェーブレット変換係数の平均値Ｌａを算出する。
【００４７】
次にステップＳＴ５にて、判読時に想定される階調補正式の傾き、即ち、輝度レベルＬａにおける微分係数を利用して、符号化対象コードブロックに対する重み係数Ｋ１を算出する。階調補正式として上式（３）を想定している場合には、図５に細実線で示す微分係数は次式（５）のようになり、これを利用して次式（６）より重み係数Ｋ１を算出する。
ｆ’（ｘ）＝（ｌｏｇ（ｘｍａｘ）−ｌｏｇ（ｘｍｉｎ））・２５５／ｘ      （５）
Ｋ１＝（ｌｏｇ（ｍａｘ）−ｌｏｇ（ｘｍｉｎ））・２５５／Ｌａ            （６）
【００４８】
次にステップＳＴ６にて、全ての符号化パスでの歪Ｄの差分ΔＤに重み係数Ｋ１の二乗を掛けて、歪Ｄの修正値ΔＤ’を算出する。
【００４９】
歪修正部１１２は、上記方法により、階調補正特性の微分係数から傾きを算出したが、これ以外の方法で重み係数を算出することも可能である。以下では、階調補正特性の導関数を使用せずに、符号化対象コードブロックに対する重み係数を算出する方法を、図８に示すフローチャートを使って説明する。この方法のステップＳＴ１１〜ＳＴ１３でも図６のステップＳＴ１〜ＳＴ３と同様に、符号化対象コードブロックと同一位置のＬＬ成分ウェーブレット変換係数、符号化パス間の歪Ｄの差分ΔＤを算出する。
【００５０】
次にステップＳＴ１４にて、符号化対象コードブロックと空間的に同一位置にあるＬＬ成分ウェーブレット変換係数の中から最大値Ｌｍａｘ、最小値Ｌｍｉｎを検出する。そして、ステップＳＴ１５にて、Ｌｍｉｎ，Ｌｍａｘから定まる階調補正値の傾きから符号化対象コードブロックの重み係数Ｋ１を算出し、ステップＳＴ１６にて歪Ｄの修正値ΔＤ’を算出する。
【００５１】
なお、本実施の形態１では輝度信号の１成分のみに対する処理を説明したが、ＲＧＢの３成分など複数の成分が符号化対象であってもよく、各々の成分に対して同様の処理を適用することにより本実施の形態１と同様の効果を得ることが可能である。
【００５２】
以上より、本実施の形態１に係る画像符号化装置１００のレート制御情報抽出部１０５は、各符号化パスの符号化により生じる歪Ｄの差分ΔＤを算出する歪計算部１１１と、符号化対象コードブロックと空間的に同一位置にある低域のウェーブレット変換係数の平均値Ｌａを求め、当該平均値Ｌａにおける階調補正特性の微分係数を階調補正特性の傾きとして用いて符号化対象コードブロックの重み係数Ｋ１を算出し、当該重み係数Ｋ１を用いて歪計算部１１１が計算した歪Ｄの差分ΔＤを補正する歪修正部１１２と、各符号化パスの符号量である出力バイト数ΔＲを算出する符号量計算部１１３と、歪修正部１１２が修正した歪Ｄの修正値ΔＤ’と符号量計算部１１３が算出した出力バイト数ΔＲとから各コードブロックにおける歪Ｄと符号量Ｒの関係に基づく傾きＳを算出する傾き計算部１１４と、傾き計算部１１４が算出した傾きＳに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出部１１５とを有するように構成した。このため、画像判読時に再生画像の階調を補正することを想定して、階調を拡張すると想定される部分では符号化歪が小さくなるようにし、拡張を縮小すると想定される部分では大きな符号化歪を許容するように、コードブロック毎の切り捨て符号化パスを決定することができる。これにより、再生画像の高画質化が図れ、判読性が向上するという効果が得られる。
【００５３】
また、歪修正部１１２は、符号化対象コードブロックと空間的に同一位置にある低域のウェーブレット変換係数の最大値Ｌｍａｘおよび最小値Ｌｍｉｎから定まる傾きを階調補正特性の傾きとして用いて符号化対象コードブロックの重み係数Ｋ１を算出し、当該重み係数Ｋ１を用いて歪Ｄの差分ΔＤを補正するように構成してもよい。この構成の場合にも、上記同様の効果が得られる。
【００５４】
なお、事前に前処理として、原信号に対して階調補正処理を施し、階調補正後の画像信号を符号化対象にするという方法も考えられる。しかしその場合、復号側で原信号と同じ階調表現が必要な場合に、階調補正の逆変換を別途行う必要がある。また、階調補正は全ての画素に対して施す必要があるために処理量が大きくなる。
それに対して、上記実施の形態１ではコードブロックに対して１回の修正で足り、また、符号化の過程で算出されるウェーブレット変換係数を利用するため、前処理として原信号に階調補正処理を施す方式に比べて演算負荷が軽くなるという効果も有する。
【００５５】
実施の形態２．
上記実施の形態１では、符号化対象コードブロックと空間的に同一位置にある画像信号の輝度レベルの大きさに応じて、符号化対象コードブロックに対する重み係数を決定した。再生画像判読時の階調補正では、暗い部分の輝度レベルを明るくするだけでなく、コントラストの低い部分の階調を拡張することもよく行われる。そこで、輝度レベルが低く、コントラストが低い部分を小さな符号化歪で符号化すれば、階調補正後の画質向上が期待できる。本実施の形態２では、輝度レベルの大きさだけでなく、符号化対象コードブロックと空間的に同一位置にある画像信号のコントラストに応じて、符号化対象コードブロックに対する重み係数を決定する方法を説明する。
【００５６】
本実施の形態２の画像符号化装置１００は、図１および図２に示す画像符号化装置１００と図面上では同様の構成であるため、以下では図１および図２を援用して説明する。
【００５７】
本実施の形態２において上記実施の形態１との違いは、歪修正部１１２の処理であるので、以下では歪修正部１１２の歪修正処理の詳細を説明する。この方法では、画像再生後の判読時に再生画像の階調を補正することを想定して歪Ｄの値を修正し、階調補正後の画質向上を図る。本実施の形態２では、画像判読時に輝度レベルを図５のように対数変換して、視覚感度の鈍い暗い部分の階調を特に拡張して表示することを想定し、切り捨てパスを決定する。
【００５８】
以下、各コードブロックの符号量Ｒと歪Ｄの関係の傾きＳを導出する時に、符号化パス間の歪Ｄの差分ΔＤを修正する処理を、図９に示すフローチャートを使って説明する。この方法のステップＳＴ２１〜ＳＴ２５でも上記実施の形態１の図８に示すステップＳＴ１１〜ＳＴ１５と同様に、符号化対象コードブロックと同一位置のＬＬ成分ウェーブレット変換係数とその最大値Ｌｍａｘ、最小値Ｌｍｉｎ、符号化パス間の歪Ｄの差分ΔＤ、符号化対象コードブロックの一つ目の重み係数Ｋ１を算出する。
【００５９】
次にステップＳＴ２６にて、符号化対象コードブロックと空間的に同一位置に存在するＬＬ成分ウェーブレット変換係数の最大値Ｌｍａｘ、最小値Ｌｍｉｎの差分にパラメータαを乗じた値を二つ目の重み係数Ｋ２とする。一つ目の重み係数Ｋ１が、符号化対象コードブロックの輝度レベルの大きさに対応する重み係数であるのに対し、二つ目の重み係数Ｋ２は、符号化対象コードブロックの輝度レベルのコントラストに対応する重み係数である。パラメータαは０以上の正数であり、任意の固定値を設定することができる。
【００６０】
次にステップＳＴ２７では、全ての符号化パスでの歪Ｄの差分ΔＤに一つ目の重みＫ１の二乗、二つ目の重み係数Ｋ２を掛けて、歪Ｄの修正値ΔＤ’を算出する。
【００６１】
歪修正部１１２は、上記方法では符号化対象コードブロックと空間的に同一位置に存在するＬＬ成分ウェーブレット変換係数の最大値Ｌｍａｘ、最小値Ｌｍｉｎを利用して二つ目の重み係数Ｋ２を算出したが、これ以外の方法で算出することも可能である。以下では、符号化対象コードブロックのウェーブレット変換係数の絶対値から二つ目の重み係数Ｋ２を算出する方法を、図１０に示すフローチャートを使って説明する。この方法のステップＳＴ３１〜ＳＴ３４でも図９に示すステップＳＴ２１〜ＳＴ２３，ＳＴ２５と同様に処理を行い、一つ目の重み係数Ｋ１を算出する。
【００６２】
次にステップＳＴ３５にて、符号化対象コードブロックにおいてウェーブレット変換係数の絶対値の最大値Ｈｍａｘを算出する。次にステップＳＴ３６にて、絶対値の最大値Ｈｍａｘにパラメータαを乗じた値を二つ目の重み係数Ｋ２とする。パラメータαは上記同様に０以外の正数であり、任意の固定値を設定することができる。次にステップＳＴ３７にて、全ての符号化パスでの歪Ｄの差分ΔＤに一つ目の重み係数Ｋ１の二乗、二つ目の重み係数Ｋ２を掛けて、歪Ｄの修正値ΔＤ’を算出する。
【００６３】
以上より、本実施の形態２に係る画像符号化装置１００のレート制御情報抽出部１０５は、各符号化パスの符号化により生じる歪Ｄの差分ΔＤを算出する歪計算部１１１と、再生画像に施される階調補正特性の傾きから符号化対象コードブロックの重み係数Ｋ１を算出すると共に、当該符号化対象コードブロックと空間的に同一位置にある低域のウェーブレット変換係数の最大値Ｌｍａｘおよび最小値Ｌｍｉｎの差を画像信号のコントラストとして用いて当該符号化対象コードブロックの重み係数Ｋ２を算出し、重み係数Ｋ１，Ｋ２を用いて歪計算部１１１が計算した歪Ｄの差分ΔＤを補正する歪修正部１１２と、各符号化パスの符号量である出力バイト数ΔＲを算出する符号量計算部１１３と、歪修正部１１２が修正した歪Ｄの修正値ΔＤ’と符号量計算部１１３が算出した出力バイト数ΔＲとから各コードブロックにおける歪Ｄと符号量Ｒの関係に基づく傾きＳを算出する傾き計算部１１４と、傾き計算部１１４が算出した傾きＳに基づいて、各コードブロックから切り捨てる符号化パスを示す切り捨てポイントを導出する切り捨てポイント導出部１１５とを有するように構成した。このため、画像判読時に再生画像の階調を補正することを想定して、階調を拡張すると想定される部分では符号化歪が小さくなるようにし、拡張を縮小すると想定される部分では大きな符号化歪を許容するように、コードブロック毎の切り捨て符号化パスを決定することができる。これにより、再生画像の高画質化が図れ、判読性が向上するという効果が得られる。
【００６４】
また、歪修正部１１２は、符号化対象コードブロックにおいてウェーブレット変換係数の絶対値が最大となる値Ｈｍａｘを画像信号のコントラストとして用いて当該符号化対象コードブロックの重み係数Ｋ２を算出し、重み係数Ｋ１，Ｋ２を用いて歪Ｄの差分ΔＤを補正するように構成してもよい。この構成の場合にも、上記同様の効果が得られる。
【００６５】
なお、上記実施の形態１でも述べたように、事前に前処理として、原信号に対して階調補正処理を施し、補正後の画像信号を符号化対象にするという方法も考えられる。しかしその場合、復号側で原信号と同じ階調表現が必要な場合に、階調補正の逆変換を別途行う必要がある。また、階調補正は全ての画素に対して施す必要があるために処理量が大きくなる。
それに対して、上記実施の形態２ではコードブロックに対して１回の修正で足り、また、符号化の過程で算出されるウェーブレット変換係数を利用するため、前処理として原信号に階調補正処理を施す方式に比べて演算負荷が軽くなるという効果も有する。
【００６６】
また、本実施の形態２でも上記実施の形態１と同様に、輝度信号の１成分のみに対する処理を説明したが、ＲＧＢの３成分など複数の成分が符号化対象であってもよく、各々の成分に対して同様の処理を適用することにより本実施の形態２と同様の効果を得ることが可能である。
【００６７】
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【符号の説明】
【００６８】
１００  画像符号化装置、１０１  変換部、１０２  量子化部、１０３  エントロピ符号化部、１０４  符号メモリ部、１０５  レート制御情報抽出部、１０６  符号データ抽出部、１１１  歪計算部、１１２  歪修正部、１１３  符号量計算部、１１４  傾き計算部、１１５  切り捨てポイント導出部。
【図１】
2012119841.tif 000003
【図２】
2012119841.tif 000004
【図３】
2012119841.tif 000005
【図４】
2012119841.tif 000006
【図５】
2012119841.tif 000007
【図６】
2012119841.tif 000008
【図７】
2012119841.tif 000009
【図８】
2012119841.tif 000010
【図９】
2012119841.tif 000011
【図１０】
2012119841.tif 000012
【図１１】
2012119841.tif 000013
【図１２】
2012119841.tif 000014
【図１３】
2012119841.tif 000015