(57)【要約】【課題】画像の符号化及び復号化に適したブロック分割を行うことにより、符号化効率を向上させる技術を提供する。【解決手段】ブロック分割部は、再帰的分割における対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割部と、再帰的分割における対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含み、２−３分割部は、対象ブロックを水平方向に分割したとすると、分割された対象ブロックがピクチャ境界の右側を超える場合は、対象ブロックを水平方向に分割することを禁止し、対象ブロックを垂直方向に分割したとすると、分割された対象ブロックがピクチャ境界の下側を超える場合は、対象ブロックを垂直方向に分割することを禁止する。【選択図】図１
2020096346.tif 000002
【特許請求の範囲】
【請求項１】
分割されたブロック単位で画像の符号化を行う画像符号化装置であって、
所定サイズの矩形に再帰的に前記画像を分割して対象ブロックを生成するブロック分割部と、
前記対象ブロックのブロック分割情報を符号化する符号化部とを備え、
前記ブロック分割部は、
再帰的分割における前記対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割部と、
再帰的分割における前記対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含み、
前記２−３分割部は、
前記対象ブロックを水平方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の右側を超える場合は、前記対象ブロックを水平方向に分割することを禁止し、前記対象ブロックを垂直方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の下側を超える場合は、前記対象ブロックを垂直方向に分割することを禁止する、
ことを特徴とする画像符号化装置。
【請求項２】
前記４分割部は、前記対象ブロックを４分割しない場合に、
前記２−３分割部は、前記対象ブロックをいずれかの方向に２分割したとすると、分割された前記対象ブロックがピクチャ境界の右下側を超える場合は、前記対象ブロックを２分割することを禁止する、
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
分割されたブロック単位で画像の符号化を行う画像符号化装置であって、
所定サイズの矩形に再帰的に前記画像を分割して対象ブロックを生成するブロック分割部と、
前記対象ブロックのブロック分割情報を符号化する符号化部とを備え、
前記ブロック分割部は、
再帰的分割における前記対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割部と、
再帰的分割における前記対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含み、
前記２−３分割部は、
前記対象ブロックをいずれかの方向に分割したとすると、分割された前記対象ブロックがピクチャ境界を超える場合、かつブロック分割の深度が予め定められた制限深度に達した場合、あるいは分割するブロックに含まれるピクチャ境界を超えた位置の画素の数または割合が予め定められた値より大きい場合、その方向のブロック分割を禁止する、
ことを特徴とする画像符号化装置。
【請求項４】
分割されたブロック単位で画像の符号化を行う画像符号化装置であって、
所定サイズの矩形に再帰的に前記画像を分割して対象ブロックを生成するブロック分割部と、
前記対象ブロックのブロック分割情報を符号化する符号化部とを備え、
前記ブロック分割部は、
再帰的分割における前記対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割部と、
再帰的分割における前記対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含み、
前記２−３分割部は、
前記対象ブロックを分割したとすると、ピクチャ境界を超える位置の画素が、分割された前記対象ブロック内に最も多く含まれるように前記対象ブロックの分割方向を決定する、
ことを特徴とする画像符号化装置。
【請求項５】
分割されたブロック単位で画像の符号化を行う画像符号化方法であって、
所定サイズの矩形に再帰的に前記画像を分割して対象ブロックを生成するブロック分割ステップと、
前記対象ブロックのブロック分割情報を符号化する符号化ステップとを備え、
前記ブロック分割ステップは、
再帰的分割における前記対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割ステップと、
再帰的分割における前記対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割ステップとを含み、
前記２−３分割ステップは、
前記対象ブロックを水平方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の右側を超える場合は、前記対象ブロックを水平方向に分割することを禁止し、前記対象ブロックを垂直方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の下側を超える場合は、前記対象ブロックを垂直方向に分割することを禁止する、
ことを特徴とする画像符号化方法。
【請求項６】
分割されたブロック単位で画像の符号化を行う画像符号化プログラムであって、
所定サイズの矩形に再帰的に前記画像を分割して対象ブロックを生成するブロック分割ステップと、
前記対象ブロックのブロック分割情報を符号化する符号化ステップとを備え、
前記ブロック分割ステップは、
再帰的分割における前記対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割ステップと、
再帰的分割における前記対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割ステップとを含み、
前記２−３分割ステップは、
前記対象ブロックを水平方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の右側を超える場合は、前記対象ブロックを水平方向に分割することを禁止し、前記対象ブロックを垂直方向に分割したとすると、分割された前記対象ブロックがピクチャ境界の下側を超える場合は、前記対象ブロックを垂直方向に分割することを禁止する、
ことを特徴とする画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分割されたブロック単位で画像の符号化及び復号化を行う技術に関する。
【背景技術】
【０００２】
画像の符号化及び復号化では、所定数の画素の集合であるブロックに画像を分割し、ブロック単位で処理をする。その際、適切なブロック単位で分割することにより、イントラ予測、インター予測、直交変換、エントロピー符号化、等の効率が向上し、結果として符号化効率が向上する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１５−５２６００８号公報
【非特許文献】
【０００４】
【非特許文献１】JVET, Versatile Video Coding (Draft 2), July 2018
【発明の概要】
【発明が解決しようとする課題】
【０００５】
適切な大きさ及び形状でブロックを分割しなければ、符号化効率が低下する。特に、画面端において、ピクチャ境界を超える位置の画素を含むブロックが不適切な大きさ及び形状となり、符号化効率が低下していた。
【０００６】
本発明はこうした状況に鑑みてなされたものであり、その目的は、画像符号化及び復号化に適したブロック分割を行うことにより、符号化効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決する本発明のある態様では、ブロック分割部は、再帰的分割における対象ブロックを水平方向と垂直方向とを各々半分に４分割して４つのブロックを生成する４分割部と、再帰的分割における対象ブロックを水平方向または垂直方向に２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含み、２−３分割部は、対象ブロックを水平方向に分割したとすると、分割された対象ブロックがピクチャ境界の右側を超える場合は、対象ブロックを水平方向に分割することを禁止し、対象ブロックを垂直方向に分割したとすると、分割された対象ブロックがピクチャ境界の下側を超える場合は、対象ブロックを垂直方向に分割することを禁止する。
【発明の効果】
【０００８】
本発明によれば、画像の符号化及び復号化に適したブロック分割が可能になり、符号化効率を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施の形態に係る画像符号化装置のブロック図である。
【図２】第１の実施の形態に係る画像復号化装置のブロック図である。
【図３】ツリーブロックへの分割及びツリーブロック内部の分割を説明するフローチャートである。
【図４】入力された画像をツリーブロックに分割する様子を示す図である。
【図５】ｚ−スキャンを説明する図である。
【図６】ツリーブロックの分割を説明する図である。
【図７】ツリーブロックを４分割した場合の、分割された各ブロックの処理を説明するフローチャートである。
【図８】ツリーブロックを２分割または３分割した場合の、分割された各ブロックの処理を説明するフローチャートである。
【図９】ツリーブロックとピクチャ境界の関係を示す図である。
【図１０】ピクチャ境界と画素の関係を示す図である。
【図１１】第１の実施の形態におけるブロック分割を説明するフローチャートである。
【図１２】第１の実施の形態におけるブロック分割を示す図である。
【図１３】第１の実施の形態において、ブロック分割に関するシンタックスを示す図である。
【図１４】第２の実施の形態におけるブロック分割を説明するフローチャートである。
【図１５】第２の実施の形態におけるブロック分割を示す図である。
【図１６】第３の実施の形態におけるブロック分割を説明するフローチャートである。
【図１７】第３の実施の形態におけるブロック分割を示す図である。
【図１８】第３の実施の形態におけるブロック分割を説明するフローチャートである。
【図１９】第４の実施の形態におけるブロック分割を示す図である。
【図２０】第４の実施の形態におけるブロック分割を説明するフローチャートである。
【図２１】第５の実施の形態におけるブロック分割を示す図である。
【図２２】第１の実施の形態の符号化復号装置のハードウェア構成の一例を説明するための図である。
【発明を実施するための形態】
【００１０】
本発明の実施の形態は、分割されたブロック単位で画像を符号化、復号化する技術を提供する。
（第１の実施の形態）
本発明の第１の実施の形態に係る画像符号化装置１００及び画像復号化装置２００について説明する。第１の実施の形態では、ブロックを２分割または３分割する際に、ブロック分割を制限する。
【００１１】
図１は、第１の実施の形態に係る画像符号化装置１００のブロック図である。図１は、画像信号に関するデータの流れのみを表しており、動きベクトルや予測モードなどの画像信号以外の付加情報に関するデータの流れは図示していない。画像符号化装置１００には、少なくとも画面１枚分の画像信号が入力される。
【００１２】
ブロック分割部１０１は、符号化の処理単位となる符号化対象ブロックに画像を分割し、符号化対象ブロック内の画像信号を残差信号生成部１０３に供給する。また、ブロック分割部１０１は、予測画像の一致度を評価するために、符号化対象ブロックの画像信号を予測画像生成部１０２に供給する。
【００１３】
ブロック分割部１０１は、所定サイズの矩形に再帰的に画像を分割して、符号化対象ブロックを生成する。ブロック分割部１０１は、再帰的分割における対象ブロックを４分割して４つのブロックを生成する４分割部と、再帰的分割における対象ブロックを２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含む。ブロック分割部１０１の詳細の動作については後述する。
【００１４】
予測画像生成部１０２は、ブロック分割部１０１から符号化対象ブロックの画像信号と、復号画像メモリ１０８から復号画像信号とが供給される。予測画像生成部１０２は供給される信号を用いて、予測モードに基づくイントラ予測（画面内予測）やインター予測（画面間予測）を行い、予測画像信号を生成する。イントラ予測では、符号化対象ブロックと同じピクチャ（符号化ピクチャ）における、符号化対象ブロックに近接する符号化済みブロックの画像信号が、復号画像メモリ１０８から予測画像生成部１０２に供給される。そして、予測画像生成部１０２は、この画像信号とブロック分割部１０１から供給される符号化対象ブロックの画像信号とを用いて、予測画像信号を生成する。インター予測では、符号化ピクチャに対して時系列で前または後ろにある符号化済みピクチャ（参照画像）の画像信号が、復号画像メモリ１０８から予測画像生成部１０２に供給される。そして、予測画像生成部１０２は、この画像信号とブロック分割部１０１から供給される符号化対象ブロックとを用いて、ブロックマッチング等により一致度を評価して、動き量を示す動きベクトルを求める。予測画像生成部１０２は、この動きベクトルを基に参照画像から動き補償をして、予測画像信号を生成する。予測画像生成部１０２は、こうして生成された予測画像信号を残差信号生成部１０３に供給する。
【００１５】
残差信号生成部１０３は、符号化する画像信号と予測画像生成部１０２にて生成された予測信号とを減算して残差信号を生成し、直交変換・量子化部１０４に供給する。
【００１６】
直交変換・量子化部１０４は、残差信号生成部１０３から供給される残差信号を直交変換・量子化する。直交変換・量子化部１０４は、直交変換・量子化された残差信号を符号化部１０５及び逆量子化・逆直交変換部１０６に供給する。
【００１７】
符号化部１０５は、直交変換・量子化部１０４から供給される直交変換・量子化された残差信号に対応する符号化ビットストリームを生成する。また、符号化部１０５は、各構成要素から供給された動きベクトルや予測モード、ブロック分割情報などの付加情報について、対応する符号化ビットストリームを生成する。そして、符号化部１０５は、符号化ビットストリームを画像符号化装置１００から出力する。
【００１８】
逆量子化・逆直交変換部１０６は、直交変換・量子化部１０４から供給される直交変換・量子化された残差信号を逆量子化・逆直交変換して、残差信号を得る。逆量子化・逆直交変換部１０６は、残差信号を復号画像信号重畳部１０７に供給する。
【００１９】
復号画像信号重畳部１０７は、予測画像生成部１０２により生成された予測画像信号と逆量子化・逆直交変換部１０６で得られた残差信号とを重畳して復号画像を生成し、復号画像メモリ１０８に格納する。なお、復号画像信号重畳部１０７は、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ１０８に格納してもよい。
【００２０】
図２は、実施の形態１に係る画像復号化装置２００のブロック図である。図２は、画像信号に関するデータの流れのみを表しており、動きベクトルや予測モードなどの画像信号以外の付加情報に関するデータの流れは図示していない。画像復号化装置２００には、符号化ビットストリームが入力される。
【００２１】
復号化部２０１は、供給された符号化ビットストリームを復号化して、直交変換・量子化された残差信号をブロック分割部２０２に供給する。また、復号化部２０１は、動きベクトルや予測モード、ブロック分割情報などの付加情報を各構成要素に供給して、付加情報と対応する処理に用いる。
【００２２】
ブロック分割部２０２は、復号化したブロック分割情報に基づいて復号化対象ブロックの形状を決定し、決定された復号化対象ブロックの直交変換・量子化された残差信号を逆量子化・逆直交変換部２０３に供給する。
【００２３】
ブロック分割部２０２は、復号化されたブロック分割の情報に基づいて、所定サイズの矩形に再帰的に画像を分割して、復号化対象ブロックを生成する。ブロック分割部２０２は、再帰的分割における対象ブロックを４分割して４つのブロックを生成する４分割部と、再帰的分割における対象ブロックを２分割または３分割して２つまたは３つのブロックを生成する２−３分割部とを含む。ブロック分割部２０２の詳細の動作については後述する。
【００２４】
逆量子化・逆直交変換部２０３は、供給される直交変換・量子化された残差信号を逆量子化・逆直交変換して、残差信号を得る。それを復号画像信号重畳部２０５に供給する。
【００２５】
予測画像生成部２０４は、復号画像メモリ２０６から供給される復号画像信号から予測画像信号を生成し、復号画像信号重畳部２０５に供給する。
【００２６】
復号画像信号重畳部２０５は、予測画像生成部２０４で生成された予測画像信号と、逆量子化・逆直交変換部２０３で得られた残差信号とを重畳して復号画像信号を生成する。また、復号画像信号重畳部２０５は、復号画像信号を復号画像メモリ２０６に格納する。なお、復号画像信号重畳部２０５は、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ２０６に格納してもよい。そして、復号画像信号重畳部２０５は、復号画像を画像復号化装置２００から出力する。
【００２７】
次に、画像符号化装置１００におけるブロック分割部１０１の動作について、図３を用いて説明する。図３は、ブロック分割部１０１が画像をツリーブロックへ分割し、その内部をブロック分割する動作を示す。
【００２８】
まず、入力された画像を、所定サイズのツリーブロックに分割する（Ｓ１０００）。ここで、ツリーブロックは１２８ｘ１２８画素とする。ただし、ツリーブロックはこの大きさに限定されず、矩形であればどのような大きさや縦横比を用いてもよい。また、符号化装置と復号化装置の間で、ツリーブロックの大きさを予め定めておいてもよい。さらに、符号化装置がツリーブロックの大きさを決定して符号化ビットストリーム内に記録し、復号化装置が符号化ビットストリーム内に記録されたツリーブロックの大きさを用いる構成にしてもよい。入力された画像をツリーブロックに分割する様子を図４に示す。ツリーブロックは、ラスタスキャン順、すなわち左から右、上から下に符号化される。
【００２９】
ツリーブロックの内部をさらに矩形のブロックに分割する。ツリーブロック内部は、図５に示すｚ−スキャン順に符号化する。ｚ−スキャン順とは、左上、右上、左下、右下、の順序を示す。ツリーブロック内部の分割は、４分割、２分割または３分割が可能である。
【００３０】
ブロックの４分割は、図６（ａ）のように水平方向と垂直方向とを各々半分にして４分割し、４つのブロックを生成することによりなされる。
【００３１】
ブロックの２分割または３分割は、水平方向または垂直方向に分割することによりなされる。水平方向にブロックを２分割する場合、図６（ｂ）のように半分に分割し、２つのブロックを生成する。また、水平方向にブロックを３分割する場合、図６（ｃ）のように１：２：１に分割し、３つのブロックを生成する。一方、垂直方向にブロックを２分割する場合、図６（ｄ）のように半分に分割し、２つのブロックを生成する。また、垂直方向にブロックを３分割する場合、図６（ｅ）のように１：２：１に分割し、３つのブロックを生成する。
【００３２】
再び図３を参照し、ブロック分割部１０１の動作について説明する。まず、ツリーブロック内部を水平方向と垂直方向とを各々半分に４分割するか否かを判断する（Ｓ１００１）。
【００３３】
ブロックを４分割するか否かの判断を含め、複数の条件から最適な場合を判断するには、Ｒ−Ｄ最適化（Rate-Distortion Optimization）と呼ばれる既存の方法がある。Ｒ−Ｄ最適化では、符号量と符号化歪から、符号化コストが算出される。そして、複数の条件で符号化した場合について、それぞれ符号化コストを算出し、符号化コストが最小となる場合を選択する。つまり、ブロックを４分割するか否かの判断は、ブロックを４分割する場合の符号化コストと、ブロックを４分割しない場合の符号化コストを算出し、符号化コストが最小となる場合を選択することによりなされる。複数の条件から最適な場合を判断するには、Ｒ−Ｄ最適化以外の方法を用いても良い。
【００３４】
ツリーブロック内部を４分割すると判断した場合（Ｓ１００１：ＹＥＳ）、ツリーブロック内部を４分割する（Ｓ１００２）。４分割されたブロックの再分割処理については後述する（図７）。
【００３５】
ツリーブロック内部を４分割しないと判断した場合（Ｓ１００１：ＮＯ）、ツリーブロック内部を２分割または３分割するか否かを判断する（Ｓ１００３）。
【００３６】
ツリーブロック内部を２分割または３分割すると判断した場合（Ｓ１００３：ＹＥＳ）、分割する方向を垂直方向とするか否かを判断する（Ｓ１００４）。
【００３７】
分割する方向を垂直方向と判断した場合（Ｓ１００４：ＹＥＳ）、ツリーブロック内部を２分割するか否かを判断する（Ｓ１００５）。
【００３８】
ツリーブロック内部を２分割すると判断した場合（Ｓ１００５：ＹＥＳ）、ツリーブロック内部を垂直方向に２分割する（Ｓ１００６）。一方、ツリーブロック内部を３分割すると判断した場合（Ｓ１００５：ＮＯ）、ツリーブロック内部を垂直方向に３分割する（Ｓ１００７）。垂直方向に２分割または３分割されたブロックの再分割処理については後述する（図８）。
【００３９】
分割する方向を水平方向と判断した場合（Ｓ１００４：ＮＯ）、ツリーブロック内部を２分割するか否かを判断する（Ｓ１００８）。
【００４０】
ツリーブロック内部を２分割すると判断した場合（Ｓ１００８：ＹＥＳ）、ツリーブロック内部を水平方向に２分割する（Ｓ１００９）。一方、ツリーブロック内部を３分割すると判断した場合（Ｓ１００８：ＮＯ）、ツリーブロック内部を水平方向に３分割する（Ｓ１０１０）。水平方向に２分割または３分割されたブロックの再分割処理については後述する（図８）。
【００４１】
ツリーブロック内部を２分割または３分割しないと判断した場合（Ｓ１００３：ＮＯ）、ツリーブロックの内部をブロック分割せずにブロック分割処理を終了する（Ｓ１０１１）。
【００４２】
続いて、ツリーブロックを水平方向と垂直方向とを各々半分に４分割した場合の分割された各ブロックの処理について、図７のフローチャートを用いて説明する。
【００４３】
まず、ブロック内部を再び水平方向と垂直方向とを各々半分に４分割するか否かを判断する（Ｓ１１０１）。
【００４４】
ブロック内部を再び４分割すると判断した場合（Ｓ１１０１：ＹＥＳ）、ブロック内部を再び４分割する（Ｓ１１０２）。
【００４５】
ブロック内部を再び４分割しないと判断した場合（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割するか否かを判断する（Ｓ１１０３）。
【００４６】
ブロック内部を２分割または３分割すると判断した場合（Ｓ１１０３：ＹＥＳ）、分割する方向を垂直方向とするか否かを判断する（Ｓ１１０４）。
【００４７】
分割する方向を垂直方向と判断した場合（Ｓ１１０４：ＹＥＳ）、ブロック内部を２分割するか否かを判断する（Ｓ１１０５）。
【００４８】
ブロック内部を２分割すると判断した場合（Ｓ１１０５：ＹＥＳ）、ブロック内部を垂直方向に２分割する（Ｓ１１０６）。一方、ブロック内部を３分割すると判断した場合（Ｓ１１０５：ＮＯ）、ブロック内部を垂直方向に３分割する（Ｓ１１０７）。
【００４９】
分割する方向を水平方向と判断した場合（Ｓ１１０４：ＮＯ）、ブロック内部を２分割するか否かを判断する（Ｓ１１０８）。
【００５０】
ブロック内部を２分割すると判断した場合（Ｓ１１０８：ＹＥＳ）、ブロック内部を水平方向に２分割する（Ｓ１１０９）。一方、ブロック内部を３分割すると判断した場合（Ｓ１１０８：ＮＯ）、ブロック内部を水平方向に３分割する（Ｓ１１１０）。
【００５１】
ブロック内部を２分割または３分割しないと判断した場合（Ｓ１１０３：ＮＯ）、ブロックの内部を再分割せずにブロック分割処理を終了する（Ｓ１１１１）。
【００５２】
４分割された各ブロックについて、図７のフローチャートに示す処理が再帰的に実行される。４分割されたブロックの内部は、ｚ−スキャン順に符号化する。
【００５３】
続いて、ツリーブロックを垂直方向に２分割または３分割した場合の分割された各ブロックの処理について図８のフローチャートを用いて説明する。
【００５４】
ツリーブロックを垂直方向に２分割または３分割した場合、分割された各ブロックについて、ブロック内部を再び２分割または３分割するか否かを判断する（Ｓ１２０１）。
【００５５】
ブロック内部を２分割または３分割すると判断した場合（Ｓ１２０１：ＹＥＳ）、分割する方向を垂直方向とするか否かを判断する（Ｓ１２０２）。
【００５６】
分割する方向を垂直方向と判断した場合（Ｓ１２０２：ＹＥＳ）、ブロック内部を２分割するか否かを判断する（Ｓ１２０３）。
【００５７】
ブロック内部を２分割すると判断した場合（Ｓ１２０３：ＹＥＳ）、ブロック内部を垂直方向に２分割する（Ｓ１２０４）。一方、ブロック内部を３分割すると判断した場合（Ｓ１２０３：ＮＯ）、ブロック内部を垂直方向に３分割する（Ｓ１２０５）。
【００５８】
分割する方向を水平方向と判断した場合（Ｓ１２０２：ＮＯ）、ブロック内部を２分割するか否かを判断する（Ｓ１２０６）。
【００５９】
ブロック内部を２分割すると判断した場合（Ｓ１２０６：ＹＥＳ）、ブロック内部を水平方向に２分割する（Ｓ１２０７）。一方、ブロック内部を３分割すると判断した場合（Ｓ１２０６：ＮＯ）、ブロック内部を水平方向に３分割する（Ｓ１２０８）。
【００６０】
ブロック内部を再び２分割または３分割しないと判断した場合（Ｓ１２０１：ＮＯ）、ブロックの内部を再分割せずにブロック分割処理を終了する（Ｓ１２０９）。
【００６１】
垂直方向に２分割または３分割した場合の分割された各ブロックについて、図８のフローチャートに示す処理が再帰的に実行される。２分割または３分割されたブロックの内部は、左から右の順に符号化する。
【００６２】
同様に、水平方向に２分割または３分割した場合の分割された各ブロックについて、図８のフローチャートに示す処理が再帰的に実行される。２分割または３分割されたブロックの内部は、上から下の順に符号化する。
【００６３】
なお、ツリーブロックが分割された時の分割されたブロックの再分割について説明したが、親ブロックがツリーブロックでなくてもよい。例えば、ツリーブロック（１２８ｘ１２８画素）を４分割し、４分割されたブロック（６４ｘ６４画素）をさらに分割した場合に、再分割されたブロックの分割にも上記処理を適用する。
【００６４】
再帰的なブロック分割は、分割する回数を定めて、分割する回数を制限しても良い。また、符号化装置と復号化装置の間で、分割する回数を予め定めておいても良い。さらに、符号化装置が分割する回数を決定して符号化ビットストリーム内に記録し、復号化装置が符号化ビットストリーム内に記録された分割する回数を用いる構成にしても良い。
【００６５】
次に、画面端におけるブロック分割について説明する。図９は、画像をツリーブロックに分割したときのピクチャ境界との関係を示す。この図９に示すように、画像の大きさはツリーブロックの大きさの整数倍とは限らないので、画面端におけるツリーブロックは、ピクチャ境界を隔てて画面内と画面外の部分を含むことがある。画面端におけるツリーブロックとして、ツリーブロック１００１，１００２，１００３を示す。この場合は図１０に示すように、ピクチャ境界を超えた画面外の部分は、画面内の最も外側の画素と同じとして扱う。画面内の最も外側の画素として、画素１０１１，１０１２，１０１３を示す。
【００６６】
画素１０１１は、ツリーブロック１００１内にあり、画面内での最も右上に位置する画素である。画素１０１１より右側の、ピクチャ境界を超えた画面外の画素は、画素１０１１と同じものとして扱う。
【００６７】
画素１０１２は、ツリーブロック１００２内にあり、画面内での最も左下に位置する画素である。画素１０１２より下側の、ピクチャ境界を超えた画面外の画素は、画素１０１２と同じものとして扱う。
【００６８】
画素１０１３は、ツリーブロック１００３内にあり、画面内での最も右下に位置する画素である。画素１０１３より右側、下側、および右下側の、ピクチャ境界を超えた画面外の画素は、画素１０１３と同じものとして扱う。
【００６９】
そして、ブロックを２分割または３分割する際に、ブロック分割を制限する。これにより、画面端のブロックを適切な形状に分割することができ、符号化効率を向上させることができる。
【００７０】
ブロック分割の制限は、画面端においてブロックを２分割または３分割する際に適用される。つまり、図３における２分割または３分割の処理（Ｓ１００４からＳ１０１０）が、以下に説明する処理に置き換わる。また、図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）が、以下に説明する処理に置き換わる。さらに、図８における２分割または３分割の処理（Ｓ１２０２からＳ１２０８）が、以下に説明する処理に置き換わる。
【００７１】
ブロック分割の制限について、図１１を用いて説明する。まず、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１３０１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合、ブロックを垂直方向に２分割した場合、ブロックを水平方向に３分割した場合、ブロックを垂直方向に３分割した場合の４つである。また、ブロック分割を制限するか否かは、ピクチャ境界を超えた位置の画素が分割されるか否かにより決定する。例えば、ブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素が分割されるならば、ブロックを水平方向に２分割することを制限する。
【００７２】
ここで、ブロックを水平方向に分割することを制限するということは、ブロックを水平方向に分割することを禁止するという意味である。また、ブロックを垂直方向に分割することを制限するということは、ブロックを垂直方向に分割することを禁止するという意味である。同様に、ブロックを２分割することを制限するということは、ブロックを２分割することを禁止するという意味である。また、ブロックを３分割することを制限するということは、ブロックを３分割することを禁止するという意味である。
【００７３】
次に、ブロック分割の全ての組み合わせでブロック分割を制限するか否かを判定する（Ｓ１３０２）。全ての組み合わせでブロック分割を制限する場合（Ｓ１３０２：ＹＥＳ）、ブロックを分割しない（Ｓ１３１４）。一方、全ての組み合わせでブロック分割を制限しない場合（Ｓ１３０２：ＮＯ）、水平方向のブロック分割を制限するか否かを判定する（Ｓ１３０３）。
【００７４】
水平方向のブロック分割を制限する場合（Ｓ１３０３：ＹＥＳ）、次の処理に進む（Ｓ１３０６）。一方、水平方向のブロック分割を制限しない場合（Ｓ１３０３：ＮＯ）、垂直方向のブロック分割を制限するか否かを判定する（Ｓ１３０４）。
【００７５】
垂直方向のブロック分割を制限する場合（Ｓ１３０４：ＹＥＳ）、次の処理に進む（Ｓ１３１０）。一方、垂直方向のブロック分割を制限しない場合（Ｓ１３０４：ＮＯ）、ブロックを垂直方向に分割するか否かを判断する（Ｓ１３０５）。
【００７６】
ブロック分割する方向を垂直方向と判断した場合（Ｓ１３０５：ＹＥＳ）、ブロックの３分割を制限するか否かを判定する（Ｓ１３０６）。一方、ブロック分割する方向を水平方向と判断した場合（Ｓ１３０５：ＮＯ）、次の処理に進む（Ｓ１３１０）。
【００７７】
ブロックの３分割を制限する場合（Ｓ１３０６：ＹＥＳ）、ブロックを垂直方向に２分割する（Ｓ１３０８）。一方、ブロックの３分割を制限しない場合（Ｓ１３０６：ＮＯ）、ブロックを２分割するか否かを判断する（Ｓ１３０７）。
【００７８】
ブロックを２分割すると判断した場合（Ｓ１３０７：ＹＥＳ）、ブロックを垂直方向に２分割する（Ｓ１３０８）。一方、ブロックを３分割すると判断した場合（Ｓ１３０７：ＮＯ）、ブロックを垂直方向に３分割する（Ｓ１３０９）。
【００７９】
垂直方向の分割を制限する場合（Ｓ１３０４：ＹＥＳ）、およびブロック分割する方向を水平方向と判断した場合（Ｓ１３０５：ＮＯ）、ブロックの３分割を制限するか否かを判定する（Ｓ１３１０）。
【００８０】
ブロックの３分割を制限する場合（Ｓ１３１０：ＹＥＳ）、ブロックを水平方向に２分割する（Ｓ１３１２）。一方、ブロックの３分割を制限しない場合（Ｓ１３１０：ＮＯ）、ブロックを２分割するか否かを判断する（Ｓ１３１１）。
【００８１】
ブロックを２分割すると判断した場合（Ｓ１３１１：ＹＥＳ）、ブロックを水平方向に２分割する（Ｓ１３１２）。一方、ブロックを３分割すると判断した場合（Ｓ１３１１：ＮＯ）、ブロックを水平方向に３分割する（Ｓ１３１３）。
【００８２】
つまり、ブロック分割によってピクチャ境界を超えた位置の画素が分割される場合、その方向のブロック分割を制限する。
【００８３】
ここで、具体例を説明する。いま、画面の下端において、ツリーブロックは４分割せず（Ｓ１００１：ＮＯ）、ツリーブロック内部は２分割または３分割する（Ｓ１００３：ＹＥＳ）。図１２（ａ）は、ツリーブロックが、ピクチャ境界を隔てて画面内と画面外の部分を含む様子を示す。このとき、全ての組み合わせでツリーブロックを分割した場合について、ブロック分割を制限するか否かを決定する（Ｓ１３０１）。
【００８４】
全ての組み合わせでツリーブロックを分割した場合について、それぞれ図１２（ａ）から図１２（ｄ）に示す。図１２（ａ）に示すようにブロックを垂直方向に２分割すると、ピクチャ境界を超えた位置の画素が分割されるので、このブロック分割を制限する。同様に、図１２（ｂ）に示すようにブロックを垂直方向に３分割すると、ピクチャ境界を超えた位置の画素が分割されるので、このブロック分割を制限する。一方、図１２（ｃ）に示すようにブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素は分割されないので、このブロック分割を制限しない。同様に、図１２（ｄ）に示すようにブロックを水平方向に３分割すると、ピクチャ境界を超えた位置の画素は分割されないので、このブロック分割を制限しない。
【００８５】
よって、ブロック分割の全ての組み合わせでブロック分割を制限しない（Ｓ１３０２：ＮＯ）。また、水平方向のブロック分割を制限せず（Ｓ１３０３：ＮＯ）、垂直方向のブロック分割を制限する（Ｓ１３０４：ＹＥＳ）。そして、ブロックの３分割は制限しない（Ｓ１３１０：ＮＯ）。よって、ブロックを２分割するか否かを判断する（Ｓ１３１１）。いま、ブロックを２分割すると判断したとすれば（Ｓ１３１１：ＹＥＳ）、ブロックを水平方向に２分割する（Ｓ１３１２）。
【００８６】
こうしたブロック分割の制限により、ブロックは適切な形状となる。なぜなら、画面外の画素を含むブロックにおいて、画面外の部分の画素値は一定である。そのため、そのブロックの画面内の部分の画素値の変化は、画面外の画素を含まないブロックに対して相対的に小さい。よって、細かい画素の変化を符号化する必要性は少ない。従って、画面外の画素をできるだけまとめたブロックとすることによって符号量を小さくし、符号化効率を向上させることができる。
【００８７】
このブロック分割の制限は、画面の右端でも同様である。全ての組み合わせでツリーブロックを分割した場合について、それぞれ図１２（ｅ）から図１２（ｈ）に示す。このとき、図１２（ｅ）に示すようにブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素が分割される。また、図１２（ｆ）に示すようにブロックを水平方向に３分割すると、ピクチャ境界を超えた位置の画素が分割される。よって、これらのブロック分割を制限する。こうしたブロック分割の制限により、符号化効率を向上させることができる。
【００８８】
次に、画像復号化装置２００のブロック分割部２０２の動作について説明する。ブロック分割部２０２は、前述の画像符号化装置１００におけるブロック分割部１０１と同じ処理手順でブロックを分割する。ブロック分割部１０１では、ブロック分割のパターンを選択し、選択したブロック分割情報を出力する。一方、ブロック分割部２０２は、符号化ビットストリームから復号化されたブロック分割情報を用いてブロックを分割する。ブロック分割の制限は、前述の画像符号化装置１００と同様である。
【００８９】
第１の実施の形態のブロック分割に関するシンタックス（符号化ビットストリームの構文規則）を図１３に示す。図１３において、QT()はブロックの４分割処理にかかるシンタックスを表し、MTT()はブロックの２分割または３分割処理にかかるシンタックスを表す。画像符号化装置１００はこのシンタックスに従って符号化し、画像復号化装置２００はこのシンタックスに従って復号化する。
【００９０】
まず、ブロックを４分割するか否かはQTflagで表される。４分割する場合はQTflag=1、４分割しない場合はQTflag=0とする。４分割する場合(QTflag=1)、４分割した各ブロックについてさらに４分割可能であれば(QTvalid=1)、再帰的に４分割処理をする。４分割しない場合(QTflag=0)、２分割または３分割するか否かはMTTflagで表される。２分割または３分割する場合(MTTflag=1)、垂直方向に分割するか否かはvertical_flagで表され、２分割するか否かはBTflagで表される。垂直方向に分割する場合はvertical_flag=1、水平方向に分割する場合はvertical_flag=0とする。また、２分割する場合はBTflag=1、３分割する場合はBTflag=0とする。２分割または３分割した各ブロックについてさらに２分割または３分割可能であれば(MTTvalid=1)、再帰的に２分割または３分割処理をする。
【００９１】
ここで、４分割した各ブロックが、さらに４分割可能か否かを示す変数QTvalidについて説明する。QTvalidは、４分割した各ブロックごとに定義される。４分割するブロックに画面内の画素が含まれない場合は、QTvalid=0となる。上記以外の場合は、QTvalid=1となる。
【００９２】
また、２分割または３分割した各ブロックが、さらに２分割または３分割可能か否かを示す変数MTTvalidについて説明する。MTTvalidは、２分割または３分割した各ブロックごとに定義される。２分割または３分割するブロックに画面内の画素が含まれない場合は、MTTvalid=0となる。上記以外の場合は、MTTvalid=1となる。
【００９３】
本実施の形態ではブロック分割の方向を制限するため、vertical_flagは不要となる。よって、図１３におけるvertical_flagを省略した形としても良い。
【００９４】
こうしたブロック分割の制限により、画面端のブロックを適切な形状に分割することができ、符号化効率を向上させることができる。また、画像符号化および復号化に適したブロック分割ができる。
（第２の実施の形態）
本発明の第２の実施の形態に係る画像符号化装置及び画像復号化装置について説明する。第２の実施の形態では、ブロック分割の深度が制限深度に達した場合に、ブロック分割を制限する。これ以外の構成は第１の実施の形態と同様であるため、説明を省略する。
【００９５】
ここで、ブロック分割の深度について説明する。第１の実施の形態において、ブロックを２分割または３分割した後、２分割または３分割された各ブロックに対して再帰的に２分割または３分割する処理について説明した。この処理において、１回目の２分割または３分割処理を深度０と定義する。また、１回目の２分割または３分割処理によって分割された各ブロックに対する２回目の２分割または３分割処理を深度１と定義し、２回目の２分割または３分割処理によって分割された各ブロックに対する３回目の２分割または３分割処理を深度２と定義し、以下同様にして深度を定義する。また、ブロック分割を制限する深度を予め定めて、これを制限深度と定義する。
【００９６】
ブロック分割の制限は、画面端においてブロックを２分割または３分割する際に適用される。つまり、図３における２分割または３分割の処理（Ｓ１００４からＳ１０１０）が、以下に説明する処理に置き換わる。また、図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）が、以下に説明する処理に置き換わる。さらに、図８における２分割または３分割の処理（Ｓ１２０２からＳ１２０８）が、以下に説明する処理に置き換わる。
【００９７】
ブロック分割の制限について、図１４を用いて説明する。まず、ブロックを２分割または３分割する際に、ブロック分割の深度が制限深度に達しているか否かを判定する（Ｓ１４０１）。
【００９８】
制限深度に達していない場合（Ｓ１４０１：ＮＯ）、ブロック分割を制限しないと決定する（Ｓ１４０２）。一方、制限深度に達している場合（Ｓ１４０１：ＹＥＳ）、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１３０１）。Ｓ１３０１は第１の実施の形態と同じであるため、説明を省略する。
【００９９】
次に、ブロック分割の全ての組み合わせでブロック分割を制限するか否かを判定する（Ｓ１３０２）。Ｓ１３０２以下の処理は第１の実施の形態と同じであるため、説明を省略する。
【０１００】
つまり、ブロック分割によってピクチャ境界を超えた位置の画素が分割され、かつブロック分割の深度が制限深度に達した場合、ブロック分割を制限する。
【０１０１】
ここで、具体例を説明する。いま、画面の下端において、ツリーブロックは４分割せず（Ｓ１００１：ＮＯ）、ツリーブロック内部を２分割または３分割する（Ｓ１００３：ＹＥＳ）。また、制限深度は１とする。図１２（ａ）は、ツリーブロックが、ピクチャ境界を隔てて画面内と画面外の部分を含む様子を示す。このツリーブロックを２分割または３分割する際には、垂直方向の分割によって、ピクチャ境界を超えた位置の画素が分割される。ただし、深度は０であり、制限深度の１に達していない（Ｓ１４０１：ＮＯ）。そのため、ブロック分割を制限しないと決定する（Ｓ１４０２）。よって、すべてのブロック分割を制限せず（Ｓ１３０２：ＮＯ）、水平方向のブロック分割を制限せず（Ｓ１３０３：ＮＯ）、垂直方向のブロック分割を制限しない（Ｓ１３０４：ＮＯ）。そして、ブロックを垂直方向に分割するか否かを判断する（Ｓ１３０５）。いま、ブロックを垂直方向に分割すると判断したとすれば（Ｓ１３０５：ＹＥＳ）、ブロックの３分割を制限しないので（Ｓ１３０６：ＮＯ）、ブロックを２分割するか否かを判断する（Ｓ１３０７）。いま、ブロックを２分割すると判断したとすると（Ｓ１３０７：ＹＥＳ）、ブロックを垂直方向に２分割する（Ｓ１３０８）。その様子を図１２（ａ）に示す。
【０１０２】
続いて、垂直方向に２分割された各ブロックのうち、左のブロックを２分割または３分割する。このとき、深度は1であり、制限深度の１に達している（Ｓ１４０１：ＹＥＳ）。よって、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１３０１）。
【０１０３】
ブロックを全ての組み合わせで分割した場合について、それぞれ図１５（ａ）から図１５（ｄ）に示す。図１５（ａ）に示すようにブロックを垂直方向に２分割すると、ピクチャ境界を超えた位置の画素が分割されるので、このブロック分割を制限する。同様に、図１５（ｂ）に示すようにブロックを垂直方向に３分割すると、ピクチャ境界を超えた位置の画素が分割されるので、このブロック分割を制限する。一方、図１５（ｃ）に示すようにブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素は分割されないので、このブロック分割を制限しない。同様に、図１５（ｄ）に示すようにブロックを水平方向に３分割すると、ピクチャ境界を超えた位置の画素は分割されないので、このブロック分割を制限しない。
【０１０４】
よって、ブロック分割の全ての組み合わせでブロック分割を制限しない（Ｓ１３０２：ＮＯ）。また、水平方向のブロック分割を制限せず（Ｓ１３０３：ＮＯ）、垂直方向のブロック分割は制限する（Ｓ１３０４：ＹＥＳ）。そして、ブロックの３分割は制限しない（Ｓ１３１０：ＮＯ）。よって、ブロックを２分割するか否かを判断する（Ｓ１３１１）。いま、ブロックを２分割すると判断したとすれば（Ｓ１３１１：ＹＥＳ）、ブロックを水平方向に２分割する（Ｓ１３１２）。
【０１０５】
こうしたブロック分割の制限により、ブロックは適切な大きさ及び形状となる。なぜなら、画面外の画素を含むブロックにおいて、画面外の部分の画素値は一定である。そのため、そのブロックの画面内の部分の画素値の変化は、画面外の画素を含まないブロックに対して相対的に小さい。よって、細かい画素の変化を符号化する必要性は少ない。従って、画面外の画素をできるだけまとめたブロックとすることによって符号量を小さくし、符号化効率を向上させることができる。
【０１０６】
このブロック分割の制限は、画面の右端でも同様である。ツリーブロックを２分割または３分割するときは深度０であり制限深度１に達しないので、ブロック分割を制限せず２分割または３分割する。分割されたブロックをさらに分割する際は深度１であり制限深度１に達しているので、ブロック分割を制限するか否かを判定する。すると、ブロックを水平方向に２分割する場合と、ブロックを水平方向に３分割する場合は、ピクチャ境界を超えた位置の画素が分割される。よって、これらのブロック分割を制限する。こうしたブロック分割の制限により、符号化効率を向上させることができる。
【０１０７】
本実施の形態では、ブロック分割の深度は２分割または３分割に対して定義している。これは、４分割に対して定義しても良い。また、本実施の形態では、ブロック分割の深度によって、ブロック分割を制限している。これは、ブロックが含むピクチャ境界を超えた位置の画素の数や割合によって制限しても良い。つまり、これらの値が予め定められた値より大きい場合に、そのブロック分割を制限するように構成する。加えて、これらの値は、ブロック分割の深度ごとに異なった値としても良い。これにより、画面外の画素の数や割合が少ないブロックは分割し、画面外の画素の数や割合が多いブロックは分割しないようにする。ブロック分割の制限深度や、ブロックが含むピクチャ境界を超えた位置の画素の数や割合など、ブロック分割の制限にかかる値は、符号化装置が符号化ビットストリーム内に記録し、復号化装置が符号化ビットストリーム内に記録された値を用いる構成にしてもよい。
【０１０８】
第１の実施の形態では、ブロック分割の深度によらずブロック分割を制限する。一方、本実施の形態では、ブロック分割の深度に応じてブロック分割を制限する。これにより、画面外の画素の割合が少ないブロックは分割し、画面外の画素の割合が多いブロックは分割しないようにする。。従って、画面端のブロックを適切な大きさ及び形状に分割することができ、符号化効率を向上させることができる。また、画像符号化および復号化に適したブロック分割ができる。
（第３の実施の形態）
本発明の第３の実施の形態に係る画像符号化装置及び画像復号化装置について説明する。第３の実施の形態では、ピクチャ境界を超えた位置の画素の数によって、ブロック分割を制御する。これ以外の構成は第１の実施の形態と同様であるため、説明を省略する。
【０１０９】
ブロック分割の制御は、画面端においてブロックを２分割または３分割する際に適用される。つまり、図３における２分割または３分割の処理（Ｓ１００４からＳ１０１０）が、以下に説明する処理に置き換わる。また、図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）が、以下に説明する処理に置き換わる。さらに、図８における２分割または３分割の処理（Ｓ１２０２からＳ１２０８）が、以下に説明する処理に置き換わる。
【０１１０】
ブロック分割の制御について、図１６を用いて説明する。まず、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素数をカウントする（Ｓ１６０１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合、ブロックを垂直方向に２分割した場合、ブロックを水平方向に３分割した場合、ブロックを垂直方向に３分割した場合の４つである。
【０１１１】
そして、ブロックを２分割した場合とブロックを３分割した場合のそれぞれについて、ピクチャ境界を超えた位置の画素数が最大となる分割方向を決定する（Ｓ１６０２）。
【０１１２】
次に、ブロックを２分割するか否かを判断する（Ｓ１６０３）。
【０１１３】
２分割すると判断した場合（Ｓ１６０３：ＹＥＳ）、Ｓ１６０２において決定された分割方向に２分割する（Ｓ１６０４）。一方、３分割すると判断した場合（Ｓ１６０３：ＮＯ）、Ｓ１６０２において決定された分割方向に３分割する（Ｓ１６０５）。
【０１１４】
つまり、ピクチャ境界を超えた位置の画素がブロック内に最も多く含まれるように、ブロック分割の方向を制御している。
【０１１５】
ここで、具体例を説明する。いま、画像は１９２０ｘ１０８０画素、ツリーブロックは１２８ｘ１２８画素とする。また、ツリーブロックは４分割せず（Ｓ１１０１：ＮＯ）、ブロックの内部を２分割または３分割する（Ｓ１１０３：ＹＥＳ）。すると、図１７（ａ）に示すように、画面の下端にはピクチャ境界を超えて垂直方向に７２画素が存在する。このとき、ツリーブロックを全ての組み合わせで分割した場合の、各ブロックにおけるピクチャ境界を超えた位置の画素数をカウントする（Ｓ１６０１）。
【０１１６】
ツリーブロックを全ての組み合わせで分割した場合について、それぞれ図１７（ａ）から図１７（ｄ）に示す。図１７（ａ）に示すようにブロックを垂直方向に２分割すると、分割されたブロックの左側（５００）と右側（５０１）はそれぞれ４６０８画素である。一方、図１７（ｂ）のようにブロックを水平方向に２分割すると、分割されたブロックの上側（５１０）は１０２４画素、下側（５１１）は８１９２画素である。つまり、ピクチャ境界を超えた位置の画素数が最大となるのは水平方向に分割する場合の下側の８１９２画素である。よって、画素数が最大となる分割方向は水平方向である（Ｓ１６０２）。
【０１１７】
同様に、図１７（ｃ）のようにブロックを垂直方向に３分割したとすると、分割されたブロックの左側（５２０）と右側（５２２）はそれぞれ２３０４画素であり、中央（５２１）は４６０８画素である。一方、図１７（ｄ）のようにブロックを水平方向に３分割したとすると、分割されたブロックの上側は０画素、中央（５３１）は５１２０画素、下側（５３２）は４０９６画素である。つまり、ピクチャ境界を超えた位置の画素数が最大となるのは水平方向に分割する場合の中央の５１２０画素である。よって、画素数が最大となる分割方向は水平方向である（Ｓ１６０２）。
【０１１８】
最後に、ブロックを２分割するか否かを判断する（Ｓ１６０３）。２分割すると判断した場合（Ｓ１６０３：ＹＥＳ）、決定された分割方向である水平方向にブロックを２分割する（Ｓ１６０４）。一方、３分割すると判断した場合（Ｓ１６０３：ＮＯ）、決定された分割方向である水平方向にブロックを３分割する（Ｓ１６０５）。
【０１１９】
本実施の形態では、ブロックを２分割または３分割する際に、ピクチャ境界を超えた位置の画素がブロック内に最も多く含まれるように、ブロック分割の方向を制御する。これは、画面外の画素を含むブロックにおいて、画面外の部分の画素値は一定であるから、細かい画素の変化を符号化する必要性は少ないからである。従って、そのような画素をできるだけ１つにまとめたブロックとすることによって符号量を小さくし、符号化効率を向上させることができる。
【０１２０】
さらに、ブロックの分割方向だけでなく、ブロックの分割数を決定してもよい。上述の通り、ピクチャ境界を超えた位置の画素数が最大となるのは、２分割の場合は８１９２画素、３分割の場合は５１２０画素である。つまり、ピクチャ境界を超えた位置の画素がブロック内に多く含まれるのは２分割の場合であるから、ブロックを２分割する。
【０１２１】
これは、２分割に比べて、３分割はブロックの端に近い位置でブロックが分割されるからである。３分割は、２分割よりピクチャ境界を超えた位置の画素数が少なくなる傾向がある。従って、画面端においてはブロックを３分割せず、２分割する方向を決定することができる。これにより、ブロックの３分割にかかる処理を削減し、ブロック分割の処理を高速化できる。
【０１２２】
ブロック分割の制御は、画面端においてブロックを２分割または３分割する際に適用される。つまり、図３における２分割または３分割の処理（Ｓ１００４からＳ１０１０）が、以下に説明する処理に置き換わる。また、図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）が、以下に説明する処理に置き換わる。さらに、図８における２分割または３分割の処理（Ｓ１２０２からＳ１２０８）が、以下に説明する処理に置き換わる。
【０１２３】
ブロック分割の制御について、図１８を用いて説明する。まず、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素数をカウントする（Ｓ１６５１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合と、ブロックを垂直方向に２分割した場合の２つである。
【０１２４】
次に、ブロックを２分割した場合について、ピクチャ境界を超えた位置の画素数が最大となる分割方向を決定する（Ｓ１６５２）。そして、決定された分割方向にブロックを２分割する（Ｓ１６５４）。
【０１２５】
本実施の形態のブロック分割に関するシンタックスは、図１３におけるvertical_flagを省略した形とする。これは、本実施の形態ではブロック分割の方向を制御しており、vertical_flagは不要となるからである。さらに、本実施の形態においてブロックの分割数を決定しても良く、ブロックを３分割しないようにしても良い。その場合にはBTflagが不要となるから、これを省略した形としても良い。本実施の形態のブロック分割に関するシンタックスは、図１３と同じにしても良い。
【０１２６】
１９２０ｘ１０８０画素の場合、画面の右端においてピクチャ境界を超えた位置の画素は存在しない。しかし、画像の幅がツリーブロックの大きさの整数倍でない場合には、ピクチャ境界を超えた位置の画素が存在するので、上述と同様にブロック分割を制御する。
【０１２７】
本実施の形態では、ピクチャ境界を超えた位置の画素の数によって、ブロック分割の方向を制御している。これは、ピクチャ境界を超えた位置の画素の割合によって、ブロック分割の方向を制御しても良い。
【０１２８】
こうしたブロック分割の制御により、画面端のブロックを適切な大きさ及び形状に分割することができ、符号化効率を向上させることができる。また、画像符号化および復号化に適したブロック分割ができる。
（第４の実施の形態）
本発明の第４の実施の形態に係る画像符号化装置及び画像復号化装置について説明する。第４の実施の形態では、ピクチャ境界が前述の実施の形態と異なる場合について説明する。これ以外の構成は第１の実施の形態と同様であるため、説明を省略する。
【０１２９】
ここで、ピクチャ境界が図１２と異なるパターンを考える。ただし、ピクチャ境界が異なっても、ブロック分割を制限するか否かの判断結果が図１２の場合と変わらないパターンは除く。例えば、図１２（ａ）において、ピクチャ境界が少し上に位置していたとする。その場合でも、ピクチャ境界を超えた位置の画素が分割されるため、ブロック分割は制限される。つまり、図１２（ａ）は、ピクチャ境界が上下方向に変わっても、ブロック分割を制限するという判断結果は変わらない。これは図１２（ｂ）も同じである。同様に、図１２（ｅ）および図１２（ｆ）は、ピクチャ境界が左右方向に変わっても、ブロック分割を制限するという判断結果は変わらない。
【０１３０】
結局、ピクチャ境界が図１２と異なるパターンは、図１９（ａ）から図１９（ｄ）となる。図１９（ａ）のピクチャ境界は、図１２（ｃ）より上に位置している。同じく、図１９（ｂ）のピクチャ境界は、図１２（ｄ）より上に位置している。同様に、図１９（ｃ）および図１９（ｄ）のピクチャ境界は、図１２（ｇ）および図１２（ｈ）より左に位置している。
【０１３１】
図１９（ａ）と図１９（ｂ）は、どちらも水平方向の分割である。しかし、２分割した場合はピクチャ境界を超えた位置の画素が分割されず、３分割した場合はピクチャ境界を超えた位置の画素が分割される。つまり、３分割した場合のみ、ブロック分割が制限される。
【０１３２】
図１９（ｃ）と図１９（ｄ）は、どちらも垂直方向の分割である。しかし、２分割した場合はピクチャ境界を超えた位置の画素が分割されず、３分割した場合はピクチャ境界を超えた位置の画素が分割される。つまり、３分割した場合のみ、ブロック分割が制限される。
【０１３３】
つまり、２分割と３分割とで、ブロック分割を制限する判断が別れる。これは、２分割に比べて、３分割はブロックの端に近い位置でブロックが分割されるからである。３分割は、２分割よりピクチャ境界を超えた位置の画素が分割される傾向がある。従って、画面端においてはブロックを３分割せず、２分割する方向を制限するか否か判定することができる。これにより、ブロックの３分割にかかる処理を削減し、ブロック分割の処理を高速化できる。
【０１３４】
ブロック分割の制限は、画面端においてブロックを２分割または３分割する際に適用される。つまり、図３における２分割または３分割の処理（Ｓ１００４からＳ１０１０）が、以下に説明する処理に置き換わる。また、図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）が、以下に説明する処理に置き換わる。さらに、図８における２分割または３分割の処理（Ｓ１２０２からＳ１２０８）が、以下に説明する処理に置き換わる。
【０１３５】
ブロック分割の制限について、図２０を用いて説明する。図２０は、図１１に対して一部の処理を省略した形となっている。よって、図１１と同じステップ番号を付して説明を省略することがある。
【０１３６】
まず、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合、ブロックを垂直方向に２分割した場合の２つである。また、ブロック分割を制限するか否かは、ピクチャ境界を超えた位置の画素が分割されるか否かにより決定する。例えば、ブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素が分割されるならば、ブロックを水平方向に２分割することを制限する。Ｓ１３０２以降の処理は、３分割にかかる処理がなくなることを除いて図１１と同じであるため、説明を省略する。
【０１３７】
ここで、図１９（ａ）を用いて具体例を説明する。図１９（ａ）の場合において、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。いま、ブロックを水平方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されないので、水平方向の分割は制限しない。また、ブロックを垂直方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されるので、垂直方向の分割は制限する。よって、ブロック分割の全ての組み合わせについて、ブロック分割を制限しない（Ｓ１３０２：ＮＯ）。そして、水平方向のブロック分割を制限せず（Ｓ１３０３：ＮＯ）、垂直方向のブロック分割を制限するので（Ｓ１３０４：ＹＥＳ）。つまり、ブロックは水平方向に２分割する（Ｓ１３１２）。
【０１３８】
ここで、ピクチャ境界が図１９と比べてさらに上または左に近いパターンを考える。すると、どのパターンにおいても、ピクチャ境界を超えた位置の画素が分割される。従って、画面端においてはブロックの２分割および３分割を常に制限しても良い。
【０１３９】
こうしたブロック分割の制御により、画面端のブロックを適切な大きさ及び形状に分割することができ、符号化効率を向上させることができる。また、画像符号化および復号化に適したブロック分割ができる。
（第５の実施の形態）
本発明の第５の実施の形態に係る画像符号化装置及び画像復号化装置について説明する。第５の実施の形態では、画面右下の端におけるブロック分割の制限について説明する。これ以外の構成は第１の実施の形態と同様であるため、説明を省略する。
【０１４０】
図９に示したように、画面端におけるツリーブロックは、ピクチャ境界を隔てて画面内と画面外の部分を含むことがある。特に、画面右端におけるツリーブロック１００１や画面下端におけるツリーブロック１００２が含む画面外の部分に比べて、画面右下の端におけるツリーブロック１００３が含む画面外の部分は、より多くなる傾向がある。よって、ブロック分割の制限により、符号化効率を向上させることができる余地が大きい。ツリーブロックが分割されている場合には、そのツリーブロックに含まれる分割されたブロックにおいて、ブロック分割を制限する。
【０１４１】
画面右下の端におけるブロック分割の制限について、図２０を用いて説明する。画面右下の端におけるブロックとは、図９のツリーブロック１００３に相当する。
【０１４２】
まず、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合、ブロックを垂直方向に２分割した場合の２つである。また、ブロック分割を制限するか否かは、ピクチャ境界を超えた位置の画素が分割されるか否かにより決定する。例えば、ブロックを水平方向に２分割すると、ピクチャ境界を超えた位置の画素が分割されるならば、ブロックを水平方向に２分割することを制限する。
【０１４３】
いま、画面右下の端におけるブロックであるから、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素が分割される。全ての組み合わせでブロック分割を制限する場合（Ｓ１３０２：ＹＥＳ）、ブロックを分割しない（Ｓ１３１４）。
【０１４４】
ここで、図２１を用いて具体例を説明する。図２１（ａ）と図２１（ｂ）は、画面右下の端におけるツリーブロックにおいて、ブロック分割の全ての組み合わせを示している。いま、図２１（ａ）と図２１（ｂ）のどちらも、ピクチャ境界を超えた位置の画素が分割される。全ての組み合わせでブロック分割を制限する場合（Ｓ１３０２：ＹＥＳ）、ブロックを分割しない（Ｓ１３１４）。
【０１４５】
図２１（ｃ）は、図２１（ａ）と同じピクチャ境界で、ツリーブロックが４分割されている例である。４分割された各ブロックをｚ−スキャン順にブロック６０１，６０２，６０３，６０４とする。図２１（ｃ）について、ブロック分割の各ステップを説明する。
【０１４６】
図２１（ｃ）は、次のステップによりブロック分割されている。まず、図３の処理において、画像をツリーブロックに分割し（Ｓ１０００）、ツリーブロック内部を４分割すると判定し（Ｓ１００１：ＹＥＳ）、ツリーブロックを４分割する（Ｓ１００２）。４分割された各ブロック６０１，６０２，６０３，６０４について、それぞれ図７の処理をする。
【０１４７】
図７において、分割されたブロックの内部を再び４分割しないと判定し（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割すると判定する（Ｓ１１０３：ＹＥＳ）。図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）は、図２０の処理に置き換わる。
【０１４８】
図２０において、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。いま、画面右下の端におけるブロックであるから、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素が分割される。全ての組み合わせでブロック分割を制限する場合（Ｓ１３０２：ＹＥＳ）、ブロックを分割しない（Ｓ１３１４）。以上により、図２１（ｃ）のブロック分割を終了する。
【０１４９】
図２１（ｄ）は、図２１（ｃ）と異なるピクチャ境界で、ツリーブロックが４分割されている例である。この例は、前述した実施の形態を組み合わせた複雑なブロック分割を示している。４分割された各ブロックのうち、ブロック６０２，６０３は更にブロック分割されている。ツリーブロックを４分割した後（Ｓ１００２）、４分割された各ブロック６０１，６０２，６０３，６０４ごとに、ブロック分割の各ステップを説明する。
【０１５０】
ブロック６０１は、図７の処理をする。図７において、分割されたブロックの内部を再び４分割しないと判定し（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割しないと判定する（Ｓ１１０３：ＮＯ）。ブロック６０１は、その内部を再分割せずにブロック分割処理を終了する（Ｓ１１１１）。
【０１５１】
ブロック６０２は、図７の処理をする。図７において、分割されたブロックの内部を再び４分割しないと判定し（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割すると判定する（Ｓ１１０３：ＹＥＳ）。図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）は、図２０の処理に置き換わる。
【０１５２】
図２０において、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。いま、ブロックを水平方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されるので、水平方向の分割は制限する。また、ブロックを垂直方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されないので、垂直方向の分割は制限しない。よって、ブロック分割の全ての組み合わせについて、ブロック分割を制限しない（Ｓ１３０２：ＮＯ）。そして、水平方向のブロック分割を制限する（Ｓ１３０３：ＹＥＳ）。つまり、ブロックは垂直方向に２分割する（Ｓ１３０８）。結局、ブロック６０２は分割６１２により垂直分割される。
【０１５３】
ブロック６０３は、図７の処理をする。図７において、分割されたブロックの内部を再び４分割しないと判定し（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割すると判定する（Ｓ１１０３：ＹＥＳ）。図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）は、図１８の処理に置き換わる。
【０１５４】
図１８において、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素数をカウントする（Ｓ１６５１）。ブロック分割の全ての組み合わせとは、ブロックを水平方向に２分割した場合と、ブロックを垂直方向に２分割した場合の２つである。いま、ブロック６０３においては、図１７（ａ）と図１７（ｂ）に示した通り、ピクチャ境界を超えた位置の画素数が最大となるのは水平方向に分割する場合である。よって、ブロックを２分割した場合について、ピクチャ境界を超えた位置の画素数が最大となる分割方向を水平方向と決定する（Ｓ１６５２）。そして、決定された分割方向にブロックを２分割する（Ｓ１６５４）。結局、ブロック６０３は分割６２３により水平分割される。
【０１５５】
ブロック６０４は、図７の処理をする。図７において、分割されたブロックの内部を再び４分割しないと判定し（Ｓ１１０１：ＮＯ）、ブロック内部を２分割または３分割すると判定する（Ｓ１１０３：ＹＥＳ）。図７における２分割または３分割の処理（Ｓ１１０４からＳ１１１０）は、図２０の処理に置き換わる。
【０１５６】
図２０において、ブロック分割の全ての組み合わせについて、ブロック分割を制限するか否かを決定する（Ｓ１９０１）。いま、分割６２４によってブロックを水平方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されるので、水平方向の分割は制限する。また、分割６１４によってブロックを垂直方向に２分割した場合には、ピクチャ境界を超えた位置の画素が分割されるので、垂直方向の分割は制限する。つまり、ブロック分割の全ての組み合わせについて、ピクチャ境界を超えた位置の画素が分割される。全ての組み合わせでブロック分割を制限する場合（Ｓ１３０２：ＹＥＳ）、ブロックを分割しない（Ｓ１３１４）。
【０１５７】
こうしたブロック分割の制御により、画面端のブロックを適切な大きさ及び形状に分割することができ、符号化効率を向上させることができる。また、画像符号化および復号化に適したブロック分割ができる。
【０１５８】
以上に述べた全ての実施の形態において、ブロック分割を制御する対象はピクチャ境界を超えた位置としている。これは、任意の境界を定めて、それを超えた位置についてブロック分割を制御するようにしても良い。また、任意の境界として、周辺の画素に比べて重要度が高い画素を定め、その境界を超えた位置についてブロック分割を制御する対象としても良い。さらに、任意の境界を超えた位置は画面の下端や右端とは限らず、画面の上端や左端となることもあるし、端でなくてもよい。その場合、画面端でなくてもブロックを適切な大きさ及び形状に分割することができ、符号化効率を向上させることができる。
【０１５９】
以上に述べた全ての実施の形態は、複数を組み合わせても良い。
【０１６０】
以上に述べた全ての実施の形態において、画像符号化装置が出力する符号化ビットストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有している。符号化ビットストリームは、ＨＤＤ、ＳＳＤ、フラッシュメモリ、光ディスク等のコンピュータ等で読み解き可能な記録媒体に記録して提供しても良いし、有線あるいは無線のネットワークを通してサーバから提供しても良い。従って、この画像符号化装置に対応する画像復号装置は、提供手段によらず、この特定のデータフォーマットの符号化ビットストリームを復号することができる。
【０１６１】
画像符号化装置と画像復号装置の間で符号化ビットストリームをやりとりするために、有線または無線のネットワークが用いられる場合、通信路の伝送形態に適したデータ形式に符号化ビットストリームを変換して伝送してもよい。その場合、画像符号化装置が出力する符号化ビットストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する送信装置と、ネットワークから符号化データを受信して符号化ビットストリームに復元して画像復号装置に供給する受信装置とが設けられる。
【０１６２】
送信装置は、画像符号化装置が出力する符号化ビットストリームをバッファするメモリと、符号化ビットストリームをパケット化するパケット処理部と、ネットワークを介してパケット化された符号化データを送信する送信部とを含む。受信装置は、ネットワークを介してパケット化された符号化データを受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ビットストリームを生成し、画像復号装置に提供するパケット処理部とを含む。
【０１６３】
画像符号化装置と画像復号装置の間で符号化ビットストリームをやりとりするために、有線または無線のネットワークが用いられる場合、送信装置、受信装置に加え、さらに、送信装置が送信する符号化データを受信し、受信装置に供給する中継装置が設けられても良い。中継装置は、送信装置が送信するパケット化された符号化データを受信する受信部と、受信された符号化データをバッファするメモリと、パケットされた符号化データとネットワークに送信する送信部とを含む。さらに、中継装置は、パケット化された符号化データをパケット処理して符号化ビットストリームを生成する受信パケット処理部と、符号化ビットストリームを蓄積する記録媒体と、符号化ビットストリームをパケット化する送信パケット処理部を含んでも良い。
【０１６４】
また、画像復号装置で復号された画像を表示する表示部を構成に追加することで、表示装置としても良い。その場合、表示部は、復号画像信号重畳部２０５により生成され、復号画像メモリ２０６に格納された復号画像信号を読み出して画面に表示する。
【０１６５】
また、撮像部を構成に追加し、撮像した画像を画像符号化装置に入力することで、撮像装置としても良い。その場合、撮像部は、撮像した画像信号をブロック分割部１０１に入力する。
【０１６６】
図２２に、本願の符号化復号装置のハードウェア構成の一例を示す。符号化復号装置は、本発明の実施の形態に係る画像符号化装置、および画像復号装置の構成を包含する。係る符号化復号装置９０００は、ＣＰＵ９００１、コーデックＩＣ９００２、Ｉ／Ｏインターフェース９００３、メモリ９００４、光学ディスクドライブ９００５、ネットワークインターフェース９００６、ビデオインターフェース９００９を有し、各部はバス９０１０により接続される。
【０１６７】
画像符号化部９００７と画像復号部９００８は、典型的にはコーデックＩＣ９００２として実装される。本発明の実施の形態に係る画像符号化装置の画像符号化処理は、画像符号化部９００７により実行され、本発明の実施の形態に係る画像復号装置における画像復号処理は、画像符号化部９００７により実行される。Ｉ／Ｏインターフェース９００３は、例えばＵＳＢインターフェースにより実現され、外部のキーボード９１０４、マウス９１０５等と接続する。ＣＰＵ９００１は、Ｉ／Ｏインターフェース９００３を介して入力したユーザー操作に基づき、ユーザーの所望する動作を実行するように符号化復号装置９０００を制御する。キーボード９１０４、マウス９１０５等によるユーザーの操作としては、符号化、復号のどちらの機能を実行するかの選択、符号化品質の設定、符号化ストリームの入出力先、画像の入出力先等がある。
【０１６８】
ユーザーがディスク記録媒体９１００に記録された画像を再生する操作を所望する場合、光学ディスクドライブ９００５は、挿入されたディスク記録媒体９１００から符号化ビットストリームを読出し、読み出した符号化ストリームを、バス９０１０を介してコーデックＩＣ９００２の画像復号部９００８に送る。画像復号部９００８は入力した符号化ビットストリームに対して本発明の実施の形態に係る画像復号装置における画像復号処理を実行し、復号画像を、ビデオインターフェース９００９を介して外部のモニタ９１０３へ送る。また、符号化復号装置９０００は、ネットワークインターフェース９００６を有し、ネットワーク９１０１を介して、外部の配信サーバ９１０６や、携帯端末９１０７と接続可能である。ユーザーがディスク記録媒体９１００に記録された画像に変えて、配信サーバ９１０６や携帯端末９１０７に記録された画像を再生することを所望する場合は、ネットワークインターフェース９００６は、入力されたディスク記録媒体９１００から符号化ビットストリームを読出すことに変えて、ネットワーク９１０１より符号化ストリームを取得する。また、ユーザーがメモリ９００４に記録された画像を再生することを所望する場合は、メモリ９００４に記録された符号化ストリームに対して、本発明の実施の形態に係る画像復号装置における画像復号処理を実行する。
【０１６９】
ユーザーが外部のカメラ９１０２で撮像した画像を符号化しメモリ９００４に記録する操作を所望する場合、ビデオインターフェース９００９は、カメラ９１０２から画像を入力し、バス９０１０を介し、コーデックＩＣ９００２の画像符号化部９００７に送る。画像符号化部９００７は、ビデオインターフェース９００９を介して入力した画像に対して本発明の実施の形態に係る画像符号化装置における画像符号化処理を実行し、符号化ビットストリームを作成する。そして符号化ビットストリームを、バス９０１０を介し、メモリ９００４へ送る。ユーザーがメモリ９００４に変えて、ディスク記録媒体９１００に符号化ストリームを記録することを所望する場合は、光学ディスクドライブ９００５は、挿入されたディスク記録媒体９１００に対し符号化ストリームの書き出しを行う。
【０１７０】
画像符号化装置を有し画像復号装置を有さないハードウェア構成や、画像復号装置を有し画像符号化装置を有さないハードウェア構成を実現することも可能である。そのようなハードウェア構成は、例えばコーデックＩＣ９００２が、画像符号化部９００７、または画像復号部９００８にそれぞれ置き換わることにより実現される。
【０１７１】
以上の符号化及び復号化に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現しても良いのは勿論のこと、ＲＯＭ（リード・オンリー・メモリ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによって実現しても良い。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供しても良いし、有線あるいは無線のネットワークを通してサーバから提供しても良いし、地上波あるいは衛星ディジタル放送のデータ放送として提供しても良い。
【０１７２】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１７３】
１００  画像符号化装置、  １０１  ブロック分割部、  １０２  予測画像生成部、  １０３  残差信号生成部、  １０４  直交変換・量子化部、  １０５  符号化部、  １０６  逆量子化・逆直交変換部、  １０７  復号画像信号重畳部、  １０８  復号画像メモリ、  ２００  画像復号化装置、  ２０１  復号化部、  ２０２  ブロック分割部、  ２０３  逆量子化・逆直交変換部、  ２０４  予測画像生成部、  ２０５  復号画像信号重畳部、  ２０６  復号画像メモリ。
【図１】
2020096346.tif 000003
【図２】
2020096346.tif 000004
【図３】
2020096346.tif 000005
【図４】
2020096346.tif 000006
【図５】
2020096346.tif 000007
【図６】
2020096346.tif 000008
【図７】
2020096346.tif 000009
【図８】
2020096346.tif 000010
【図９】
2020096346.tif 000011
【図１０】
2020096346.tif 000012
【図１１】
2020096346.tif 000013
【図１２】
2020096346.tif 000014
【図１３】
2020096346.tif 000015
【図１４】
2020096346.tif 000016
【図１５】
2020096346.tif 000017
【図１６】
2020096346.tif 000018
【図１７】
2020096346.tif 000019
【図１８】
2020096346.tif 000020
【図１９】
2020096346.tif 000021
【図２０】
2020096346.tif 000022
【図２１】
2020096346.tif 000023
【図２２】
2020096346.tif 000024