(57)【要約】【課題】Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができるようにする。【解決手段】動き補償部は、L0参照ピクチャの参照領域のうち、画面の中の部分は、H．264/AVC方式の重み付き予測により予測画像を生成し、L0参照ピクチャの参照領域のうち、画面の外の部分については、それを使わずに、L1参照ピクチャの参照領域のみを使って予測画像を生成する。すなわち、L0参照ピクチャにおいては、L0参照の参照領域に示されるように、参照領域は、外側の破線四角であるが、実際には、内側の破線四角内の領域しか予測に用いられない。本発明は、例えば、H．264/AVC方式をベースに符号化する画像符号化装置に適用することができる。【選択図】図１０
2011147049.tif 000002
【特許請求の範囲】
【請求項１】
処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先の画素が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行う動き予測補償手段を
備える画像処理装置。
【請求項２】
前記動き予測補償手段は、前記画像のブロックの参照先が、前記複数の参照画像において画面内の画素である場合、それらの画素を用いて、規格で定められている重み付け予測を行い、
前記画像のブロックの参照先が、前記複数の参照画像のどちらか一方の参照画像において画面外の画素であり、他方の参照画像において画面内の画素である場合、それらの画素を用いて、前記重み付け予測を行う
請求項１に記載の画像処理装置。
【請求項３】
前記重み付け予測の重みは、前記画面外の画素に対する重みより、前記画面内の画素に対する重みの方がより大きい
請求項２に記載の画像処理装置。
【請求項４】
前記重み付け予測の重みは、０または１である
請求項３に記載の画像処理装置。
【請求項５】
前記重み付け予測の重みを、前記画像のブロックの近傍の画素間の不連続性によって算出する重み算出手段を
さらに備える請求項３に記載の画像処理装置。
【請求項６】
前記重み算出手段により算出された前記重みの情報を符号化する符号化手段を
さらに備える請求項５に記載の画像処理装置。
【請求項７】
前記画像のブロックの近傍の画素間の不連続性によって算出されて、符号化されている重みの情報を復号する復号手段をさらに備え、
前記動き予測補償手段は、前記重み付け予測を行う場合、前記復号手段により復号された重みの情報を用いる
請求項３に記載の画像処理装置。
【請求項８】
前記異なる複数の参照画像を用いる予測は、双予測およびダイレクト・モード予測の少なくとも一方である
請求項２に記載の画像処理装置。
【請求項９】
画像処理装置の動き予測補償手段が、
処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行うステップを
含む画像処理方法。
【請求項１０】
処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行う動き予測補償手段と
して、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および方法、並びにプログラムに関し、特に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
画像情報を圧縮する標準規格として、H．264及びMPEG-4 Part10 （Advanced Video Coding、以下H．264/AVCと記す）がある。
【０００３】
H.264/AVCにおいては、フレームまたはフィールド間の相関に注目したインター予測が行われる。そして、このインター予測で行われる動き補償処理では、既に保存されている参照可能な画像内の一部の領域を用いて、インター予測による予測画像（以下、インター予測画像という）が生成される。
【０００４】
例えば、図１に示すように、既に保存されている参照可能な画像の５フレームが参照フレームとされた場合、インター予測するフレーム（原フレーム）のインター予測画像の一部は、５つのうちのいずれか１つの参照フレームの画像（以下、参照画像という）の一部を参照して構成される。なお、インター予測画像の一部となる参照画像の一部の位置は、参照フレームと原フレームの画像に基づいて検出された動きベクトルによって決定される。
【０００５】
より詳細には、図２に示すように、参照フレーム内の顔１１が、原フレームにおいて右下方向に移動し、下部の約1/3が隠れた場合、右下方向の逆の左上方向を表す動きベクトルが検出される。そして、原フレーム内の隠れていない顔１１の一部１２は、その一部１２を動きベクトルが表す動きだけ移動させた位置の参照フレーム内の顔１１の一部１３を参照して構成される。
【０００６】
また、H.264/AVCにおいては、図３に示されるように、１６×１６画素乃至４×４画素のブロックサイズで動き補償を行うことができる。これにより、動きの境界がマクロブロック（例えば、１６×１６画素）の中にできる際、ブロックサイズを境界に応じてより小さく分割することができるので、正確な動き補償を行うことができる。
【０００７】
さらに、H.264/AVCにおいては、動き補償処理において、動きベクトルの分解能を２分の１または４分の１といった分数精度に向上させることが考えられている。
【０００８】
このような分数精度の動き補償処理においては、隣接する画素の間に、Sub pelと呼ばれる仮想的な分数位置の画素を設定し、そのSub pelを生成する処理（以下、インターポーレーションという）が追加して行われる。すなわち、分数精度の動き補償処理では、動きベクトルの最小分解能が分数位置の画素になるため、分数位置の画素を生成するためのインターポーレーションが行われる。
【０００９】
図４は、インターポーレーションによって縦方向と横方向の画素数が４倍に増加された画像の各画素を示している。なお、図４において、白色の正方形は、整数位置の画素(Integer pel(Int. pel))を表し、斜線が付された正方形は、分数位置の画素(Sub pel)を表している。また、正方形内のアルファベットは、その正方形が表す画素の画素値を表している。
【００１０】
インターポーレーションによって生成される分数位置の画素の画素値ｂ，ｈ，ｊ，ａ，ｄ，ｆ，ｒは、以下に示す式（１）で表される。
【００１１】
b=(E-5F+20G+20H-5I+J)/32
h=(A-5C+20G+20M-5R+T)/32
j=(aa-5bb+20b+20s-5gg+hh)/32
a=(G+b)/2
d=(G+h)/2
f=(b+j)/2
r=(m+s)/2
・・・（１）  
【００１２】
なお、画素値aa，bb，s，gg，hhはbと同様に、cc，dd，m，ee，ffはhと同様に、cはaと同様に、f，n，qはdと同様に、e，p，gはrと同様に、それぞれ求めることができる。
【００１３】
上述した式（１）は、H.264/AVCなどのインターポーレーションで採用される式であり、この式は規格の違いによって異なるが、式の目的は同一である。この式は、偶数のタップ数を有する有限インパルス応答（FIR（Finit-duration Impulse Response））フィルタで実現することができる。例えば、H.264/AVCにおいては、６タップの補間フィルタが用いられている。
【００１４】
また、H.264/AVCにおいては、動きベクトルの参照領域が画面端（画枠）の外になる場合、図５に示されるように、画面の端の画素値がコピーされる。
【００１５】
図５の例に示される参照ピクチャにおいては、一点鎖線が画面端（画枠）を表しており、一点鎖線と外側の実線との間の領域が、画面端のコピーにより拡張された領域を表している。すなわち、参照ピクチャは、画面端のコピーにより拡張されていることになる。
【００１６】
ところで、H.264/AVCにおいては、特に、Ｂピクチャの場合、図６に示されるように、双方向予測が使用できる。図６においては、表示順序でピクチャが示されており、符号化対象ピクチャの表示順序の前後に符号化済みの参照ピクチャが並んでいる。符号化対象ピクチャがＢピクチャの場合、例えば、符号化対象ピクチャの対象予測ブロックに示されるように、前後（双方向）の参照ピクチャの２つのブロックを参照し、前方向のL0予測の動きベクトルと、後方向のL1予測の動きベクトルを持つことができる。
【００１７】
すなわち、L0は、主に対象予測ブロックよりも表示時刻が早いもので、L1は、主に対象予測ブロックよりも表示時刻が遅いものとなる。それらの区別された参照ピクチャを符号化モード別に使い分けることができる。符号化モードには、図７に示されるように、画面内符号化（イントラ予測）、L0予測、L1予測、双予測、ダイレクト・モードの５種類がある。
【００１８】
図７は、符号化モードと参照ピクチャおよび動きベクトルの関係を示す図である。なお、図７において、参照ピクチャは、その符号化モードで参照ピクチャとして使うか使わないかを示し、動きベクトルは、その符号化モードが動きベクトル情報を持っているか持っていないかを示している。
【００１９】
画面内符号化モードは、画面内（すなわち、イントラ）で予測するモードであり、L0参照ピクチャもL1参照ピクチャも使わず、L0予測の動きベクトルもL1予測の動きベクトル情報も持たない符号化モードである。L0予測モードは、L0参照ピクチャのみを使って予測を行い、L0予測の動きベクトル情報を持っている符号化モードである。L1予測モードでは、L1参照ピクチャのみを使って予測を行い、L1予測の動きベクトル情報を持っている符号化モードである。
【００２０】
双予測モードでは、L0およびL1参照ピクチャを使って予測を行い、L0およびL1予測の動きベクトル情報を持っている符号化モードである。ダイレクト・モードでは、L0およびL1参照ピクチャを使って予測を行うが、動きベクトル情報は持っていない符号化モードである。すなわち、ダイレクト・モードは、動きベクトル情報を持っていないが、参照ピクチャにおける符号化済みブロックの動きベクトル情報から、現時の対象予測ブロックの動きベクトル情報を予測して使用する符号化モードである。なお、ダイレクト・モードにも、L0またはL1参照ピクチャのどちらか一方しか持たない場合もありうる。
【００２１】
以上のように、双予測モードおよびダイレクト・モードにおいては、L0およびL1参照ピクチャを両方用いる場合がある。参照ピクチャが２枚の場合、次の式（２）に示される重み付き予測によって、双予測モードまたはダイレクト・モードの予測信号を得ることができる。
【００２２】
ＹBi-Pred  ＝  Ｗ０Ｙ０＋Ｗ１Ｙ１＋Ｄ                            ・・・（２）
ここで、ＹBi-Predは、双予測モードあるいはダイレクト・モードのオフセット付き重み補間信号であり、Ｗ０、Ｗ１は、それぞれL0、L1への重み係数であり、Ｙ０、Ｙ１は、L0、L1の動き補償予測信号である。このＷ０、Ｗ１、Ｄは、明示的にビットストリーム情報に含められたり、復号側で暗黙的に計算によって得られたりするものが用いられる。
【００２３】
参照ピクチャの符号化劣化がL0およびL1の２枚の参照ピクチャで無相関ならば、この重み付き予測によって符号化劣化が抑制される。その結果、予測信号と入力信号との差分である残差信号が減り、残差信号のビット量が削減され、符号化効率が改善される。
【００２４】
なお、ダイレクト・モードについては、非特許文献１において、参照領域が画面の外を含んでいる場合は、その参照ピクチャは使用せずに、もう一方のみの参照ピクチャを使用する提案がなされている。
【００２５】
ところで、H．264/AVC方式において、マクロブロックサイズは１６×１６画素である。しかしながら、マクロブロックサイズを１６×１６画素とするのは、次世代符号化方式の対象となるようなUHD(Ultra High Definition;4000×2000画素)といった大きな画枠に対しては最適ではない。
【００２６】
そこで、非特許文献２などにおいては、マクロブロックサイズを、例えば、３２×３２画素といった大きさに拡張することも提案されている。
【先行技術文献】
【非特許文献】
【００２７】
【非特許文献１】伊谷 裕介、出原 優一、関口 俊一、山田 悦久(三菱電機)、” 動画像符号化におけるダイレクトモード改善手法の一検討”, 電子情報通信学科主催  画像符号化シンポジウム  第２４回シンポジウム資料P3-20、静岡県伊豆市大平、平成２１年１０月７日・８日・９日
【非特許文献２】”Video Coding Using Extended Block Sizes”,VCEG-AD09,ITU-Telecommunications Standardization Sector STUDY GROUP Question 16 - Contribution 123, Jan 2009
【発明の概要】
【発明が解決しようとする課題】
【００２８】
上述したように、ダイレクト・モードあるいは双予測が使用される場合、L0参照ピクチャとL1参照ピクチャの参照領域が用いられる。ここで、L0参照の参照領域、あるいは、L1参照の参照領域のいずれか一方が画面の外になる場合が起こり得る。
【００２９】
図８の例においては、左から、L0参照ピクチャ、符号化対象ピクチャ、L1参照ピクチャが時間経過の順に示されている。各ピクチャにおいて、一点鎖線は画面端を表しており、実線と一点鎖線の間の領域は、図５で上述した画面端のコピーにより拡張された領域を表している。
【００３０】
また、各ピクチャにおける破線で囲まれた領域は、L0参照ピクチャにおいては、L0参照の参照領域を表し、符号化対象ピクチャにおいては、動き補償領域を表し、L1参照ピクチャにおいては、L1参照の参照領域を表している。そのうち、特に、L0参照の参照領域とL1参照の参照領域が、図８の下部に示されている。
【００３１】
そして、図８においては、符号化対象ピクチャにおけるハッチングされた菱形の物体Ｐが左上から右下に動いている状態にあり、L0参照ピクチャにおいては、その物体Ｐの一部が画面の端を超えて外にある例が示されている。
【００３２】
図５を参照して上述したように、参照領域が画面の外にあるときは、H．264/AVC方式においては、画面端の画素値をコピーして用いることが定められている。その結果、L0参照ピクチャの参照領域は、画面端の画素値がコピーされるため、形状が菱形ではなくなっている。
【００３３】
L0およびL1の参照領域を重み付き予測により予測画像を生成する場合、図８のL0参照の参照領域のように、画面の外の画素値が実際とは異なってしまうと、予測画像と源信号の差分が大きくなることが予測される。また、当然、差分が大きいことは、残差信号のビット量が増大するため、符号化効率の低下が懸念される。
【００３４】
これに対して、動き補償のブロックサイズを小さくする方法が考えられるが、ブロックサイズが小さく分割されることは、そのマクロブロックのヘッダ情報の増大を招き、オーバーヘッドが増えてしまう恐れがある。量子化パラメータQPが大きい時（あるいは低ビットレート時）においては、特にマクロブロックのヘッダ情報がオーバーヘッドとして割合的に大きくなることから、ブロックサイズを小さく分割する方法も符号化効率の低下が懸念される。
【００３５】
また、ダイレクト・モードは動きベクトル情報が不要なため、マクロブロックのヘッダ情報を減らす効果があり、特に低ビットレート時においては、符号化効率の改善に寄与している。しかしながら、上述したように、L0およびL1の参照領域を重み付き予測により予測画像を生成する場合、画面の外の画素値が実際とは異なってしまって、予測画像と源信号との差が大きくなるために、ダイレクト・モードが選択されにくくなり、符号化効率の低下が懸念される。
【００３６】
これに対して、上述した非特許文献１においては、ダイレクト・モードにおいて、参照領域が画面の外を含んでいる場合、その参照ピクチャは使用しないでもう一方のみの参照ピクチャを使用することで、ダイレクト・モードの選択が増えるように提案されている。
【００３７】
しかしながら、この提案では、片方の参照ピクチャが完全に使用されなくなるため、重み付き予測が行われなくなり、重み付き予測における予測性能の改善はあまり期待できない。すなわち、非特許文献１の提案では、参照領域のほとんどが画面の中で、一部だけが画面の外である場合でも、その参照領域は全て使われなくなる。
【００３８】
また、非特許文献１においては、ダイレクト・モードの改善のみが提案されており、双予測については言及されていない。
【００３９】
本発明は、このような状況に鑑みてなされたものであり、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができるものである。
【課題を解決するための手段】
【００４０】
本発明の一側面の画像処理装置は、処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先の画素が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行う動き予測補償手段を備える。
【００４１】
前記動き予測補償手段は、前記画像のブロックの参照先が、前記複数の参照画像において画面内の画素である場合、それらの画素を用いて、規格で定められている重み付け予測を行い、前記画像のブロックの参照先が、前記複数の参照画像のどちらか一方の参照画像において画面外の画素であり、他方の参照画像において画面内の画素である場合、それらの画素を用いて、前記重み付け予測を行うことができる。
【００４２】
前記重み付け予測の重みは、前記画面外の画素に対する重みより、前記画面内の画素に対する重みの方がより大きい。
【００４３】
前記重み付け予測の重みは、０または１である。
【００４４】
前記重み付け予測の重みを、前記画像のブロックの近傍の画素間の不連続性によって算出する重み算出手段をさらに備えることができる。
【００４５】
前記重み算出手段により算出された前記重みの情報を符号化する符号化手段をさらに備えることができる。
【００４６】
前記画像のブロックの近傍の画素間の不連続性によって算出されて、符号化されている重みの情報を復号する復号手段をさらに備え、前記動き予測補償手段は、前記重み付け予測を行う場合、前記復号手段により復号された重みの情報を用いることができる。
【００４７】
前記異なる複数の参照画像を用いる予測は、双予測およびダイレクト・モード予測の少なくとも一方である。
【００４８】
本発明の一側面の画像処理方法は、画像処理装置の動き予測補償手段が、処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行うステップを含む。
【００４９】
本発明の一側面のプログラムは、処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測を行う動き予測補償手段として、コンピュータを機能させる。
【００５０】
本発明の一側面においては、処理対象の画像により参照される異なる複数の参照画像を用いる予測において、前記画像のブロックの参照先が、前記複数の参照画像において画面外であるか否かに応じた重み付け予測が行われる。
【００５１】
なお、上述の画像処理装置は、独立した装置であっても良いし、１つの画像符号化装置または画像復号装置を構成している内部ブロックであってもよい。
【発明の効果】
【００５２】
本発明によれば、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【図面の簡単な説明】
【００５３】
【図１】従来のインター予測について説明する図である。
【図２】従来のインター予測について詳細に説明する図である。
【図３】ブロックサイズについて説明する図である。
【図４】インターポーレーションについて説明する図である。
【図５】画面端の処理を説明する図である。
【図６】双方向予測を説明する図である。
【図７】符号化モードと参照ピクチャおよび動きベクトルの関係を示す図である。
【図８】従来の重み付き予測を説明する図である。
【図９】本発明を適用した画像符号化装置の一実施の形態の構成を示すブロック図である。
【図１０】図９の画像符号化装置の重み付き予測を説明する図である。
【図１１】動き補償部の構成例を示すブロック図である。
【図１２】図９の画像符号化装置の符号化処理を説明するフローチャートである。
【図１３】図９の画像符号化装置の予測モード選択処理を説明するフローチャートである。
【図１４】図９の画像符号化装置のＢピクチャの補償処理を説明するフローチャートである。
【図１５】予測ブロックを説明する図である。
【図１６】参照ピクセル位置と処理方法の対応関係を示す図である。
【図１７】図１４の例の場合の効果を説明する図である。
【図１８】本発明を適用した画像復号装置の一実施の形態の構成を示すブロック図である。
【図１９】図１８の動き補償部の構成例を示すブロック図である。
【図２０】図１８の画像復号装置の復号処理を説明するフローチャートである。
【図２１】拡張されたブロックサイズの例を示す図である。
【図２２】コンピュータのハードウエアの構成例を示すブロック図である。
【図２３】本発明を適用したテレビジョン受像機の主な構成例を示すブロック図である。
【図２４】本発明を適用した携帯電話機の主な構成例を示すブロック図である。
【図２５】本発明を適用したハードディスクレコーダの主な構成例を示すブロック図である。
【図２６】本発明を適用したカメラの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００５４】
以下、図を参照して本発明の実施の形態について説明する。
【００５５】
［画像符号化装置の構成例］
図９は、本発明を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
【００５６】
この画像符号化装置５１は、例えば、H．264及びMPEG-4 Part10（Advanced Video Coding）（以下H．264/AVCと記す）方式をベースに、入力された画像を圧縮符号化する。
【００５７】
図９の例において、画像符号化装置５１は、A/D変換部６１、画面並べ替えバッファ６２、演算部６３、直交変換部６４、量子化部６５、可逆符号化部６６、蓄積バッファ６７、逆量子化部６８、逆直交変換部６９、演算部７０、デブロックフィルタ７１、フレームメモリ７２、イントラ予測部７３、動き予測部７４、動き補償部７５、予測画像選択部７６、およびレート制御部７７により構成されている。
【００５８】
A/D変換部６１は、入力された画像をA/D変換し、画面並べ替えバッファ６２に出力し、記憶させる。画面並べ替えバッファ６２は、記憶した表示の順番のフレームの画像を、Gop（Group of Picture）に応じて、符号化のためのフレームの順番に並べ替える。
【００５９】
演算部６３は、画面並べ替えバッファ６２から読み出された画像から、予測画像選択部７６により選択されたイントラ予測部７３からの予測画像または動き補償部７５からの予測画像を減算し、その差分情報を直交変換部６４に出力する。直交変換部６４は、演算部６３からの差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を出力する。量子化部６５は直交変換部６４が出力する変換係数を量子化する。
【００６０】
量子化部６５の出力となる、量子化された変換係数は、可逆符号化部６６に入力され、ここで可変長符号化、算術符号化等の可逆符号化が施され、圧縮される。
【００６１】
可逆符号化部６６は、イントラ予測を示す情報をイントラ予測部７３から取得し、インター予測モードを示す情報などを動き補償部７５から取得する。なお、イントラ予測を示す情報およびインター予測を示す情報は、以下、それぞれ、イントラ予測モード情報およびインター予測モード情報とも称する。
【００６２】
可逆符号化部６６は、量子化された変換係数を符号化するとともに、イントラ予測を示す情報、インター予測モードを示す情報などを符号化し、圧縮画像におけるヘッダ情報の一部とする。可逆符号化部６６は、符号化したデータを蓄積バッファ６７に供給して蓄積させる。
【００６３】
例えば、可逆符号化部６６においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H．264/AVC方式で定められているCAVLC（Context-Adaptive Variable Length Coding）などがあげられる。算術符号化としては、CABAC（Context-Adaptive Binary Arithmetic Coding）などがあげられる。
【００６４】
蓄積バッファ６７は、可逆符号化部６６から供給されたデータを、符号化された圧縮画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
【００６５】
また、量子化部６５より出力された、量子化された変換係数は、逆量子化部６８にも入力され、逆量子化された後、さらに逆直交変換部６９において逆直交変換される。逆直交変換された出力は演算部７０により予測画像選択部７６から供給される予測画像と加算されて、局部的に復号された画像となる。
【００６６】
演算部７０からの復号された画像は、これから符号化される画像の参照画像として、イントラ予測部７３とデブロックフィルタ７１に出力される。デブロックフィルタ７１は、復号された画像のブロック歪を除去した後、フレームメモリ７２に供給し、蓄積させる。フレームメモリ７２は、蓄積された参照画像を動き予測部７４および動き補償部７５に出力する。
【００６７】
この画像符号化装置５１においては、例えば、画面並べ替えバッファ６２からのＩピクチャ、Ｂピクチャ、およびＰピクチャが、イントラ予測（イントラ処理とも称する）する画像として、イントラ予測部７３に供給される。また、画面並べ替えバッファ６２から読み出されたＢピクチャおよびＰピクチャが、インター予測（インター処理とも称する）する画像として、動き予測部７４に供給される。
【００６８】
イントラ予測部７３は、画面並べ替えバッファ６２から読み出されたイントラ予測する画像と演算部７０からの参照画像に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。
【００６９】
その際、イントラ予測部７３は、候補となる全てのイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして選択する。
【００７０】
イントラ予測部７３は、最適イントラ予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部７６に供給する。イントラ予測部７３は、予測画像選択部７６により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報を、可逆符号化部６６に供給する。可逆符号化部６６は、この情報を符号化し、圧縮画像におけるヘッダ情報の一部とする。
【００７１】
動き予測部７４は、インター処理する画像とフレームメモリ７２からの参照画像に基づいて、候補となる全てのインター予測モードのブロックの動き予測を行い、各ブロックの動きベクトルを生成する。動き補償部７４は、生成した動きベクトルの情報を、動き補償部７５に出力する。
【００７２】
また、動き予測部７４は、予測画像選択部７６により最適インター予測モードの対象ブロックの予測画像が選択された場合、最適インター予測モードを示す情報（インター予測モード情報）、動きベクトル情報、参照フレーム情報などを可逆符号化部６６に出力する。
【００７３】
動き補償部７５は、フレームメモリ７２からの参照画像に補間フィルタを行う。動き補償部７５は、動き予測部７４からの動きベクトルまたは周囲のブロックの動きベクトルから求められた動きベクトルを用いて、候補となる全てのインター予測モードのブロックについて、フィルタ後の参照画像に補償処理を行い、予測画像を生成する。このとき、動き補償部７５は、Ｂピクチャにおいて、ダイレクト・モードまたは双予測モードの場合、すなわち、異なる複数の参照画像を用いる予測モードの場合、対象となるブロックの参照先の画素が、それらの参照画像において画面外であるか否かに応じた重み付け予測を行って、予測画像を生成する。
【００７４】
例えば、動き補償部７５においては、対象ブロックの参照先が、一方の参照画像において画面外であり、他方の参照画像において画面内である場合、一方の参照画像の重みを小さくし、他方の参照画像の重みを大きくした重み付け予測が行われる。
【００７５】
この重みは動き補償部７５において算出されてもよいし、固定の値が用いられてもよい。なお、算出される場合には、可逆符号化部６６に供給され、圧縮画像のヘッダに付加されて復号側へ送信される。
【００７６】
さらに、動き補償部７５は、候補となる全てのインター予測モードに対して、処理対象のブロックのコスト関数値を求め、最もコスト関数値の小さい最適インター予測モードを決定する。動き補償部７５は、最適インター予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部７６に供給する。
【００７７】
予測画像選択部７６は、イントラ予測部７３または動き補償部７５より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードから、最適予測モードを決定する。そして、予測画像選択部７６は、決定された最適予測モードの予測画像を選択し、演算部６３，７０に供給する。このとき、予測画像選択部７６は、点線に示されるように、予測画像の選択情報を、イントラ予測部７３または動き予測部７４に供給する。
【００７８】
レート制御部７７は、蓄積バッファ６７に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部６５の量子化動作のレートを制御する。
【００７９】
［動き補償部の特徴］
次に、図１０を参照して、動き補償部７５の特徴について説明する。
【００８０】
動き補償部７５においては、参照ピクチャ（画像）を２枚使って重み付き予測が行われる双予測またはダイレクト・モードにおいて、L0およびL1の両方の参照ピクセル（画素）が画面の中にあれば、H．264/AVC方式の重み付き予測が行われる。これに対して、L0またはL1の一方の参照ピクセル（画素）が画面の外で、他方の参照ピクセルが画面の中であれば、画面の中の参照ピクセルだけを使って予測が行われる。
【００８１】
図１０の例においては、図８の例と同様に、左から、L0参照ピクチャ、符号化対象ピクチャ、L1参照ピクチャが時間経過順に示されている。各ピクチャにおいて、一点鎖線は画面端を表しており、実線と一点鎖線の間の領域は、図５で上述した画面端のコピーにより拡張された領域を表している。
【００８２】
また、各ピクチャにおける破線で囲まれた領域は、L0参照ピクチャにおいては、L0参照の参照領域を表し、符号化対象ピクチャにおいては、動き補償領域を表し、L1参照ピクチャにおいては、L1参照の参照領域を表している。そのうち、特に、L0参照の参照領域とL1参照の参照領域が、図１０の下部に示されている。
【００８３】
そして、図１０においては、符号化対象ピクチャにおけるハッチングされた菱形の物体Ｐが左上から右下に動いている状態にあり、L0参照ピクチャにおいては、その物体Ｐの一部が画面の端を超えて外にある例が示されている。すなわち、L0参照ピクチャの参照領域は、その一部が画面の外にあり、L1参照ピクチャの参照領域は、すべて画面の中にある。
【００８４】
そこで、動き補償部７５は、L0参照ピクチャの参照領域のうち、画面の中の部分は、H．264/AVC方式の重み付き予測により予測画像を生成し、L0参照ピクチャの参照領域のうち、画面の外の部分については、それを使わずに、L1参照ピクチャの参照領域のみを使って予測画像を生成する。すなわち、L0参照ピクチャにおいては、L0参照の参照領域に示されるように、参照領域は、外側の破線四角であるが、実際には、内側の破線四角内の領域しか予測に用いられない。
【００８５】
例えば、L0参照ピクチャの参照領域のうち、画面の外の部分については、L0参照ピクチャの参照領域に対する重みが０で、L1参照ピクチャの参照領域に対する重みが１の重み付き予測が行われる。なお、重みは、０、１でなくてもよく、一方の参照領域における画面の外の部分についての重みが、他方の参照領域における画面の中の部分についての重みより小さくされるようにすることもできる。この場合の重みは、固定であってもよいし、最適な重みが算出されてもよい。
【００８６】
これにより、画面の外にあって画面内の画素値のコピーであった不正確な情報が使われない、あるいは、その重みが小さくされるので、画面端における予測性能を改善することができる。
【００８７】
［動き補償部の構成例］
図１１は、動き補償部の構成例を示す図である。
【００８８】
図１１の動き補償部７５は、補間フィルタ８１、補償処理部８２、選択部８３、動きベクトル予測部８４、および予測モード決定部８５により構成されている。
【００８９】
補間フィルタ８１には、フレームメモリ７２からの参照フレーム（参照画像）情報が入力される。補間フィルタ８１は、参照フレームの画素の間を補間して、縦横４倍に拡大し、補償処理部８２に出力する。
【００９０】
補償処理部８２は、L0領域選択部９１、L1領域選択部９２、演算部９３、画面端判定部９４、重み算出部９５により構成されている。なお、図１１の例の補償処理部８２においては、Ｂピクチャの場合の例が示されている。
【００９１】
補間フィルタ８１からの拡大された参照フレーム情報は、L0領域選択部９１、L1領域選択部９２、および画面端判定部９４に入力される。
【００９２】
L0領域選択部９１は、選択部８３からの予測モード情報とL0動きベクトル情報に応じて、拡大されたL0参照フレーム情報から、対応するL0参照領域を選択して、演算部９３に出力する。この出力された参照領域の情報は、L0予測モードの場合、L0予測情報として、予測モード決定部８５に出力される。
【００９３】
L1領域選択部９２は、選択部８３からの予測モード情報とL1動きベクトル情報に応じて、拡大されたL1参照フレーム情報から、対応するL1参照領域を選択して、演算部９３に出力する。この出力された参照領域の情報は、L1予測モードの場合、L1予測情報として、予測モード決定部８５に出力される。
【００９４】
演算部９３は、乗算器９３Ａ、乗算器９３Ｂ、および加算器９３Ｃにより構成される。乗算器９３Ａは、L0領域選択部９１からのL0参照領域情報に、画面端判定部９４からのL0重み情報を乗算し、その結果を、加算器９３Ｃに出力する。乗算器９３Ｂは、L1領域選択部９２からのL1参照領域情報に、画面端判定部９４からのL1重み情報を乗算し、その結果を、加算器９３Ｃに出力する。加算器９３Ｃは、L0およびL1重み情報で重み配分されたL0参照領域およびL1参照領域を加算して、重み付き予測情報（Bi-pred予測情報）として、予測モード決定部８５に出力する。
【００９５】
画面端判定部９４には、補間フィルタ８１からの拡大された参照フレーム情報と選択部８３からの動きベクトル情報が供給される。画面端判定部９４は、それらの情報に基づいて、L0参照ピクセルまたはL1参照ピクセルが画面の外であるか否かを判定し、その判定結果に応じて、乗算器９３Ａおよび乗算器９３Ｂに供給する重み係数を出力する。例えば、どちらも画面の中または外の場合、重み係数W=0.5が出力される。どちらか一方が画面の外で、他方が画面内である場合、少なくとも、画面の外の参照ピクセルに対しては、画面の中の参照ピクセルよりも小さい重み係数が与えられる。
【００９６】
重み算出部９５は、入力画像の特性に応じて、L0参照ピクセルおよびL1参照ピクセルのどちらか一方だけが画面の外である場合に用いられる重み係数を算出し、画面端判定部９４に供給する。また、この算出された重み係数は、復号側に送るために、可逆符号化部６６にも出力される。
【００９７】
選択部８３は、予測モードに応じて、動き予測部７４により探索された動きベクトル情報および動きベクトル予測部８４により求められた動きベクトル情報のどちらか一方を選択し、選択した動きベクトル情報を、画面端判定部９４、L0領域選択部９１、およびL1領域選択部９２に供給する。
【００９８】
動きベクトル予測部８４は、スキップ・モードやダイレクト・モードのように、動きベクトルを復号側に送らないモードに応じて動きベクトルを予測し、選択部８３に供給する。  
【００９９】
この動きベクトルの予測方法は、H．264/AVC方式と同様であり、動きベクトル予測部８４においては、周囲のブロックの動きベクトルからメディアン予測で予測する空間予測や、コ・ロケーティッドブロック（co-located block）の動きベクトルから予測するテンポラル予測などが、モードに応じて行われる。コ・ロケーティッドブロックとは、対象ブロックのピクチャと異なるピクチャ（前または後に位置するピクチャ）のブロックであって、対象ブロックに対応する位置のブロックである。
【０１００】
なお、図１１の例において、その図示は省略するが、求める際の周囲のブロックの動きベクトル情報などは選択部８３より得られる。
【０１０１】
［重み係数の説明］
画面端判定部９４による判定結果に応じて供給され、演算部９３において乗算される重み係数情報は、L0およびL1のうち一方の参照ピクセルが画面の外にある場合に、他方の参照ピクセルに乗ずる重みである。その値は、0.5から1の間をとり、画面の外にある一方のピクセルに乗じる重みを足し合わせると、1になる。
【０１０２】
したがって、L0重み係数情報がWL0ならば、L1重み係数情報はWL1=1-WL0となる。これらの結果、図１１の演算部９３における演算は、次の式（３）となる。
【０１０３】
Y = WL0IL0 + (1-WL0)IL1                                          ・・・（３）
ここで、Yは、重み付き予測信号であり、IL0は、L0参照ピクセルであり、IL1は、L1参照ピクセルである。
【０１０４】
また、この重み係数は、重み算出部９５により算出可能である。重み算出部９５においては、例えば、画素間の相関の強弱に基づいて重みが算出される。画面内で隣り合う画素に相関が弱いとき、すなわち、隣り合う画素値に隔たりが大きいことが多いときは、画面端のピクセルをコピーしたピクセル値は信頼度が低いため、重み情報Wは１に近づき、相関が強いときは、H．264/AVC方式のとおり、画面端のピクセルをコピーしたピクセル値も信頼できるため、重み情報Wは0.5に近づく。
【０１０５】
この画素間の相関の強弱を調べる方法は、隣り合う画素の差分の絶対値の画面内の平均を計算する方法や、画素値の分散の大きさを算出する方法、フーリエ変換などを用いて高周波成分の大きさを求めて調べる方法などがある。
【０１０６】
最も簡単な例として、画面の外は信頼しないことにして、重みWを1で固定するようにしてもよい。この場合、重み情報を復号側に送る必要がなくなるので、ストリーム情報に含めなくてもよい。
【０１０７】
また、画面の外の重みが０になるので、演算部９３の乗算器９３Ａ、乗算器９３Ｂ、加算器９３Ｃが不要になり、より簡単な選択回路に置き換えることができる。
【０１０８】
［画像符号化装置の符号化処理の説明］
次に、図１２のフローチャートを参照して、図９の画像符号化装置５１の符号化処理について説明する。
【０１０９】
ステップＳ１１において、A/D変換部６１は入力された画像をA/D変換する。ステップＳ１２において、画面並べ替えバッファ６２は、A/D変換部６１より供給された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
【０１１０】
ステップＳ１３において、演算部６３は、ステップＳ１２で並び替えられた画像と予測画像との差分を演算する。予測画像は、インター予測する場合は動き補償部７５から、イントラ予測する場合はイントラ予測部７３から、それぞれ予測画像選択部７６を介して演算部６３に供給される。
【０１１１】
差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
【０１１２】
ステップＳ１４において、直交変換部６４は演算部６３から供給された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。ステップＳ１５において、量子化部６５は変換係数を量子化する。この量子化に際しては、後述するステップＳ２６の処理で説明されるように、レートが制御される。
【０１１３】
以上のようにして量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップＳ１６において、逆量子化部６８は量子化部６５により量子化された変換係数を量子化部６５の特性に対応する特性で逆量子化する。ステップＳ１７において、逆直交変換部６９は逆量子化部６８により逆量子化された変換係数を直交変換部６４の特性に対応する特性で逆直交変換する。
【０１１４】
ステップＳ１８において、演算部７０は、予測画像選択部７６を介して入力される予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像（演算部６３への入力に対応する画像）を生成する。ステップＳ１９においてデブロックフィルタ７１は、演算部７０より出力された画像をフィルタリングする。これによりブロック歪みが除去される。ステップＳ２０においてフレームメモリ７２は、フィルタリングされた画像を記憶する。
【０１１５】
ステップＳ２１において、イントラ予測部７３は、イントラ予測処理を行う。具体的には、イントラ予測部７３は、画面並べ替えバッファ６２から読み出されたイントラ予測する画像と、演算部７０から供給された画像（フィルタリングされてない画像）に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、イントラ予測画像を生成する。
【０１１６】
イントラ予測部７３は、候補となる全てのイントラ予測モードに対してコスト関数値を算出する。イントラ予測部７３は、算出されたコスト関数値のうち、最小値を与えるイントラ予測モードを、最適イントラ予測モードとして決定する。そして、イントラ予測部７３は、最適イントラ予測モードで生成されたイントラ予測画像とそのコスト関数値を、予測画像選択部７６に供給する。
【０１１７】
画面並べ替えバッファ６２から供給される処理対象の画像がインター処理される画像である場合、参照される画像がフレームメモリ７２から読み出され、スイッチ７３を介して動き予測部７４および動き補償部７５に供給される。
【０１１８】
ステップＳ２２において、動き予測部７４と動き補償部７５は、動き予測・補償処理を行う。具体的には、動き予測部７４は、インター処理する画像とフレームメモリ７２からの参照画像に基づいて、候補となる全てのインター予測モードのブロックの動き予測を行い、各ブロックの動きベクトルを生成する。動き補償部７４は、生成した動きベクトルの情報を、動き補償部７５に出力する。
【０１１９】
動き補償部７５は、フレームメモリ７２からの参照画像に補間フィルタを行う。動き補償部７５は、動き予測部７４からの動きベクトルまたは周囲のブロックの動きベクトルから求められた動きベクトルを用いて、候補となる全てのインター予測モードのブロックについて、フィルタ後の参照画像に補償処理を行い、予測画像を生成する。
【０１２０】
このとき、動き補償部７５は、Ｂピクチャにおいて、ダイレクト・モードまたは双予測モードの場合、すなわち、異なる複数の参照画像を用いる予測モードの場合、対象となるブロックの参照先の画素が、それらの参照画像において画面外であるか否かに応じた重み付け予測を行って、予測画像を生成する。なお、このＢピクチャの場合の補償処理については、図１４を参照して後述する。
【０１２１】
さらに、動き補償部７５は、候補となる全てのインター予測モードに対して、処理対象のブロックのコスト関数値を求め、最もコスト関数値の小さい最適インター予測モードを決定する。動き補償部７５は、最適インター予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部７６に供給する。
【０１２２】
ステップＳ２３において、予測画像選択部７６は、イントラ予測部７３および動き補償部７５より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測画像選択部７６は、決定した最適予測モードの予測画像を選択し、演算部６３，７０に供給する。この予測画像が、上述したように、ステップＳ１３，Ｓ１８の演算に利用される。
【０１２３】
なお、この予測画像の選択情報は、図９の点線に示されるように、イントラ予測部７３または動き予測部７４に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部７３は、最適イントラ予測モードを示す情報（すなわち、イントラ予測モード情報）を、可逆符号化部６６に供給する。
【０１２４】
最適インター予測モードの予測画像が選択された場合、動き予測部７４は、最適インター予測モードを示す情報、動きベクトル情報や参照フレーム情報を、可逆符号化部６６に出力する。なお、動き補償部７５において重みが算出される場合、動き補償部７５にもインター予測画像が選択された情報が供給されるので、動き補償部７５は、算出した重み係数情報を、可逆符号化部６６に出力する。
【０１２５】
ステップＳ２４において、可逆符号化部６６は量子化部６５より出力された量子化された変換係数を符号化する。すなわち、差分画像が可変長符号化、算術符号化等の可逆符号化され、圧縮される。このとき、上述したステップＳ２３において可逆符号化部６６に入力された、イントラ予測部７３からのイントラ予測モード情報、または、動き補償部７５からの最適インター予測モードや、上述した各情報なども符号化され、ヘッダ情報に付加される。
【０１２６】
例えば、インター予測モードを示す情報は、マクロブロック毎に符号化される。動きベクトル情報や参照フレーム情報は、対象となるブロック毎に符号化される。なお、重み係数の情報は、フレーム毎であってもよいし、シーケンス（撮像開始から終了までのシーン）毎であってもよい。
【０１２７】
ステップＳ２５において蓄積バッファ６７は差分画像を圧縮画像として蓄積する。蓄積バッファ６７に蓄積された圧縮画像が適宜読み出され、伝送路を介して復号側に伝送される。
【０１２８】
ステップＳ２６においてレート制御部７７は、蓄積バッファ６７に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部６５の量子化動作のレートを制御する。
【０１２９】
［予測モード選択処理の説明］
【０１３０】
図９の画像符号化装置５１においては、当該マクロブロックを符号化する際、複数の予測モードの中から最適なモードを決定する必要がある。代表的な決定方法は、マルチパス・エンコード方式によるもので、次の式（４）または式（５）を用いてコスト（すなわち、コスト関数値）を最小化するように動きベクトルと参照ピクチャ、および予測モードが決定される。
【０１３１】
Cost = SATD + λMotionGenBit                                    ・・・（４）
Cost = SSD + λModeGenBit                                        ・・・（５）
【０１３２】
ここで、SATD(Sum of Absolute Transformed Difference)は、予測誤差にアダマール変換を施し、その絶対値和である。SSD ( Sum of Square Difference ) は２乗誤差和で、各ピクセルの予測誤差の２乗の総和である。GenBit (Generated Bit) は、当該マクロブロックを、当該候補モードで符号化した場合の発生ビット量である。 λMotion、λModeは、ラグランジュ乗数と呼ばれる変数で量子化パラメータＱＰ、Ｉ／ＰピクチャおよびＢピクチャによって決まる。
【０１３３】
上述した式（４）または式（５）を用いた画像符号化装置５１の予測モード選択処理を、図１３を参照して説明する。なお、この予測モード選択処理は、図１２のステップＳ２１乃至Ｓ２３において、予測モード選択に着目した処理である。
【０１３４】
ステップＳ３１において、イントラ予測部７３および動き補償部７５（予測モード決定部８５）は、それぞれ、量子化パラメータＱＰおよびピクチャタイプからλを算出する。その矢印は図示しないが、量子化パラメータＱＰは、量子化部６５より供給される。
【０１３５】
ステップＳ３２において、イントラ予測部７３は、イントラ４×４モードを、コスト関数値が小さくなるように決定する。イントラ４×４モードには、９種類の予測モードがあり、その中から、コスト関数値の最も小さいものがイントラ４×４モードとして決定される。
【０１３６】
ステップＳ３３において、イントラ予測部７３は、イントラ１６×１６モードを、コスト関数値が小さくなるように決定する。イントラ１６×１６モードには、４種類の予測モードがあり、その中から、コスト関数値の最も小さいものがイントラ１６×１６モードとして決定される。
【０１３７】
そして、ステップＳ３４において、イントラ予測部７３は、イントラ４×４モードおよびイントラ１６×１６のうち、コスト関数値の小さいモードを、最適イントラモードとして決定する。イントラ予測部７３は、決定した最適イントラモードで求めた予測画像と、そのコスト関数値を予測画像選択部７６に供給する。
【０１３８】
以上のステップＳ３２乃至Ｓ３４の処理は、図１２のステップＳ２１に対応する処理である。
【０１３９】
ステップＳ３５において、動き予測部７４および動き補償部７５は、図３の下部に示される８×８マクロブロックサブパーティションにおいて、次の各モードについて動きベクトルおよび参照ピクチャを、コスト関数値が小さくなるように決定する。各モードには、８×８、８×４、４×８、４×４、およびＢピクチャの場合ダイレクト・モードが含まれる。
【０１４０】
ステップＳ３６において、動き予測部７４および動き補償部７５は、処理中の画像がＢピクチャであるか否かを判定し、Ｂピクチャであると判定した場合、処理は、ステップＳ３７に進む。動き予測部７４および動き補償部７５は、ステップＳ３７において、双予測についても動きベクトルおよび参照ピクチャをコスト関数値が小さくなるように決定する。
【０１４１】
ステップＳ３６において、Ｂピクチャではないと判定された場合、ステップＳ３７はスキップされ、処理は、ステップＳ３８に進む。
【０１４２】
ステップＳ３８において、動き予測部７４および動き補償部７５は、図３の上部に示されるマクロブロックパーティションにおいて、次の各モードについて動きベクトルおよび参照ピクチャを、コスト関数値が小さくなるように決定する。各モードには、１６×１６、１６×８、８×１６、ダイレクト・モード、およびスキップ・モードが含まれる。
【０１４３】
ステップＳ３９において、動き予測部７４および動き補償部７５は、処理中の画像がＢピクチャであるか否かを判定し、Ｂピクチャであると判定した場合、処理は、ステップＳ４０に進む。動き予測部７４および動き補償部７５は、ステップＳ４０において、双予測についても動きベクトルおよび参照ピクチャをコスト関数値が小さくなるように決定する。
【０１４４】
ステップＳ３９において、Ｂピクチャではないと判定された場合、ステップＳ４０はスキップされ、処理は、ステップＳ４１に進む。
【０１４５】
ステップＳ４１において、動き補償部７５（の予測モード決定部８５）は、上述したマクロブロックパーティションおよびサブマクロブロックパーティションの中から、コスト関数値の小さいモードを、最適インターモードとして決定する。予測モード決定部８５は、決定した最適インターモードで求めた予測画像と、そのコスト関数値を予測画像選択部７６に供給する。
【０１４６】
以上のステップＳ３５乃至Ｓ４１の処理は、図１２のステップＳ２２に対応する処理である。
【０１４７】
ステップＳ４２において、予測画像選択部７６は、最適イントラモードおよび最適インターモードの中から、最もコスト関数値の小さいモードを決定する。このステップＳ４２の処理は、図１２のステップＳ２３に対応する処理である。
【０１４８】
以上のようにして、動きベクトルおよび参照ピクチャ（インターの場合）、および予測モードが決定される。ここで、例えば、図１３のステップＳ３７やステップＳ４０のＢピクチャの場合の双予測およびダイレクト・モードにおいて、動きベクトルを決定する際、次に説明する図１４の処理により補償された予測画像が使用される。
【０１４９】
図１４は、Ｂピクチャの場合の補償処理を説明するフローチャートである。すなわち、図１４は、図１２のステップＳ２２における動き予測・補償処理のＢピクチャに特化した処理を表している。なお、図１４の例においては、簡単のため、画面外の参照ピクセルに対する重み係数が０で、画面内の参照ピクセルに対する重み係数が１の場合を説明する。
【０１５０】
ステップＳ５１において、選択部８３は、処理対象のモードが、ダイレクト・モードあるいは双予測であるか否かを判定する。ステップＳ５１において、ダイレクト・モードおよび双予測ではないと判定された場合、処理は、ステップＳ５２に進む。
【０１５１】
ステップＳ５２において、補償処理部８２は、当該ブロックに対して、モード（L0予測またはL1予測）に応じた予測を行う。
【０１５２】
すなわち、選択部８３は、L0予測の場合、L0領域選択部９１のみに、予測モード情報とL0動きベクトル情報を送る。L0領域選択部９１は、選択部８３からの予測モード（L0予測を示す）情報とL0動きベクトル情報に応じて、拡大されたL0参照フレーム情報から、対応するL0参照領域を選択して、予測モード決定部８５に出力する。L1の場合も同様である。
【０１５３】
ステップＳ５１において、ダイレクト・モードまたは双予測であると判定された場合、処理は、ステップＳ５３に進む。この場合、選択部８３からの予測モード情報と動きベクトル情報は、L0領域選択部９１、L1領域選択部９２、および画面端判定部９４に供給される。
【０１５４】
これに対応して、L0領域選択部９１は、選択部８３からの予測モード（ダイレクト・モードまたは双予測を示す）情報とL0動きベクトル情報に応じて、拡大されたL0参照フレーム情報から、対応するL0参照領域を選択して、演算部９３に出力する。L1領域選択部９２は、選択部８３からの予測モード情報とL1動きベクトル情報に応じて、拡大されたL1参照フレーム情報から、対応するL1参照領域を選択して、演算部９３に出力する。
【０１５５】
そして、画面端判定部９４は、以下のステップＳ５３乃至Ｓ５７、およびＳ６０において、参照ピクセルが画面の外であるか否かを判定する。以下の説明においては、図１５に示される当該予測ブロックにおける当該予測ピクセルの座標が参照される。
【０１５６】
図１５において、block_size_xは、当該予測ブロックのx方向の大きさを表し、block_size_yは、当該予測ブロックのy方向の大きさを表している。また、iは、当該予測ブロックにおける当該予測ピクセルのx座標を表し、jは、当該予測ブロックにおける当該予測ピクセルのy座標を表している。
【０１５７】
ここで、図１５の場合、当該予測ブロックが４×４画素の例が示されているので、(block_size_x , block_size_y) = (4,4)、0≦i,j≦3となる。したがって、図１５に示される当該予測ピクセルは、x=i=2,y=j=0の座標であることがわかる。
【０１５８】
ステップＳ５３において、画面端判定部９４は、値が0から始まるjがblock_size_yより小さいか否かを判定し、jがblock_size_yより大きいと判定した場合、処理を終了する。一方、ステップＳ５３において、jがblock_size_yより小さいと判定された場合、すなわち、jが0乃至3の間、処理はステップＳ５４に進み、それ以降の処理が繰り返される。
【０１５９】
ステップＳ５４において、画面端判定部９４は、値が0から始まるiがblock_size_xより小さいか否かを判定し、iがblock_size_xより大きいと判定した場合、処理は、ステップＳ５３に戻り、それ以降の処理が繰り返される。また、ステップＳ５４において、iがblock_size_xより小さいと判定された場合、すなわち、iが0乃至3の間、処理はステップＳ５５に進み、それ以降の処理が繰り返される。
【０１６０】
ステップＳ５５において、画面端判定部９４は、L0動きベクトル情報mvL0x,mvL0yと、L1動きベクトル情報mvL1x,mvL1yを用いて、参照ピクセルを求める。すなわち、L0の参照先ピクセルのy座標yL0,x座標xL0およびL1の参照先ピクセルのy座標yL1,x座標xL1は、次の式（６）で求められる。
【０１６１】
yL0 = mvL0y + j
xL0 = mvL0x + i
yL1 = mvL1y + j
xL1 = mvL1x + i                                                  ・・・（６）
【０１６２】
ステップＳ５６において、画面端判定部９４は、L0の参照先ピクセルのy座標yL0が０より小さいか、あるいは画枠の高さ(height:画面のy方向の大きさ)以上であるか、または、L0の参照先ピクセルのx座標xL0が０より小さいか、あるいは画枠の幅(width:画面のx方向の大きさ)以上であるかを判定する。
【０１６３】
すなわち、ステップＳ５６において、次の式（７）が満たされるか否かが判定される。
【数１】
2011147049.tif 000003
【０１６４】
ステップＳ５６において、式（７）が満たされると判定された場合、処理は、ステップＳ５７に進む。ステップＳ５７において、画面端判定部９４は、L1の参照先ピクセルのy座標yL1が０より小さいか、あるいは画枠の高さ(height:画面のy方向の大きさ)以上であるか、または、L1の参照先ピクセルのx座標xL1が０より小さいか、あるいは画枠の幅(width:画面のx方向の大きさ)以上であるかを判定する。
【０１６５】
すなわち、ステップＳ５７において、次の式（８）が満たされるか否かが判定される。
【数２】
2011147049.tif 000004
【０１６６】
ステップＳ５７において、式（８）が満たされると判定された場合、処理は、ステップＳ５８に進む。この場合、L0参照先ピクセルも、L1参照先ピクセルも、画面外のピクセルであるので、画面端判定部９４は、当該ピクセルに対して、H.264/AVC方式による重み付き予測の重み係数情報を、演算部９３に供給する。これに対応して、ステップＳ５８において、演算部９３は、当該ピクセルに対して、H.264/AVC方式による重み付き予測を行う。
【０１６７】
ステップＳ５７において、式（８）が満たされないと判定された場合、処理は、ステップＳ５９に進む。この場合、L0参照先ピクセルが、画面外のピクセルであり、L1参照先ピクセルが画面内のピクセルであるので、画面端判定部９４は、当該ピクセルに対して、L0重み係数情報（０）、L1重み係数情報（１）を、演算部９３に供給する。これに対応して、ステップＳ５９において、演算部９３は、当該ピクセルに対して、L1参照ピクセルのみを使って予測を行う。
【０１６８】
ステップＳ５６において、式（７）が満たされないと判定された場合、処理は、ステップＳ６０に進む。ステップＳ６０において、画面端判定部９４は、L1の参照先ピクセルのy座標yL1が０より小さいか、あるいは画枠の高さ(height:画面のy方向の大きさ)以上であるか、または、L1の参照先ピクセルのx座標xL1が０より小さいか、あるいは画枠の幅(width:画面のx方向の大きさ)以上であるかを判定する。
【０１６９】
すなわち、ステップＳ６０においても、上述した式（８）が満たされるか否かが判定される。ステップＳ６０において、式（８）が満たされると判定された場合、処理は、ステップＳ６１に進む。
【０１７０】
この場合、L1参照先ピクセルが、画面外のピクセルであり、L0参照先ピクセルが画面内のピクセルであるので、画面端判定部９４は、当該ピクセルに対して、L0重み係数情報（１）、L1重み係数情報（０）を、演算部９３に供給する。これに対応して、ステップＳ６１において、演算部９３は、当該ピクセルに対して、L0参照ピクセルのみを使って予測を行う。
【０１７１】
一方、ステップＳ６０において、式（８）が満たされないと判定された場合、どちらのピクセルも画面内のピクセルであるので、処理は、ステップＳ５８に進み、当該ピクセルに対して、H.264/AVC方式による重み付き予測が行われる。
【０１７２】
ステップＳ５８、Ｓ５９、またはＳ６１において演算部９３により重み付き予測が行われた結果の重み付き(Bi-pred)予測情報は、予測モード決定部８５に出力される。
【０１７３】
以上の処理をまとめると、図１６に示されるようになる。図１６の例においては、参照ピクセル位置と処理方法の対応関係が示されている。
【０１７４】
すなわち、L0参照領域における当該参照ピクセルの位置も、L1参照領域における当該参照ピクセルの位置も、画面内である場合、すなわち、図１４のステップＳ５７のＹｅｓの場合、当該ピクセルに対する処理方法として、H.264/AVC方式の重み付き予測が用いられる。
【０１７５】
L0参照領域における当該参照ピクセルの位置が画面の外であり、L1参照領域における当該参照ピクセルの位置が画面内である場合、すなわち、図１４のステップＳ５７のＮｏの場合、当該ピクセルに対する処理方法として、画面外のL0参照ピクセルよりも画面内のL1参照ピクセルに重みを置く重み付き予測が用いられる。なお、図１４に示される例は、重み付き係数が０と１の例であるので、L1参照ピクセルのみ使う予測が用いられる。
【０１７６】
L1参照領域における当該参照ピクセルの位置が画面の外であり、L0参照領域における当該参照ピクセルの位置が画面内である場合、すなわち、図１４のステップＳ６０のＹｅｓの場合、当該ピクセルに対する処理方法として、画面外のL1参照ピクセルよりも画面内のL0参照ピクセルに重みを置く重み付き予測が用いられる。なお、図１４に示される例は、重み付き係数が０と１の例であるので、L0参照ピクセルのみ使う予測が用いられる。
【０１７７】
L0参照領域における当該参照ピクセルの位置も、L1参照領域における当該参照ピクセルの位置も、画面外である場合、すなわち、図１４のステップＳ６０のＮｏの場合、当該ピクセルに対する処理方法として、H.264/AVC方式の重み付き予測が用いられる。
【０１７８】
次に、図１７を参照して、図１４の例の場合の効果について説明する。図１７の例において、左から順に、L0参照ピクチャ、Currentピクチャ、L1参照ピクチャの画面内が示されている。なお、L0参照ピクチャにおける破線部分は、画面外を表している。
【０１７９】
すなわち、Currentピクチャの当該ブロックで探索された動きベクトルMV(L0)が示すL0参照ピクチャの参照ブロックは、画面外部分（破線部分）と画面内部分（白線部分）で構成されており、Currentピクチャの当該ブロックで探索された動きベクトルMV(L1)が示すL1参照ピクチャの参照ブロックは、画面内部分（白線部分）で構成されている。
【０１８０】
従来、すなわちH.264/AVC方式においては、画面外部分があろうがなかろうが、重み係数w(L0)およびw(L1)を用いる当該ブロックの重み付き予測に、両方の参照ブロックが使用されていた。
【０１８１】
これに対して、本発明において（特に、図１４の例の場合）、重み係数w(L0)およびw(L1)を用いる当該ブロックの重み付き予測に、L0参照ブロックにおける画面外部分は使用されない。L0参照ブロックにおける画面外部分のみは、当該ブロックの重み付き予測に、L1参照ブロックのピクセルしか使用されない。
【０１８２】
すなわち、不正確な情報である可能性が高い画面外部分のピクセルは予測に使用されないので、H.264/AVC方式の重み予測よりも、予測精度が改善される。もちろん、重み係数を０、１にした図１４の例に限らず、画面外部分の重み係数を画面内部分の重み係数よりも低くした場合であっても、H.264/AVC方式の重み予測よりも、予測精度が改善される。
【０１８３】
符号化された圧縮画像は、所定の伝送路を介して伝送され、画像復号装置により復号される。
【０１８４】
［画像復号装置の構成例］
図１８は、本発明を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。
【０１８５】
画像復号装置１０１は、蓄積バッファ１１１、可逆復号部１１２、逆量子化部１１３、逆直交変換部１１４、演算部１１５、デブロックフィルタ１１６、画面並べ替えバッファ１１７、D/A変換部１１８、フレームメモリ１１９、イントラ予測部１２０、動き補償部１２１、およびスイッチ１２２により構成されている。
【０１８６】
蓄積バッファ１１１は伝送されてきた圧縮画像を蓄積する。可逆復号部１１２は、蓄積バッファ１１１より供給された、図９の可逆符号化部６６により符号化された情報を、可逆符号化部６６の符号化方式に対応する方式で復号する。逆量子化部１１３は可逆復号部１１２により復号された画像を、図９の量子化部６５の量子化方式に対応する方式で逆量子化する。逆直交変換部１１４は、図９の直交変換部６４の直交変換方式に対応する方式で逆量子化部１１３の出力を逆直交変換する。
【０１８７】
逆直交変換された出力は演算部１１５によりスイッチ１２２から供給される予測画像と加算されて復号される。デブロックフィルタ１１６は、復号された画像のブロック歪を除去した後、フレームメモリ１１９に供給し、蓄積させるとともに、画面並べ替えバッファ１１７に出力する。
【０１８８】
画面並べ替えバッファ１１７は、画像の並べ替えを行う。すなわち、図９の画面並べ替えバッファ６２により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部１１８は、画面並べ替えバッファ１１７から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
【０１８９】
参照される画像をフレームメモリ１１９からの画像は、動き補償部１２１に供給される。演算部１１５からのデブロックフィルタ前の画像は、イントラ予測に用いられる画像として、イントラ予測部１２０に供給される。
【０１９０】
イントラ予測部１２０には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が可逆復号部１１２から供給される。イントラ予測部１２０は、この情報に基づいて、予測画像を生成し、生成した予測画像を、スイッチ１２２に出力する。
【０１９１】
動き補償部１２１には、ヘッダ情報を復号して得られた情報のうち、インター予測モード情報、動きベクトル情報、参照フレーム情報などが可逆復号部１１２から供給される。インター予測モード情報は、マクロブロック毎に送信されてくる。動きベクトル情報や参照フレーム情報は、対象ブロック毎に送信されてくる。なお、画像符号化装置５１で重み係数が算出されている場合には、その重み係数も、フレーム毎またはシーケンス毎に送られてくる。
【０１９２】
動き補償部１２１は、可逆復号部１１２からのインター予測モードに基づいて、供給された動きベクトル情報または周囲のブロックから求められる動きベクトル情報を用いて、参照画像に補償を行い、各ブロックの予測画像を生成する。このとき、動き補償部１２１は、図９の動き予測補償部７５と同様に、Ｂピクチャにおいて、ダイレクト・モードまたは双予測モードの場合、すなわち、異なる複数の参照画像を用いる予測モードの場合、対象となるブロックの参照先の画素が、それらの参照画像において画面外であるか否かに応じた重み付け予測を行って、予測画像を生成する。生成された予測画像は、スイッチ１２２を介して、演算部１１５に出力される。
【０１９３】
スイッチ１２２は、動き補償部１２１またはイントラ予測部１２０により生成された予測画像を選択し、演算部１１５に供給する。
【０１９４】
［動き補償部の構成例］
図１９は、動き補償部１２１の詳細な構成例を示すブロック図である。
【０１９５】
図１９の例においては、動き補償部１２１は、補間フィルタ１３１、補償処理部１３２、選択部１３３、および動きベクトル予測部１３４により構成されている。
【０１９６】
補間フィルタ１３１には、フレームメモリ１１９からの参照フレーム（参照画像）情報が入力される。補間フィルタ１３１は、図１１の補間フィルタ８１と同様に、参照フレームの画素の間を補間して、縦横４倍に拡大し、補償処理部１３２に出力する。
【０１９７】
補償処理部１３２は、L0領域選択部１４１、L1領域選択部１４２、演算部１４３、および画面端判定部１４４により構成されている。なお、図１９の例の補償処理部１３２においては、Ｂピクチャの場合の例が示されている。
【０１９８】
補間フィルタ１３１からの拡大された参照フレーム情報は、L0領域選択部１４１、L1領域選択部１４２、および画面端判定部１４４に入力される。
【０１９９】
L0領域選択部１４１は、選択部１３３からの予測モード情報とL0動きベクトル情報に応じて、拡大されたL0参照フレーム情報から、対応するL0参照領域を選択して、演算部１４３に出力する。この出力された参照領域の情報は、L0予測モードの場合、L0予測情報として、スイッチ１２２に出力される。
【０２００】
L1領域選択部１４２は、選択部１３３からの予測モード情報とL1動きベクトル情報に応じて、拡大されたL1参照フレーム情報から、対応するL1参照領域を選択して、演算部１４３に出力する。この出力された参照領域の情報は、L1予測モードの場合、L1予測情報として、スイッチ１２２に出力される。
【０２０１】
演算部１４３は、図１１の演算部９３と同様に、乗算器１４３Ａ、乗算器１４３Ｂ、および加算器１４３Ｃにより構成される。乗算器１４３Ａは、L0領域選択部１４１からのL0参照領域情報に、画面端判定部１４４からのL0重み情報を乗算し、その結果を、加算器１４３Ｃに出力する。乗算器１４３Ｂは、L1領域選択部１４２からのL1参照領域情報に、画面端判定部１４４からのL1重み情報を乗算し、その結果を、加算器１４３Ｃに出力する。加算器１４３Ｃは、L0およびL1重み情報で重み配分されたL0参照領域およびL1参照領域を加算して、重み付き予測情報（Bi-pred予測情報）として、スイッチ１２２に出力する。
【０２０２】
画面端判定部１４４には、可逆復号部１１２からのインター予測モード情報、補間フィルタ１３１からの拡大された参照フレーム情報、および選択部１３３からの動きベクトル情報が供給される。
【０２０３】
画面端判定部１４４は、双予測またはダイレクト・モードの場合、参照フレーム情報と動きベクトル情報に基づいて、L0参照ピクセルまたはL1参照ピクセルが画面の外であるか否かを判定し、その判定結果に応じて、乗算器１４３Ａおよび乗算器１４３Ｂに供給する重み係数を出力する。例えば、どちらも画面の中または外の場合、重み係数W=0.5が出力される。少なくとも、画面の外の参照ピクセルに対しては、画面の中の参照ピクセルよりも小さい重み係数が与えられる。
【０２０４】
また、図１１の重み算出部９５により重み係数が算出されている場合には、その重み係数も、可逆復号部１１２から供給されるので、画面端判定部１４４は、その重み係数を、判定結果に応じて、乗算器１４３Ａおよび乗算器１４３Ｂに供給する重み係数を出力する。
【０２０５】
選択部１３３には、可逆復号部１１２からのインター予測情報と、動きベクトル情報がある場合には、それも供給される。選択部１３３は、予測モードに応じて、可逆復号部１１２からの動きベクトル情報および動きベクトル予測部１３４に求めさせた動きベクトル情報のどちらか一方を選択し、選択した動きベクトル情報を、画面端判定部１４４、L0領域選択部１４１、およびL1領域選択部１４２に供給する。
【０２０６】
動きベクトル予測部１３４は、図１１の動きベクトル予測部８４と同様に、スキップ・モードやダイレクト・モードのように、動きベクトルを復号側に送らないモードに応じて動きベクトルを予測し、選択部１３３に供給する。なお、図１９の例において、その図示は省略するが、求める際の周囲のブロックの動きベクトル情報などは選択部１３３より得られる。
【０２０７】
［画像復号装置の復号処理の説明］
次に、図２０のフローチャートを参照して、画像復号装置１０１が実行する復号処理について説明する。
【０２０８】
ステップＳ１３１において、蓄積バッファ１１１は伝送されてきた画像を蓄積する。ステップＳ１３２において、可逆復号部１１２は、蓄積バッファ１１１から供給される圧縮画像を復号する。すなわち、図９の可逆符号化部６６により符号化されたＩピクチャ、Ｐピクチャ、並びにＢピクチャが復号される。
【０２０９】
このとき、ブロック毎に、動きベクトル情報、参照フレーム情報なども復号される。また、マクロブロック毎に、予測モード情報（イントラ予測モード、またはインター予測モードを示す情報）なども復号される。さらに、図９の符号化側において重み係数が算出されている場合には、その情報も復号される。
【０２１０】
ステップＳ１３３において、逆量子化部１１３は可逆復号部１１２により復号された変換係数を、図９の量子化部６５の特性に対応する特性で逆量子化する。ステップＳ１３４において逆直交変換部１１４は逆量子化部１１３により逆量子化された変換係数を、図９の直交変換部６４の特性に対応する特性で逆直交変換する。これにより図９の直交変換部６４の入力（演算部６３の出力）に対応する差分情報が復号されたことになる。
【０２１１】
ステップＳ１３５において、演算部１１５は、後述するステップＳ１４１の処理で選択され、スイッチ１２２を介して入力される予測画像を差分情報と加算する。これにより元の画像が復号される。ステップＳ１３６においてデブロックフィルタ１１６は、演算部１１５より出力された画像をフィルタリングする。これによりブロック歪みが除去される。ステップＳ１３７においてフレームメモリ１１９は、フィルタリングされた画像を記憶する。
【０２１２】
ステップＳ１３８において、可逆復号部１１２は、圧縮画像のヘッダ部の可逆復号結果に基づいて、圧縮画像がインター予測された画像であるかどうか、即ち、可逆復号結果に最適インター予測モードを表す情報が含まれているかどうかを判定する。
【０２１３】
ステップＳ１３８で圧縮画像がインター予測された画像であると判定された場合、可逆復号部１１２は、動きベクトル情報、参照フレーム情報、最適インター予測モードを表す情報などを動き補償部１２１に供給する。重み係数が復号された場合には、それも動き補償部１２１に供給される。
【０２１４】
そして、ステップＳ１３９において、動き補償部１２１は、動き補償処理を行う。動き補償部１２１は、可逆復号部１１２からのインター予測モードに基づいて、供給された動きベクトル情報または周囲のブロックから求められる動きベクトル情報を用いて、参照画像に補償を行い、各ブロックの予測画像を生成する。
【０２１５】
このとき、動き補償部１２１は、図９の動き予測補償部７５と同様に、Ｂピクチャにおいて、ダイレクト・モードまたは双予測モードの場合、すなわち、異なる複数の参照画像を用いる予測モードの場合、対象となるブロックの参照先の画素が、それらの参照画像において画面外であるか否かに応じた重み付け予測を行って、予測画像を生成する。生成された予測画像は、スイッチ１２２を介して、演算部１１５に出力される。なお、このＢピクチャの場合の補償処理については、図１４を参照した補償処理と同様であるので、その説明を省略する。
【０２１６】
一方、ステップＳ１３８で圧縮画像がインター予測された画像ではないと判定された場合、すなわち、可逆復号結果に最適イントラ予測モードを表す情報が含まれている場合、可逆復号部１１２は、最適イントラ予測モードを表す情報をイントラ予測部１２０に供給する。
【０２１７】
そして、ステップＳ１４０において、イントラ予測部１２０は、可逆復号部１１２からの情報が表す最適イントラ予測モードで、フレームメモリ１１９からの画像に対してイントラ予測処理を行い、イントラ予測画像を生成する。そして、イントラ予測部１２０は、イントラ予測画像をスイッチ１２２に出力する。
【０２１８】
ステップＳ１４１において、スイッチ１２２は予測画像を選択し、演算部１１５に出力する。すなわち、イントラ予測部１２０により生成された予測画像、または動き補償部１２１により生成された予測画像が供給される。したがって、供給された予測画像が選択されて演算部１１５に出力され、上述したように、ステップＳ１３５において逆直交変換部１１４の出力と加算される。
【０２１９】
ステップＳ１４２において、画面並べ替えバッファ１１７は並べ替えを行う。すなわち画像符号化装置５１の画面並べ替えバッファ６２により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
【０２２０】
ステップＳ１４３において、D/A変換部１１８は、画面並べ替えバッファ１１７からの画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
【０２２１】
以上のように、画像符号化装置５１および画像復号装置１０１においては、複数の異なる参照ピクチャを用いた重み付き予測を行う双予測よびダイレクト・モードにおいて、L0またはL1参照ピクセルのどちらか一方が画面の外を参照する場合、不正確な情報である可能性が高い外のピクセルよりも、信頼性の高い他方のピクセルに対しての重みを大きくした重み予測が行われる。
【０２２２】
すなわち、本発明の場合、特許文献１の提案の場合には、全く使われなかったブロックのうち、画面内に存在するピクセルが用いられる。
【０２２３】
したがって、本発明によれば、Ｂピクチャにおける、特に、画面の端の付近のインター符号化の予測精度が改善される。これにより、残差信号が削減され、残差信号のビット量が減ることにより、符号化効率が改善される。
【０２２４】
なお、この改善は、画面が大きい場合よりも携帯端末などの小さい画面の方により効果がある。また、ビットレートが低い場合も、さらに効果的である。
【０２２５】
残差信号が削減されると、その直交変換後の係数も小さくなり、量子化後には多くの係数が０になることが期待される。H.264/AVC方式では、連続した０の個数をストリーム情報に含める。通常、０以外の値を決められた符号で置き換えるよりも、０の個数で表現する方がはるかに少ない符号量にできるため、本発明により多くの係数が０になることは、符号ビット量の削減につながる。
【０２２６】
また、本発明によれば、ダイレクト・モードの予測精度が改善されるため、ダイレクト・モードが選択されやすくなる。ダイレクト・モードは、動きベクトル情報を持たないため、特に画面の端付近で動きベクトル情報によるヘッダ情報が削減される。
【０２２７】
すなわち、従来は、L0またはL1参照ピクチャの参照領域が画面の外になっている場合に、ダイレクト・モードを選択しようとしても、上述したコスト関数値が増大してしまい、ダイレクト・モードが選択されにくいためである。
【０２２８】
さらに、これを避けるために、双予測で小さいブロックが選択された場合、各ブロックの動きベクトル情報が増えてしまうが、本発明により、ダイレクト・モードで大きいブロックが選択されることで、動きベクトル情報が削減される。また、大きいブロックに対してはビット長が少なくなるようにビット列が定められているので、本発明により大きいブロックが選択されやすくなれば、モード情報のビット量も削減される。
【０２２９】
また、低ビットレートでは、大きな量子化パラメータＱＰを用いて量子化されるため、予測精度が画質に直接的に影響するようになってしまうので、予測精度が改善されると、画面の端付近での画質が改善される。
【０２３０】
なお、上記説明では、双予測およびダイレクト・モードの場合の動き補償において、L0またはL1参照ピクセルのどちらか一方が画面の外を参照する場合、不正確な情報である可能性が高い外のピクセルよりも、信頼性の高い他方のピクセルに対しての重みを大きくした重み予測が行われるようにしたが、双予測においては、この重み予測を、動き探索の際に用いるようにしてもよい。動き探索の際に、本発明の重み予測を適用することにより、動き探索の精度が高くなるので、動き補償の際よりもさらに予測精度を改善することができる。
【０２３１】
［拡張マクロブロックサイズへの適用の説明］
図２１は、非特許文献２で提案されているブロックサイズの例を示す図である。非特許文献２では、マクロブロックサイズが３２×３２画素に拡張されている。
【０２３２】
図２１の上段には、左から、３２×３２画素、３２×１６画素、１６×３２画素、および１６×１６画素のブロック（パーティション）に分割された３２×３２画素で構成されるマクロブロックが順に示されている。図２１の中段には、左から、１６×１６画素、１６×８画素、８×１６画素、および８×８画素のブロックに分割された１６×１６画素で構成されるブロックが順に示されている。また、図２１の下段には、左から、８×８画素、８×４画素、４×８画素、および４×４画素のブロックに分割された８×８画素のブロックが順に示されている。
【０２３３】
すなわち、３２×３２画素のマクロブロックは、図２１の上段に示される３２×３２画素、３２×１６画素、１６×３２画素、および１６×１６画素のブロックでの処理が可能である。
【０２３４】
上段の右側に示される１６×１６画素のブロックは、H．264/AVC方式と同様に、中段に示される１６×１６画素、１６×８画素、８×１６画素、および８×８画素のブロックでの処理が可能である。
【０２３５】
中段の右側に示される８×８画素のブロックは、H．264/AVC方式と同様に、下段に示される８×８画素、８×４画素、４×８画素、および４×４画素のブロックでの処理が可能である。
【０２３６】
このような階層構造を採用することにより、非特許文献２の提案では、１６×１６画素のブロック以下に関しては、H．264/AVC方式と互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
【０２３７】
以上のように提案される拡張されたマクロブロックサイズにも本発明を適用することができる。
【０２３８】
また、以上においては、符号化方式としてH．264/AVC方式をベースに用いるようにしたが、本発明はこれに限らず、その他の動き予測・補償処理を行う符号化方式／復号方式を用いる画像符号化装置/画像復号装置に適用することもできる。
【０２３９】
なお、本発明は、例えば、MPEG、H．26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報（ビットストリーム）を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本発明は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本発明は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
【０２４０】
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
【０２４１】
［パーソナルコンピュータの構成例］
図２２は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０２４２】
コンピュータにおいて、CPU(Central Processing Unit)２５１、ROM(Read Only Memory)２５２、RAM(Random Access Memory)２５３は、バス２５４により相互に接続されている。
【０２４３】
バス２５４には、さらに、入出力インタフェース２５５が接続されている。入出力インタフェース２５５には、入力部２５６、出力部２５７、記憶部２５８、通信部２５９、およびドライブ２６０が接続されている。
【０２４４】
入力部２５６は、キーボード、マウス、マイクロホンなどよりなる。出力部２５７は、ディスプレイ、スピーカなどよりなる。記憶部２５８は、ハードディスクや不揮発性のメモリなどよりなる。通信部２５９は、ネットワークインタフェースなどよりなる。ドライブ２６０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア２６１を駆動する。
【０２４５】
以上のように構成されるコンピュータでは、CPU２５１が、例えば、記憶部２５８に記憶されているプログラムを入出力インタフェース２５５及びバス２５４を介してRAM２５３にロードして実行することにより、上述した一連の処理が行われる。
【０２４６】
コンピュータ（CPU２５１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア２６１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供することができる。
【０２４７】
コンピュータでは、プログラムは、リムーバブルメディア２６１をドライブ２６０に装着することにより、入出力インタフェース２５５を介して、記憶部２５８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２５９で受信し、記憶部２５８にインストールすることができる。その他、プログラムは、ROM２５２や記憶部２５８に、あらかじめインストールしておくことができる。
【０２４８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２４９】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０２５０】
例えば、上述した画像符号化装置５１や画像復号装置１０１は、任意の電子機器に適用することができる。以下にその例について説明する。
【０２５１】
［テレビジョン受像機の構成例］
図２３は、本発明を適用した画像復号装置を用いるテレビジョン受像機の主な構成例を示すブロック図である。
【０２５２】
図２３に示されるテレビジョン受像機３００は、地上波チューナ３１３、ビデオデコーダ３１５、映像信号処理回路３１８、グラフィック生成回路３１９、パネル駆動回路３２０、および表示パネル３２１を有する。
【０２５３】
地上波チューナ３１３は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ３１５に供給する。ビデオデコーダ３１５は、地上波チューナ３１３から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路３１８に供給する。
【０２５４】
映像信号処理回路３１８は、ビデオデコーダ３１５から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路３１９に供給する。
【０２５５】
グラフィック生成回路３１９は、表示パネル３２１に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路３２０に供給する。また、グラフィック生成回路３１９は、項目の選択などにユーザにより利用される画面を表示するための映像データ（グラフィック）を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路３２０に供給するといった処理も適宜行う。
【０２５６】
パネル駆動回路３２０は、グラフィック生成回路３１９から供給されたデータに基づいて表示パネル３２１を駆動し、番組の映像や上述した各種の画面を表示パネル３２１に表示させる。
【０２５７】
表示パネル３２１はLCD（Liquid Crystal Display）などよりなり、パネル駆動回路３２０による制御に従って番組の映像などを表示させる。
【０２５８】
また、テレビジョン受像機３００は、音声A/D（Analog/Digital)変換回路３１４、音声信号処理回路３２２、エコーキャンセル／音声合成回路３２３、音声増幅回路３２４、およびスピーカ３２５も有する。
【０２５９】
地上波チューナ３１３は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ３１３は、取得した音声信号を音声A/D変換回路３１４に供給する。
【０２６０】
音声A/D変換回路３１４は、地上波チューナ３１３から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路３２２に供給する。
【０２６１】
音声信号処理回路３２２は、音声A/D変換回路３１４から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル／音声合成回路３２３に供給する。
【０２６２】
エコーキャンセル／音声合成回路３２３は、音声信号処理回路３２２から供給された音声データを音声増幅回路３２４に供給する。
【０２６３】
音声増幅回路３２４は、エコーキャンセル／音声合成回路３２３から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ３２５から出力させる。
【０２６４】
さらに、テレビジョン受像機３００は、デジタルチューナ３１６およびMPEGデコーダ３１７も有する。
【０２６５】
デジタルチューナ３１６は、デジタル放送（地上デジタル放送、BS（Broadcasting Satellite）／CS（Communications Satellite）デジタル放送）の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS（Moving Picture Experts Group-Transport Stream）を取得し、それをMPEGデコーダ３１７に供給する。
【０２６６】
MPEGデコーダ３１７は、デジタルチューナ３１６から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象（視聴対象）になっている番組のデータを含むストリームを抽出する。MPEGデコーダ３１７は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路３２２に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路３１８に供給する。また、MPEGデコーダ３１７は、MPEG-TSから抽出したEPG（Electronic Program Guide)データを図示せぬ経路を介してCPU３３２に供給する。
【０２６７】
テレビジョン受像機３００は、このように映像パケットをデコードするMPEGデコーダ３１７として、上述した画像復号装置１０１を用いる。したがって、MPEGデコーダ３１７は、画像復号装置１０１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０２６８】
MPEGデコーダ３１７から供給された映像データは、ビデオデコーダ３１５から供給された映像データの場合と同様に、映像信号処理回路３１８において所定の処理が施される。そして、所定の処理が施された映像データは、グラフィック生成回路３１９において、生成された映像データ等が適宜重畳され、パネル駆動回路３２０を介して表示パネル３２１に供給され、その画像が表示される。
【０２６９】
MPEGデコーダ３１７から供給された音声データは、音声A/D変換回路３１４から供給された音声データの場合と同様に、音声信号処理回路３２２において所定の処理が施される。そして、所定の処理が施された音声データは、エコーキャンセル／音声合成回路３２３を介して音声増幅回路３２４に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ３２５から出力される。
【０２７０】
また、テレビジョン受像機３００は、マイクロホン３２６、およびA/D変換回路３２７も有する。
【０２７１】
A/D変換回路３２７は、音声会話用のものとしてテレビジョン受像機３００に設けられるマイクロホン３２６により取り込まれたユーザの音声の信号を受信する。A/D変換回路３２７は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル／音声合成回路３２３に供給する。
【０２７２】
エコーキャンセル／音声合成回路３２３は、テレビジョン受像機３００のユーザ（ユーザＡ）の音声のデータがA/D変換回路３２７から供給されている場合、ユーザＡの音声データを対象としてエコーキャンセルを行う。そして、エコーキャンセル／音声合成回路３２３は、エコーキャンセルの後、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路３２４を介してスピーカ３２５より出力させる。
【０２７３】
さらに、テレビジョン受像機３００は、音声コーデック３２８、内部バス３２９、SDRAM（Synchronous Dynamic Random Access Memory)３３０、フラッシュメモリ３３１、CPU３３２、USB（Universal Serial Bus) I/F３３３、およびネットワークI/F３３４も有する。
【０２７４】
A/D変換回路３２７は、音声会話用のものとしてテレビジョン受像機３００に設けられるマイクロホン３２６により取り込まれたユーザの音声の信号を受信する。A/D変換回路３２７は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック３２８に供給する。
【０２７５】
音声コーデック３２８は、A/D変換回路３２７から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス３２９を介してネットワークI/F３３４に供給する。
【０２７６】
ネットワークI/F３３４は、ネットワーク端子３３５に装着されたケーブルを介してネットワークに接続される。ネットワークI/F３３４は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック３２８から供給された音声データを送信する。また、ネットワークI/F３３４は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子３３５を介して受信し、それを、内部バス３２９を介して音声コーデック３２８に供給する。
【０２７７】
音声コーデック３２８は、ネットワークI/F３３４から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル／音声合成回路３２３に供給する。
【０２７８】
エコーキャンセル／音声合成回路３２３は、音声コーデック３２８から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路３２４を介してスピーカ３２５より出力させる。
【０２７９】
SDRAM３３０は、CPU３３２が処理を行う上で必要な各種のデータを記憶する。
【０２８０】
フラッシュメモリ３３１は、CPU３３２により実行されるプログラムを記憶する。フラッシュメモリ３３１に記憶されているプログラムは、テレビジョン受像機３００の起動時などの所定のタイミングでCPU３３２により読み出される。フラッシュメモリ３３１には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
【０２８１】
例えば、フラッシュメモリ３３１には、CPU３３２の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ３３１は、例えばCPU３３２の制御により、そのMPEG-TSを、内部バス３２９を介してMPEGデコーダ３１７に供給する。
【０２８２】
MPEGデコーダ３１７は、デジタルチューナ３１６から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機３００は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ３１７を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
【０２８３】
また、テレビジョン受像機３００は、リモートコントローラ３５１から送信される赤外線信号を受光する受光部３３７も有する。
【０２８４】
受光部３３７は、リモートコントローラ３５１からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU３３２に出力する。
【０２８５】
CPU３３２は、フラッシュメモリ３３１に記憶されているプログラムを実行し、受光部３３７から供給される制御コードなどに応じてテレビジョン受像機３００の全体の動作を制御する。CPU３３２とテレビジョン受像機３００の各部は、図示せぬ経路を介して接続されている。
【０２８６】
USB I/F３３３は、USB端子３３６に装着されたUSBケーブルを介して接続される、テレビジョン受像機３００の外部の機器との間でデータの送受信を行う。ネットワークI/F３３４は、ネットワーク端子３３５に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
【０２８７】
テレビジョン受像機３００は、MPEGデコーダ３１７として画像復号装置１０１を用いることにより、符号化効率を向上することができる。その結果として、テレビジョン受像機３００は、アンテナを介して受信した放送波信号や、ネットワークを介して取得したコンテンツデータから、より高精細な復号画像を得て、表示することができる。
【０２８８】
［携帯電話機の構成例］
図２４は、本発明を適用した画像符号化装置および画像復号装置を用いる携帯電話機の主な構成例を示すブロック図である。
【０２８９】
図２４に示される携帯電話機４００は、各部を統括的に制御するようになされた主制御部４５０、電源回路部４５１、操作入力制御部４５２、画像エンコーダ４５３、カメラI/F部４５４、LCD制御部４５５、画像デコーダ４５６、多重分離部４５７、記録再生部４６２、変復調回路部４５８、および音声コーデック４５９を有する。これらは、バス４６０を介して互いに接続されている。
【０２９０】
また、携帯電話機４００は、操作キー４１９、CCD（Charge Coupled Devices）カメラ４１６、液晶ディスプレイ４１８、記憶部４２３、送受信回路部４６３、アンテナ４１４、マイクロホン（マイク）４２１、およびスピーカ４１７を有する。
【０２９１】
電源回路部４５１は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機４００を動作可能な状態に起動する。
【０２９２】
携帯電話機４００は、CPU、ROMおよびRAM等でなる主制御部４５０の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
【０２９３】
例えば、音声通話モードにおいて、携帯電話機４００は、マイクロホン（マイク）４２１で集音した音声信号を、音声コーデック４５９によってデジタル音声データに変換し、これを変復調回路部４５８でスペクトラム拡散処理し、送受信回路部４６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機４００は、その変換処理により得られた送信用信号を、アンテナ４１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（音声信号）は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
【０２９４】
また、例えば、音声通話モードにおいて、携帯電話機４００は、アンテナ４１４で受信した受信信号を送受信回路部４６３で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部４５８でスペクトラム逆拡散処理し、音声コーデック４５９によってアナログ音声信号に変換する。携帯電話機４００は、その変換して得られたアナログ音声信号をスピーカ４１７から出力する。
【０２９５】
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機４００は、操作キー４１９の操作によって入力された電子メールのテキストデータを、操作入力制御部４５２において受け付ける。携帯電話機４００は、そのテキストデータを主制御部４５０において処理し、LCD制御部４５５を介して、画像として液晶ディスプレイ４１８に表示させる。
【０２９６】
また、携帯電話機４００は、主制御部４５０において、操作入力制御部４５２が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機４００は、その電子メールデータを、変復調回路部４５８でスペクトラム拡散処理し、送受信回路部４６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機４００は、その変換処理により得られた送信用信号を、アンテナ４１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（電子メール）は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
【０２９７】
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機４００は、基地局から送信された信号を、アンテナ４１４を介して送受信回路部４６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機４００は、その受信信号を変復調回路部４５８でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機４００は、復元された電子メールデータを、LCD制御部４５５を介して液晶ディスプレイ４１８に表示する。
【０２９８】
なお、携帯電話機４００は、受信した電子メールデータを、記録再生部４６２を介して、記憶部４２３に記録する（記憶させる）ことも可能である。
【０２９９】
この記憶部４２３は、書き換え可能な任意の記憶媒体である。記憶部４２３は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
【０３００】
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機４００は、撮像によりCCDカメラ４１６で画像データを生成する。CCDカメラ４１６は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。その画像データを、カメラI/F部４５４を介して、画像エンコーダ４５３で、例えばMPEG２やMPEG４等の所定の符号化方式によって圧縮符号化することにより符号化画像データに変換する。
【０３０１】
携帯電話機４００は、このような処理を行う画像エンコーダ４５３として、上述した画像符号化装置５１を用いる。したがって、画像エンコーダ４５３は、画像符号化装置５１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３０２】
なお、携帯電話機４００は、このとき同時に、CCDカメラ４１６で撮像中にマイクロホン（マイク）４２１で集音した音声を、音声コーデック４５９においてアナログデジタル変換し、さらに符号化する。
【０３０３】
携帯電話機４００は、多重分離部４５７において、画像エンコーダ４５３から供給された符号化画像データと、音声コーデック４５９から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機４００は、その結果得られる多重化データを、変復調回路部４５８でスペクトラム拡散処理し、送受信回路部４６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機４００は、その変換処理により得られた送信用信号を、アンテナ４１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（画像データ）は、ネットワーク等を介して、通信相手に供給される。
【０３０４】
なお、画像データを送信しない場合、携帯電話機４００は、CCDカメラ４１６で生成した画像データを、画像エンコーダ４５３を介さずに、LCD制御部４５５を介して液晶ディスプレイ４１８に表示させることもできる。
【０３０５】
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機４００は、基地局から送信された信号を、アンテナ４１４を介して送受信回路部４６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機４００は、その受信信号を変復調回路部４５８でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機４００は、多重分離部４５７において、その多重化データを分離して、符号化画像データと音声データとに分ける。
【０３０６】
携帯電話機４００は、画像デコーダ４５６において、符号化画像データを、MPEG２やMPEG４等の所定の符号化方式に対応した復号方式でデコードすることにより、再生動画像データを生成し、これを、LCD制御部４５５を介して液晶ディスプレイ４１８に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ４１８に表示される。
【０３０７】
携帯電話機４００は、このような処理を行う画像デコーダ４５６として、上述した画像復号装置１０１を用いる。したがって、画像デコーダ４５６は、画像復号装置１０１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３０８】
このとき、携帯電話機４００は、同時に、音声コーデック４５９において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ４１７より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
【０３０９】
なお、電子メールの場合と同様に、携帯電話機４００は、受信した簡易ホームページ等にリンクされたデータを、記録再生部４６２を介して、記憶部４２３に記録する（記憶させる）ことも可能である。
【０３１０】
また、携帯電話機４００は、主制御部４５０において、撮像されてCCDカメラ４１６で得られた２次元コードを解析し、２次元コードに記録された情報を取得することができる。
【０３１１】
さらに、携帯電話機４００は、赤外線通信部４８１で赤外線により外部の機器と通信することができる。
【０３１２】
携帯電話機４００は、画像エンコーダ４５３として画像符号化装置５１を用いることにより、予測精度が改善される。結果として、携帯電話機４００は、符号化効率のよい符号化データ（画像データ）を、他の装置に提供することができる。
【０３１３】
また、携帯電話機４００は、画像デコーダ４５６として画像復号装置１０１を用いることにより、予測精度が改善される。その結果として、携帯電話機４００は、例えば、簡易ホームページにリンクされた動画像ファイルから、より高精細な復号画像を得て、表示することができる。
【０３１４】
なお、以上において、携帯電話機４００が、CCDカメラ４１６を用いるように説明したが、このCCDカメラ４１６の代わりに、CMOS（Complementary Metal Oxide Semiconductor）を用いたイメージセンサ（CMOSイメージセンサ）を用いるようにしてもよい。この場合も、携帯電話機４００は、CCDカメラ４１６を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
【０３１５】
また、以上においては携帯電話機４００として説明したが、例えば、PDA（Personal Digital Assistants）、スマートフォン、UMPC（Ultra Mobile Personal Computer）、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機４００と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機４００の場合と同様に、画像符号化装置５１および画像復号装置１０１を適用することができる。
【０３１６】
［ハードディスクレコーダの構成例］
図２５は、本発明を適用した画像符号化装置および画像復号装置を用いるハードディスクレコーダの主な構成例を示すブロック図である。
【０３１７】
図２５に示されるハードディスクレコーダ（HDDレコーダ）５００は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号（テレビジョン信号）に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
【０３１８】
ハードディスクレコーダ５００は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ５００は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
【０３１９】
さらに、ハードディスクレコーダ５００は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ５６０に供給し、モニタ５６０の画面にその画像を表示させる。また、ハードディスクレコーダ５００は、モニタ５６０のスピーカよりその音声を出力させることができる。
【０３２０】
ハードディスクレコーダ５００は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ５６０に供給し、モニタ５６０の画面にその画像を表示させる。また、ハードディスクレコーダ５００は、モニタ５６０のスピーカよりその音声を出力させることもできる。
【０３２１】
もちろん、この他の動作も可能である。
【０３２２】
図２５に示されるように、ハードディスクレコーダ５００は、受信部５２１、復調部５２２、デマルチプレクサ５２３、オーディオデコーダ５２４、ビデオデコーダ５２５、およびレコーダ制御部５２６を有する。ハードディスクレコーダ５００は、さらに、EPGデータメモリ５２７、プログラムメモリ５２８、ワークメモリ５２９、ディスプレイコンバータ５３０、OSD（On Screen Display）制御部５３１、ディスプレイ制御部５３２、記録再生部５３３、D/Aコンバータ５３４、および通信部５３５を有する。
【０３２３】
また、ディスプレイコンバータ５３０は、ビデオエンコーダ５４１を有する。記録再生部５３３は、エンコーダ５５１およびデコーダ５５２を有する。
【０３２４】
受信部５２１は、リモートコントローラ（図示せず）からの赤外線信号を受信し、電気信号に変換してレコーダ制御部５２６に出力する。レコーダ制御部５２６は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ５２８に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部５２６は、このとき、ワークメモリ５２９を必要に応じて使用する。
【０３２５】
通信部５３５は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部５３５は、レコーダ制御部５２６により制御され、チューナ（図示せず）と通信し、主にチューナに対して選局制御信号を出力する。
【０３２６】
復調部５２２は、チューナより供給された信号を、復調し、デマルチプレクサ５２３に出力する。デマルチプレクサ５２３は、復調部５２２より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ５２４、ビデオデコーダ５２５、またはレコーダ制御部５２６に出力する。
【０３２７】
オーディオデコーダ５２４は、入力されたオーディオデータを、例えばMPEG方式でデコードし、記録再生部５３３に出力する。ビデオデコーダ５２５は、入力されたビデオデータを、例えばMPEG方式でデコードし、ディスプレイコンバータ５３０に出力する。レコーダ制御部５２６は、入力されたEPGデータをEPGデータメモリ５２７に供給し、記憶させる。
【０３２８】
ディスプレイコンバータ５３０は、ビデオデコーダ５２５またはレコーダ制御部５２６より供給されたビデオデータを、ビデオエンコーダ５４１により、例えばNTSC（National Television Standards Committee）方式のビデオデータにエンコードし、記録再生部５３３に出力する。また、ディスプレイコンバータ５３０は、ビデオデコーダ５２５またはレコーダ制御部５２６より供給されるビデオデータの画面のサイズを、モニタ５６０のサイズに対応するサイズに変換する。ディスプレイコンバータ５３０は、画面のサイズが変換されたビデオデータを、さらに、ビデオエンコーダ５４１によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部５３２に出力する。
【０３２９】
ディスプレイ制御部５３２は、レコーダ制御部５２６の制御のもと、OSD（On Screen Display）制御部５３１が出力したOSD信号を、ディスプレイコンバータ５３０より入力されたビデオ信号に重畳し、モニタ５６０のディスプレイに出力し、表示させる。
【０３３０】
モニタ５６０にはまた、オーディオデコーダ５２４が出力したオーディオデータが、D/Aコンバータ５３４によりアナログ信号に変換されて供給されている。モニタ５６０は、このオーディオ信号を内蔵するスピーカから出力する。
【０３３１】
記録再生部５３３は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
【０３３２】
記録再生部５３３は、例えば、オーディオデコーダ５２４より供給されるオーディオデータを、エンコーダ５５１によりMPEG方式でエンコードする。また、記録再生部５３３は、ディスプレイコンバータ５３０のビデオエンコーダ５４１より供給されるビデオデータを、エンコーダ５５１によりMPEG方式でエンコードする。記録再生部５３３は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部５３３は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
【０３３３】
記録再生部５３３は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部５３３は、デコーダ５５２によりオーディオデータおよびビデオデータをMPEG方式でデコードする。記録再生部５３３は、復号したオーディオデータをD/A変換し、モニタ５６０のスピーカに出力する。また、記録再生部５３３は、復号したビデオデータをD/A変換し、モニタ５６０のディスプレイに出力する。
【０３３４】
レコーダ制御部５２６は、受信部５２１を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ５２７から最新のEPGデータを読み出し、それをOSD制御部５３１に供給する。OSD制御部５３１は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部５３２に出力する。ディスプレイ制御部５３２は、OSD制御部５３１より入力されたビデオデータをモニタ５６０のディスプレイに出力し、表示させる。これにより、モニタ５６０のディスプレイには、EPG（電子番組ガイド）が表示される。
【０３３５】
また、ハードディスクレコーダ５００は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
【０３３６】
通信部５３５は、レコーダ制御部５２６に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部５２６に供給する。レコーダ制御部５２６は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部５３３に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部５２６および記録再生部５３３が、必要に応じて再エンコード等の処理を行うようにしてもよい。
【０３３７】
また、レコーダ制御部５２６は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ５３０に供給する。ディスプレイコンバータ５３０は、ビデオデコーダ５２５から供給されるビデオデータと同様に、レコーダ制御部５２６から供給されるビデオデータを処理し、ディスプレイ制御部５３２を介してモニタ５６０に供給し、その画像を表示させる。
【０３３８】
また、この画像表示に合わせて、レコーダ制御部５２６が、復号したオーディオデータを、D/Aコンバータ５３４を介してモニタ５６０に供給し、その音声をスピーカから出力させるようにしてもよい。
【０３３９】
さらに、レコーダ制御部５２６は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ５２７に供給する。
【０３４０】
以上のようなハードディスクレコーダ５００は、ビデオデコーダ５２５、デコーダ５５２、およびレコーダ制御部５２６に内蔵されるデコーダとして画像復号装置１０１を用いる。したがって、ビデオデコーダ５２５、デコーダ５５２、およびレコーダ制御部５２６に内蔵されるデコーダは、画像復号装置１０１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３４１】
したがって、ハードディスクレコーダ５００は、精度の高い予測画像を生成することができる。その結果として、ハードディスクレコーダ５００は、例えば、チューナを介して受信されたビデオデータの符号化データや、記録再生部５３３のハードディスクから読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高精細な復号画像を得て、モニタ５６０に表示させることができる。
【０３４２】
また、ハードディスクレコーダ５００は、エンコーダ５５１として画像符号化装置５１を用いる。したがって、エンコーダ５５１は、画像符号化装置５１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３４３】
したがって、ハードディスクレコーダ５００は、例えば、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、ハードディスクレコーダ５００は、より高速に、ハードディスクの記憶領域をより効率よく使用することができる。
【０３４４】
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ５００について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ５００の場合と同様に、画像符号化装置５１および画像復号装置１０１を適用することができる。
【０３４５】
［カメラの構成例］
図２６は、本発明を適用した画像復号装置および画像符号化装置を用いるカメラの主な構成例を示すブロック図である。
【０３４６】
図２６に示されるカメラ６００は、被写体を撮像し、被写体の画像をLCD６１６に表示させたり、それを画像データとして、記録メディア６３３に記録したりする。
【０３４７】
レンズブロック６１１は、光（すなわち、被写体の映像）を、CCD/CMOS６１２に入射させる。CCD/CMOS６１２は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部６１３に供給する。
【０３４８】
カメラ信号処理部６１３は、CCD/CMOS６１２から供給された電気信号を、Ｙ，Ｃｒ，Ｃｂの色差信号に変換し、画像信号処理部６１４に供給する。画像信号処理部６１４は、コントローラ６２１の制御の下、カメラ信号処理部６１３から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ６４１で例えばMPEG方式により符号化したりする。画像信号処理部６１４は、画像信号を符号化して生成した符号化データを、デコーダ６１５に供給する。さらに、画像信号処理部６１４は、オンスクリーンディスプレイ（OSD）６２０において生成された表示用データを取得し、それをデコーダ６１５に供給する。
【０３４９】
以上の処理において、カメラ信号処理部６１３は、バス６１７を介して接続されるDRAM（Dynamic Random Access Memory）６１８を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM６１８に保持させる。
【０３５０】
デコーダ６１５は、画像信号処理部６１４から供給された符号化データを復号し、得られた画像データ（復号画像データ）をLCD６１６に供給する。また、デコーダ６１５は、画像信号処理部６１４から供給された表示用データをLCD６１６に供給する。LCD６１６は、デコーダ６１５から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
【０３５１】
オンスクリーンディスプレイ６２０は、コントローラ６２１の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス６１７を介して画像信号処理部６１４に出力する。
【０３５２】
コントローラ６２１は、ユーザが操作部６２２を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス６１７を介して、画像信号処理部６１４、DRAM６１８、外部インタフェース６１９、オンスクリーンディスプレイ６２０、およびメディアドライブ６２３等を制御する。FLASH ROM６２４には、コントローラ６２１が各種処理を実行する上で必要なプログラムやデータ等が格納される。
【０３５３】
例えば、コントローラ６２１は、画像信号処理部６１４やデコーダ６１５に代わって、DRAM６１８に記憶されている画像データを符号化したり、DRAM６１８に記憶されている符号化データを復号したりすることができる。このとき、コントローラ６２１は、画像信号処理部６１４やデコーダ６１５の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部６１４やデコーダ６１５が対応していない方式により符号化・復号処理を行うようにしてもよい。
【０３５４】
また、例えば、操作部６２２から画像印刷の開始が指示された場合、コントローラ６２１は、DRAM６１８から画像データを読み出し、それを、バス６１７を介して外部インタフェース６１９に接続されるプリンタ６３４に供給して印刷させる。
【０３５５】
さらに、例えば、操作部６２２から画像記録が指示された場合、コントローラ６２１は、DRAM６１８から符号化データを読み出し、それを、バス６１７を介してメディアドライブ６２３に装着される記録メディア６３３に供給して記憶させる。
【０３５６】
記録メディア６３３は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア６３３は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
【０３５７】
また、メディアドライブ６２３と記録メディア６３３を一体化し、例えば、内蔵型ハードディスクドライブやSSD（Solid State Drive）等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
【０３５８】
外部インタフェース６１９は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ６３４と接続される。また、外部インタフェース６１９には、必要に応じてドライブ６３１が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア６３２が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM６２４にインストールされる。
【０３５９】
さらに、外部インタフェース６１９は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ６２１は、例えば、操作部６２２からの指示に従って、DRAM６１８から符号化データを読み出し、それを外部インタフェース６１９から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ６２１は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース６１９を介して取得し、それをDRAM６１８に保持させたり、画像信号処理部６１４に供給したりすることができる。
【０３６０】
以上のようなカメラ６００は、デコーダ６１５として画像復号装置１０１を用いる。したがって、デコーダ６１５は、画像復号装置１０１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３６１】
したがって、カメラ６００は、精度の高い予測画像を生成することができる。その結果として、カメラ６００は、例えば、CCD/CMOS６１２において生成された画像データや、DRAM６１８または記録メディア６３３から読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高精細な復号画像を得て、LCD６１６に表示させることができる。
【０３６２】
また、カメラ６００は、エンコーダ６４１として画像符号化装置５１を用いる。したがって、エンコーダ６４１は、画像符号化装置５１の場合と同様に、Ｂピクチャにおける、特に画面の端の付近の予測精度を改善することができる。これにより、符号化効率を改善することができる。
【０３６３】
したがって、カメラ６００は、例えば、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、カメラ６００は、より高速に、DRAM６１８や記録メディア６３３の記憶領域をより効率よく使用することができる。
【０３６４】
なお、コントローラ６２１が行う復号処理に画像復号装置１０１の復号方法を適用するようにしてもよい。同様に、コントローラ６２１が行う符号化処理に画像符号化装置５１の符号化方法を適用するようにしてもよい。
【０３６５】
また、カメラ６００が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
【０３６６】
もちろん、画像符号化装置５１および画像復号装置１０１は、上述した装置以外の装置やシステムにも適用可能である。
【符号の説明】
【０３６７】
５１  画像符号化装置，  ６６  可逆符号化部，  ７５  動き予測・補償部，  ８１  補間フィルタ，  ８２  補償処理部，  ８３  選択部，  ８４  動きベクトル予測部，  ８５  予測モード決定部，  ９１  L0領域選択部，  ９２  L1領域選択部，  ９３  演算部，  ９３Ａ，９３Ｂ  乗算器，   ９３Ｃ  加算器，  ９４  画面端判定部，  ９５  重み算出部，  １０１  画像復号装置，  １１２  可逆復号部，  １２１  動き補償部，  １３１  補間フィルタ，  １３２  補償処理部，  １３３  選択部，  １３４  動きベクトル予測部，  １４１  L0領域選択部，  １４２  L1領域選択部，  １４３  演算部，  １４３Ａ，１４３Ｂ  乗算器，   １４３Ｃ  加算器，  １４４  画面端判定部
【図１】
2011147049.tif 000005
【図２】
2011147049.tif 000006
【図３】
2011147049.tif 000007
【図４】
2011147049.tif 000008
【図５】
2011147049.tif 000009
【図６】
2011147049.tif 000010
【図７】
2011147049.tif 000011
【図８】
2011147049.tif 000012
【図９】
2011147049.tif 000013
【図１０】
2011147049.tif 000014
【図１１】
2011147049.tif 000015
【図１２】
2011147049.tif 000016
【図１３】
2011147049.tif 000017
【図１４】
2011147049.tif 000018
【図１５】
2011147049.tif 000019
【図１６】
2011147049.tif 000020
【図１７】
2011147049.tif 000021
【図１８】
2011147049.tif 000022
【図１９】
2011147049.tif 000023
【図２０】
2011147049.tif 000024
【図２１】
2011147049.tif 000025
【図２２】
2011147049.tif 000026
【図２３】
2011147049.tif 000027
【図２４】
2011147049.tif 000028
【図２５】
2011147049.tif 000029
【図２６】
2011147049.tif 000030