(57)【要約】【課題】  従来の符号化方式においては、サブブロック分割は正方形に限定されていたため、長方形のサブブロック分割がなされた場合、量子化パラメータを符号化するか否かを一意に決められないケースがあった。【解決手段】  サブブロックの形状に応じて適応的に量子化の制御サイズを使用することで、正方形サブブロックだけでなく長方形サブブロックでも適切に量子化パラメータの符号化の制御を可能にすることにより、符号化効率を向上させる。【選択図】  図１
2020005110.tif 000002
【特許請求の範囲】
【請求項１】
画像を複数のサブブロックに分割し、分割されたサブブロックごとに符号化する画像符号化装置において、
前記複数のサブブロックのうち、処理対象であるサブブロックの水平方向と垂直方向のサイズのうち小さい方のサイズが量子化パラメータを符号化する基準となるサイズ以上である場合に量子化パラメータを符号化する符号化手段を有する
ことを特徴とする画像符号化装置。
【請求項２】
画像を複数のサブブロックに分割し、分割されたサブブロックごとに符号化する画像符号化装置において、
前記複数のサブブロックのうち、処理対象であるサブブロックの水平方向と垂直方向のサイズのうち大きい方のサイズが量子化パラメータを符号化する基準となるサイズ以上である場合に量子化パラメータを符号化する符号化手段を有する
ことを特徴とする画像符号化装置。
【請求項３】
画像を複数のサブブロックに分割し、分割されたサブブロックごとに符号化する画像符号化装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの画素数が量子化パラメータを符号化する基準となる画素数以上である場合に量子化パラメータを符号化する符号化手段を有する
ことを特徴とする画像符号化装置。
【請求項４】
画像を複数のサブブロックに分割し、分割されたサブブロックごとに符号化する画像符号化装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの水平方向のサイズと量子化パラメータを符号化する基準となる水平方向のサイズを比較し、
さらに前記処理対象サブブロックの垂直方向のサイズと量子化パラメータを符号化する基準となる垂直方向のサイズを比較し、
前記処理対象サブブロックの水平方向のサイズと垂直方向のサイズの少なくとも１つが前記サイズ以上である場合に量子化パラメータを符号化する符号化手段を有する
ことを特徴とする画像符号化装置。
【請求項５】
画像を複数のサブブロックに分割し、分割した回数を前記サブブロックの深さとして分割されたサブブロックごとに符号化する画像符号化装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの深さが量子化パラメータを符号化するサブブロックの深さである量子化の制御深度の深さ以下である場合に量子化パラメータを符号化する符号化手段を有する
ことを特徴とする画像符号化装置。
【請求項６】
複数のサブブロックから構成された画像を、サブブロックごとに復号する画像復号装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの水平方向と垂直方向のサイズのうち小さい方のサイズが量子化パラメータを復号する基準となるサイズ以上である場合に量子化パラメータを復号する復号手段を有する
ことを特徴とする画像復号装置。
【請求項７】
複数のサブブロックから構成された画像を、サブブロックごとに復号する画像復号装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの水平方向と垂直方向のサイズのうち大きい方のサイズが量子化パラメータを復号する基準となるサイズ以上である場合に量子化パラメータを復号する復号手段を有する
ことを特徴とする画像復号装置。
【請求項８】
複数のサブブロックから構成された画像を、サブブロックごとに復号する画像復号装置において、
前記複数のサブブロックのうち、処理対象である処理対象サブブロックの画素数が量子化パラメータを復号する基準となるサイズの画素数以上である場合に量子化パラメータを復号する復号手段を有する
ことを特徴とする画像復号装置。
【請求項９】
複数のサブブロックから構成された画像を、サブブロックごとに復号する画像復号装置において、
前記複数のサブブロックのうち、処理対象であるサブブロックの水平方向のサイズと量子化パラメータを復号する基準となる水平方向のサイズを比較し、
さらに前記処理対象サブブロックの垂直方向のサイズと基準となる垂直方向のサイズを比較し、
前記処理対象であるサブブロックの水平方向のサイズと垂直方向のサイズの少なくとも１つが前記量子化の制御のサイズ以上である場合に量子化パラメータを復号する復号手段を有する
ことを特徴とする画像復号装置。
【請求項１０】
複数のサブブロックから構成された画像を、分割された回数をサブブロックの深さとしてサブブロックごとに復号する画像復号装置において、
前記複数のサブブロックのうち、処理対象であるサブブロックの深さが量子化パラメータを符号化するサブブロックの深さである量子化の制御深度以下である場合に量子化パラメータを復号する復号手段を有する
ことを特徴とする画像復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラムに関する。
【背景技術】
【０００２】
動画像の圧縮記録の符号化方式として、ＨＥＶＣ（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）符号化方式（以下、ＨＥＶＣと記す）が知られている。ＨＥＶＣでは符号化効率向上のため、従来のマクロブロック（１６×１６画素）より大きなサイズの基本ブロックが採用された。この大きなサイズの基本ブロックはＣＴＵ（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ）と呼ばれ、そのサイズは最大６４×６４画素である。ＣＴＵはさらに予測や変換を行う単位となるサブブロックに分割される。特開２０１２−１６１０７４（特許文献１）では、量子化パラメータを符号化するサブブロックサイズ（以下、量子化の制御サイズとする）を算出し、量子化パラメータの符号化単位の変更を可能にする技術が開示されている。
【０００３】
近年、ＨＥＶＣの後継としてさらに高効率な符号化方式の国際標準化を行う活動が開始された。ＪＶＥＴ（Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｅｘｐｅｒｔｓ  Ｔｅａｍ）がＩＳＯ・ＩＥＣとＩＴＵ−Ｔの間で設立され、ＶＶＣ（Ｖｅｒｓａｔｉｌｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）符号化方式（以下、ＶＶＣ）として標準化が進められている。符号化効率向上のため、従来の正方形サブブロックベースのイントラ予測・直交変換方法に加え、長方形サブブロックベースのイントラ予測・直交変換方法が検討されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１６１０７４
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＶＶＣにおいては、ＨＥＶＣのような正方形のサブブロックだけでなく長方形のサブブロック分割が検討されている。ＨＥＶＣにおける量子化パラメータを符号化する基準となる量子化の制御サイズは、正方形のサブブロックを想定したものである。一方、ＶＶＣで検討されている長方形のサブブロック分割がなされた場合、量子化パラメータを符号化するか否かを一意に決められないケースが存在する。したがって、本発明は上述した課題を解決するためになされたものであり、正方形だけでなく長方形のサブブロックでも適切に量子化パラメータの符号化の制御を可能にすることを目的としている。
【課題を解決するための手段】
【０００６】
前述の問題点を解決するため、本発明の画像符号化装置は以下の構成を有する。すなわち、画像符号化装置は、
画像を複数のサブブロックに分割し、分割されたサブブロックごとに符号化することを特徴とし、さらに、前記複数のサブブロックのうち、処理対象である処理対象サブブロックの水平方向と垂直方向のサイズのうち小さい方のサイズが量子化パラメータを符号化するサブブロックサイズである量子化の制御のサイズ以上である場合に量子化パラメータを符号化する符号化手段を有することを特徴とする。
【０００７】
さらに、本発明の画像復号装置は以下の構成を有する。すなわち、画像復号装置は、
複数のサブブロックから構成された画像を、サブブロックごとに復号することを特徴とし、
さらに、前記複数のサブブロックのうち、処理対象である処理対象サブブロックの水平方向と垂直方向のサイズのうち小さい方のサイズが量子化パラメータを復号するサブブロックサイズである量子化の制御のサイズ以上である場合に量子化パラメータを復号する
ことを特徴とする。
【発明の効果】
【０００８】
本発明により、正方形サブブロックだけでなく長方形サブブロックにおいても適切に量子化パラメータの符号化を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態における画像符号化装置の構成を示すブロック図
【図２】本実施形態における画像復号装置の構成を示すブロック図
【図３】本実施形態に係る画像符号化装置における画像符号化処理を示すフローチャート
【図４】本実施形態に係る画像復号装置における画像復号処理を示すフローチャート
【図５】本実施形態の画像符号化装置、復号装置に適用可能なコンピュータのハードウェア構成例を示すブロック図
【図６】ビットストリーム構造の一例を示す図
【図７】本実施形態で用いられるサブブロック分割の一例を示す図
【図８】本実施形態における量子化の制御サイズと処理対象サブブロックの水平方向と垂直方向のサイズのうち短い方との比較を示す図
【図９】本実施形態における量子化の制御サイズと処理対象サブブロックの水平方向と垂直方向のサイズのうち短い方との比較を示す図
【図１０】本実施形態における量子化パラメータの符号化と有意係数の関係を示す図
【図１１】本実施形態における量子化の制御サイズと処理対象サブブロックの水平方向と垂直方向のサイズのうち長い方との比較を示す図
【図１２】本実施形態および本実施形態における量子化の制御サイズの画素数と処理対象サブブロックの画素数との比較を示す図
【図１３】本実施形態で用いられるサブブロック分割のブロックの深さを示す図
【図１４】本実施形態における量子化の制御深度と処理対象サブブロックの深さの比較を示す図
【図１５】本実施形態における量子化パラメータ共有単位に有意係数が存在しない場合の量子化パラメータの参照を示す図
【図１６】量子化の制御の深さを用いた量子化パラメータの符号化処理のフローチャート
【図１７】量子化の制御の深さを用いた量子化パラメータの復号処理のフローチャート
【図１８】量子化の制御のサイズおよび深さを用いた量子化パラメータの符号化処理のフローチャート
【図１９】量子化の制御のサイズおよび深さを用いた量子化パラメータの復号処理のフローチャート
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１１】
図１は本実施形態の画像符号化装置を示すブロック図である。図１において、制御部１００は画像符号化装置全体を制御するプロセッサであり、端子１０１は画像データを入力する入力端子である。
【００１２】
ブロック分割部１０２は、入力画像を複数の基本ブロックに分割し、基本ブロック単位の画像を後段に出力する。
【００１３】
生成部１０３は、量子化パラメータを符号化する基準となるサイズ（量子化の制御サイズ）に関する情報などを生成し、出力する。量子化の制御サイズの情報の生成方法については特に限定しないが、ユーザが量子化の制御サイズを入力してもよいし、入力画像の特性から量子化の制御サイズを算出してもよいし、初期値としてあらかじめ指定された量子化の制御サイズを使用してもよい。
【００１４】
予測部１０４は、基本ブロックを分割することによりサブブロックを生成し、サブブロック単位でフレーム内予測であるイントラ予測やフレーム間予測であるインター予測などを行い、予測画像データを生成する。さらに、入力された画素値である画像データと予測画像データから予測誤差を算出し、出力する。また、予測に必要な情報、例えばサブブロック分割、予測モードや動きベクトル等の情報も予測誤差と併せて出力される。以下ではこの予測に必要な情報を予測情報と呼称する。
【００１５】
変換・量子化部１０５は、サブブロック単位で予測誤差を示す残差に対して直交変換を行い、さらに量子化を行い、当該残差を表す残差係数を得る。なお、量子化パラメータは、直交変換によって得られた変換係数の量子化に用いるパラメータである。
【００１６】
逆量子化・逆変換部１０６は、変換・量子化部１０５から出力された残差係数を逆量子化して変換係数を再生し、さらに逆直交変換して予測誤差を再生する。
【００１７】
フレームメモリ１０８は、再生された画像データを格納するメモリである。
【００１８】
画像再生部１０７は、予測部１０４から出力された予測情報に基づいて、フレームメモリ１０８を適宜参照して予測画像データを生成し、これと入力された予測誤差から再生画像データを生成する。
【００１９】
インループフィルタ部１０９は、再生画像に対し、デブロッキングフィルタやサンプルアダプティブオフセットなどのインループフィルタ処理を行う。
【００２０】
符号化部１１０は、変換・量子化部１０５から出力された残差係数および予測部１０４から出力された予測情報を符号化して、符号データを生成する。
【００２１】
統合符号化部１１１は、生成部１０３からの量子化の制御サイズに関する情報を符号化して、ヘッダ符号データを生成する。さらに符号化部１１０から出力された符号データと合わせて、ビットストリームを形成する
端子１１２はであり、統合符号化部１１１で生成されたビットストリームを外部に出力する出力端子である。
【００２２】
上記画像符号化装置における画像の符号化動作を以下に説明する。本実施形態では動画像データをフレーム単位に入力する構成とするが、１フレーム分の静止画像データを入力する構成としても構わない。
【００２３】
端子１０１から入力された１フレーム分の画像データはブロック分割部１０２に入力される。
【００２４】
ブロック分割部１０２では、入力された画像データを複数の基本ブロックに分割し、基本ブロック単位の画像を予測部１０４に出力する。
【００２５】
予測部１０４では、ブロック分割部１０２から入力された画像データに対し、予測処理を実行する。具体的には、まず、基本ブロックをさらに細かいサブブロックに分割するサブブロック分割を決定する。
【００２６】
図７に基本ブロックの分割種類の一例を示す。太枠の７００は基本ブロックを表しており、説明を簡易にするため、基本ブロックのサイズを３２×３２画素の構成とし、太枠内の各四角形はサブブロックを表すものとする。図７（ｂ）は分割によって得られる正方形サブブロックの一例を表しており、３２×３２画素の基本ブロックは１６×１６画素のサブブロックに分割されている。一方、図７（ｃ）〜（ｆ）は分割によって得られる長方形サブブロックの種類の例を表している。図７（ｃ）では基本ブロックは１６×３２画素の縦長、図７（ｄ）では３２×１６画素の横長の長方形のサブブロックに分割されている。また、図７（ｅ）、（ｆ）では、１：２：１の比で長方形サブブロックに分割されている。このように、本実施形態では、正方形だけではなく、長方形のサブブロックを用いて符号化処理が行われる。そして、本実施の形態では、このような基本ブロックの分割種類に関する情報が分割情報として符号化される。さらには、後述の図１５の左側の図に示すようなサブブロックの階層構造を得るために、分割種類の情報が階層化されて符号化される。
【００２７】
そして、予測部１０４は、処理対象の各サブブロックに対し、予測モードを決定する。具体的には、予測部１０４は、処理対象の各サブブロックを含むフレームと同一フレームで符号化済みの画素を用いるイントラ予測、あるいは、符号化済みの異なるフレームの画素を用いるインター予測などのサブブロック単位の予測モードを決定する。そして、予測部１０４は、決定した予測モードおよび符号化済の画素から予測画像データを生成し、さらに入力された画像データと予測画像データから、予測誤差が生成され、変換・量子化部１０５に出力される。また、予測部１０４は、サブブロック分割や予測モードなどの情報を予測情報として、符号化部１１０、画像再生部１０７に出力する。
【００２８】
ここで、変換・量子化部１０５で実行される変換処理や、量子化処理についてより詳しく説明する。変換・量子化部１０５は、予測部１０４によって予測処理が行われたサブブロックの画像データ（画素値）に対して周波数変換を行い、さらに量子化を行う。図８の（ａ）〜（ｆ）はブロックの分割の種類と量子化の制御サイズとの関係を示している。変換・量子化部１０５は、処理対象サブブロックサイズと生成部１０３から出力される量子化の制御サイズに基づいて、どのサブブロック単位で量子化パラメータを共有し、符号化するかを決定する。すなわち、後段の符号化部１１０において、量子化の制御サイズとサブブロックのサイズとの比較に従って、複数のサブブロックで量子化パラメータが共有されるべきか否かが決定される。量子化パラメータの符号化については後述する。量子化に使用される量子化パラメータの値自体の決定方法については、特に限定はしないが、ユーザが量子化パラメータを入力しても良いし、入力画像の特性から算出しても、初期値として予め指定されたものを使用しても良い。
【００２９】
次に、量子化パラメータを符号化する単位の決定方法について説明する。
【００３０】
変換・量子化部１０５は、処理対象サブブロックの水平方向と垂直方向のうち短い方の辺の長さと量子化の制御サイズを比較し、どの単位で量子化パラメータを符号化するか、すなわちどの単位で同じ量子化パラメータを用いるかを決定する。
【００３１】
図８は、処理対象サブブロックの水平方向と垂直方向のうち短い方の一辺の長さと量子化の制御サイズを比較した場合にどの単位で量子化パラメータを符号化するかを示す。図８では、正方ブロックの一辺の長さが量子化の制御サイズとして定義されている。具体的には図８では量子化の制御サイズとして１６が適用される例を示している。図８は処理対象サブブロックの水平方向と垂直方向のうち短い方の長さを矢印で示している。また、図８の処理対象サブブロックの太枠の矩形は、処理対象サブブロックと量子化の制御サイズを比較した結果によって決定された量子化パラメータが共有される領域を示している。また、Ｑｐは量子化パラメータを示している。図８において、（ａ）、（ｂ）、（ｃ）、（ｄ）に関しては、各処理対象サブブロックの水平方向と垂直方向のうち短い方の長さが量子化の制御サイズ（１６）以上である。そのため、各処理対象サブブロックはそれぞれ個別の量子化パラメータ（ＱｐＡ〜ＱｐＤ）を用いて量子化される。そして、サブブロックごとに対応する量子化パラメータ（ＱｐＡ〜ＱｐＤ）がそれぞれ符号化される。一方、図８の（ｅ）、（ｆ）に関しては、処理対象の基本ブロックにおいて、水平方向と垂直方向のうち短い方の一辺の長さが量子化の制御サイズより小さいサブブロックが含まれるため、量子化パラメータは複数のサブブロックで共有される。具体的には、図８（ｅ）、（ｆ）に関しては、それぞれ３つのサブブロックは、同一の量子化パラメータを用いて量子化される。このとき、符号化される量子化パラメータとしては、サブブロックごとではなく、共有の量子化パラメータとして１つの量子化パラメータが符号化される。以上説明したとおり、量子化パラメータは処理対象サブブロックのサイズと量子化の制御サイズに基づいて使用される。
【００３２】
次に、図８とは異なる量子化の制御サイズの場合の例を、図９を用いて説明する。図９においても、正方ブロックの一辺の長さが量子化の制御サイズとして定義されている。具体的には図９では、処理対象の基本ブロックの一辺と同じ長さ３２が量子化の制御サイズとして適用される例を示している。図９の太枠、矢印、Ｑｐの意味は図８と同様であるため説明を割愛する。図９（ａ）〜（ｆ）では、処理対象サブブロックの水平方向と垂直方向のうち短い方の長さと量子化の制御サイズを比較すると、処理対象サブブロックはいずれも量子化の制御サイズと同じまたは小さい。そのため、それぞれのケースにおいて、各サブブロックは同一の量子化パラメータを用いて量子化される。符号化される量子化パラメータとしては、サブブロックごとではなく、共有の量子化パラメータとして１つの量子化パラメータが符号化される。
【００３３】
図１に戻り、逆量子化・逆変換部１０６では、入力された残差係数を逆量子化して変換係数を再生し、さらに再生された変換係数を逆直交変換して予測誤差を再生し、画像再生部１０７に出力する。各サブブロックの逆量子化処理においては、変換・量子化部１０５で用いた量子化パラメータと同一のものが用いられる。
【００３４】
画像再生部１０７では、予測部１０４から入力される予測情報に基づいて、フレームメモリ１０８を適宜参照し、予測画像を再生する。そして再生された予測画像と逆量子化・逆変換部１０６から入力された再生された予測誤差から画像データを再生し、フレームメモリ１０８に入力し、格納する。
【００３５】
インループフィルタ部１０９では、フレームメモリ１０８から再生画像を読み出しデブロッキングフィルタなどのインループフィルタ処理を行う。インループフィルタ処理は、予測部１０４の予測モードや変換・量子化部１０５で利用される量子化パラメータの値、さらに量子化後の処理サブブロックに非ゼロの値（以下、有意係数とする）が存在の有無、あるいはサブブロック分割情報に基づいて行われる。そして、フィルタ処理された画像を再びフレームメモリ１０８に入力し、再格納する。
【００３６】
符号化部１１０では、ブロック単位で、変換・量子化部１０５で生成された残差係数、予測部１０４から入力された予測情報をエントロピー符号化し、符号データを生成する。
【００３７】
エントロピー符号化の方法は特に指定しないが、ゴロム符号化、算術符号化、ハフマン符号化などを用いることができる。生成された符号データは統合符号化部１１１に出力される。量子化情報を構成する量子化パラメータの符号化においては、符号化対象のサブブロックの量子化パラメータと当該サブブロックよりも前に符号化されたサブブロックの量子化パラメータを用いて算出する予測値との差分値を示す識別子が符号化される。本実施形態では、符号化順で当該サブブロックの直前に符号化された量子化パラメータを予測値として、当該サブブロックの量子化パラメータとの差分値を計算するものとするが、量子化パラメータの予測値はこれに限定されない。当該サブブロックの左または右に隣接しているサブブロックの量子化パラメータを予測値としても良いし、平均値など複数のサブブロックの量子化パラメータから算出される値を予測値としても構わない。
【００３８】
ここで、量子化の制御サイズに基づいて量子化パラメータを符号化する処理について図１０を用いてさらに説明する。図１０（ａ）〜（ｆ）の左側の図は、ブロック分割の種類と各サブブロックで使用した量子化パラメータ（Ｑｐ）を示す。また、斜線の入っているサブブロックは、符号化される量子化パラメータと関連付けられるサブブロックを示している。また、太枠の四角は量子化の制御サイズと処理対象サブブロックサイズに基づいて決定した量子化パラメータが共有される領域を示す。図１０（ａ）〜（ｆ）のそれぞれの中央の図は、各サブブロックが有意係数を有するか否かを示す。有意係数とは変換・量子化後の残差係数のうち非ゼロの係数のことを示す。すなわち有意係数ありとは、変換・量子化後のサブブロックにおいて、非ゼロの残差係数が少なくとも１つ存在することを示す。また、図１０（ａ）〜（ｆ）のそれぞれの右側の図に示される矢印は符号化（復号）の順番を示している。本実施形態では、量子化パラメータが共有される領域内において、量子化パラメータは、符号化順で最初に有意係数が含まれているサブブロックに関連付けられて符号化される。例えば、図１０（ｂ）では、符号化順で最初に有意係数を含むサブブロックは右上のサブブロックであるため、当該サブブロックに関連付けられて量子化パラメータが符号化される。この場合、左下と右下のサブブロックにおいては、当該量子化パラメータ符号化単位においては量子化パラメータが右上サブブロックにて既に符号化されているため、量子化パラメータは符号化されない。一方で、左下、右下のサブブロックにおける量子化・逆量子化処理においては、右上サブブロックと同一の量子化パラメータである、ＱｐＡが用いられる。さらに左上サブブロックには有意係数が存在しないため、逆量子化処理は実行されないが、デブロッキングフィルタなど量子化パラメータを用いる処理には、右上サブブロックと同一の量子化パラメータであるＱｐＡが用いられる。また、図１０（ｆ）では符号化順で最初に有意係数を含むサブブロックは下側に位置するサブブロックであるため、当該サブブロックに量子化パラメータが関連付けられて符号化され、上、真ん中のサブブロックに対して量子化パラメータは符号化されない。ただし、図１０（ｆ）の上、真ん中のサブブロックでは、図１０（ｂ）の左上サブブロック同様、デブロッキングフィルタなど量子化パラメータを用いる処理には、下のサブブロックと同一の量子化パラメータであるＱｐＡが用いられる。
【００３９】
このように、量子化の制御サイズにより決定した量子化パラメータが共有される領域内のサブブロックにおいて、符号化順で最初に有意係数を含むサブブロックに量子化パラメータが関連付けられて符号化される。
【００４０】
統合符号化部１１１では、量子化の制御サイズに関する情報が符号化される。符号化の方法は特に指定しないが、ゴロム符号化、算術符号化、ハフマン符号化などを用いることができる。また、これらの符号や符号化部１１０から入力された符号データなどを多重化してビットストリームを形成する。最終的には、ビットストリームは端子１１２から外部に出力される。
【００４１】
図６（ａ）に符号化された量子化の制御サイズに関する情報を含んだビットストリームの例を示す。量子化の制御サイズに関する情報はシーケンス、ピクチャ等のヘッダのいずれかに含まれる。本実施形態では図６（ａ）に示されるようにピクチャのヘッダ部分に含まれるものとする。ただし、符号化される位置はこれに限られず、図６（ｂ）に示されるように、シーケンスのヘッダ部分に含まれても構わない。
【００４２】
図３は、本実施形態に係る画像符号化装置における符号化処理を示すフローチャートである。
【００４３】
まず、ステップＳ３０１にて、ブロック分割部１０２はフレーム単位の入力画像を基本ブロック単位に分割する。
【００４４】
ステップＳ３０２にて、生成部１０３は、量子化パラメータを符号化するサイズである量子化の制御サイズを決定する。そして、その情報を量子化の制御サイズ情報とする。量子化の制御サイズ情報も統合符号化部１１１によって符号化される。
【００４５】
ステップＳ３０３にて、予測部１０４はステップＳ３０１にて生成された基本ブロック単位の画像データに対して分割処理を行い、サブブロックを生成する。そして予測部１０４は、その生成されたサブブロック単位で予測処理を行い、ブロック分割や予測モードなどの予測情報および予測画像データを生成する。さらに入力された画像データと前記予測画像データから予測誤差を算出する。
【００４６】
ステップＳ３０４にて、変換・量子化部１０５はステップＳ３０３で算出された予測誤差を直交変換して変換係数を生成する。さらにステップＳ３０２において生成された量子化の制御サイズ情報に基づいて決定した量子化パラメータを用いて量子化を行い、残差係数を生成する。具体的には、前述したとおり、量子化の制御サイズ情報（例えば正方ブロックの一辺の長さ）と、サブブロックのサイズ（例えば短辺あるいは長辺の長さ）との比較を行い、基本ブロック内のサブブロックで量子化パラメータを共有するか否かが決定される。その決定に基づいて、各領域のサブブロックに対応する量子化パラメータを用いて各サブブロックの量子化が実行され、各サブブロックの残差係数が生成される。
【００４７】
ステップＳ３０５にて、逆量子化・逆変換部１０６はステップＳ３０４で生成された残差係数を逆量子化・逆直交変換し、予測誤差を再生する。本ステップでの逆量子化処理には、ステップＳ３０４で用いられた量子化パラメータと同一のものが用いられる。
【００４８】
ステップＳ３０６にて、画像再生部１０７はステップＳ３０３で生成された予測情報に基づいて予測画像を再生する。さらに再生された予測画像とステップＳ３０５で生成された予測誤差から画像データを再生する。
【００４９】
ステップＳ３０７にて、符号化部１１０は、ブロックの分割情報とともに、ステップＳ３０３で生成された予測情報およびステップＳ３０４で生成された残差係数を符号化し、符号データを生成する。また、ステップＳ３０４で利用した量子化パラメータを、ステップＳ３０２で生成した量子化の制御サイズ情報に基づいて符号化する。さらに他の符号データも含め、ビットストリームを生成する。具体的には、ステップＳ３０４において決定された量子化パラメータが共有される領域のうち、符号化されるサブブロックの順において、少なくとも１つの有意係数を含むサブブロックに関連づけて量子化パラメータが符号化される。
【００５０】
ステップＳ３０８にて、画像符号化装置の制御部１００は、フレーム内の全ての基本ブロックの符号化が終了したか否かの判定を行い、終了していればステップＳ３０９に進み、そうでなければ次の基本ブロックを対象として、ステップＳ３０３に戻る。
【００５１】
ステップＳ３０９にて、インループフィルタ部１０９はステップＳ３０６で再生された画像データに対し、インループフィルタ処理を行い、フィルタ処理された画像を生成し、処理を終了する。
【００５２】
以上、特にステップＳ３０２において量子化の制御サイズ情報を生成し、ステップＳ３０４及びＳ３０７において、量子化の制御サイズ情報に基づいて量子化・符号化処理をすることで、適切に量子化パラメータの符号化処理を可能にすることができる。結果として、生成されるビットストリーム全体のデータ量を抑えつつ、符号化された画像の画質を向上させることができる。
【００５３】
なお、本実施形態では、量子化の制御サイズとの比較に処理対象サブブロックの水平方向と垂直方向のうち短い方の長さを用いて、量子化パラメータが共有される領域を判定するとしたが、本発明はこれに限定されない。例えば、図１１（ａ）〜（ｆ）に示すように、処理対象サブブロックの水平方向と垂直方向のうち長い方の長さとの比較を実施し、量子化パラメータの共有単位を決定してもよい。図１１では、量子化の制御サイズとしての正方ブロックの一辺の長さ（１６）に対して各サブブロックの長辺の長さがそれぞれ比較対象となる。図１１では、量子化の制御サイズ（１６）よりも全てのサブブロックの長辺が長いので、各サブブロックに対して量子化パラメータが符号化されることになる。これにより長方形サブブロックに対しては、量子化パラメータの符号量の削減よりも、量子化パラメータの細かい制御を重視したビットストリームを生成することができる。
【００５４】
さらに、他の実施形態として、処理対象サブブロックの画素数と量子化の制御サイズの画素数を比較することにより、量子化パラメータが共有される領域を判定してもよい。処理対象サブブロックと量子化の制御サイズを画素数で比較する場合を図１２（ａ）〜（ｆ）に示す。図１２において、量子化の制御サイズは１６×１６画素であるため、画素数が２５６となる。また処理対象サブブロックについては、図１２（ａ）〜（ｆ）の全てのサブブロックにおいて画素数は２５６画素以上となっている。よって、図１２の例においては、全てのサブブロックにおいて量子化パラメータがそれぞれ符号化されることとなる。これにより、サブブロックの形状に関わらず、サブブロック内の画素数に基づいた量子化パラメータ制御を実現することができる。
【００５５】
また、本実施形態において、量子化の制御サイズは正方ブロックの一辺であるものとして説明したが、長方形であってもよい。この場合、量子化の制御サイズの幅と高さをそれぞれ指定してもよい。この場合は、処理対象サブブロックの垂直方向および水平方向の長さを量子化の制御サイズの幅と高さのそれぞれと比較し、両方もしくは片方の長さが量子化の制御のサイズ以上である場合にそれぞれのサブブロックについて量子化パラメータを符号化してもよい。これにより、縦長長方形サブブロックと横長長方形サブブロックに対し、異なる量子化パラメータ制御を実現することができる。なお、処理対象の基本ブロックに両方の長さもしくは片方の長さが量子化の制御サイズ未満のサブブロックが存在する場合、この条件を満たすサブブロックで共有されるべき１つの量子化パラメータが符号化されることになる。
【００５６】
また、本実施形態では、量子化パラメータが符号化される単位を空間的なサイズで定義したがこれに限定されるものでない。基本ブロックから何回分割したかの回数を示す量子化制御の深さ（以下、量子化の制御深度とする）を生成し、量子化の制御深度と処理対象サブブロックの分割の深さを比較して量子化パラメータを符号化するか否かを判定してもよい。この場合、図６に示す量子化の制御サイズ情報に代えて、量子化の制御深度情報が符号化される。
【００５７】
ここで、処理対象サブブロックの分割の深さについて図１３を用いて説明する。図１３のＤ０、Ｄ１はそれぞれ深さ０と深さ１を示す。図１３（ａ）は基本ブロックに対して一度も分割されておらずサブブロックの深さは０（Ｄ０）であることを示す。図１３（ｂ）は基本ブロックに対し４分木分割されており、各サブブロックは深さ１（Ｄ１）であることを示す。図１３（ｃ）および（ｄ）は基本ブロックに対し２分木分割されており、各サブブロックは深さ１（Ｄ１）であることを示す。図１３の（ｅ）および（ｆ）は基本ブロックに対し３分木分割されており、各サブブロックの深さは１（Ｄ１）であることを示す。このように、基本ブロックに対し１度分割されたサブブロックは、４分木分分割、２分木分割、３分木分割のいずれで合っても深さが１増加するものとする。
【００５８】
次に量子化の制御深度と各処理対象サブブロックの分割の深さに応じて、どのように量子化パラメータが符号化されるかを、図１４を用いて説明する。図１４（ａ）〜（ｅ）において、一番外側の正方形が基本ブロックであることを示す。また、図１４（ａ）〜（ｅ）のそれぞれにおいて、左側がサブブロックの分割を示しており、右側は量子化パラメータが共有される領域を示している。また、図中の各ブロック内のＤ０、Ｄ１、Ｄ２、Ｄ３、Ｄ４は各サブブロックの深さを示しており、例えばＤ０は深さ０を示し、Ｄ４は深さ４を示す。Ｑｐは量子化パラメータを示す。図１４（ａ）、（ｂ）、（ｃ）、（ｄ）、（ｅ）はそれぞれ量子化の制御深度が０、１、２、３、４の場合を示している。図１４（ａ）の場合、すなわち量子化の制御深度が０の場合は図中の全てのサブブロックで共通の量子化パラメータ用い、符号化順で最初の有意係数が含まれているサブブロックに関連付けて量子化パラメータが符号化される。この場合、符号化される量子化パラメータは１個となる。図１４（ｂ）の場合、すなわち量子化の制御深度が１の場合は、図１４（ｂ）の右側のブロックの単位で量子化パラメータが共有される。さらに当該ブロック単位で符号化順の最初に有意係数が含まれているサブブロックに関連付けて１つの量子化パラメータが符号化される。この場合は符号化される量子化パラメータは４個となる。図１４（ｃ）の場合、すなわち量子化の制御深度が２の場合は、同図の右側のブロックの単位で量子化パラメータが共有され、当該単位で符号化順の最初に有意係数が含まれているサブブロックに関連付けて１つの量子化パラメータが符号化される。この場合は符号化される量子化パラメータは１１個となる。図１４（ｄ）の場合、すなわち量子化の制御深度が３の場合は、図１４（ｄ）の右側のブロックの単位で量子化パラメータが共有され、当該単位で符号化順の最初に有意係数が含まれているサブブロックに関連付けて量子化パラメータが符号化される。この場合は符号化される量子化パラメータは２３個となる。図１４（ｅ）の場合、すなわち量子化の制御深度が４の場合は、図１４（ｄ）の右側のブロックの単位で量子化パラメータを用いる。図１４（ｅ）の場合、ブロックの分割の深さと量子化の制御深度とが同じであるため、それぞれのブロックについて量子化パラメータが符号化される。この場合は符号化される量子化パラメータは２７個となる。
【００５９】
ここで、量子化パラメータが共有される領域において、有意係数が１つも含まれないサブブロックが存在する場合について、図１５を用いて説明する。図１５（ａ）は、図１４と同様にサブブロック分割を示し、Ｄ０、Ｄ１、Ｄ２、Ｄ３、Ｄ４は各サブブロックの深さを示す。図１５（ｂ）は、図１４と同様に量子化の制御深度と各サブブロックの深さに基づいて決定される量子化パラメータの共有領域を示す一例である。なお、図１５（ｂ）は量子化の制御深度が２の場合を例としている。図１５（ｂ）において、ＱｐＧの量子化パラメータに対応する領域内の３つのサブブロック全てに有意係数が存在しない場合を例に説明する。この場合、当該サブブロック３つに対する量子化パラメータＱｐＧは符号化されない。ただし、デブロッキングフィルタなどの処理には、その直前に符号化された量子化パラメータと同じ値、すなわちＱｐＦが用いられる。なお、有意係数が存在しない量子化パラメータ符号化単位において、量子化パラメータを使用する処理では符号化順で直前に符号化された量子化パラメータを使用するとしたが、本発明はこれに限定されない。例えば、上に隣接する量子化パラメータ符号化単位の量子化パラメータであるＱｐＤを用いてもよいし、左に隣接する量子化パラメータであるＱｐＦを用いてもよい。また、平均値など複数の量子化パラメータ符号化単位の量子化パラメータから算出される値を用いても構わない。さらには、スライスに対する量子化パラメータの初期値を用いても構わない。なお、スライスとはフレームを分割した単位のことであり、少なくとも一つ以上の基本ブロックから構成される。このように、処理対象サブブロックの深さと量子化の制御深度を比較し、処理対象サブブロックの深さが量子化の制御深度以下である場合に量子化パラメータを共有するようにしてもよい。サブブロック分割の情報は分割の度に符号化されるため、これによりサブブロック分割情報と親和性の高い量子化パラメータ符号化制御を実現することが可能となり、結果としてシンタックスの構造を簡易化することができる。
【００６０】
図１６は、量子化の制御深度を用いた量子化パラメータの符号化処理を示すフローチャートである。
【００６１】
ステップＳ１６０１において、変換量子化部１０５は、量子化の制御深度とサブブロックの分割の深さとを比較する。
【００６２】
ステップＳ１６０２において、変換量子化部１０５は、Ｓ１６０１における比較の結果量子化の制御深度より深い分割の深さを有するサブブロックの領域を１つの量子化パラメータを共有する領域として決定する。
【００６３】
ステップＳ１６０３において、変換量子化部１０５は、決定された領域内のサブブロックに対して、同じ量子化パラメータを用いて量子化する。
【００６４】
ステップＳ１６０４において、符号化部１１０は、決定された領域内のサブブロックのうち、符号化順で少なくとも１つの有意係数が残差係数として存在するサブブロックに関連付けてステップＳ１６０３において用いられた量子化パラメータを符号化する。そして、統合符号化部１１１は、量子化の制御深度情報を符号化する。
【００６５】
図１６処理はフレーム内の基本ブロックに対してそれぞれ行われることになる。
【００６６】
さらに、量子化の制御サイズと量子化の制御深度の両方を生成し、組み合わせて利用してもよい。この場合、図６に示す量子化の制御サイズ情報に加えて、量子化の制御深度情報が符号化される。
【００６７】
例えば、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの水平方向と垂直方向のうち短い方の辺の長さが量子化の制御のサイズ以上である場合にサブブロックごとに量子化パラメータを符号化するとしてもよい。具体的には、量子化の制御深度に対応する領域ごとにサブブロックの短辺の長さと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズ以上の短辺の長さのサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが符号化される。当該領域内のいずれのサブブロックの短辺の長さが量子化の制御サイズ以上ではない場合、当該領域内のサブブロック間で１つの量子化パラメータが共有され、その１つの量子化パラメータが符号化される。
【００６８】
また、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの水平方向と垂直方向のうち長い方の辺の長さが量子化の制御のサイズ以上である場合にサブブロックごとに量子化パラメータを符号化するとしてもよい。この場合、量子化の制御深度に対応する領域ごとにサブブロックのサイズと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズ以上の長辺の長さのサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが符号化される。当該領域内のいずれのサブブロックの長辺の長さが量子化の制御サイズ以上ではない場合、当該領域内のサブブロック間で１つの量子化パラメータが共有され、その１つの量子化パラメータが符号化される。
【００６９】
また、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの画素数が量子化の制御サイズの画素数以上である場合にサブブロックごとに量子化パラメータを符号化するとしてもよい。この場合、量子化の制御深度に対応する領域ごとにサブブロックのサイズと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズの画素数以上の画素数のサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが符号化される。当該領域内のいずれのサブブロックの画素数がいずれも量子化の制御サイズ以上ではない場合、当該領域内のサブブロック間で１つの量子化パラメータが共有され、その１つの量子化パラメータが符号化される。
【００７０】
さらには、量子化の制御サイズの幅と高さをそれぞれ指定し、量子化の制御深度と組み合わせて用いてもよい。この場合、量子化の制御深度に対応する領域ごとに、サブブロックの垂直方向と水平方向の長さを量子化の制御サイズの幅と高さのそれぞれと比較する。この場合において、垂直方向と水平方向のうち両方もしくは片方の長さが量子化の制御サイズの幅と高さ以上のサブブロックが存在する場合、対象領域内のそれぞれのサブブロックに対して量子化パラメータが符号化される。垂直方向と水平方向のうち両方もしくは片方の長さが量子化の制御サイズの幅と高さ以上のサブブロックが存在しない場合、当該領域に対して量子化パラメータが共有され、１つの量子化パラメータが符号化される。
【００７１】
このように、長方形サブブロック分割が多用された場合において、量子化の制御深度だけでなく量子化の制御サイズを用いることで、極端に細長い長方形サブブロックにおいても量子化パラメータ符号化制御を実現することが可能となる。
【００７２】
図１８は、量子化の制御サイズと量子化の制御深度の両方を用いて量子化パラメータの符号化処理を示すフローチャートである。
【００７３】
ステップＳ１８０１において、変換・量子化部１０５は、量子化の制御深度とサブブロックの分割の深さとを比較し、量子化の制御深度に対応するブロックの深さの領域を決定する。
【００７４】
ステップＳ１８０２において、変換・量子化部１０５は、ステップＳ１８０１において決定された領域ごとに各領域に含まれるサブブロックのサイズと量子化の制御サイズとを比較する。
【００７５】
ステップＳ１８０３において、変換・量子化部１０５は、ステップＳ１８０２の比較の結果、対象とする領域内のサブブロックで１つの量子化パラメータを共有するか否かが決定される。その決定に基づいて、各領域のサブブロックに対応する量子化パラメータを用いて各サブブロックの量子化が実行され、各サブブロックの残差係数が生成される。
【００７６】
ステップＳ１８０４において、対象とする領域内のサブブロックで１つの量子化パラメータを共有する場合、符号化部１１０は、符号化順で少なくとも１つの有意係数を有する最初のサブブロックに量子化パラメータを関連付けて符号化する。その一方、その他のサブブロック関連付けて量子化パラメータは符号化されない。また、対象とする領域内のサブブロックで１つの量子化パラメータを共有しない場合、符号化部１１０は、有意係数が存在しないサブブロックを除くサブブロックのそれぞれについて関連付けて量子化パラメータが符号化する。そして、統合符号化部１１１は、量子化の制御サイズ情報および量子化の制御深度情報が符号化される。
【００７７】
このような符号化処理が基本ブロックのそれぞれについて行われる。
【００７８】
量子化の制御サイズと量子化の制御深度の両方を用いて量子化パラメータの符号化処理を行う場合、サブブロックの長辺を用いて量子化の制御サイズとの比較を行う方がそれぞれのサブブロックに量子化パラメータが関連付けられる可能性が高い。すなわちサブブロックの長辺を用いて量子化の制御サイズとの比較を行う方が細長い形状の物体に適している。
【００７９】
なお、サブブロックの分割の種類が階層的に連続した場合、量子化の制御サイズとサブブロックのサイズとの比較の結果にかかわらず、量子化パラメータの共有を禁止してもよい。これによって細長い形状の物体に適したサブブロックの量子化を行うことができる。
【００８０】
図２は、画像復号装置の構成を示すブロック図である。本実施形態では、図１に示す画像符号化装置において生成された符号化データの復号を例にとって説明する。
【００８１】
端子２０１は符号化されたビットストリームを入力する入力端子である。
【００８２】
分離復号部２０２は、ビットストリームから復号処理に関する情報や残差係数に関する符号データに分離し、またビットストリームのヘッダ部に存在する符号データを復号する。本実施形態では、量子化の制御サイズ情報を復号し、後段に出力する。分離復号部２０２は、図１の統合符号化部１１１と逆の動作を行う。
【００８３】
復号部２０３は、分離復号部２０２から出力された符号データから、残差係数および予測情報を取得する。
【００８４】
逆量子化・逆変換部２０４は、ブロック単位で入力された残差係数に対して逆量子化を行い、さらに逆直交変換を行うことにより予測誤差を取得する。
【００８５】
フレームメモリ２０６は、再生されたピクチャの画像データを格納するメモリである。
【００８６】
画像再生部２０５は、入力された予測情報に基づいてフレームメモリ２０６を適宜参照して予測画像データを生成する。そして、この予測画像データと逆量子化・逆変換部２０４で再生された予測誤差から再生画像データを生成し、出力する。
【００８７】
インループフィルタ部、２０７はである。図１のインループフィルタ部１０９同様、再生画像に対し、デブロッキングフィルタなどのインループフィルタ処理を行い、フィルタ処理された画像を出力する。
【００８８】
端子２０８、再生された画像データを外部に出力する出力端子である。
【００８９】
上記画像復号装置における画像の復号動作を以下に説明する。本実施形態では、本実施形態で生成されたビットストリームを復号する。
【００９０】
図２において、制御部２００は画像復号装置全体を制御するプロセッサであり、端子２０１から入力されたビットストリームは分離復号部２０２に入力される。復号部２０２では、ビットストリームから復号処理に関する情報や係数に関する符号データに分離し、ビットストリームのヘッダ部に存在する符号データを復号する。具体的には、量子化の制御サイズ情報を復号する。本実施形態では、まず、図６（ａ）に示されるビットストリームのピクチャヘッダから量子化の制御サイズ情報を復号する。このようにして得られた量子化の制御サイズ情報は復号部２０３および逆量子化・逆変換部２０４に出力される。さらに、ピクチャデータのブロック単位の符号データを復号部２０３に出力する。
【００９１】
復号部２０３では、符号データを復号し、残差係数、予測情報および量子化パラメータを取得する。残差係数や量子化パラメータは逆量子化・逆変換部２０４に出力され、取得された予測情報は画像再生部２０５に出力される。
【００９２】
ここで、量子化の制御サイズに基づいて、各サブブロックに量子化パラメータを割り当てる処理について図１０を用いて説明する。上述したとおり、図１０（ａ）〜（ｆ）において、左側はブロック分割の種類と各サブブロックで符号化時に使用された量子化パラメータ（Ｑｐ）が示されている。また、斜線の入っているサブブロックは量子化パラメータが関連付けられているサブブロックを示している。また、太枠の四角は量子化の制御サイズと処理対象サブブロックサイズに基づいて決定した量子化パラメータが共有される領域を示している。量子化の制御サイズとの比較方法については画像符号化装置と同様である。例えば、図８および図９を用いて説明したように、処理対象サブブロックの水平方向と垂直方向のうち短辺と量子化の制御サイズとの比較を行う。同図の真ん中は各サブブロックが有意係数を持つか否かを示す。有意係数とは残差係数のうち非ゼロの係数のことを示す。すなわち有意係数ありとは、サブブロック内において、非ゼロの残差係数が少なくとも１つ存在することを示す。また、同図の右側に図示される矢印は復号の順番を示す。量子化パラメータ符号化単位内のサブブロックにおいて、復号順で最初に有意係数が含まれているサブブロックにおいて、量子化パラメータは復号される。例えば、図１０（ｂ）では、復号順で最初に有意係数を含むサブブロックは右上のサブブロックであるため、当該サブブロックに対して量子化パラメータが復号される。この場合、左下と右下のサブブロックにおいては、当該量子化パラメータが共有される領域内であり、すでに量子化パラメータが右上サブブロックにて既に復号されている。すなわち、左下と右下のサブブロックに対応する量子化パラメータの符号化データはビットストリーム中に存在せず、左下と右下のサブブロックに対応する量子化パラメータは復号されない。左下、右下のサブブロックにおける量子化・逆量子化処理においては、右上サブブロックと同一の量子化パラメータである、ＱｐＡが用いられる。さらに左上サブブロックには有意係数が存在しないため、逆量子化処理は実行されないが、デブロッキングフィルタなど量子化パラメータを用いる処理には、右上サブブロックと同一の量子化パラメータであるＱｐＡが用いられる。また、図１０（ｆ）では復号順で最初に有意係数を含むサブブロックは下側に位置するサブブロックであるため、当該サブブロックに対して関連付けられた量子化パラメータが復号される。図１０（ｆ）上、中央のサブブロックに対応する量子化パラメータの符号化データはビットストリーム中に存在せず、上、中央のサブブロックに対応する量子化パラメータは復号されない。ただし、図１０（ｆ）の上、真ん中のサブブロックでは、図１０（ｂ）の左上サブブロック同様、デブロッキングフィルタなど量子化パラメータを用いる処理には、下のサブブロックと同一の量子化パラメータであるＱｐＡが用いられる。このように、量子化の制御サイズにより決定した量子化パラメータ符号化単位内のサブブロックにおいて、復号順で最初に有意係数を含むサブブロックに対して量子化パラメータが復号される。
【００９３】
逆量子化・逆変換部２０４では、入力された残差係数に対し逆量子化を行って直交変換係数を生成し、さらに逆直交変換を施して予測誤差を再生する。各サブブロックの逆量子化においては、量子化パラメータが共有される領域ごとに共通の量子化パラメータを用いて逆量子化される。取得された予測情報は画像再生部２０５に出力される。
【００９４】
画像再生部２０５では、復号部２０３から入力された予測情報に基づいて、フレームメモリ２０６を適宜参照し、予測画像を再生する。この予測画像と逆量子化・逆変換部２０４から入力された予測誤差から画像データを再生し、フレームメモリ２０６に入力し、格納する。格納された画像データは予測の際の参照に用いられる。
【００９５】
インループフィルタ部２０７では、図１の１０９同様、フレームメモリ２０６から再生画像を読み出し、デブロッキングフィルタやサンプルアダプティブオフセットなどのインループフィルタ処理を行う。そして、フィルタ処理された画像は再びフレームメモリ２０６に入力される。
【００９６】
フレームメモリ２０６に格納された再生画像は、最終的には端子２０８から外部に出力される。
【００９７】
図４は、画像復号装置における画像の復号処理を示すフローチャートである。
【００９８】
まず、ステップＳ４０１にて、分離復号部２０２はビットストリームから復号処理に関する情報や係数に関する符号データに分離して、ヘッダ部分の符号データを復号し、量子化の制御サイズ情報を取得する。
【００９９】
ステップＳ４０２にて、復号部２０３はステップＳ４０１で分離された符号データを復号し、ブロックの分割情報、残差係数、予測情報および量子化パラメータを取得する。
【０１００】
ステップＳ４０３にて、逆量子化・逆変換部２０４は、サブブロック単位で残差係数に対し逆量子化を行い、さらに逆直交変換を行うことにより、予測誤差を取得する。具体的には、量子化の制御サイズ情報（例えば正方ブロックの一辺の長さ）と、取得されたブロックの分割情報から決定されるサブブロックのサイズ（例えば短辺あるいは長辺の長さ）との比較を行う。その結果、量子化パラメータが共有される領域（サブブロック）が決定される。そして、それぞれのサブブロックに割り当てられた量子化パラメータに基づいて逆量子化処理が行われる。
【０１０１】
ステップＳ４０４にて、画像再生部２０５はステップＳ４０２で取得された予測情報に基づいて予測画像を再生する。さらに再生された予測画像とステップＳ４０３で生成された予測誤差から画像データを再生する。
【０１０２】
ステップＳ４０５にて、画像復号装置の制御部２００は、フレーム内の全てのブロックの復号が終了したか否かの判定を行い、終了していればステップＳ４０６に進み、そうでなければ次のブロックを対象としてステップＳ４０２に戻る。
【０１０３】
ステップＳ４０６にて、インループフィルタ部２０７はステップＳ４０４で再生された画像データに対し、インループフィルタ処理を行い、フィルタ処理された画像を生成し、処理を終了する。
【０１０４】
以上の構成と動作により、量子化の制御サイズの情報を用いた量子化パラメータの復号処理によりデータ量を抑えたビットストリームを復号することができる。
【０１０５】
なお、画像復号装置において、図６（ａ）に示すように、量子化の制御サイズの情報がピクチャヘッダ部分に含まれているビットストリームを復号するものとしたが、情報の符号化位置はこれに限定されない。図６（ｂ）に示されるように画像のシーケンスヘッダ部分で符号化されていても良いし、他の位置で符号化されていても構わない。
【０１０６】
なお、本実施形態では、量子化の制御サイズとの比較に処理対象サブブロックの水平方向と垂直方向のうち短い方の長さを用いて判定するとしたが、本発明はこれに限定されない。例えば、図１１に示すとおり、処理対象サブブロックの水平方向と垂直方向のサイズのうち長辺の長さと量子化の制御サイズとの比較を実施し、量子化パラメータが共有される領域を決定してもよい。図１１では、量子化の制御サイズ（１６）よりも全てのサブブロックの長辺が長いので、各サブブロックに対して量子化パラメータが符号化されることになる。この場合、長方形サブブロックに対しては、量子化パラメータの符号量削減よりも、縦長あるいは横長のオブジェクトに対応した量子化処理を行うことができる。
【０１０７】
さらに、他の実施形態として、処理対象サブブロックの画素数と量子化の制御サイズの画素数を比較することにより、量子化パラメータが共有される領域を判定してもよい。処理対象サブブロックのサイズと量子化の制御サイズを画素数で比較する場合を図１２に示す。図１２において、量子化の制御サイズは１６×１６画素であるため、画素数が２５６となる。図１２（ａ）〜（ｆ）の例では、全てのサブブロックにおいて画素数は２５６画素以上となっている。よって、図１２の例においては、全てのサブブロックにおいて量子化パラメータは共有されずにそれぞれ使用され、各量子パラメータが復号されることとなる。これにより、サブブロックの形状に関わらず、サブブロック内の画素数に基づいた量子化パラメータ制御を実現することができる。
【０１０８】
また、本実施形態において、量子化の制御サイズは正方ブロックの一辺であるものとして説明したが、長方形でもよい。この場合、量子化の制御サイズの幅と高さをそれぞれ指定してもよい。この場合、処理対象サブブロックの垂直方向および水平の長さを量子化の制御サイズの幅と高さのそれぞれと比較し、両方もしくは片方の長さが量子化の制御のサイズ以上である場合にそれぞれのサブブロックについて量子化パラメータを復号するとしてもよい。なお、処理対象の基本ブロック内に両方の長さもしくは片方の長さが量子化の制御サイズ未満のサブブロックが存在する場合、この条件を満たすサブブロックで共有されるべき１つの量子化パラメータが復号されることになる。これにより、縦長長方形サブブロックと横長長方形サブブロックに対し、異なる量子化パラメータ制御を実現することができる。
【０１０９】
また、本実施形態では、量子化パラメータが符号化される基準を空間的なサイズで定義したがこれに限定されるものでない。基本ブロックから何回分割したかの回数を示す量子化制御の深さ（以下、量子化の制御深度とする）をビットストリームから復号し、量子化の制御深度と処理対象サブブロックの分割の深さを比較する。これにより、復号される量子化パラメータが共有されるサブブロックの領域を判定してもよい。ここで、処理対象サブブロックの深さについて図１３を用いて説明する。図１３のＤ０、Ｄ１はそれぞれ深さ０と深さ１を示す。図１３（ａ）は基本ブロックに対して一度も分割されておらずサブブロックの深さは０（Ｄ０）であることを示す。図１３（ｂ）は基本ブロックに対し４分木分割されており、各サブブロックは深さ１（Ｄ１）であることを示す。図１３（ｃ）および（ｄ）は基本ブロックに対し２分木分割されており、各サブブロックは深さ１（Ｄ１）であることを示す。図１３の（ｅ）および（ｆ）は基本ブロックに対し３分木分割されており、各サブブロックの深さは１（Ｄ１）であることを示す。このように、基本ブロックに対し１度分割されたサブブロックは、４分木分分割、２分木分割、３分木分割のいずれであっても深さが１増加するものとする。次に量子化の制御深度と各処理対象サブブロックの分割の深さに応じて、どのように量子化パラメータが復号されるかを、図１４を用いて説明する。図１４（ａ）〜（ｅ）において、一番外側の正方形が基本ブロックであることを示す。また、図１４（ａ）〜（ｅ）のそれぞれにおいて、左側がサブブロックの分割を示しており、右側は量子化パラメータが共有される領域を示している。また、図中の各ブロック内のＤ０、Ｄ１、Ｄ２、Ｄ３、Ｄ４は各サブブロックの深さを示しており、例えばＤ０は深さ０を示し、Ｄ４は深さ４を示す。Ｑｐは量子化パラメータを示す。図１４（ａ）、（ｂ）、（ｃ）、（ｄ）、（ｅ）はそれぞれ量子化の制御深度が０、１、２、３、４の場合を示している。図１４（ａ）の場合、すなわち量子化の制御深度が０の場合は図中の全てのサブブロックで共通の量子化パラメータが復号される。この量子化パラメータは、復号順で最初の有意係数が含まれているサブブロックにおいて復号される。この場合、復号される量子化パラメータは１個となる。図１４（ｂ）の場合、すなわち量子化の制御深度が１の場合は、図１４（ｂ）の右図に示すブロックの単位で共通の量子化パラメータが符号化されている。これらの量子化パラメータは、復号順で最初に有意係数が含まれているサブブロックに関連付けられており、復号されることになる。図１４（ｂ）の場合、復号される量子化パラメータは４個となる。図１４（ｃ）の場合、すなわち量子化の制御深度が２の場合は、図１４（ｃ）の右図に示すブロックの単位で共通の量子化パラメータが符号化されている。これらの量子化パラメータは、復号順で最初に有意係数が含まれているサブブロックに関連付けられており、復号される。この場合は復号される量子化パラメータは１１個となる。図１４（ｄ）の場合、すなわち量子化の制御深度が３の場合は、図１４（ｄ）の右図に示すブロックの単位で共通の量子化パラメータが符号化されている。この場合においても、各量子化パラメータは復号順で最初に有意係数が含まれているサブブロック関連付けられており、復号されることになる。図１４（ｄ）の場合は復号される量子化パラメータは２３個となる。図１４（ｅ）の場合、すなわち量子化の制御深度が４の場合は、図１４（ｄ）の右図に示すブロックの単位すなわち各ブロックに対して量子化パラメータが符号化されている。有意係数が含まれていないサブブロックの量子化パラメータは復号されないが、全てのサブブロックに有意係数が含まれているとすると、２７個の量子化パラメータが復号される。ここで、量子化パラメータが共有される領域において、有意係数が１つも含まれないサブブロックが存在する場合について、図１５を用いて説明する。図１５（ａ）は図１４と同様にサブブロック分割を示し、Ｄ０、Ｄ１、Ｄ２、Ｄ３、Ｄ４は各サブブロックの分割の深さを示す。図１５（ｂ）は、図１４と同様に量子化の制御深度と各サブブロックの深さに基づいて決定される量子化パラメータの共有領域を示す一例である。なお、図１５は量子化の制御深度が２の場合を例としている。なお、図１５の量子化パラメータ符号化単位ＱｐＧ内の３つのサブブロック全てに１つも有意係数が存在しない場合、当該サブブロック３つにおいて量子化パラメータは復号されない。ただし、デブロッキングフィルタなど量子化パラメータを用いる処理には、復号順で当該量子化パラメータの符号化単位の直前に復号された量子化パラメータと同じ値、すなわちＱｐＦがＱｐＧ内の３つのサブブロックに適用される。なお、有意係数が存在しない量子化パラメータの符号化単位において、量子化パラメータを使用する処理では復号順で直前に符号化された量子化パラメータを使用してもよいが、本発明はこれに限定されない。例えば、上に隣接する量子化パラメータ符号化単位の量子化パラメータであるＱｐＤを用いてもよいし、左に隣接する量子化パラメータであるＱｐＦを用いてもよい。また、平均値など複数の量子化パラメータ符号化単位の量子化パラメータから算出される値を用いても構わない。さらには、スライスに対する量子化パラメータの初期値を用いても構わない。なお、スライスとはフレームを分割した単位のことであり、少なくとも一つ以上の基本ブロックから構成される。このように、処理対象サブブロックの深さと量子化の制御深度を比較し、処理対象サブブロックの深さが量子化の制御深度以下である場合に共有されるべき量子化パラメータが復号されるとしてもよい。サブブロックの分割情報は分割の度に復号されるため、これによりサブブロックの分割情報と親和性の高い量子化パラメータ符号化制御を実現することが可能となり、結果としてシンタックスの構造を簡易化したビットストリームを復号することができる。
【０１１０】
図１７は、量子化の制御深度を用いた量子化パラメータの復号処理を示すフローチャートである。
【０１１１】
ステップＳ１７０１において、分離復号部２０２は、ビットストリームから量子化の制御サイズ情報及び量子化の制御深度に関する情報を復号する。そして、復号部２０３は、分割情報を復号し、サブブロックの形状および深さに関する情報を取得する。逆量子化・変換部２０４は、分離復号部２０２において復号された量子化の制御深度情報と、復号部２０３によって復号された分割情報に基づいて得られるサブブロックの分割の深さとを比較する。
【０１１２】
ステップＳ１７０２において、逆量子化・変換部２０４は、Ｓ１７０１における比較の結果、量子化の制御深度より深い分割の深さを有するサブブロックの領域を、１つの量子化パラメータを共有する領域として決定する。
【０１１３】
ステップＳ１７０３において、逆量子化・変換部２０４は、決定された領域内のサブブロックのうち、復号順で少なくとも１つの有意係数が残差係数として存在するサブブロックに関連付けられた量子化パラメータを復号する。
【０１１４】
ステップＳ１７０４において、逆量子化・変換部２０４は、ステップＳ１７０２において決定された領域内のサブブロックに対して、ステップＳ１７０３において復号された量子化パラメータを用いて逆量子化を行う
図１７処理はフレーム内の基本ブロックに対してそれぞれ行われることになる。
【０１１５】
さらに、量子化の制御サイズと量子化の制御深度の両方を生成し、組み合わせて利用してもよい。この場合、図６に示す量子化の制御サイズに関する情報に加えて、量子化の制御深度に関する情報が復号される。
【０１１６】
例えば、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの水平方向と垂直方向のうち短い方の一辺の長さが量子化の制御のサイズ以上である場合に各サブブロックに対する量子化パラメータが復号される。具体的には、量子化の制御深度に対応する領域ごとにサブブロックの短辺の長さと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズ以上の短辺の長さのサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが復号される。当該領域内のサブブロックの短辺の長さがいずれも量子化の制御サイズ以上ではない場合、当該領域内のサブブロック間で共有される１つの量子化パラメータが復号される。
【０１１７】
また、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの水平方向と垂直方向のうち長い方の一辺の長さが量子化の制御のサイズ以上である場合に各サブブロックに対する量子化パラメータを復号するとしてもよい。具体的には、量子化の制御深度に対応する領域ごとにサブブロックのサイズと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズ以上の長辺の長さのサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが復号される。当該領域内のサブブロックの長辺の長さがいずれも量子化の制御サイズ以上ではない場合、当該領域内のサブブロック間で共有される１つの量子化パラメータが復号される。
【０１１８】
また、処理対象サブブロックの深さが量子化の制御深度以下で、かつ、処理対象サブブロックの画素数が量子化の制御サイズの画素数以上である場合に量子化パラメータを復号するとしてもよい。この場合、量子化の制御深度に対応する領域ごとにサブブロックのサイズと量子化の制御サイズとの比較が行われる。各領域において、量子化の制御サイズの画素数以上の画素数のサブブロックが存在する場合、当該領域内の各サブブロックに対してそれぞれ量子化パラメータが復号される。また、各領域において、サブブロックのサイズがいずれも量子化の制御のサイズ以上ではない場合、当該領域内のサブブロック間で共有される１つの量子化パラメータが復号される。
【０１１９】
さらには、量子化の制御サイズの幅と高さをそれぞれ指定し、量子化の制御深度と組み合わせて用いてもよい。この場合、量子化の制御深度に対応する領域ごとに、サブブロックの垂直方向と水平方向の長さを量子化の制御サイズの幅と高さのそれぞれと比較する。この場合において、両方もしくは片方の辺の長さが量子化の制御のサイズ以上であるサブブロックが存在する場合、サブブロックごとにそれぞれ量子化パラメータが復号される。
【０１２０】
図１９は、量子化の制御サイズと量子化の制御深度の両方を用いて量子化パラメータの復号処理を示すフローチャートである。
【０１２１】
ステップＳ１９０１において、分離復号部２０２は、ビットストリームから量子化の制御サイズに関する情報及び量子化の制御深度に関する情報を復号する。そして、復号部２０３は、分割情報を復号し、サブブロックの形状および深さに関する情報を取得する。そして、逆量子化・逆変換部２０４は、量子化の制御深度とサブブロックの分割の深さとを比較し、量子化の制御深度に対応する深さのサブブロックの分割領域を決定する。
【０１２２】
ステップＳ１９０２において、逆量子化・逆変換部２０４は、ステップＳ１９０１において決定された領域ごとに各領域に含まれるサブブロックのサイズと量子化の制御サイズとを比較する。ここで、サブブロックのサイズは、復号された分割情報に基づいて決定されるサブブロックの形状から求めることができる。
【０１２３】
ステップＳ１９０３において、逆量子化・逆変換部２０４は、ステップＳ１９０２の比較の結果、対象とする領域内のサブブロックで１つの量子化パラメータを共有するか否かが決定される。その決定に基づいて、各領域のサブブロックに対応する量子化パラメータを用いて各サブブロックの量子化が実行され、各サブブロックの残差係数が生成される。
【０１２４】
ステップＳ１９０４において、対象とする領域内のサブブロックで１つの量子化パラメータが共有される場合、復号部２０３は、復号順で少なくとも１つの有意係数を有する最初のサブブロックに関連付けられた量子化パラメータを復号する。なお、その他のサブブロックに関連付けられた量子化パラメータの符号化データは存在しない。また、対象とする領域内のサブブロックで１つの量子化パラメータを共有しない場合、復号部２０３は、有意係数が存在しないサブブロックを除くサブブロックのそれぞれについて関連付けられた量子化パラメータを復号することになる。
【０１２５】
このような復号処理が基本ブロックのそれぞれについて行われる。
【０１２６】
量子化の制御サイズと量子化の制御深度の両方を用いて量子化パラメータの復号処理を行う場合、サブブロックの長辺を用いて量子化の制御サイズとの比較を行う方がそれぞれのサブブロックに量子化パラメータが関連付けられる可能性が高い。すなわちサブブロックの長辺を用いて量子化の制御サイズとの比較を行う方が細長い長方形の形状の物体に適している。
【０１２７】
これにより、長方形サブブロック分割が多用された場合において、量子化の制御深度だけでなく量子化の制御サイズを用いることで、極端に細長い長方形サブブロックにおいても量子化パラメータ符号化制御を実現することが可能となる。
【０１２８】
なお、サブブロックの分割の種類が階層的に連続した場合、量子化の制御サイズとサブブロックのサイズとの比較の結果にかかわらず、量子化パラメータの共有を禁止してもよい。これによって細長い形状の物体に適したサブブロックの量子化を行うことができる。図１、図２に示した各処理部はハードウェアでもって構成しているものとして上記実施形態では説明した。しかし、これらの図に示した各処理部で行う処理をコンピュータプログラムでもって構成しても良い。
【０１２９】
図５は、上記各実施形態に係る画像表示装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図である。
【０１３０】
ＣＰＵ５０１は、ＲＡＭ５０２やＲＯＭ５０３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る画像処理装置が行うものとして上述した各処理を実行する。即ち、ＣＰＵ５０１は、図１、図２に示した各処理部として機能することになる。
【０１３１】
ＲＡＭ５０２は、外部記憶装置５０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）５０７を介して外部から取得したデータなどを一時的に記憶するためのエリアを有する。更に、ＲＡＭ５０２は、ＣＰＵ５０１が各種の処理を実行する際に用いるワークエリアを有する。即ち、ＲＡＭ５０２は、例えば、フレームメモリとして割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
【０１３２】
ＲＯＭ５０３には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部５０４は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をＣＰＵ５０１に対して入力することができる。表示部５０５は、ＣＰＵ５０１による処理結果を表示する。また表示部５０５は例えば液晶ディスプレイで構成される。
【０１３３】
外部記憶装置５０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置５０６には、ＯＳ（オペレーティングシステム）や、図１、図２に示した各部の機能をＣＰＵ５０１に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置５０６には、処理対象としての各画像データが保存されていても良い。
【０１３４】
外部記憶装置５０６に保存されているコンピュータプログラムやデータは、ＣＰＵ５０１による制御に従って適宜、ＲＡＭ５０２にロードされ、ＣＰＵ５０１による処理対象となる。Ｉ／Ｆ５０７には、ＬＡＮやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのＩ／Ｆ５０７を介して様々な情報を取得したり、送出したりすることができる。５０８は上述の各部を繋ぐバスである。
【０１３５】
上述の構成からなる作動は前述のフローチャートで説明した作動をＣＰＵ５０１が中心となってその制御を行う。
【０１３６】
本発明の目的は、前述した機能を実現するコンピュータプログラムのコードを記録した記憶媒体を、システムに供給し、そのシステムがコンピュータプログラムのコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたコンピュータプログラムのコード自体が前述した実施形態の機能を実現し、そのコンピュータプログラムのコードを記憶した記憶媒体は本発明を構成する。また、そのプログラムのコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
【０１３７】
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたコンピュータプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。そして、そのコンピュータプログラムのコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。
【０１３８】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するコンピュータプログラムのコードが格納されることになる。
【０１３９】
本発明は静止画・動画の符号化・復号を行う符号化装置・復号装置に用いられる。特に、量子化処理を使用する符号化方式および復号方式に適用が可能である。
【符号の説明】
【０１４０】
１０１、１１２、２０１、２０８  端子
１０２  ブロック分割部
１０３  生成部
１０４  予測部
１０５  変換・量子化部
１０６、２０４  逆量子化・逆変換部
１０７、２０５  画像再生部
１０８、２０６  フレームメモリ
１０９、２０７  インループフィルタ部
１１０  符号化部
１１１  統合符号化部
２０２  分離復号部
２０３  復号部
【図１】
2020005110.tif 000003
【図２】
2020005110.tif 000004
【図３】
2020005110.tif 000005
【図４】
2020005110.tif 000006
【図５】
2020005110.tif 000007
【図６】
2020005110.tif 000008
【図７】
2020005110.tif 000009
【図８】
2020005110.tif 000010
【図９】
2020005110.tif 000011
【図１０】
2020005110.tif 000012
【図１１】
2020005110.tif 000013
【図１２】
2020005110.tif 000014
【図１３】
2020005110.tif 000015
【図１４】
2020005110.tif 000016
【図１５】
2020005110.tif 000017
【図１６】
2020005110.tif 000018
【図１７】
2020005110.tif 000019
【図１８】
2020005110.tif 000020
【図１９】
2020005110.tif 000021