(57)【要約】【課題】イントラ予測のモード判定にイントラ予測対象ブロックの周辺画素の原画素値を使用した場合でも、演算量を増大させず最適な予測モードを選択する。【解決手段】イントラ予測信号生成部１１は、イントラ予測モード判定時に入力画像信号のイントラ予測対象ブロックの周辺画素の原画素値や符号化処理された後の再構成値に基づいて、予測モードに応じた予測画像を生成する。また、イントラ予測信号生成部１１は、イントラ予測モード実行時には、イントラ予測モード判定部１３で判定されたイントラ予測モードに従い、イントラ予測画像を生成する。予測誤差算出部１２は、予測画像と入力画像信号とから予測誤差信号を生成する。コスト補正部１４は、各予測モードに対するコスト補正値を検出しイントラ予測モード判定部１３へ出力する。イントラ予測モード判定部１３は、予測誤差信号とコスト補正値とに基づいて最適な予測モードを選択する。【選択図】図１
2010041191.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象の入力画像信号をそれぞれ予め定められた画素数の矩形領域である複数のブロックに分割し、各ブロック毎に予測モードを選択するイントラ予測モードの判定時に、前記複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の第１の画素値と、左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第２の画素値と、上側に隣接するブロックが存在する場合は、その上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第３の画素値とを利用して、予め用意されている複数の予測モードのそれぞれについて、イントラ予測画像を生成する第１のステップと、
前記イントラ予測モードの判定時に、前記複数の予測モードのそれぞれについて、前記第１のステップにより生成された前記イントラ予測画像と、前記一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力する第２のステップと、
前記イントラ予測モードの判定時に、少なくとも前記予測モードと前記イントラ予測対象のブロックに隣接するブロックの有無及び前記イントラ予測対象のブロックの位置をパラメータとして求まる補正モード及び量子化パラメータ値からルックアップテーブルを参照してコスト補正値を求める第３のステップと、
前記複数の予測モードのそれぞれについて前記第２のステップにより算出された前記予測誤差から予め定めた評価式を用いてコスト値を算出し、その算出したコスト値に前記第３のステップで求められた前記コスト補正値を加算して新たなコスト値とし、その新たなコスト値から、最小のコスト値を与える予測モードを当該予測対象ブロックのイントラ予測モードと判定する第４のステップと、
イントラ予測実行時に、前記第４のステップにより判定されたイントラ予測モードに従い、前記複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第１の再構成値、及び／又は左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第２の再構成値、及び／又は上側に隣接するブロックが存在する場合は、その上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第３の再構成値を利用して前記イントラ予測画像を生成する第５のステップと、
前記第５のステップにより生成された前記イントラ予測画像と、前記一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力する第６のステップと、
前記第６のステップで出力される前記予測誤差から前記評価式を用いて算出される値を第２のコスト値として算出する第７のステップと、
前記第４のステップで判定された前記最小のコスト値である第１のコスト値と前記第２のコスト値との差分をコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、前記ルックアップテーブル内の対応する前記補正モード及び量子化パラメータ値の前記コスト補正値に加算してそのコスト補正値を更新する第８のステップと
を含むことを特徴とする画像符号化方法。
【請求項２】
符号化対象の入力画像信号をそれぞれ予め定められた画素数の矩形領域である複数のブロックに分割し、各ブロック毎に予測モードを選択するイントラ予測モードの判定を行った後、イントラ予測実行により前記イントラ予測モードの判定で選択された予測モードを使用したイントラ予測により生成したイントラ予測画像と予測誤差を算出するイントラ予測手段と、
前記イントラ予測手段の前記イントラ予測実行時の前記イントラ予測画像とそのイントラ予測画像に対応した一のイントラ予測対象のブロックの入力画像との差分信号に対して、直交変換、量子化及びエントロピー符号化を順次に行って符号化信号を出力する符号化手段と、
前記直交変換及び量子化を順次に行って得られた信号に対して、逆量子化及び逆直交変換を行って、イントラ予測画像に加算し、前記符号化処理された後の再構成値を生成する復号手段と
を少なくとも備え、前記イントラ予測手段は、イントラ予測信号生成手段と、予測誤差算出手段と、イントラ予測モード判定手段と、コスト補正手段とを有し、
前記イントラ予測モードの判定時には、
前記イントラ予測信号生成手段は、前記複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接する前記復号画像信号中のブロックが存在する場合は、その左側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の第１の画素値と、左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第２の画素値と、上側に隣接するブロックが存在する場合は、その上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第３の画素値とを利用して、予め用意されている複数の予測モードのそれぞれについて、イントラ予測画像を生成し、
前記予測誤差算出手段は、前記複数の予測モードのそれぞれについて、前記イントラ予測信号生成手段により生成された前記イントラ予測画像と、前記一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力し、
前記コスト補正手段は、少なくとも前記予測モードと前記イントラ予測対象のブロックに隣接するブロックの有無及び前記イントラ予測対象のブロックの位置をパラメータとして求まる補正モード及び量子化パラメータ値からルックアップテーブルを参照してコスト補正値を求め、
前記イントラ予測モード判定手段は、前記複数の予測モードのそれぞれについて前記予測誤差算出手段により算出された前記予測誤差から予め定めた評価式を用いてコスト値を算出し、その算出したコスト値に前記コスト補正手段から出力された前記コスト補正値を加算して新たなコスト値とし、その新たなコスト値から、最小のコスト値を与える予測モードを当該予測対象ブロックのイントラ予測モードと判定し、その判定結果を前記イントラ予測信号生成手段へ出力すると共に、その判定されたイントラ予測モードに対応するコスト値を第１のコスト値として前記コスト補正手段へ出力し、
前記イントラ予測実行時には、
前記イントラ予測信号生成手段は、前記イントラ予測モード判定手段により判定されたイントラ予測モードに従い、前記複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第１の再構成値、及び／又は左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第２の再構成値、及び／又は上側に隣接するブロックが存在する場合は、その上側隣接ブロック内の前記イントラ予測対象のブロックに接する画素の符号化処理された後の第３の再構成値を利用して前記イントラ予測画像を生成し、
前記予測誤差算出手段は、前記イントラ予測信号生成手段により生成された前記イントラ予測画像と、前記一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力し、
前記イントラ予測モード判定手段は、前記予測誤差算出手段から出力された前記予測誤差から前記評価式を用いて算出される値を第２のコスト値として算出し、
前記コスト補正手段は、前記第１のコスト値と前記第２のコスト値との差分をコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、前記ルックアップテーブル内の対応する前記補正モード及び量子化パラメータ値の前記コスト補正値に加算してそのコスト補正値を更新することを特徴とする画像符号化装置。
【請求項３】
前記コスト補正手段は、
前記イントラ予測モードの判定時に、少なくとも前記予測モードと前記イントラ予測対象のブロックに隣接するブロックの有無及び前記イントラ予測対象のブロックの位置をパラメータとして求まる補正モード及び量子化パラメータ値からルックアップテーブルを参照してコスト補正値を求めるコスト補正値生成手段と、
前記イントラ予測実行時に、前記第１のコスト値と前記第２のコスト値との差分をコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、前記コスト補正値生成手段内の前記ルックアップテーブル内の対応する前記補正モード及び量子化パラメータ値の前記コスト補正値に加算してそのコスト補正値を更新するコスト補正値補正手段とを有し、
前記イントラ予測モード判定手段は、
前記イントラ予測モードの判定時は、前記複数の予測モードのそれぞれについて前記予測誤差算出手段により算出された前記予測誤差から予め定めた評価式を用いてコスト値を算出し、その算出したコスト値に前記コスト補正値生成手段から出力された前記コスト補正値を加算して新たなコスト値とし、前記イントラ予測実行時は、前記予測誤差算出手段から出力された前記予測誤差から前記評価式を用いて算出される値を前記第２のコスト値として算出するコスト算出手段と、
前記イントラ予測モードの判定時に、前記コスト算出手段により算出された前記複数の予測モードのそれぞれに対応した前記新たなコスト値から、最小のコスト値を与える予測モードを当該予測対象ブロックのイントラ予測モードと判定し、その判定結果を前記イントラ予測信号生成手段へ出力すると共に、その判定されたイントラ予測モードに対応するコスト値を前記第１のコスト値として前記コスト補正値補正手段へ出力するモード判定手段とを有することを特徴とする請求項２記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化方法及び画像符号化装置に係り、特にイントラ予測又は動き予測しながら順次符号化信号を生成する画像符号化方法及び画像符号化装置に関する。
【背景技術】
【０００２】
動画像圧縮規格の一つであるＨ.２６４／ＭＰＥＧ−４ ＡＶＣ(Moving Picture Experts Group-4 Advanced Video Coding)ではインター予測に加え、イントラ予測の技術が取り入れられている。上記のＨ.２６４／ＭＰＥＧ−４ ＡＶＣ規格の画像符号化を行う画像符号化装置は、入力画像信号をイントラ予測部及びインター予測部に供給し、それぞれにおいて予測画像データを生成する。そして、上記画像符号化装置は、上記の予測画像データの一方をスイッチにより選択して、入力画像信号と減算して予測誤差データを生成し、その予測誤差データを直交変換及び量子化した後エントロピー符号化して符号化信号を出力する。
【０００３】
ここで、イントラ予測は、同じ画面内の画像サンプルを用いて、別位置の画像サンプルを予測する画面内予測符号化方式である。このイントラ予測には、圧縮符号化機能としてメイン（Ｍａｉｎ）プロファイルやハイ（Ｈｉｇｈ）プロファイルなどが規定されている。メインプロファイルでは横方向４画素、縦方向４画素（以下、４×４画素と記す）のイントラ予測（Ｉｎｔｒａ４ｘ４）、及び横方向１６画素、縦方向１６画素（以下、１６×１６画素と記す）のイントラ予測（Ｉｎｔｒａ１６ｘ１６）の２つの予測タイプがある。また、ハイプロファイルでは、更に横方向８画素、縦方向８画素（以下、８ｘ８画素と記す）のイントラ予測（Ｉｎｔｒａ８ｘ８）も選択可能である。各予測タイプには複数の予測モードが存在し、モード判定により、最適な予測モードが選択される。なお、色差信号のイントラ予測（ＩｎｔｒａＣｈｒｏｍａ）は輝度信号とは別に８ｘ８画素のマクロブロック単位で行われ、色差信号ＣｂとＣｒで同じ予測方向となる。
【０００４】
イントラ予測では、符号化対象ブロックに対して、既に符号化された隣接ブロックの再構成された画素値を用いて予測値を生成する。従って、モード判定処理においても、再構成値から生成された予測値との差分を基にコスト計算を行い、最小コストを与えるモードを選択するのが望ましい。しかしながら、周辺の隣接ブロックの符号化及び再構成処理の完了を待つ必要があるために、パイプライン処理による高速化が難しいという問題がある。
【０００５】
この課題を解決するために、（ａ）イントラ予測対象のブロック領域に隣接する左側のブロック領域の右端の垂直方向の原画の画素データと、（ｂ）イントラ予測対象のブロック領域に隣接する上側のブロック領域の下端の水平方向の原画の画素データとの、少なくとも一方を利用してイントラ予測することにより、パイプライン処理を可能とし、イントラ予測を高速で行う技術が開示されている（例えば、特許文献１参照）。
【０００６】
また、１６×１６画素のマクロブロック（ＭＢ）単位のイントラ予測モードの決定プロセスにおいて、４×４画素のブロック単位のイントラ予測モードに対する評価値を求める際の誤差により正しい評価値が得られないことがあるという課題を解決するために、予測方向の異なる複数の４×４画素イントラ予測モードのそれぞれに対する一次評価値を算出し、その一次評価値に対して４×４画素ブロックの各々の位置に応じた評価係数を用いた重み付け加算を適用して二次評価値を計算し、その二次評価値を用いてマクロブロック毎の符号化用予測モードを決定する画像符号化装置も知られている（例えば、特許文献２参照）。
【０００７】
【特許文献１】特開２００７−１５０９１３号公報
【特許文献２】特開２００６−２７０４３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、原画の画素値を利用することによりイントラ予測を行う場合、符号化後の再構成値を利用して予測する場合と比べて、予測画像が大きく異なる場合がある。この誤差は量子化パラメータＱｐの値が大きいほど大きくなる傾向があり、そのために最適な予測モードが選択されず、符号量が増加したり、画質が劣化する可能性がある。
【０００９】
特許文献１に開示されている画像符号化装置では、これを改善するために、量子化パラメータＱｐが閾値ｋよりも大きいと判定した場合について、予測に利用される原画の画素値にフィルタ乗数αを乗算することにより、原画データをフィルタリングして解像度を低下させてからイントラ予測を行っている。しかしながら、特許文献１には閾値ｋ及びフィルタ乗数αの設定方法については開示されておらず不明であり、またフィルタ処理を行うことにより演算量の増大が問題となる。一方、特許文献２に開示されている画像符号化装置では、予測モード決定のために、一次評価値については何も補正していない。
【００１０】
本発明は以上の点に鑑みなされたもので、イントラ予測のモード判定にイントラ予測対象ブロックの周辺画素の原画素値を使用した場合でも、演算量を増大させず最適な予測モードを選択できる画像符号化方法及び画像符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するため、本発明の画像符号化方法は、符号化対象の入力画像信号をそれぞれ予め定められた画素数の矩形領域である複数のブロックに分割し、各ブロック毎に予測モードを選択するイントラ予測モードの判定時に、複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の第１の画素値と、左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第２の画素値と、上側に隣接するブロックが存在する場合は、その上側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第３の画素値とを利用して、予め用意されている複数の予測モードのそれぞれについて、イントラ予測画像を生成する第１のステップと、イントラ予測モードの判定時に、複数の予測モードのそれぞれについて、第１のステップにより生成されたイントラ予測画像と、一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力する第２のステップと、イントラ予測モードの判定時に、少なくとも予測モードとイントラ予測対象のブロックに隣接するブロックの有無及びイントラ予測対象のブロックの位置をパラメータとして求まる補正モード及び量子化パラメータ値からルックアップテーブルを参照してコスト補正値を求める第３のステップと、複数の予測モードのそれぞれについて第２のステップにより算出された予測誤差から予め定めた評価式を用いてコスト値を算出し、その算出したコスト値に第３のステップで求められたコスト補正値を加算して新たなコスト値とし、その新たなコスト値から、最小のコスト値を与える予測モードを当該予測対象ブロックのイントラ予測モードと判定する第４のステップと、イントラ予測実行時に、第４のステップにより判定されたイントラ予測モードに従い、複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第１の再構成値、及び／又は左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第２の再構成値、及び／又は上側に隣接するブロックが存在する場合は、その上側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第３の再構成値を利用してイントラ予測画像を生成する第５のステップと、第５のステップにより生成されたイントラ予測画像と、一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力する第６のステップと、第６のステップで出力される予測誤差から評価式を用いて算出される値を第２のコスト値として算出する第７のステップと、第４のステップで判定された最小のコスト値である第１のコスト値と第２のコスト値との差分をコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、ルックアップテーブル内の対応する補正モード及び量子化パラメータ値のコスト補正値に加算してそのコスト補正値を更新する第８のステップとを含むことを特徴とする。
【００１２】
また、上記の目的を達成するため、本発明の画像符号化装置は、符号化対象の入力画像信号をそれぞれ予め定められた画素数の矩形領域である複数のブロックに分割し、各ブロック毎に予測モードを選択するイントラ予測モードの判定を行った後、イントラ予測実行によりイントラ予測モードの判定で選択された予測モードを使用したイントラ予測により生成したイントラ予測画像と予測誤差を算出するイントラ予測手段と、イントラ予測手段のイントラ予測実行時のイントラ予測画像とそのイントラ予測画像に対応した一のイントラ予測対象のブロックの入力画像との差分信号に対して、直交変換、量子化及びエントロピー符号化を順次に行って符号化信号を出力する符号化手段と、直交変換及び量子化を順次に行って得られた信号に対して、逆量子化及び逆直交変換を行って、イントラ予測画像に加算し、符号化処理された後の再構成値を生成する復号手段とを少なくとも備え、上記イントラ予測手段は、イントラ予測信号生成手段と、予測誤差算出手段と、イントラ予測モード判定手段と、コスト補正手段とを有し、
イントラ予測モードの判定時には、
イントラ予測信号生成手段は、複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の第１の画素値と、左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第２の画素値と、上側に隣接するブロックが存在する場合は、その上側隣接ブロック内のイントラ予測対象のブロックに接する画素の原画像の値又は符号化処理された後の再構成値のいずれかである第３の画素値とを利用して、予め用意されている複数の予測モードのそれぞれについて、イントラ予測画像を生成し、予測誤差算出手段は、複数の予測モードのそれぞれについて、イントラ予測信号生成手段により生成されたイントラ予測画像と、一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力し、コスト補正手段は、少なくとも予測モードとイントラ予測対象のブロックに隣接するブロックの有無及びイントラ予測対象のブロックの位置をパラメータとして求まる補正モード及び量子化パラメータ値からルックアップテーブルを参照してコスト補正値を求め、イントラ予測モード判定手段は、複数の予測モードのそれぞれについて予測誤差算出手段により算出された予測誤差から予め定めた評価式を用いてコスト値を算出し、その算出したコスト値にコスト補正手段から出力されたコスト補正値を加算して新たなコスト値とし、その新たなコスト値から、最小のコスト値を与える予測モードを当該予測対象ブロックのイントラ予測モードと判定し、その判定結果をイントラ予測信号生成手段へ出力すると共に、その判定されたイントラ予測モードに対応するコスト値を第１のコスト値としてコスト補正手段へ出力し、
イントラ予測実行時には、
イントラ予測信号生成手段は、イントラ予測モード判定手段により判定されたイントラ予測モードに従い、複数のブロックのうち一のイントラ予測対象のブロックに対して、左側に隣接するブロックが存在する場合は、その左側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第１の再構成値、及び／又は左上側に隣接するブロックが存在する場合は、その左上側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第２の再構成値、及び／又は上側に隣接するブロックが存在する場合は、その上側隣接ブロック内のイントラ予測対象のブロックに接する画素の符号化処理された後の第３の再構成値を利用してイントラ予測画像を生成し、予測誤差算出手段は、イントラ予測信号生成手段により生成されたイントラ予測画像と、一のイントラ予測対象のブロックの画像信号との差分を予測誤差として出力し、イントラ予測モード判定手段は、予測誤差算出手段から出力された予測誤差から評価式を用いて算出される値を第２のコスト値として算出し、コスト補正手段は、第１のコスト値と第２のコスト値との差分をコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、ルックアップテーブル内の対応する補正モード及び量子化パラメータ値のコスト補正値に加算してそのコスト補正値を更新することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、イントラ予測のモード判定にイントラ予測対象ブロックの周辺画素の原画素値を使用した場合でも、各予測モードのコストに、補正モードや量子化パラメータを考慮した補正値を加えることにより、演算量を増大させず最適な予測モードを選択できる。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の一実施の形態について、図面を参照して詳細に説明する。
【００１５】
図１は、本発明になる画像符号化装置の一実施の形態のブロック図を示す。同図に示すように、本実施の形態の画像符号化装置１は、イントラ予測部１０、インター予測部１５、減算器１８、符号化制御部１９、スイッチ２０、変換部２１、量子化部２２、エントロピー符号化部２３、逆量子化部２４、逆変換部２５、加算器２６、ループフィルタ２７、フレームメモリ２８ａ及び２８ｂから構成されている。イントラ予測部１０は、イントラ予測信号生成部１１、予測誤差算出部１２、イントラ予測モード判定部１３、及びコスト補正部１４から構成されている。本実施の形態は、コスト補正部１４を備える点に特徴がある。また、インター予測部１５は、動き補償部１６及び動き検出部１７から構成されている。
【００１６】
次に、本実施の形態の動作について説明する。入力画像信号は、イントラ予測部１０、インター予測部１５、減算器１８及び符号化制御部１９にそれぞれ入力される。イントラ予測部１０及びインター予測部１５のそれぞれにおいて生成された予測画像データは、スイッチ２０の端子ａ、ｂに入力される。スイッチ２０は、符号化制御部１９によりスイッチング制御され、上記のイントラ予測部１０及びインター予測部１５のそれぞれにおいて予測実行時の予測画像データのうち、いずれか一方の予測画像データを選択する。
【００１７】
減算器１８は、スイッチ２０で選択された予測画像データを入力画像信号から減算し、予測誤差データを生成する。変換部２１は減算器１８によって得られた予測誤差データを直交変換する。量子化部２２は、変換部２１により直交変換されたデータを量子化し、量子化されたデータをエントロピー符号化部２３及び逆量子化部２４にそれぞれ入力する。エントロピー符号化部２３は、量子化されたデータをエントロピー符号化して符号化信号を生成して出力する。
【００１８】
一方、逆量子化部２４は、量子化されたデータを逆量子化して、量子化される前のデータに戻す。逆変換部２５は、逆量子化部２４により逆量子化されたデータを逆直交変換して、予測誤差データを再生成する。加算器２６は、逆変換部２５から出力された、再生成された予測誤差データを、スイッチ２０で選択された予測画像データと加算することにより、復号画像信号を生成する。フレームメモリ２８ａは、加算器２６から出力された復号画像信号を蓄積する。ループフィルタ２７は、加算器２６から出力された復号画像信号に対してブロック境界部で生じる歪を減少させるためのデブロッキングの処理を行って再構成データを生成し、その再構成データをフレームメモリ２８ｂに蓄積する。フレームメモリ２８ａは、蓄積したデータはイントラ予測部１０内のイントラ予測信号生成部１１に与える。フレームメモリ２８ｂは蓄積したデータをインター予測部１５内の動き補償部１６及び動き検出部１７に参照画像データとして供給する。
【００１９】
インター予測部１５内の動き検出部１７は、入力画像信号とフレームメモリ２８ｂに蓄積されている参照画像データとのブロックマッチングにより動きベクトルを検出し、検出した動きベクトルを動き補償部１６に供給する。動き補償部１６は、上記の動きベクトルから動き補償を行い、インター予測画像を生成して、スイッチ２０の端子ｂに出力する。
【００２０】
一方、イントラ予測部１０内のイントラ予測信号生成部１１は、イントラ予測モード判定時に入力画像信号のイントラ予測対象ブロックの周辺画素の原画素値やフレームメモリ２８ａに蓄積されている参照画像データ（符号化処理された後の再構成値）とに基づいて、予測モードに応じた予測画像を生成する。また、イントラ予測信号生成部１１は、イントラ予測実行時には、イントラ予測モード判定部１３で判定されたイントラ予測モードに従い、イントラ予測画像を生成して、スイッチ２０の端子ａに出力する。
【００２１】
予測誤差算出部１２は、予測画像と入力画像信号とから予測誤差信号を生成する。コスト補正部１４は、各予測モードに対するコスト補正値を検出しイントラ予測モード判定部１３へ出力する。イントラ予測モード判定部１３は、予測誤差算出部１２からの予測誤差信号とコスト補正部１４からのコスト補正値とに基づいて、複数の予測モードの中から最適な予測モードを選択する。イントラ予測信号生成部１１は、イントラ予測モード判定時に選択された予測モードのイントラ予測画像を出力する。
【００２２】
図２は、イントラ予測部１０内のイントラ予測モード判定部１３及びコスト補正部１４の一実施の形態の詳細ブロック図を示す。イントラ予測モード判定部１３は、コスト算出部１３１及びモード判定部１３２から構成される。コスト補正部１４は、コスト補正値補正部１４１及びコスト補正値生成部１４２から構成される。
【００２３】
図１中の予測誤差算出部１２より出力された予測誤差信号が、図２のイントラ予測モード判定部１３内のコスト算出部１３１へ入力される。イントラ予測モード判定部１３は、イントラ予測モードの判定処理（イントラ予測モード判定）を行って予測タイプ及び予測モードを選択した後、選択した予測タイプ及び予測モードを使用してイントラ予測と予測誤差の算出（イントラ予測実行）を行う。
【００２４】
イントラ予測モード判定時には、コスト算出部１３１は、後述するように任意の予測モードに対し、予測誤差信号とコスト補正値生成部１４２においてルックアップテーブルを参照して求められたコスト補正値とからコストを算出し、第１のコスト値としてモード判定部１３２へ出力する。一方、イントラ予測モード判定時には、モード判定部１３２は、複数の予測モードの中からコスト算出部１３１から入力された第１のコスト値に基づき最適な予測モードを選択し、図1中のイントラ予測信号生成部１１へ出力すると共に、選択された予測モードの第１のコスト値を、図２中のコスト補正値補正部１４１へ出力する。
【００２５】
イントラ予測実行時には、後述するように、コスト算出部１３１は、選択された予測モードに対して、予測誤差信号からコストを算出し、第２のコスト値として、コスト補正値補正部１４１へ出力する。コスト補正値補正部１４１は、上記の第１のコスト値及び第２のコスト値からコスト誤差を検出する。コスト補正値生成部１４２は、コスト誤差に基づきコスト補正値のルックアップテーブルを更新する。
【００２６】
次に、Ｈ.２６４／ＭＰＥＧ−４ ＡＶＣで規定されているイントラ予測の予測タイプと予測モードの詳細について説明する。前述したように、イントラ予測には、輝度信号に対し４×４画素のイントラ予測（Ｉｎｔｒａ４×４）と、８×８画素のイントラ予測（Ｉｎｔｒａ８×８）と、１６×１６画素のイントラ予測（Ｉｎｔｒａ１６×１６）との、最大３つの予測タイプが存在し、その予測タイプの選択は１６×１６画素のマクロブロック毎に行われる。
【００２７】
まず、Ｉｎｔｒａ４×４の予測タイプについて説明する。Ｉｎｔｒａ４×４の予測タイプでは、図３（ａ）において、１６×１６画素のマクロブロックを構成する０〜１５で示す１６個のブロック（１個のブロックは４×４画素）をその数字の順に予測符号化する。また、Ｉｎｔｒａ４×４の予測タイプでは、図４に示すように、イントラ予測対象のブロック（符号化対象ブロック）に対して、左、上、右上、左上の符号化済みの周辺ブロックＡ、Ｂ、Ｃ、Ｄ内の黒丸で示す画素が予測に使用される。また、図５（ａ）〜（ｉ）は、Ｉｎｔｒａ４×４の予測タイプにおける予測モード０〜予測モード８の全部で９種類の予測モードに対応した予測方向を示す。同図中、白四角が符号化対象の４×４画素、斜線の四角が近傍ブロックの既に符号化されている画素を示す。例えば、図５（ａ）に示す予測モード０は、既に符号化されている画素Ａ、Ｂ、Ｃ、Ｄの各画素値のそれぞれを、同じ列の符号化対象の４つの画素の予測値とする予測モードである。
【００２８】
また、予測タイプがＩｎｔｒａ４ｘ４の場合、図６（ａ）に示す１６個のブロックからなるマクロブロック（ＭＢ）において、上側の隣接マクロブロックに接する４×４画素のブロック０，１，４および５については、イントラ予測に使用されるデータは、図６（ｂ）に示すように、参照する符号化済みの周辺画素Ａ〜ＨおよびＸは再構成値、周辺画素Ｉ〜Ｌは原画素値を使用する。ここで、再構成値とは、図１のフレームメモリ２８ａから出力される符号化信号を復号して得られた、符号化処理された後の画素値である。また、原画素値とは、入力画像信号の原画像の画素値である。また、図６（ａ）に示す数字は、図３（ａ）に示した数字と同様に、マクロブロック内における４×４画素の各ブロックの予測符号化の順番を示す。
【００２９】
一方、図６（ａ）に示す上記以外の４×４画素のブロック２，３，６，７〜１５については、図６（ｃ）に示すように、周辺画素Ａ〜ＬおよびＸの全てについて原画素値を使用する。これにより、例えばブロック１のイントラ予測符号化では、図６（ａ）に示すマクロブロックの上側に隣接するマクロブロック中の、同図（ａ）に示すブロック１の上側と右上側の隣接ブロックの下端４画素Ａ〜Ｄ、Ｅ〜Ｈ、左上の隣接ブロックの右下の１画素Ｘの各再構成値と、同図（ａ）に示すブロック１の左側の隣接ブロック０の右端４画素Ｉ〜Ｌの原画素値を用いる。また、例えば図６（ａ）に示すブロック９のイントラ予測符号化では、ブロック３の下端４画素Ａ〜Ｄ、ブロック６の下端４画素Ｅ〜Ｈ、ブロック８の右端４画素Ｉ〜Ｌ、ブロック２の右下１画素Ｘの各原画素を用いる。
【００３０】
次に、Ｉｎｔｒａ８×８の予測タイプについて説明する。Ｉｎｔｒａ８×８の予測タイプでは、図３（ｂ）において、１６×１６画素のマクロブロックを構成する０〜３で示す４個のブロック（１個のブロックは８×８画素）をその数字の順に予測符号化する。また、Ｉｎｔｒａ８×８の予測タイプも、Ｉｎｔｒａ４×４の予測タイプと同様に、図４に示すように、予測対象ブロックに対して、左、上、右上、左上の符号化済みの周辺ブロックＡ、Ｂ、Ｃ、Ｄ内の黒丸で示す画素が予測に使用される。ただし、Ｉｎｔｒａ８×８の予測タイプではブロックの大きさが８×８画素である点がＩｎｔｒａ４×４の予測タイプと異なる。
【００３１】
また、Ｉｎｔｒａ８ｘ８の予測タイプでは、画素数が異なるだけでＩｎｔｒａ４ｘ４の予測タイプと同様であり、図３（ｂ）の上側の隣接マクロブロックに接する８ｘ８ブロック０及び１については、イントラ予測に使用されるデータは、上側の周辺画素は再構成値、左側の周辺画素は原画素値を使用し、８ｘ８ブロック２及び３については、全ての周辺画素は原画素値を使用する。更に、Ｉｎｔｒａ８ｘ８の予測タイプでも、各８ｘ８ブロックにおいて図５（ａ）〜（ｉ）に示した９種類の予測モードで予測を行う。
【００３２】
次に、Ｉｎｔｒａ１６ｘ１６の予測タイプについて説明する。Ｉｎｔｒａ１６×１６の予測タイプでは、図７（ａ）〜（ｄ）に示すように、上側に隣接するマクロブロックの下端１６画素と、左側に隣接するマクロブロックの右端１６画素の画素値を用いて、４種類の予測モード０〜３の中から一つが選択されて予測符号化が行われる。１マクロブロック当たり１個の予測モードを持つことになる。このＩｎｔｒａ１６ｘ１６の予測タイプの場合は、予測対象マクロブロックに対して、上側に隣接するマクロブロックの下端１６画素は再構成値、左側に隣接するマクロブロックの右端１６画素は原画素値が使用される。
【００３３】
なお、図７（ａ）の予測モード０は同じ列の周辺画素の再構成値を予測符号化に用いる予測モード、同図（ｂ）の予測モード１は同じ行の周辺画素の原画素値を予測符号化に用いる予測モード、同図（ｃ）の予測モード２は隣接する周辺の３２画素の各画素値の平均値を予測符号化に用いる予測モード、同図（ｄ）の予測モード３は上側に隣接する１６画素と左側に隣接する１６画素を斜め方向に画素値を内挿して予測する予測モードである。
【００３４】
次に、色差信号のイントラ予測（ＩｎｔｒａＣｈｒｏｍａ）について説明する。ＩｎｔｒａＣｈｒｏｍａの単位は８ｘ８画素のマクロブロックであり、図８（ａ）〜（ｄ）に示す４種類の予測モードの中から一つが選択される。１マクロブロック当り１個の予測モードを持つことになる。ＩｎｔｒａＣｈｒｏｍａの予測モードは、サイズが異なるだけで輝度信号のＩｎｔｒａ１６ｘ１６の予測タイプと同様な４種類であるが、図８（ａ）〜（ｄ）に示すように、Ｉｎｔｒａ１６ｘ１６の予測タイプとは、予測方向と予測モードの対応が異なる。
【００３５】
次に、コストについて説明する。イントラ予測の各予測タイプには前述した複数の予測モードが存在し、その中で最適な予測モードを選択する必要がある。更に、インター予測も含めたマクロブロックの予測タイプの中から最適な予測タイプを選ぶ必要がある。そのために、一般にコスト関数を定義して各予測モード、予測タイプのコストを求め、コストが最小となるものを選択する。
【００３６】
以下にコスト関数を示す。（ａ）〜（ｄ）は、各イントラ予測の予測モード判定に使用されるコスト関数であり、（ｅ）〜（ｈ）は、マクロブロックの予測タイプ判定の際に使用されるコスト関数である。
（ａ）Ｉｎｔｒａ４ｘ４の予測モードに対するコスト
cost4×4(IMODE)＝distortion4×4(IMODE)＋QP2Quant(Qp)×R(IMODE)     （１）
IMODE：予測モード
R(IMODE)：ＩＭＯＤＥの選択に伴う発生符号量
QP2Quant：量子化パラメータＱｐから量子化スケールへの変換式
distortion4ｘ4：予測誤差から求めた４ｘ４画素ブロックの歪量を表す値
ＳＡＤ（予測誤差の絶対値和）あるいはＳＡＴＤ（予測誤差を４ｘ４アダマール
変換した後の絶対値和）などが使用される
（ｂ）Ｉｎｔｒａ８ｘ８の予測モードに対するコスト
cost8×8(IMODE)＝distortion8×8(IMODE)＋QP2Quant(Qp)×R(IMODE)     （２）
distortion8ｘ8：予測誤差から求めた８ｘ８画素ブロックの歪量を表す値
ＳＡＤ（予測誤差の絶対値和）あるいはＳＡＴＤ（予測誤差を８ｘ８アダマール
変換した後の絶対値和）などが使用される
（ｃ）Ｉｎｔｒａ１６ｘ１６の予測モードに対するコスト
cost16×16(IMODE)＝SATD16×16(IMODE)                              （３）
SATD16×16：予測誤差を４ｘ４アダマール変換した後の絶対値和＋ＤＣ係数の４ｘ４アダマール変換した後の絶対値和
（ｄ）ＩｎｔｒａＣｈｒｏｍａの予測モードに対するコスト
【００３７】
【数１】
2010041191.tif 000003
（ｅ）予測タイプＩｎｔｒａ４ｘ４のコスト
【００３８】
【数２】
2010041191.tif 000004
（ｆ）予測タイプＩｎｔｒａ８ｘ８のコスト
【００３９】
【数３】
2010041191.tif 000005
（ｇ）予測タイプＩｎｔｒａ１６ｘ１６のコスト
J(Intra16×16)＝cost16×16(best_IMODE)＝SATD16×16(best_IMODE)  (7)
best_IMODE:最小コストを与える予測モード
（ｈ）インター予測タイプのコスト
J(TYPE)＝distortion＋QP2Quant(Qp)×R(TYPE)              （８）
distortion：予測誤差から求めた歪量を表す値
ＳＡＤ（予測誤差の絶対値和）あるいはＳＡＴＤ
（予測誤差をアダマ−ル変換後の絶対値和）などが使用される
R：ＴＹＰＥ（予測タイプ）の選択に伴う発生符号量
【００４０】
次に、本実施の形態の要部であるイントラ予測モード判定時と、イントラ予測実行時のイントラ予測部１０の動作について詳細に説明する。
【００４１】
前述したように、イントラ予測モード判定部１３は、イントラ予測モードの判定処理（イントラ予測モード判定）を行って予測タイプ及び予測モードを選択した後、選択した予測タイプ及び予測モードを使用してイントラ予測と予測誤差の算出（イントラ予測実行）を行う。
【００４２】
そこで、まず、イントラ予測モード判定時の動作について説明する。このイントラ予測モード判定時には、イントラ予測信号生成部１１は、図４、図６と共に説明したように、（１）イントラ予測対象のブロックに隣接する左側のブロック（図４のＡ）が存在する場合、この左側隣接ブロックの内で右端に位置し、イントラ予測対象のブロックに接する図４に黒丸で示す画素の原画素値と、（２）イントラ予測対象のブロックに隣接する左上側のブロック（図４のＤ）が存在する場合、この左上側隣接ブロック内で右下端に位置し、イントラ予測対象のブロックに接する図４に黒丸で示す画素の原画素値（図６のケースIIの場合）又は符号化処理された後の再構成値（図６のケースIの場合）のいずれかと、（３）イントラ予測対象のブロック画像に隣接する上側のブロック（図４のＢ）が存在する場合、この上側隣接ブロック内で下端に位置し、イントラ予測対象のブロックに接する図４に黒丸で示す画素の原画素値（図６のケースIIの場合）又は符号化処理された後の再構成値（図６のケースIの場合）いずれか、を利用して、予め用意されている複数の予測モードのうち、任意の予測モードについてイントラ予測画像を生成して予測誤差算出部１２へ出力する。
【００４３】
なお、Ｈ.２６４／ＭＰＥＧ−４ ＡＶＣでは図４に示したように、イントラ予測対象のブロック（符号化対象ブロック）の右上のブロックＣの下端の画素も参照して符号化対象ブロックの画素値を予測するが、上記のイントラ予測信号生成部１１によるイントラ予測画像の生成に際しては、上記のブロックＣの有無は後述する補正モードの決定に影響を与えないため、ブロックＣの画素は用いない（後述するイントラ予測実行時も同様）。但し、ブロックＣの画素はイントラ予測画像の生成には用いられる。
【００４４】
予測誤差算出部１２は、イントラ予測信号生成部１１から入力された各予測モードのイントラ予測画像のそれぞれについて、入力イントラ予測画像と入力画像信号中の予測対象ブロックの原画像との差分を予測誤差信号として生成してイントラ予測モード判定部１３内のコスト算出部１３１へ出力する。
【００４５】
一方、コスト補正部１４内のコスト補正値生成部１４２は、少なくとも予測モードと、予測対象ブロックに隣接する周辺ブロックの有無、及びマクロブロック内での予測対象ブロックの位置から補正モードを検出する。図９は補正モードの一例を示す。図９に示す補正モードは、Ｉｎｔｒａ４×４の予測タイプにおける補正モードで、前述した９種類の予測モードと、予測対象ブロックの位置と、図４に示した各隣接ブロックの有無との関係から定められている。
【００４６】
更に、コスト補正値生成部１４２は、予測対象マクロブロックまたはその左側に隣接するマクロブロックの量子化パラメータＱｐと、上記の補正モードとからルックアップテーブルを参照してコスト補正値を生成し、そのコスト補正値をコスト算出部１３１へ出力する。コスト補正値の初期値は補正モード毎に予め決められる。例えば、図１０に示すように、コスト補正値は、量子化パラメータＱｐの増加に伴い大きくなる値である。また、このコスト補正値は、補正モードと量子化パラメータＱｐとの組み合わせに対して設定される。例えば、Ｉｎｔｒａ４×４の場合、補正モードは図９に示したように２２種類あり、量子化パラメータＱｐは、０〜５５の値（５２種類の値）をとるので、２２×５２の組み合わせのそれぞれについて、一つのコスト補正値が設定される。
【００４７】
コスト算出部１３１は、Ｉｎｔｒａ４×４の予測タイプでは、９種類の予測モードのそれぞれについて予め定めた評価式を用いた式（１）を使用してコストを算出し、コスト補正値生成部１４２により生成された上記のコスト補正値を加算して新たなコスト値を算出する。モード判定部１３２は、各４ｘ４画素のブロック毎に、各予測モードのコスト値を比較し、最小のコスト値を与える予測モードを選択すると共に、選択した予測モードのコストを第１のコスト候補として、コスト算出部１３１内のメモリに記憶する。また、コスト算出部１３１は、式（５）の右辺のΣで示す部分に相当する、各４ｘ４画素のブロックのコスト（メモリに記憶した第１のコスト候補）を積算して、Ｉｎｔｒａ４ｘ４の予測タイプのコストを算出する。
【００４８】
また、コスト算出部１３１は、Ｉｎｔｒａ８×８の予測タイプについても、予め定めた評価式を用いた式（２）を使用してコストを算出し、そのコストに、コスト補正値生成部１４２により生成されたコスト補正値を加算して新たなコスト値を算出する。モード判定部１３２は、各８ｘ８画素のブロック毎に、各予測モードのコスト値を比較し、最小のコスト値を与える予測モードを選択すると共に、選択した予測モードのコストを第１のコスト候補として、コスト算出部１３１内のメモリに記憶する。また、コスト算出部１３１は、式（６）の右辺の加算記号シグマで示す部分に相当する、各８ｘ８画素のブロックのコスト（メモリに記憶した第１のコスト候補）を積算して、Ｉｎｔｒａ８ｘ８の予測タイプのコストを算出する。
【００４９】
更に、コスト算出部１３１は、Ｉｎｔｒａ１６×１６の予測タイプについては、予め定めた評価式を用いた式（３）を使用して各予測モードのコストを算出し、そのコストに、コスト補正値生成部１４２により生成されたコスト補正値を加算して新たなコスト値を算出する。モード判定部１３２は、１６ｘ１６画素のブロック毎に、各予測モードのコスト値を比較し、最小のコスト値を与える予測モードを選択すると共に、選択した予測モードのコストを第１のコスト候補として、コスト算出部１３１内のメモリに記憶する。この第１のコスト候補は、式（７）に示したように、Ｉｎｔｒａ１６ｘ１６の予測タイプのコストである。
【００５０】
最後に、モード判定部１３２は、コスト算出部内のメモリに記憶した上記の３種類の各予測タイプのコストを比較し、マクロブロック単位で最小のコストを与える予測タイプを選択する。選択された予測タイプ、及びその予測タイプに伴う各予測ブロックの予測モードは、イントラ予測信号生成部１１へ与えられる。また、モード判定部１３２は、第１のコスト候補の中から、選択された予測タイプに対応するものを第１のコストとして、コスト補正値補正部１４１へ出力する。
【００５１】
一方、色差信号は輝度信号とは独立に予測モードが選択される。色差信号の場合、８ｘ８画素の予測対象マクロブロックに対して、上側の周辺画素は再構成値、左側の周辺画素は原画素値が使用される。コスト算出部１３１は、予め定めた評価式を用いた式（４）を使用して図７の４種類の予測モードのそれぞれについてコストを算出し、そのコストに、コスト補正値生成部１４２により生成されたコスト補正値を加算して新たなコスト値を算出する。モード判定部１３２は、８ｘ８画素のブロック毎に、各予測モードのコスト値を比較し、最小のコスト値を与える予測モードを選択すると共に、選択した予測モードのコストを色差信号の第１のコストとして、コスト補正値補正部１４１へ出力する。
【００５２】
次に、イントラ予測実行時の動作について説明する。このイントラ予測実行時には、イントラ予測信号生成部１１は、イントラ予測モード判定部１３で判定されたイントラ予測モード及び予測タイプに従い、（１）イントラ予測対象のブロックに隣接する左側のブロックが存在する場合、この左側隣接ブロック内で右端に位置し、イントラ予測対象のブロックに接する画素の符号化処理された後の再構成値、及び／又は（２）イントラ予測対象のブロックに隣接する左上側のブロックが存在する場合、この左上側隣接ブロック内で右下端に位置し、イントラ予測対象のブロックに接する画素の符号化処理された後の再構成値、及び／又は（３）イントラ予測対象のブロック画像に隣接する上側のブロックが存在する場合、この上側隣接ブロック内で下端に位置し、イントラ予測対象のブロックに接する画素の符号化処理された後の再構成値を利用して、イントラ予測画像を生成して予測誤差算出部１２へ出力する。
【００５３】
予測誤差算出部１２は、上記のイントラ予測画像と入力画像信号中の予測対象ブロックの原画像との差分を予測誤差信号として生成してイントラ予測モード判定部１３内のコスト算出部１３１へ出力する。
【００５４】
コスト算出部１３１は、イントラ予測実行時には、式（１）〜式（７）のうちイントラ予測モード判定部１３で判定されたイントラ予測モード及び予測タイプに従い式を用いてコスト値を算出し、算出したそのコスト値を第２のコスト値としてコスト補正値補正部１４１へ出力する。
【００５５】
コスト補正値補正部１４１は、前記第１のコスト値と上記の第２のコスト値との差分（これは負の値もとり得る）を補正モードと対応させてコスト誤差として検出する。予測タイプがＩｎｔｒａ４ｘ４またはＩｎｔｒａ８ｘ８の場合は、各４ｘ４画素あるいは８ｘ８画素のブロック毎にコスト誤差を求める。但し、同じ補正モードのブロックが複数ある場合は、それらのコスト誤差の平均値あるいは中央値を、その補正モードに対応するコスト誤差として算出する。
【００５６】
そして、コスト補正値補正部１４１は、検出した上記コスト誤差に、「１」以下の値の重み付け係数を掛けた値を、ルックアップテーブルの対応する補正モードおよび量子化パラメータ値のコスト補正値に加算することにより、前記ルックアップテーブルの対応するコスト補正値を更新する。
【００５７】
これにより、本実施の形態によれば、例えば、イントラ予測モード判定において、Ｉｎｔｒａ４×４の予測タイプが選択された場合、４×４画素のブロック毎に補正モードとコスト誤差とを検出する。例えば、図６（ａ）のブロック３の場合、図６（ｂ）のケースIIとなり、上側隣接ブロック（ブロック１）と左側隣接ブロック（ブロック２）は共に有りとなるので、ブロック３のＩｎｔｒａ４×４の予測モードとして、モード２が選択されたとすると、図９より補正モードは９となる。ブロック３に対する第１のコストは、予測モード判定時に式（１）を使用して求められており、メモリに記憶されている。
【００５８】
そして、イントラ予測実行時には、第２のコストが算出され、第１のコストと第２のコストの差分を予測モード判定時に求めた補正モードに対するコスト誤差として検出し、そのコスト誤差に重み付け係数を掛けた値を、ルックアップテーブルの対応する補正モードと量子化パラメータ値のコスト補正値に加算して、ルックアップテーブルの対応するコスト補正値を更新する。この動作は、マクロブロック内の全ての４×４画素のブロックについて行われる。
【００５９】
なお、インター・ピクチャの場合、予測タイプはインター予測タイプも選択可能であり、イントラ予測タイプの最小コストと、式（８）を使用して算出されるインター予測タイプの最小コストを比較し、イントラ予測タイプのコストが小さい場合はイントラ予測が、インター予測タイプのコストが小さい場合はインター予測が選択される。インター予測が選択された場合は、コスト補正値補正の処理は行わない。
【００６０】
次に、本実施の形態の効果について説明する。マクロブロックの演算量は、特許文献１の場合、フィルタ処理が行われるのは６５（＝１６×４＋１）画素で、処理には少なくとも３タップのフィルタが使用されると考えられるので、少なくとも１９５（＝６５×３）回の乗算と、１３０（＝６５×２）回の加減算が必要と考えられる。
【００６１】
これに対し、本実施の形態では、例えば、Ｉｎｔｒａ４×４の予測モードの場合、式（１）のdistortionの演算にＳＡＤを使用する場合、第１のコストと第２のコストとの差分の算出のために加減算が１６回（第２のコストを算出するための予測誤差は符号化の過程で算出済み、又は式（１）の右辺第２項は第１のコストと第２のコストで変化しないと考えられるので、ＳＡＤ算出のために加算１５回、コスト差分算出のために減算１回）、またコスト補正値更新のために乗算１回、加算１回、更にコスト補正のため加算１回が必要となり、結局１個のマクロブロックあたりでは、１６（＝１×１６）回の乗算と、２８８（＝（１６＋１＋１）×１６）回の加減算が必要となる。
【００６２】
以上の２つの例を比較すると、本実施の形態の方が加減算の回数がやや多くなるが、負荷が大きい乗算の回数を減らすことができ、また、加減算の回数と乗算の回数の和の回数でも少なくできる。従って、本実施の形態によれば、特許文献１記載の画像符号化装置に比べて、イントラ予測のモード判定にイントラ予測対象ブロックの周辺画素の原画素値を使用した場合でも、各予測モードのコストに、補正モードや量子化パラメータを考慮した補正値を加えることにより、演算量を増大させず最適な予測モードを選択できるという効果を得ることができる。
【００６３】
また、本実施の形態によれば、補正値は補正モード及び量子化パラメータ値に応じてルックアップテーブルを参照して求められ、また、補正値補正の処理によりルックアップテーブルが更新されるので、画像の特性に応じて適応的に最適な値に設定できる。更に、本実施の形態によれば、Ｉｎｔｒａ４ｘ４及びＩｎｔｒａ８ｘ８における各予測ブロックの予測モード判定は、マクロブロック内の他のブロックのイントラ予測処理の終了を待つ必要がなく、全て同時に開始することができ、処理のパイプライン化が実現できる。
【００６４】
なお、本発明は以上の実施の形態に限定されるものではなく、例えば、図１の画像符号化装置１の符号化処理をコンピュータにより実行させるコンピュータプログラムも含むものである。この場合、そのコンピュータプログラムは記録媒体からコンピュータに取り込んだり、ネットワークを介して配信されたものをコンピュータにダウンロードするようにしてもよい。
【図面の簡単な説明】
【００６５】
【図１】本発明の画像符号化装置の一実施の形態のブロック図である。
【図２】図１中のイントラ予測モード判定部及びコスト補正部の一実施の形態のブロック図である。
【図３】Ｈ.２６４／ＭＰＥＧ−４ ＡＶＣで規定されているＩｎｔｒａ４×４の予測タイプと８×８の予測タイプのマクロブロック内のサブブロックの符号化順序を示す図である。
【図４】予測タイプＩｎｔｒａ４ｘ４に使用される画素を示す図である。
【図５】予測タイプＩｎｔｒａ４ｘ４の予測モードと予測方向を示す図である。
【図６】予測タイプＩｎｔｒａ４ｘ４に使用される周辺画素を示す図である。
【図７】予測タイプＩｎｔｒａｌ１６ｘ１６の予測モードと予測方向を示す図である。
【図８】ＩｎｔｒａＣｈｒｏｍａの予測モードと予測方向を示す図である。
【図９】予測タイプＩｎｔｒａ４ｘ４の補正モードの一例を示す図である。
【図１０】コスト補正値と量子化パラメータＱｐとの関係の一例を示す図である。
【符号の説明】
【００６６】
１  画像符号化装置
１０  イントラ予測部
１１  イントラ予測信号生成部
１２  予測誤差算出部
１３  イントラ予測モード判定部
１４  コスト補正部
１５  インター予測部
１６  動き補償部
１７  動き検出部
１８  減算器
１９  符号化制御部
２０  スイッチ
２１  変換部
２２  量子化部
２３  エントロピー符号化部
２４  逆量子化部
２５  逆変換部
２６  加算器
２７  ループフィルタ
２８ａ、２８ｂ  フレームメモリ
１３１  コスト算出部
１３２  モード判定部
１４１  コスト補正値補正部
１４２  コスト補正値生成部
【図１】
2010041191.tif 000006
【図２】
2010041191.tif 000007
【図３】
2010041191.tif 000008
【図４】
2010041191.tif 000009
【図５】
2010041191.tif 000010
【図６】
2010041191.tif 000011
【図７】
2010041191.tif 000012
【図８】
2010041191.tif 000013
【図９】
2010041191.tif 000014
【図１０】
2010041191.tif 000015