(57)【要約】【課題】画像内でイントラ予測を行う画像符号化装置、画像復号装置、画像処理方法、及び画像処理プログラムに関し、予測単位のブロックが長方形でもイントラ予測効率を高く維持する。【解決手段】動画像符号化装置６００は、画像内でその画像を分割したブロックを単位としてイントラ予測をし符号化を行う。予測方向判定部６０２は、長方形ブロックが選択された際のイントラ予測方向を選定する際に、長方形ブロックの短い辺に隣接する画素を参照する予測方向のうち、予測方向を１８０度反転したときに長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照する予測方向を、イントラ予測方向の選定対象に加える。【選択図】図６
2020182249.tif 000002
【特許請求の範囲】
【請求項１】
画像復号化において予測モードで対応づけられたイントラ予測を行う画像復号装置であって、
イントラ予測を実施する処理単位が長方形であるかを判定する判定部と、
長方形であると判定した場合に、選択されたイントラ予測モードに関して、正方向の予測方向からのイントラ予測と、正方向の予測方向とは反対の予測方向からのイントラ予測とのうちで、より近い隣接画像からのイントラ予測になる予測モードを決定する決定部と、
決定された予測モードを用いてイントラ予測を行うイントラ予測部と、
を備えることを特徴とする画像復号装置。
【請求項２】
画像符号化において予測モードで対応づけられたイントラ予測を行う画像符号化装置であって、
イントラ予測を実施する処理単位が長方形であるかを判定する判定部と、
長方形であると判定した場合に、選択されたイントラ予測モードに関して、正方向の予測方向からのイントラ予測と、正方向の予測方向とは反対の予測方向からのイントラ予測とのうちで、より近い隣接画像からのイントラ予測になる予測モードを決定する決定部と、
決定された予測モードを用いてイントラ予測を行うイントラ予測部と、
ことを特徴とする画像符号化装置。
【請求項３】
前記予測モードは、前記正方向の予測方向に対応する予測画像を生成するモードであり、
前記決定部は、前記予測モードの決定を、前記正方向の予測方向からのイントラ予測が利用可能であって、且つ、前記反対の予測方向からのイントラ予測の計算が可能な場合に行う
ことを特徴とする請求項１に記載の画像復号装置。
【請求項４】
前記予測モードは、前記正方向の予測方向に対応する予測画像を生成するモードであり、
前記決定部は、前記予測モードの決定を、前記正方向の予測方向からのイントラ予測が利用可能であって、且つ、前記反対の予測方向からのイントラ予測の計算が可能な場合に行う
ことを特徴とする請求項２に記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
画像内でイントラ予測を行う画像符号化装置、画像復号装置、画像処理方法、及び画像処理プログラムに関する。
【背景技術】
【０００２】
動画像（映像）の国際標準圧縮方式Ｈ．２６４／ＡＶＣ及び次世代高能率映像符号化ＨＥＶＣ（ＩＳＯ／ＩＥＣ  ２３００８：Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）では、イントラ予測が導入されている。イントラ予測では、同一のフレーム画像内で、その画像を分割した処理ブロックについて、符号化済みの左隣接及び上隣接のブロックの画素（隣接画素）からどのようにイントラ予測を行うかを示す予測モードが選択される。そして、その選択された予測モードでイントラ予測が実行されることにより、処理ブロックの予測画像が生成される。続いて、処理ブロックにおいて、原画と予測画像の差分の予測残差（誤差）信号が生成される。その予測残差信号は、離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｎｓｉｎ  Ｔｒａｎｓｆｏｒｍ：ＤＣＴ）又は離散ウェーブレット変換（Ｄｉｓｃｒｅｔｅ  Ｗａｖｅｌｅｔ  Ｔｒａｎｓｆｏｒｍ：ＤＷＴ）により、空間周波数領域の信号に変換され、量子化される。そして、その量子化された信号が、イントラ予測で適用された予測モードの情報と共に、エントロピー符号化によって２値化され、符号化画像信号として出力される。静止画についても、同様の符号化方式が適用可能である。
【０００３】
ＨＥＶＣでは、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ：ＣＵ）と呼ばれるブロックの単位で符号化が行われ、各ＣＵは予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ：ＰＵ）と呼ばれる予測を実施するブロックに分割され、イントラ予測で使用される。ＨＥＶＣまでの動画像符号化規格では、ＣＵの分割は４分木を実施するか否かの再帰処理で決定されている。また、イントラ予測を実施する単位であるＰＵに関しても、ＣＵサイズをそのまま用いるかＣＵサイズを４分木するかのどちらかの処理で決定されている。このため、分割後のブロックは全て正方形となる。一方、ＩＳＯ／ＩＥＣ  ＳＣ２９  ＷＧ１１（ＭＰＥＧ）とＩＴＵ−Ｔ  ＳＧ１６ ＷＰ３  Ｑ６（ＶＣＥＧ）が合同で設立したＪＶＥＴ（Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｅｘｐｌｏｒａｔｉｏｎ  Ｔｅａｍ）では、次世代の動画像符号化の研究がなされている。ここでは、ＣＵの分割を４分木のみでなく、２分割も可能とするＱＴＢＴ（Ｑｕａｄ−Ｔｒｅｅ  Ｂｉｎａｒｙ  Ｔｒｅｅ）と呼ばれる方式が提案されている。ＱＴＢＴでは、ＰＵの生成においてＣＵに対する２分割が許されることから、ＰＵのブロックとしては、正方形ブロックだけでなく、長方形ブロックも選択することが可能となる。
【０００４】
前述したように、イントラ予測では、処理ブロックについて、符号化済みの左隣接及び上隣接のブロックの隣接画素から予測画像が生成されるため、長方形ブロックについても隣接画素から効率的にイントラ予測を行う技術が要請されている。
【０００５】
イントラ予測を効率的に実施するための従来技術として、次のような技術が知られている（例えば特許文献１）。まず、同一の画面内で予測信号を生成するイントラ予測において、復号画素信号から参照画素信号を設定するステップが実行される。次に、予測モードを識別する予測モード識別情報を取得するステップが実行される。次に、参照画素信号と予測モード識別情報とに基づいて予測信号を生成するステップが実行される。次に、予測モード識別情報によって特定される予測モードにおいて、予測対象となる画素と参照画素との距離がより近い参照画素を利用して予測信号を修正するための判定を行うステップが実行される。更に、判定の結果に応じて、生成した予測信号を修正するステップが実行される。そして、判定を行うステップでは、予測対象のブロックの左上に隣接する復号画素を原点として定義される関数の形状を示すパラメータから予測対象画素の修正範囲が決定される。この構成により、イントラ予測において、より距離の近い復号済み参照画素を予測信号生成に利用することにより、予測残差エネルギーを低減させることができ、主観画質、符号化効率の改善を実現している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−０２７７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したように、ＨＥＶＣまでのイントラ予測では、処理ブロックが全て正方形であったために、左隣接画素からの予測と上隣接画素からの予測に、距離的な差は無かった。ところが、前述したＱＴＢＴにより長方形の処理ブロックが利用可能となり、長方形ブロックのままイントラ予測を実施しようとすると、この関係が崩れる。例えば、水平方向に長い長方形ブロックの場合は、左隣接画素は長方形ブロック内の各予測対象画素からの距離が遠くなる。一方、垂直方向に長い長方形ブロックの場合は、上隣接画素は長方形ブロック内の各予測対象画素からの距離が遠くなる。
【０００８】
このため従来、長方形ブロックのイントラ予測において、遠い隣接画素から予測画像が生成されると、予測効率が悪くなり、前述した予測残差信号のエネルギーが大きくなる可能性が高くなって、符号化効率が低下するという課題があった。
【０００９】
また、関数の形状を示すパラメータから予測対象画素を修正する前述した従来技術では、符号化性能を高めるためには、修正情報を特定するための番号又は関数の形状を示すパラメータを符号化して復号側に伝送する必要があり、これにより伝送効率が低下する可能性があった。
【００１０】
そこで、本発明の１つの側面では、予測単位のブロックが長方形でもイントラ予測効率を高く維持することを目的とする。
【課題を解決するための手段】
【００１１】
態様の一例では、画像内で画像を分割したブロックを単位としてイントラ予測し符号化を行う画像符号化装置であって、ブロックが長方形ブロックであるかを判定する判定部と、長方形ブロックと判定された際に、長方形ブロックの短い辺に隣接する画素を参照する予測方向のうち、予測方向を反転したときに長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照する予測方向を、イントラ予測方向の選定対象として設定する予測方向設定部を備える。
【発明の効果】
【００１２】
予測単位のブロックが長方形でもイントラ予測効率を高く維持することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】正方形ブロックに対するイントラ予測の説明図である。
【図２】ＨＥＶＣにおける予測モードを示す図である。
【図３】長方形ブロックにおける隣接画素からの距離の関係性についての説明図である。
【図４】ＨＥＶＣにおける予測モードに本実施形態を適用した場合の説明図である。
【図５】ＨＥＶＣにおけるブロックの説明図である。
【図６】動画像符号化装置の実施形態の構成例を示すブロック図である。
【図７】動画像符号化装置によるイントラ予測に重点を置いた符号化処理の例を示すフローチャートである。
【図８】予測方向判定部での距離算出動作の説明図である。
【図９】動画像復号装置の実施形態の構成例を示すブロック図である。
【図１０】動画像復号装置によるイントラ予測に重点を置いた復号処理の例を示すフローチャートである。
【図１１】動画像符号化装置又は動画像復号装置を実現可能なコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１４】
まず、本発明の実施形態について詳細に説明する前に、イントラ予測と予測モードについて説明する。
【００１５】
前述したように、ＨＥＶＣまでの動画像符号化規格では、ＣＵの分割は４分木を実施するか否かの再帰処理で決定されている。また、イントラ予測を実施する単位であるＰＵに関しても、ＣＵサイズをそのまま用いるかＣＵサイズを４分木するかのどちらかの処理で決定されている。このため、分割後のブロックは全て正方形となる。図１は、このような正方形ブロックに対するイントラ予測の説明図である。例えば８×８のブロックの白色の画素をＰＵとして、このＰＵの左と上に隣接する濃い色の隣接画素を用いて予約が行われる。図１の各矢印の方向で示されるように、隣接画素から計算する予測画像の重み判定方式が異なる。国際標準圧縮方式Ｈ．２６４／ＡＶＣでは最大１０通り、次世代高能率映像符号化ＨＥＶＣでは最大３５通りの予測モードが存在する。
【００１６】
図２は、ＨＥＶＣにおける予測モードを示す図である。ＨＥＶＣでは、図２に示されるモード番号により、モード番号０番のＰｌａｎａｒ予測、モード番号１番のＤＣ予測、及びモード番号２番から３４番のＡｎｇｕｌａｒ予測の、合計で３５通りの予測モードが選択可能である。モード番号０番のＰｌａｎａｒ予測では、ＰＵの左及び上の符号化済み隣接画素からの平面近似によりＰＵ内の各予測画素が生成される。モード番号１番のＤＣ予測では、ＰＵの左及び上の符号化済み隣接画素の平均値としてＰＵ内の各予測画素が生成される。モード番号２番から３４番のＡｎｇｕｌａｒ予測では、図２の２から３４の番号が付された左下から右上までの各矢印が示す位置の隣接画素から中央に位置する予測画素が生成される。図２からわかるように、Ａｎｇｕｌａｒ予測では、３３通りの予測モードが存在する。
【００１７】
図１又は図２の予測モードを用いた従来のイントラ予測では、処理ブロックＰＵが全て正方形であったために、左隣接画素からの予測と上隣接画素からの予測に、距離的な差は無かった。これに対して、前述したように、ＪＶＥＴでは、ＣＵの分割を４分木のみでなく、２分割も可能とするＱＴＢＴ方式が提案されており、ＰＵのブロックとしては、正方形ブロックだけでなく、長方形ブロックも選択することが可能となって、符号化性能が向上する。しかしながら、ＱＴＢＴで採用される長方形ブロックでは、上述の左隣接画素からの予測と上隣接画素からの予測に距離的な差が無いという関係が崩れる。図３は、長方形ブロックにおける隣接画素からの距離の関係性についての説明図である。図３（ａ）に示されるように、ＰＵである長方形ブロック３０１が横長である（水平方向に長い）場合には、図３（ａ）の矢印で示されるように、左隣接画素３０２は長方形ブロック３０１内の各予測対象画素からの距離が遠くなる。一方、図３（ｂ）に示されるように、長方形ブロック３０１が縦長である（垂直方向に長い）場合には、図３（ｂ）の矢印で示されるように、上隣接画素３０３は長方形ブロック３０１内の各予測対象画素からの距離が遠くなる。イントラ予測において、図３に示されるように遠い隣接画素から予測画像が生成されると、予測効率が悪くなり、予測残差信号のエネルギーが大きくなる可能性が高くなって、符号化効率が低下する。
【００１８】
ここで、図３（ａ）に示されるように、左隣接画素３０２と長方形ブロック３０１の距離が遠くなる場合は、逆に上隣接画素３０３と長方形ブロック３０１の距離が近くなるという関係がある。一方、図３（ｂ）に示されるように、上隣接画素３０３と長方形ブロック３０１の距離が遠くなる場合は、逆に左隣接画素３０２と長方形ブロック３０１の距離が近くなるという関係がある。
【００１９】
そこで、以下に説明する本実施形態では、ＰＵが長方形ブロックになる場合には、予測モードを評価する毎に、次の処理が実行される。その予測モードに対応する予測方向（以下「元予測方向」と記載）からのイントラ予測に加えて、元予測方向に対して１８０度正反対の方向（以下「正反対予測方向」と記載）からのイントラ予測も評価される。そして、評価ポイントが高いほうの予測方向が採用されることにより、イントラ予測の予測効率を高める動作が実行される。
【００２０】
今、もしＰＵ内に、そのＰＵを貫通する強いエッジ画素が存在すれば、左下方向からのイントラ予測も、正反対（１８０度反対）の右上方向からのイントラ予測も、同様に予測が当たる。イントラ予測においては、隣接画素と予測対象画素の距離は近い方が、予測効率が高いことが期待できる。一方、符号化効率の観点から、イントラ予測の方向(予測モード)は、むやみに増加させたくない。
【００２１】
そこで、以下に説明する本実施形態では、次のような制御が実施される。或る予測モードについて、元予測方向に加えて正反対予測方向からのイントラ予測も可能で、かつ正反対予測方向の方が隣接画素と予測対象画素の距離の方が近い場合には、予測方向が正反対予測方向に置き換えられて予測モード判定が実施される。これにより、本実施形態では、より効率の良いイントラ予測が実施される。
【００２２】
本実施形態のポイントは、以下の通りである。長方形ブロックのイントラ予測が実施される場合において、或る予測方向（例えば左下方向から右上方向への予測方向）が評価されるときに、その正反対の予測方向(例えば右上方向から左下方向への予測方向)も同時に評価される。
【００２３】
図４は、図２に示したＨＥＶＣにおける予測モードに本実施形態を適用した場合の説明図である。モード番号２番から３４番のＡｎｇｕｌａｒ予測モードのうち、左下方向から右上方向の予測方向を有する例えばモード番号３番から９番の予測モードについて、それらのモード番号の予測方向の正反対（１８０度反対）の予測方向が定義される。左下方向から右上方向の予測方向は例えば、予測対象画素を基準にして、右水平方向を０度として反時計回りに１８０度を超えて２２５度までの角度方向である。そして、この予測方向の正反対の予測方向は、モード番号１８番から３４番の上隣接画素を水平右方向に拡張して得られるモード番号３′番から９′番（図中では６′番までを表示）の予測方向である。
【００２４】
また、図示していないが、右上方向から左下方向の予測方向を有する例えばモード番号３３番から２７番の予測モードについて、それらのモード番号の予測方向の正反対（１８０度反対）の予測方向も定義される。右上方向から左下方向の予測方向は例えば、予測対象画素を基準にして、右水平方向を０度として反時計回りに４５度を超えて９０度未満までの角度方向である。そして、この予測方向の正反対の予測方向は、モード番号３３番から２７番の上隣接画素を垂直方向に拡張して得られるモード番号３３′番から２７′番（図示せず）の予測方向である。
【００２５】
本実施形態では、以上のようにして定義される２つの予測方向のうちどちらが良い予測画像を生成可能かが暗黙的に（＝符号量の増加無しに）決定されることにより、より適切なイントラ予測が実現される。上記の判定が画像符号化装置と画像復号装置とで同じアルゴリズムに従って実行されることにより、元の予測方向に対応する予測モードが符号化されながら、条件によって符号化側と復号側とで予測モードに対応する元の予測方向とは正反対の予測方向がイントラ予測に適用されるようにすることが可能となる。
【００２６】
以下に説明する本実施形態の基本的な動作は、次の通りである。
ステップ１：隣接画素と処理ブロック内の予測対象画素との距離が定義される。
【００２７】
ステップ２：或る予測モードについて、その予測モードに対応する元予測方向の正反対予測方向からイントラ予測が可能な場合は、次の処理が実行される。元予測方向の隣接画素を用いて計算したステップ１の距離と、上記正反対予測方向の隣接画素を用いて計算したステップ１の距離とが比較され、距離の短いほうの方向が選択される。
【００２８】
ステップ３：ステップ２で選択された方向が、現在の予測モードに対応する予測方向と判定される。
【００２９】
上記ステップ１の距離計算としては、処理ブロック内の全ての予測対象画素の夫々と現在選択されている方向の隣接画素との距離の総和を計算するのが正確である。これに対して、演算量を下げるために、例えば、処理ブロックの左上予測対象画素と右下予測対象画素の２点の夫々と隣接画素との距離の和や、処理ブロックの最右下予測対象画素と隣接画素との距離のみ、で代用することも可能である。
【００３０】
上述の基本動作に基づく本実施形態について、図面を参照しながら詳細に説明する。
図５は、本実施形態で採用されるＨＥＶＣにおけるブロックの説明図である。ＨＥＶＣにおいては、ピクチャは、符号化ブロック（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ：ＣＴＵ）単位に分割され、ラスタスキャン順に符号化処理が行われる。ＣＴＵサイズは、シーケンス単位で一定であるが、６４×６４画素から１６×１６画素までの画素サイズを選択することができる。ＣＴＵは更に第１のサブブロッＣＵに四分木構造で分割され、ＣＴＵ内でラスタスキャン順に符号化処理が行われる。ＣＵは可変サイズであり、ＣＵ分割モード８×８画素から６４×６４画素を選択することができる。ＣＵは、符号化モードであるイントラ予測とインター予測を選択する単位となる。ＣＵは、第２のサブブロックＰＵと第３のサブブロックＴＵ（Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ）単位に個別に処理される。ＰＵは、それぞれの符号化モードの予測の単位となる。例えば、イントラ予測では、ＰＵはイントラ予測モードを決定する単位となる。また、インター予測では、ＰＵは動き補償を行う単位となる。ＰＵのサイズは、例えばインター予測であれば、ＰＵ分割モード（ＰａｒｔＭｏｄｅ）＝２Ｎ×２Ｎ、Ｎ×Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、２Ｎ×Ｕ、２Ｎ×ｎＤ、ｎＲ×２Ｎ、ｎＬ×２Ｎの何れかの画素サイズから選択可能である。一方、ＴＵは、後述する図６の直交変換・量子化部６１０が実行する直交変換の単位であり、４×４から３２×３２の画素サイズを選択することができる。ＴＵは、四分木構造で分割され、ラスタスキャン順に処理される。
【００３１】
図６は、動画像符号化装置の実施形態の構成例を示すブロック図である。図６に示される動画像符号化装置６００は、隣接画素拡張部６０１、予測方向判定部６０２、イントラ予測モード判定部６０３、イントラ予測部６０４、動きベクトル検出部６０５、動き補償部６０６、モード判定部６０７、及び予測画像生成部６０８を含む。更に、動画像符号化装置は、残差演算部６０９、直交変換・量子化部６１０、可変長符号化部６１１、逆量子化・逆直交変換部６１２、参照画像演算部６１３、及びフレームメモリ６１４を含む。
【００３２】
図６において、特には図示しない入力部より入力された画像は、図５で説明したＣＵ（以下「処理ＣＵ」と記載）及びそれを分割したＰＵ（以下「処理ＰＵ」と記載）単位に、インター予測処理と、イントラ予測がそれぞれ実行される。
【００３３】
処理ＣＵ及びそれを分割した処理ＰＵに対するインター予測処理は、動きベクトル検出部６０５及び動き補償部６０６によって実行される。まず、動きベクトル検出部６０５は、現在のフレームの画像（以下「原画像」と記載）を入力し、また、フレームメモリ６１４から動画像符号化装置６００内で生成された符号化済の局所復号画像（後述する）である参照画像を入力する。動きベクトル検出部６０５は、原画像及び参照画像からそれぞれ、同一箇所の処理ＣＵを切り出す。動きベクトル検出部６０５は更に、処理ＣＵを分割して得られる処理ＰＵに対応する同一箇所のＰＵを切り出す（以下、原画像から切り出したＰＵを「原画像ＰＵ」、参照画像から切り出したＰＵを「参照画像ＰＵ」と記載）。動きベクトル検出部６０５は、原画像ＰＵと参照画像ＰＵの対応する画素間で差分絶対値を算出する。動きベクトル検出部６０５は、算出した各画素の差分絶対値に関する差分絶対値和ＳＡＤ＿ｃｏｓｔ（Ｓｕｍ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ：）を算出する。ＳＡＤ＿ｃｏｓｔは、例えばＰＵが１６×１６画素サイズの場合には、ラスタスキャンに沿った左上から右下までの計２５６画素について、上記算出された差分絶対値の累算値であり、下記（１）式の演算により算出される。
【００３４】
ＳＡＤ＿ｃｏｓｔ＝Σ|＊ｏｒｇ−＊ｒｅｆ|  ・・・（１）
ここで、「＊ｏｒｇ」は原画像ＰＵの各画素値、「＊ｒｅｆ」は参照画像ＰＵの各画素値である。
【００３５】
動きベクトル検出部６０５は、算出した差分絶対値和ＳＡＤ＿ｃｏｓｔに基づいて、動き探索を行い、その最小値などにより最適な動きベクトルを探索する。動き探索には、画素の差分絶対値和の大きさのみでなく、動きベクトルの評価値も付加することが一般的である。動きベクトルの符号化としては、動きベクトルの成分そのものでなく、周辺ＰＵの動きベクトルとの差分ベクトルが符号化される。このため、動きベクトル検出部６０５は、動きベクトルについての周辺ＰＵの動きベクトルとの差分ベクトルを算出し、その差分ベクトルの成分の大きさにより、動きベクトル符号長相当の評価値を出力する。ここで、動き探索の評価値をｃｏｓｔ、動きベクトルの符号量相当の評価値をＭＶ＿ｃｏｓｔ（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ）とする。動きベクトル検出部６０５は、上記ＭＶ＿ｃｏｓｔと（１）式で算出した差分絶対値和ＳＡＤ＿ｃｏｓｔを用いた下記（２）式で示されるｃｏｓｔを最小値にする、動きベクトル位置を探索する。ここで、λは、ラグランジュ乗数である。
【００３６】
ｃｏｓｔ＝ＳＡＤ＿ｃｏｓｔ＋λ×ＭＶ＿ｃｏｓｔ  ・・・（２）
【００３７】
実際には、ＰＵは、６４×６４から４×４までの画像サイズを取り得るので、ＰＵの画像サイズに応じて、ｃｏｓｔを評価する単位も変更される。
【００３８】
なお、上記ＳＡＤ＿ｃｏｓｔの代わりに、別途ＳＡＴＤ（アダマール変換による差分コスト）などの別の評価値を用いることも可能である。
【００３９】
次に、動き補償部６０６が、現在の処理ＰＵに関して、動きベクトル検出部６０５が検出した動きベクトルに基づいて動き補償を行う。動き補償部６０６は、動きベクトル検出部６０５がフレームメモリ６１４から読み出した参照画像ＰＵに、動きベクトル検出部６０５が検出した動きベクトルを適用する。これにより、動き補償部６０６は、原画像ＰＵに対応する予測画像のＰＵ（以下「予測画像ＰＵ」と記載）を生成し、インター予測による予測画像ＰＵとする。動き補償部６０６は、このインター予測による処理ＰＵ毎の予測画像ＰＵを処理ＣＵ全体で合成することにより、処理ＣＵに対するインター予測による予測画像ＣＵを生成して出力する。
【００４０】
一方、処理ＣＵ及びそれを分割した処理ＰＵに対するイントラ予測処理は、図６の隣接画素拡張部６０１、予測方向判定部６０２、イントラ予測モード判定部６０３、及びイントラ予測部６０４によって実行される。
【００４１】
まず、隣接画素拡張部６０１は、処理ＣＵから分割される処理ＰＵが長方形ブロックである場合に、次の処理を実行する。隣接画素拡張部６０１は、その長方形ブロックが水平方向に長い場合には、その長方形ブロックの上隣接画素を、その長方形ブロックの長い辺を水平右方向に拡張した延長線に隣接する上のブロックに含まれる画素にまで拡張する（図４の説明を参照）。また、隣接画素拡張部６０１は、その長方形ブロックが垂直方向に長い場合には、その長方形ブロックの左隣接画素を、その長方形ブロックの長い辺を垂直下方向に拡張した延長線に隣接する左のブロックに含まれる画素にまで拡張する。なお、隣接画素拡張部６０１は、隣接画素値としては、フレームメモリ６１４から読み出した参照画像の該当する位置の画素値を使用する。
【００４２】
次に、予測方向判定部６０２は、処理ＰＵが長方形ブロックである場合に、隣接画素拡張部６０１が設定した隣接画素値を用いて、前述した図４で説明したステップ１、２、及び３の動作を実行することにより、予測モード毎に、その予測モードに対応する元予測方向と正反対予測方向のうちの何れかの方向を選択する。
【００４３】
続いて、イントラ予測モード判定部６０３は、予測方向判定部６０２での判定を踏まえながら、処理ＰＵに対するイントラ予測モードを判定する。イントラ予測モード判定部６０３は、イントラ予測モードを順次（ＨＥＶＣの場合図２に示される３５通りで）変更しながら、現在のイントラ予測モードに対して、予測方向判定部６０２での判定を踏まえたイントラ予測方向の隣接画素を参照する。そして、イントラ予測モード判定部６０３は、参照した隣接画素から、処理ＰＵの各画素の暫定的な予測値を決定する（以下、各画素の暫定的な予測値から構成されるＰＵを「暫定予測画像ＰＵ」と記載）。イントラ予測モード判定部６０３は、現在のイントラ予測モードに対して、原画像ＰＵと暫定予測画像ＰＵの対応する画素間で、前述した（１）式と同様にして差分絶対値和ＳＡＤ＿ｃｏｓｔを算出する。更に、イントラ予測モード判定部６０３は、その差分絶対値和ＳＡＤ＿ｃｏｓｔを用いて、前述した（２）式と同様にして、現在のイントラ予測モードに対応するｃｏｓｔ値を算出する。イントラ予測モード判定部６０３は、この演算を全てのイントラ予測モードに対して実行し、この結果、ｃｏｓｔ値が最小となるイントラ予測モードを、処理ＰＵに対するイントラ予測モードとして判定する。
【００４４】
図６のイントラ予測部６０４は、イントラ予測モード判定部６０３が判定したイントラ予測モードに対してイントラ予測モード判定部６０３が算出していた暫定予測画像ＰＵを、イントラ予測による予測画像ＰＵとする。イントラ予測部６０４は、このイントラ予測による処理ＰＵ毎の予測画像ＰＵを処理ＣＵ全体で合成することにより、処理ＣＵに対するイントラ予測による予測画像ＣＵを生成して出力する。
【００４５】
図６のモード判定部６０７は、動き補償部６０６からのインター予測による予測画像ＣＵと、イントラ予測部６０４からのイントラ予測による予測画像ＣＵとを比較する。これにより、モード判定部６０７は、インター予測とイントラ予測のうち、現在の処理ＣＵを符号化するのにどちらの予測が最適かを決定する。そして、モード判定部６０７は、インター予測を行うのが最適と判定した場合には、動き補償部６０６が生成した予測画像ＣＵを、予測画像生成部６０８に出力する。一方、モード判定部６０７は、イントラ予測を行うのが最適と判定した場合には、イントラ予測部６０４が生成した予測画像ＣＵを、予測画像生成部６０８に出力する。予測画像生成部６０８は、モード判定部６０７から入力された予測画像ＣＵを、残差演算部６０９に出力する。
【００４６】
図６の残差演算部６０９は、現在の処理ＣＵに対応する原画像（以下「原画像ＣＵ」と記載）と予測画像生成部６０８からの予測画像ＣＵとで、対応する画素毎に差分を演算することにより、予測残差画像のＣＵ（以下「予測残差画像ＣＵ」と記載）を生成する。
【００４７】
図６の直交変換・量子化部６１０は、予測残差画像ＣＵからＴＵサイズ単位（図５の説明を参照）で、ＤＣＴ変換、及び符号化モードによってはアダマール（Ｈｄａｍａｒｄ）変換の直交変換をかけ、空間周波数成分信号に変換する。これは画像の空間相関性により、空間周波数成分に変換することにより、低周波成分に信号が集まり情報量圧縮を行うことが可能となるからである。直交変換・量子化部６１０は、直交変換後の値に対して標本化を行い、係数値が０となる成分数を増やす。
【００４８】
図６の可変長符号化部６１１は、直交変換・量子化部６１０での量子化の結果として非０となった係数のみを、可変長符号化して出力する。可変長符号化部６１１は、ＣＡＢＡＣと呼ばれる出現確率に応じた最適な符号割当てを算出する符号化を実施する。これにより、どのような符号化ビット列に対しても、全体的に符号長を短くすることが可能となる。
【００４９】
図６の逆量子化・逆直交変換部６１２は、直交変換・量子化部６１０で量子化された後の係数を逆量子化し、更に逆量子化された周波数成分を逆直交変換により局所復号された予測残差画像に変換する。
【００５０】
図６の参照画像演算部６１３は、ＣＵ単位で、逆量子化・逆直交変換部６１２が出力する局所復号された予測残差画像の各画素値に予測画像生成部６０８が生成する予測画像ＣＵの対応する各画素値を加算する。これにより、参照画像演算部６１３は、局所復号された参照画像のＣＵを生成し、フレームメモリ６１４に蓄積する。
【００５１】
このようにして、復号化側と同等の処理画像が符号化側でも生成される。符号化側で生成された画像を局所復号画像と呼び、符号化側で復号化側と同一の処理画像を生成することにより、次のフレーム画像以降で差分符号化を行うことが可能となる。
【００５２】
図７は、図６の動画像符号化装置６００により実行されるイントラ予測に重点を置いた符号化処理の例を示すフローチャートである。以下、このフローチャートの説明において、随時図６の各部を参照する。
【００５３】
まず、隣接画素拡張部６０１は、現在設定されている処理ＣＵを分割して１つの処理ＰＵを決定し、その処理ＰＵが、長方形分割か、否(正方形分割)かを、決定する（ステップＳ７０１）。ＨＥＶＣまでの従来の符号化方式や、ＱＴＢＴの分割であってもイントラ予測を実施する単位が全て正方形であれば、この判定がＮＯとなる。
【００５４】
ステップＳ７０１の判定において長方形分割の判定がＹＥＳである場合は、隣接画素拡張部６０１は、前述した隣接画素拡張の処理を実行する（ステップＳ７０２）。ステップＳ７０１の判定において長方形分割の判定がＮＯである場合は、隣接画素拡張部６０１はステップＳ７０２の処理はスキップする。
【００５５】
続いて、図示しない制御部により、処理ＰＵについて、１つのイントラ予測モードが選択される（ステップＳ７０３）。イントラ予測モードは、ＨＥＶＣの場合図２に示される３５通りのうちの１つである。
【００５６】
次に、予測方向判定部６０２が、ステップＳ７０３で選択されたイントラ予測モードについて、そのイントラ予測モードに対応する元予測方向に対して正反対予測方向（図７では「正反対方向」と略記）が使用可能であるか否かを判定する（ステップＳ７０４）。この判定がＹＥＳになる場合は、次の全ての条件が満たされた場合である。まず、処理ＰＵとして長方形ブロックが選択されている（ステップＳ７０１の判定がＹＥＳである）場合である。かつ、ステップＳ７０３で現在選択されているイントラ予測モードが、図４で説明したモード番号２番から９番、又は３３番から２７番の何れかである場合である。かつ、ステップＳ７０３で現在選択されているイントラ予測モードに対応する元予測方向に対する正反対予測方向の画素位置に、隣接画素拡張部６０１での拡張処理により隣接画素が設定できた場合（その画素位置が原画像からはみ出していない場合）である。
【００５７】
ステップＳ７０４の判定がＹＥＳの場合、予測方向判定部６０２は、前述した図４で説明したステップ１の動作を実行する。これにより、予測方向判定部６０２は、元予測方向の隣接画素と処理ＰＵ内の予測対象画素との距離、及び正反対予測方向の隣接画素と処理ＰＵ内の予測対象画素との距離を、それぞれ計算する（ステップＳ７０５、Ｓ７０６）。これらの距離としては、元予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和、及び正反対予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和が計算される。
【００５８】
図８は、予測方向判定部６０２での距離算出動作の説明図である。ここでは、簡単な具体例について１つ説明する。ここで説明する例以外のイントラ予測モードに関しても、規格に沿った形で隣接予測画素と処理ＰＵ内の全ての予測対象画素との距離の総和を算出可能である。
【００５９】
今、処理ＰＵのサイズを［Ｘ，Ｙ］（Ｘ＜Ｙ）の長方形とする。また、隣接画素拡張部６０１（ステップＳ７０２）により拡張が行われた後の左隣接画素列及び上隣接画素列をそれぞれ、下記（３）式及び（４）式で定義する。
【００６０】
左隣接画素列：Ｐ［−１，−１］，Ｐ［−１，０］，Ｐ［−１，１］，
・・・，Ｐ［−１，ＸＸ］・・・（３）
上隣接画素列：Ｐ［−１，−１］，Ｐ［０，−１］，Ｐ［１，−１］，
・・・，Ｐ［ＹＹ、−１］・・・（４）
【００６１】
ここで、ＸＸないしＹＹは、ＸとＹの大きさの関係により決定する。従来通りの隣接画素の読み込みでは、ＸＸ＝２Ｘ＋１、ＹＹ＝２Ｙ＋１となるが、本実施形態では、図４の説明で示した、予測方向拡張として、モード番号３′番から９′番や、モード番号３３′番から２７′番のイントラ予測を実施するのに必要な画素数だけ、上隣接画素、もしくは、左隣接画素の追加読込みを実施する。モード番号９′番やモード番号２７′番の予測モード計算を実施する場合に、最も隣接画素の読出し数の増加(＝隣接画素拡張)を必要とするが、ここは予測モードの角度より、正確に追加画素数を計算してもよいし、ＸＸの画素拡張最大値は、４Ｘ＋１まで、以降は、Ｐ［−１，４Ｘ＋１］のリピートにより隣接画素を生成するような、隣接画素読出しの上限を定める定義にしてもよい。
【００６２】
更に、処理ＰＵ内の予測対象画素を、下記（５）式で定義する。
【００６３】
予測対象画素：Ｏ［０，０］，Ｏ［０，１］，
・・・，Ｏ［Ｘ−１，Ｙ−１］・・・（５）
【００６４】
ここで、ステップＳ７０３で選択されたイントラ予測モードの元予測方向が例えば、角度２２５度の左下方向からの方向であるとする。また、上記元予測方向に対する正反対予測方向が例えば、角度４５度の右上方向からの方向であるとする。
【００６５】
この例の場合、ステップＳ７０５で、元予測方向の左隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和Ｄleftは、下記（６）式の演算で算出される。ここで、「｜Ｐ（−１，ｉ＋ｊ＋１），Ｏ（ｉ，ｊ）｜」は、隣接画素Ｐ（−１，ｉ＋ｊ＋１）と予測対象画素Ｏ（ｉ，ｊ）の画素位置間距離を算出する演算を示す。
【００６６】
【数１】
2020182249.tif 000003
【００６７】
また上記例の場合、ステップＳ７０６で、正反対予測方向の上隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和Ｄupper は、下記（７）式の演算で算出される。ここで、「｜Ｐ（ｉ＋ｊ＋１，−１），Ｏ（ｉ，ｊ）｜」は、隣接画素Ｐ（ｉ＋ｊ＋１，−１）と予測対象画素Ｏ（ｉ，ｊ）の画素位置間距離を算出する演算を示す。
【００６８】
【数２】
2020182249.tif 000004
【００６９】
続いて、予測方向判定部６０２は、ステップＳ７０６で算出した正反対予測方向に対応する距離の総和が、ステップＳ７０５で算出した元予測方向に対応する距離の総和よりも小さいか否かを判定する（ステップＳ７０７）。ここでは、正反対予測方向の隣接画素のほうが、元予測方向の隣接画素よりも、全体として処理ＰＵに近いか否かが判定されることになる。
【００７０】
ステップＳ７０７の判定がＹＥＳの場合、図６のイントラ予測モード判定部６０３は、ステップＳ７０３で選択されているイントラ予測モードの元予測方向に対する正反対予測方向の隣接画素を参照する。そして、イントラ予測モード判定部６０３は、参照した隣接画素から、処理ＰＵの各予測対象画素の暫定的な予測値を決定することにより、前述した暫定予測画像ＰＵを生成する（以上、ステップＳ７０８）。
【００７１】
一方、ステップＳ７０７の判定がＮＯの場合、又は現在のイントラ予測モードに対応する元予測方向に対して正反対予測方向が使用可能ではなく前述したステップＳ７０４の判定がＮＯとなった場合には、イントラ予測モード判定部６０３は次の処理を実行する。イントラ予測モード判定部６０３は、ステップＳ７０３で選択されているイントラ予測モードの元予測方向の隣接画素を参照する。そして、イントラ予測モード判定部６０３は、参照した隣接画素から、処理ＰＵの各予測対象画素の暫定的な予測値を決定することにより、前述した暫定予測画像ＰＵを生成する（以上、ステップＳ７０９）。
【００７２】
次に、イントラ予測モード判定部６０３は、原画像ＰＵとステップＳ７０８又はＳ７０９で生成された暫定予測画像ＰＵの対応する画素間で、前述した（１）式の演算により差分絶対値和ＳＡＤ＿ｃｏｓｔを算出する。更に、イントラ予測モード判定部６０３は、その差分絶対値和ＳＡＤ＿ｃｏｓｔを用いた前述した（２）式の演算により、ステップＳ７０３で選択されている現在のイントラ予測モードに対応するコスト値（ｃｏｓｔ値）を算出する。続いて、イントラ予測モード判定部６０３は、ここで算出したコスト値が、いままでステップＳ７０３で選択されてきたイントラ予測モードに対して算出してきたコスト値よりも小さいか否かを判定する。そして、この判定がＹＥＳならば、イントラ予測モード判定部６０３は、ステップＳ７０３で選択されている現在のイントラ予測モードを、現在の処理ＰＵに対応するイントラ予測モードの暫定的な出力値とする。更に、図６のイントラ予測部６０４が、現在のイントラ予測モードに対してステップＳ７０８又はＳ７０９で生成されている暫定予測画像ＰＵを、現在の処理ＰＵに対応するイントラ予測による予測画像ＰＵの暫定的な出力値とする（以上、ステップＳ７１０）。
【００７３】
次に、特には図示しない制御部は、以上のステップＳ７０３からＳ７１０までの一連の処理が、選択可能な全てのイントラ予測モード（例えばＨＥＶＣの場合は図２の３５通り）に対して実行されたか否かを判定する（ステップＳ７１１）。
【００７４】
ステップＳ７１１の判定がＮＯならば、ステップＳ７０３の処理に戻って、次のイントラ予測モードに対するステップＳ７０３からＳ７１０までの一連の処理が実行される。
【００７５】
ステップＳ７１１の判定がＹＥＳになると、その時点でイントラ予測モード判定部６０３が出力しているイントラ予測モードの暫定的な出力値が、現在の処理ＰＵに対して最終的に決定されたイントラ予測モードの出力値とされる。更に、その時点でイントラ予測部６０４が出力している予測画像ＰＵの暫定的な出力値が、現在の処理ＰＵに対して最終的に決定されたイントラ予測による予測画像ＰＵの出力値とされる。
【００７６】
次に、特には図示しない制御部は、以上のステップＳ７０１からＳ７１１までの一連の処理が、処理ＣＵから分割される全ての処理ＰＵ（図５参照）に対して実行されたか否かを判定する（ステップＳ７１２）。
【００７７】
ステップＳ７１２の判定がＮＯならば、ステップＳ７０１の処理に戻って、処理ＣＵ内の次の処理ＰＵに対するステップＳ７０１からＳ７１１までの一連の処理が実行される。
【００７８】
ステップＳ７１２の判定がＹＥＳになると、処理ＣＵ内の全ての処理ＰＵについて、イントラ予測モードの決定と、そのイントラ予測モードを用いたイントラ予測による予測画像ＰＵの生成が完了し、現在の処理ＣＵに対応する予測画像ＣＵが決定する。
【００７９】
その後、処理ＣＵに対するブロック符号化の処理が実行される（ステップＳ７１３）。このステップＳ７１３では、以下の一連の処理が実行される。
【００８０】
まず、図６のモード判定部６０７は、前述した動きベクトル検出部６０５と動き補償部６０６によるインター予測処理で別途生成されているインター予測による予測画像ＰＵをＣＵにまとめた予測画像ＣＵを、動き補償部６０６から入力する。また、モード判定部６０７は、上記ステップＳ７１２までの繰返し処理によりイントラ予測部６０４から出力されるイントラ予測による予測画像ＰＵをＣＵにまとめた予測画素ＣＵを入力する。そして、モード判定部６０７は、上記インター予測による予測画像ＣＵとイントラ予測による予測画像ＣＵとを比較する。これにより、モード判定部６０７は、インター予測とイントラ予測のうち、現在の処理ＣＵを符号化するのにどちらの予測が最適かを決定する。そして、モード判定部６０７は、最適と判定した予測による予測画像ＣＵを、予測画像生成部６０８から残差演算部６０９に送る。
【００８１】
図６の残差演算部６０９は、現在の処理ＣＵに対応する原画像ＣＵと予測画像生成部６０８からの予測画像ＣＵとで、対応する画素毎に差分を演算することにより、予測残差画像ＣＵを生成する。
【００８２】
この予測残差画像ＣＵ内の各ＴＵ（図５参照）に対して、前述した図６の直交変換・量子化部６１０及び可変長符号化部６１１による符号化の処理が実行されることにより、処理ＣＵに対応する符号化された画像情報が出力される。
【００８３】
更に、前述した図６の逆量子化・逆直交変換部６１２及び参照画像演算部６１３による局所復号画像の生成及びフレームメモリ６１４への蓄積処理が実行される。
【００８４】
以上のステップＳ７１３での一連の処理が完了すると、図６の動画像符号化装置６００による図７のフローチャートで示される符号化の処理が完了する。
【００８５】
次に、図７のステップＳ７０５及びＳ７０６での距離計算処理の他の実施形態について説明する。上記説明では、これらの距離として、元予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和、及び正反対予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和が計算された。これに対して、上記距離として、元予測方向の隣接画素と処理ＰＵ内の最左上と最右下の予測対象画素の夫々との距離の和、及び正反対予測方向の隣接画素と処理ＰＵ内の最左上と最右下の予測対象画素の夫々との距離の和が計算されてもよい。この場合、ステップＳ７０３の説明で示した例において、前述した（６）式及び（７）式はそれぞれ、下記（８）式及び（９）式で置き換えられる。
【００８６】
Ｄleft＝｜Ｐ（−１，＋１），Ｏ（０，０）｜
＋｜Ｐ（−１，Ｘ＋Ｙ−１），Ｏ（Ｘ−１，Ｙ−１）｜  ・・・（８）
Ｄupper ＝｜Ｐ（１，−１），Ｏ（０，０）｜
＋｜Ｐ（Ｘ＋Ｙ−１，−１），Ｏ（Ｘ−１，Ｙ−１）｜  ・・・（９）
【００８７】
上記（８）式及び（９）式で示されるように、距離計算において、処理ＰＵの最左上と最右下の予測対象画素のみを使用することにより、距離計算の計算量を削減することが可能となる。
【００８８】
更に計算量を削減する場合には、上記距離として、元予測方向の隣接画素と処理ＰＵ内の最右下の予測対象画素との距離、及び正反対予測方向の隣接画素と処理ＰＵ内の最右下の予測対象画素との距離が計算されてもよい。
【００８９】
図９は、動画像復号装置の実施形態の構成例を示すブロック図である。図９に示される動画像復号装置９００は、可変長復号部９０１、モード復号部９０２、隣接画素拡張部９０３、予測方向判定部９０４、イントラ予測部９０５、動き補償部９０６、及び予測画像生成部９０７を含む。また、動画像復号装置９００は、予測残差復号部９０８、逆量子化・逆直交変換部９０９、復号画像演算部９１０、及びフレームメモリ９１１を含む。
【００９０】
図９において、まず可変長復号部９０１が、特には図示しない入力部より入力された符号化画像に対して可変長復号処理を実行する。この結果、可変長復号部９０１は、予測残差信号の符号情報を予測残差復号部９０８に、それ以外の情報をモード復号部９０２に出力する。
【００９１】
モード復号部９０２は、可変長復号部９０１から受け取った符号情報から、図５で説明した処理ＣＵ単位で、その処理ＣＵにインター予測が適用されているかイントラ予測が適用されているかを判定する。モード復号部９０２は、現在の処理ＣＵにインター予測が適用されていると判定した場合には、可変長復号部９０１から受け取った符号情報から動きベクトルの情報を復号して、復号した動きベクトルの情報を動き補償部９０６に入力させて、動き補償部９０６を動作させる。モード復号部９０２は、現在の処理ＣＵにイントラ予測が適用されていると判定した場合には、可変長復号部９０１から受け取った符号情報からイントラ予測モードの情報を復号して、復号したイントラ予測モードの情報を隣接画素拡張部９０３に入力させて、隣接画素拡張部９０３、予測方向判定部９０４、及びイントラ予測部９０５を動作させる。
【００９２】
上述のように、モード復号部９０２が現在の処理ＣＵにインター予測が適用されていると判定した場合には、動き補償部９０６が動作する。動き補償部９０６は、まず、処理ＣＵを分割した処理ＰＵ単位で、受信された符号化画像から動きベクトルを復号し、その動きベクトルに基づいて動き補償を行う。動き補償部９０６は、フレームメモリ９１１から読み出した参照画像を読み出して、処理ＣＵ及びそれを分割した処理ＰＵに対応する参照画像ＰＵを切り出す。動き補償部９０６は、その参照画像ＰＵに、復号した動きベクトルを適用する。これにより、動き補償部９０６は、現在の処理ＰＵに対応する予測画像ＰＵを生成し、インター予測による予測画像ＰＵとする。動き補償部９０６は、このインター予測による処理ＰＵ毎の予測画像ＰＵを処理ＣＵ全体で合成することにより、処理ＣＵに対するインター予測による予測画像ＣＵを生成して出力する。
【００９３】
一方、前述のように、モード復号部９０１が現在の処理ＣＵにイントラ予測が適用されていると判定した場合には、隣接画素拡張部９０３、予測方向判定部９０４、及びイントラ予測部９０５が動作する。
【００９４】
まず、隣接画素拡張部９０３は、図６の隣接画素拡張部６０１と同様の動作を実行する。隣接画素拡張部９０３は、処理ＣＵから分割される処理ＰＵが長方形ブロックである場合に、次の処理を実行する。隣接画素拡張部９０３は、その長方形ブロックが水平方向に長い場合には、その長方形ブロックの上隣接画素を、その長方形ブロックの長い辺を水平右方向に拡張した延長線に隣接する上のブロックに含まれる画素にまで拡張する（図４の説明を参照）。また、隣接画素拡張部９０３は、その長方形ブロックが垂直方向に長い場合には、その長方形ブロックの左隣接画素を、その長方形ブロックの長い辺を垂直下方向に拡張した延長線に隣接する左のブロックに含まれる画素にまで拡張する。なお、隣接画素拡張部９０３は、隣接画素値としては、フレームメモリ９１１から読み出した復号済みの参照画像の該当する位置の画素値を使用する。
【００９５】
次に、予測方向判定部９０４は、モード復号部９０２から隣接画素拡張部９０３を介して、処理ＣＵから分割される現在の処理ＰＵに対応する復号されたイントラ予測モードの情報を入力する。予測方向判定部９０４は、処理ＰＵが長方形ブロックである場合に、隣接画素拡張部９０３が設定した隣接画素値を用いて、前述した図４で説明したステップ１、２、及び３の動作を実行することにより、復号した予測モードに対応する元予測方向と正反対予測方向のうちの何れかの方向を選択する。
【００９６】
イントラ予測部９０５は、上記復号されたイントラ予測モードに対して、予測方向判定部９０４での判定を踏まえたイントラ予測方向の隣接画素を参照する。そして、イントラ予測部９０５は、参照した隣接画素から、処理ＰＵの各予測対象画素の予測値を決定し、予測画像ＰＵを生成する。イントラ予測部９０５は、イントラ予測による処理ＰＵ毎の予測画像ＰＵを処理ＣＵ全体で合成することにより、処理ＣＵに対するイントラ予測による予測画像ＣＵを生成して出力する。
【００９７】
予測画像生成部９０７は、動き補償部９０６又はイントラ予測部９０５から入力した予測画像ＣＵを、復号画像演算部９１０に出力する。
【００９８】
予測残差復号部９０８は、可変長復号部９０１から入力した符号化情報から予測残差信号を復号し、逆量子化・逆直交変換部９０９に出力する。
【００９９】
逆量子化・逆直交変換部９０９は、処理ＣＵを分割したＴＵ（図５参照）の単位で、予測残差復号部９０８から入力した空間周波数領域の予測残差信号を逆量子化し、更に逆量子化された周波数成分を逆直交変換により復号された予測残差画像に変換する。
【０１００】
復号画像演算部９１０は、上記復号されたＴＵ単位毎の予測残差画像を処理ＣＵの単位でまとめ（以下「予測残差画像ＣＵ」と記載）、その予測残差画像ＣＵを予測画像生成部９０７から入力する予測画像ＣＵに対応する画素単位で加算する。この結果、復号画像演算部９１０は、ＣＵ単位の復号画像（以下「復号画像ＣＵ」と記載）を復号し、更に１枚のフレーム画像に合成し、それをフレーム復号画像として出力すると共に、フレームメモリ９１１に復号済みの参照画像として蓄積する。
【０１０１】
図１０は、図９の動画像復号装置９００により実行されるイントラ予測に重点を置いた復号処理の例を示すフローチャートである。以下、このフローチャートの説明において、随時図９の各部を参照する。
【０１０２】
まず、隣接画素拡張部９０３は、モード復号部９０２が現在の処理ＣＵにイントラ予測が適用されていると判定し、かつ、処理ＣＵを分割した現在の処理ＰＵが、長方形分割か、否(正方形分割)かを、決定する（ステップＳ１００１）。ＨＥＶＣまでの従来の符号化方式や、ＱＴＢＴの分割であってもイントラ予測を実施する単位が全て正方形であれば、この判定がＮＯとなる。
【０１０３】
ステップＳ１００１の判定がＹＥＳである場合は、隣接画素拡張部９０３は、前述した隣接画素拡張の処理を実行する（ステップＳ１００２）。
【０１０４】
次に、予測方向判定部９０４が、モード復号部９０２から入力された復号されたイントラ予測モードについて、そのイントラ予測モードに対応する元予測方向に対して正反対予測方向（図１０では「正反対方向」と略記）が使用可能であるか否かを判定する（ステップＳ１００３）。この判定がＹＥＳになる場合は、次の全ての条件が満たされた場合である。まず、処理ＰＵに対してイントラ予測モードが適用されており、処理ＰＵとして長方形ブロックが選択されている（ステップＳ１００１の判定がＹＥＳである）場合である。かつ、復号されたイントラ予測モードが、図４で説明したモード番号２番から９番、又は３３番から２７番の何れかである場合である。かつ、復号されたイントラ予測モードに対応する元予測方向に対する正反対予測方向の画素位置に、隣接画素拡張部９０３での拡張処理により隣接画素が設定できた場合（その画素位置が原画像からはみ出していない場合）である。
【０１０５】
ステップＳ１００３の判定がＹＥＳの場合、予測方向判定部９０４は、前述した図４で説明したステップ１の動作を実行する。これにより、予測方向判定部９０４は、元予測方向の隣接画素と処理ＰＵ内の予測対象画素との距離、及び正反対予測方向の隣接画素と処理ＰＵ内の予測対象画素との距離を、それぞれ計算する（ステップＳ１００４、Ｓ１００５）。これらの処理は、図６の動画像符号化装置６００における図７のステップＳ７０５及びＳ７０６の場合と同じである。これらの距離としては、元予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和、及び正反対予測方向の隣接画素と処理ＰＵ内の全ての予測対象画素との距離の総和が計算される（図８の説明を参照）。また前述したように、上記距離として、元予測方向の隣接画素と処理ＰＵ内の最左上と最右下の予測対象画素の夫々との距離の和、及び正反対予測方向の隣接画素と処理ＰＵ内の最左上と最右下の予測対象画素の夫々との距離の和が計算されてもよい。更に前述したように、上記距離として、元予測方向の隣接画素と処理ＰＵ内の最右下の予測対象画素との距離、及び正反対予測方向の隣接画素と処理ＰＵ内の最右下の予測対象画素との距離が計算されてもよい。ただし、距離の計算基準は、図６の動画像符号化装置６００における図７のステップＳ７０５及びＳ７０６の場合と同一である必要がある。
【０１０６】
続いて、予測方向判定部９０４は、ステップＳ１００５で算出した正反対予測方向に対応する距離の総和が、ステップＳ１００４で算出した元予測方向に対応する距離の総和よりも小さいか否かを判定する（ステップＳ１００６）。この判定は、図７のステップＳ７０７の場合と同じである。
【０１０７】
ステップＳ１００６の判定がＹＥＳの場合、図９のイントラ予測部９０５は、復号されたイントラ予測モードの元予測方向に対する正反対予測方向の隣接画素を参照する。そして、イントラ予測部９０５は、参照した隣接画素から、処理ＰＵの各予測対象画素の予測値を決定し、予測画像ＰＵを生成する（以上、ステップＳ１００７）。
【０１０８】
一方、ステップＳ１００６の判定がＮＯの場合、又は復号されたイントラ予測モードに対応する元予測方向に対し正反対予測方向が使用可能ではなく前述のステップＳ１００３の判定がＮＯの場合には、イントラ予測部９０５はステップＳ１００８を実行する。或いは、処理ＰＵに対してイントラ予測モードが適用されていないか、処理ＰＵが長方形ブロックでなく前述のステップＳ１００１の判定がＮＯの場合にも、イントラ予測部９０５はステップＳ１００８を実行する。ステップＳ１００８において、イントラ予測部９０５は、復号されたイントラ予測モードの元予測方向の隣接画素を参照する。そして、イントラ予測部９０５は、参照した隣接画素から、処理ＰＵの各予測対象画素の予測値を決定することにより、予測画像ＰＵを生成する（以上、ステップＳ１００８）。
【０１０９】
次に、特には図示しない制御部は、以上のステップＳ１００１からＳ１００８までの一連の処理が、処理ＣＵから分割される全ての処理ＰＵ（図５参照）に対して実行されたか否かを判定する（ステップＳ１００９）。
【０１１０】
ステップＳ１００９の判定がＮＯならば、ステップＳ１００１の処理に戻って、処理ＣＵ内の次の処理ＰＵに対するステップＳ１００１からＳ１００８までの一連の処理が実行される。
【０１１１】
ステップＳ１００９の判定がＹＥＳになると、処理ＣＵ内の全ての処理ＰＵについて、復号されたイントラ予測モードを用いたイントラ予測による予測画像ＰＵの生成が完了し、現在のＣＵに対応する予測画像ＣＵが決定する。
【０１１２】
その後、その処理ＣＵに対するブロック復号の処理が実行される（ステップＳ１０１０）。このステップＳ１０１０では、前述した予測残差復号部９０８、逆量子化・逆直交変換部９０９、及び復号画像演算部９１０による処理ＣＵ内を分割したＴＵ単位でのブロック復号処理が実行される。この結果、復号画像演算部９１０は、処理ＣＵに対応する復号画像ＣＵを復号し、更に１枚のフレーム画像に合成し、それをフレーム復号画像として出力すると共に、フレームメモリ９１１に復号済みの参照画像として蓄積する。
【０１１３】
以上のステップＳ１０１０での一連の処理が完了すると、図９の動画像復号装置９００による図１０のフローチャートで示される復号の処理が完了する。
【０１１４】
図１１は、図６の動画像符号化装置６００又は図９の動画像復号装置９００を実現可能なコンピュータのハードウェア構成の一例を示す図である。
【０１１５】
図１１に示されるコンピュータは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０１、メモリ１１０２、入力装置１１０３、出力装置１１０４、補助情報記憶装置１１０５、可搬型記録媒体１１０９が挿入される媒体駆動装置１１０６、及びネットワーク接続装置１１０７を有する。これらの構成要素は、バス１１０８により相互に接続されている。同図に示される構成は上記動画像符号化装置６００又は動画像復号装置９００を実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。
【０１１６】
メモリ１１０２は、例えば、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。
【０１１７】
ＣＰＵ（プロセッサ）１１０１は、例えば、メモリ１１０２を利用して、図６の動画像符号化装置６００に用いられる例えば図７のフローチャートの処理又は図９の動画像復号装置９００に用いられる例えば図１０のフローチャートの処理に対応するプログラムを実行することにより、図６又は図９に示される各機能部として動作する。
【０１１８】
入力装置１１０３は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示又は情報の入力に用いられる。出力装置１１０４は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問合せ又は処理結果の出力に用いられる。
【０１１９】
補助情報記憶装置１１０５は、例えば、ハードディスク記憶装置、磁気ディスク記憶装置、光ディスク装置、光磁気ディスク装置、テープ装置、又は半導体記憶装置である。図６の動画像符号化装置６００又は図９の動画像復号装置９００は、補助情報記憶装置１１０５に図６の動画像符号化装置６００に用いられる例えば図７のフローチャートの処理又は図９の動画像復号装置９００に用いられる例えば図１０のフローチャートの処理を実行するプログラム及びデータを格納しておき、それらをメモリ１１０２にロードして使用することができる。
【０１２０】
媒体駆動装置１１０６は、可搬型記録媒体１１０９を駆動し、その記録内容にアクセスする。可搬型記録媒体１１０９は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体１１０９は、Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＣＤ−ＲＯＭ）、Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ（ＤＶＤ）、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体１１０９に上述のプログラム及びデータを格納しておき、メモリ１１０２にロードして使用することができる。
【０１２１】
このように、上述のプログラム及びデータを格納するコンピュータ読取り可能な記録媒体は、メモリ１１０２、補助情報記憶装置１１０５、又は可搬型記録媒体１１０９のような、物理的な（非一時的な）記録媒体である。
【０１２２】
ネットワーク接続装置１１０７は、例えばＬｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＬＡＮ）等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。図６の動画像符号化装置６００又は図９の動画像復号装置９００は、上述のプログラム又はデータを外部の装置からネットワーク接続装置１１０７を介して受信し、それらをメモリ１１０２にロードして使用することができる。
【０１２３】
なお、図６の動画像符号化装置６００又は図９の動画像復号装置９００が図１１の全ての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、オペレータ又はユーザからの指示又は情報を入力する必要がない場合は、入力装置１１０３が省略されてもよい。可搬型記録媒体１１０９又は通信ネットワークを利用しない場合は、媒体駆動装置１１０６又はネットワーク接続装置１１０７が省略されてもよい。
【０１２４】
以上説明した実施形態では、非正方形の処理ブロックである場合に、元予測方向のイントラ予測と正反対予測方向のイントラ予測とで、どちらがより近い予測画像を用いてイントラ予測ができるかを判断し、予測モードを増やさないイントラ予測を実現できる。これにより、長方形ブロックのイントラ予測について、効率の良い符号化を実現することが可能となる。
【０１２５】
上述の実施形態では、元予測方向に対する正反対予測方向が判定対象とされたが、必ずしも正反対方向に限られるものではない。これは、予測画素を生成する際に予測画素を求めるための方法（標準規格等で定められた方法）により、正確に１８０度ではなく１８０度付近を指す場合があるためである。
【０１２６】
また、条件が許せば、正反対予測方向に対応するイントラ予測モードを増やして、そのイントラ予測モードの情報が符号化されるようにしてもよい。
【０１２７】
以上説明した実施形態は、動画像に対する符号化及び復号に本発明を適用したものであるが、静止画像に対しても適用することが可能である。
【０１２８】
以上、開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができる。
【０１２９】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）
画像内で前記画像を分割したブロックを単位としてイントラ予測をし符号化を行う画像符号化装置であって、
前記ブロックとして長方形ブロックを選択するブロック選択部と、
前記長方形ブロックが選択された際に、前記長方形ブロックの短い辺に隣接する画素を参照する予測方向のうち、予測方向を１８０度反転したときに前記長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照する予測方向を、イントラ予測方向の選定対象に加える予測方向判定部と、
を備えることを特徴とする画像符号化装置。
（付記２）
前記隣接画素は、前記長方形ブロックが垂直方向に長い場合に、前記長方形ブロックの長い辺又は前記長い辺を垂直下方向に拡張した延長線に隣接する左のブロックに含まれ、前記長方形ブロックが水平方向に長い場合に、前記長方形ブロックの長い辺又は前記長い辺を水平右委方向に拡張した延長線に隣接する上のブロックに含まれる、ことを特徴とする付記１に記載の画像符号化装置。
（付記３）
前記予測方向判定部は、前記長方形ブロックについて、左下方向から右上方向への前記イントラ予測方向、又は右上方向から左下方向への前記イントラ予測方向を、前記選択の調整対象とする、ことを特徴とする付記１又は２に記載の画像符号化装置。
（付記４）
前記左下方向から右上方向へのイントラ予測方向は、前記長方形ブロック内の予測対象画素を基準にして、右水平方向を０度として反時計回りに１８０度から２２５度の角度方向であり、前記右上方向から左下方向へのイントラ予測方向は、前記予測対象画素を基準にして、反時計回りに４５度から９０度の角度方向である、ことを特徴とする付記３に記載の画像符号化装置。
（付記５）
前記予測方向判定部は、少なくとも前記選定対象として加えたイントラ予測方向と、加えたイントラ予測方向を１８０度反転した方向について、前記長方形ブロック内の全ての予測対象画素の夫々と前記隣接画素との距離の総和を、前記左下方向から右上方向へのイントラ予測方向と前記右上方向から左下方向へのイントラ予測方向の夫々について算出し、前記算出した各距離の総和のうち小さい方に対応するイントラ予測方向を前記選択の結果とする、ことを特徴とする付記２乃至４の何れかに記載の画像符号化装置。
（付記６）
前記予測方向判定部は、少なくとも前記選定対象として加えたイントラ予測方向と、加えたイントラ予測方向を１８０度反転した方向について、前記長方形ブロック内の最左上と最右下の予測対象画素の夫々と前記隣接画素との各距離の和を、前記左下方向から右上方向へのイントラ予測方向と前記右上方向から左下方向へのイントラ予測方向の夫々について算出し、前記算出した各距離の和のうち小さい方に対応するイントラ予測方向を前記選択の結果とする、ことを特徴とする付記２乃至４の何れかに記載の画像符号化装置。
（付記７）
前記予測方向判定部は、少なくとも前記選定対象として加えたイントラ予測方向と、加えたイントラ予測方向を１８０度反転した方向について、前記長方形ブロック内の最右下の予測対象画素と前記隣接画素との距離を、前記左下方向から右上方向へのイントラ予測方向と前記右上方向から左下方向へのイントラ予測方向のそれぞれについて算出し、前記算出した各距離のうち小さい方に対応するイントラ予測方向を前記選択の結果とする、ことを特徴とする付記２乃至４の何れかに記載の画像符号化装置。
（付記８）
前記予測方向判定部は、前記長方形ブロックが選択された際の予測方向を選定する際の処理として、長方形ブロックの短い辺に隣接する画素を参照する予測方向の内、予測方向を１８０度反転したときに前記長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照するイントラ予測方向となる長方形ブロックの短い辺に隣接する左又は上のブロックの画素を参照する方向に対しては、前記選択の対象から除外する、ことを特徴とする付記１に記載の画像符号化装置。
（付記９）
画像内で前記画像を分割したブロックを単位としてイントラ予測し復号を行う画像符号化装置であって、
前記ブロックとして長方形ブロックが選択されたことを判定するブロック判定部と、
前記長方形ブロックが選択された際のイントラ予測方向を選定する際に、前記長方形ブロックの短い辺に隣接する画素を参照する予測方向のうち、予測方向を１８０度反転したときに前記長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照する予測方向を、イントラ予測方向の選定対象に加える予測方向判定部と、
を備えることを特徴とする画像復号装置。
（付記１０）
画像内で前記画像を分割したブロックを単位としてイントラ予測し符号化又は復号を行う画像処理方法であって、
前記ブロックとして長方形ブロックが選択されたことを判定し、
前記長方形ブロックが選択された際のイントラ予測方向を選定する際の処理として、前記長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照するイントラ予測方向が選択されやすくなるように判定する、
ことを特徴とする画像処理方法。
（付記１１）
動画像符号化において予測モードで対応づけられたイントラ予測を行う方式について、
イントラ予測を実施する処理単位が、長方形となるか否かを判定するイントラ予測処理サイズ決定部と、
イントラ予測処理サイズ決定部で、長方形のブロックに対してイントラ予測を実施すると決定した場合に、各イントラ予測モードに関して、イントラ予測方向に応じた予測画像を生成する予測モードが使用可能であり、かつ、正反対方向からの予測も演算可能である場合に、
各予測モードに関して、正方向の予測モードからの予測方向と正反対方向からの予測方向のいずれを用いた方が、より近い隣接画像からのイントラ予測が使用可能かを判定する予測方向判定部と、
該予測方向判定手段により選択された予測方向を用いてイントラ予測モードを判定する、イントラ予測モード判定部と、
を備え、イントラ予測を行うことを特徴とする動画像符号化方法。
（付記１２）
動画像符号化において予測モードで対応づけられたイントラ予測を行う方式について、
イントラ予測を実施する処理単位が長方形を用いる予測モードであった場合に、
選択されたイントラ予測モードに関して、イントラ予測方向に応じた予測画像を生成する予測モードが使用可能であり、かつ、正反対方向からの予測も演算可能である場合に、
該選択された予測モードに関して、正方向の予測モードからの予測方向と正反対方向からの予測方向のいずれを用いた方が、より距離が近い隣接画像からのイントラ予測になるかを判定する予測方向判定部と、該予測方向判定手段により選択された予測方向を用いてイントラ予測を実施する
ことを特徴とする動画像復号方法。
（付記１３）
画像内で前記画像を分割したブロックを単位としてイントラ予測し符号化又は復号を行うコンピュータに、
前記ブロックとして長方形ブロックが選択されたことを判定するステップと、
前記長方形ブロックが選択された際のイントラ予測方向を選定する際の処理として、前記長方形ブロックの長い辺に隣接する左又は上のブロックの隣接画素を参照するイントラ予測方向が選択されやすくなるように判定するステップと、
を実行させることを特徴とする画像処理プログラム。
【符号の説明】
【０１３０】
６００  動画像符号化装置
６０１、９０３  隣接画素拡張部
６０２、９０４  予測方向判定部
６０３  イントラ予測モード判定部
６０４、９０５  イントラ予測部
６０５  動きベクトル検出部
６０６、９０６  動き補償部
６０７  モード判定部
６０８、９０７  予測画像生成部
６０９  残差演算部
６１０  直交変換・量子化部
６１１  可変長符号化部
６１２、９０９  逆量子化・逆直交変換部
６１３  参照画像演算部
６１４、９１１  フレームメモリ
９０１  可変長復号部
９０２  モード復号部
９０８  予測残差復号部
９１０  復号画像演算部
【図１】
2020182249.tif 000005
【図２】
2020182249.tif 000006
【図３】
2020182249.tif 000007
【図４】
2020182249.tif 000008
【図５】
2020182249.tif 000009
【図６】
2020182249.tif 000010
【図７】
2020182249.tif 000011
【図８】
2020182249.tif 000012
【図９】
2020182249.tif 000013
【図１０】
2020182249.tif 000014
【図１１】
2020182249.tif 000015