説明

動画像符号化装置、動画像符号化方法及び動画像符号化プログラム

【課題】量子化パラメータの符号量を削減して、符号化効率を向上させる。
【解決手段】量子化パラメータ算出部110は、画像の複雑度合いを表すアクティビティに基づき符号化対象ブロックの量子化パラメータを算出する。予測量子化パラメータ導出部114は、量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリ113から符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の隣接ブロックの量子化パラメータから符号化対象ブロックの予測量子化パラメータを導出する。差分量子化パラメータ生成部111は、符号化対象ブロックの量子化パラメータと予測量子化パラメータとの差分により差分量子化パラメータを生成する。第1の符号化ビット列生成部112は、差分量子化パラメータを符号化する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画像の符号化技術に関し、特に量子化パラメータの予測符号化を利用した動画像の符号化技術に関する。
【背景技術】
【0002】
MPEG−2 Part2(以下MPEG−2と呼ぶ)やMPEG−4 Part10/H.264(以下AVCと呼ぶ)等のデジタル動画像符号化では、画像を所定の大きさのブロックに分割して符号化を行い、予測誤差信号(又は単に画像信号)に対する量子化の粗さを示す量子化パラメータを伝送する。符号化側でこの量子化パラメータを所定ブロック単位で可変制御することにより、符号量を制御することや主観画質を向上させることが可能である。
【0003】
主観画質を向上させる量子化パラメータの制御としては、Adaptive Quantization(適応量子化)が度々用いられる。適応量子化では、視覚的に劣化の目立ちやすい平坦部ではより細かく量子化され、劣化の比較的目立ちにくい絵柄の複雑な部分でより粗く量子化されるように、各マクロブロックのアクティビティによって変化させる。即ち、符号化されたときの割り当てビット量が大きくなりやすいアクティビティの高いマクロブロックにおいては、大きい量子化スケールが設定されるように、量子化パラメータを変化させ、その結果、符号化された画像のデータにおいてビット数が出来るだけ少なくなるように制御しながら、主観画質を向上させることになる。
【0004】
MPEG−2では符号化/復号する順序で1つ前のブロックの量子化パラメータと符号化対象ブロックの量子化パラメータが同一であるかどうかを判断し、同一でない場合には量子化パラメータを伝送する。AVCでは符号化/復号する順序で1つ前のブロックの量子化パラメータを予測値として、符号化対象ブロックの量子化パラメータを差分符号化する。これは、一般的に符号量制御は符号化順に行うため、符号化順で1つ前のブロックの量子化パラメータが最も符号化ブロックの量子化パラメータに近いということに基いており、伝送する量子化パラメータの情報量を抑制することを狙っている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2011−91772号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の量子化パラメータの制御では、符号化済みの左側のブロックの量子化パラメータを予測量子化パラメータとして、符号化対象のブロックの量子化パラメータとの差分を算出し、算出された差分量子化パラメータを符号化することで、量子化パラメータの符号量を削減した。しかしながら、画面内のコンテンツによっては、例えば図3に示されるように、符号化対象のブロック内の画像と符号化済みの左側のブロック内の画像の特徴が異なる場合、適応量子化にて算出される量子化パラメータは差が大きくなるので、一意に左側のブロックとの量子化パラメータ予測を実行しても差分量子化パラメータが大きくなり、符号量が増加する課題があった。
【0007】
本発明はこうした状況に鑑みてなされたものであり、その目的は、量子化パラメータの符号量を削減して、符号化効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明のある態様の動画像符号化装置は、動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化装置であって、ブロック単位で画像の複雑度合いを表すアクティビティを算出するアクティビティ算出部と、前記アクティビティに基づき符号化対象ブロックの量子化パラメータを算出する量子化パラメータ算出部(110)と、前記量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリから前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の前記隣接ブロックの量子化パラメータから前記符号化対象ブロックの予測量子化パラメータを導出する予測量子化パラメータ導出部(114)と、前記符号化対象ブロックの量子化パラメータと前記予測量子化パラメータとの差分により前記符号化対象ブロックの差分量子化パラメータを生成する差分量子化パラメータ生成部(111)と、前記符号化対象ブロックの差分量子化パラメータを符号化する符号化部(112)とを備える。
【0009】
本発明の別の態様は、動画像符号化方法である。この方法は、動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化方法であって、ブロック単位で画像の複雑度合いを表すアクティビティを算出するアクティビティ算出ステップと、前記アクティビティに基づき符号化対象ブロックの量子化パラメータを算出する量子化パラメータステップと、前記量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリから前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の前記隣接ブロックの量子化パラメータから前記符号化対象ブロックの予測量子化パラメータを導出する予測量子化パラメータ導出ステップと、前記符号化対象ブロックの量子化パラメータと前記予測量子化パラメータとの差分により前記符号化対象ブロックの差分量子化パラメータを生成する差分量子化パラメータ生成ステップと、前記符号化対象ブロックの差分量子化パラメータを符号化する符号化ステップとを備える。
【0010】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0011】
本発明によれば、量子化パラメータの符号量を削減して、符号化効率を向上させることができる。
【図面の簡単な説明】
【0012】
【図1】実施の形態に係る予測量子化パラメータの導出方法を具備した動画像符号化装置の構成を示すブロック図である。
【図2】実施の形態に係る予測量子化パラメータの導出方法を具備した動画像復号装置の構成を示すブロック図である。
【図3】符号化対象ブロックと隣接する既符号化済みの周囲のブロックに対して、絵柄が左及び左上のブロックに含まれる一例を表す図である。
【図4】隣接する既符号化済みの周囲のブロックの量子化パラメータを、符号化対象ブロックの予測量子化パラメータとして参照先として示す一例を表す図である。
【図5】第1の実施例において、符号化対象ブロックの予測量子化パラメータを導出する為の判定条件として、隣接ブロックの量子化パラメータ間の比較を表す図である。
【図6】第1の実施例の第1の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図7】差分量子化パラメータの符号付き指数符号付ゴロム符号化テーブルの一例を表す図である。
【図8】第1の実施例の予測量子化パラメータの判定において、簡易的な判定に置き換えた場合を説明するフローチャートである。
【図9】第1の実施例において、符号化対象ブロックの予測量子化パラメータを導出する為の判定条件として、隣接ブロックの量子化パラメータ間の比較を表す図である。
【図10】上と左上の隣接ブロックの間の量子化パラメータの差が大きい場合に上の隣接ブロックの量子化パラメータを選択する一例を表す図である。
【図11】第1の実施例の予測量子化パラメータの判定において、簡易的な判定に置き換えた場合を説明する別のフローチャートである。
【図12】第2の実施例の第1の予測量子化パラメータ導出部の動作を説明する為のフローチャートである。
【図13】第2の実施例の第1の予測量子化パラメータ導出部において、状態判定フラグSA及びSLに基づいて予測量子化パラメータを導出する為の判定に用いる2次元配置を表す図である。
【図14】第3の実施例の第1の予測量子化パラメータ導出部の動作を説明する為のフローチャートである。
【図15】第3の実施例の予測量子化パラメータの判定において、簡易的な判定に置き換えた場合を説明するフローチャートである。
【図16】第3の実施例の予測量子化パラメータの判定を、第2の実施例の第1の予測量子化パラメータ導出部の2次元配置に適用した場合を説明する図である。
【図17】第4の実施例の第1の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図18】左と左上の隣接ブロックの量子化パラメータの差分絶対値と上と左上の隣接ブロックの量子化パラメータの差分絶対値の差分を量子化した値δを説明する図である。
【図19】上限及び下限を設定した場合の図18の量子化値δの一例を説明する図である。
【図20】重み付け係数の設定テーブルを説明する図である。
【図21】左と左上の隣接ブロックの量子化パラメータの差分絶対値と上と左上の隣接ブロックの量子化パラメータの差分絶対値の差分を量子化した値δの別の例を説明する図である。
【図22】図1の予測量子化パラメータ導出部及び図2の予測量子化パラメータ導出部の詳細な構成を示すブロック図である。
【図23】イントラ予測モードの値と予測方向を説明する図である。
【図24】上と左上の隣接ブロックの間の量子化パラメータの差が大きい場合に上の隣接ブロックの量子化パラメータを選択する一例を表す図である。
【図25】イントラ予測モードをイントラ予測方向に変換するテーブルを説明する図である。
【図26】第5の実施例の第2の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図27】第6の実施例の第2の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図28】第6の実施例の第2の予測量子化パラメータ導出部でイントラ予測方向が18未満の場合の詳細な動作を説明するフローチャートである。
【図29】第6の実施例の第2の予測量子化パラメータ導出部でイントラ予測方向が18を超える場合の詳細な動作を説明するフローチャートである。
【図30】第7の実施例にてイントラ予測モードの予測方向で重み付け係数の設定を説明する図である。
【図31】第7の実施例の第2の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図32】第7の実施例の第2の予測量子化パラメータ導出部でイントラ予測方向が0でない場合の詳細な動作を説明するフローチャートである。
【図33】第7の実施例にてイントラ予測モードの予測方向で重み付け係数の設定を説明する図である。
【図34】図1の予測量子化パラメータ導出部及び図2の予測量子化パラメータ導出部の詳細な構成を示す別ブロック図である。
【図35】実施例5〜7の第2の予測量子化パラメータ導出部の動作を説明するフローチャートである。
【図36】実施例5〜7の第2の予測量子化パラメータ導出部の別の動作を説明するフローチャートである。
【発明を実施するための形態】
【0013】
本発明の実施の形態は、ピクチャを矩形ブロックに分割し、ブロック単位に量子化・符号化を行う動画像符号化において、処理対象のブロックの量子化パラメータの符号量を削減するために、既符号化済みの周囲のブロックの符号化情報から最適な予測量子化パラメータを導出し、予測量子化パラメータとの差分を算出して、符号化する符号量制御技術を提供する。
【0014】
本発明を実施する好適な動画像符号化装置100及び動画像復号装置200について説明する。図1は本発明を実施する動画像符号化装置100の構成を示すブロック図であり、画像メモリ101、残差信号生成部102、直交変換・量子化部103、第2の符号化ビット列生成部104、逆量子化・逆直交変換部105、復号画像信号重畳部106、復号画像メモリ107、予測画像生成部108、アクティビティ算出部109、量子化パラメータ算出部110、差分量子化パラメータ生成部111、第1の符号化ビット列生成部112、符号化情報格納メモリ113、予測量子化パラメータ導出部114及び符号化ビット列多重化部115から構成される。尚、各ブロック間を結ぶ太実線の矢印はピクチャの画像信号、細実線の矢印は符号化を制御するパラメータ信号の流れを表すものである。
【0015】
画像メモリ101は、撮影/表示時間順に供給された符号化対象の画像信号を一時格納する。画像メモリ101は、格納された符号化対象の画像信号を、所定の画素ブロック単位で、残差信号生成部102、予測画像生成部108及びアクティビティ算出部109に供給する。その際、撮影/表示時間順に格納された画像は、符号化順序に並べ替えられて、画素ブロック単位で、画像メモリ101から出力される。
【0016】
残差信号生成部102は、符号化する画像信号と予測画像生成部108にて生成された予測信号との引き算を行い残差信号を生成し、直交変換・量子化部103に供給する。
【0017】
直交変換・量子化部103は、残差信号に対して直交変換及び量子化を行い、直交変換・量子化された残差信号を生成し、第2の符号化ビット列生成部104と逆量子化・逆直交変換部105に供給する。
【0018】
第2の符号化ビット列生成部104は、直交変換及び量子化された残差信号を規定のシンタックス規則に従ってエントロピー符号化して第2の符号化ビット列を生成し、符号化ビット列多重化部115に供給する。
【0019】
逆量子化・逆直交変換部105は、直交変換・量子化部103から供給された直交変換・量子化された残差信号を逆量子化及び逆直交変換して残差信号を算出し、復号画像信号重畳部106に供給する。
【0020】
復号画像信号重畳部106は、予測画像生成部108により生成された予測画像信号と逆量子化・逆直交変換部105で逆量子化及び逆直交変換された残差信号を重畳して復号画像を生成し、復号画像メモリ107に格納する。尚、復号画像に対して符号化によるブロック歪等の歪を減少させるフィルタリング処理を施して、復号画像メモリ107に格納されることもあり、その場合、必要に応じてデブロッキングフィルタ等のポストフィルタの情報を識別するフラグ等の予測された符号化情報を符号化情報格納メモリ113に格納する。
【0021】
予測画像生成部108は、画像メモリ101から供給される画像信号と復号画像メモリ107から供給される復号画像信号から、予測モードを基にフレーム内予測(イントラ予測)或いはフレーム間予測(インター予測)を行い、予測画像信号を生成する。イントラ予測は、画像メモリ101から供給される画像信号を所定のブロック単位で分割された符号化対象ブロックと、復号画像メモリ107から供給される符号化対象ブロックと同じフレーム内に存在する符号化対象ブロックに隣接する周囲の符号化済みブロックの画素信号を用いて予測画像信号を生成する。インター予測は、画像メモリ101から供給される画像信号を所定のブロック単位で分割された符号化対象ブロックのフレーム(符号化フレーム)の時系列で前または後ろに数フレーム離れた復号画像メモリ107に格納されている符号化済みフレームを参照フレームとし、符号化フレームと参照フレームとの間でブロックマッチングを行い、動きベクトルと呼ばれる動き量を求め、この動き量を基に参照フレームから動き補償を行い、予測画像信号を生成する。こうして生成された予測画像信号を残差信号生成部102に供給する。予測画像生成部108にて得られた動きベクトル等の符号化情報は、必要に応じて符号化情報格納メモリ113に格納する。更に、予測画像生成部108では、複数の予測モードの選択が可能である場合、生成された予測画像信号と元の画像信号との間の歪量等を評価することにより、最適な予測モードを決定し、決定された予測モードによる予測により生成された予測画像信号を選択し、残差信号生成部102に供給するとともに、予測モードがイントラ予測である場合はイントラ予測モードを符号化情報格納メモリ113及び第1の符号化ビット列生成部に供給する。イントラ予測モードの詳細な説明は後述する。
【0022】
アクティビティ算出部109は、画像メモリ101から供給される符号化対象ブロックの画像の複雑さや滑らかさを示す係数であるアクティビティが計算され、量子化パラメータ算出部110に供給する。アクティビティ算出部109の詳細な構成と動作は、後述する実施例にて説明する。
【0023】
量子化パラメータ算出部110は、アクティビティ算出部109にて算出されたアクティビティによって、符号化対象ブロックの量子化パラメータを算出し、差分量子化パラメータ生成部111及び符号化情報格納メモリ113に供給する。量子化パラメータ算出部110の詳細な構成と動作は、後述する実施例にて説明する。
【0024】
差分量子化パラメータ生成部111は、量子化パラメータ算出部110にて算出された量子化パラメータに対して、予測量子化パラメータ導出部114にて導出された予測量子化パラメータと引き算を行い、差分量子化パラメータを算出し、第1の符号化ビット列生成部112に供給する。
【0025】
第1の符号化ビット列生成部112は、差分量子化パラメータ生成部111によって算出された差分量子化パラメータを規定のシンタックス規則に従って符号化して第1の符号化ビット列を生成し、符号化ビット列多重化部115に供給する。
【0026】
符号化情報格納メモリ113は、符号化が終了したブロックの量子化パラメータを格納する。また、図1に結線を図示していないが、予測画像生成部108にて生成される予測モードや動きベクトル等の符号化情報も、次の符号化対象ブロックを符号化に必要な情報として格納する。更に、ピクチャやスライス単位で生成される符号化情報も必要に応じて格納する。
【0027】
予測量子化パラメータ導出部114は、符号化対象ブロックの周囲に隣接する既符号化済みのブロックの量子化パラメータや符号化情報を用いて、予測量子化パラメータを導出し、差分量子化パラメータ生成部111に供給する。予測量子化パラメータ導出部114の詳細な構成と動作は、後述する実施例にて説明する。
【0028】
符号化ビット列多重化部115は、第1の符号化ビット列と第2の符号化ビット列を規定のシンタックス規則に従って多重化し、ビットストリームを出力する。
【0029】
図2は図1の動画像符号化装置100に対応した実施の形態に係る動画像復号装置200の構成を示すブロック図である。実施の形態の動画像復号装置200は、ビット列分離部201、第1符号化ビット列復号部202、量子化パラメータ生成部203、符号化情報格納メモリ204、予測量子化パラメータ導出部205、第2符号化ビット列復号部206、逆量子化・逆直交変換部207、復号画像信号重畳部208、予測画像生成部209及び復号画像メモリ210を備える。尚、図1の動画像符号化装置100と同様に、各ブロック間を結ぶ太実線の矢印はピクチャの画像信号、細実線の矢印は符号化を制御するパラメータ信号の流れを表すものである。
【0030】
図2の動画像復号装置200の復号処理は、図1の動画像符号化装置100の内部に設けられている復号処理に対応するものであるから、図2の逆量子化・逆直交変換部207、復号画像信号重畳部208、予測画像生成部209、復号画像メモリ210及び符号化情報格納メモリ204の各構成は、図1の動画像符号化装置100の逆量子化・逆直交変換部105、復号画像信号重畳部106、予測画像生成部108、復号画像メモリ107及び符号化情報格納メモリ113の各構成とそれぞれ対応する機能を有する。
【0031】
ビット列分離部201に供給されるビットストリームは規定のシンタックスの規則に従って分離し、分離された符号化ビット列が第1符号化ビット列復号部202、第2符号化ビット列復号部206に供給される。
【0032】
第1符号化ビット列復号部202は、供給された符号化ビット列を復号して予測モード、動きベクトル、差分量子化パラメータ等に関する符号化情報を出力し、差分量子化パラメータを量子化パラメータ生成部203に与えるとともに、符号化情報を符号化情報格納メモリ204に格納する。
【0033】
量子化パラメータ生成部203は、第1符号化ビット列復号部202から供給される差分量子化パラメータと予測量子化パラメータ導出部205にて導出される量子化パラメータとを加算して量子化パラメータを算出し、逆量子化・逆直交変換部207及び符号化情報格納メモリ204に供給する。
【0034】
符号化情報格納メモリ113は、復号が終了したブロックの量子化パラメータを格納する。更に、第1符号化ビット列復号部202にて復号されたブロック単位の符号化情報だけでなく、ピクチャやスライス単位で生成される符号化情報も必要に応じて格納する。また、図2に結線を図示していないが、復号された予測モードや動きベクトル等の符号化情報を予測画像生成部209に供給する。
【0035】
予測量子化パラメータ導出部205は、復号対象ブロックの周囲に隣接する既復号済みのブロックの量子化パラメータや符号化情報を用いて、予測量子化パラメータを導出し、量子化パラメータ生成部203に供給する。予測量子化パラメータ導出部205は動画像符号化装置100の予測量子化パラメータ導出部114と同等の機能を有しており、詳細な構成と動作は後述する実施例にて説明する。
【0036】
第2符号化ビット列復号部206は、供給された符号化ビット列を復号して直交変換・量子化された残差信号を算出し、直交変換・量子化された残差信号を逆量子化・逆直交変換部207に与える。
【0037】
逆量子化・逆直交変換部207は、第2符号化ビット列復号部206で復号された直交変換・量子化された残差信号に対して、量子化パラメータ生成部203にて生成された量子化パラメータを用いて、逆直交変換及び逆量子化を行い、逆直交変換・逆量子化された残差信号を得る。
【0038】
復号画像信号重畳部208は、予測画像生成部209で生成された予測画像信号と、逆量子化・逆直交変換部207により逆直交変換・逆量子化された残差信号とを重畳することにより、復号画像信号を生成し、出力するとともに復号画像メモリ210に格納する。復号画像メモリ210に格納する際には、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ210に格納されることもある。
【0039】
予測画像生成部209は、第2符号化ビット列復号部206で復号される予測モードや動きベクトル等の符号化情報、更に符号化情報格納メモリ204から符号化情報を基にして、復号画像メモリ210から供給される復号画像信号から予測画像信号を生成し、復号画像信号重畳部208に供給する。
【0040】
次に、動画像符号化装置100の中で太点線に囲まれた諸部120、特に予測量子化パラメータ導出部114と、動画像復号装置200の中で太点線に囲まれた諸部220、特に予測量子化パラメータ導出部205とで共通に実施される予測量子化パラメータを導出する方法の詳細について説明する。
【0041】
まず、本発明の動画像符号化装置100の中で太点線で囲まれた諸部120の各部の動作について説明する。諸部120では、最初に画像メモリ101から所定画素サイズ単位の画素ブロックを符号化対象ブロックとして、アクティビティ算出部109に供給される。
【0042】
アクティビティ算出部109では、一般に人間の視覚特性はエッジの少ない低周波成分に敏感である為、視覚的に劣化の目立ちやすい平坦部ではより細かく量子化し、劣化の比較的目立ちにくい絵柄の複雑な部分でより粗く量子化するように、所定ブロック単位に画像の複雑さや滑らかさを表現するアクティビティを算出する。
【0043】
アクティビティの一例として、MPEG−2 TestModel5(TM5)に記載される符号化対象ブロック内の画素の分散値による算出が挙げられる。分散値はブロック内の画像を構成する画素の平均からの散らばりの度合いを示す値であり、ブロック内に画像が平坦である(輝度変化が小さい)程小さく、複雑な絵柄である(輝度変化が大きい)もの程値が大きくなるので、ブロックのアクティビティとして利用する。ブロック内の画素値をp(x,y)で表すと、ブロックのアクティビティactは次式で算出される。
【0044】
【数1】

【0045】
ここで、BLKは符号化対象ブロックの画素総数であり、p_meanはブロック内の画素の平均値である。
【0046】
また、以上のような分散に限らず、符号化対象ブロック内の画素に対して、水平方向及び垂直方向で隣接する画素との差分絶対値をとり、ブロック内で総和をとっても良い。この場合でも、画像が平坦である場合は小さく、エッジが多い複雑な絵柄部分では大きい値となり、アクティビティとして利用可能である。次式により算出される。
【0047】
【数2】

【0048】
こうして算出されたアクティビティactは量子化パラメータ算出部110に供給される。
【0049】
量子化パラメータ算出部110は、アクティビティ算出部109で算出されたアクティビティactを基にして、符号化対象ブロックの最適な量子化パラメータQPを算出する。
【0050】
量子化パラメータ算出部110は、直前に符号化したフレーム内の平均アクティビティをavg_actとして記録しておき、符号化対象ブロックの正規化アクティビティNactを次式により算出する。
【0051】
【数3】

【0052】
ここで、上式の係数2は量子化パラメータのダイナミックレンジを表す値であり、0.5〜2.0の範囲をとる正規化アクティビティNactが算出される。
【0053】
尚、avg_actは、符号化過程の前に、予めフレーム内の全てのブロックに対してアクティビティを算出し、その平均値をavg_actとしてもよい。更に、avc_actは符号化情報格納メモリ113に格納しておいてもよく、必要に応じて量子化パラメータ算出部110が符号化情報格納メモリ113からavg_actを取得してもよい。
【0054】
算出された正規化アクティビティNactを基準となる量子化パラメータbaseQPと次式の如く乗算を行い、符号化対象ブロックの量子化パラメータQPを得る。
【0055】
【数4】

【0056】
ここで、baseQPは符号化対象ブロックを含むフレーム或いはスライスを代表する量子化パラメータであってもよい。また、MPEG−2 TM5に記載されているレート制御方法により、ピクチャ数フレーム分を1つのグループ(以下、GOP(Group Of Picture)と称す)とし、そのGOPの中でピクチャタイプ別に符号量を配分し、配分された符号量を仮想バッファ制御を用いたレート制御で算出されるブロック単位の量子化パラメータとしてもよい。更に、直前に符号化したフレームや符号化済みの同じ符号化タイプ(画像内符号化或いは画像間符号化)のフレームの平均量子化パラメータであってもよく、本発明では特に算出方法について限定しない。
【0057】
尚、baseQPは符号化時に算出或いは供給され、量子化パラメータ算出部110の内部或いは符号化情報格納メモリ113に格納し、随時取得してもよい。
【0058】
こうして算出された符号化対象ブロックの量子化パラメータは、符号化情報格納メモリ113及び差分量子化パラメータ生成部111に供給される。
【0059】
符号化情報格納メモリ113は、量子化パラメータ算出部110にて算出された量子化パラメータや既に符号化が終了した過去の符号化対象ブロックの量子化パラメータが格納されるだけでなく、符号化対象ブロックの符号化となる動きベクトルや予測モード等の符号化情報も格納され、必要に応じて各部が符号化情報を取得する。
【0060】
予測量子化パラメータ導出部114は、符号化情報格納メモリ113から符号化対象ブロックの周囲の既符号化済みの隣接ブロックの量子化パラメータやその他符号化情報を用いて、符号化対象ブロックの量子化パラメータを効率良く符号化、伝送する為の予測量子化パラメータを導出する。
【0061】
量子化パラメータを効率良く符号化、伝送する為には、量子化パラメータのまま符号化するよりも、周囲の既符号化済みのブロックの量子化パラメータとの差分(差分量子化パラメータ)をとって、その差分量子化パラメータを符号化、伝送する方が効率が良い。符号化対象ブロックと周囲の隣接ブロックとは、隣接している為、同じ或いは似た絵柄となることが多いので、各ブロックで比較的近い量子化パラメータが算出される傾向がある。その為、H.264では、ラスタスキャン順に符号化対象ブロックの直前に符号化をした左隣に隣接するブロックの量子化パラメータを予測量子化パラメータとし、符号化対象ブロックの量子化パラメータと予測量子化パラメータとの差分をとり、差分量子化パラメータを符号化、伝送する方法を採用した。
【0062】
しかしながら、図3が示される事例では、一意に左隣のブロックの量子化パラメータを予測量子化パラメータとすると、符号化対象ブロックと左の隣接ブロックとの画像の絵柄が異なるので、それぞれの量子化パラメータに影響を及ぼし、差分量子化パラメータも大きな値となり、発生符号量も大きくなり、効率的な符号化、伝送が出来ない恐れが生じる。
【0063】
そこで、本発明に係る予測量子化パラメータ導出部114は、左隣のブロックから予測量子化パラメータを一意に選択せず、周囲の既符号化済みのブロックから最適な予測量子化パラメータを選択或いは導出して、差分量子化パラメータの発生符号量の効率を向上させる。
【0064】
図22は予測量子化パラメータ導出部114は詳細な構成を示す図である。予測量子化パラメータ導出部114は、スイッチ301、メモリ302、第1の予測量子化パラメータ導出部303及び第2の予測量子化パラメータ導出部304を備える。
【0065】
符号化情報格納メモリ113から供給される符号化対象ブロックの周囲の既符号化済みの隣接ブロックの量子化パラメータや符号化対象ブロックの予測モード等の符号化情報はメモリ302に一時記憶されるとともに、スイッチ301に符号化対象ブロックの予測モードが供給される。
【0066】
スイッチ301は予測モードに応じて量子化パラメータの予測を行う導出部を切り換える。予測モードがインター予測の場合は第1の予測量子化パラメータ導出部303で、予測モードがイントラ予測の場合は第2の予測量子化パラメータ導出部304で予測量子化パラメータを導出する。
【0067】
第1の予測量子化パラメータ導出部303は、メモリ302から読み出された符号化対象ブロックの周囲の既符号化済みの隣接ブロックの量子化パラメータの相対比較により、予測量子化パラメータを導出する。
【0068】
一方、第2の予測量子化パラメータ導出部304は、メモリ302から符号化対象ブロックの周囲の既符号化済みの隣接ブロックの量子化パラメータを読み出し、予測画像生成部108で予測モードとしてイントラ予測が選択された場合に、イントラ予測にて参照する隣接ブロックの画素の方向を示すイントラ予測モード(以下、intraPredModeと称す)により、予測量子化パラメータを導出する。
【0069】
ここで、イントラ予測の詳細を説明する。イントラ予測では、同じ画面内の周囲の復号済みのブロックの画素の値から符号化対象ブロックの画素の値を予測する。本発明の動画像符号化装置100及び動画像復号装置200では、34通りのイントラ予測モードから一つのイントラ予測モードを選択して、イントラ予測する。図23は本発明で規定するイントラ予測モードの値と予測方向を説明する図である。実線の矢印はイントラ予測で参照する方向を示し、矢印の終点から始点に向かってイントラ予測を行う。番号はイントラ予測モードの値を示す。イントラ予測モードは、上の復号済みのブロックから垂直方向に予測する垂直予測(イントラ予測モードintraPredMode=0)、左の復号済みのブロックから水平方向に予測する水平予測(イントラ予測モードintraPredMode=1)、周囲の復号済みのブロックから平均値を算出することにより予測する平均値予測(イントラ予測モードintraPredMode=2)、周囲の復号済みのブロックから斜め45度の角度で右下方向に予測する平均値予測(intraPredMode=3)に加えて、周囲の復号済みのブロックから様々な角度で斜め方向に予測する30通りの角度予測(イントラ予測モードintraPredMode=4,5,…,33)を定義する。
【0070】
イントラ予測モードは、輝度信号、色差信号それぞれに用意され、輝度信号用のイントラ予測モードをイントラ輝度予測モード、色差信号用のイントラ予測モードをイントラ色差予測モードと定義する。イントラ輝度予測モードの符号化及び復号においては、周辺のブロックのイントラ輝度予測モードとの相関性を利用し、符号化側で周辺のブロックのイントラ輝度予測モードから予測出来ると判断された場合は、参照するブロックを特定する情報を伝送し、周辺のブロックのイントラ輝度予測モードから予測するよりもイントラ輝度予測モードに別の値を設定した方が良いと判断された場合に、更にイントラ輝度予測モードの値を符号化、または復号する仕組みを用いる。周辺のブロックのイントラ輝度予測モードから符号化・復号対象ブロックのイントラ輝度予測モードを予測することにより、伝送する符号量を削減できる。一方、イントラ色差予測モードの符号化及び復号においては、色差信号の予測ブロックと同じ位置の輝度信号の予測ブロックのイントラ輝度予測モードとの相関性を利用し、符号化側でイントラ輝度予測モードから予測出来ると判断された場合はイントラ輝度予測モードの値からイントラ色差予測モードの値を予測し、イントラ輝度予測モードから予測するよりもイントラ色差予測モードに独自の値を設定した方が良いと判断した場合に、イントラ色差予測モードの値を符号化、または復号する仕組みを用いる。イントラ輝度予測モードからイントラ色差予測モードを予測することにより、伝送する符号量を削減出来る。本実施の形態では、特に断らない限り、イントラ輝度予測モードをイントラ予測モードとする。
【0071】
予測画像生成部108では、この34通りのイントラ予測モードの中から、最も符号化効率の高いイントラ予測モードを選択し、予測モードがイントラ予測が選択された場合に、予測モードとともにイントラ予測モードが符号化情報格納メモリ113を介して、予測量子化パラメータ導出部114に供給する。
【0072】
第2の予測量子化パラメータ導出部304は、このイントラ予測モードに基づいて、予測量子化パラメータを導出する。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0073】
差分量子化パラメータ生成部111は、量子化パラメータ算出部110にて算出された符号化対象ブロックの量子化パラメータに対して、予測量子化パラメータ導出部114にて導出された予測量子化パラメータと引き算を行い、差分量子化パラメータを算出する。予測量子化パラメータは復号時にも復号済みの周囲の隣接ブロックから符号化時と同様に導出されるので、差分符号化パラメータを符号化対象とすることで、符号化と復号で矛盾が生じず、量子化パラメータの符号量を削減することが可能となる。算出された差分量子化パラメータは第1の符号化ビット列生成部112に供給される。
【0074】
第1の符号化ビット列生成部112は、差分量子化パラメータ生成部111によって算出された差分量子化パラメータを規定のシンタックス規則に従ってエントロピー符号化して第1の符号化ビット列を生成する。
【0075】
図7に差分量子化パラメータのエントロピー符号化に使用される符号化変換テーブルの一例を示す。これは符号付き指数ゴロム符号化と呼ばれるテーブルであり、差分量子化パラメータの絶対値が小さい程短い符号長が与えられる。
【0076】
一般に画像をブロックで分割した場合、隣接したブロックでは似たような画像となるので、アクティビティが近い値となり、算出されるブロックの量子化パラメータも近い値になる。その為、差分量子化パラメータの発生頻度は、0が最も高く、絶対値が大きくなるにつれて低くなる傾向となり、図7のテーブルもその特徴を反映して、発生頻度が高い値に対して短い符号長を割り当てられている。予測量子化パラメータが符号化対象ブロックの量子化パラメータに近い値で予測されれば、0に近い差分量子化パラメータが算出され、発生符号量を抑制することが可能となる。
【0077】
第1の符号化ビット列生成部112は、差分量子化パラメータに対応する符号ビット列を図7のテーブルから抽出し、その符号ビット列を符号化ビット列多重化部115に供給する。
【0078】
上述した本実施例の動画像符号化装置100に対応する動画像復号装置200の中で太点線で囲まれた諸部220の各部の動作について説明する。
【0079】
諸部220では、最初に第1符号化ビット列復号部202にて復号された差分量子化パラメータが量子化パラメータ生成部203に供給される。また、差分量子化パラメータ以外の符号化情報が必要に応じて符号化情報格納メモリ204に格納される。
【0080】
量子化パラメータ生成部203では、第1符号化ビット列復号部202から供給される差分量子化パラメータと予測量子化パラメータ導出部205にて導出される量子化パラメータとを加算して、復号対象ブロックの量子化パラメータを算出し、逆量子化・逆直交変換部207及び符号化情報格納メモリ204に供給する。
【0081】
符号化情報格納メモリ204は、復号が終了したブロックの量子化パラメータが格納される。更に、第1符号化ビット列復号部202にて復号されたブロック単位の符号化情報だけでなく、ピクチャやスライス単位で生成される符号化情報も必要に応じて格納される。
【0082】
予測量子化パラメータ導出部205は、復号対象ブロックの周囲に隣接する既復号済みのブロックの量子化パラメータや符号化情報を用いて、予測量子化パラメータを導出し、量子化パラメータ生成部203に供給する。量子化パラメータ生成部203で算出された量子化パラメータは符号化情報格納メモリ204に格納され、次の復号対象ブロックの予測量子化パラメータの導出時に、復号対象ブロックの周囲に位置する復号済みの隣接ブロックを判定し、隣接ブロックの量子化パラメータを符号化情報格納メモリ204から取得する。こうして得られる復号済みの隣接ブロックの量子化パラメータは、動画像符号化装置100の予測量子化パラメータ導出部114が符号化情報格納メモリ113から取得する量子化パラメータと同一である。予測量子化パラメータ導出部205は動画像符号化装置100の予測量子化パラメータ導出部114と同等の機能を有しているので、符号化情報格納メモリ204から供給される隣接ブロックの量子化パラメータが同じであれば、符号化時と同一の予測量子化パラメータが導出される。
【0083】
予測量子化パラメータ導出部205では、符号化済みの隣接ブロックを復号済みの隣接ブロックと変更する以外同様の処理を行うので、量子化パラメータ予測の説明は割愛する。
【0084】
こうして符号化側で導出された予測量子化パラメータが、復号側でも矛盾無く導出されることになる。
【0085】
本実施の形態において、予測量子化パラメータの導出を行う場合に、動画像符号化装置100の予測量子化パラメータ導出部114で参照する隣接ブロックは符号化済みのブロックであり、動画像復号装置200の予測量子化パラメータ導出部205で参照する隣接ブロックは復号済みのブロックである。符号化側で参照される符号化済みのブロックは、符号化内部で次の符号化の為に局部復号されたブロックであり、復号側で参照される復号済みブロックと同じである。その為、予測量子化パラメータ導出部114及び205の機能も共通であり、それぞれで導出される予測量子化パラメータも同じある。以降の実施例では、予測量子化パラメータの導出について、符号化と復号で切り分けず、共通の機能として符号化側で説明する。
【0086】
以下、予測量子化パラメータ導出部114及び205の第1の予測量子化パラメータ導出部303及び第2の予測量子化パラメータ導出部304で共通に実施される予測量子化パラメータを導出する方法の詳細について説明する。
【0087】
[実施例1]
実施例1では、第1の予測量子化パラメータ導出部303の詳細な動作について説明する。
【0088】
図4は符号化対象ブロックと周囲に隣接する既符号化済みのブロックとの配置の定義を示す。本発明では説明の都合上、各ブロックのサイズを同じものとして表記しているが、例えば動き予測等でブロックサイズを変えて、最適な動き予測を行う場合にでも、符号化対象ブロックの左上の点を基準として、その周囲に隣接するブロックを選抜することで実現可能である。
【0089】
図5の記載の記号QPx(x=L,A,AL)は、図4で定義された周囲の既符号化済みの隣接ブロックの量子化パラメータを表す。第1の予測量子化パラメータ導出部303は、図5に示される左と左上、上と左上との比較により、予測量子化パラメータを判定する。
【0090】
第1の予測量子化パラメータ導出部303の動作について説明する。図6は実施例1における第1の予測量子化パラメータ導出部303の動作を示すフローチャートである。
【0091】
まず、メモリ302から符号化対象ブロックに隣接する周囲の既符号化済みのブロックの量子化パラメータを取得する(S100)。符号化対象ブロックの左上の基準位置情報から、符号化情報格納メモリ113に格納された記憶領域をアクセスして、該当するブロックの量子化パラメータを予測量子化パラメータ導出部114内部のメモリ302に供給する。
【0092】
画像の左端或いは上端に符号化対象ブロックが位置している場合、左或いは上及び左上の隣接ブロックは存在しない。ここで、量子化パラメータは常に正値をとることに着目して、隣接ブロックが存在しない場合、隣接ブロックの量子化パラメータQPx(x=L,A,AL)を0に設定して、第1の予測量子化パラメータ導出部303に供給する。
【0093】
次に左と上の隣接ブロックが存在するか否かを判定する(S101)。左及び上の隣接ブロックの量子化パラメータがともに正の場合、両方が存在するので、S105に進む。そうでない場合、即ち一方が存在しない場合はS102に進む。
【0094】
次に左及び上の隣接ブロックがともに存在しないか否かを判定する(S102)。即ち、左及び上の隣接ブロックの量子化パラメータがともに0の場合、両方ともに存在しないので、予測量子化パラメータとして左及び上の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする。
【0095】
尚、画像の左上端のブロックが符号化対象ブロックである場合は、左と上の隣接ブロック、更に直前に符号化したブロックが存在しないので、ピクチャ或いはスライスの量子化パラメータを予測量子化パラメータとする(S103)。
【0096】
左或いは上の隣接ブロックのどちらか一方が存在する場合、正である一方の量子化パラメータを予測量子化パラメータとする(S104)。
【0097】
左及び上の隣接ブロックの両方が存在する場合、最初に左の隣接ブロックの量子化パラメータQPLと左上の隣接ブロックの量子化パラメータQPALとの一致判定を行う(S105)。QPLとQPALが一致する場合、上の隣接ブロックの量子化パラメータQPAを予測量子化パラメータとする(S106)。この場合、一例として図3で示される量子化パラメータの配置が考えられるので、OPAを選択することは適当と言える。また、QPAもQPL及びQPALと一致する場合は、全ての隣接ブロックの量子化パラメータが同じとなり、QPAの選択は問題ない。
【0098】
QPLとQPALが一致しない場合、S107に進む。次に、QPAとQPALとの一致判定を行う(S107)。QPAとQPALが一致する場合、左の隣接ブロックの量子化パラメータQPLを予測量子化パラメータとする(S108)。前述したQPLとQPALの一致の場合と同様の判定を考慮すれば、QPLが選択される。QPAとQPALが一致しない場合、QPLとQPAの平均値を予測量子化パラメータとする(S109)。この場合、左、上及び左上の隣接ブロックの量子化パラメータが全て異なるので、QPL或いはQPAのどちらか一方を選択するには十分な条件判定が出来ない。そこで、QPLとQPAの平均を予測量子化パラメータとして、均等な判定値とする。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0099】
また、予測量子化パラメータ導出部114及び205の予測量子化パラメータの判定処理において、S105で一致と判定された場合にのみ、上の隣接ブロックの量子化パラメータを選択し、それ以外は左の隣接ブロックの量子化パラメータ選択するようにして、負荷の軽い判定とすることも可能である。この手法は、符号化及び復号がラスタースキャン順(画面の左上から右下への順次走査)に行われることから、左の符号化済み或いは復号済みの隣接ブロックを優先することとして、簡易的な判定を行うものである。
【0100】
上述の予測量子化パラメータの判定処理において、図6のS101の左と上の隣接ブロックの量子化パラメータがともに正である、即ち左と上の隣接ブロックがともに存在すると判定された場合から説明する。
【0101】
図8は、左と上の隣接ブロックがともに存在すると判定された後の簡易判定処理の動作を表すフローチャートである。左及び上の隣接ブロックの両方が存在する場合、QPLとQPALとの一致判定を行う(S110)。QPLとQPALが一致する場合、上の隣接ブロックの量子化パラメータQPAを予測量子化パラメータとする(S111)。QPLとQPALが一致しない場合、左の隣接ブロックの量子化パラメータQPLを予測量子化パラメータとする(S112)。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0102】
更に、左と左上の隣接ブロックの量子化パラメータの差分絶対値をΔL、上と左上の隣接ブロックの量子化パラメータの差分絶対値をΔAとして、ΔLとΔAの比較に基づいて、左或いは上の量子化パラメータを予測量子化パラメータとして選択することも可能である。
【0103】
符号化対象ブロックとその周囲の既符号化済みの隣接ブロックにおいて、図9で示すようにΔL及びΔAは左と左上、上と左上の隣接ブロックの量子化パラメータの差分絶対値を表し、それぞれ次式で表される。
【0104】
【数5】

【0105】
【数6】

【0106】
ΔAがΔLよりも大きくなる場合は、QPAとQPALとの差が大きい場合であり、上と左上の隣接ブロックの間で画像の滑らかさ或いは複雑さが左と左上の隣接ブロック間よりも異なっている(変化が大きい)と推察される。その為、図10の太点線で示されるように、符号化対象ブロックとその周囲の既符号化済みの隣接ブロックにおいて、左2つのブロック(左と左上の隣接ブロック)と右2つのブロック(符号化対象ブロックと上の隣接ブロック)とで量子化パラメータの差が生じると考えられるので、符号化対象ブロックの量子化パラメータは左の隣接ブロックの量子化パラメータよりも上の隣接ブロックの量子化パラメータに近いと判定する。
【0107】
以上の判定をフローチャートにしたものが図11である。図11を用いて、図6のS101の左と上の隣接ブロックの量子化パラメータがともに正である、即ち左と上の隣接ブロックがともに存在すると判定された場合から説明する。
【0108】
左及び上の隣接ブロックの両方が存在する場合、ΔLとΔAとの比較判定を行う(S113)。ΔAがΔLよりも大きい場合、上の隣接ブロックの量子化パラメータQPAを予測量子化パラメータとする(S114)。そうでない場合、左の隣接ブロックの量子化パラメータQPLを予測量子化パラメータとする(S115)。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0109】
[実施例2]
実施例2における第1の予測量子化パラメータ導出部303の動作について説明する。図12は実施例2における第1の予測量子化パラメータ導出部303の動作を示すフローチャートである。
【0110】
最初に、メモリ302から符号化対象ブロックに隣接する周囲の既符号化済みのブロックの量子化パラメータを取得する(S200)。符号化対象ブロックの左上の基準位置情報から、符号化情報格納メモリ113に格納された記憶領域をアクセスして、該当するブロックの量子化パラメータを予測量子化パラメータ導出部114内部のメモリ302に供給する。画像の左端或いは上端に符号化対象ブロックが位置している場合、左或いは上及び左上の隣接ブロックは存在しない。ここで、量子化パラメータは常に正値をとることに着目して、隣接ブロックが存在しない場合、隣接ブロックの量子化パラメータQPx(x=L,A,AL)を0に設定して、第1の予測量子化パラメータ導出部303に供給する。次に左と上の隣接ブロックが存在するか否かを判定する(S201)。左及び上の隣接ブロックの量子化パラメータがともに正の場合、両方が存在するので、S205に進む。そうでない場合、即ち一方が存在しない場合はS202に進む。S202からS204の処理過程について実施例1と同様なので割愛する。
【0111】
左及び上の隣接ブロックの両方が存在する場合、左の隣接ブロックの量子化パラメータQPLと左上の隣接ブロックの量子化パラメータQPALとの差分絶対値ΔLが閾値THL未満か否かを判定する(S205)。差分絶対値ΔLは次式で算出される。
【0112】
【数7】

【0113】
ΔLがTHL未満となる場合、状態判定フラグSLを”1”に設定する(S206)。一方、ΔLがTHL未満でない場合、状態判定フラグSLを”0”に設定する(S207)。実施例2では、QPLとQPALとが閾値THL未満で収まる場合、左と左上の各隣接ブロックは量子化パラメータが一致していると判断することとし、実施例1におけるQPLとQPALの一致と同様の判定を行う。その為、状態判定フラグSLが”1”となる場合はQPAを予測量子化パラメータとすることを表す。次に、上の隣接ブロックの量子化パラメータQPAとQPALとの差分絶対値ΔAが閾値THA未満か否かを判定する(S208)。差分絶対値ΔAは次式で算出される。
【0114】
【数8】

【0115】
ΔAがTHA未満となる場合、状態判定フラグSAを”1”に設定する(S209)。一方、ΔAがTHA未満でない場合、状態判定フラグSAを”0”に設定する(S210)。実施例2では、QPAとQPALとが閾値THA未満で収まる場合、上と左上の各隣接ブロックは量子化パラメータが一致していると判断することとし、実施例1におけるQPAとQPALの一致と同様の判定を行う。その為、状態判定フラグSAが”1”となる場合はQPLを予測量子化パラメータとすることを表す。状態判定フラグSL及びSAに基づいて、予測量子化パラメータを導出する(S211)。図13は差分絶対値ΔL及びΔAと閾値THL及びTHAとの比較を状態判定フラグSL及びSAと関連付けを行った2次元配置図である。左下の原点0を基準に、横軸をΔLの大きさ、縦軸をΔAの大きさをとり、閾値THL及びTHAによって4つに領域に区分され、それぞれの領域で選択する予測量子化パラメータを示す(図13中に領域1〜4で示される)。
【0116】
領域1
状態判定フラグSLが”1”、SAが”0”の場合であり、左と左上の隣接ブロックの量子化パラメータの差が小さく、上と左上の量子化パラメータの差が大きくなり、図3に示される事例のように縦方向のブロックで量子化パラメータが近似していると考えられる。その為、符号化対象ブロックの量子化パラメータは上の隣接ブロックの量子化パラメータQPAに近い値になると判断し、予測量子化パラメータをQPAとする。
【0117】
領域2
状態判定フラグSLが”0”、SAが”1”の場合であり、領域1と同様の判断を行うと、横方向のブロックで量子化パラメータが近似していると考えられ、符号化対象ブロックの量子化パラメータは左の隣接ブロックの量子化パラメータQPLに近い値になると判断し、予測量子化パラメータをQPLとする。
【0118】
領域3
状態判定フラグSL及びSAがともに”0”の場合である。即ち、QPL及びQPAがともにQPALとの差分絶対値が大きい場合であり、左、上及び左上の隣接ブロックの量子化パラメータが全て異なるので、QPL或いはQPAのどちらか一方を選択するには十分な条件判定が出来ない。そこで、QPLとQPAの平均を予測量子化パラメータとして、均等な判定値とする。
【0119】
領域4
状態判定フラグSL及びSAがともに”1”の場合である。即ち、QPL及びQPAがともにQPALとの差分絶対値が小さい場合であり、どちらか一方を選択せず、QPLとQPAの平均値を予測量子化パラメータとする。
【0120】
こうして判定、導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0121】
閾値THL及びTHAを1とすると、量子化パラメータは正整数であるので、実施例1と同等の判定となる。但し、上述した領域4は、左、上及び左上の全ての値が同じとなるので、平均値処理を必要としない。また、判定として各隣接ブロックの量子化パラメータの一致を調べるだけで済み、差分絶対値を演算で算出する必要が無い為、処理負荷を低減した実施例2のスペシャルケースとなり、高い実効性を備えるものである。
【0122】
閾値THL及びTHAはあまり大きな値に設定すると、平均値の発生確率が高くなり、予測量子化パラメータの参照先に偏りがある場合には有効性が弱くなるので、2前後に設定することが望ましい。
【0123】
また、図13の領域3及び4において、予測量子化パラメータとしてQPLとQPAの平均値をとることとしたが、ΔL及びΔAの比較を行い、予測量子化パラメータとして参照する隣接ブロックの量子化パラメータを判定してもよい。図12のフローチャートのS211の中で、或いはS211の後に、ΔLとΔAを比較する。ΔLが大きい場合はQPA、ΔAが大きい場合はQPL、同じ大きさの場合はQPLとQPAの平均値を予測量子化パラメータとする。
【0124】
[実施例3]
実施例3における第1の予測量子化パラメータ導出部303の動作について説明する。実施例1との相違は、左或いは上の隣接ブロックの量子化パラメータを予測量子化パラメータとして参照していたのを、予測量子化パラメータの判定に基づいて、左及び上の隣接ブロックの量子化パラメータに重み付けを行い、導出される値を予測量子化パラメータとする点である。
【0125】
図14は実施例3における予測量子化パラメータ導出部114の動作を示すフローチャートである。図14のフローチャートのS300からS304までは実施例1の図6のS100からS104までと同じであるので、説明を割愛し、S301の左と上の隣接ブロックの量子化パラメータがともに正である、即ち左と上の隣接ブロックがともに存在すると判定された場合から説明する。
【0126】
左及び上の隣接ブロックの両方が存在する場合、QPLとQPALとの一致判定を行う(S305)。QPLとQPALが一致する場合、上の隣接ブロックの量子化パラメータの重み付け係数FAを5、左の隣接ブロックの量子化パラメータの重み付け係数FLを3とし、上の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S306)。QPLとQPALが一致しない場合、S307に進み、QPAとQPALとの一致判定を行う(S307)。QPAとQPALが一致する場合、FAを3、FLを5として、左の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S308)。QPAとQPALが一致しない場合、FAとFLをともに4とし、左と上の隣接ブロックの量子化パラメータに対する重み付けを均等化する(S309)。これはQPLとQPAの平均値を算出することと等価であり、実施例1と同等となる。決定した重み付け係数からと各量子化パラメータから次式にて予測量子化パラメータpredQPを算出する(S310)。
【0127】
【数9】

【0128】
ここで、上式の分母はFA+FLであり、分子の2は四捨五入の為に加算される(FA+FL)/2の値である。
【0129】
こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0130】
また、予測量子化パラメータの判定処理において、S305で一致と判定された場合にのみ、上の隣接ブロックの量子化パラメータの重み付け係数を大きくして、それ以外は左の隣接ブロックの量子化パラメータの重み付け係数を大きくするこようにして、負荷の軽い判定とすることも可能である。この手法は、符号化及び復号がラスタースキャン順(画面の左上から右下への順次走査)に行われることから、左の隣接ブロックの量子化パラメータの重み付け係数への重み付けを優先することとして、簡易的な判定を行うものである。
【0131】
上述の予測量子化パラメータの判定処理において、図14のS301の左と上の隣接ブロックの量子化パラメータがともに正である、即ち左と上の隣接ブロックがともに存在すると判定された場合から説明する。
【0132】
図15は、左と上の隣接ブロックがともに存在すると判定された後の簡易判定処理の動作を表すフローチャートである。左及び上の隣接ブロックの両方が存在する場合、QPLとQPALとの一致判定を行う(S311)。QPLとQPALが一致する場合、上の隣接ブロックの量子化パラメータの重み付け係数FAを5、左の隣接ブロックの量子化パラメータの重み付け係数FLを3とし、上の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S312)。QPLとQPALが一致しない場合、FAを3、FAを5として、左の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S313)。決定した重み付け係数に基づいて、上述したS310にて予測量子化パラメータpredQPを算出する。
【0133】
更に、実施例2の判定処理とも組合せは可能である。この場合、図13で示される差分絶対値ΔL及びΔAと閾値THL及びTHAとの比較を状態判定フラグSL及びSAと関連付けを行った2次元配置図に対して、各領域に重み付け係数を設定しておくことで可能となる。図16に重み付け係数を設定した2次元配置の一例を示す。領域1はFAを5、FLを3とし、領域2はFAを3、FLを5とし、残りの領域3及び4ではFA、FLともに4と設定する。状態判定フラグにより選択された領域の重み付け係数により、予測量子化パラメータを導出する。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0134】
尚、ここでは重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)、(4,4)、(3,5)としたが、これ以外の係数を設定してもよい。但し、計算の高速化を重視する場合、FA+FLが2の冪乗で表される変数を選択することが望ましい。上述した予測量子化パラメータの導出式をビットシフト演算で行うと次式で表される。
【0135】
【数10】

【0136】
更に、重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)を(FA,FL)=(8,0)、(FA,FL)=(3,5)を(FA,FL)=(0,8)とすると、前者では上の隣接ブロック、後者では左の隣接ブロックとなり、これは実施例1と同じ結果となる。但し、実施例1では、QPAとQPLの平均値を算出する場合のみ計算処理を行い、平均値を予測量子化パラメータとしない場合は左或いは上の隣接ブロックの量子化パラメータを選択するだけで済む為、処理の簡略化と高速化を実現することが可能となる。
【0137】
[実施例4]
実施例4における第1の予測量子化パラメータ導出部303の動作について説明する。図17は実施例4における第1の予測量子化パラメータ導出部303の動作を示すフローチャートである。
【0138】
最初に、メモリ302から符号化対象ブロックに隣接する周囲の既符号化済みのブロックの量子化パラメータを取得する(S400)。符号化対象ブロックの左上の基準位置情報から、符号化情報格納メモリ113に格納された記憶領域をアクセスして、該当するブロックの量子化パラメータを予測量子化パラメータ導出部114内部のメモリ302に供給する。画像の左端或いは上端に符号化対象ブロックが位置している場合、左或いは上及び左上の隣接ブロックは存在しない。ここで、量子化パラメータは常に正値をとることに着目して、隣接ブロックが存在しない場合、隣接ブロックの量子化パラメータQPx(x=L,A,AL)を0に設定して、予測量子化パラメータ導出部114に供給する。次に左と上の隣接ブロックが存在するか否かを判定する(S401)。左及び上の隣接ブロックの量子化パラメータがともに正の場合、両方が存在するので、S405に進む。そうでない場合、即ち一方が存在しない場合はS402に進む。S402からS404の処理過程について実施例1〜3と同様なので割愛する。
【0139】
左及び上の隣接ブロックの両方が存在する場合、左の隣接ブロックの量子化パラメータQPLと左上の隣接ブロックの量子化パラメータQPALとの差分絶対値ΔL及び上の隣接ブロックの量子化パラメータQPAと左上の隣接ブロックの量子化パラメータQPALとの差分絶対値ΔAとを算出する。算出されたΔLとΔAとの差分をとり、その差分をパラメータDで除算を行い、得られる商を量子化ファクターδとすると、δは次式から算出される(S405)。
【0140】
【数11】

【0141】
ここで、パラメータDは、ΔLとΔAとの差分をD単位に量子化するステップであり、図18に示されるように、パラメータDによりΔLとΔAとの差分の量子化値としてδが算出される。
【0142】
本実施例では、上式で得られたδに応じて、左及び上の隣接ブロックの量子化パラメータに係る重み付け係数を変更して、予測量子化パラメータを導出する。ΔLとΔAとの差分が正で大きい場合は、左と左上の隣接ブロックの量子化パラメータとの差が大きい場合である。符号化対象ブロックとその周囲の既符号化済みの隣接ブロックは、上2つのブロック(上と左上の隣接ブロック)と下2つのブロック(左の隣接ブロックと符号化対象ブロック)との間で量子化パラメータの差が生じる傾向にある。この場合、符号化対象ブロックは左の隣接ブロックに近い量子化パラメータをとると判定し、左の隣接ブロックの量子化パラメータに対する重み付けを大きくする。
【0143】
逆に、ΔLとΔAとの差分が負で大きい場合は、上と左上の隣接ブロックの量子化パラメータとの差が大きい場合である。符号化対象ブロックとその周囲の既符号化済みの隣接ブロックは、左2つのブロック(左と左上の隣接ブロック)と右2つのブロック(上の隣接ブロックと符号化対象ブロック)との間で量子化パラメータの差が生じる傾向にある。この場合、符号化対象ブロックは上の隣接ブロックに近い量子化パラメータをとると判定し、上の隣接ブロックの量子化パラメータに対する重み付けを大きくする。
【0144】
ΔLとΔAとの差分が0に近い場合は、符号化対象の左及び上の隣接ブロックが近い量子化パラメータとなる場合である。この場合、左と上の隣接ブロックの量子化パラメータに対する重み付けを均等化する。
【0145】
このように、量子化ファクターδに応じて左と上の隣接ブロックの量子化パラメータの重み付け係数を可変させて、最適な予測量子化パラメータを導出する為に、以下ではδの正規化を行う。
【0146】
まず、δの上限MAX及び下限MINを設定し、δをMAX及びMINの範囲内に収まる値に制限する(S406)。ここで、MINは−MAXと等価であり、MAX及びMINは後工程のS408で設定されるテーブルの標本数に合わせるように設定する。次に、δにオフセット値offsetを加算してindexを算出する(S407)。indexは後工程のS408で設定されるテーブルのインデックスであり、0を含む整数として表される。その為、δにoffsetを加算して、正整数に変換する。offsetにはMAXが設定され、indexの最小数はδ+offset=−MIN+MAX=0として表すことが可能となる。算出されたindexから該当する重み付け係数の変換テーブルから読み出す(S408)。ここでは、MAX=2とした場合の例を用いて説明する。
【0147】
図19はMAXを2として場合に、ΔLとΔAとの差分からδを算出し、上限と下限を設けた場合の変換例である。δは−2≦δ≦2の範囲で5つの整数値をとるので、これら5つの値に合わせて、重み付け係数のテーブルが設定される。図20に重み付け係数のテーブルの一例を示す。重み付け係数のテーブルの中でMAXの値となるindex(この場合2となる)で左及び上の隣接ブロックの量子化パラメータに対する重み付けを均等とし、indexが小さくなるに従い、上の隣接ブロックの量子化パラメータに対する重み付け係数FAを大きくし、indexが大きくなるに従い、左の隣接ブロックの量子化パラメータに対する重み付け係数FLを大きくなるように設定する。続いて、indexで指定される重み付け係数の組(FA,FL)を選択して、予測量子化パラメータを導出する(S409)。決定した重み付け係数からと各量子化パラメータから次式にて予測量子化パラメータpredQPを導出する。
【0148】
【数12】

【0149】
ここで、上式の分母はFA+FLであり、分子の2は四捨五入の為に加算される(FA+FL)/2の値である。
【0150】
以上のようにして、予測量子化パラメータが導出される。上述した実施例では、パラメータDによる除算を行った為、図18で示されるように0近傍付近の発生頻度が高くなる傾向にあるので、図21で示されるように均等分割をして発生頻度を均等化しても構わない。この場合、S405の量子化ファクターδの演算方式を変更することで解決される。
【0151】
尚、ここでは重み付け係数FA及びFLの係数の組合せとして、(4,0)、(3,1)、(2,2)としたが、これ以外の係数を設定してもよい。但し、計算の高速化を重視する場合、FA+FLが2の冪乗で表される変数を選択することが望ましい。上述した予測量子化パラメータの導出式をビットシフト演算で行うと次式で表される。
【0152】
【数13】

【0153】
また、δを演算として除算を行っているが、パラメータDを2の冪乗の値とし、δの演算をシフト演算やビットマスクにより、処理を高速化することも可能である。
【0154】
[実施例5]
実施例5では、第2の予測量子化パラメータ導出部304の動作について説明する。第2の予測量子化パラメータ導出部304は、予測画像生成部108で符号化対象ブロックの予測モードがイントラ予測を選択した場合に、イントラ予測で参照する隣接ブロックの画素の方向を示すイントラ予測モードに基づいて、予測量子化パラメータを選択或いは導出する。
【0155】
図24は、符号化対象ブロックの予測モードがイントラ予測の場合に、イントラ予測モードの予測方向と予測量子化パラメータとして選択する左及び上の隣接ブロックとの関係を示す図である。イントラ予測では、イントラ予測モードが示す方向の隣接ブロックの画素から予測信号を生成して、符号化効率が高く、歪量の少ないイントラ予測モードが選択される。その為、イントラ予測モードが上側を選択する場合は上の隣接ブロックとの相関性が高く、イントラ予測モードが左側を選択する場合は左の隣接ブロックとの相関性が高いと判断される。ブロック間の相関性が高い方が、ブロック内の絵柄や複雑度合い(アクティビティ)が似ており、アクティビティから算出される量子化パラメータも近い値になる。そこで、本実施例5では、符号化対象ブロックの量子化パラメータの高効率で符号化、伝送する為に、符号化対象ブロックと相関性が高い隣接ブロックをイントラ予測モードで予測判定し、判定された隣接ブロックの量子化パラメータを予測量子化パラメータとして選択する。
【0156】
図26は実施例5における第2の予測量子化パラメータ導出部304の動作を示すフローチャートである。
【0157】
まず、メモリ302から符号化対象ブロックに隣接する周囲の既符号化済みのブロックの量子化パラメータを取得する(S500)。符号化対象ブロックの左上の基準位置情報から、符号化情報格納メモリ113に格納された記憶領域をアクセスして、該当するブロックの量子化パラメータを予測量子化パラメータ導出部114内部のメモリ302に供給する。画像の左端或いは上端に符号化対象ブロックが位置している場合、左或いは上及び左上の隣接ブロックは存在しない。ここで、量子化パラメータは常に正値をとることに着目して、隣接ブロックが存在しない場合、隣接ブロックの量子化パラメータQPx(x=L,A,AL)を0に設定して、第2の予測量子化パラメータ導出部304に供給する。
【0158】
次に、メモリ302から符号化対象ブロックのイントラ予測モードintraPredModeを取得する。イントラ予測モードは図23で示される予測方向に対して割り当てられた番号である。以下の判定処理を容易にする為に、イントラ予測モードを図25に示される変換テーブルを用いてイントラ予測方向(以下、intraPredDirecと称す)に変換する。イントラ予測方向は、intraPredDirec=0をイントラ予測における周囲の復号済みのブロックから平均値を算出することにより予測する平均値予測(intraPredMode=2)に割り当て、それ以外の1〜33を図23で示されるイントラ予測モードの予測方向の右上(intraPredMode=6)から左下(intraPredMode=9)に向けて対応付けるようにして割り当てられる。この変換テーブルにより、取得したイントラ予測モードをイントラ予測方向に変換する(S501)。
【0159】
変換されたイントラ予測方向が0であるか否かを判定する(S502)。intraPredDirec=0となるのは平均値予測によるイントラ予測が行われる場合である。この場合、左或いは上の隣接ブロックのどちらか一方を優先して選択する判断が出来ないので、イントラ予測方向による判定を実施せず、S503に進み、左と上の隣接ブロックが存在するか否かを判定する(S503)。左及び上の隣接ブロックの量子化パラメータQPL及びQPAがともに正である場合、両方が存在するので、S504に進み、QPLとQPAの平均値を予測量子化パラメータとする(S504)。そうでない場合、即ち少なくとも一方が存在しない場合はS505に進む。
【0160】
次に、左及び上の隣接ブロックがともに存在しないか否かを判定する(S505)。即ち、左及び上の隣接ブロックの量子化パラメータがともに0の場合、両方ともに存在しないので、予測量子化パラメータとして左及び上の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする。尚、画像の左上端のブロックが符号化対象ブロックである場合は、左と上の隣接ブロック、更に直前に符号化したブロックが存在しないので、ピクチャ或いはスライスの量子化パラメータを予測量子化パラメータとする(S506)。左或いは上の隣接ブロックのどちらか一方が存在する場合、正である一方の量子化パラメータを予測量子化パラメータとする(S507)。
【0161】
S502での判定に戻り、イントラ予測方向が0でない場合、イントラ予測方向が18未満が否かを判定する(S508)。イントラ予測方向が18未満となる場合、図24で示されるように上の隣接ブロックの参照することとして、上の隣接ブロックが存在するか否かを判定する(S509)。上の隣接ブロックが存在する時、QPAが正であり、この場合QPAを予測量子化パラメータとする(S510)。上の隣接ブロックが存在しない場合、即ちQPAが0の場合はS506に進み、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする。
【0162】
一方、イントラ予測方向が18を超える場合、左の隣接ブロックの参照することとして、左の隣接ブロックが存在するか否かを判定する(S511)。左の隣接ブロックが存在する時、QPLが正であり、この場合QPLを予測量子化パラメータとする(S512)。左の隣接ブロックが存在しない場合、即ちQPLが0の場合はS506に進み、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする。こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0163】
尚、実施例5では、左或いは上の隣接ブロックの量子化パラメータの参照判定として、イントラ予測方向の閾値を18としたが、この値でなくてもよく、動画像符号化装置100及び動画像復号装置200で矛盾が生じない限り、暗黙的に設定出来るものとする。
【0164】
[実施例6]
実施例6における第2の予測量子化パラメータ導出部304の動作について説明する。実施例5との相違は、左或いは上の隣接ブロックの量子化パラメータを予測量子化パラメータとして参照していたのを、イントラ予測方向の判定に基づいて、左及び上の隣接ブロックの量子化パラメータに重み付けを行い、導出される値を予測量子化パラメータとする点である。
【0165】
図27は実施例6における第2の予測量子化パラメータ導出部304の動作を示すフローチャートである。図27のフローチャートのS600からS607までは実施例5の図26のS500からS507までと同じであるので、説明を割愛し、S602のイントラ予測方向が0でないと判定された場合から説明する。
【0166】
イントラ予測方向が0でない場合、イントラ予測方向が18未満が否かを判定する(S608)。イントラ予測方向が18未満となる場合はmethod1に進み(S609)、そうでない場合はmethod2に進む(S610)。
【0167】
まず、method1の処理を図28を用いて説明する。S608においてイントラ予測方向が18未満と判定された後に、左と上の隣接ブロックが存在するか否かを判定する(S620)。左及び上の隣接ブロックの量子化パラメータQPL及びQPAがともに正である場合、両方が存在するので、上の隣接ブロックの量子化パラメータの重み付け係数FAを5、左の隣接ブロックの量子化パラメータの重み付け係数FLを3とし、上の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S621)。左及び上の隣接ブロックの量子化パラメータの少なくとも一方が存在しない場合はS622に進む。次に、上の隣接ブロックが存在しないか否かを判定する(S622)。即ち、上の隣接ブロックの量子化パラメータが0の場合、存在しないので、予測量子化パラメータとして上の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする(S624)。上の隣接ブロックが存在する場合は、FAを8、FLを0に設定する(S623)。これはQPAを予測量子化パラメータとすることと等価である。
【0168】
続いて、method2の処理を図29を用いて説明する。S608においてイントラ予測方向が18を超えると判定された後に、左と上の隣接ブロックが存在するか否かを判定する(S630)。左及び上の隣接ブロックの量子化パラメータQPL及びQPAがともに正である場合、両方が存在するので、上の隣接ブロックの量子化パラメータの重み付け係数FAを3、左の隣接ブロックの量子化パラメータの重み付け係数FLを5とし、左の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S621)。左及び上の隣接ブロックの量子化パラメータの少なくとも一方が存在しない場合はS632に進む。次に、左の隣接ブロックが存在しないか否かを判定する(S632)。即ち、左の隣接ブロックの量子化パラメータが0の場合、存在しないので、予測量子化パラメータとして左の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする(S634)。左の隣接ブロックが存在する場合は、FAを0、FLを8に設定する(S633)。これはQPLを予測量子化パラメータとすることと等価である。
【0169】
以上のようにして決定した重み付け係数からと各量子化パラメータから次式にて予測量子化パラメータpredQPを導出する(S611)。
【0170】
【数14】

【0171】
ここで、上式の分母はFA+FLであり、分子の2は四捨五入の為に加算される(FA+FL)/2の値である。
【0172】
こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0173】
また、S604では実施例5のS504と同様にQPLとQPAの平均値を予測量子化パラメータとして導出する。実施例6での導出過程に合わせると、FAとFLをともに4とし、左と上の隣接ブロックの量子化パラメータに対する重み付けを同じにする(S604)。決定された重み付け係数からと各量子化パラメータからS611にて予測量子化パラメータを導出する。以上のようにして、S604における平均値算出も可能となる。
尚、ここでは重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)、(4,4)、(3,5)としたが、これ以外の係数を設定してもよい。但し、計算の高速化を重視する場合、FA+FLが2の冪乗で表される変数を選択することが望ましい。上述した予測量子化パラメータの導出式をビットシフト演算で行うと次式で表される。
【0174】
【数15】

【0175】
更に、重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)を(FA,FL)=(8,0)、(FA,FL)=(3,5)を(FA,FL)=(0,8)とすると、前者では上の隣接ブロック、後者では左の隣接ブロックとなり、これは実施例5と同じ結果となる。但し、実施例5では、QPAとQPLの平均値を算出する場合のみ計算処理を行い、平均値を予測量子化パラメータとしない場合は左或いは上の隣接ブロックの量子化パラメータを選択するだけで済む為、処理の簡略化と高速化を実現することが可能となる。
【0176】
[実施例7]
実施例7における第2の予測量子化パラメータ導出部304の動作について説明する。実施例6との相違は、イントラ予測モードの予測方向に応じて、左及び上の隣接ブロックの量子化パラメータの重み付け係数を変更して、予測量子化パラメータを導出する点である。
【0177】
図30はイントラ予測モードの予測方向を閾値THLO及びTHHIにより3つの領域に分割した一例を示す図である。閾値THLO及びTHHIは図30中に太点線で示され、閾値にて区切られた領域の範囲内で同じ重み付け係数に設定される。THLOよりも右側にあるイントラ予測モードでは、主に符号化対象ブロックの上に隣接している符号化済みブロックの画素信号を用いてイントラ予測を行うので、上の隣接ブロックとの相関性が高い。一方、THHIから下側にあるイントラ予測モードでは、主に符号化対象ブロックの左に隣接している符号化済みブロックの画素信号を用いてイントラ予測を行うので、左の隣接ブロックとの相関性が高い。その為、イントラ予測モードがTHLOより右側にある場合は上の隣接ブロックの量子化パラメータに対して重み付けを大きくし(FA>FL)、THHIから下側にある場合は左の隣接ブロックの量子化パラメータに対して重み付けを大きくする(FA<FL)。また、THLOからTHHIの間にあるイントラ予測モードでは、符号化対象ブロックの左及び上に隣接している符号化済みブロックの一方に偏らないので、左と上の隣接ブロックの量子化パラメータに対する重み付けを均等にする(FA=FL)。尚、閾値THLO及びTHHIはイントラ予測方向の値であり、実施例7ではTHLOを13、THHIを22とする。
【0178】
図31は実施例7における第2の予測量子化パラメータ導出部304の動作を示すフローチャートである。図31のフローチャートのS700からS707までは実施例6の図27のS600からS607までと同じであるので、説明を割愛し、S702のイントラ予測方向が0でないと判定された場合から説明する。
【0179】
イントラ予測方向が0でない場合、閾値THLO及びTHHIを取得する(S708)。THLO及びTHHIは、動画像符号化装置100及び動画像復号装置200で矛盾が生じない限り、暗黙的に設定出来るものであり、本実施例7では図30で示されるようにそれぞれ13及び22とする。次に、method3に進む(S709)。
【0180】
method3の詳細な処理を図32を用いて説明する。最初に、イントラ予測方向が閾値THLO未満か否かが判定される(S720)。THLO未満である場合、上の隣接ブロックの量子化パラメータの重み付け係数FAを5、左の隣接ブロックの量子化パラメータの重み付け係数FLを3とし、上の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S721)。そうでない場合は、イントラ予測方向が閾値THHI未満か否かが判定される(S722)。THHI未満である場合、FAとFLをともに4とし、左と上の隣接ブロックの量子化パラメータに対する重み付けを均等化する(S723)。そうでない場合は、上の隣接ブロックの量子化パラメータの重み付け係数FAを3、左の隣接ブロックの量子化パラメータの重み付け係数FLを5とし、左の隣接ブロックの量子化パラメータに対して重み付けを大きくする(S724)。
【0181】
続いて、左と上の隣接ブロックが存在するか否かを判定する(S725)。左及び上の隣接ブロックの量子化パラメータQPL及びQPAがともに正である場合、両方が存在するので、設定した重み付け係数を変更しない。左及び上の隣接ブロックの量子化パラメータの少なくとも一方が存在しない場合はS726に進み、左及び上の隣接ブロックがともに存在しないか否かを判定する(S726)。即ち、左及び上の隣接ブロックの量子化パラメータがともに0の場合、両方ともに存在しないので、予測量子化パラメータとして左及び上の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとし、後段での重み付け係数による演算過程を省略する(S727)。次に左の隣接ブロックが存在しないか否かを判定する(S728)。即ち、左の隣接ブロックの量子化パラメータが0の場合は存在しないので、上の隣接ブロックの量子化パラメータの重み付け係数FAを8、左の隣接ブロックの量子化パラメータの重み付け係数FLを0として、上の隣接ブロックの量子化パラメータQPAを予測量子化パラメータとする(S729)。左の隣接ブロックの量子化パラメータが0でない場合は、上の隣接ブロックの量子化パラメータの重み付け係数FAを0、左の隣接ブロックの量子化パラメータの重み付け係数FLを8として、左の隣接ブロックの量子化パラメータQPLを予測量子化パラメータとする(S730)。
【0182】
以上のようにして決定した重み付け係数からと各量子化パラメータから次式にて予測量子化パラメータpredQPを導出する(S710)。
【0183】
【数16】

【0184】
ここで、上式の分母はFA+FLであり、分子の2は四捨五入の為に加算される(FA+FL)/2の値である。
【0185】
こうして導出された予測量子化パラメータは差分量子化パラメータ生成部111に供給される。
【0186】
尚、ここでは重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)、(4,4)、(3,5)としたが、これ以外の係数を設定してもよい。但し、計算の高速化を重視する場合、FA+FLが2の冪乗で表される変数を選択することが望ましい。上述した予測量子化パラメータの導出式をビットシフト演算で行うと次式で表される。
【0187】
【数17】

【0188】
上述した重み付け係数FA及びFLの係数の組合せとして、(FA,FL)=(5,3)を(FA,FL)=(8,0)、(FA,FL)=(3,5)を(FA,FL)=(0,8)とすると、前者では上の隣接ブロック、後者では左の隣接ブロックとなる。この場合のイントラ予測モードの予測方向を閾値THLO及びTHHIにより3つの領域に分割した一例を図33に示す。図33で示されるように、THLOからTHHIの間にあるイントラ予測モードの場合にQPAとQPLの平均値を算出する計算処理を行い、それ以外の平均値を予測量子化パラメータとしない場合は左或いは上の隣接ブロックの量子化パラメータを選択するだけで実現出来る。その為、処理の簡略化と高速化が可能となる。
【0189】
また、実施例7では、閾値THLO及びTHHIの値をそれぞれイントラ予測方向の値で13、22としたが、これらの値でなくてもよく、動画像符号化装置100及び動画像復号装置200で矛盾が生じない限り、暗黙的に設定出来るものとする。
【0190】
更に、実施例7では、閾値THLO及びTHHIにて、イントラ予測モードの予測方向を3つの領域に分割したが、閾値の数を増やして、分割数を増やしてもよい。但し、各領域で設定される重み付け係数FA及びFLの係数は、計算の高速化を重視する場合、FA+FLが2の冪乗で表される変数を選択することが望ましい。
【0191】
以上述べた実施例5〜7では、それぞれのS502、S602及びS702のイントラ予測方向が0か否かの判定において、イントラ予測方向が0である場合は、平均値予測(イントラ予測モードが2)によるイントラ予測が行われる場合であり、左と上の隣接ブロックの量子化パラメータの平均値を予測量子化パラメータとした。この場合、左或いは上の隣接ブロックのどちらか一方を優先して選択或いは重み付けする判断がイントラ予測モードでは出来ないので、第2の予測量子化パラメータ導出部でイントラ予測モードによる判定を行わずに、第1の予測量子化パラメータ導出部で判定を行うことも可能である。このような判定を適用した予測量子化パラメータ導出部114の詳細な構成を図34に示す。予測量子化パラメータ導出部114はスイッチ401、メモリ402、第1の予測量子化パラメータ導出部403、第2の予測量子化パラメータ導出部404及び再演算判定部405を備える。図34のスイッチ401から第1の予測量子化パラメータ導出部403の諸部は、図22のスイッチ301から第1の予測量子化パラメータ導出部303の諸部と同じ機能を有しているので、説明を割愛する。図34の第2の予測量子化パラメータ導出部404に、上述した図22の第2の予測量子化パラメータ導出部304と異なる機能を新たに追加したので、その差異について説明する。
【0192】
図35は第2の予測量子化パラメータ導出部404の動作を説明するフローチャートである。S800からS802までの処理は上述した第2の予測量子化パラメータ導出部304と同様であり、S804は上述した実施例5〜7のイントラ予測モードによる予測量子化パラメータの判定処理に該当するので、説明を割愛する。上述した第2の予測量子化パラメータ導出部304との差異は、イントラ予測方向が0であるか否かの判定(S802)の後の処理である。intraPredDirec=0となるのは平均値予測によるイントラ予測が行われる場合であるので、予測量子化パラメータpredQPを0に設定する。量子化パラメータは常に正値をとるので、予測量子化パラメータも同様に正値となる。そこで、左或いは上の隣接ブロックのどちらか一方を優先して選択或いは重み付けする判断が出来ない場合は、予測量子化パラメータを0に設定する。導出された予測量子化パラメータは再演算判定部405に供給される。
【0193】
再演算判定部405は、第2の予測量子化パラメータ導出部404から供給される予測量子化パラメータが0である場合、第2の予測量子化パラメータ導出部404で判定されなかったとみなし、第1の予測量子化パラメータ導出部403で再度予測量子化パラメータの導出を促す。予測量子化パラメータが0でない場合、第2の予測量子化パラメータ導出部404で導出された予測量子化パラメータを差分量子化パラメータ生成部111に供給する。
【0194】
図36は第2の予測量子化パラメータ導出部404の動作を説明する別形態のフローチャートである。図35との差異は、イントラ予測方向が0であるか否かの判定(S902)の後に、更に左と上の隣接ブロックが存在するか否かの判定以降の処理が追加された点である。以下では、図35との差異についてのみ説明する。
【0195】
イントラ予測方向が0であるか否かの判定(S902)で、イントラ予測方向が0の場合は、左と上の隣接ブロックが存在するか否かの判定に進む(S903)。左及び上の隣接ブロックの量子化パラメータQPL及びQPAがともに正である場合、両方が存在するが、左或いは上の隣接ブロックのどちらか一方を優先して選択或いは重み付けする判断が出来ないので、予測量子化パラメータを0に設定する。一方、そうでない場合、即ち少なくとも一方が存在しない場合はS905に進む。次に、左及び上の隣接ブロックがともに存在しないか否かを判定する(S905)。即ち、左及び上の隣接ブロックの量子化パラメータがともに0の場合、両方ともに存在しないので、予測量子化パラメータとして左及び上の隣接ブロックの量子化パラメータを参照出来ない。そこで、直前に符号化を終了したブロックの量子化パラメータを予測量子化パラメータとする(S906)。左或いは上の隣接ブロックのどちらか一方が存在する場合、正である一方の量子化パラメータを予測量子化パラメータとする(S907)。
【0196】
導出された予測量子化パラメータは再演算判定部405に供給され、再演算判定部405にて上述と同様の判定を行い、予測量子化パラメータを差分量子化パラメータ生成部111に供給する。
【0197】
実施の形態の動画像符号化装置によれば、符号化対象のブロック毎に符号化される量子化パラメータを、周囲の符号化済みのブロックの量子化パラメータ及び符号化情報を用いて、最適な予測量子化パラメータを予測して導出し、量子化パラメータと予測量子化パラメータとの差分をとり符号化することで、画質を変化させずに、量子化パラメータの符号量を削減して、符号化効率を向上させることが出来る。
【0198】
また、符号化側と復号側で、量子化パラメータ予測の共通の機能として実装出来るので、回路規模を縮小することが出来る。これは、符号化済みの隣接ブロックが符号化側では次の符号化対象ブロックの予測の為に局部復号したブロックとなり、復号済みブロックと同一である為、符号化側と復号側で矛盾を生じないように量子化パラメータ予測の判定を実現したことによる。
【0199】
以上述べた実施の形態の動画像符号化装置が出力する動画像の符号化ストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有しており、動画像符号化装置に対応する動画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
【0200】
動画像符号化装置と動画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、動画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する動画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して動画像復号装置に供給する動画像受信装置とが設けられる。
【0201】
動画像送信装置は、動画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。動画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、動画像復号装置に提供するパケット処理部とを含む。
【0202】
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ROM(リード・オンリ・メモリ)やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【0203】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【0204】
100 動画像符号化装置、 101 画像メモリ、 102 残差信号生成部、 103 直交変換・量子化部、 104 第2の符号化ビット列生成部、 105 逆量子化・逆直交変換部、 106 復号画像信号重畳部、 107 復号画像メモリ、 108 予測画像生成部、 109 アクティビティ算出部、 110 量子化パラメータ算出部、 111 差分量子化パラメータ生成部、 112 第1の符号化ビット列生成部、 113 符号化情報格納メモリ、 114 予測量子化パラメータ導出部、 115 符号化ビット列多重化部、 200 動画像復号装置、 201 ビット列分離部、 202 第1符号化ビット列復号部、 203 量子化パラメータ生成部、 204 符号化情報格納メモリ、 205 予測量子化パラメータ導出部、 206 第2符号化ビット列復号部、 207 逆量子化・逆直交変換部、 208 復号画像信号重畳部、 209 予測画像生成部、 210 復号画像メモリ、 301 スイッチ、 302 メモリ、 303 第1の予測量子化パラメータ導出部、 304 第2の予測量子化パラメータ導出部、 401 スイッチ、 402 メモリ、 403 第1の予測量子化パラメータ導出部、 404 第2の予測量子化パラメータ導出部、 405 再演算判定部。

【特許請求の範囲】
【請求項1】
動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化装置であって、
ブロック単位で画像の複雑度合いを表すアクティビティを算出するアクティビティ算出部と、
前記アクティビティに基づき符号化対象ブロックの量子化パラメータを算出する量子化パラメータ算出部と、
前記量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリから前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の前記隣接ブロックの量子化パラメータから前記符号化対象ブロックの予測量子化パラメータを導出する予測量子化パラメータ導出部と、
前記符号化対象ブロックの量子化パラメータと前記予測量子化パラメータとの差分により前記符号化対象ブロックの差分量子化パラメータを生成する差分量子化パラメータ生成部と、
前記符号化対象ブロックの差分量子化パラメータを符号化する符号化部とを備えることを特徴とする動画像符号化装置。
【請求項2】
前記予測量子化パラメータ導出部は、前記符号化対象ブロックの予測モードがインター予測の場合に前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロック間の量子化パラメータの差分に基づいて予測量子化パラメータを導出する第1の予測量子化パラメータ導出部と、前記符号化対象ブロックの予測モードがイントラ予測の場合にイントラ予測の予測方向に基づいて予測量子化パラメータを導出する第2の予測量子化パラメータ導出部とを備えることを特徴とする請求項1に記載の動画像符号化装置。
【請求項3】
前記予測量子化パラメータ導出部は、前記符号化対象ブロックの予測モードがイントラ予測の場合は第2の予測量子化パラメータ導出部に切り換えるとともに、前記第2の予測量子化パラメータ導出部にてイントラ予測の予測方向に基づいた判断が出来ない場合は第1の予測量子化パラメータ導出部にて予測量子化パラメータを導出することを特徴とする請求項1に記載の動画像符号化装置。
【請求項4】
前記第2の予測量子化パラメータ導出部は、前記符号化対象ブロックのイントラ予測の予測方向が所定の予測方向の場合及び前記所定の予測方向よりも上側を向いている場合は前記符号化対象ブロックの上に隣接する隣接ブロックの量子化パラメータを、前記符号化対象ブロックのイントラ予測の予測方向が所定の予測方向よりも左側を向いている場合は前記符号化対象ブロックの左に隣接する隣接ブロックの量子化パラメータを前記符号化対象ブロックの予測量子化パラメータとして導出することを特徴とする請求項2または3に記載の動画像符号化装置。
【請求項5】
前記第2の予測量子化パラメータ導出部は、複数のイントラ予測の所定の予測方向を設定し、前記所定の予測方向の範囲ごとに前記符号化対象ブロックの左及び上に隣接する隣接ブロックの量子化パラメータの重み付け係数を設定し、前記符号化対象ブロックのイントラ予測の予測方向が前記所定の予測方向の範囲に収まる場合に、前記所定の予測方向の範囲に対して設定された前記重み付け係数により、左及び上に隣接する隣接ブロックの量子化パラメータの重み付け平均値を求め、前記符号化対象ブロックの予測量子化パラメータとして導出することを特徴とする請求項2または3に記載の動画像符号化装置。
【請求項6】
動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化方法であって、
ブロック単位で画像の複雑度合いを表すアクティビティを算出するアクティビティ算出ステップと、
前記アクティビティに基づき符号化対象ブロックの量子化パラメータを算出する量子化パラメータステップと、
前記量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリから前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の前記隣接ブロックの量子化パラメータから前記符号化対象ブロックの予測量子化パラメータを導出する予測量子化パラメータ導出ステップと、
前記符号化対象ブロックの量子化パラメータと前記予測量子化パラメータとの差分により前記符号化対象ブロックの差分量子化パラメータを生成する差分量子化パラメータ生成ステップと、
前記符号化対象ブロックの差分量子化パラメータを符号化する符号化ステップとを備えることを特徴とする動画像符号化方法。
【請求項7】
動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化プログラムであって、
ブロック単位で画像の複雑度合いを表すアクティビティを算出するアクティビティ算出ステップと、
前記アクティビティに基づき符号化対象ブロックの量子化パラメータを算出する量子化パラメータステップと、
前記量子化パラメータを含む符号化情報を記憶する符号化情報格納メモリから前記符号化対象ブロックの周囲に隣接する複数の符号化済みの隣接ブロックの量子化パラメータを読み出し、前記符号化対象ブロックの予測モードに応じて、複数の前記隣接ブロックの量子化パラメータから前記符号化対象ブロックの予測量子化パラメータを導出する予測量子化パラメータ導出ステップと、
前記符号化対象ブロックの量子化パラメータと前記予測量子化パラメータとの差分により前記符号化対象ブロックの差分量子化パラメータを生成する差分量子化パラメータ生成ステップと、
前記符号化対象ブロックの差分量子化パラメータを符号化する符号化ステップとをコンピュータに実行させることを特徴とする動画像符号化プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate


【公開番号】特開2013−106316(P2013−106316A)
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願番号】特願2011−251007(P2011−251007)
【出願日】平成23年11月16日(2011.11.16)
【出願人】(308036402)株式会社JVCケンウッド (1,152)
【Fターム(参考)】