(57)【要約】【課題】符号化効率の低下を抑えつつ、符号化対象の領域におけるブロック構造を決定する際の演算量を削減する。【解決手段】映像符号化装置は、符号化対象ブロックを再帰的に分割して得られる各ブロックを予め定められた順序で対象ブロックに選択するブロック選択手段と、選択された対象ブロックごとに隣接するブロックにおいて最小のブロックサイズを取得するブロックサイズ取得手段と、取得したブロックサイズ、取得したブロックサイズより１階層大きいブロックサイズ、又は取得したブロックサイズより１階層小さいブロックサイズのいずれかと、対象ブロックのブロックサイズとが一致する場合に対象ブロックの評価値を算出する評価値算出手段と、符号化対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するブロック構成決定手段とを備える。【選択図】図３
2014204207.tif 000002
【特許請求の範囲】
【請求項１】
映像符号化において画像領域を分割した符号化対象ブロックに対して符号化対象ブロック内の領域を構成するブロックのサイズを決定するブロックサイズ決定方法であって、
前記符号化対象ブロックを再帰的に分割して得られる各ブロックを予め定められた順序で対象ブロックに選択するステップと、
選択された対象ブロックごとに隣接するブロックにおいて最小のブロックサイズを取得するステップと、
取得したブロックサイズ、前記取得したブロックサイズより１階層大きいブロックサイズ、又は前記取得したブロックサイズより１階層小さいブロックサイズのいずれかと、前記対象ブロックのブロックサイズとが一致する場合に前記対象ブロックの評価値を算出するステップと、
前記符号化対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するステップと
を有することを特徴とするブロックサイズ決定方法。
【請求項２】
請求項１に記載のブロックサイズ決定方法であって、
前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる順序であり、
前記対象ブロックを分割したブロックそれぞれの評価値を算出し、算出した総和を算出するステップと、
前記対象ブロックの評価値が前記総和より小さい場合、前記対象ブロックを分割して得られるブロックを評価値の算出対象から除外するステップと
を更に有することを特徴とするブロックサイズ決定方法。
【請求項３】
請求項１に記載のブロックサイズ決定方法であって、
前記順序は、前記符号化対象ブロックにおいて最小のブロックサイズから始まる順序であり、
前記対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するステップと、
決定した前記対象ブロック内のブロックの組み合わせが前記対象ブロックを分割する複数のブロックの組み合わせである場合、前記対象ブロックを含むブロックであって前記対象ブロックより上位のブロックを評価値の算出対象から除外するステップと
を更に有することを特徴とするブロックサイズ決定方法。
【請求項４】
請求項１から請求項３のいずれか一項に記載のブロックサイズ決定方法であって、
前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる第１の順序と、前記符号化対象ブロックにおいて最小のブロックサイズから始まる第２の順序とであり、
前記選択するステップでは、
前記符号化対象ブロックに隣接するブロックにおける最小のブロックサイズに基づいて、前記第１の順序と前記第２の順序とのいずれの順序に基づいて前記対象ブロックを選択するかを決定する
ことを特徴とするブロックサイズ決定方法。
【請求項５】
請求項１から請求項３のいずれか一項に記載のブロックサイズ決定方法であって、
前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる第１の順序と、前記符号化対象ブロックにおいて最小のブロックサイズから始まる第２の順序とであり、
前記選択するステップでは、
符号化対象ブロックのピクチャタイプに基づいて、前記第１の順序と前記第２の順序とのいずれの順序に基づいて前記対象ブロックを選択するかを決定する
ことを特徴とするブロックサイズ決定方法。
【請求項６】
映像符号化において画像領域を分割した符号化対象ブロックに対して符号化対象ブロック内の領域を構成するブロックのサイズを決定する映像符号化装置であって、
前記符号化対象ブロックを再帰的に分割して得られる各ブロックを予め定められた順序で対象ブロックに選択するブロック選択手段と、
選択された対象ブロックごとに隣接するブロックにおいて最小のブロックサイズを取得するブロックサイズ取得手段と、
取得したブロックサイズ、前記取得したブロックサイズより１階層大きいブロックサイズ、又は前記取得したブロックサイズより１階層小さいブロックサイズのいずれかと、前記対象ブロックのブロックサイズとが一致する場合に前記対象ブロックの評価値を算出する評価値算出手段と
前記符号化対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するブロック構成決定手段と
を備えることを特徴とする映像符号化装置。
【請求項７】
請求項１から請求項５のいずれか一項に記載のブロックサイズ決定方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロックサイズ決定方法、映像符号化装置、及びプログラムに関する。
【背景技術】
【０００２】
動画像データを符号化するための技術として、ＭＰＥＧ−４やＨ．２６４／ＡＶＣ（以下、Ｈ．２６４という。）という符号化方式が知られている。近年では、次世代規格としてＨＥＶＣ（High Efficiency Video Coding）という符号化方式の標準化作業が進められており、従来のＨ．２６４よりも多くの演算量が要求されるが、より高い符号化効率を実現することが知られている。この符号化方式では画面内のブロック構造が従来のＨ．２６４等よりも自由度の高い階層構造となり、ブロックのサイズ候補数が増えた。以下にＨＥＶＣ参照ソフトウェアのブロック構造の決定処理手順を述べる。
【０００３】
ＨＥＶＣ参照ソフトウェアでは符号化対象の画像領域を６４ｐｉｘｅｌ×６４ｐｉｘｅｌ（以降、６４×６４という。）の大きさの階層型ブロック構造を有するＬＣＵ（Largest Coding Unit：最大符号化単位）と呼ばれる正方形のブロック単位に分け、ＬＣＵごとに符号化を行う。符号化において、ＬＣＵを再帰的に４等分割することを最大で３回まで繰り返して、より小さい領域を符号化対象とすることができる。ＬＣＵが６４×６４である場合、６４×６４の領域は、領域に対する４分割を再帰的に行って得られる四分木構造の３２×３２、１６×１６、８×８の４階層の領域に分割することができる。ＬＣＵを分割したブロックはＣＵ（Coding Unit：符号化単位又はコーディング・ユニット）と呼ばれ、ＬＣＵは異なるブロックサイズのＣＵ又は同じブロックサイズのＣＵの組み合わせで構成することができる。
【０００４】
図１５は、ＬＣＵを複数のＣＵの組み合わせで構成する一例を示す図である。同図に示す例では、２つの３２×３２のＣＵと、７つの１６×１６のＣＵと、４つの８×８のＣＵとの組み合わせでＬＣＵを構成している。動画像データを符号化する際には、ＬＣＵを構成するそれぞれのＣＵを更に分割したＰＵ（Prediction Unit：予測単位）ごとにイントラ予測或いはインター予測を行い、予測モードを決定できる。ブロック分割予測モードの決定には、一般に、次式（１）で表されるＲＤコストと呼ばれる評価値が用いられる。
（評価値）＝Ｄ＋λＲ  ・・・（１）
【０００５】
式（１）において、Ｄはある予測モードでの復元信号と原信号との誤差であり、Ｒは情報量であり、λはラグランジアンパラメータである。式（１）で算出される評価値が最小となる予測モードとＣＵの組み合わせが、最終的な符号化におけるＬＣＵのブロック構造として決定される。ＬＣＵのブロック構成決定処理を最適化しないで行う場合、ＬＣＵ内のＣＵの組み合わせ１つ１つに対して予測モードの決定を行うことになる。この場合、ＬＣＵのブロック構造を決定する処理における演算が増加するため、当該処理の負荷が符号化処理全体において大幅に増加して大きな負担になってしまう。よって、符号化効率の低下を抑えつつ、ＬＣＵのブロック構造を決定する処理に要する負荷を抑えることは、符号化処理全体の演算量を削減するという観点から重要性は高く、そのような手法が望まれていた。
【０００６】
これに対して、ＬＣＵのブロック構造を決定する際に、選択の対象とするブロックサイズの候補を制限することにより、負荷を軽減させる方法が提案されている（例えば、非特許文献１）。例えば、ＬＣＵのブロック構造を決定する際に、隣接するブロック（ＰＵ）の最小ブロックサイズより１階層小さいブロックサイズから、隣接するブロックの最大ブロックサイズより１階層大きいブロックサイズまでを候補にする方法がある。
【０００７】
図１６は、隣接ブロックにおけるブロック構造に基づいて、符号化対象ブロックにおけるブロック構造を定める一例を示す図である。図１６（Ａ）には、隣接ブロックのブロック構造が３つの３２×３２のブロックと、３つの１６×１６のブロックと、４つの８×８のブロックとからなる場合が示されている。この場合、符号化対象ブロックのブロック構造を決定する際のブロックサイズの候補は、同図に示すように、６４×６４から８×８までになる。図１６（Ｂ）には、隣接ブロックのブロック構造が４つの３２×３２のブロックからなる場合が示されている。この場合、符号化対象ブロックのブロック構造を決定する際のブロックサイズの候補は、同図に示すように、６４×６４から１６×１６までになる。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Adaptive CU Depth Range, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, document JCTVC-E090, 5th Meeting. Geneva, Switzerland, pp.16-23, April 2011
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、前述の方法では、符号化対象映像が画面全体にわたって複雑で動きの激しい映像やテクスチャの細かい領域で示されている映像において、様々なブロックサイズが混在し、隣接するブロックのブロックサイズが複数存在する場合には、結果的に全階層分（すべてのブロックサイズ）の評価値を算出することになってしまう。すなわち、前述の方法を用いて、ブロック構造を決定する際のブロックサイズの候補に対して制限を加えたとしても、全探索とほぼ変わらない演算を行うことになり、演算量や負荷の軽減できないことがあるという問題がある。
【００１０】
上記事情に鑑み、本発明は、符号化効率の低下を抑えつつ、符号化対象の領域におけるブロック構造を決定する際の演算量を削減することができるブロックサイズ決定方法、映像符号化装置、及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【００１１】
本発明の一態様は、映像符号化において画像領域を分割した符号化対象ブロックに対して符号化対象ブロック内の領域を構成するブロックのサイズを決定するブロックサイズ決定方法であって、前記符号化対象ブロックを再帰的に分割して得られる各ブロックを予め定められた順序で対象ブロックに選択するステップと、選択された対象ブロックごとに隣接するブロックにおいて最小のブロックサイズを取得するステップと、取得したブロックサイズ、前記取得したブロックサイズより１階層大きいブロックサイズ、又は前記取得したブロックサイズより１階層小さいブロックサイズのいずれかと、前記対象ブロックのブロックサイズとが一致する場合に前記対象ブロックの評価値を算出するステップと、前記符号化対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するステップとを有することを特徴とするブロックサイズ決定方法である。
【００１２】
また、本発明の一態様は、上記に記載の発明において、前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる順序であり、前記対象ブロックを分割したブロックそれぞれの評価値を算出し、算出した総和を算出するステップと、前記対象ブロックの評価値が前記総和より小さい場合、前記対象ブロックを分割して得られるブロックを評価値の算出対象から除外するステップとを更に有することを特徴とする。
【００１３】
また、本発明の一態様は、上記に記載の発明において、前記順序は、前記符号化対象ブロックにおいて最小のブロックサイズから始まる順序であり、前記対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するステップと、決定した前記対象ブロック内のブロックの組み合わせが前記対象ブロックを分割する複数のブロックの組み合わせである場合、前記対象ブロックを含むブロックであって前記対象ブロックより上位のブロックを評価値の算出対象から除外するステップとを更に有することを特徴とする。
【００１４】
また、本発明の一態様は、上記に記載の発明において、前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる第１の順序と、前記符号化対象ブロックにおいて最小のブロックサイズから始まる第２の順序とであり、前記選択するステップでは、前記符号化対象ブロックに隣接するブロックにおける最小のブロックサイズに基づいて、前記第１の順序と前記第２の順序とのいずれの順序に基づいて前記対象ブロックを選択するかを決定することを特徴とする。
【００１５】
また、本発明の一態様は、上記に記載の発明において、前記順序は、前記符号化対象ブロックにおいて最大のブロックサイズから始まる第１の順序と、前記符号化対象ブロックにおいて最小のブロックサイズから始まる第２の順序とであり、前記選択するステップでは、符号化対象ブロックのピクチャタイプに基づいて、前記第１の順序と前記第２の順序とのいずれの順序に基づいて前記対象ブロックを選択するかを決定することを特徴とする。
【００１６】
また、本発明の一態様は、映像符号化において画像領域を分割した符号化対象ブロックに対して符号化対象ブロック内の領域を構成するブロックのサイズを決定する映像符号化装置であって、前記符号化対象ブロックを再帰的に分割して得られる各ブロックを予め定められた順序で対象ブロックに選択するブロック選択手段と、選択された対象ブロックごとに隣接するブロックにおいて最小のブロックサイズを取得するブロックサイズ取得手段と、取得したブロックサイズ、前記取得したブロックサイズより１階層大きいブロックサイズ、又は前記取得したブロックサイズより１階層小さいブロックサイズのいずれかと、前記対象ブロックのブロックサイズとが一致する場合に前記対象ブロックの評価値を算出する評価値算出手段と前記符号化対象ブロック内の領域を構成するブロックの組み合わせを評価値に基づいて決定するブロック構成決定手段とを備えることを特徴とする映像符号化装置である。
【００１７】
また、本発明の一態様は、上記発明のブロックサイズ決定方法をコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１８】
本発明によれば、評価値を算出するブロックを、対象ブロックに隣接するブロックにおける最小のブロックサイズに基づいて選択することにより、評価値を算出する対象のブロック数を削減することができる。このとき、隣接するブロックのサイズに応じて評価値を算出する対象のブロックを選択しているので、符号化効率の低下を抑えつつ符号化対象の領域におけるブロック構造を決定する際の演算量を削減することができる。
【図面の簡単な説明】
【００１９】
【図１】第１の実施形態における映像符号化装置１００の構成を示すブロック図である。
【図２】同実施形態におけるＬＣＵ内の各ブロックに対する処理の優先度（順序）を示す図である。
【図３】同実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。
【図４】比較例におけるブロックサイズ決定処理を示すフローチャートである。
【図５】第２の実施形態におけるＬＣＵ内の各ブロックに対する処理の優先度（順序）を示す図である。
【図６】同実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。
【図７】第３実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。
【図８】第４の実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理の第１のフローチャートである。
【図９】同実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理の第２のフローチャートである。
【図１０】第５の実施形態における映像符号化装置２００の構成を示すブロック図である。
【図１１】同実施形態におけるブロックサイズ決定処理切替部２１１が行う選択処理を示すフローチャートである。
【図１２】第６の実施形態におけるブロックサイズ決定処理切替部２１１が行う選択処理を示すフローチャートである。
【図１３】各実施形態におけるブロックサイズ決定処理の効果を説明する図である。
【図１４】第３及び第４の実施形態におけるブロックサイズ決定処理の効果を説明する図である。
【図１５】ＬＣＵを複数のＣＵの組み合わせで構成する一例を示す図である。
【図１６】隣接ブロックにおけるブロック構造に基づいて、符号化対象ブロックにおけるブロック構造を定める一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して、本発明の実施形態におけるブロックサイズ決定方法、映像符号化装置、及びプログラムを説明する。なお、ＨＥＶＣを例に説明するが、ＨＥＶＣ以外の映像符号化に適用してもよい。つまり、符号化対象の映像又は画像の領域をＨＥＶＣのように階層型ブロック構造に基づいて分割する符号化方式全般に適用することができる。
【００２１】
ここで、各実施形態における処理の概要を述べる。符号化対象ブロックであるＬＣＵに含まれる各対象ブロックであるＣＵに対して順次以下の処理を行う。対象ブロックに隣接するブロック（以下、隣接ブロックという。）において最小のブロックサイズを取得する。対象ブロックにおいて評価値を算出するブロックサイズを、取得した隣接ブロックにおける最小のブロックサイズと同じ、当該最小のブロックサイズより１階層大きいブロックサイズ、又は、当該最小のブロックサイズより１階層小さいブロックサイズの最大３つのブロックサイズに制限する。なお、ここではＨＥＶＣに適用することを前提にしているので、ブロックサイズは６４×６４、３２×３２、１６×１６、８×８のうち最大で３つのブロックサイズが選択されることになる。隣接ブロックにおける最小ブロックサイズに基づいて選択されるブロックサイズを初期候補とする。
【００２２】
初期候補の中から１階層又は２階層分の評価値を算出及び比較を行い、比較結果に応じて評価値を算出するブロックサイズの候補を更に制限する。また、隣接ブロックや対象ブロックの属性などに応じて、ブロックサイズの候補制限する方法を切り替えて適用する。なお、隣接ブロックは、符号化対象ブロック（以下、対象ブロックともいう。）の上側に隣接するブロックや、左側に隣接するブロック、或いは隣接する周辺の複数のブロックのいずれか又は全てを意味する。なお、隣接ブロックとするブロックを適宜切り替えるようにしてもよい。
【００２３】
＜第１の実施形態＞
図１は、第１の実施形態における映像符号化装置１００の構成を示すブロック図である。映像符号化装置１００は、ピクチャ（符号化対象の映像）を示す映像信号を入力し、入力した映像信号の各フレームの画像領域を複数のブロックに分割してブロックごとに符号化し、符号化結果のビットストリームを符号化データとして出力する。なお、映像とは、静止画像、動画像を含むものである。
【００２４】
映像符号化装置１００は、イントラ予測部１０１、インター予測部１０２、イントラ／インター切替スイッチ１０３、予測残差信号生成部１０４、直交変換／量子化部１０５、逆量子化／逆直交変換部１０６、復元信号生成部１０７、ループフィルタ部１０８、復号ピクチャメモリ１０９、ブロックサイズ決定部１１０、及び、可変長符号化部１１１を備えている。
【００２５】
イントラ予測部１０１は、復元信号生成部１０７から復元信号を入力し、入力した復元信号から予測信号を生成する。復元信号は、符号化対象ブロックに対するピクチャを符号化した後に復号して得られたピクチャを示す信号である。
インター予測部１０２は、復号ピクチャメモリに記憶されているピクチャを読み出し、読み出したピクチャから予測信号を生成する。
【００２６】
イントラ／インター切替スイッチ１０３は、ブロックサイズ決定部１１０の制御に基づいて、イントラ予測部１０１が生成する予測信号と、インター予測部１０２が生成する予測信号とのいずれかの予測信号を選択する。イントラ／インター切替スイッチ１０３は、選択した予測信号を予測残差信号生成部１０４に出力する。
【００２７】
予測残差信号生成部１０４は、映像符号化装置１００に入力される映像信号からイントラ／インター切替スイッチ１０３から出力される予測信号を減じる演算を行い、予測ピクチャの差分である予測残差信号を算出する。予測残差信号生成部１０４は、入力されるピクチャの符号化対象ブロックＬＣＵに対してＰＵ単位で予測残差信号を算出する。予測残差信号生成部１０４は、算出した予測残差信号を直交変換／量子化部１０５に出力する。
【００２８】
直交変換／量子化部１０５は、予測残差信号生成部１０４から出力される予測残差信号、すなわち各ＰＵにおける差分に対して直交変換と量子化とを施して得られた信号を、逆量子化／逆直交変換部１０６と可変長符号化部１１１とに出力する。
逆量子化／逆直交変換部１０６は、直交変換／量子化部１０５から出力される信号に対して逆量子化と逆直交変換とを施すことにより、誤差を含む予測残差信号に逆変換する。逆量子化／逆直交変換部１０６は逆変換により得られた予測残差信号を復元信号生成部１０７に出力する。
【００２９】
復元信号生成部１０７は、逆量子化／逆直交変換部１０６が出力する予測残差信号と、イントラ／インター切替スイッチ１０３が選択した予測信号とを加算することにより、符号化対象ブロックに対応する復元信号を算出する。復元信号生成部１０７は、算出した復元信号をイントラ予測部１０１とループフィルタ部１０８とに出力する。
【００３０】
ループフィルタ部１０８は、復元信号生成部１０７が出力する復元信号、すなわち符号化対象ブロックの復元されたピクチャが１画面分入力されると、当該ピクチャに対してループフィルタを施す。ループフィルタ部１０８は、ループフィルタを施して得られたピクチャを復号ピクチャメモリ１０９に出力して記憶させる。復号ピクチャメモリ１０９には、ループフィルタ部１０８から出力されるピクチャが記憶される。
【００３１】
ブロックサイズ決定部１１０は、イントラ予測部１０１が生成する予測信号、インター予測部１０２が生成する予測信号、予測残差信号生成部１０４が出力する予測残差信号、直交変換／量子化部１０５が出力する信号、及び、可変長符号化部１１１から入力される符号化データに基づいて、符号化対象ブロックのブロック構造を決定する。また、ブロックサイズ決定部１１０は、決定したブロック構造に基づいて、イントラ／インター切替スイッチ１０３をブロックごとに制御して、イントラ予測部１０１が生成する予測信号と、インター予測部１０２が生成する予測信号とのいずれかの予測信号を予測残差信号生成部１０４に出力させる。ブロックサイズ決定部１１０は、符号化対象ブロックの予測モードに応じて、いずれの予測信号を選択させるかを決定する。
【００３２】
ブロックサイズ決定部１１０がイントラ／インター切替スイッチ１０３を制御することにより、決定したブロック構造が直交変換／量子化部１０５、逆量子化／逆直交変換部１０６、復元信号生成部１０７等を経由して後のブロック及びピクチャの予測に反映される。
可変長符号化部１１１は、直交変換／量子化部１０５から出力される信号を符号化データに変換して外部に出力する。
【００３３】
以下、本実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理について説明する。図２は、本実施形態におけるＬＣＵ内の各ブロックに対する処理の優先度（順序）を示す図である。同図において、各ブロックに付されている数字は、各ブロックが処理対象となる優先度を表している。本実施形態では、ＬＣＵ内の最も大きいブロック（６４×６４のブロック）に対する処理を最初に行い、ＬＣＵに対して４分割を再帰的に行って得られる四分木構造に沿って各ブロックに対する処理を順に行う。四分木構造に沿って順に処理するとは、四分木の各ノードをブロックに対応させたときに四分木の各ノードを探索する順で処理するという意味である。図２に示す処理順序は、探索アルゴリズムにおける「行きがけ順」に対応する。また、ブロックサイズ決定処理では、四分木構造に沿って処理を行うため、同一階層におけるブロックでは処理の順序はＺスキャン順になる。なお、Ｚスキャン順は分割されたブロック内においてはラスタースキャン順である。ブロックが４分割される場合おいては処理の順序が「Ｚ」字状に行われる。
【００３４】
図３は、本実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。本実施形態では、ＬＣＵにおいて最大のブロックサイズの６４×６４のブロックを最初の対象ブロックに設定した上で、ブロックサイズ決定処理が開始される。ブロックサイズ決定部１１０は、ブロックサイズ決定処理が開始されると、対象ブロックについて処理が終了したか否かを判定する（ステップＳ１０１）。
【００３５】
対象ブロックについて処理が終了していない場合（ステップＳ１０１：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックに対して隣接ブロックが存在するか否かを判定する（ステップＳ１０２）。
隣接ブロックが存在しない場合（ステップＳ１０２：ＮＯ）、ブロックサイズ決定部１１０は処理をステップＳ１０６に進める。
隣接ブロックが存在する場合（ステップＳ１０２：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックに隣接するブロックのうちブロックのサイズが最小のブロックを検出し、検出したブロックのブロックサイズを取得する（ステップＳ１０３）。
【００３６】
ブロックサイズ決定部１１０は、対象ブロックのブロックサイズと、ステップＳ１０３において取得したブロックサイズとの関係が次の条件１を満たすか否かを判定する（ステップＳ１０４）。
［条件１］：対象ブロックのブロックサイズが、ステップＳ１０３において取得したブロックサイズ、取得したブロックサイズより１階層大きいブロックサイズ、又は、取得したブロックサイズより１階層小さいブロックサイズを含む初期候補のいずれかと一致する。
【００３７】
ブロックサイズ決定部１１０は、判定の結果が条件１を満たしたか否かを判定し（ステップＳ１０５）、条件１が満たされていない場合（ステップＳ１０５：ＮＯ）、処理をステップＳ１０７に進め、条件１が満たされている場合（ステップＳ１０５：ＹＥＳ）、対象ブロックの評価値を算出する（ステップＳ１０６）。
ブロックサイズ決定部１１０は、図２に示した処理順序において、現在の対象ブロックの次のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ１０７）。
【００３８】
ステップＳ１０１において、対象ブロックについて処理が終了している場合（ステップＳ１０１：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックにおいて評価値が最小となるＣＵの組み合わせを、対象ブロックにおけるブロック構造に決定し（ステップＳ１０８）、ブロックサイズ決定処理を終了する。なお、ブロック構造を決定する際に、評価値が算出されていないブロックはＣＵの組み合わせの対象外とする。また、終了するブロックサイズ決定処理が再帰的に呼び出されたブロックサイズ決定処理であれば、図２に示した処理順序において１つ前のブロックに対するブロックサイズ決定処理のステップＳ１０７に戻ることになる。
【００３９】
図４は、本実施形態のブロックサイズ決定処理に対する比較例としてのブロックサイズ決定処理を示すフローチャートである。比較例のブロックサイズ決定処理は、図１６に示したように評価値を算出する対象のブロックサイズを限定する場合の処理である。図４に示すブロックサイズ決定処理は、ステップＳ２０３とステップＳ２０４とにおける処理が図３に示した本実施形態におけるブロックサイズ決定処理と異なる。ステップＳ２０３では、対象ブロックに隣接する全てのブロックサイズを取得する。ステップＳ２０４では、取得したブロックサイズに基づいて、対象ブロックのブロックサイズが条件１を満たすか否かを判定する。ステップＳ２０３において、隣接ブロック全てのブロックサイズを取得してしまうため、評価値を算出する対象のブロック数を削減できない可能性がある。
【００４０】
これに対して、本実施形態のブロックサイズ決定処理（図３）では、隣接ブロックのうち最小のブロックサイズを取得し、条件１を満たすブロックサイズに対して評価値を算出するようにしているので、評価値を算出する対象のブロック数を削減でき、ブロックサイズ決定処理における演算量及び負荷を削減することができる。
【００４１】
＜第２の実施形態＞
第２の実施形態においては、第１の実施形態とＬＣＵ内の各ブロックに対する処理の優先度が異なる。第１の実施形態では６４×６４のブロックから処理を開始していたのに対して、本実施形態では８×８のブロックから処理を開始する。なお、本実施形態における映像符号化装置は第１の実施形態における映像符号化装置１００と同じ構成であるので説明を省略する。
【００４２】
図５は、第２の実施形態におけるＬＣＵ内の各ブロックに対する処理の優先度（順序）を示す図である。同図において、各ブロックに付されている数字は、各ブロックが処理対象となる優先度を表している。本実施形態では、ＬＣＵ内の最も小さいブロック（８×８のブロック）に対する処理を最初に行い、ＬＣＵにおける四分木構造に沿って各ブロックに対する処理を順に行う。図５に示す処理順序は、四分木に対する探索アルゴリズムにおける「帰りがけ順」に対応する。
【００４３】
具体的には、同一の階層に含まれるブロックであって同一の１階層大きいブロック（親ブロック）に含まれるブロック全てに対して処理が終わると、当該１階層大きいブロックを対象ブロックに設定する。例えば、図５において、８×８のブロック「１」、「２」、「３」、及び「４」に対して処理が終わると、１６×１６のブロックに含まれる８×８のブロック（「１」〜「４」）に対して処理が終わると、１６×１６のブロック「５」が対象ブロックに設定される。
【００４４】
同一親ブロックに含まれるブロックのうち処理が終わっていないブロックがある場合には、当該ブロックが対象ブロックに設定される。また、対象ブロックにおいて、自身のブロックを分割したブロックに処理が終わっていないブロックがある場合には、分割したブロックの処理が先に行われる。例えば、ブロック「５」の処理が終わると、ブロックが「５」に隣接するブロック「１０」が対象ブロックに設定されるが、当該ブロックを分割した８×８のブロック「６」〜「９」の処理が終わっていないため、８×８のブロック「６」〜「９」に対する処理が先に行われる。
【００４５】
図６は、本実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。本実施形態では、ＬＣＵにおいて最小のブロックサイズ８×８のブロックを最初の対象ブロックに設定した上で、ブロックサイズ決定処理が開始される。ブロックサイズ決定部１１０は、ブロックサイズ決定処理が開始されると、対象ブロックについて評価値の算出が完了したか否かを判定する（ステップＳ３０１）。
【００４６】
対象ブロックについて評価値の算出が終了していない場合（ステップＳ３０１：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックに対して隣接ブロックが存在するか否かを判定する（ステップＳ３０２）。
隣接ブロックが存在しない場合（ステップＳ３０２：ＮＯ）、ブロックサイズ決定部１１０は処理をステップＳ３０６に進める。
隣接ブロックが存在する場合（ステップＳ３０２：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックに隣接するブロックのうちブロックのサイズが最小のブロックを検出し、検出したブロックのブロックサイズを取得する（ステップＳ３０３）。
【００４７】
ブロックサイズ決定部１１０は、対象ブロックのブロックサイズと、ステップＳ３０３において取得したブロックサイズとの関係が、第１の実施形態において示した条件１を満たすか否かを判定する（ステップＳ３０４）。
ブロックサイズ決定部１１０は、判定の結果が条件１を満たしたか否かを判定し（ステップＳ３０５）、条件１が満たされていた場合（ステップＳ３０５：ＹＥＳ）、対象ブロックの評価値を算出する（ステップＳ３０６）。
【００４８】
ブロックサイズ決定部１１０は、図５に示した処理順序において、現在の対象ブロックの次のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ１０７）。
【００４９】
ステップＳ３０５において、ステップＳ３０４における判定の結果、条件１が満たされていない場合（ステップＳ３０５：ＮＯ）、ブロックサイズ決定部１１０は、図５に示した処理順序において現在の対象ブロックのブロックサイズよりも１階層大きいブロックサイズまで処理順序を進め、当該処理順序のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ３０８）。
【００５０】
ステップＳ３０８における処理は、条件１を満たさない場合、すなわち隣接ブロックの最小ブロックサイズが２階層以上大きいブロックサイズである場合、現在の対象ブロック及び親ブロックを現在の対象ブロックと同一にするブロックに対する処理をスキップする処理である。
【００５１】
ステップＳ３０１において、対象ブロックについて処理が終了している場合（ステップＳ３０１：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックにおいて評価値が最小となるＣＵの組み合わせを、対象ブロックにおけるブロック構造に決定し（ステップＳ３０９）、ブロックサイズ決定処理を終了する。なお、ブロック構造を決定する際において、第１の実施形態と同様に評価値が算出されていないブロックはＣＵの組み合わせの対象外とする。また、終了するブロックサイズ決定処理が再帰的に呼び出されたブロックサイズ決定処理であれば、呼び出されたステップＳ３０７又はステップＳ３０８に戻ることになる。本実施形態では、対象ブロックの評価値と、対象ブロック以下の階層の各ブロックとの評価値を用いて、評価値が最小となるＣＵの組み合わせをブロック構造に決定する。
【００５２】
四分木構造に沿って、最小のブロックサイズ（８×８）のブロックから順に最大のブロックサイズ（６４×６４）のブロックまで処理を進める際に、条件１を満たさないブロックに対する処理をスキップして評価値を算出するようにしているので、評価値を算出する対象のブロック数を削減でき、ブロックサイズ決定処理における演算量及び負荷を削減することができる。
【００５３】
＜第３の実施形態＞
第３の実施形態におけるブロックサイズ決定処理は、第１の実施形態におけるブロックサイズ決定処理に対して変更を加えた処理となっている。なお、本実施形態における映像符号化装置は第１の実施形態における映像符号化装置１００と同じ構成であるので説明を省略する。また、本実施形態における各ブロックに対する処理の優先度（順序）も同一であり、図２に示した優先度である。
【００５４】
図７は、第３実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。ＬＣＵにおいて最大のブロックサイズの６４×６４のブロックを最初の対象ブロックに設定した上で、ブロックサイズ決定処理が開始される。ブロックサイズ決定部１１０は、ブロックサイズ決定処理が開始されると、対象ブロックについて処理が終了したか否かを判定する（ステップＳ４０１）。
【００５５】
対象ブロックについて処理が終了していない場合（ステップＳ４０１：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックに対して隣接ブロックが存在するか否かを判定する（ステップＳ４０２）。
【００５６】
隣接ブロックが存在しない場合（ステップＳ４０２：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックの評価値を算出し（ステップＳ４０３）、図２に示した処理順序において、現在の対象ブロックの次のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ４０４）。
一方、隣接ブロックが存在する場合（ステップＳ４０２：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックに隣接するブロックのうちブロックのサイズが最小のブロックを検出し、検出したブロックのブロックサイズを取得する（ステップＳ４０５）。
【００５７】
ブロックサイズ決定部１１０は、対象ブロックのブロックサイズとステップＳ４０５において取得したブロックサイズとの関係が、第１の実施形態において示した条件１と、次の条件２とを満たすか否かを判定する（ステップＳ４０６）。
［条件２］：対象ブロックのブロックサイズより１階層小さいブロックサイズが、ステップＳ４０５において取得したブロックサイズ、取得したブロックサイズより１階層大きいブロックサイズ、又は、取得したブロックサイズより１階層小さいブロックサイズを含む初期候補のいずれかと一致する。
【００５８】
ブロックサイズ決定部１１０は、条件１が満たされていたか否かを判定し（ステップＳ４０７）、条件１が満たされていない場合（ステップＳ４０７：ＮＯ）、処理をステップＳ４０４に進め、条件１が満たされていた場合（ステップＳ４０７：ＹＥＳ）、対象ブロックの評価値を算出する（ステップＳ４０８）。
【００５９】
ブロックサイズ決定部１１０は、条件２が満たされていたか否かを判定し（ステップＳ４０９）、条件２が満たされていない場合（ステップＳ４０９：ＮＯ）、処理をステップＳ４１２に進め、条件２が満たされていた場合（ステップＳ４０９：ＹＥＳ）、対象ブロックを４つに分割した際の評価値を算出する（ステップＳ４１０）。
なお、４つに分割した際の評価値は、対象ブロックを４つに分割して得られる４つの分割ブロックそれぞれの評価値を加算した総和である。
【００６０】
ブロックサイズ決定部１１０は、ステップＳ４０８において算出した評価値（評価値Ａ）が、ステップＳ４１０において算出した評価値（評価値Ｂ）より小さいか否かを判定する（ステップＳ４１１）。
評価値Ａが評価値Ｂより小さくない場合（ステップＳ４１１：ＮＯ）、ブロックサイズ決定部１１０は処理をステップＳ４０４に進める。
【００６１】
一方、評価値Ａが評価値Ｂより小さい場合（ステップＳ４１１：ＹＥＳ）、ブロックサイズ決定部１１０は、現在の対象ブロックを分割したブロックに対する処理をスキップし、図２に示した処理順序において現在の対象ブロックの次のブロックを処理対象に設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ４１２）。なお、ステップＳ４１２における次のブロックとは、現在の対象ブロック以降の処理順序のブロックのうち、現在の対象ブロックを分割して得られるブロック以外のブロックであって最小の処理順序のブロックである。
【００６２】
ステップＳ４０１において、対象ブロックについて処理が終了している場合（ステップＳ４０１：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックにおいて評価値が最小になるＣＵの組み合わせを、対象ブロックにおけるブロック構造に決定し（ステップＳ４１３）、ブロックサイズ決定処理を終了する。なお、ブロック構造を決定する際において、第１の実施形態と同様に評価値が算出されていないブロックはＣＵの組み合わせの対象外とする。また、終了するブロックサイズ決定処理が再帰的に呼び出されたブロックサイズ決定処理であれば、呼び出されたステップＳ４０４又はステップＳ４１２に戻ることになる。
【００６３】
本実施形態におけるブロックサイズ決定処理は、条件１を満たした場合において、条件２を満たしたか否かの判定（ステップＳ４０９）と評価値の比較（ステップＳ４１１）とを加えている点が第１の実施形態におけるブロックサイズ決定処理と異なる。
本実施形態では、ステップＳ４０９における処理で、現在の対象ブロックを分割したブロックが条件１を満たすか否かを事前に判定し、条件１を満たさない場合に下の階層のブロックに対する処理をスキップする。これにより、第１の実施形態におけるブロックサイズ決定処理より、更に演算量及び負荷を削減することができる。
また、ステップＳ４１１における処理で、現在の対象ブロックの評価値（評価値Ａ）と、対象ブロックを分割したブロックで構成したときの評価値（評価値Ｂ）とを比較して、下の階層のブロックを組み合わせた方が小さい評価値が得られるかを判定する。下の階層のブロックを組み合わせても小さい評価値が得られないと判定すると、現在の対象ブロックを分割したブロックに対する処理をスキップする。これにより、第１の実施形態におけるブロックサイズ決定処理より、更に演算量及び負荷を削減することができる。
【００６４】
＜第４の実施形態＞
第３の実施形態におけるブロックサイズ決定処理は、第２の実施形態におけるブロックサイズ決定処理に対して変更を加えた処理となっている。なお、本実施形態における映像符号化装置は第１の実施形態における映像符号化装置１００と同じ構成であるので説明を省略する。また、本実施形態における各ブロックに対する処理の優先度（順序）は、第２の実施形態における優先度と同一であり、図５に示した優先度である。
【００６５】
図８及び図９は、第４の実施形態におけるブロックサイズ決定部１１０が行うブロックサイズ決定処理のフローチャートである。ＬＣＵにおいて最小のブロックサイズの８×８のブロックを最初の対象ブロックに設定した上で、ブロックサイズ決定処理が開始される。ブロックサイズ決定部１１０は、ブロックサイズ決定処理が開始されると、対象ブロックについて処理が終了したか否かを判定する（ステップＳ５０１）。
【００６６】
対象ブロックについて処理が終了していない場合（ステップＳ５０１：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックに対して隣接ブロックが存在するか否かを判定する（ステップＳ５０２）。
【００６７】
隣接ブロックが存在しない場合（ステップＳ５０２：ＮＯ）、ブロックサイズ決定部１１０は、対象ブロックの評価値を算出し（ステップＳ５０３）、図５に示した処理順序において、現在の対象ブロックの次のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ５０４）。
一方、隣接ブロックが存在する場合（ステップＳ５０２：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックに隣接するブロックのうちブロックのサイズが最小のブロックを検出し、検出したブロックのブロックサイズを取得する（ステップＳ５０５）。
【００６８】
ブロックサイズ決定部１１０は、対象ブロックのブロックサイズとステップＳ５０５において取得したブロックサイズとの関係が、第１の実施形態において示した条件１と、次の条件３とを満たすか否かを判定する（ステップＳ５０６）。
［条件３］：対象ブロックのブロックサイズより１階層大きいブロックサイズが、ステップＳ５０５において取得したブロックサイズ、取得したブロックサイズより１階層大きいブロックサイズ、又は、取得したブロックサイズより１階層小さいブロックサイズを含む初期候補のいずれかと一致する。
【００６９】
ブロックサイズ決定部１１０は、条件１が満たされていたか否かを判定し（ステップＳ５０７）、条件１が満たされていない場合（ステップＳ５０７：ＮＯ）、現在の対象ブロックよりも１階層大きいブロックまで処理順序を進め、そのブロックを対象ブロックに設定し、ブロックサイズ決定処理を再帰的に実行する（ステップＳ５０８）。
一方、条件１が満たされていた場合（ステップＳ５０７：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックの評価値を算出する（ステップＳ５０９）。
【００７０】
ブロックサイズ決定部１１０は、条件３が満たされていたか否かを判定し（ステップＳ５１０）、条件３が満たされていない場合（ステップＳ５１０：ＮＯ）、処理をステップＳ５０４に進める。
一方、条件３が満たされていた場合（ステップＳ５１０：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックが現在の対象ブロックより１階層大きいブロックになるまで、ブロックサイズ決定処理を繰り返す（ステップＳ５１１）。
【００７１】
ブロックサイズ決定部１１０は、対象ブロックが１階層大きいブロックになると、評価値が最小となるＣＵの組み合わせを検出する（ステップＳ５１２）。
ブロックサイズ決定部１１０は、ステップＳ５１２において検出したＣＵの組み合わせが現在の対象ブロックであるか否かを判定し（ステップＳ５１３）、現在の対象ブロックである場合（ステップＳ５１３：ＹＥＳ）、処理をステップＳ５０４に進める。
【００７２】
一方、現在の対象ブロックでない場合（ステップＳ５１３：ＮＯ）、ブロックサイズ決定部１１０は、現在の対象ブロックを含むブロックであって現在の対象ブロックよりブロックサイズが大きいブロックに対する処理をスキップし、処理順序で次のブロックを対象ブロックに設定して、ブロックサイズ決定処理を再帰的に実行する（ステップＳ５１４）。なお、ステップＳ５１４における次のブロックとは、現在の対象ブロック以降の処理順序のブロックのうち、現在の対象ブロックを含む上位の階層のブロック以外のブロックであって最小の処理順序のブロックである。
【００７３】
ステップＳ５０１において、対象ブロックについて処理が終了している場合（ステップＳ５０１：ＹＥＳ）、ブロックサイズ決定部１１０は、対象ブロックにおいて評価値が最小になるＣＵの組み合わせを、対象ブロックにおけるブロック構造に決定し（ステップＳ５１５）、ブロックサイズ決定処理を終了する。なお、ブロック構造を決定する際において、第１の実施形態と同様に評価値が算出されていないブロックはＣＵの組み合わせの対象外とする。また、終了するブロックサイズ決定処理が再帰的に呼び出されたブロックサイズ決定処理であれば、呼び出されたステップＳ５０４、ステップＳ５０８、ステップＳ５１１、又はステップＳ５１４のいずれかに戻ることになる。
【００７４】
本実施形態におけるブロックサイズ決定処理は、条件１を満たした場合において、条件３を満たしたか否かの判定（ステップＳ５１０）と、１階層大きいブロックまで処理を進めた際に評価値が最小となる組み合わせが１階層大きいブロックであるか否かの判定（ステップＳ５１３）とを加えている点が第２の実施形態におけるブロックサイズ決定処理と異なる。
本実施形態では、ステップＳ５１３における処理で、１階層大きいブロックまで処理を進めた段階において評価値が最小となる組み合わせが対象ブロックで構成されているか否かを判定し、構成されていない場合（ステップＳ５１３：ＮＯ）には対象ブロックを含み階層の大きいブロックを処理の対象から外し、上の階層のブロックに対する処理をスキップする。これにより、第２の実施形態におけるブロックサイズ決定処理より、更に演算量及び負荷を削減することができる。
【００７５】
換言すると、本実施形態におけるブロックサイズ決定処理では、ＬＣＵの領域を再帰的に４等分して得られる四分木で表される領域の階層構造に沿って、図５に示す処理順序で最小のブロックサイズ（８×８）のブロックから評価値を算出する。このとき、対象ブロックに含まれるブロックであって当該対象ブロックを分割するブロックに対する評価値が算出されていれば、対象ブロックにおいて評価値が最小になるブロック構成を仮に算出する。このとき、対象ブロックに対するブロック構成が当該対象ブロックを分割するブロックで構成される場合、対象ブロックの上位の階層のブロックであって対象ブロックを含むブロックに対する処理及び評価値の算出をスキップすることにより、演算量及び負荷を削減することができる。
【００７６】
＜第５の実施形態＞
図１０は、第５の実施形態における映像符号化装置２００の構成を示すブロック図である。映像符号化装置２００は、第１の実施形態における映像符号化装置１００（図１）と同様に、ピクチャ（符号化対象の映像）を示す映像信号を入力し、入力した映像信号の各フレームを複数のブロックに分割してブロックごとに符号化し、符号化結果のビットストリームを符号化データとして出力する。なお、映像とは、静止画像、動画像を含むものである。以下、映像符号化装置１００における機能部と同じ機能部に対しては同じ符号を付して、その説明を省略する。
【００７７】
映像符号化装置２００は、イントラ予測部１０１、インター予測部１０２、イントラ／インター切替スイッチ１０３、予測残差信号生成部１０４、直交変換／量子化部１０５、逆量子化／逆直交変換部１０６、復元信号生成部１０７、ループフィルタ部１０８、復号ピクチャメモリ１０９、ブロックサイズ決定部２１０、可変長符号化部１１１、及び、ブロックサイズ決定処理切替部２１１を備えている。映像符号化装置２００は、ブロックサイズ決定処理切替部２１１を更に備えている点と、ブロックサイズ決定部１１０に代えてブロックサイズ決定部２１０を備えている点とが、映像符号化装置１００と異なる。
【００７８】
ブロックサイズ決定部２１０は、ブロックサイズ決定部１１０と同様に符号化対象ブロックのブロック構造を決定する。なお、ブロックサイズ決定部２１０は、２種類のブロックサイズ決定処理を実行することができ、ブロックサイズ決定処理切替部２１１の制御に応じて、２種類のブロックサイズ決定処理のいずれか一方を実行してＬＣＵに対するブロック構造を決定する。ブロックサイズ決定部２１０が実行できる２種類のブロックサイズ決定処理の組み合わせは、第１及び第２の実施形態におけるブロックサイズ決定処理の組み合わせ、第１及び第４の実施形態におけるブロックサイズ決定処理の組み合わせ、第３及び第２の実施形態におけるブロックサイズ決定処理の組み合わせ、第３及び第４の実施形態におけるブロックサイズ決定処理の組み合わせのいずれか一つである。また、ブロックサイズ決定部２１０は、ブロックサイズ決定部１１０と同様にイントラ／インター切替スイッチ１０３をブロックごとに制御する。
【００７９】
ブロックサイズ決定処理切替部２１１は、映像符号化装置２００に入力されるピクチャのピクチャタイプ（予測モード）に基づいて、ブロックサイズ決定部２１０が実行するブロックサイズ決定処理を切り替える制御を行う。図１１は、本実施形態におけるブロックサイズ決定処理切替部２１１が行う選択処理を示すフローチャートである。
【００８０】
ブロックサイズ決定処理切替部２１１は、選択処理を開始すると、映像符号化装置２００に入力されるピクチャのピクチャタイプがインターであるか否かを判定し（ステップＳ６０１）、ピクチャタイプがインターである場合（ステップＳ６０１：ＹＥＳ）、第１又は第３の実施形態におけるブロックサイズ決定処理をブロックサイズ決定部２１０に実行させ（ステップＳ６０２）、選択処理を終了させる。
一方、ピクチャタイプがインターでない場合（ステップＳ６０１：ＮＯ）、ブロックサイズ決定処理切替部２１１は、第２又は第４の実施形態におけるブロックサイズ決定処理をブロックサイズ決定部２１０に実行させ（ステップＳ６０３）、選択処理を終了させる。
【００８１】
＜第６の実施形態＞
第６の実施形態においては、第５の実施形態と選択処理が異なる。第５の実施形態では、入力されるピクチャのピクチャタイプに応じてブロックサイズ決定処理を切り替えていたのに対して、例えば対象ブロックを６４×６４のブロックサイズとした際の隣接ブロックの有無、及び、隣接ブロックのブロックサイズに応じてブロックサイズ決定処理を切り替える。なお、本実施形態における映像符号化装置は第５の実施形態における映像符号化装置２００と同じ構成であるので説明を省略する。
【００８２】
図１２は、第６の実施形態におけるブロックサイズ決定処理切替部２１１が行う選択処理を示すフローチャートである。
ブロックサイズ決定処理切替部２１１は、選択処理を開始すると、対象ブロックを６４×６４のブロックサイズ（ＬＣＵのブロックサイズ）に設定し、対象ブロックに対して隣接ブロックが存在するか否かを判定し（ステップＳ７０１）、隣接ブロックが存在しない場合（ステップＳ７０１：ＮＯ）、第１又第３の実施形態におけるブロックサイズ決定処理をブロックサイズ決定部２１０に実行させ（ステップＳ７０２）、選択処理を終了させる。
【００８３】
一方、隣接ブロックが存在する場合（ステップＳ７０１：ＹＥＳ、ブロックサイズ決定処理切替部２１１は、対象ブロックに隣接するブロックにおいて最大のブロックサイズが６４×６４又は３２×３２のブロックサイズであるか否かを判定する（ステップＳ７０４）。
【００８４】
最大のブロックサイズが６４×６４又は３２×３２のブロックサイズである場合（ステップＳ７０４：ＹＥＳ）、ブロックサイズ決定処理切替部２１１は、処理をステップＳ７０２に進める。
最大のブロックサイズが６４×６４及び３２×３２のブロックサイズでない場合（ステップＳ７０４：ＮＯ）、ブロックサイズ決定処理切替部２１１は、第２又は第４の実施形態におけるブロックサイズ決定処理をブロックサイズ決定部２１０に実行させ（ステップＳ７０５）、選択処理を終了させる。
【００８５】
このように、隣接ブロックの有無、及び、隣接ブロックのブロックサイズに応じて、ブロックサイズ決定部２１０が実行するブロックサイズ決定処理を切り替えることにより、ブロックサイズ決定処理において最初に設定する対象ブロックを切り替えることができ、更に演算量及び負荷を削減することができる。
なお、選択処理を開始する際に、対象ブロックのサイズを６４×６４のブロックサイズに設定する構成を説明したが、ＬＣＵのブロックサイズが６４×６４のブロックサイズ以外の場合には、選択処理を開始する際にＬＣＵのブロックサイズを対象ブロックのサイズに設定するようにしてもよい。
【００８６】
以上、説明したように、各実施形態におけるブロックサイズ決定処理では、隣接ブロックの最小のブロックサイズを基準にして、各ブロックの評価値を算出するか否かを判定する処理、及び、評価値を算出する処理を行うか否かを切り替えている。また、複数の候補の中から先に２つを比較し、比較結果に応じて３つ目の処理を行うか否かを決めている。また、ブロックサイズ決定処理を、隣接ブロックやピクチャタイプに応じて切り替えている。これらにより、符号化対象の領域におけるブロック構造を決定する際の演算量を削減することができる。
【００８７】
例えば、図１３に示すように、符号化済みの隣接ブロックにブロックサイズが小さいブロックが含まれている場合、その領域にはイントラであればテクスチャ領域が存在する可能性が高い。この場合、隣り合うブロックにおいても小さいブロックサイズが選ばれやすい。同様にインターにおいても、動きがばらついた領域が存在する可能性が高く、小さいブロックが選ばれやすい。逆にブロックサイズが大きいブロックがあった場合、その領域にはイントラであれば平坦領域が存在しやすいため、小さすぎるブロックサイズはブロック構成の候補から除外しても符号化効率に影響が少ない。同様にインターにおいても、動きのそろった領域が存在する可能性が高いため、小さすぎるブロックサイズはブロック構成の候補から除外しても符号化効率に影響が少ない。よって、隣接ブロックにおける最小のブロックサイズを基準とし、隣接ブロックの最小ブロックよりも２階層以上異なるブロックサイズをブロック構造の候補から省いても、符号化効率を低下させることなく演算量及び負荷を削減することができる。更に、符号化対象のブロック構造における階層が４階層以上ある場合には、少なくとも１階層以上の演算量の削減が可能になる。
【００８８】
また、図１４に示すように処理の候補となる階層が３階層以上あった場合、候補のうち最小のブロックサイズ（ＩＩＩ）のブロック構成で評価値が最小になるときは、ピクチャタイプがイントラであればテクスチャ領域である可能性が高く、インターであれば動きがばらついている領域である可能性が高い。このようなとき、符号化領域に対して予測或いは動きを１つしか表現できない最大のブロックサイズ（Ｉ）よりも、動きを細かく表現できるブロックサイズ（ＩＩ）の方が評価値は小さくなりやすい。そのため、３階層全てに対して処理又は評価値の算出を行わず、２階層に対する評価値を算出した後に、評価値の比較結果に基づいて残りの階層に対する処理及び評価値の算出を行うか否かを決定する。これにより、符号化効率を低下させることなく演算量及び負荷を削減することができる。
【００８９】
また、対象ブロックに隣接するブロックのブロックサイズが６４×６４又は３２×３２である場合には、最初の対象ブロックを６４×６４のブロックとしてブロックサイズ決定処理を開始させる。これにより、ブロックサイズ決定処理における判定処理などの演算を削減することができ、更に演算量及び負荷を削減することができる。また、対象ブロックに隣接するブロックのブロックサイズが６４×６４及び３２×３２でない場合には、最初の対象ブロックを８×８ブロックとしてブロックサイズ決定処理を開始させる。これにより、ブロックサイズ決定処理における判定処理などの演算を削減することができ、更に演算量及び負荷を削減することができる。
【００９０】
また、ピクチャタイプがインターである場合、画面間の動きが複雑でない領域では大きいブロックサイズでも予測が当たるため、大きいブロックサイズが選ばれやすく、同様に大きいブロックサイズから順に評価を行うことでループ処理の回数を削減することができる。また、第３の実施形態において示したブロックサイズ決定処理では、ブロックに対する処理を打ち切る判定を加えているので、更なる演算量及び負荷の削減が可能になり高速化を図ることができる。また、ピクチャタイプがイントラである場合、小さいブロックサイズが多く選ばれやすいため、小さいブロックサイズから順に処理することにより、インターの場合と同様に演算量及び負荷を削減することができる。
【００９１】
上述した実施形態におけるブロックサイズ決定処理をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、更に前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【００９２】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、ＨＥＶＣに適用する場合について説明したため、符号化対象ブロックを６４×６４から８×８までのブロックの組み合わせでブロック構成を表す処理について説明したが、４階層のブロックサイズに限らずに５階層以上のブロックサイズを処理の対象としてもよい。また、符号化対象ブロックを再帰的に４分割する場合について説明したが、符号化対象ブロックを再帰的にｎ分割する階層構成を処理の対象としてもよい。
【産業上の利用可能性】
【００９３】
再帰的に領域を分割した階層構成を有する符号化対象ブロックに対して、ブロック構成を決定することが必要な処理に適用することができる。
【符号の説明】
【００９４】
１００、２００…映像符号化装置
１０１…イントラ予測部
１０２…インター予測部
１０３…イントラ／インター切替スイッチ
１０４…予測残差信号生成部
１０５…直交変換／量子化部
１０６…逆量子化／逆直交変換部
１０７…復元信号生成部
１０８…ループフィルタ部
１０９…復号ピクチャメモリ
１１０、２１０…ブロックサイズ決定部
１１１…可変長符号化部
２１１…ブロックサイズ決定処理切替部
【図１】
2014204207.tif 000003
【図２】
2014204207.tif 000004
【図３】
2014204207.tif 000005
【図４】
2014204207.tif 000006
【図５】
2014204207.tif 000007
【図６】
2014204207.tif 000008
【図７】
2014204207.tif 000009
【図８】
2014204207.tif 000010
【図９】
2014204207.tif 000011
【図１０】
2014204207.tif 000012
【図１１】
2014204207.tif 000013
【図１２】
2014204207.tif 000014
【図１５】
2014204207.tif 000015
【図１６】
2014204207.tif 000016
【図１３】
2014204207.tif 000017
【図１４】
2014204207.tif 000018