(57)【特許請求の範囲】
【請求項１】
符号化されたストリームを入力し、前記ストリームをエントロピー復号して量子化インデックス列を生成し、前記量子化インデックス列を逆量子化及び逆直交変換してブロックの画素値列を生成し、前記ブロックの画素値列をメモリに格納し、前記メモリから前記画素値列を読み出し復号画像として出力する画像復号装置において、
前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、前記ブロックの画素値列を生成し、前記変換係数列の補正及び前記補正した後の変換係数列の逆直交変換を繰り返し、前記ブロックの画素値列を前記メモリに格納する逆変換部を備え、
前記逆変換部は、
前記逆量子化及び前記逆直交変換を行うブロックを対象ブロックとし、当該対象ブロックに隣接するブロックを参照ブロックとして、前記メモリから、前記対象ブロックと前記参照ブロックとの間の所定の境界領域における前記参照ブロックの画素値列を読み出し、前記所定の境界領域における前記対象ブロックの画素値列と、前記所定の境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記評価値を小さくするように、前記変換係数列を補正し、
前記逆変換部は、逆量子化初期化手段、変換係数記憶手段、逆直交変換手段、ブロック境界評価手段及び変換係数補正手段を備え、
前記逆量子化初期化手段は、
前記量子化インデックス列に逆量子化を施し、初期の変換係数列を生成し、前記初期の変換係数列を前記変換係数記憶手段に格納し、
前記変換係数記憶手段は、
前記初期の変換係数列を記憶すると共に、前記補正した後の変換係数列を記憶し、
前記逆直交変換手段は、
前記変換係数記憶手段から前記変換係数列を読み出し、前記変換係数列に逆直交変換を施し、前記対象ブロックの画素値列を生成し、前記変換係数補正手段から補正完了を入力した場合、前記対象ブロックの画素値列を前記メモリに格納し、
前記ブロック境界評価手段は、
前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、
前記変換係数補正手段は、
前記ブロック境界評価手段により算出された前記評価値を小さくするように、前記変換係数記憶手段に格納された前記変換係数列のうち直流成分に近い所定数の前記変換係数を繰り返し補正し、前記補正の回数が所定回数と等しくなった場合、または、前記評価値の減少量が所定の閾値以下となった場合、前記補正完了を前記逆直交変換手段に出力する、ことを特徴とする画像復号装置。
【請求項２】
請求項１に記載の画像復号装置において、
前記評価値を、前記対象ブロックと前記参照ブロックとの間の境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列とを用いて、前記境界領域における画素対の画素値間のノルムにより定義される数量の総和とする、ことを特徴とする画像復号装置。
【請求項３】
請求項１または２に記載の画像復号装置において、
前記逆変換部を第１の逆変換部とし、さらに、第２の逆変換部、画像特徴量算出部及び切替部を備え、
前記第２の逆変換部は、
前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、対象ブロックの画素値列を生成し、
前記画像特徴量算出部は、
前記第２の逆変換部により生成された前記対象ブロックの画素値列、当該対象ブロックの周辺の画素値列、または、前記対象ブロックの画素値列及び当該対象ブロックの周辺の画素値列に基づいて、画像特徴量を算出し、
前記切替部は、
前記画像特徴量算出部により算出された画像特徴量に基づいて、前記第２の逆変換部により生成された前記対象ブロックの画素値列を確定して前記メモリに格納するか、または、前記第１の逆変換部に、前記逆量子化及び前記逆直交変換にて前記対象ブロックの画素値列を生成させ、前記対象ブロックの画素値列を確定して前記メモリに格納する、ことを特徴とする画像復号装置。
【請求項４】
請求項１から３までのいずれか一項に記載の画像復号装置において、
さらに、予測部を備え、
前記逆変換部は、前記変換係数列を逆直交変換することで、前記ブロックの残差画像の画素値列を生成し、前記ブロックの残差画像の画素値列に、前記予測部により生成された予測画像の画素値列を加算することで、前記ブロックの画素値列を生成し、
前記予測部は、前記メモリに格納された画素値列を読み出し、前記対象ブロックの画素値列を予測し、前記予測画像の画素値列を生成する、ことを特徴とする画像復号装置。
【請求項５】
コンピュータを、請求項１から４までのいずれか一項に記載の画像復号装置として機能させるための画像復号プログラム。
【請求項６】
符号化されたストリームを入力し、前記ストリームをエントロピー復号して量子化インデックス列を生成し、前記量子化インデックス列を逆量子化及び逆直交変換してブロックの画素値列を生成し、前記ブロックの画素値列をメモリに格納し、前記メモリから前記画素値列を読み出し復号画像として出力する画像復号装置に搭載されるチップにおいて、
前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、前記ブロックの画素値列を生成し、前記変換係数列の補正及び前記補正した後の変換係数列の逆直交変換を繰り返し、前記ブロックの画素値列を前記メモリに格納する逆変換部を備え、
前記逆変換部は、
前記逆量子化及び前記逆直交変換を行うブロックを対象ブロックとし、当該対象ブロックに隣接するブロックを参照ブロックとして、前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記評価値を小さくするように、前記変換係数列を補正し、
前記逆変換部は、逆量子化初期化手段、変換係数記憶手段、逆直交変換手段、ブロック境界評価手段及び変換係数補正手段を備え、
前記逆量子化初期化手段は、
前記量子化インデックス列に逆量子化を施し、初期の変換係数列を生成し、前記初期の変換係数列を前記変換係数記憶手段に格納し、
前記変換係数記憶手段は、
前記初期の変換係数列を記憶すると共に、前記補正した後の変換係数列を記憶し、
前記逆直交変換手段は、
前記変換係数記憶手段から前記変換係数列を読み出し、前記変換係数列に逆直交変換を施し、前記対象ブロックの画素値列を生成し、前記変換係数補正手段から補正完了を入力した場合、前記対象ブロックの画素値列を前記メモリに格納し、
前記ブロック境界評価手段は、
前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、
前記変換係数補正手段は、
前記ブロック境界評価手段により算出された前記評価値を小さくするように、前記変換係数記憶手段に格納された前記変換係数列のうち直流成分に近い所定数の前記変換係数を繰り返し補正し、前記補正の回数が所定回数と等しくなった場合、または、前記評価値の減少量が所定の閾値以下となった場合、前記補正完了を前記逆直交変換手段に出力する、ことを特徴とするチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の非可逆圧縮符号化方式の逆量子化技術において、高精度かつ低演算コストに逆量子化処理を行う画像復号装置、画像復号プログラム及びチップに関する。
【背景技術】
【０００２】
従来、信号の符号化方式として、信号波形を予測し、予測残差を符号化する手法が知られている。特に、映像信号を符号化する場合においては、あるフレームを符号化する際に、映像をブロックに分割し、その符号化対象ブロック毎に既に符号化済みの別のフレームまたは当該フレーム内の画像から予測処理を行う。そして、予測処理の結果と符号化対象ブロックとの誤差に対して離散コサイン変換等の変換処理を行い、変換処理の結果である変換係数を量子化し、さらに量子化結果をエントロピー符号化する。このようにして、映像信号のデータが圧縮符号化され、符号化ストリームとして出力される。
【０００３】
このような符号化方式は、ハイブリッド符号化またはＭＣ−ＤＣＴ（Motion Compensation／Discrete Cosine Transform）符号化と呼ばれている。例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４、及びＭＰＥＧ−Ｈ  ＨＥＶＣ／Ｈ．２６５の各符号化方式は、ＭＣ−ＤＣＴ符号化に属する方式である。
【０００４】
一方、エントロピー符号化された符号化ストリームを元の画像に復号するためには、ブロックを構成する変換係数に対し、逆量子化を行う必要がある。しかし、符号化ストリームを逆量子化する際に、量子化誤差が発生するため、ブロック間での局所的な画像の劣化が発生したり、ブロックのエッジ領域等で画像の歪みやぼけが発生したりする場合がある。
【０００５】
このような画像劣化等を制御するために、全変分ノルムを最小化する逆量子化値を求める手法が知られている（例えば特許文献１を参照）。具体的には、この手法は、逆量子化された複数の逆量子化値の候補の中から、空間周波数における個々の逆量子化値の振動がより小さくなるように、全変分ノルムを最小化する逆量子化値に順次更新するものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５４４７８７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述の符号化方式において、符号化時の量子化処理では、ＤＣＴ変換された変換係数が、量子化テーブルに設定された量子化ステップで除算され、その除算結果がいわゆる丸め演算され、その結果、量子化インデックスが生成される。一方、復号時の逆量子化処理では、量子化インデックスに量子化ステップが乗算されることで、変換係数が復元される。
【０００８】
このため、符号化時の量子化処理において、量子化ステップが１より大きい場合には、複数の異なる変換係数が１つの量子化インデックスに変換される。そして、復号時の逆量子化処理において、１つの量子化インデックスが１つの変換係数に変換される。すなわち、符号化時の異なる複数の変換係数が、復号時に１つの代表的な変換係数に対応付けられてしまうため、量子化誤差が発生し、画質劣化を招いてしまう。さらに、この画質劣化は、ブロックの境界付近において画素値の段差として現れるため、ブロック歪みとして知覚されてしまう。
【０００９】
また、前述の特許文献１の手法を用いた場合、逆量子化された変換係数の複数の候補のうち、全変分ノルムを最小化するものを最終的な変換係数として採用する。これにより、画質改善を図ることができる。しかし、全変分ノルムの演算コストが大きいことから、処理負荷が高く、遅延が大きくなってしまうという問題があった。
【００１０】
そこで、本発明はかかる課題を解決するためになされたものであり、その目的は、圧縮符号化された画像の復号処理において、高精度かつ低演算コストに逆量子化処理を行うことが可能な画像復号装置、画像復号プログラム及びチップを提供することにある。
【課題を解決するための手段】
【００１１】
前記課題を解決するため、請求項１の画像復号装置は、符号化されたストリームを入力し、前記ストリームをエントロピー復号して量子化インデックス列を生成し、前記量子化インデックス列を逆量子化及び逆直交変換してブロックの画素値列を生成し、前記ブロックの画素値列をメモリに格納し、前記メモリから前記画素値列を読み出し復号画像として出力する画像復号装置において、前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、前記ブロックの画素値列を生成し、前記変換係数列の補正及び前記補正した後の変換係数列の逆直交変換を繰り返し、前記ブロックの画素値列を前記メモリに格納する逆変換部を備え、前記逆変換部が、前記逆量子化及び前記逆直交変換を行うブロックを対象ブロックとし、当該対象ブロックに隣接するブロックを参照ブロックとして、前記メモリから、前記対象ブロックと前記参照ブロックとの間の所定の境界領域における前記参照ブロックの画素値列を読み出し、前記所定の境界領域における前記対象ブロックの画素値列と、前記所定の境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記評価値を小さくするように、前記変換係数列を補正し、前記逆変換部が、逆量子化初期化手段、変換係数記憶手段、逆直交変換手段、ブロック境界評価手段及び変換係数補正手段を備え、前記逆量子化初期化手段が、前記量子化インデックス列に逆量子化を施し、初期の変換係数列を生成し、前記初期の変換係数列を前記変換係数記憶手段に格納し、前記変換係数記憶手段が、前記初期の変換係数列を記憶すると共に、前記補正した後の変換係数列を記憶し、前記逆直交変換手段が、前記変換係数記憶手段から前記変換係数列を読み出し、前記変換係数列に逆直交変換を施し、前記対象ブロックの画素値列を生成し、前記変換係数補正手段から補正完了を入力した場合、前記対象ブロックの画素値列を前記メモリに格納し、前記ブロック境界評価手段が、前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記変換係数補正手段が、前記ブロック境界評価手段により算出された前記評価値を小さくするように、前記変換係数記憶手段に格納された前記変換係数列のうち直流成分に近い所定数の前記変換係数を繰り返し補正し、前記補正の回数が所定回数と等しくなった場合、または、前記評価値の減少量が所定の閾値以下となった場合、前記補正完了を前記逆直交変換手段に出力する、ことを特徴とする。
【００１２】
係る構成によれば、対象ブロックと参照ブロックとの間の境界領域における画素値の連続性が向上し、ブロック歪みの発生を抑えることができる。また、元の画像の画素値が連続的である場合には、当該連続性を仮定した正則化が効を奏し、逆量子化により得られる変換係数がより真値に近くなることが期待される。また、評価値の演算は、対象ブロックと参照ブロックとの間の境界領域のみに限定されるから、対象ブロック及び参照ブロックの全領域について演算する必要がなく、演算コストを低下させることができる。また、補正回数が所定回数と等しくなった場合、または、評価値の減少量が所定の閾値以下となった場合、対象ブロックの処理が完了し、メモリに対象ブロックの画素値列が格納される。
【００１３】
また、請求項２の画像復号装置は、請求項１に記載の画像復号装置において、前記評価値を、前記対象ブロックと前記参照ブロックとの間の境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列とを用いて、前記境界領域における画素対の画素値間のノルムにより定義される数量の総和とする、ことを特徴とする。
【００１４】
係る構成によれば、評価値の演算は、対象ブロックと参照ブロックとの間の境界領域のみに限定され、画素対のノルムに基づいてなされるから、演算コストを低下させることができる。
【００１７】
また、請求項３の画像復号装置は、請求項１または２に記載の画像復号装置において、前記逆変換部を第１の逆変換部とし、さらに、第２の逆変換部、画像特徴量算出部及び切替部を備え、前記第２の逆変換部が、前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、対象ブロックの画素値列を生成し、前記画像特徴量算出部が、前記第２の逆変換部により生成された前記対象ブロックの画素値列、当該対象ブロックの周辺の画素値列、または、前記対象ブロックの画素値列及び当該対象ブロックの周辺の画素値列に基づいて、画像特徴量を算出し、前記切替部が、前記画像特徴量算出部により算出された画像特徴量に基づいて、前記第２の逆変換部により生成された前記対象ブロックの画素値列を確定して前記メモリに格納するか、または、前記第１の逆変換部に、前記逆量子化及び前記逆直交変換にて前記対象ブロックの画素値列を生成させ、前記対象ブロックの画素値列を確定して前記メモリに格納する、ことを特徴とする。
【００１８】
係る構成によれば、本発明の逆変換処理と従来の逆変換処理とが画像特徴量に応じて切り替わるから、画像特徴量に応じて演算コストを一層低下させることができる。
【００１９】
また、請求項４の画像復号装置は、請求項１から３までのいずれか一項に記載の画像復号装置において、さらに、予測部を備え、前記逆変換部が、前記変換係数列を逆直交変換することで、前記ブロックの残差画像の画素値列を生成し、前記ブロックの残差画像の画素値列に、前記予測部により生成された予測画像の画素値列を加算することで、前記ブロックの画素値列を生成し、前記予測部が、前記メモリに格納された画素値列を読み出し、前記対象ブロックの画素値列を予測し、前記予測画像の画素値列を生成する、ことを特徴とする。
【００２０】
係る構成によれば、残差画像の画素値列に対して処理が行われ、対象ブロックと参照ブロックとの間の境界領域における画素値の連続性が向上し、ブロック歪みの発生を抑えることができ、演算コストを低下させることができる。
【００２１】
さらに、請求項５の画像復号プログラムは、コンピュータを、請求項１から４までのいずれか一項に記載の画像復号装置として機能させることを特徴とする。
【００２２】
さらに、請求項６のチップは、符号化されたストリームを入力し、前記ストリームをエントロピー復号して量子化インデックス列を生成し、前記量子化インデックス列を逆量子化及び逆直交変換してブロックの画素値列を生成し、前記ブロックの画素値列をメモリに格納し、前記メモリから前記画素値列を読み出し復号画像として出力する画像復号装置に搭載されるチップにおいて、前記量子化インデックス列を逆量子化し、前記ブロックの変換係数列を生成し、前記変換係数列を逆直交変換し、前記ブロックの画素値列を生成し、前記変換係数列の補正及び前記補正した後の変換係数列の逆直交変換を繰り返し、前記ブロックの画素値列を前記メモリに格納する逆変換部を備え、前記逆変換部が、前記逆量子化及び前記逆直交変換を行うブロックを対象ブロックとし、当該対象ブロックに隣接するブロックを参照ブロックとして、前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記評価値を小さくするように、前記変換係数列を補正し、前記逆変換部が、逆量子化初期化手段、変換係数記憶手段、逆直交変換手段、ブロック境界評価手段及び変換係数補正手段を備え、前記逆量子化初期化手段が、前記量子化インデックス列に逆量子化を施し、初期の変換係数列を生成し、前記初期の変換係数列を前記変換係数記憶手段に格納し、前記変換係数記憶手段が、前記初期の変換係数列を記憶すると共に、前記補正した後の変換係数列を記憶し、前記逆直交変換手段が、前記変換係数記憶手段から前記変換係数列を読み出し、前記変換係数列に逆直交変換を施し、前記対象ブロックの画素値列を生成し、前記変換係数補正手段から補正完了を入力した場合、前記対象ブロックの画素値列を前記メモリに格納し、前記ブロック境界評価手段が、前記メモリから、前記対象ブロックと前記参照ブロックとの境界領域における前記参照ブロックの画素値列を読み出し、前記境界領域における前記対象ブロックの画素値列と、前記境界領域における前記参照ブロックの画素値列との差分を定量化した評価値を算出し、前記変換係数補正手段が、前記ブロック境界評価手段により算出された前記評価値を小さくするように、前記変換係数記憶手段に格納された前記変換係数列のうち直流成分に近い所定数の前記変換係数を繰り返し補正し、前記補正の回数が所定回数と等しくなった場合、または、前記評価値の減少量が所定の閾値以下となった場合、前記補正完了を前記逆直交変換手段に出力する、ことを特徴とする。
【発明の効果】
【００２３】
以上のように、本発明によれば、圧縮符号化された画像の復号処理において、高精度かつ低演算コストに逆量子化処理を行うことが可能となり、画質劣化を改善することができる。
【図面の簡単な説明】
【００２４】
【図１】従来の量子化前の変換係数と逆量子化後の変換係数との関係を示す図である。
【図２】画像復号処理の対象である対象ブロックと既に画像復号された参照ブロックとの境界領域を示す図である。
【図３】本発明の実施形態による画像復号装置の構成の一例を示すブロック図である。
【図４】本発明の実施形態における逆変換部の構成の一例を示すブロック図である。
【図５】ブロック内の空間周波数の低い所定数の変換係数を変更対象とする例を説明する図である。
【図６】逆変換部の処理の一例を示すフローチャートである。
【図７】本発明の他の実施形態による画像復号装置の構成の一例を示すブロック図である。
【図８】本発明の他の実施形態における逆変換部の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００２５】
以下、本発明を実施するための形態について図面を用いて詳細に説明する。
〔本発明の概要〕
まず、本発明の概要について説明する。一般に、符号化側の画像符号化装置は、符号化対象の画像を入力すると、当該画像（入力画像）を複数の部分領域（ブロック）に分割し、ブロック単位に、ブロックの画素値、またはブロックの画素値から予測画像の画素値を減じた残差画像の画素値に対し、離散コサイン変換等の直交変換を行い、変換結果の変換係数列に対し量子化を行い、量子化インデックス列を生成する。そして、画像符号化装置は、量子化インデックス列に対しエントロピー符号化を行い、符号化ストリームとして出力する。
【００２６】
このような直交変換処理及び量子化処理は、画像のフレームが複数のブロックに分割された当該ブロック単位に行われる。画像符号化装置は、量子化処理において、ブロックの変換係数列につき、いずれの基底関数（離散コサイン変換を用いる場合には空間周波数）を適用したかに応じて、同値とは限らない量子化ステップを用いて量子化を行い、量子化インデックス列を生成する。空間周波数毎に適用すべき量子化ステップを表にしたものは、量子化テーブルと呼ばれる。量子化テーブルは、通例、低い空間周波数に対する量子化ステップほど小さい（細かい）値が設定されている。さらに、量子化テーブルは複数存在し、そのいずれを用いるかは、量子化パラメータ（ＱＰ：Quantization Parameter）の値によってユーザが指定する。
【００２７】
つまり、画像符号化装置は、量子化処理において、量子化パラメータが示す量子化テーブルを特定し、量子化テーブルに定義されている量子化ステップ（空間周波数毎の量子化ステップ）を用いて、ブロックの変換係数列のそれぞれ（空間周波数毎の変換係数）を、量子化インデックスに変換し、ブロックの量子化インデックス列を生成する。
【００２８】
具体的には、画像符号化装置は、以下の式を用いて、変換係数列を構成する変換係数値Ｔを、量子化ステップＱを用いて量子化し、量子化インデックス列を構成する量子化インデックスｉを算出する。
【数１】
0006700877.tif 000002
【００２９】
ここで、関数roundは、引数に与えられた実数値を整数化する丸め処理を表す。round処理は、例えば、以下の式のとおりである。
【数２】
0006700877.tif 000003
【００３０】
一方で、復号側の画像復号装置は、画像符号化装置から符号化ストリームを入力し、符号化ストリームに対しエントロピー復号を行い、量子化インデックス列を生成する。そして、画像復号装置は、量子化インデックス列に対し逆量子化を行い、変換係数を生成し、変換係数に対し、逆離散コサイン変換等の逆直交変換を行い、元のブロックの画素値または残差画像の画素値を生成し、元の画像を復号画像として復元する。
【００３１】
このような逆量子化処理及び逆直交変換処理は、ブロック単位に行われる。画像復号装置は、逆量子化処理において、量子化パラメータが示す量子化テーブルを特定し、量子化テーブルに定義されている量子化ステップ（空間周波数毎の量子化ステップ）を用いて、量子化インデックス列を構成する量子化インデックスを、変換係数列を構成する変換係数（空間周波数毎の変換係数）に変換し、変換係数列を生成する。量子化パラメータは、画像符号化装置から入力した符号化ストリームに含まれており、符号化ストリームがエントリピー復号されることで得られる。
【００３２】
具体的には、画像復号装置は、以下の式を用いて、量子化インデックス列を構成する量子化インデックスｉを、量子化ステップＱを用いて逆量子化し、変換係数列を構成する変換係数Ｕを算出する。つまり、画像復号装置は、量子化インデックスｉに量子化ステップＱを乗算することで、逆量子化後の変換係数Ｕを求める。
【数３】
0006700877.tif 000004
【００３３】
図１は、従来の量子化前の変換係数と逆量子化後の変換係数との関係の一例を示す図である。横軸は、量子化前の変換係数Ｔｎを示し、縦軸は、逆量子化後の変換係数Ｕｎを示す。量子化インデックス（ｉｎ）は、量子化ステップＱ＝４のときの値を示している。図１において、Ｔ，Ｕ，ｉの右側のｎは、ブロック内において、空間周波数に対応した番号を示す。
【００３４】
画像符号化装置の量子化処理において、量子化前の変換係数Ｔ（以下、ｎは省略する。）に応じて、図１の（）で示した量子化インデックスｉが求められる。例えば、量子化前の変換係数Ｔ＝３のとき、量子化インデックスｉ＝１が求められる。また、画像復号装置の逆量子化処理において、図１の（）で示した量子化インデックスｉに応じて、逆量子化後の変換係数Ｕが求められる。例えば、量子化インデックスｉ＝１のとき、逆量子化後の変換係数Ｕ＝４が求められる。
【００３５】
量子化前の変換係数Ｔが６以上１０未満の場合（図１の両矢印の箇所を参照）、量子化インデックスｉは全てｉ＝２となり、量子化インデックスｉ＝２の場合、逆量子化後の変換係数Ｕは、全てＵ＝８に対応付けられる（図１の片矢印の箇所を参照）。このため、この逆量子化処理では、量子化前の変換係数Ｔを正確に再現することはできない。
【００３６】
そこで、本発明の逆量子化処理では、例えば、量子化インデックスｉ＝２の場合、逆量子化後の変換係数を単純にＵ＝８に対応付けるのではなく、逆量子化後の変換係数Ｕを、４以上９未満の中の最適な数値に対応付けることを特徴とする。逆量子化後の変換係数Ｕを最適な数値に対応付ける処理は、後述する図２にて説明するとおり、画像復号処理の対象である対象ブロックと既に画像復号された参照ブロックとの境界領域において、画素値が可能な限り連続的に接続されるように行われる。
【００３７】
図２は、画像復号処理の対象である対象ブロックと既に画像復号された参照ブロックとの境界領域を示す図である。対象ブロックの画像復号処理において、対象ブロックの上側の参照ブロック及び左側の参照ブロックが既に画像復号済みである場合を想定する。
【００３８】
対象ブロックと上側の参照ブロックとの間における境界領域の画素は、対象ブロックの上端に位置する画素ｈ（０，０）〜ｈ（７，０）、及び上側の参照ブロックの下端に位置する画素ａ（０，Ｖ）〜ａ（７，Ｖ）である。また、対象ブロックと左側の参照ブロックとの間における境界領域の画素は、対象ブロックの左端に位置する画素ｈ（０，０）〜ｈ（０，７）、及び左側の参照ブロックの右端に位置する画素ｂ（Ｈ，０）〜ｂ（Ｈ，７）である。
【００３９】
本発明の逆量子化処理では、図２に示した境界領域のように、逆量子化の対象である対象ブロックと、既に復号済みの１以上の参照ブロックとの間の境界に注目する。つまり、逆量子化処理の後に逆直交変換処理を行った結果の画素値が、この境界において可能な限り連続的に接続されるように（例えば、境界領域の画素対（対象ブロックの画素、及び境界を挟んでこれに対応する参照ブロックの画素）の画素値が所定範囲内の値となるように）、対象ブロックの変換係数を繰り返し補正することで、逆量子化後の変換係数Ｕを求める。
【００４０】
これにより、ブロックの境界領域で発生するブロック歪み等による局所的な画像の劣化を改善することができる。
【００４１】
尚、図２に示した境界領域は、対象ブロックと参照ブロックとが接する境界において、対象ブロックの１画素及び参照ブロックの１画素からなる１画素対の領域である。本発明の逆量子化処理では、境界領域として１画素対の領域だけでなく、２画素以上の所定画素数で対となる領域に着目し、この境界領域において画素値が連続するように、対象ブロックの変換係数を繰り返し補正するようにしてもよい。
【００４２】
〔画像復号装置〕
次に、本発明の実施形態による画像復号装置について説明する。図３は、本発明の実施形態による画像復号装置の構成の一例を示すブロック図である。この画像復号装置１は、エントロピー復号部１１、逆変換部１２及びメモリ部１３を備えている。画像復号装置１は、画像の画素値に対して、逆量子化処理及び逆直交変換処理を行う。
【００４３】
エントロピー復号部１１は、画像符号化装置から、画像のブロックの画素値列が符号化されたストリーム（符号化ストリーム）を入力し、符号化ストリームにエントリピー復号を施し、ブロックの量子化インデックス列を生成する。そして、エントロピー復号部１１は、ブロックの量子化インデックス列を逆変換部１２に出力する。
【００４４】
逆変換部１２は、エントロピー復号部１１からブロックの量子化インデックス列を入力し、量子化インデックス列に逆量子化を施し、ブロックの変換係数列を生成し、ブロックの変換係数列に逆直交変換を施し、ブロックの画素値列を生成する。そして、逆変換部１２は、当該ブロックを対象ブロックとし、メモリ部１３から、対象ブロックに隣接する参照ブロックの画素値列のうち、対象ブロックとの間の境界領域における画素値列を読み出す。
【００４５】
逆変換部１２は、生成した対象ブロックの画素値列のうち境界領域の画素値列と、参照ブロックの境界領域における画素値列との間の差分を算出し、当該差分に基づいて、境界領域の不連続性を示す評価値Ｅを算出する。そして、逆変換部１２は、評価値Ｅが減少するように（境界領域の不連続性が減少するように（境界領域が連続するように））、変換係数列の一部または全部を補正し、補正後の変換係数列に逆直交変換を施し、対象ブロックの画素値列を生成する。
【００４６】
逆変換部１２は、このような補正処理を繰り返し行い、補正処理の繰り返しが完了したときに、対象ブロックの画素値列をメモリ部１３に格納する。逆変換部１２の処理の詳細については後述する。
【００４７】
メモリ部１３には、逆変換部１２により逆量子化処理及び逆変換処理が行われた対象ブロックの画素値列が、対応するブロックの位置に順次格納される。これにより、メモリ部１３には、復号画像が順次形成される。
【００４８】
画像復号装置１は、メモリ部１３内に復号画像が完全に形成された後、メモリ部１３から復号画像を読み出し、外部へ出力する。
【００４９】
〔逆変換部１２〕
次に、図３に示した逆変換部１２について詳細に説明する。図４は、逆変換部１２の構成の一例を示すブロック図である。この逆変換部１２は、逆量子化初期化手段１２１、変換係数記憶手段１２２、逆直交変換手段１２３、ブロック境界評価手段１２４及び変換係数補正手段１２５を備えている。
【００５０】
逆量子化初期化手段１２１は、エントロピー復号部１１から量子化インデックス列（ｉn）n=0,1,・・,N-1を入力し、各量子化インデックスに逆量子化を施し、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を求める。そして、逆量子化初期化手段１２１は、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を変換係数記憶手段１２２に格納する。ここで、Ｎは、ブロック内の量子化インデックスまたは変換係数の数であり、１以上の整数である。
【００５１】
例えば、逆量子化初期化手段１２１は、以下の式により、量子化インデックス列（ｉn）n=0,1, ・・,N-1に、量子化テーブルに格納された量子化ステップ列（Ｑn）n=0,1, ・・,N-1を乗算することで逆量子化し、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を求める。
【数４】
0006700877.tif 000005
【００５２】
変換係数記憶手段１２２は、逆量子化初期化手段１２１により格納される変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を記憶し、後述する変換係数補正手段１２５により格納される変換係数列の補正値を記憶する。
【００５３】
つまり、変換係数記憶手段１２２には、逆量子化初期化手段１２１が動作する初期化時のみ、逆量子化初期化手段１２１により変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1が格納され、初期化時以外のときに、後述する変換係数補正手段１２５により変換係数列の補正値が格納される。このように、変換係数記憶手段１２２には、変換係数列（Ｕn(k)）n=0,1, ・・,N-1が格納される。ｋは、繰り返しの回数を表す０以上の整数である。
【００５４】
逆直交変換手段１２３は、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1を読み出し、変換係数列（Ｕn(k)）n=0,1, ・・,N-1に逆離散コサイン変換等の逆直交変換を施し、復号画像の画素値列を生成する。そして、逆直交変換手段１２３は、生成した復号画像の画素値列（対象ブロックの画素値列）のうち、参照ブロック（後述するブロック境界評価手段１２４の処理に用いる参照ブロック）との間の境界領域における画素値列（対象ブロックの境界領域の画素値列）をブロック境界評価手段１２４に出力する。この場合、逆直交変換手段１２３は、後述する変換係数補正手段１２５により補正が繰り返されることに伴い、逆直交変換を繰り返して行う。
【００５５】
また、逆直交変換手段１２３は、変換係数補正手段１２５から補正完了を入力した場合、変換係数の補正が完了したものと判断し、生成済みの画素値列を確定し、対象ブロックの画素値列（Ｕn）n=0,1, ・・,N-1としてメモリ部１３に格納する。
【００５６】
ブロック境界評価手段１２４は、逆直交変換手段１２３から対象ブロックの境界領域の画素値列を入力すると共に、メモリ部１３から、対象ブロックに隣接する参照ブロックの画素値列（補正完了にて確定しているブロックの画素値列）のうち、対象ブロックとの間の境界領域における画素値列（参照ブロックの境界領域の画素値列）を読み出す。そして、ブロック境界評価手段１２４は、対象ブロックの境界領域の画素値列と参照ブロックの境界領域の画素値列とを比較し、ブロック境界（ブロック間の境界領域）の不連続性を定量化し、評価値Ｅを算出する。
【００５７】
ブロック境界評価手段１２４は、ブロック境界の不連続性を示す評価値Ｅを変換係数補正手段１２５に出力する。この場合、ブロック境界評価手段１２４は、後述する変換係数補正手段１２５により補正が繰り返され、逆直交変換手段１２３により逆直交変換が繰り返されることに伴い、評価値Ｅを繰り返し算出する。
【００５８】
例えば、ブロック境界評価手段１２４は、対象ブロックの境界領域の画素値列と参照ブロックの境界領域の画素値列とを比較し（図２を参照）、以下の式により、そのノルムにより定義される量の総和（例えば二乗和）を、ブロック境界の不連続性を示す評価値Ｅとして求める。
【数５】
0006700877.tif 000006
【００５９】
ここで、ｉは、ｉ∈（対象ブロックと参照ブロック（上）に接する画素の水平座標の全て）を示し、ｊは、ｊ∈（対象ブロックと参照ブロック（左）に接する画素の垂直座標の全て）を示す。また、引数Ｖは、参照ブロック（上）の垂直方向の画素数から１を減じた値であり、引数Ｈは、参照ブロック（左）の水平方向の画素数から１を減じた値である。また、対象ブロックと参照ブロックとの大きさが異なる場合、または辺の一部のみを接する場合には、対象ブロックと参照ブロックとで接している画素についてのみ、前記数式（５）の演算を行う。
【００６０】
変換係数補正手段１２５は、ブロック境界評価手段１２４からブロック境界の不連続性を示す評価値Ｅを入力し、評価値Ｅが小さくなるように（ブロック境界が連続するように）、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1を繰り返し補正し、その補正結果である変換係数列（Ｕn(k+1)）n=0,1, ・・,N-1を変換係数記憶手段１２２に格納する。
【００６１】
また、変換係数補正手段１２５は、繰り返し補正の回数と所定回数とを比較し、繰り返し補正の回数が所定回数と等しくなった場合に、変換係数の補正が完了したものと判断し、補正完了を逆直交変換手段１２３に出力する。変換係数補正手段１２５は、繰り返し補正の回数が所定回数よりも小さい限り、繰り返し補正の処理を継続する。繰り返し補正の回数は、変換係数が補正され、その結果、当該変換係数に対応する評価値Ｅが小さくなった回数であってもよいし、変換係数が補正され、当該変換係数に対応する評価値Ｅを入力した回数であってもよい。
【００６２】
尚、変換係数補正手段１２５は、ブロック境界の不連続性を示す評価値Ｅの変化量（減少量）と所定の閾値とを比較し、評価値Ｅの変化量（減少量）が閾値以下となった場合に、変換係数の補正が完了したものと判断し、補正完了を逆直交変換手段１２３に出力するようにしてもよい。また、変換係数補正手段１２５は、前述の繰り返し補正の回数と所定回数との比較処理、及び評価値Ｅの変化量（減少量）と所定の閾値との比較処理を組み合わせ、いずれかの条件を満たした場合、またはいずれか一方の条件を最初に満たした場合に、変換係数の補正が完了したものと判断し、補正完了を逆直交変換手段１２３に出力するようにしてもよい。
【００６３】
また、変換係数補正手段１２５は、変換係数の補正を１回のみ行うようにしてもよい。この場合、変換係数補正手段１２５は、第１回目の変換係数の補正を行った後、ブロック境界評価手段１２４から評価値Ｅを入力した場合に、補正完了を逆直交変換手段１２３に出力する。
【００６４】
これにより、逆直交変換手段１２３は、変換係数補正手段１２５から補正完了を入力すると、変換係数の補正が完了したものと判断し、生成済みの対象ブロックの画素値列を確定し、メモリ部１３に格納する。つまり、対象ブロックについて、変換係数記憶手段１２２に格納された逆量子化後の変換係数（Ｕn(k)）n=0,1, ・・,N-1が繰り返し補正され、ブロック境界の不連続性が所定の条件において最も低くなる最終的な変換係数列（Ｕn）n=0,1, ・・,N-1が導出される。そして、ブロック境界の不連続性が所定の条件において最も低くなる最終的な変換係数列（Ｕn）n=0,1, ・・,N-1に対応した画素値列が、メモリ部１３に格納される。
【００６５】
（変換係数列の繰り返し補正処理の具体例）
ここで、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1を繰り返し補正する処理の具体例について説明する。変換係数補正手段１２５は、例えばレーベンバーグマーカート法（Levenberg Marquardt Method）を用いて、変換係数列（Ｕn(k)）n=0,1, ・・,N-1を繰り返し補正する。
【００６６】
具体的には、変換係数補正手段１２５は、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち１以上の所定数の変換係数を、所定量だけ増加または減少（変更）させる。そして、変換係数補正手段１２５は、その結果の評価値Ｅ２と前回の評価値Ｅ１とを比較し、評価値Ｅ２が評価値Ｅ１よりも小さい場合に、その所定数の変換係数の増加または減少（変更）を確定する。
【００６７】
変換係数補正手段１２５は、さらに同じ所定数の変換係数を変更、または他の変換係数を変更し、その結果の評価値Ｅ３と前回の評価値Ｅ２とを比較し、評価値Ｅ３が評価値Ｅ２よりも小さい場合に、その変更を確定する。
【００６８】
一方、変換係数補正手段１２５は、評価値Ｅ２が評価値Ｅ１以上の場合、または、評価値Ｅ３が評価値Ｅ２以上の場合に、その変更を取り消し、元の変換係数に戻す。そして、変換係数補正手段１２５は、同じ変換変数を逆方向に変更（増加を取り消した場合は減少、減少を取り消した場合は増加）したり、他の変換係数を変更したりすることで、変換係数を確定する。
【００６９】
このように、変換係数補正手段１２５は、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち所定数の変換係数の変更を行い、評価値Ｅが以前の値よりも小さい場合に、その変更を確定し、評価値Ｅが以前の値以上の場合に、その変更を取り消す。このような繰り返し補正処理を行うことにより、補正結果である変換係数列（Ｕn(k+1)）n=0,1, ・・,N-1が変換係数記憶手段１２２に格納される。
【００７０】
尚、変換係数補正手段１２５は、変換係数を変更する際に、当該変換係数について、量子化処理した結果が量子化インデックスと一致する範囲内に限り、変更することができる。例えば、変換係数に対応する量子化インデックスがｉnであった場合、量子化ステップをＱとして、当該変換係数の変更後の値Ｕn(k+1)は、（ｉn−０．５）・Ｑ≦Ｕn(k+1)＜（ｉn＋０．５）・Ｑを満たさなければならない。
【００７１】
また、変換係数補正手段１２５が変更の対象とする変換係数は、変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち全ての変換係数であってもよいし、一部の変換係数であってもよい。変換係数補正手段１２５が、変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち一部の変換係数を変更する場合、例えば、変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち空間周波数（水平周波数及び垂直周波数）の低い方から所定数の変換係数のみを変更対象とするようにしてもよい。
【００７２】
図５は、ブロック内の空間周波数の低い所定数の変換係数を変更対象とする例を説明する図である。横軸は水平周波数を示し、縦軸は垂直周波数を示し、左上端は直流成分を示す。ブロック内において、網掛けを施した所定数の変換係数が変更対象である。
【００７３】
図５に示すように、変換係数補正手段１２５は、ブロック内の変換係数列（Ｕn(k)）n=0,1, ・・,N-1のうち、空間周波数の最も低い直流成分から所定周波数までの間の複数の変換係数であって、直流成分に近い所定数の変換係数を変更対象に設定し、当該所定数の変換係数の変更を繰り返し、補正結果である変換係数列（Ｕn(k+1)）n=0,1, ・・,N-1を生成する。
【００７４】
これにより、空間周波数の低い所定数の変換係数を変更対象（補正対象）とすることで、評価値Ｅを効率的に減少させることができる。したがって、ブロックの境界領域において、連続した画素値を効率的に得ることができ、結果として、ブロック歪み等による局所的な画像の劣化を改善することができる。これは、空間周波数の高い領域よりも低い領域の変換係数列の方が、ブロック歪み等に大きく影響するからである。
【００７５】
ここで、変換係数補正手段１２５は、図５に示した変更対象である網掛けを施した変換係数列について、低い空間周波数から高い空間周波数へ順番に、変換係数を補正するようにしてもよい。具体的には、変換係数補正手段１２５は、図５に示した変更対象の変換係数列のうち、最初に、空間周波数の直流成分の変換係数列を補正する。そして、変換係数補正手段１２５は、直流成分に近い（低い）空間周波数から高い空間周波数へ移行するように、変換係数列を順番に補正する。
【００７６】
変換係数補正手段１２５は、最初の変換係数について、評価値Ｅが小さくなるように、所定量だけ変更し、前述の繰り返し補正の回数と所定回数との比較処理の条件を満たすまで、当該変換係数を補正する。そして、変換係数補正手段１２５は、最初の変換係数につき前述の条件を満たした場合に、次の変換係数について、評価値Ｅが小さくなるように、所定量だけ変更し、前述の繰り返し補正の回数と所定回数との比較処理の条件を満たす限り、当該変換係数を補正する。
【００７７】
変換係数補正手段１２５は、このような処理を、変更対象の全ての変換係数列について行い、変更対象の全ての変換係数列について補正が完了したときに、補正完了を逆直交変換手段１２３に出力する。この場合、変換係数補正手段１２５は、変換係数列を順番に補正する処理の中で、評価値Ｅの変化量（減少量）と所定の閾値との比較処理の条件を満たした場合、補正が完了したとして、補正完了を逆直交変換手段１２３に出力するようにしてもよい。
【００７８】
これにより、空間周波数の低い所定数の変換係数について、低い空間周波数から高い空間周波数へと変換係数を順番に補正する（低い空間周波数の変換係数を優先して補正する）ことで、評価値Ｅを一層効率的に減少させることができる。したがって、ブロック歪み等による局所的な画像の劣化を改善することができる。これは、空間周波数が低い変換係数であるほど、ブロック歪み等に大きく影響するからであり、例えば、直流成分の変換係数が、ブロック歪み等に最も影響する可能性が高いからである。
【００７９】
（逆変換部１２の処理）
次に、図４に示した逆変換部１２の処理について詳細に説明する。図６は、逆変換部１２の処理の一例を示すフローチャートである。まず、逆変換部１２の逆量子化初期化手段１２１は、エントロピー復号部１１から量子化インデックス列（ｉn）n=0,1, ・・,N-1を入力する（ステップＳ７０１）。そして、逆量子化初期化手段１２１は、各量子化インデックスに逆量子化を施し、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を求め（ステップＳ７０２）、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1を変換係数記憶手段１２２に格納する（ステップＳ７０３）。
【００８０】
逆直交変換手段１２３は、変換係数記憶手段１２２に格納された変換係数列（Ｕn(k)）n=0,1, ・・,N-1を読み出し、変換係数列（Ｕn(k)）n=0,1, ・・,N-1に逆直交変換を施し、対象ブロックの画素値列を生成する（ステップＳ７０４）。最初は、変換係数列の初期値（Ｕn(0)）n=0,1, ・・,N-1に対し、逆直交変換が施される。
【００８１】
ブロック境界評価手段１２４は、逆直交変換手段１２３により逆直交変換された対象ブロックの画素値列のうち、当該対象ブロックに隣接する参照ブロックとの間の境界領域における画素値列と、当該対象ブロックに隣接する参照ブロックの画素値列のうち、対象ブロックとの間の境界領域における画素値列とを比較し、ブロック境界の不連続性を示す評価値Ｅを算出する（ステップＳ７０５）。
【００８２】
変換係数補正手段１２５は、ブロック境界評価手段１２４により算出された今回の評価値Ｅが前回の評価値Ｅよりも小さいか否か（ブロック境界が連続するように変化したか否か）を判定する（ステップＳ７０６）。変換係数補正手段１２５は、ステップＳ７０６において、今回の評価値Ｅが前回の評価値Ｅよりも小さい（ブロック境界が連続するように変化した）と判定した場合（ステップＳ７０６：Ｙ）、ステップＳ７０７へ移行する。一方、変換係数補正手段１２５は、ステップＳ７０６において、今回の評価値Ｅが前回の評価値Ｅよりも小さくない（ブロック境界が連続するように変化していない）と判定した場合（ステップＳ７０６：Ｎ）、ステップＳ７０８へ移行する。
【００８３】
変換係数補正手段１２５は、今回の評価値Ｅが前回の評価値Ｅよりも小さい場合、ステップＳ７０６から移行して、後述するステップＳ７０８の補正処理の回数（補正回数）が所定回数よりも小さいか否かを判定する（ステップＳ７０７）。変換係数補正手段１２５は、ステップＳ７０７において、後述するステップＳ７０８の補正処理の回数（補正回数）が所定回数よりも小さいと判定した場合（ステップＳ７０７：Ｙ）、ステップＳ７０８へ移行する。一方、変換係数補正手段１２５は、ステップＳ７０７において、後述するステップＳ７０８の補正処理の回数（補正回数）が所定回数よりも小さくないと判定した場合（ステップＳ７０７：Ｎ）、ステップＳ７０９へ移行する。
【００８４】
変換係数補正手段１２５は、今回の評価値Ｅが前回の評価値Ｅよりも小さくない場合、ステップＳ７０６から移行して、または、後述するステップＳ７０８の補正処理の回数（補正回数）が所定回数よりも小さい場合、ステップＳ７０７から移行して、変換係数列（Ｕn(k)）n=0,1, ・・,N-1の一部または全部を補正する。そして、変換係数補正手段１２５は、変換係数列の補正値（Ｕn(k+1)）n=0,1, ・・,N-1を決定し、変換係数記憶手段１２２に格納し（ステップＳ７０８）、ステップＳ７０４へ移行する。これにより、補正後の変換係数列に対して逆直交変換が施され、評価値Ｅが算出され、ブロック境界の不連続性が評価される。
【００８５】
尚、変換係数補正手段１２５は、今回の評価値Ｅが前回の評価値Ｅよりも小さくない場合、ステップＳ７０６から移行して、すなわち、ブロック境界が連続するように変化していない場合、既に補正した変換係数を取り消すために、変換係数記憶手段１２２に格納した変換係数を削除する。そして、変換係数補正手段１２５は、ステップＳ７０８において、補正前の変換係数列（Ｕn(k)）n=0,1, ・・,N-1を基準として、その一部または全部を新たに補正する。
【００８６】
変換係数補正手段１２５は、ステップＳ７０８の補正処理の回数（補正回数）が所定回数よりも小さくない場合、ステップＳ７０７から移行して、変換係数の補正が完了したものと判断する（ステップＳ７０９）。そして、逆直交変換手段１２３は、ステップＳ７０４にて既に生成済みの画素値列（変換係数記憶手段１２２に格納されている最新の変換係数列（Ｕn(k)）n=0,1, ・・,N-1に対応する画素値列）を確定し、対象ブロックの画素値列（Ｕn）n=0,1, ・・,N-1として出力し、メモリ部１３に格納する（ステップＳ７１０）。
【００８７】
以上のように、本発明の実施形態の画像復号装置１によれば、逆変換部１２のブロック境界評価手段１２４は、逆直交変換手段１２３により逆直交変換された対象ブロックの境界領域の画素値列と、当該対象ブロックに隣接する参照ブロックの境界領域の画素値列とを比較し、ブロック境界の不連続性を示す評価値Ｅを算出する。そして、変換係数補正手段１２５は、評価値Ｅが小さくなるように（ブロック境界が連続するように）、変換係数列を繰り返し補正する。
【００８８】
変換係数補正手段１２５は、繰り返し補正の回数が所定回数と等しくなったと判定し、変換係数の補正が完了したものと判断する。そして、逆直交変換手段１２３は、変換係数の補正が完了したときの当該変換係数から生成した画素値列を、対象ブロックの画素値列として確定する。
【００８９】
これにより、対象ブロックと参照ブロックとの境界領域の画素値列について、このブロック境界の不連続性が低くなるように（連続性が高くなるように）、対象ブロックの境界領域の変換係数が繰り返し補正され、符号化側における量子化前の変換係数に近い値が求められる。したがって、ブロックの境界領域で発生するブロック歪み等による局所的な画像の劣化を改善することができる。つまり、圧縮符号化された画像の復号処理において、高精度かつ低演算コストに逆量子化処理を行うことが可能となり、画質の劣化を改善することができる。
【００９０】
既存の画像符号化方式（例えばＪＰＥＧ）及び既存の映像符号化方式（ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４  ＡＶＣ、ＭＰＥＧ−Ｈ  ＨＥＶＣ等）を用いる符号化器及び復号器における逆量子化処理及び逆直交変換処理に代えて、図４及び図６に示した逆量子化処理及び逆直交変換処理を実装することにより、ブロック歪みの少ない高画質な画像符号化及び映像符号化を実現することができる。
【００９１】
〔画像復号装置／他の実施形態〕
次に、本発明の他の実施形態による画像復号装置について説明する。図７は、本発明の他の実施形態による画像復号装置の構成の一例を示すブロック図である。この画像復号装置２は、エントロピー復号部２１、逆変換部２２、メモリ部２３及びフレーム内／フレーム間予測部２４を備えている。画像復号装置２は、残差画像の画素値に対して、逆量子化処理及び逆直交変換処理を行う。
【００９２】
エントロピー復号部２１は、符号化側から、残差画像のブロックの画素値列が符号化されたストリーム（符号化ストリーム）を入力し、符号化ストリームにエントリピー復号を施し、ブロックの量子化インデックス列を生成する。そして、エントロピー復号部２１は、ブロックの量子化インデックス列を逆変換部２２に出力する。
【００９３】
逆変換部２２は、エントロピー復号部２１からブロックの量子化インデックス列を入力し、量子化インデックス列に逆量子化を施し、ブロックの変換係数列を生成し、ブロックの変換係数列に逆変換を施し、ブロックの残差画像の画素値列を生成する。そして、逆変換部２２は、ブロックの残差画像の画素値列に、後述するフレーム内／フレーム間予測部２４により生成された予測画像の画素値列を入力して加算し、ブロックの画素値列を求める。逆変換部２２は、当該ブロックを対象ブロックとし、メモリ部２３から、対象ブロックに隣接する参照ブロックの画素値列のうち、対象ブロックとの間の境界領域における画素値列を読み出す。
【００９４】
逆変換部２２は、対象ブロックの境界領域（参照ブロックとの間の境界領域）における画素値列と、参照ブロックの境界領域（対象ブロックとの間の境界領域）における画素値列との間の差分を算出し、当該差分に基づいて、境界領域の不連続性を表す評価値Ｅを算出する。そして、逆変換部２２は、評価値Ｅが減少するように（境界領域の不連続性が減少するように（境界領域が連続するように））、変換係数列の一部または全部を補正し、補正後の変換係数列に逆直交変換を施し、対象ブロックの残差画像の画素値列を生成する。逆変換部２２は、対象ブロックの残差画像の画素値列に予測画像の画素値列を加算し、対象ブロックの画素値列をメモリ部２３に格納する。逆変換部２２の詳細については後述する。
【００９５】
メモリ部２３には、逆変換部２２により逆量子化処理及び逆変換処理が行われた対象ブロックの画素値列が、対応するブロックの位置に順次格納される。これにより、メモリ部２３には、復号画像が順次形成される。
【００９６】
画像復号装置２は、メモリ部２３内に復号画像が完全に形成された後、メモリ部２３から復号画像を読み出し、復号画像を外部へ出力する。
【００９７】
フレーム内／フレーム間予測部２４は、メモリ部２３から、これまでに形成された復号画像（これまでに復号された他の時刻のフレームであってもよい）の画素値列を読み出し、フレーム内またはフレーム間におけるこれから処理すべき対象ブロック内の画素値列を予測的に合成し、予測画像の画素値列を生成する。フレーム内／フレーム間予測部２４は、予測画像の画素値列を逆変換部２２に出力する。
【００９８】
フレーム内／フレーム間予測部２４は、例えば、動きベクトル情報を利用する場合、動きベクトル情報に基づいて、他の時刻の復号画像の画素値列を空間的に移動させる（動き補償する）ことで、予測画像の画素値列を生成する。この場合、動き探索は行わない。
【００９９】
〔逆変換部２２〕
次に、図７に示した逆変換部２２について詳細に説明する。図８は、逆変換部２２の構成の一例を示すブロック図である。この逆変換部２２は、逆量子化初期化手段１２１、変換係数記憶手段１２２、逆直交変換手段２２１、加算手段２２２、ブロック境界評価手段１２４及び変換係数補正手段１２５を備えている。
【０１００】
逆変換部２２は、図４に示した逆変換部１２と基本的には同じ処理を行う。しかし、逆変換部２２は、残差画像に対応する量子化インデックス列を入力し、残差画像の画素値列を生成して予測画像の画素値列を加算することで復号画像の画素値列を生成する。これに対し、図４に示した逆変換部１２は、復号画像に対応する量子化インデックス列を入力し、復号画像の画素値列を生成する。
【０１０１】
図４に示した逆変換部１２とこの逆変換部２２とを比較すると、両逆変換部１２，２２は、逆量子化初期化手段１２１、変換係数記憶手段１２２、ブロック境界評価手段１２４及び変換係数補正手段１２５を備えている点で同一である。一方、逆変換部２２は、図４の逆直交変換手段１２３とは異なる逆直交変換手段２２１を備え、さらに加算手段２２２を備えている点で、逆変換部１２と相違する。
【０１０２】
逆量子化初期化手段１２１、変換係数記憶手段１２２、ブロック境界評価手段１２４及び変換係数補正手段１２５は、図４に示した構成部と同じであるから、ここでは説明を省略する。尚、変換係数補正手段１２５は、補正完了を加算手段２２２に出力する。
【０１０３】
逆直交変換手段２２１は、図４に示した逆直交変換手段１２３と同じ処理を行い、残差画像の画素値列を生成し、残差画像の画素値列を加算手段２２２に出力する。
【０１０４】
加算手段２２２は、逆直交変換手段２２１から残差画像の画素値列を入力すると共に、フレーム内／フレーム間予測部２４から予測画像の画素値列を入力する。そして、加算手段２２２は、対象ブロックの位置について、残差画像の画素値列に予測画像の画素値列を加算し、加算結果である対象ブロックの復号画像の画素値列を求める。
【０１０５】
加算手段２２２は、対象ブロックの復号画像の画素値列のうち、参照ブロックとの間の境界領域における画素値列（対象ブロックの境界領域の画素値列）をブロック境界評価手段１２４に出力する。この場合、加算手段２２２は、変換係数補正手段１２５により補正が繰り返されることに伴い、加算処理を繰り返して行う。逆直交変換手段２２１についても同様である。
【０１０６】
また、加算手段２２２は、変換係数補正手段１２５から補正完了を入力した場合、変換係数の補正が完了したものと判断し、加算済みの画素値列を確定し、対象ブロックの復号画像の画素値列をメモリ部２３に格納する。
【０１０７】
つまり、対象ブロックについて、変換係数記憶手段１２２に格納された逆量子化後の変換係数が繰り返し補正され、ブロック境界の不連続性が所定の条件において最も低くなる最終的な変換係数列が導出される。そして、ブロック境界の不連続性が所定の条件において最も低くなる最終的な変換係数列に対応した残差画像の画素値列に対し、予測画像の画素値列が加算され、加算結果の画素値列がメモリ部２３に格納される。
【０１０８】
以上のように、本発明の他の実施形態の画像復号装置２によれば、画像復号装置１と同様の効果を奏し、圧縮符号化された画像の復号処理において、高精度かつ低演算コストに逆量子化処理を行うことが可能となり、画質の劣化を改善することができる。
【０１０９】
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、前記実施形態では、符号化対象を画像として説明したが、この画像は、静止画に加え、動画像である映像を含む概念である。
【０１１０】
また、図７に示した本発明の他の実施形態の画像復号装置２は、さらに、逆変換部２２とメモリ部２３との間に、ループフィルタを備えるようにしてもよい。ループフィルタは、逆変換部２２から対象ブロックの画素値列を入力し、隣接するブロックの境界における歪みを低減するために、当該画素値列に対してフィルタ処理を施し、フィルタ処理後における対象ブロックの画素値列をメモリ部２３に格納する。ループフィルタには、例えばデブロッキングフィルタ、ＳＡＯ（Sample Adaptive Offset）、ＡＬＦ（Adaptive Loop Filter）等が用いられる。
【０１１１】
（評価値）
また、前記実施形態では、画像復号装置１，２における逆変換部１２，２２のブロック境界評価手段１２４は、対象ブロック及び参照ブロックにおけるブロック境界の不連続性を示す評価値Ｅを算出し、変換係数補正手段１２５は、ブロック境界の不連続性を示す評価値Ｅが小さくなるように、変換係数列を繰り返し補正するようにした。
【０１１２】
例えば、ブロック境界評価手段１２４は、対象ブロックと参照ブロックとの間の境界領域における対象ブロックの画素値列と、当該境界領域における参照ブロックの画素値列とを用いて、当該境界領域における画素対の画素値間のノルム（例えば、絶対値のノルム、二乗値のノルム、全変分値）により定義される数量の総和を評価値として用いるようにしてもよい。また、ブロック境界評価手段１２４は、ブロック境界の連続性を示す評価値Ｅ’を算出し、変換係数補正手段１２５は、ブロック境界の連続性を示す評価値Ｅ’が大きくなるように、変換係数列を繰り返し補正するようにしてもよい。
【０１１３】
（従来の処理と本発明の実施形態における処理との切り替え）
また、図３に示した本発明の実施形態による画像復号装置１において、対象ブロックの画像特徴量等に応じて、従来の逆量子化処理及び逆直交変換処理を、本発明の実施形態における逆変換部１２による逆量子化処理及び逆直交変換処理に切り替えるようにしてもよい。
【０１１４】
例えば、このような切り替えを行う画像復号装置１は、さらに、従来の逆量子化処理及び逆直交変換処理を行う従来の逆変換部、画像特徴量算出部及び切替部を備えている。画像特徴量算出部は、従来の逆変換部により生成された対象ブロックの画素値列、当該対象ブロックの周辺におけるブロックの画素値列、または、当該対象ブロックの画素値列及び当該対象ブロックの周辺におけるブロック（参照ブロック）の画素値列に基づいて、対象ブロックの境界付近の画像特徴量（例えば、アクティビティ（画像の変化度））を算出する。
【０１１５】
切替部は、画像特徴量算出部により算出された画像特徴量と所定の閾値とを比較し、画像特徴量が所定の閾値以下の場合に（例えば画像の変化度がさほど大きくない場合に）、従来の逆変換部により生成された対象ブロックの画素値列を確定し、対象ブロックの画素値列をメモリ部１３に格納する。一方、切替部は、画像特徴量が所定の閾値よりも大きい場合に（例えば画像の変化度が大きい場合に）、逆変換部１２に、本発明の実施形態における逆量子化処理及び逆直交変換処理を行わせる。
【０１１６】
尚、従来の逆変換部は、逆変換部１２に備えた逆量子化初期化手段１２１及び逆直交変換手段１２３（並びに変換係数記憶手段１２２）を用いるようにしてもよい。また、切替部は、画像特徴量算出部により算出された画像特徴量の代わりに、逆変換部１２に備えたブロック境界評価手段１２４により算出された評価値Ｅ（最初に算出された評価値Ｅ）を用いるようにしてもよい。この場合、切替部は、評価値Ｅが所定の閾値以下の場合に、既に生成済みの対象ブロックの画素値列を確定し、対象ブロックの画素値列をメモリ部１３に格納する。一方、切替部は、評価値Ｅが所定の閾値よりも大きい場合に、逆変換部１２に、本発明の実施形態における逆量子化処理及び逆直交変換処理を行わせる。
【０１１７】
図７に示した画像復号装置２についても同様である。この場合、切替部は、画像特徴量または評価値Ｅが所定の閾値以下の場合に、既に生成済みの対象ブロックの画素値列を確定し、対象ブロックの画素値列をメモリ部２３に格納する。
【０１１８】
これにより、画像特徴量が所定の閾値以下の場合（例えば画像の変化度がさほど大きくない場合）、処理負荷の低い従来の逆量子化処理及び逆直交変換処理を行わせることができ、全体として処理負荷を低減することができる。
【０１１９】
尚、前記画像復号装置１，２によるハードウェア構成としては、通常のコンピュータを使用することができる。画像復号装置１，２は、ＣＰＵ、ＲＡＭ等の揮発性の記憶媒体、ＲＯＭ等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。画像復号装置１に備えたエントロピー復号部１１、逆変換部１２及びメモリ部１３の各機能は、これらの機能を記述したプログラムをＣＰＵに実行させることによりそれぞれ実現される。また、画像復号装置２に備えたエントロピー復号部２１、逆変換部２２、メモリ部２３及びフレーム内／フレーム間予測部２４の各機能も、これらの機能を記述したプログラムをＣＰＵに実行させることによりそれぞれ実現される。
【０１２０】
これらのプログラムは、前記記憶媒体に格納されており、ＣＰＵに読み出されて実行される。また、これらのプログラムは、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。
【０１２１】
また、図３に示した画像復号装置１のエントロピー復号部１１からメモリ部１３までの各構成部の処理は、画像復号装置１に搭載される集積回路であるＬＳＩのチップにより実現されるようにしてもよい。これらは、個別に１チップ化されていてもよいし、これらの一部または全部が１チップ化されていてもよい。
【０１２２】
また、ＬＳＩの代わりに、集積度の異なるＶＬＳＩ、ＵＬＳＩ等のチップにより実現されるようにしてもよい。さらに、ＬＳＩ等のチップに限るものではなく、専用回路または汎用プロセッサを用いるようにしてもよいし、ＦＰＧＡ（Field Programmable Gate Array）を用いるようにしてもよい。図７に示した画像復号装置２のエントロピー復号部２１からメモリ部２３及びフレーム内／フレーム間予測部２４までの各構成部の処理についても同様である。
【符号の説明】
【０１２３】
１，２  画像復号装置
１１，２１  エントロピー復号部
１２，２２  逆変換部
１３，２３  メモリ部
２４  フレーム内／フレーム間予測部
１２１  逆量子化初期化手段
１２２  変換係数記憶手段
１２３，２２１  逆直交変換手段
１２４  ブロック境界評価手段
１２５  変換係数補正手段
２２２  加算手段
【図１】
0006700877.tif 000007
【図２】
0006700877.tif 000008
【図３】
0006700877.tif 000009
【図４】
0006700877.tif 000010
【図５】
0006700877.tif 000011
【図６】
0006700877.tif 000012
【図７】
0006700877.tif 000013
【図８】
0006700877.tif 000014