(57)【要約】【課題】画面内予測符号化における予測モードの予測的中率を向上させることにより，符号化効率を向上させる。【解決手段】予測モードの予測部１２では，予測モードから推定可能なエッジの連続性に着目し，流入ベクトル有りのブロック抽出部１２１によって，符号化対象ブロックに隣接する符号化済みブロックの予測方向を表す予測ベクトルが符号化対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りの符号化済みブロックを抽出し，ブロック選択及び予測値生成部１２２によって，抽出した符号化済みブロックの予測モードの中から１つを選択して符号化対象ブロックの予測モードの予測値とする。【選択図】図１
2010056701.tif 000002
【特許請求の範囲】
【請求項１】
画面内予測を用いて画像を符号化する画面内予測符号化方法であって，
符号化対象ブロックに隣接する符号化済みブロックにおける予測モードから決定される予測角度と所定の閾値との比較により，予測方向を表す予測ベクトルが符号化対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りの符号化済みブロックを抽出する過程と，
前記抽出された流入ベクトル有りの符号化済みブロックの予測モードの中から１つを選択することで符号化対象ブロックの予測モードの予測値を生成する過程とを有する
ことを特徴とする画面内予測符号化方法。
【請求項２】
請求項１に記載の画面内予測符号化方法において，
前記流入ベクトル有りの符号化済みブロックを抽出する過程では，
所定の設定値または外部から与えられた設定値に応じて，前記流入ベクトルの有無の判定対象とする符号化済みブロックを選択し，選択された符号化済みブロックに対してのみ流入ベクトルの有無を判定する
ことを特徴とする画面内予測符号化方法。
【請求項３】
請求項１または請求項２に記載の画面内予測符号化方法において，
前記予測モードの予測値を生成する過程では，
前記流入ベクトル有りの符号化済みブロックが複数存在する場合に，それらの各符号化済みブロックと符号化対象ブロックとの距離が近いほど優先順序が高くなるように設定された優先順序に従って，予測値として用いる予測モードを持つ符号化済みブロックを選択する
ことを特徴とする画面内予測符号化方法。
【請求項４】
請求項１または請求項２に記載の画面内予測符号化方法において，
前記予測モードの予測値を生成する過程では，
前記流入ベクトル有りの符号化済みブロックが複数存在する場合に，前記符号化済みブロックにおける参照画素におけるエッジを検出し，最もエッジが強く現れる方向の予測モードを持つ符号化済みブロックの予測モードを，符号化対象ブロックの予測モードの予測値とする
ことを特徴とする画面内予測符号化方法。
【請求項５】
画面内予測を用いて画像を復号する画面内予測復号方法であって，
復号対象ブロックに隣接する復号済みブロックにおける予測モードから決定される予測角度と所定の閾値との比較により，予測方向を表す予測ベクトルが復号対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りの復号済みブロックを抽出する過程と，
前記抽出された流入ベクトル有りの復号済みブロックの予測モードの中から１つを選択することで復号対象ブロックの予測モードの予測値を生成する過程とを有する
ことを特徴とする画面内予測復号方法。
【請求項６】
請求項５に記載の画面内予測復号方法において，
前記流入ベクトル有りの復号済みブロックを抽出する過程では，
所定の設定値または外部から与えられた設定値に応じて，前記流入ベクトルの有無の判定対象とする復号済みブロックを選択し，選択された復号済みブロックに対してのみ流入ベクトルの有無を判定する
ことを特徴とする画面内予測復号方法。
【請求項７】
請求項５または請求項６に記載の画面内予測復号方法において，
前記予測モードの予測値を生成する過程では，
前記流入ベクトル有りの復号済みブロックが複数存在する場合に，それらの各復号済みブロックと復号対象ブロックとの距離が近いほど優先順序が高くなるように設定された優先順序に従って，予測値として用いる予測モードを持つ復号済みブロックを選択する
ことを特徴とする画面内予測復号方法。
【請求項８】
請求項５または請求項６に記載の画面内予測復号方法において，
前記予測モードの予測値を生成する過程では，
前記流入ベクトル有りの復号済みブロックが複数存在する場合に，前記復号済みブロックにおける参照画素におけるエッジを検出し，最もエッジが強く現れる方向の予測モードを持つ復号済みブロックの予測モードを，復号対象ブロックの予測モードの予測値とする
ことを特徴とする画面内予測復号方法。
【請求項９】
画面内予測を用いて画像を符号化する画面内予測符号化装置であって，
符号化対象ブロックに隣接する符号化済みブロックにおける予測モードから決定される予測角度と所定の閾値との比較により，予測方向を表す予測ベクトルが符号化対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りの符号化済みブロックを抽出する手段と，
前記抽出された流入ベクトル有りの符号化済みブロックの予測モードの中から１つを選択することで符号化対象ブロックの予測モードの予測値を生成する手段とを備える
ことを特徴とする画面内予測符号化装置。
【請求項１０】
画面内予測を用いて画像を復号する画面内予測復号装置であって，
復号対象ブロックに隣接する復号済みブロックにおける予測モードから決定される予測角度と所定の閾値との比較により，予測方向を表す予測ベクトルが復号対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りの復号済みブロックを抽出する手段と，
前記抽出された流入ベクトル有りの復号済みブロックの予測モードの中から１つを選択することで復号対象ブロックの予測モードの予測値を生成する手段とを備える
ことを特徴とする画面内予測復号装置。
【請求項１１】
請求項１から請求項４までのいずれか１項に記載の画面内予測符号化方法を，コンピュータに実行させるための画面内予測符号化プログラム。
【請求項１２】
請求項１１に記載の画面内予測符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
請求項５から請求項８までのいずれか１項に記載の画面内予測復号方法を，コンピュータに実行させるための画面内予測復号プログラム。
【請求項１４】
請求項１３に記載の画面内予測復号プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，画像・映像符号化における画面内予測の圧縮効率向上に関する発明である。同一の画面内で予測を実行する画面内予測符号化は，異なるフレーム間で予測を実行するフレーム間予測符号化と比較して大きな圧縮効率を達成できない。そのため，より圧縮効率の高い画面内予測符号化方式が望まれている。
【背景技術】
【０００２】
画像・映像符号化における画面内予測は，映像符号化国際標準Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（非特許文献１参照）から取り入れられている手法であり，この手法を用いることにより，隣接画素間の相関を利用してエッジ部分に発生しやすい高周波成分を除去し，差分の振幅を効率的に抑えることができる。画面内予測は，いくつかの画素をまとめたブロック単位で行われ，Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ  ＦＲＥｘｔ（非特許文献２参照，以降Ｈ．２６４）では，輝度信号に対して１６×１６のマクロブロック内を４×４，８×８，１６×１６の３種類のブロックサイズで分割・予測を行う。
【０００３】
これらの輝度信号に対して，４×４，８×８のブロックには９種類の予測モードが，１６×１６のブロックには４種類の予測モードが適用可能であり，ラグランジュコストの計算により最も符号化効率が高い予測モードとブロックサイズが決定される。４×４，８×８ブロックでは，１種類のＤＣ成分と４５°〜２０６．５７°の予測角度間を８種類に不等角度で分割したときに生じる直線と交差する復号済みの各画素値・画素間中心値を参照することで予測値の生成を実現している。
【０００４】
図２０に，輝度信号の符号化に使用される４×４ブロックに適用可能な９種類の予測モード０〜８とその予測角度を示す。
【０００５】
ここで，予測モード０〜２では，図２１（ａ）に定義する符号化対象ブロックの上に位置するブロックの持つ画素Ａ，Ｂ，Ｃ，Ｄの値と，図２１（ａ）に定義する符号化対象ブロックの左に位置するブロックの持つ画素Ｉ，Ｊ，Ｋ，Ｌの値を使って，符号化対象ブロックの持つ画素ａ〜ｐの値を予測する。
【０００６】
また，予測モード３〜８では，これらの画素Ａ，Ｂ，Ｃ，Ｄ，Ｉ，Ｊ，Ｋ，Ｌの値と，図２１（ａ）に定義する符号化対象ブロックの左上に位置するブロックの持つ画素Ｘの値と，図２１（ａ）に定義する符号化対象ブロックの右上に位置するブロックの持つ画素Ｅ，Ｆ，Ｇ，Ｈの値とに基づいて，図２１（ｂ）に示すように，それらの画素Ｘ，Ａ〜Ｌの値に対応付けられる値Ｘ′，Ａ′〜Ｌ′を算出するとともに，図２１（ａ）に定義する符号化対象ブロックの左下に位置するブロックの持つ画素Ｍの値に対応付けられる値Ｍ′を算出し，さらに，画素間中心に対応付けられる値Ａ″〜Ｆ″，Ｉ″〜Ｌ″を算出して，それらの値Ｘ′，Ａ′〜Ｍ′，Ａ″〜Ｆ″，Ｉ″〜Ｌ″を使って符号化対象ブロックの持つ画素ａ〜ｐの値を予測する。
【０００７】
すなわち，図２０に示すように，予測モード０では，画素Ａ，Ｂ，Ｃ，Ｄの値を予測角度９０°の方向（垂直方向）にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード１では，画素Ｉ，Ｊ，Ｋ，Ｌの値を予測角度１８０°の方向（水平方向）にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード２では，（Ａ＋Ｂ＋Ｃ＋Ｄ＋Ｉ＋Ｊ＋Ｋ＋Ｌ＋４）／８の値に従って符号化対象ブロックの持つ画素ａ〜ｐの値を予測する。
【０００８】
また，予測モード３では，画素値に対応付ける形で算出した参照値（Ｂ′〜Ｈ′）を予測角度４５°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード４では，画素値に対応付ける形で算出した参照値を予測角度１３５°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測する。
【０００９】
そして，予測モード５では，画素値に対応付ける形で算出した参照値と画素間中心に対応付ける形で算出した参照値とを予測角度１１６．５７°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード６では，画素値に対応付ける形で算出した参照値と画素間中心に対応付ける形で算出した参照値とを予測角度１５３．４３°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード７では，画素値に対応付ける形で算出した参照値と画素間中心に対応付ける形で算出した参照値とを予測角度６３．４３°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測し，予測モード８では，画素値に対応付ける形で算出した参照値と画素間中心に対応付ける形で算出した参照値とを予測角度２０６．５７°の方向にコピーすることで符号化対象ブロックの持つ画素ａ〜ｐの値を予測する。
【００１０】
このようにして，従来技術では，画面内予測符号化を実行する場合に，４×４，８×８のブロックでは，１種類のＤＣ成分を参照することで予測信号を生成することに加えて，４５°〜２０６．５７°の予測角度範囲を８種類に不等角度で分割したときに生じる直線と交叉する復号済みの各画素値・画素間中心値を参照することで予測信号の生成を実現している。
【００１１】
図２２に，従来手法の映像符号化方式における符号化処理のフローチャートを示す。以下，図２２に従って，従来技術の映像符号化処理について説明する。
【００１２】
まず，ステップＳ８０１では，ラグランジュコスト最小値Ｌmin を＋∞で，ラグランジュコストが最小値をとる時のビット列Ｒbestを０で初期化し，ステップＳ８０２において，符号化対象ブロックに隣接するブロックから予測モードの予測値（以下，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅ）を求める。次に，ステップＳ８０３にて，ラグランジュコストを最小化する予測モード番号ｎを検出するためのループを行う（従来手法の画面内予測は９パターンのため，ｎ∈［０，１，... ，８］のループ）。
【００１３】
このループでは，まずステップＳ８０４において，予測モードｎのときに生成されるビット列Ｒを０で初期化し，ステップＳ８０５で，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅとｎとの比較により条件分岐を行う。これらが一致した場合には，ステップＳ８０６にてＲに１ビットの予測フラグを付加し，一致しない場合には，ステップＳ８０７にてＲに１ビットの予測フラグと，ｎの予測方向を示す３ビットの補正値を加える。
【００１４】
続いて，ステップＳ８０８にて符号化対象ブロックにおける各画素の予測値を生成して予測残差を求め，ステップＳ８０９で予測残差のＤＣＴ，量子化，符号化を行い，生成されたビットをＲに付加する。続いてステップＳ８１０でＲのビット数と原画像との誤差からラグランジュコストＬcost（非特許文献３，４参照）を算出する。
【００１５】
次に，ステップＳ８１１においてラグランジュコスト最小値Ｌmin とＬcostとの比較を行い，ＬcostがＬmin より小さければ，ステップＳ８１２にてＬmin をＬcostに，ＲbestをＲに更新する。以上のステップＳ８０４〜Ｓ８１２の処理を，ｎ＝０から８までの各予測モードｎについて繰り返す。
【００１６】
従来手法では，ステップＳ８０２において，図２３に示すように符号化対象ブロックの上に隣接するブロック（以下，ＢｌｏｃｋＡ）の予測モードをＰｒｅｄＭｏｄｅＡ，左に隣接するブロック（以下，ＢｌｏｃｋＢ）の予測モードをＰｒｅｄＭｏｄｅＢとおき，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅを，次の式１によって決定している（非特許文献１，ｐ．１０２，式８−４２に記載）。
【００１７】
Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅ
＝ｍｉｎ（ＰｒｅｄＭｏｄｅＡ，ＰｒｅｄＭｏｄｅＢ）            …（式１）
すなわち，ＢｌｏｃｋＡとＢｌｏｃｋＢの予測モードのうち，小さいほうを予測モードの予測値（Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅ）としている。
【００１８】
また，符号化対象ブロックに隣接する符号化済みブロックにおける予測モードから符号化対象ブロックの予測モードを予測するために１ビットのフラグを使用している。符号化対象ブロックにおける予測モードがＰｒｅｄ＿ＰｒｅｄＭｏｄｅと一致する場合には，ステップＳ８０６に示すように１ビットのフラグのみで記述可能であり，異なる場合には，ステップＳ８０７に示すように１ビットのフラグに加えて残りの８種類のいずれかを示す符号を３ビットの補正値として固定長符号化を行うため，計４ビットで記述される。
【非特許文献１】ITU-T Rec. H.264｜ISO/IEC 14496-10 version 1（2003）
【非特許文献２】ITU-T Rec. H.264｜ISO/IEC 14496-10 version 4（2005）
【非特許文献３】H.264 Reference Software JM ver. 13.2 Encoder ，http://iphome.hhi.de/suehring/tml/，2008
【非特許文献４】H.264 Reference Software KTA ver.1.9 Encorder, http://iphome.hhi.de/suehring/tml/, 2008
【発明の開示】
【発明が解決しようとする課題】
【００１９】
従来手法では，式１を用いて画面内予測における予測モードの予測値を生成しているため，例えばＰｒｅｄＭｏｄｅＡ，Ｂのいずれかに図２０に記載の縦方向の予測（予測モード０：Ｉｎｔｒａ４ｘ４ＰｒｅｄＭｏｄｅ０）が存在する場合，最も優先的に縦方向の予測がＰｒｅｄ＿ＰｒｅｄＭｏｄｅとして適用される。
【００２０】
図２４〜図２６は，適用される予測モード０，７による予測残差の比較を説明するための図である。図２４は原画像の画素値を示し，図２５は符号化対象ブロックを予測モード０で画面内符号化したときの予測画素値と予測残差を示し，図２６は符号化対象ブロックを予測モード７で画面内符号化したときの予測画素値と予測残差を示している。
【００２１】
ここで，図２４における現画像の中央下の４×４ブロックを符号化する状況を考える。ＰｒｅｄＭｏｄｅＡは予測モード７，ＰｒｅｄＭｏｄｅＢは予測モード０で予測されていると仮定する。このとき従来手法では，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅには予測モード０が選択されるが，画像のエッジに着目したとき，符号化対象ブロックは予測モード７をＰｒｅｄ＿ＰｒｅｄＭｏｄｅとしたほうが，３ビットの補正値が不要になることが容易に予想できる。
【００２２】
このように，従来手法の画面内予測における予測モードの予測値生成手法では，予測が外れるケースが数多く存在し，ＰｒｅｄＭｏｄｅの補正のために１ビットのフラグと３ビットの補正値の計４ビットの記述が必要になるため符号量が増加する可能性が高い。その結果として符号量が増加する。
【００２３】
本発明は，以上のような予測が外れる状況をオーバーヘッドなしに抑え，画面内予測における効果的な予測モードの予測方式を提供することを目的とする。
【課題を解決するための手段】
【００２４】
前述の予測モードの予測が外れるケースを抑えるための方法として，本発明は，符号化対象ブロックに隣接する符号化済みブロックにおける予測モードによって決定される予測ベクトルに着目し，符号化対象ブロック中心方向への流入ベクトルの有無を選択の鍵として用いる。
【００２５】
ここで，予測ベクトルは，画面内予測における予測モードから決定される予測方向を表すベクトルであり，図２０に４×４ブロックの場合の例を示したように，画面内予測における予測モードから決定される予測角度（図２０参照）と一対一に対応する方向を意味する。
【００２６】
また，符号化済みブロックの予測モードから決定される予測ベクトルが符号化対象ブロック中心方向に向いている場合に，その予測ベクトルを流入ベクトルという。予測ベクトルが符号化対象ブロック中心方向に向いているか否かの判断は，予測モードから決定される予測角度を参照し，後述する実施例で説明する閾値との比較で行う。
【００２７】
画面内予測は主に予測残差を抑えることでエッジを除去することにより，エッジ周辺に発生する高周波成分の除去に効果を発揮し，差分の振幅を効果的に抑える手法である。そのため画面内予測によって既に符号化済みブロックにおける予測残差を抑えることに成功していると仮定すると，符号化済みブロックはその予測ベクトルに沿ってエッジが存在する可能性が高いことが推測される。
【００２８】
例えばＰｒｅｄＭｏｄｅＡにおける予測角度θA が９０°辺りに存在する場合（符号化対象ブロック中心方向への流入ベクトルが存在する場合），符号化対象ブロックの参照画素Ａ〜Ｄ（図２０，図２１参照）上にエッジが出現する可能性が高い。そのため自然画像における画素の連続性を考えると，符号化対象ブロックにおいてもエッジがθA の方向に連続している可能性が高く，ＰｒｅｄＭｏｄｅＡをＰｒｅｄ＿ＰｒｅｄＭｏｄｅとして適用するほうが適切であると考えられる。仮にＰｒｅｄＭｏｄｅＢが予測モード０（Ｉｎｔｒａ４ｘ４ＰｒｅｄＭｏｄｅ０）で予測されており，符号化対象ブロック方向への流入ベクトルが存在しない場合，符号化対象ブロックの参照画素Ｉ〜Ｌ（図２０，図２１参照）上にエッジが出現する可能性は低いため，ＰｒｅｄＭｏｄｅＢをＰｒｅｄ＿ＰｒｅｄＭｏｄｅとして適用すると予測モードの予測が外れる可能性が高くなる。
【００２９】
このように符号化対象ブロック中心方向への流入ベクトルの有無を判断することでエッジが存在する可能性を判断し，適切な予測モードを予測することで効率的な予測モードの予測値生成を実現する。
【発明の効果】
【００３０】
以上説明したように，本発明の使用により，従来の画面内予測における予測モードの予測値生成手法では考慮されていなかった符号化対象ブロック中心方向への流入ベクトルの有無を判断することによって，エッジが連続するような動画像において，従来手法より効率的な予測モードの予測値生成が実現可能となる。
【００３１】
その結果，従来手法では画面内予測の予測モードの決定に４ビット必要とされていたブロックを１ビットで表記可能になる確率が増加するため，符号量の削減につながり画面内予測の符号化効率が改善する。特に，低ビットレートの符号化では，３ビット減という効果は，高ビットレートと比較して顕著に現れるため効果が大きい。
【００３２】
また，本発明は従来手法のように画面内予測の予測モードの予測が予測モード番号に依存せず，予測モード番号から決定される予測ベクトルが持つ予測角度に依存するため，Ｈ．２６４準拠の画面内予測の予測モードの予測値生成方式以外の予測モードの予測方式に対しても親和性が高い。さらに，４×４ブロックだけでなく，８×８ブロックにおける予測モードの予測値生成手法としても使用することができる。
【発明を実施するための最良の形態】
【００３３】
本発明の実施形態を詳細に説明するに先立ち，その概要を従来技術と対比して説明する。
【００３４】
前述のように，従来の画面内予測における予測モードの予測値生成方式では，図２３のように，上と左に隣接するブロックにおける予測モードの予測モード番号の小さいほうを予測モードの予測値として適用している。
【００３５】
Ｈ．２６４では，４×４の符号化対象ブロックに対しては，図２０に示す９パターンの予測を行っており，予測モードの予測値と一致する予測モードを符号化する場合には，フラグ（１ビット）＋予測残差のＤＣＴ符号データとして結果を表記し，予測値と異なる予測モードを符号化する場合には，フラグ（１ビット）＋予測モードの補正値（３ビット）＋予測残差のＤＣＴ符号データとして結果を表記している。したがって，予測モードの予測値が外れると符号量が増えることになる。
【００３６】
そこで，本発明は予測モードの予測値生成の精度を向上させるため，符号化対象ブロックに隣接する符号化済みブロックにおける予測モードによって決定される予測ベクトルに着目し，符号化対象ブロック中心方向へのベクトル（流入ベクトル）の有無を判定し，流入ベクトル有りと判断された１つ以上の符号化対象ブロックの予測モードの中から１つを選択することで符号化対象ブロックの予測モードの予測値を生成する。
【００３７】
これを実現するための処理として，特に次の２段階の新しい処理機構を持つ。
［処理１］流入ベクトル有りの符号化済みブロックを抽出し，リストアップする。
［処理２］リストアップした符号化済みブロックに優先順序を設定し，最も優先順序の高いブロックの予測モードを符号化対象ブロックの予測モードの予測値として適用する。
【００３８】
上記［処理１］の流入ベクトル有りの符号化済みブロックの抽出では，符号化対象ブロックに隣接するブロックのうち，どのブロックを対象として流入ベクトルの有無を判断するかを，外部から与えられる，または予め設定される設定値（ＳｗＫｅｙと呼ぶ）によって，変えることができる。
【００３９】
例えば，ＳｗＫｅｙに応じて次のようなパターンがある。
・ＳｗＫｅｙ＝１の場合，図３に示すＢｌｏｃｋＡ，Ｂの符号化済みブロックを用いて予測モードの予測を行う（実施例１として記載）。
・ＳｗＫｅｙ＝２の場合，図３に示すＢｌｏｃｋＡ，Ｂ，Ｆの符号化済みブロックを用いて予測モードの予測を行う（実施例２として記載）。
・ＳｗＫｅｙ＝３の場合，図３に示すＢｌｏｃｋＡ，Ｂ，ＦおよびＥ，Ｇの一方もしくは両方の符号化済みブロックを用いて予測モードの予測を行う（実施例３として記載）。
・ＳｗＫｅｙ＝４の場合，図３に示すＢｌｏｃｋＡ〜Ｈの符号化済みブロックを用いて予測モードの予測を行う（実施例４として記載）。
【００４０】
また，上記［処理２］のリストアップした符号化済みブロックを優先順序に従って選択する方法としては，例えば次の方法を用いることができる。
〔ブロック距離別優先順序決定による選択方式（実施例５として記載）〕
符号化対象ブロックとの距離が近いブロックほど優先的に選択されるように，隣接するブロックにあらかじめ優先順序を設定しておき，リストアップした符号化済みブロックの中で最も優先順序が上位のブロックを選択する。
〔参照画素のエッジ検出による優先順序決定による選択方式（実施例６として記載）〕
参照画素におけるエッジ強度を算出し，最もエッジが強い方向を選出する。
【００４１】
以上の処理によって，予測モードの予測値生成の精度が向上するので，従来技術で説明した１ビットのフラグで予測モードを表記できるブロックを増やすことができる。そのため，予測モードの予測値と異なる場合に付加されていた補正値（３ビット）を削減できるようになる。なお，予測値生成の精度が向上するとは，従来のＨ．２６４で使用されているラグランジュコストの計算式によって選び出される予測モード番号が予測モードの予測値と一致する確率が高くなることを意味する。このように，予測モードの予測値生成の精度が向上することにより，画質一定の条件下では符号量の削減が可能になり，符号量一定の条件下では画質が向上し，符号化効率の向上が可能になる。
【００４２】
上記［処理１］の意義について補足説明する。従来手法では，画像内予測の予測モード番号に応じて予測モードの予測値を生成していたが，予測モード番号から推測可能なエッジの連続性については考慮されていない。上記［処理１］では，隣接する符号化済みブロックから符号化対象ブロック中心方向へ向かう流入ベクトルの有無を判定し，流入ベクトル有りと判断された１つ以上の符号化対象ブロックの予測モードの中から１つを選択するので，予測モード番号から推測可能なエッジの連続性に着目して予測モードの予測値を生成することが実現でき，より精度の高い予測モードの予測値の生成が可能になる。
【００４３】
さらに，ＳｗＫｅｙの設定値に応じて流入ベクトルの有無を判定する符号化済みブロックを決めることにより，隣接する複数の符号化済みブロックの中から，エッジが符号化対象ブロック中心方向に入り込む可能性の高い符号化済みブロックの探索を効率よく行うことができるようになる。
【００４４】
また，上記［処理２］では，上記［処理１］にてリストアップしたブロックに優先順序を設定し，最も優先順序の高いブロックの予測モードを符号化対象ブロックの予測モードの予測値として適用する。これは，上記［処理１］だけでは，隣接する符号化済みブロックから“流入ベクトル有り”と判断されたブロックが二つ以上存在する場合に，二つ以上の予測モードの中から一つを選択して符号化対象ブロックの予測モードの予測値とする必要があるからである。この［処理２］によって，エッジが符号化対象ブロック中心方向に入り込む可能性の高い複数の符号化済みブロックの中から，一つの予測モードを符号化対象ブロックの予測モードの予測値として適用することが可能になる。
【００４５】
以下，図面を用いながら，本発明の実施形態を詳細に説明する。
【００４６】
図１は，本発明を適用した画面内予測符号化装置の一実施形態を示すブロック図である。本実施形態の画面内予測における予測モードの予測値生成方式を使用する符号化装置１０は，ラグランジュコスト最小値及びブロック符号化データ初期化部１１と，符号化対象ブロックに隣接する符号化済みブロックから予測モードを予測するための予測モードの予測部１２と，予測モード決定のための予測モード判定ループ部１３とから構成される。
【００４７】
予測モードの予測部１２の内部は，流入ベクトル有りのブロック抽出部１２１，ブロック選択及び予測値生成部１２２から構成される。
【００４８】
予測モード判定ループ部１３の内部は，予測モードの符号化部１３１，画面内予測によって予測残差を生成する画面内予測部１３２，予測残差の整数精度ＤＣＴ・量子化・符号化部１３３，ラグランジュコストの最小値判定を行うラグランジュコスト判定部１３４，ループの終了判定部１３５から構成される。
【００４９】
図２に，本発明の一実施形態の画面内符号化方式における符号化処理のフローチャートを示す。本実施形態では，従来手法の符号化アルゴリズムにおけるＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定するステップ（図２２のステップＳ８０２）を，図２のステップＳ１０２，Ｓ１０３に置き換えることで実現する。
【００５０】
まず，ステップＳ１０１にて，ステップＳ８０１と同様に，ラグランジュコスト最小値Ｌmin の初期値を＋∞とし，ラグランジュコストが最小値をとる時のビット列Ｒbestの初期値を０とする。ステップＳ１０２では，処理分岐係数ＳｗＫｅｙを取得する。このＳｗＫｅｙは１〜４の範囲でユーザが任意に設定しておく係数である。
【００５１】
この例では，あらかじめ設定されたＳｗＫｅｙの値によって，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する４種類の処理方法を切り分けているが，本発明は，以下に説明する４種類の中の一つの処理方法に限定して実施することも可能であり，その場合には，ＳｗＫｅｙの判定による処理方法の選択処理は省略することができる。
【００５２】
ステップＳ１０３では，ＳｗＫｅｙの値を判定し，ＳｗＫｅｙに応じた処理アルゴリズムによる処理を実行して，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する。このＳｗＫｅｙに応じてＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する処理の詳細については，実施例１〜４として後述する。
【００５３】
次にステップＳ１０４のループ処理により，予測モード０から（ＭａｘＰｒｅｄ−１）までの各予測モードについて，ステップＳ１０５〜Ｓ１１３の処理を繰り返す。なお，ステップＳ１０４のＭａｘＰｒｅｄは予測方向最大値を表す。ステップＳ１０４以降の処理は，従来技術として説明した図２２のステップＳ８０３以降の処理と同様であるため，説明は省略する。
【００５４】
また，本実施形態では，ステップＳ１０３にて符号化対象ブロックに隣接する最大８つの符号化済みブロックの予測モードを参照するものとする。ここで，符号化対象ブロックに隣接するブロックを図３のように設定する。
【００５５】
〔実施例１〕
実施例１は，ＳｗＫｅｙ＝１の場合のＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する処理（予測値生成処理）の例であり，図３に示すＢｌｏｃｋＡ，Ｂの符号化済みブロックを用いて予測モードの予測を行う場合の例である。
【００５６】
図４に，隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を示す。ここでθA ，θB は，それぞれＢｌｏｃｋＡ，Ｂにおける予測モードから決定される予測角度を表す。すなわち，角度閾値（４５°，１３５°，２２５°）に対して，
４５°≦θA ＜１３５°
１３５°≦θB ＜２２５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００５７】
図５に，実施例１の予測値生成処理のフローチャートを示す。まず，ステップＳ２０１において，予測モードの予測値Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅをＤＣ成分で，流入ベクトルが存在するブロック番号を格納するバッファＢｌｏｃｋＢｕｆを０で，流入ベクトルが存在する数ＭａｘＥｌｅｍを０で初期化する。
【００５８】
次に，ステップＳ２０２において，符号化対象ブロックに隣接するＴａｒｇｅｔＢｌｏｃｋ∈［ＢｌｏｃｋＡ，Ｂ］のループを行い，ステップＳ２０３にてＴａｒｇｅｔＢｌｏｃｋが符号化済みブロックか否かの分岐を行う。この分岐において真のＴａｒｇｅｔＢｌｏｃｋのみ，ステップＳ２０４においてＴａｒｇｅｔＢｌｏｃｋのＰｒｅｄＭｏｄｅから予測角度θを算出する。
【００５９】
続いて，ステップＳ２０５において，θが図４における閾値以内か否かの分岐処理を行い，真のＴａｒｇｅｔＢｌｏｃｋに対して，ステップＳ２０６にてＢｌｏｃｋＢｕｆにＴａｒｇｅｔＢｌｏｃｋを追加格納し，ＭａｘＥｌｅｍを１増やす。ステップＳ２０２〜Ｓ２０６のループにて流入ベクトルが存在するブロックの抽出を終了すると，ステップＳ２０７にてＢｌｏｃｋＢｕｆの中から最適な予測モードを一つ選出し（選出手法の実施例は“実施例５，６”に記載），Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅに適用する。
【００６０】
〔実施例２〕
実施例２は，ＳｗＫｅｙ＝２の場合のＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する処理（予測値生成処理）の例であり，図３に示すＢｌｏｃｋＡ，Ｂ，Ｆの符号化済みブロックを用いて予測モードの予測を行う場合の例である。
【００６１】
図６に，隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を示す。ここで，θA ，θB ，θF はそれぞれＢｌｏｃｋＡ，Ｂ，Ｆにおける予測モードから決定される予測角度を表す。すなわち，角度閾値（４５°，１１２．５°，１５７．５°，２２５°）に対して，
４５°≦θA ＜１１２．５°
１１２．５°≦θF ＜１５７．５°
１５７．５°≦θB ＜２２５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００６２】
図７に，実施例２の予測値生成処理のフローチャートを示す。まず，ステップＳ３０１において，予測モードの予測値Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅをＤＣ成分で，流入ベクトルが存在するブロック番号を格納するバッファＢｌｏｃｋＢｕｆを０で，流入ベクトルが存在する数ＭａｘＥｌｅｍを０で初期化する。
【００６３】
次に，ステップＳ３０２において，符号化対象ブロックに隣接するＴａｒｇｅｔＢｌｏｃｋ∈［ＢｌｏｃｋＡ，Ｂ，Ｆ］のループを行い，ステップＳ３０３にてＴａｒｇｅｔＢｌｏｃｋが符号化済みブロックか否かの分岐を行う。この分岐において真のＴａｒｇｅｔＢｌｏｃｋのみ，ステップＳ３０４においてＴａｒｇｅｔＢｌｏｃｋのＰｒｅｄＭｏｄｅから予測角度θを算出する。
【００６４】
続いて，ステップＳ３０５において，θが図６における閾値以内か否かの分岐処理を行い，真のＴａｒｇｅｔＢｌｏｃｋに対して，ステップＳ３０６にてＢｌｏｃｋＢｕｆにＴａｒｇｅｔＢｌｏｃｋを追加格納し，ＭａｘＥｌｅｍを１増やす。ステップＳ３０２〜Ｓ３０６のループにて流入ベクトルが存在するブロックの抽出を終了すると，ステップＳ３０７にてＢｌｏｃｋＢｕｆの中から最適な予測モードを一つ選出し（選出手法の実施例は“実施例５，６”に記載），Ｐｒｅｄ＿ｐｒｅｄＭｏｄｅに適用する。
【００６５】
〔実施例３〕
実施例３は，ＳｗＫｅｙ＝３の場合のＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する処理（予測値生成処理）の例であり，図３に示すＢｌｏｃｋＡ，Ｂ，ＦおよびＥ，Ｇの一方もしくはその両方の符号化済みブロックを用いて予測モードの予測を行う場合の例である。
【００６６】
図８に，ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ，Ｇを用いて隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を，図９に，ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆを用いて隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を，図１０にＢｌｏｃｋＡ，Ｂ，Ｆ，Ｇを用いて隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を示す。ここで，図８，図９，図１０のθA ，θB ，θE ，θF ，θG は，それぞれＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ，Ｇにおける予測モードから決定される予測角度を表す。
【００６７】
図８の例では，角度閾値（２２．５°，６７．５°，１１２．５°，１５７．５°，２０２．５°，２４７．５°）に対して，
２２．５°≦θE ＜６７．５°
６７．５°≦θA ＜１１２．５°
１１２．５°≦θF ＜１５７．５°
１５７．５°≦θB ＜２０２．５°
２０２．５°≦θG ＜２４７．５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００６８】
また，図９の例では，角度閾値（２２．５°，６７．５°，１１２．５°，１５７．５°，２２５°）に対して，
２２．５°≦θE ＜６７．５°
６７．５°≦θA ＜１１２．５°
１１２．５°≦θF ＜１５７．５°
１５７．５°≦θB ＜２２５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００６９】
図１０の例では，角度閾値（４５°，１１２．５°，１５７．５°，２０２．５°，２４７．５°）に対して，
４５°≦θA ＜１１２．５°
１１２．５°≦θF ＜１５７．５°
１５７．５°≦θB ＜２０２．５°
２０２．５°≦θG ＜２４７．５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００７０】
図１１に，例としてＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ，Ｇを用いて予測モードの予測を行う場合における予測値生成処理のフローチャートを示す。
【００７１】
まず，ステップＳ４０１において，予測モードの予測値Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅをＤＣ成分で，流入ベクトルが存在するブロック番号を格納するバッファＢｌｏｃｋＢｕｆを０で，流入ベクトルが存在する数ＭａｘＥｌｅｍを０で初期化する。
【００７２】
次に，ステップＳ４０２において，符号化対象ブロックに隣接するＴａｒｇｅｔＢｌｏｃｋ∈［ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ，Ｇ］のループを行い，ステップＳ４０３にてＴａｒｇｅｔＢｌｏｃｋが符号化済みブロックか否かの分岐を行う。この分岐において真のＴａｒｇｅｔＢｌｏｃｋのみ，ステップＳ４０４においてＴａｒｇｅｔＢｌｏｃｋのＰｒｅｄＭｏｄｅから予測角度θを算出する。
【００７３】
続いて，ステップＳ４０５において，θが図８における閾値以内か否かの分岐処理を行い，真のＴａｒｇｅｔＢｌｏｃｋに対して，ステップＳ４０６にてＢｌｏｃｋＢｕｆにＴａｒｇｅｔＢｌｏｃｋを追加格納し，ＭａｘＥｌｅｍを１増やす。ステップＳ４０２〜Ｓ４０６のループにて流入ベクトルが存在するブロックの抽出を終了すると，ステップＳ４０７にてＢｌｏｃｋＢｕｆの中から最適な予測モードを一つ選出し（選出手法の実施例は“実施例５，６”に記載），Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅに適用する。
【００７４】
〔実施例４〕
実施例４は，ＳｗＫｅｙ＝４の場合のＰｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する処理（予測値生成処理）の例であり，図３に示すＢｌｏｃｋＡ〜Ｈのブロック全てを用いて適応的に予測モードの予測を行う場合の例である。
【００７５】
図１２に，ＢｌｏｃｋＡ〜Ｈを用いて隣接ブロックから流入ベクトルの有無を判断するために用いる角度閾値を示す。ここで，θA 〜θH はそれぞれＢｌｏｃｋＡ〜Ｈにおける予測モードから決定される予測角度を表す。
【００７６】
図１２の例では，角度閾値（２２．５°，６７．５°，１１２．５°，１５７．５°，２０２．５°，２４７．５°，２９２．５°，３３７．５°）に対して，
２２．５°≦θE ＜６７．５°
６７．５°≦θA ＜１１２．５°
１１２．５°≦θF ＜１５７．５°
１５７．５°≦θB ＜２０２．５°
２０２．５°≦θG ＜２４７．５°
２４７．５°≦θC ＜２９２．５°
２９２．５°≦θH ＜３３７．５°
３３７．５°≦θD ＜２２．５°
を満たすかどうかにより，流入ベクトルの有無が判断される。
【００７７】
図１３に，本実施例の予測値生成処理のフローチャートを示す。まず，ステップＳ５０１において，予測モードの予測値Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅをＤＣ成分で，流入ベクトルが存在するブロック番号を格納するバッファＢｌｏｃｋＢｕｆを０で，流入ベクトルが存在する数ＭａｘＥｌｅｍを０で初期化する。次に，ステップＳ５０２において，符号化対象ブロックに隣接するＴａｒｇｅｔＢｌｏｃｋ∈［ＢｌｏｃｋＡ，Ｂ，... ，Ｈ］のループを行い，ステップＳ５０３にてＴａｒｇｅｔＢｌｏｃｋが符号化済みブロックか否かの分岐処理を行う。
【００７８】
続いて，ステップＳ５０４にてＴａｒｇｅｔＢｌｏｃｋのＰｒｅｄＭｏｄｅから予測角度θを算出し，ステップＳ５０５において，θが図１２における閾値以内か否かの分岐処理を行う。上記ステップＳ５０３，Ｓ５０５の両方が真のＴａｒｇｅｔＢｌｏｃｋに対して，ステップＳ５０６にてＢｌｏｃｋＢｕｆにＴａｒｇｅｔＢｌｏｃｋを追加格納し，ＭａｘＥｌｅｍを１増やす。ステップＳ５０２〜Ｓ５０６のループにて流入ベクトルが存在するブロックの抽出を終了すると，ステップＳ５０７にてＢｌｏｃｋＢｕｆの中から最適な予測モードを一つ選出し（選出手法の実施例は“実施例５，６”に記載），Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅに適用する。
【００７９】
〔実施例５（ブロック距離別優先順序決定による選択方式）〕
例として，４×４の符号化対象ブロックに隣接するＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ（図３参照）がＢｌｏｃｋＢｕｆに格納されていた場合における，ブロック距離による予測モードの予測値を生成する手法を記す。
【００８０】
符号化対象ブロックに対して最も距離が近いブロックはＢｌｏｃｋＡ，Ｂであり，ＢｌｏｃｋＥ，ＦはＢｌｏｃｋＡ，Ｂと比較して距離が離れている。したがって，ＢｌｏｃｋＡ，Ｂのほうが画素間相関は高いと判断することができる。ＢｌｏｃｋＥにおける参照画素（ＲｅｆＰｉｘｅｌ）Ｅ〜Ｈは符号化対象ブロックからの距離が離れているため，画素間相関はＢｌｏｃｋＦと比較して低いと判断することができる。ＢｌｏｃｋＡ，Ｂのブロック距離は等しいが，便宜的にＢｌｏｃｋＡのほうが優先度が高いと仮定し，ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆの優先順序を次の式２の不等式で定める。
【００８１】
ＢｌｏｃｋＡ＞ＢｌｏｃｋＢ＞ＢｌｏｃｋＦ＞ＢｌｏｃｋＥ          …（式２）
上記で定めた優先順序に従う場合，ＢｌｏｃｋＡのＰｒｅｄＭｏｄｅをＢｅｓｔＰｒｅｄＭｏｄｅとして適用する。また，ＢｌｏｃｋＢ，ＥがＢｌｏｃｋＢｕｆに格納されていたと仮定すると，ＢｌｏｃｋＢのＰｒｅｄＭｏｄｅをＢｅｓｔＰｒｅｄＭｏｄｅとして適用する。このように隣接するブロックにあらかじめ優先順序を設定しておくことで，複数の流入ベクトルが存在する符号化対象ブロックにおいてもＰｒｅｄ＿ＰｒｅｄＭｏｄｅを一つに選出することが可能となる。
【００８２】
〔実施例６（参照画素のエッジ検出による優先順序決定による選択方式）〕
エッジの強度をより重視した予測モードを予測する例として，４×４の符号化対象ブロックに隣接するＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ（図３参照）がＢｌｏｃｋＢｕｆに格納されていた場合における，エッジ検出による予測モードの予測値を生成する手法の処理の例を示すフローチャートを，図１４に示す。
【００８３】
まず，ステップＳ６０１において，ＢｌｏｃｋＢｕｆ，ＭａｘＥｌｅｍ，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅを受け取り，ステップＳ６０２で最大エッジ強度Ｅmax を０で初期化する。次に，ステップＳ６０３にて図２０における参照画素∈［Ａ〜Ｌ，Ｘ］と同じ画素におけるエッジ強度ＥｄｇｅＰｏｗｅｒ∈［Ａ″〜Ｌ″，Ｘ″］を算出する。このときＥｄｇｅＰｏｗｅｒの算出には輪郭抽出フィルタを用いる。
【００８４】
輪郭抽出フィルタの一例を式３に記す。
【００８５】
ＥｄｇｅＰｏｗｅｒ＝｜ｉ−ｘ｜＋｜ｊ−ｘ｜                      …（式３）
ここで，ｘはＥｄｇｅＰｏｗｅｒを求める画素における画素値，ｉ，ｊはｘの左右・上下に隣接する画素（参照画素∈［Ａ〜Ｌ，Ｘ］）における画素値を表す。ＥｄｇｅＰｏｗｅｒを計算するとき，ｉ，ｊ，ｘにはノイズ除去を行った値を用いるのが望ましいが，画面内予測で用いる参照画素はデブロッキングフィルタ適用前の画素値が適用されるため，特に参照画素Ａ，Ｄ，Ｅ，Ｉ，Ｘでは必要以上にエッジが検出されやすい。そのため，特に低ビットレート時には，これらの画素に対しては強めのノイズ除去を適用する。
【００８６】
続いて，ステップＳ６０４にてＢｌｏｃｋＢｕｆに蓄積されたブロックのループを行う。ステップＳ６０５においてＢｌｏｃｋＢｕｆにＩＤ番目に格納されたＴａｒｇｅｔＢｌｏｃｋのＰｒｅｄＭｏｄｅを取得し，ステップＳ６０６にて符号化対象ブロック内エッジ強度Ｅblock を０で初期化する。
【００８７】
次に，ステップＳ６０７にて符号化対象ブロック内の予測画素（以下，ＰｒｅｄＰｉｘｅｌ）全てに対してループを行う。ステップＳ６０８では，ＰｒｅｄＭｏｄｅの参照画素位置に存在するＥｄｇｅＰｏｗｅｒを参照し，ＰｒｅｄＰｉｘｅｌの座標値におけるＥｄｇｅＰｏｗｅｒの影響力ＥｄｇｅＩｎｆｌｕｅｎｃｅを計算する。ＥｄｇｅＩｎｆｌｕｅｎｃｅは参照画素に対して距離の二乗に反比例すると仮定し，画素間距離を１として，次の式４を用いて算出を行う。
【００８８】
ＥｄｇｅＩｎｆｌｕｅｎｃｅ
＝｜ＥｄｇｅＰｏｗｅｒ｜／ＲｅｆＬｅｎｇｔｈ2               …（式４）
ここで，ＲｅｆＬｅｎｇｔｈは図１５に示すようにＰｒｅｄＰｉｘｅｌと参照画素間の距離を表す。
【００８９】
続いて，ステップＳ６０９でＥblock にＥｄｇｅＩｎｆｌｕｅｎｃｅを加算する。ステップＳ６１０でＥmax とＥblock の比較を行い，Ｅblock のほうが大きければ，ステップＳ６１１にてＥmax をＥblock で更新し，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅをＰｒｅｄＭｏｄｅで更新する。
【００９０】
これにより，符号化対象ブロックに対して複数の流入ベクトルが存在する符号化対象ブロックにおいても，最もエッジが強い方向をＰｒｅｄ＿ＰｒｅｄＭｏｄｅに選出することが可能となる。
【００９１】
図１６は，本発明を適用した画面内予測復号装置の一実施形態を示すブロック図である。本実施形態の画面内予測における予測モードの予測値生成方式を使用する復号装置２０は，復号対象ブロックに隣接する復号済みブロックから予測モードを予測するための予測モードの予測部２１と，符号化データから予測モードを決定する予測モード決定部２２と，符号化データから予測残差を復号する残差信号復号部２３と，復号画像生成部２４とから構成される。
【００９２】
予測モードの予測部２１の内部は，流入ベクトル有りのブロック抽出部２１１，ブロック選択及び予測値生成部２１２から構成される。
【００９３】
図１７に，本発明の一実施形態の映像復号方式における復号処理のフローチャートを示す。
【００９４】
まず，ステップＳ７０１において予測モードの予測値が一致しているか否かを示す１ビットの予測フラグＦを取得する。次に，ステップＳ７０２では，図２の符号化時におけるステップＳ１０２と同様に，処理分岐係数ＳｗＫｅｙを取得し，続いてステップＳ７０３では，図２の符号化時におけるステップＳ１０３と同様に，ＳｗＫｅｙの値を判定し，ＳｗＫｅｙに応じた処理アルゴリズム（前述した実施例１〜４）による処理を実行して，Ｐｒｅｄ＿ＰｒｅｄＭｏｄｅを決定する。
【００９５】
続いて，ステップＳ７０４で予測フラグＦの予測が当たっているか否かの条件分岐を行う。予測が当たっていた場合，ステップＳ７０５にてＰｒｅｄＭｏｄｅをＰｒｅｄ＿ＰｒｅｄＭｏｄｅとし，外れていた場合にはステップＳ７０６にて予測モードの補正値を取得してＰｒｅｄＭｏｄｅに適用する。
【００９６】
続いて，ステップＳ７０７にてＰｒｅｄＭｏｄｅから予測値を生成し，ステップＳ７０８で予測残差符号データＤを取得する。ステップＳ７０９において予測残差符号データＤから予測残差を復号し，最後にステップＳ７１０において予測値と予測残差の加算によって復号信号を生成する。
【００９７】
〔実験例〕
図１８は，テストシーケンスにおけるＲＤ曲線（６０フレームの平均値）を示す。本発明の提案手法による実施形態を，国際的な映像圧縮性能の比較基準であるＪＭ  ｖｅｒ．１１．０  ＫＴＡ１．９（非特許文献４参照）に実装し，従来手法と本発明との性能比較を行った結果は，図１８に示すとおりであった（比較したデータはすべて輝度信号のみ）。データは，６０フレームをすべて画面内予測にて符号化を行った際の平均値である。シーケンスは“ＦＯＲＥＭＡＮ”，解像度はＣＩＦ（３５２×２８８）を用いた。
【００９８】
また，図１９に，図１８の実験において予測モードの予測値がラグランジュコストの最も低い予測モードとして適用される予測的中率を示す。この予測的中率が高いほど，１ビットのフラグで表記される数が増加するため，符号量の削減に繋がる。
【００９９】
本実験では，実施例２および実施例６として説明した手法を用い，４×４ブロックだけでなく，８×８ブロックの予測モードの予測値生成にも提案手法を実装した。この結果，上記の実験において，ＰＳＮＲ＝３５［ｄＢ］では約２．９３％の符号量削減，ＰＳＮＲ＝３２［ｄＢ］では約５．０１％の符号量削減が確認できた。
【０１００】
以上の実施形態における画面内予測の処理は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【図面の簡単な説明】
【０１０１】
【図１】画面内予測符号化装置の一実施形態を示すブロック図である。
【図２】符号化処理のフローチャートである。
【図３】隣接ブロックのブロック番号の設定を説明する図である。
【図４】ＢｌｏｃｋＡ，Ｂを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図５】予測モードの予測値生成処理のフローチャートである。
【図６】ＢｌｏｃｋＡ，Ｂ，Ｆを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図７】予測モードの予測値生成処理のフローチャートである。
【図８】ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆ，Ｇを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図９】ＢｌｏｃｋＡ，Ｂ，Ｅ，Ｆを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図１０】ＢｌｏｃｋＡ，Ｂ，Ｆ，Ｇを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図１１】予測モードの予測値生成処理のフローチャートである。
【図１２】ＢｌｏｃｋＡ〜Ｈを対象とした流入ベクトルの有無の判断に使用する角度閾値の例を示す図である。
【図１３】予測モードの予測値生成処理のフローチャートである。
【図１４】エッジ検出による予測モードの予測値生成処理のフローチャート。
【図１５】画素間距離の説明図である。
【図１６】画面内予測復号装置の一実施形態を示すブロック図である。
【図１７】復号処理のフローチャートである。
【図１８】テストシーケンスにおけるＲＤ曲線（６０フレームの平均値）を示す図である。
【図１９】予測モードの予測値がラグランジュコストの最も低い予測モードとして適用される予測的中率を示す図である。
【図２０】従来の画面内予測手法で用いる予測角度の説明図である。
【図２１】従来の画面内予測手法で用いる参照画素の画素値の説明図である。
【図２２】従来手法における符号化処理のフローチャートである。
【図２３】従来手法における予測モードの予測に使用する隣接ブロックを説明する図である。
【図２４】適用される予測モード０，７の比較を説明するための，原画像の画素値を示す図である。
【図２５】符号化対象ブロックを予測モード０で画面内符号化したときの予測画素値と予測残差の例を示す図である。
【図２６】符号化対象ブロックを予測モード７で画面内符号化したときの予測画素値と予測残差の例を示す図である。
【符号の説明】
【０１０２】
１０  符号化装置
１１  ラグランジュコスト最小値及びブロック符号化データ初期化部
１２  予測モードの予測部
１２１  流入ベクトル有りのブロック抽出部
１２２  ブロック選択及び予測値生成部
１３  予測モード判定ループ部
１３１  予測モードの符号化部
１３２  画面内予測部
１３３  整数精度ＤＣＴ・量子化・符号化部
１３４  ラグランジュコスト判定部
１３５  ループの終了判定部
２０  復号装置
２１  予測モードの予測部
２１１  流入ベクトル有りのブロック抽出部
２１２  ブロック選択及び予測値生成部
２２  予測モード決定部
２３  残差信号復号部
２４  復号画像生成部
【図１】
2010056701.tif 000003
【図２】
2010056701.tif 000004
【図３】
2010056701.tif 000005
【図４】
2010056701.tif 000006
【図５】
2010056701.tif 000007
【図６】
2010056701.tif 000008
【図７】
2010056701.tif 000009
【図８】
2010056701.tif 000010
【図９】
2010056701.tif 000011
【図１０】
2010056701.tif 000012
【図１１】
2010056701.tif 000013
【図１２】
2010056701.tif 000014
【図１３】
2010056701.tif 000015
【図１４】
2010056701.tif 000016
【図１５】
2010056701.tif 000017
【図１６】
2010056701.tif 000018
【図１７】
2010056701.tif 000019
【図１８】
2010056701.tif 000020
【図１９】
2010056701.tif 000021
【図２０】
2010056701.tif 000022
【図２１】
2010056701.tif 000023
【図２２】
2010056701.tif 000024
【図２３】
2010056701.tif 000025
【図２４】
2010056701.tif 000026
【図２５】
2010056701.tif 000027
【図２６】
2010056701.tif 000028