(57)【特許請求の範囲】
【請求項１】
画像信号に対する量子化処理を含むエンコード処理を実行するエンコーダと、
前記量子化処理における量子化パラメータを制御する制御部と
を備え、
前記制御部は、規定数のマクロブロックあたりの目標符号量と、直前に処理した所定数のマクロブロックに関する発生符号量との差に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定し、
前記規定数は、前記制御部によって可変に設定可能である、画像処理装置。
【請求項２】
前記制御部は、
現在の処理対象のマクロブロックに関する量子化パラメータを、基準値に対する増減値として決定し、
前記規定数のマクロブロックあたりの目標符号量と、直前に処理した当該規定数のマクロブロックに関する発生符号量との差に基づいて、前記増減値を決定する、請求項１に記載の画像処理装置。
【請求項３】
前記制御部は、直前に処理した前記規定数のマクロブロックに関する発生符号量が、最大許容符号量に応じて設定される所定のしきい値を超えている場合には、前回処理したマクロブロックに関する量子化パラメータに定数値を加算した値を、現在の処理対象のマクロブロックに関する量子化パラメータとして設定する、請求項２に記載の画像処理装置。
【請求項４】
前記制御部は、
直前の第１の所定数のマクロブロックに関して使用した発生符号量を求める第１の処理部と、
前記規定数である第２の所定数のマクロブロックあたりの目標符号量と、前記第１の処理部によって求められた前記発生符号量とに基づいて、現在の処理対象のマクロブロックを含む直後の第３の所定数のマクロブロックに関して使用可能な許容符号量を求める第２の処理部と、
前記第３の所定数のマクロブロックに関して使用が予想される予想符号量を求める第３の処理部と、
前記第２の処理部によって求められた前記許容符号量と、前記第３の処理部によって求められた前記予想符号量とに基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する第４の処理部と、
を有する、請求項１に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、動画像圧縮における符号量制御アルゴリズムに関する。
【背景技術】
【０００２】
符号量制御とは、発生符号量を制御することによって画質の最適化を図る技術である（例えば下記特許文献１，２参照）。現行の符号量制御アルゴリズムでは、ＧＯＰ（Group Of Picture）単位又はフレーム単位で符号量制御を行うものが一般的である。例えばフレーム単位の符号量制御では、１フレームに対する割り当て符号量が算出され、当該符号量を超えないように、フレーム内の各マクロブロックに対する量子化パラメータが制御される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−２１５４６０号公報
【特許文献２】特開平１０−２４３３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＧＯＰ単位又はフレーム単位の符号量を目標符号量として制御する方法では、目標コンスタントビットレートを得るための平均区間が長く、符号量のピーク値として比較的大きな値が許容されるため、画質の向上を図ることが可能である。しかしながら、平均区間が長いということはバッファ時間が大きいことを意味し、エンコード処理に伴う遅延量が必然的に大きくなる。従って、ＧＯＰ単位又はフレーム単位の符号量制御は、遅延制限の厳しくない状況での画像再生には適しているが、遅延制限の厳しい状況での画像再生には適していない。従って、遅延制限の厳しい状況での画像再生においては、画質よりも遅延量を優先することが望ましい。一方、遅延制限が厳しくない状況での画像再生においては、ＧＯＰ単位又はフレーム単位の符号量を目標符号量として制御することにより、遅延量よりも画質を優先することが望ましい。
【０００５】
本発明はかかる事情に鑑みて成されたものであり、画像再生の状況に応じて画質及び遅延量を適切に調整することが可能な画像処理装置を得ることを目的とするものである。
【課題を解決するための手段】
【０００６】
本発明の第１の態様に係る画像処理装置は、画像信号に対する量子化処理を含むエンコード処理を実行するエンコーダと、前記量子化処理における量子化パラメータを制御する制御部とを備え、前記制御部は、規定数のマクロブロックあたりの目標符号量と、直前に処理した所定数のマクロブロックに関する発生符号量との差に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定し、前記規定数は、前記制御部によって可変に設定可能であることを特徴とするものである。
【０００７】
第１の態様に係る画像処理装置によれば、制御部は、規定数のマクロブロックあたりの目標符号量と、直前に処理した所定数のマクロブロックに関する発生符号量との差に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する。そして、規定数は、制御部によって可変に設定可能である。従って、遅延制限の厳しい状況での画像再生においては、制御部によって規定数を比較的小さく設定することにより、画質よりも遅延量を優先することができる。また、遅延制限の厳しくない状況での画像再生においては、制御部によって規定数を比較的大きく設定することにより、遅延量よりも画質を優先することができる。その結果、画像再生の状況に応じて画質及び遅延量を適切に調整することが可能となる。
【０００８】
本発明の第２の態様に係る画像処理装置は、第１の態様に係る画像処理装置において特に、前記制御部は、現在の処理対象のマクロブロックに関する量子化パラメータを、基準値に対する増減値として決定し、前記規定数のマクロブロックあたりの目標符号量と、直前に処理した当該規定数のマクロブロックに関する発生符号量との差に基づいて、前記増減値を決定することを特徴とするものである。
【０００９】
第２の態様に係る画像処理装置によれば、制御部は、現在の処理対象のマクロブロックに関する量子化パラメータを、基準値に対する増減値として決定する。また、制御部は、規定数のマクロブロックあたりの目標符号量と、直前に処理した当該規定数のマクロブロックに関する発生符号量との差に基づいて、増減値を決定する。このように、規定数のマクロブロックあたりの目標符号量と直前に処理した当該規定数のマクロブロックに関する発生符号量との差に基づいて増減値を決定することにより、現在の処理対象のマクロブロックに関する量子化パラメータを、画像再生の状況に応じて適切に決定することが可能となる。
【００１０】
本発明の第３の態様に係る画像処理装置は、第２の態様に係る画像処理装置において特に、前記制御部は、直前に処理した前記規定数のマクロブロックに関する発生符号量が、最大許容符号量に応じて設定される所定のしきい値を超えている場合には、前回処理したマクロブロックに関する量子化パラメータに定数値を加算した値を、現在の処理対象のマクロブロックに関する量子化パラメータとして設定することを特徴とするものである。
【００１１】
第３の態様に係る画像処理装置によれば、制御部は、直前に処理した規定数のマクロブロックに関する発生符号量が、最大許容符号量に応じて設定される所定のしきい値を超えている場合には、前回処理したマクロブロックに関する量子化パラメータに定数値を加算した値を、現在の処理対象のマクロブロックに関する量子化パラメータとして設定する。このように、発生符号量がしきい値を超えている場合には強制的に量子化パラメータを大きく設定するという例外処理を行うことにより、発生符号量が最大許容符号量を超える事態を回避することが可能となる。
【００１２】
本発明の第４の態様に係る画像処理装置は、第１の態様に係る画像処理装置において特に、前記制御部は、直前の第１の所定数のマクロブロックに関して使用した発生符号量を求める第１の処理部と、前記規定数である第２の所定数のマクロブロックあたりの目標符号量と、前記第１の処理部によって求められた前記発生符号量とに基づいて、現在の処理対象のマクロブロックを含む直後の第３の所定数のマクロブロックに関して使用可能な許容符号量を求める第２の処理部と、前記第３の所定数のマクロブロックに関して使用が予想される予想符号量を求める第３の処理部と、前記第２の処理部によって求められた前記許容符号量と、前記第３の処理部によって求められた前記予想符号量とに基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する第４の処理部と、を有することを特徴とするものである。
【００１３】
第４の態様に係る画像処理装置によれば、第１の処理部は、直前の第１の所定数のマクロブロックに関して使用した発生符号量を求める。また、第２の処理部は、規定数である第２の所定数のマクロブロックあたりの目標符号量と、第１の処理部によって求められた発生符号量とに基づいて、現在の処理対象のマクロブロックを含む直後の第３の所定数のマクロブロックに関して使用可能な許容符号量を求める。また、第３の処理部は、第３の所定数のマクロブロックに関して使用が予想される予想符号量を求める。そして、第４の処理部は、第２の処理部によって求められた許容符号量と、第３の処理部によって求められた予想符号量とに基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する。このように、規定数である第２の所定数のマクロブロックあたりの目標符号量に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定することにより、現在の処理対象のマクロブロックに関する量子化パラメータを、画像再生の状況に応じて適切に決定することが可能となる。
【発明の効果】
【００１４】
本発明によれば、画像再生の状況に応じて画質及び遅延量を適切に調整することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】マクロブロック単位でのエンコード処理の一例を示す図である。
【図２】本発明の実施の形態１に係る画像処理装置の構成を示すブロック図である。
【図３】図２に示した制御部の構成例を示すブロック図である。
【図４】増減値の決定手法の一例を示す図である。
【図５】増減値の決定手法の一例を示す図である。
【図６】増減値の決定手法の一例を示す図である。
【図７】本発明の実施の形態２に係る画像処理装置の構成を示すブロック図である。
【図８】図７に示した制御部の構成例を示すブロック図である。
【図９】図８に示した第３処理部の構成例を示すブロック図である。
【図１０】図９に示した記憶部に記憶されているパラメータセットの第１の例を示す図である。
【図１１】図９に示した記憶部に記憶されているパラメータセットの第２の例を示す図である。
【図１２】属性値の決定手法の一例を示すフローチャートである。
【図１３】第４処理部によるパラメータセットの選択手法の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【００１７】
図１は、マクロブロック単位でのエンコード処理の一例を示す図である。図１には、行方向（横方向）に１２８０画素、列方向（縦方向）に７２０画素を有する１フレームの画像を例示している。１フレームは、行方向に１６画素ごと、列方向に１６画素ごとにマクロブロックとして分割される。従って、１フレームは、行方向に８０個、列方向に４５個のマクロブロックに分割される。なお、１行分に相当する８０個のマクロブロックの集合は、マクロブロックラインと称される。
【００１８】
＜実施の形態１＞
図２は、本発明の実施の形態１に係る画像処理装置１の構成を示すブロック図である。図２に示すように、画像処理装置１は、エンコーダ２及び制御部３を備えて構成されている。エンコーダ２は、ＭＰＥＧ−２又はＭＰＥＧ−４等の動画像に関する規格に準拠しており、圧縮符号化前の画像信号Ｓ１に対して量子化処理及び符号化処理等の画像処理を施すことにより、圧縮符号化後の画像信号Ｓ４を出力する。画像信号Ｓ４は、画像処理装置１から無線ＬＡＮ等によって表示装置（図示しない）に伝送され、表示装置において動画像が表示される。
【００１９】
制御部３には、画像信号Ｓ１，Ｓ４が入力されるとともに、１マクロブロックあたりの最大許容符号量を示す信号Ｓ２Ａと、１マクロブロックあたりの目標符号量を示す信号Ｓ２Ｂと、目標符号量の設定単位となるマクロブロックの個数（以下「規定数Ｚ」と称す）を設定するための基礎情報を示す信号Ｓ２Ｃとが入力される。ここで、１マクロブロックあたりの最大許容符号量は、画像処理装置１から表示装置への最大ビットレート（例えば１８Ｍｂｐｓ）と、動画像のフレームレート（例えば６０ｆｐｓ）と、１フレーム内のマクロブロックの総数（例えば３６００個）とに基づいて算出される。同様に、１マクロブロックあたりの目標符号量は、画像処理装置１から表示装置への目標ビットレート（例えば１４Ｍｂｐｓ）と、動画像のフレームレートと、１フレーム内のマクロブロックの総数とに基づいて算出される。
【００２０】
また、画像処理装置１が例えばテレビ会議システムに利用される場合には、カメラのズーム倍率を示す基礎情報が信号Ｓ２Ｃとして入力される。会議に出席している多数の人物を広角（つまり低いズーム倍率）で撮影している場合には、画像内で各人物の顔を区別するために高画質が要求される。従って、制御部３は、マクロブロックの規定数Ｚを比較的大きな値に設定する。例えば、規定数ＺをＧＯＰ単位又はフレーム単位に設定する。規定数Ｚを大きな値に設定することにより、遅延量は大きくなるが平均的な画質は向上する。つまり、制御部３は、遅延制限が厳しくない状況での画像再生においては、規定数Ｚを比較的大きな値に設定することにより、遅延量よりも画質を優先する。
【００２１】
一方、発言している一人の人物を望遠（つまり高いズーム倍率）で撮影している場合には、発言者の口の動きと音声とを同期させるために少ない遅延量が要求される。従って、制御部３は、マクロブロックの規定数Ｚを比較的小さな値に設定する。例えば、規定数Ｚを１フレーム内のマクロブロックの総数の１／３に設定する。規定数Ｚを小さな値に設定することにより、平均的な画質は低下するが遅延量は減少する。つまり、制御部３は、遅延制限が厳しい状況での画像再生においては、規定数Ｚを比較的小さな値に設定することにより、画質よりも遅延量を優先する。
【００２２】
なお、制御部３は、信号Ｓ２Ｃで与えられるズーム倍率に応じて、例えば１以上ＧＯＰ単位未満の範囲内で、規定数Ｚをダイナミックに変化させてもよい。また、規定数Ｚは、ＧＯＰ単位に限らず、任意のマクロブロック数（つまり任意の時間）に設定することが可能である。また、画像処理装置１は、テレビ会議システム以外の用途にも利用することが可能である。
【００２３】
制御部３は、これらの信号Ｓ１，Ｓ２Ａ〜Ｓ２Ｃ，Ｓ４に基づいて、エンコーダ２内での量子化処理における量子化パラメータを、制御信号Ｓ３によって制御する。
【００２４】
図３は、図２に示した制御部３の構成例を示すブロック図である。図３に示すように、制御部３は、全体評価値演算部１１０、部分評価値演算部１１１、パラメータ決定部１１２、記憶部１１３、及びビット数カウンタ１１４を備えて構成されている。画像信号Ｓ１は、全体評価値演算部１１０及び部分評価値演算部１１１に入力される。信号Ｓ２Ａ〜Ｓ２Ｃは、パラメータ決定部１１２に入力される。画像信号Ｓ４は、ビット数カウンタ１１４に入力される。制御信号Ｓ３は、パラメータ決定部１１２から出力される。
【００２５】
全体評価演算部１１０は、画像信号Ｓ１に基づいて、現在の処理対象のマクロブロックの全体領域に関する活発性評価値ａｃｔ１（詳細は後述）を算出する。部分評価値演算部１１１は、画像信号Ｓ１に基づいて、現在の処理対象のマクロブロックの複数の部分領域に関する活発性評価値の最小値ａｃｔ２（詳細は後述）を算出する。記憶部１１３には、後述する各種のしきい値や定数値等に関するデータが記憶されている。ビット数カウンタ１１４は、画像信号Ｓ４に基づいて発生符号量を求める。
【００２６】
以下、本実施の形態に係る画像処理装置１の動作について説明する。パラメータ決定部１１２は、現在の処理対象のマクロブロックに関する量子化パラメータＱＰ１を、基準値ＱＰ２に対する増減値ＱＰ３として決定する。つまり、パラメータ決定部１１２は、ＱＰ１＝ＱＰ２＋ＱＰ３なる演算を行うことにより、量子化パラメータＱＰ１を求める。
【００２７】
パラメータ決定部１１２は、現在の処理対象のマクロブロックから遡った規定数Ｚのマクロブロックに関する量子化パラメータの平均値を、基準値ＱＰ２として用いる。但し、先頭のマクロブロックに関しては、所定の定数値が基準値ＱＰ２として用いられる。また、処理済みのマクロブロックの総数が規定数Ｚに満たない場合には、処理済みのマクロブロックに関する量子化パラメータの平均値が基準値ＱＰ２として用いられる。
【００２８】
また、パラメータ決定部１１２は、ＱＰ３＝ＱＰ３Ａ＋ＱＰ３Ｂ＋ＱＰ３Ｃなる演算を行うことにより、増減値ＱＰ３を求める。
【００２９】
具体的に、パラメータ決定部１１２は、規定数Ｚのマクロブロックあたりの目標符号量と、直前に処理した規定数Ｚのマクロブロックに関する発生符号量との差（ΔＢ１＝発生符号量−目標符号量）に基づいて、増減値ＱＰ３Ａを決定する。図４は、増減値ＱＰ３Ａの決定手法の一例を示す図である。この例では、パラメータ決定部１１２によって規定数Ｚが８０（つまり１マクロブロックライン相当）に設定されている。差ΔＢ１がしきい値Ｔｈ００（例えば−１０００ビット）未満である場合には、増減値ＱＰ３Ａは値α０（例えば−４）に設定される。差ΔＢ１がしきい値Ｔｈ００以上かつしきい値Ｔｈ０１（例えば−５００ビット）未満である場合には、増減値ＱＰ３Ａは値α１（例えば−２）に設定される。差ΔＢ１がしきい値Ｔｈ０１以上かつしきい値Ｔｈ０２（例えば０ビット）未満である場合には、増減値ＱＰ３Ａは値α２（例えば−１）に設定される。差ΔＢ１がしきい値Ｔｈ０２以上かつしきい値Ｔｈ０３（例えば５００ビット）未満である場合には、増減値ＱＰ３Ａは値α３（例えば１）に設定される。差ΔＢ１がしきい値Ｔｈ０３以上かつしきい値Ｔｈ０４（例えば１０００ビット）未満である場合には、増減値ＱＰ３Ａは値α４（例えば２）に設定される。差ΔＢ１がしきい値Ｔｈ０４以上である場合には、増減値ＱＰ３Ａは値α５（例えば４）に設定される。
【００３０】
また、パラメータ決定部１１２は、現在の処理対象のマクロブロックにおける四辺の各領域（つまり、上辺を含む縦４画素×横１６画素の領域、下辺を含む縦４画素×横１６画素の領域、左辺を含む縦１６画素×横４画素の領域、及び右辺を含む縦１６画素×横４画素の領域）に関する活発性評価値の最小値（ａｃｔ２）に基づいて、増減値ＱＰ３Ｂを決定する。図５は、増減値ＱＰ３Ｂの決定手法の一例を示す図である。最小値ａｃｔ２がしきい値Ｔｈ１０（例えば２）未満である場合には、増減値ＱＰ３Ｂは値β０（例えば−４）に設定される。最小値ａｃｔ２がしきい値Ｔｈ１０以上かつしきい値Ｔｈ１１（例えば５）未満である場合には、増減値ＱＰ３Ｂは値β１（例えば−２）に設定される。最小値ａｃｔ２がしきい値Ｔｈ１１以上かつしきい値Ｔｈ１２（例えば１０）未満である場合には、増減値ＱＰ３Ｂは値β２（例えば０）に設定される。最小値ａｃｔ２がしきい値Ｔｈ１２以上かつしきい値Ｔｈ１３（例えば３０）未満である場合には、増減値ＱＰ３Ｂは値β３（例えば２）に設定される。最小値ａｃｔ２がしきい値Ｔｈ１３以上である場合には、増減値ＱＰ３Ｂは値β４（例えば４）に設定される。なお、活発性評価値は、マクロブロック内における画素値のばらつきの度合いを示す指標（画素情報）であり、例えば、そのマクロブロックの輝度平均値と各画素の輝度値との差分絶対値和を、そのマクロブロック内の画素数で除算した値として得られる。
【００３１】
また、パラメータ決定部１１２は、前回処理したマクロブロックに関する発生符号量（ＰＢ）に基づいて、増減値ＱＰ３Ｃを決定する。図６は、増減値ＱＰ３Ｃの決定手法の一例を示す図である。発生符号量ＰＢがしきい値Ｔｈ２０（例えば１マクロブロックあたりの目標符号量の１／２）未満である場合には、増減値ＱＰ３Ｃは値γ０（例えば−２）に設定される。発生符号量ＰＢがしきい値Ｔｈ２０以上かつしきい値Ｔｈ２１（例えば目標符号量）未満である場合には、増減値ＱＰ３Ｃは値γ１（例えば−１）に設定される。発生符号量ＰＢがしきい値Ｔｈ２１以上かつしきい値Ｔｈ２２（例えば目標符号量の３／２）未満である場合には、増減値ＱＰ３Ｃは値γ２（例えば１）に設定される。発生符号量ＰＢがしきい値Ｔｈ２２以上である場合には、増減値ＱＰ３Ｃは値γ３（例えば２）に設定される。
【００３２】
上記の通り、パラメータ決定部１１２は、現在の処理対象のマクロブロックに関する量子化パラメータＱＰ１を、基準値ＱＰ２に対する増減値ＱＰ３として決定する。ここで、パラメータ決定部１１２は、現在の処理対象のマクロブロックに関する量子化パラメータを、前回処理したマクロブロックに関する量子化パラメータに対して増加させる場合において、基準値ＱＰ２が所定値Ｋ１未満である場合には、基準値ＱＰ２として所定値Ｋ１を用いる。同様に、パラメータ決定部１１２は、現在の処理対象のマクロブロックに関する量子化パラメータを、前回処理したマクロブロックに関する量子化パラメータに対して減少させる場合において、基準値ＱＰ２が所定値Ｋ２を超える場合には、基準値ＱＰ２として所定値Ｋ２を用いる。
【００３３】
所定値Ｋ１，Ｋ２は、現在の処理対象のマクロブロックの全体領域に関する活発性評価値（ａｃｔ１）に応じて異なる値に設定される。例えば、所定値Ｋ１は、活発性評価値ａｃｔ１が５未満である場合は２０に、５以上１０未満である場合には２５に、１０以上である場合には３０に、それぞれ設定される。また例えば、所定値Ｋ２は、活発性評価値ａｃｔ１が５未満である場合には２５に、５以上である場合には５１に、それぞれ設定される。
【００３４】
また、パラメータ決定部１１２は、直前に処理した規定数Ｚのマクロブロックに関する発生符号量が、最大許容符号量に応じて設定される所定のしきい値（例えば最大許容符号量の９８％）を超えている場合には、上述したアルゴリズムによる量子化パラメータの決定処理を行わずに、所定の例外処理を実行する。具体的に、パラメータ決定部１１２は、前回処理したマクロブロックに関する量子化パラメータに定数値（例えば２）を加算した値を、現在の処理対象のマクロブロックに関する量子化パラメータとして設定する。当該発生符号量が当該しきい値以下となるまで、例外処理は継続される。
【００３５】
このように本実施の形態に係る画像処理装置１によれば、制御部３は、規定数Ｚのマクロブロックあたりの目標符号量と、直前に処理した所定数（本実施の形態では規定数Ｚ）のマクロブロックに関する発生符号量との差ΔＢ１に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータＱＰ１を決定する。そして、規定数Ｚは、制御部３によって可変に設定可能である。従って、遅延制限の厳しい状況での画像再生においては、制御部３によって規定数Ｚを比較的小さく設定することにより、画質よりも遅延量を優先することができる。また、遅延制限の厳しくない状況での画像再生においては、制御部３によって規定数Ｚを比較的大きく設定することにより、遅延量よりも画質を優先することができる。その結果、画像再生の状況に応じて画質及び遅延量を適切に調整することが可能となる。
【００３６】
また、本実施の形態に係る画像処理装置１によれば、制御部３は、現在の処理対象のマクロブロックに関する量子化パラメータＱＰ１を、基準値ＱＰ２に対する増減値ＱＰ３として決定する。また、制御部３は、規定数Ｚのマクロブロックあたりの目標符号量と、直前に処理した規定数Ｚのマクロブロックに関する発生符号量との差ΔＢ１に基づいて、増減値ＱＰ３を決定する。このように、規定数Ｚのマクロブロックあたりの目標符号量と直前に処理した規定数Ｚのマクロブロックに関する発生符号量との差ΔＢ１に基づいて増減値ＱＰ３を決定することにより、現在の処理対象のマクロブロックに関する量子化パラメータＱＰ１を、画像再生の状況に応じて適切に決定することが可能となる。
【００３７】
また、本実施の形態に係る画像処理装置１によれば、制御部３は、直前に処理した規定数Ｚのマクロブロックに関する発生符号量が、最大許容符号量に応じて設定される所定のしきい値を超えている場合には、前回処理したマクロブロックに関する量子化パラメータに定数値を加算した値を、現在の処理対象のマクロブロックに関する量子化パラメータとして設定する。このように、発生符号量がしきい値を超えている場合には強制的に量子化パラメータを大きく設定するという例外処理を行うことにより、発生符号量が最大許容符号量を超える事態を回避することが可能となる。
【００３８】
＜実施の形態２＞
図７は、本発明の実施の形態２に係る画像処理装置１の構成を示すブロック図である。図７に示すように、画像処理装置１は、エンコーダ２及び制御部３を備えて構成されている。エンコーダ２は、ＭＰＥＧ−２、ＭＰＥＧ−４、又はＨ．２６４等の動画像に関する規格に準拠しており、圧縮符号化前の画像信号Ｓ１に対して量子化処理及び符号化処理等の画像処理を施すことにより、圧縮符号化後の画像信号Ｓ４を出力する。画像信号Ｓ４は、画像処理装置１から無線ＬＡＮ等によって表示装置（図示しない）に伝送され、表示装置において動画像が表示される。
【００３９】
上記実施の形態１と同様に、制御部３には、画像信号Ｓ１，Ｓ４が入力されるとともに、１マクロブロックあたりの最大許容符号量を示す信号Ｓ２Ａと、１マクロブロックあたりの目標符号量を示す信号Ｓ２Ｂと、目標符号量の設定単位となるマクロブロックの個数（規定数Ｚ）を設定するための基礎情報を示す信号Ｓ２Ｃとが入力される。ここで、１マクロブロックあたりの最大許容符号量は、画像処理装置１から表示装置への最大ビットレート（例えば９Ｍｂｐｓ）と、動画像のフレームレート（例えば６０ｆｐｓ）と、１フレーム内のマクロブロックの総数（例えば３６００個）とに基づいて算出される。同様に、１マクロブロックあたりの目標符号量は、画像処理装置１から表示装置への目標ビットレート（例えば８．１Ｍｂｐｓ）と、動画像のフレームレートと、１フレーム内のマクロブロックの総数とに基づいて算出される。また、上記実施の形態１と同様に、画像処理装置１が例えばテレビ会議システムに利用される場合には、カメラのズーム倍率を示す基礎情報が信号Ｓ２Ｃとして制御部３に入力される。上記実施の形態１と同様に、制御部３は、遅延制限が厳しくない状況での画像再生においては、規定数Ｚを比較的大きな値に設定することにより遅延量よりも画質を優先し、一方、遅延制限が厳しい状況での画像再生においては、規定数Ｚを比較的小さな値に設定することにより画質よりも遅延量を優先する。
【００４０】
制御部３は、これらの信号Ｓ１，Ｓ２Ａ〜Ｓ２Ｃ，Ｓ４に基づいて、エンコーダ２内での量子化処理における量子化パラメータを、制御信号Ｓ３によって制御する。本実施の形態に係る画像処理装置１においては、許容伝送遅延に相当する規定数Ｚ（Ｚ個）のマクロブロックに関する発生符号量が、規定数Ｚのマクロブロックに関する最大許容符号量を超えないように、量子化パラメータを制御する。
【００４１】
図８は、図７に示した制御部３の構成例を示すブロック図である。図８の接続関係で示すように、制御部３は、第１処理部２１１、第２処理部２１２、第３処理部２１３、及び第４処理部２１４を備えて構成されている。
【００４２】
第１処理部２１１は、画像信号Ｓ４に基づいて、直前に処理したＹ個のマクロブロックに関して使用した発生符号量を求める。求めた発生符号量は、信号Ｓ１１として第１処理部２１１から第２処理部２１２に入力される。
【００４３】
第２処理部２１２は、信号Ｓ２Ａ〜Ｓ２Ｃに基づいて、規定数Ｚのマクロブロックあたりの目標符号量を求める。また、第２処理部２１２は、求めた目標符号量と、第１処理部２１１から入力されたＹ個のマクロブロックに関する発生符号量とに基づいて、直後に処理するＮ個のマクロブロック（例えば、現在の処理対象のマクロブロックを先頭とする、１マクロブロックラインに含まれる８０個のマクロブロック）に関して使用可能な許容符号量を求める。求めた許容符号量は、信号Ｓ１２として第２処理部２１２から第４処理部２１４に入力される。
【００４４】
ここで、第２処理部２１２は、既に発生符号量が求まっているマクロブロックの個数（Ｙ個）が、許容伝送遅延に相当するマクロブロックの個数（Ｚ個）から、発生符号量の予想が可能なマクロブロックの個数（Ｎ個）を差し引いた値以上である場合（つまりＹ≧Ｚ−Ｎの関係を満たす場合）には、Ｚ個のマクロブロックに関する目標符号量から、直前のＺ−Ｎ個のマクロブロックに関して使用した発生符号量を差し引いた値を、直後に処理するＮ個のマクロブロックに関して使用可能な許容符号量とする。一方、既に発生符号量が求まっているマクロブロックの個数（Ｙ個）が、許容伝送遅延に相当するマクロブロックの個数（Ｚ個）から、発生符号量の予想が可能なマクロブロックの個数（Ｎ個）を差し引いた値未満である場合（つまりＹ＜Ｚ−Ｎの関係を満たす場合）には、Ｙ＋Ｎ個のマクロブロックに関する目標符号量から、直前のＹ個のマクロブロックに関して使用した発生符号量を差し引いた値を、直後に処理するＮ個のマクロブロックに関して使用可能な許容符号量とする。従って、Ｙ≧Ｚ−Ｎの関係を満たす場合であっても、Ｙ＜Ｚ−Ｎの関係を満たす場合であっても、許容符号量を適切に求めることができる。
【００４５】
第３処理部２１３は、画像信号Ｓ１に基づいて、直後Ｎ個のマクロブロックに関して使用が予想される予想符号量を求める（詳細は後述）。求めた予想符号量は、信号Ｓ１３として第３処理部２１３から第４処理部２１４に入力される。
【００４６】
第４処理部２１４は、第２処理部２１２から入力された許容符号量と、第３処理部２１３から入力された予想符号量とに基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを設定する（詳細は後述）。設定した量子化パラメータは、信号Ｓ３として第４処理部２１４から図７に示したエンコーダ２に入力される。
【００４７】
図９は、図８に示した第３処理部２１３の構成例を示すブロック図である。図９の接続関係で示すように、第３処理部２１３は、全体評価値演算部２２１、部分評価値演算部２２２、ソベルフィルタ処理部２２３、予想符号量演算部２２４、及び記憶部２２５を備えて構成されている。
【００４８】
全体評価演算部２２１は、画像信号Ｓ１に基づいて、直後Ｎ個のマクロブロックの各々について、各マクロブロックの全体領域（縦１６画素×横１６画素）に関する活発性評価値ａｃｔ１を算出する。ここで、活発性評価値は、マクロブロック内における画素値のばらつきの度合いを示す指標であり、例えば、そのマクロブロックの輝度平均値と各画素の輝度値との差分絶対値和を、そのマクロブロック内の画素数で除算した値として得られる。このように活発性評価値ａｃｔ１を用いることにより、全体が滑らかである属性のマクロブロック（つまり画質の劣化が目立つマクロブロック）に関しては、小さい量子化パラメータ（つまり大きい符号量）を見積もることにより、適切な予想符号量を求めることができる。
【００４９】
部分評価値演算部２２２は、画像信号Ｓ１に基づいて、直後Ｎ個のマクロブロックの各々について、各マクロブロックの複数の部分領域に関する活発性評価値の最小値ａｃｔ２を算出する。つまり、各マクロブロックの上辺を含む縦４画素×横１６画素の領域、下辺を含む縦４画素×横１６画素の領域、左辺を含む縦１６画素×横４画素の領域、及び右辺を含む縦１６画素×横４画素の領域に関する活発性評価値をそれぞれ算出し、その最小値ａｃｔ２を求める。このように最小値ａｃｔ２を用いることにより、例えば、全体が複雑であり、文字領域を含んでおらず、かつ滑らかな部分を一部に含んでいない属性のマクロブロック（つまり画質の劣化が目立たないマクロブロック）に関しては、大きい量子化パラメータ（つまり小さい符号量）を見積もることにより、適切な予想符号量を求めることができる。また、例えば、全体が複雑であり、文字領域を含んでいないが、滑らかな部分を一部に含んでいる属性のマクロブロック（つまり滑らかな部分において画質の劣化が目立つマクロブロック）に関しては、やや小さい量子化パラメータ（つまりやや大きい符号量）を見積もることにより、適切な予想符号量を求めることができる。
【００５０】
ソベルフィルタ処理部２２３は、画像信号Ｓ１に基づいて、直後Ｎ個のマクロブロックの各々について、各マクロブロックの複数の部分領域に関して、ソベルフィルタを用いてエッジ抽出処理を実行し、そのフィルタ結果の最大値Ｓｏｂｅｌを求める。つまり、各マクロブロックの上辺を含む縦４画素×横１６画素の領域、下辺を含む縦４画素×横１６画素の領域、左辺を含む縦１６画素×横４画素の領域、及び右辺を含む縦１６画素×横４画素の領域に関してエッジ抽出処理を実行し、そのフィルタ結果の最大値Ｓｏｂｅｌを求める。このように最大値Ｓｏｂｅｌを用いることにより、例えば、全体が複雑であり、かつ文字領域を一部に含んでいる属性のマクロブロック（つまり文字領域において画質の劣化が目立つマクロブロック）に関しては、中程度の量子化パラメータ（つまり中程度の符号量）を見積もることにより、適切な予想符号量を求めることができる。
【００５１】
図１０は、図９に示した記憶部２２５に記憶されているパラメータセットの第１の例を示す図である。複数のパラメータセットＱＰＳ０〜ＱＰＳ７の各々には、マクロブロックの属性値ＡＣＴ０〜ＡＣＴ４に対応して量子化パラメータがそれぞれ設定されている。例えばパラメータセットＱＰＳ４に関しては、属性値ＡＣＴ０に対応して値「３８」の量子化パラメータが設定されており、属性値ＡＣＴ１に対応して「２０」の量子化パラメータが設定されており、属性値ＡＣＴ２に対応して「３８」の量子化パラメータが設定されており、属性値ＡＣＴ３に対応して「４４」の量子化パラメータが設定されており、属性値ＡＣＴ４に対応して「２６」の量子化パラメータが設定されている。また、例えばパラメータセットＱＰＳ７に関しては、属性値ＡＣＴ０〜ＡＣＴ４に対応して「５１」の量子化パラメータが設定されている。
【００５２】
また、量子化パラメータが基準値（例えばＨ．２６４の規格上の最大値である「５１」）に設定された場合に発生が想定される符号量（基準符号量）が、マクロブロックの属性値ＡＣＴ０〜ＡＣＴ４に対応してそれぞれ設定されている。この例では、属性値ＡＣＴ０に対応して３２ビット、属性値ＡＣＴ１に対応して４ビット、属性値ＡＣＴ２に対応して３２ビット、属性値ＡＣＴ３に対応して３２ビット、及び属性値ＡＣＴ４に対応して８ビットの基準符号量が、それぞれ設定されている。基準符号量を適切に設定することにより、複数のパラメータセットＱＰＳ０〜ＱＰＳ７の各々に関して、適切な予想符号量を求めることができる。
【００５３】
図１１は、図９に示した記憶部２２５に記憶されているパラメータセットの第２の例を示す図である。図１０に示したパラメータセットＱＰＳ７に代えて、パラメータセットＱＰＳ８が設定されている。パラメータセットＱＰＳ８に関しては、属性値ＡＣＴ０〜ＡＣＴ４に対応して「５２」の量子化パラメータが設定されている。ここで、「５２」の量子化パラメータは、符号化処理のスキップを意味する。つまり、量子化パラメータが「５２」に設定されたマクロブロックに関しては、符号化処理を省略して、直前のフレーム内の同一箇所のマクロブロックに関する値を当該マクロブロックに関して適用することを意味する。
【００５４】
図９を参照して、予想符号量演算部２２４は、直後Ｎ個のマクロブロックの各々について、全体評価値演算部２２１によって求められた活発性評価値ａｃｔ１と、部分評価値演算部２２２によって求められた最小値ａｃｔ２と、ソベルフィルタ処理部２２３によって求められた最大値Ｓｏｂｅｌと、記憶部２２５から読み出したパラメータセットとに基づいて、直後Ｎ個のマクロブロックに関して使用が予想される予想符号量を求める。具体的には以下の通りである。
【００５５】
予想符号量演算部２２４は、まず、直後Ｎ個のマクロブロックの各々について、属性値を決定する。図１２は、属性値の決定手法の一例を示すフローチャートである。図１２のフローチャートで示すように、各マクロブロックの属性値は、活発性評価値ａｃｔ１が「２」以下であるという第１の条件を満たす場合には属性値ＡＣＴ１に決定され、第１の条件を満たさず活発性評価値ａｃｔ１が「６」以下であるという第２の条件を満たす場合には属性値ＡＣＴ４に決定され、第２の条件を満たさず最大値Ｓｏｂｅｌが「１２０」以上であるという第３の条件を満たす場合には属性値ＡＣＴ０に決定され、第３の条件を満たさず最小値ａｃｔ２が「５」以下であるという第４の条件を満たす場合には属性値ＡＣＴ２に決定され、第４の条件を満たさない場合には属性値ＡＣＴ３に決定される。予想符号量演算部２２４は、直後Ｎ個のマクロブロックの中に、各属性値ＡＣＴ０〜ＡＣＴ４に決定されたマクロブロックが何個ずつ含まれているかをカウントする。
【００５６】
予想符号量演算部２２４は、次に、パラメータセットＱＰＳ０〜ＱＰＳ６の各々を適用した場合の、直後Ｎ個のマクロブロックの合計の予想符号量をそれぞれ算出する。図１０，１１に示したように、パラメータセットＱＰＳ０〜ＱＰＳ６の量子化パラメータは、「２０」、「２６」、「３２」、「３８」、「４４」、及び「５１」のいずれかに設定されている。また、Ｈ．２６４の規格により、量子化パラメータが「６」だけ小さくなれば、量子化精度は２倍になる。従って、量子化パラメータが「２０」、「２６」、「３２」、「３８」、「４４」、及び「５１」に設定された場合に発生が想定される符号量は、それぞれ基準符号量の３２倍、１６倍、８倍、４倍、２倍、及び１倍となる。従って、直後Ｎ個のマクロブロックの中に、属性値ＡＣＴ０，ＡＣＴ１，ＡＣＴ２，ＡＣＴ３，ＡＣＴ４に決定されたマクロブロックがそれぞれＫ０個、Ｋ１個、Ｋ２個、Ｋ３個、Ｋ４個ずつ含まれている場合において、例えばパラメータセットＱＰＳ４を適用した場合の合計の予想符号量は、３２（ビット）×４（倍）×Ｋ０（個）＋４×３２×Ｋ１＋３２×４×Ｋ２＋３２×２×Ｋ３＋８×１６×Ｋ４なる演算によって求まる。予想符号量演算部２２４は、他のパラメータセットＱＰＳ０〜ＱＰＳ３，ＱＰＳ５，ＱＰＳ６を適用した場合の合計の予想符号量についても、上記と同様に算出する。そして、各パラメータセットＱＰＳ０〜ＱＰＳ６を適用した場合の合計の予想符号量を、信号Ｓ１３として図８に示した第４処理部２１４に入力する。
【００５７】
図１３は、第４処理部２１４によるパラメータセットの選択手法の一例を示す図である。直後Ｎ個のマクロブロックに関する許容符号量は、Ｚ個のマクロブロックに関する目標符号量から、直前に処理したＺ−Ｎ個のマクロブロックに関する発生符号量を差し引いた値として得られる。
【００５８】
第４処理部２１４は、複数のパラメータセットＱＰＳ０〜ＱＰＳ６のうち、予想符号量が許容符号量以下で最大となるパラメータセットを選択する。図１３に示した例では、パラメータセットＱＰＳ４が選択される。そして、第４処理部２１４は、選択したパラメータセットＱＰＳ４に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを設定する。例えば、現在の処理対象のマクロブロックの属性値が属性値ＡＣＴ０である場合には、当該マクロブロックに関する量子化パラメータを、図１０又は図１１においてＱＰＳ４とＡＣＴ０との交点に規定されている「３８」に設定する。この例によれば、発生符号量を目標符号量以下に抑えつつ、可能な限り画質を向上することができる。
【００５９】
他の例として、第４処理部２１４は、複数のパラメータセットＱＰＳ０〜ＱＰＳ６のうち、予想符号量が許容符号量に最も近いパラメータセットを選択する。図１３に示した例では、パラメータセットＱＰＳ３が選択される。そして、第４処理部２１４は、選択したパラメータセットＱＰＳ３に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを設定する。例えば、現在の処理対象のマクロブロックの属性値が属性値ＡＣＴ０である場合には、当該マクロブロックに関する量子化パラメータを、図１０又は図１１においてＱＰＳ３とＡＣＴ０との交点に規定されている「３２」に設定する。この例によれば、発生符号量を目標符号量に近付けることができるため、安定した符号量制御を行うことが可能となる。なお、この例において、予想符号量が許容符号量を超えることにより、発生符号量と予想符号量との和が目標符号量の例えば１０５％以上となる場合には、許容符号量を超える予想符号量となるパラメータセットの選択を禁止してもよい。
【００６０】
また、複数のパラメータセットＱＰＳ０〜ＱＰＳ６のうち予想符号量が最小となるパラメータセットＱＰＳ６を選択しても、予想符号量が許容符号量を超える場合には、第４処理部２１４は、図１０に示したパラメータセットＱＰＳ７、又は図１１に示したパラメータセットＰＱＳ８を選択する。パラメータセットＱＰＳ７が選択された場合には、現在の処理対象のマクロブロックに関する量子化パラメータは、規格上の最大値である「５１」に設定される。また、パラメータセットＱＰＳ８が選択された場合には、現在の処理対象のマクロブロックに関する符号化処理はスキップされる。符号化処理がスキップされることにより、当該マクロブロックに関しては画質が劣化するが、符号化処理の省略によって発生符号量を削減できるため、その後のマクロブロックの処理において許容符号量を大きくすることができる。
【００６１】
このように本実施の形態に係る画像処理装置１によれば、制御部３は、規定数Ｚのマクロブロックあたりの目標符号量と、直前に処理した所定数（本実施の形態ではＹ個）のマクロブロックに関する発生符号量との差に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する。そして、規定数Ｚは、制御部３によって可変に設定可能である。従って、遅延制限の厳しい状況での画像再生においては、制御部３によって規定数Ｚを比較的小さく設定することにより、画質よりも遅延量を優先することができる。また、遅延制限の厳しくない状況での画像再生においては、制御部３によって規定数Ｚを比較的大きく設定することにより、遅延量よりも画質を優先することができる。その結果、画像再生の状況に応じて画質及び遅延量を適切に調整することが可能となる。
【００６２】
また、本実施の形態に係る画像処理装置１によれば、第１処理部２１１は、直前に処理したＹ個のマクロブロックに関して使用した発生符号量を求める。また、第２処理部２１２は、Ｚ個のマクロブロックあたりの目標符号量と、第１処理部２１１によって求められた発生符号量とに基づいて、現在の処理対象のマクロブロックを含む直後Ｎ個のマクロブロックに関して使用可能な許容符号量を求める。また、第３処理部２１３は、直後Ｎ個のマクロブロックに関して使用が予想される予想符号量を求める。そして、第４処理部２１４は、第２処理部２１２によって求められた許容符号量と、第３処理部２１３によって求められた予想符号量とに基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定する。このように、規定数Ｚのマクロブロックあたりの目標符号量に基づいて、現在の処理対象のマクロブロックに関する量子化パラメータを決定することにより、現在の処理対象のマクロブロックに関する量子化パラメータを、画像再生の状況に応じて適切に決定することが可能となる。
【符号の説明】
【００６３】
１  画像処理装置
２  エンコーダ
３  制御部
１１０，２２１  全体評価値演算部
１１１，２２２  部分評価値演算部
１１２  パラメータ決定部
１１３，２２５  記憶部
１１４  ビット数カウンタ
２１１  第１処理部
２１２  第２処理部
２１３  第３処理部
２１４  第４処理部
２２３  ソベルフィルタ処理部
２２４  予想符号量演算部
【図１】
0005492058.tif 000002
【図２】
0005492058.tif 000003
【図３】
0005492058.tif 000004
【図４】
0005492058.tif 000005
【図５】
0005492058.tif 000006
【図６】
0005492058.tif 000007
【図７】
0005492058.tif 000008
【図８】
0005492058.tif 000009
【図９】
0005492058.tif 000010
【図１０】
0005492058.tif 000011
【図１１】
0005492058.tif 000012
【図１２】
0005492058.tif 000013
【図１３】
0005492058.tif 000014