(57)【特許請求の範囲】
【請求項１】
カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、
前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、
前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部と
を備える画像処理装置。
【請求項２】
前記予測ベクトル候補設定部は、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルを、前記予測ベクトルの候補から除外する
請求項１に記載の画像処理装置。
【請求項３】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する
請求項２に記載の画像処理装置。
【請求項４】
前記予測ベクトル候補設定部は、前記符号化ベクトルが前記動きベクトルであり、かつ、前記コロケーテッドベクトルが前記視差ベクトルである場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外する
請求項１に記載の画像処理装置。
【請求項５】
前記予測ベクトル候補設定部は、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外する
請求項４に記載の画像処理装置。
【請求項６】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する
請求項５に記載の画像処理装置。
【請求項７】
前記予測ベクトル候補設定部は、前記符号化ベクトルが前記視差ベクトルであり、かつ、前記コロケーテッドベクトルが前記動きベクトルである場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外する
請求項１に記載の画像処理装置。
【請求項８】
前記予測ベクトル候補設定部は、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外する
請求項７に記載の画像処理装置。
【請求項９】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する
請求項８に記載の画像処理装置。
【請求項１０】
符号化された前記差分ベクトルを含むビットストリームを復号する復号部をさらに備え、
前記再構築部は、前記復号部により復号されて得られた前記差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築するように構成される
請求項１に記載の画像処理装置。
【請求項１１】
前記復号部は、最大符号化単位を再帰的に分割した符号化単位で画像が符号化された前記ビットストリームを復号する
請求項１０に記載の画像処理装置。
【請求項１２】
前記最大符号化単位は、シーケンス単位で固定サイズのブロックであり、
前記符号化単位は、可変サイズのブロックである
請求項１１に記載の画像処理装置。
【請求項１３】
カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外し、
前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定し、
前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する
画像処理方法。
【請求項１４】
前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルを、前記予測ベクトルの候補から除外する
請求項１３に記載の画像処理方法。
【請求項１５】
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する
請求項１４に記載の画像処理方法。
【請求項１６】
前記符号化ベクトルが前記動きベクトルであり、かつ、前記コロケーテッドベクトルが前記視差ベクトルである場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外する
請求項１３に記載の画像処理方法。
【請求項１７】
前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外する
請求項１６に記載の画像処理方法。
【請求項１８】
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する
請求項１７に記載の画像処理方法。
【請求項１９】
前記符号化ベクトルが前記視差ベクトルであり、かつ、前記コロケーテッドベクトルが前記動きベクトルである場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外する
請求項１３に記載の画像処理方法。
【請求項２０】
前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外する
請求項１９に記載の画像処理方法。
【請求項２１】
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する
請求項２０に記載の画像処理方法。
【請求項２２】
符号化された前記差分ベクトルを含むビットストリームを復号し、
復号されて得られた前記差分ベクトルに、設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する
請求項１３に記載の画像処理方法。
【請求項２３】
最大符号化単位を再帰的に分割した符号化単位で画像が符号化された前記ビットストリームを復号する
請求項２２に記載の画像処理方法。
【請求項２４】
前記最大符号化単位は、シーケンス単位で固定サイズのブロックであり、
前記符号化単位は、可変サイズのブロックである
請求項２３に記載の画像処理方法。
【請求項２５】
コンピュータを、
カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、
前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、
前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部と
して機能させるプログラムを記録したコンピュータが読み取り可能な記録媒体。
【請求項２６】
コンピュータを、
カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、
前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、
前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置および方法、記録媒体、並びに、プログラムに関し、特に、符号化効率を向上させることができるようにした画像処理装置および方法、記録媒体、並びに、プログラムに関する。
【背景技術】
【０００２】
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG（Moving Picture Experts Group）などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及した。
【０００３】
特に、MPEG2（ISO（International Organization for Standardization）/IEC（International Electrotechnical Commission） 13818-2）は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば７２０×４８０画素を持つ標準解像度の飛び越し走査画像であれば４〜８Ｍｂｐｓ、１９２０×１０８８画素を持つ高解像度の飛び越し走査画像であれば１８〜２２Ｍｂｐｓの符号量（ビットレート）を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
【０００４】
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量（ビットレート）、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、１９９８年１２月にISO/IEC 14496-2としてその規格が国際標準に承認された。
【０００５】
更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L （ITU-T（International Telecommunication Union Telecommunication Standardization Sector） Q6/16 VCEG（Video Coding Expert Group））という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われた。
【０００６】
標準化のスケジュールとしては、２００３年３月にはH.264及びMPEG-4 Part10 （Advanced Video Coding、以下AVCと記す）という名の元に国際標準となった。
【０００７】
しかしながら、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるような、UHD（Ultra High Definition；4000画素×2000画素）といった大きな画枠に対しては、最適ではない恐れがあった。
【０００８】
そこで、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC（Joint Collaboration Team - Video Coding）により、HEVC（High Efficiency Video Coding）と呼ばれる符号化方式の標準化が進められている（例えば、非特許文献１参照）。
【０００９】
このHEVC符号化方式においては、AVCにおけるマクロブロックと同様の処理単位としてコーディングユニット（CU（Coding Unit））が定義されている。このCUは、AVCのマクロブロックのようにサイズが16×16画素に固定されず、それぞれのシーケンスにおいて、画像圧縮情報中において指定される。
【００１０】
ところで、AVCにおいて定義されているメジアン予測を用いた動きベクトルの符号化を改善するため、”Spatial Predictor”だけでなく、”Temporal Predictor”及び”Spatio-Temporal Predictor”も予測動きベクトルの候補にすることができるようにする方法が考えられた（例えば、非特許文献２参照）。
【００１１】
また、動き情報の符号化方式の１つとして、Merge_FlagとMerge_Left_Flagが伝送される、Motion Partition Mergingと呼ばれる手法が提案されている（例えば、非特許文献３参照）。
【先行技術文献】
【非特許文献】
【００１２】
【非特許文献１】Thomas Wiegand, Woo-Jin Han, Benjamin Bross, Jens-Rainer Ohm, Gary J. Sullivan, "Working Draft 1 of High-Efficiency Video Coding ", JCTVC-C403, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG113rd Meeting: Guangzhou, CN, 7-15 October, 2010
【非特許文献２】Joel Jung,Guillaume Laroche,"Competition-Based Scheme for Motion Vector Selection and Coding", VCEG-AC06,ITU - Telecommunications Standardization SectorSTUDY GROUP 16 Question 6Video Coding Experts Group (VCEG)29th Meeting: Klagenfurt, Austria, 17-18 July, 2006
【非特許文献３】Martin Winken, Sebastian Bosse, Benjamin Bross, Philipp Helle, Tobias Hinz, Heiner Kirchhoffer, Haricharan Lakshman, Detlev Marpe, Simon Oudin, Matthias Preiss, Heiko Schwarz, Mischa Siekmann, Karsten Suehring, and Thomas Wiegand，”Description of video coding technology proposed by Fraunhofer HHI”，JCTVC-A116,April,2010
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、同一視点内における処理しか示されておらず、多視点符号化の場合に、視点間を跨るベクトルの予測ができず、符号化効率が低減する恐れがあった。
【００１４】
本開示は、このような状況に鑑みてなされたものであり、符号化効率の低減を抑制することを目的とする。
【課題を解決するための手段】
【００１５】
本開示の一側面は、カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部とを備える画像処理装置である。
【００１６】
前記予測ベクトル候補設定部は、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルを、前記予測ベクトルの候補から除外することができる。
【００１７】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定することができる。
【００１８】
前記予測ベクトル候補設定部は、前記符号化ベクトルが前記動きベクトルであり、かつ、前記コロケーテッドベクトルが前記視差ベクトルである場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外することができる。
【００１９】
前記予測ベクトル候補設定部は、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外することができる。
【００２０】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定することができる。
【００２１】
前記予測ベクトル候補設定部は、前記符号化ベクトルが前記視差ベクトルであり、かつ、前記コロケーテッドベクトルが前記動きベクトルである場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外することができる。
【００２２】
前記予測ベクトル候補設定部は、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外することができる。
【００２３】
前記予測ベクトル候補設定部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定することができる。
【００２４】
符号化された前記差分ベクトルを含むビットストリームを復号する復号部をさらに備え、前記再構築部は、前記復号部により復号されて得られた前記差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築するように構成されるようにすることができる。
【００２５】
前記復号部は、最大符号化単位を再帰的に分割した符号化単位で画像が符号化された前記ビットストリームを復号することができる。
【００２６】
前記最大符号化単位は、シーケンス単位で固定サイズのブロックであり、前記符号化単位は、可変サイズのブロックであるようにすることができる。
【００２７】
本開示の一側面は、また、カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外し、前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定し、前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する画像処理方法である。
【００２８】
前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルを、前記予測ベクトルの候補から除外することができる。
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトル及び前記コロケーテッドベクトルの一方を、短時間参照画像を参照するベクトルとして設定し、他方を、長時間参照画像を参照するベクトルとして設定することができる。
【００２９】
前記符号化ベクトルが前記動きベクトルであり、かつ、前記コロケーテッドベクトルが前記視差ベクトルである場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外することができる。
前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記視差ベクトルを、前記予測ベクトルの候補から除外することができる。
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定することができる。
【００３０】
前記符号化ベクトルが前記視差ベクトルであり、かつ、前記コロケーテッドベクトルが前記動きベクトルである場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外することができる。
前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定する場合に、前記コロケーテッドベクトルである前記動きベクトルを、前記予測ベクトルの候補から除外することができる。
ピクチャの出力順を示すPOC(Picture Order Count)を用いて、前記符号化ベクトルである前記視差ベクトルを、長時間参照画像を参照するベクトルとして設定し、前記コロケーテッドベクトルである前記動きベクトルを、短時間参照画像を参照するベクトルとして設定することができる。
【００３１】
符号化された前記差分ベクトルを含むビットストリームを復号し、復号されて得られた前記差分ベクトルに、設定された予測ベクトルを加算し、前記符号化ベクトルを再構築することができる。
最大符号化単位を再帰的に分割した符号化単位で画像が符号化された前記ビットストリームを復号することができる。
前記最大符号化単位は、シーケンス単位で固定サイズのブロックであり、前記符号化単位は、可変サイズのブロックであるようにすることができる。
【００３２】
本開示の一側面は、さらに、コンピュータを、カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部として機能させるプログラムを記録したコンピュータが読み取り可能な記録媒体である。
【００３３】
本開示の一側面は、さらに、コンピュータを、カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方が前記カレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、前記コロケーテッドベクトルを、前記符号化ベクトルに対する予測ベクトルの候補から除外する予測ベクトル候補設定部と、前記予測ベクトル候補設定部により前記コロケーテッドベクトルが除外された予測ベクトルの候補から、前記符号化ベクトルに対する予測ベクトルを設定する予測ベクトル設定部と、前記符号化ベクトルと前記符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、前記予測ベクトル設定部により設定された予測ベクトルを加算し、前記符号化ベクトルを再構築する再構築部として機能させるプログラムである。
【００３４】
本開示の一側面においては、カレントブロックの符号化ベクトル及びカレントピクチャと異なる時間のピクチャのコロケーテッドブロックのコロケーテッドベクトルの一方がそのカレントピクチャと同一ビューで異なる時間のピクチャを参照する動きベクトルであり、他方がビュー方向の相関を利用した視差ベクトルである場合に、そのコロケーテッドベクトルが、その符号化ベクトルに対する予測ベクトルの候補から除外され、そのコロケーテッドベクトルが除外された予測ベクトルの候補から、その符号化ベクトルに対する予測ベクトルが設定され、その符号化ベクトルとその符号化ベクトルに対する予測ベクトルとの差分である差分ベクトルに、設定された予測ベクトルが加算され、その符号化ベクトルが再構築される。
【発明の効果】
【００３５】
本開示によれば、画像を処理することができる。特に、符号化効率の低減を抑制することができる。
【図面の簡単な説明】
【００３６】
【図１】予測ユニットの種類の例を説明する図である。
【図２】マージモードの時間相関領域において、参照画像インデックス決定で使用する周辺領域の例を説明する図である。
【図３】マージモードの時間相関領域における参照画像インデックスの決定条件の例を示す図である。
【図４】時間相関領域の決定方法の例を説明する図である。
【図５】時間相関領域を含む画像の決定方法の例を説明する図である。
【図６】カレント領域と時間相関領域の位置関係の例を説明する図である。
【図７】時間相関領域の動きベクトルのスケーリングの例を示す図である。
【図８】３視点画像の参照関係の例を示す図である。
【図９】カレント領域に対して視差ベクトルを予測する場合の参照画像を割り当ての例を説明する図である。
【図１０】カレント領域に対して、動きベクトルを予測する場合の参照画像を割り当ての例を説明する図である。
【図１１】画像符号化装置の主な構成例を示すブロック図である。
【図１２】動き視差予測・補償部の主な構成例を示すブロック図である。
【図１３】時間視差相関予測ベクトル生成部の主な構成例を示すブロック図である。
【図１４】方式選択の例を説明する図である。
【図１５】コロケーテッドベクトルのアベイラビリティを判定する様子を説明する図である。
【図１６】コロケーテッドベクトルがアベイラブルな場合の例を説明する図である。
【図１７】シーケンスパラメータセットのシンタックスの例を示す図である。
【図１８】スライスヘッダのシンタックスの例を示す図である。
【図１９】予測ユニットのシンタックスの例を示す図である。
【図２０】符号化処理の流れの例を説明するフローチャートである。
【図２１】インター動き予測処理の流れの例を説明するフローチャートである。
【図２２】マージモード処理の流れの例を説明するフローチャートである。
【図２３】視差動きベクトル予測処理の流れの例を説明するフローチャートである。
【図２４】時間視差相関予測処理の流れの例を説明するフローチャートである。
【図２５】時間視差相関予測処理の流れの例を説明する、図２２に続くフローチャートである。
【図２６】時間視差相関予測処理の流れの例を説明する、図２３に続くフローチャートである。
【図２７】時間視差相関予測処理の流れの例を説明する、図２４に続くフローチャートである。
【図２８】方式１処理の流れの例を説明するフローチャートである。
【図２９】方式３処理の流れの例を説明するフローチャートである。
【図３０】方式４−２処理の流れの例を説明するフローチャートである。
【図３１】画像復号装置の主な構成例を示すブロック図である。
【図３２】動き視差補償部の主な構成例を示すブロック図である。
【図３３】復号処理の流れの例を説明するフローチャートである。
【図３４】予測処理の流れの例を説明するフローチャートである。
【図３５】動き視差補償処理の流れの例を説明するフローチャートである。
【図３６】動き視差ベクトル生成処理の流れの例を説明するフローチャートである。
【図３７】画像符号化装置の他の構成例を示すブロック図である。
【図３８】動き予測・補償部の主な構成例を示すブロック図である。
【図３９】ベクトル予測部の主な構成例を示すブロック図である。
【図４０】異なるピクチャからの予測ベクトル生成部の主な構成例を示すブロック図である。
【図４１】動き予測・補償処理の流れの例を説明するフローチャートである。
【図４２】ベクトル予測処理の流れの例を説明するフローチャートである。
【図４３】予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図４４】異なるピクチャからの予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図４５】シフト量決定処理の流れの例を説明するフローチャートである。
【図４６】カレントブロックと周辺ブロックの配置例を示す図である。
【図４７】画像復号装置の他の構成例を示すブロック図である。
【図４８】動き補償部の主な構成例を示すブロック図である。
【図４９】ベクトル復号部の主な構成例を示すブロック図である。
【図５０】異なるピクチャからの予測ベクトル生成部の主な構成例を示すブロック図である。
【図５１】動き補償処理の流れの例を説明するフローチャートである。
【図５２】ベクトル復号処理の流れの例を説明するフローチャートである。
【図５３】予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図５４】異なるピクチャからの予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図５５】シフト量決定処理の流れの例を説明するフローチャートである。
【図５６】予測ベクトルを生成する様子の例を示す図である。
【図５７】視差と奥行きについて説明する図である。
【図５８】予測ベクトル生成方法の例を説明する図である。
【図５９】予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図６０】異なるピクチャからの予測ベクトル生成処理の流れの例を説明するフローチャートである。
【図６１】異なるピクチャからの予測ベクトル生成処理の流れの例を説明する、図６０に続くフローチャートである。
【図６２】背景静止アプリの参照画像の様子の例を説明する図である。
【図６３】ステレオアプリの参照画像の様子の例を説明する図である。
【図６４】参照画像のタイプとベクトルの特性の例を比較する図である。
【図６５】周辺ブロックの例を説明する図である。
【図６６】時間相関ブロックと周辺ブロックの取り扱いの例を説明する図である。
【図６７】ＰＵの動き（視差）ベクトルと参照インデックス生成処理の流れの例を説明するフローチャートである。
【図６８】マージ（スキップ）モード処理の流れの例を説明するフローチャートである。
【図６９】時間相関ブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明するフローチャートである。
【図７０】時間相関ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理の流れの例を説明するフローチャートである。
【図７１】AMVPモード処理の流れの例を説明するフローチャートである。
【図７２】空間的に周辺のブロックから候補となる動き（視差）ベクトルを生成する処理の流れの例を説明するフローチャートである。
【図７３】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明するフローチャートである。
【図７４】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明する、図７３に続くフローチャートである。
【図７５】周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理の流れの例を説明するフローチャートである。
【図７６】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明するフローチャートである。
【図７７】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明する、図７６に続くフローチャートである。
【図７８】PUの動き（視差）ベクトルと参照インデックス生成処理の流れの例を説明するフローチャートである。
【図７９】マージ（スキップ）モード処理の流れの例を説明するフローチャートである。
【図８０】時間相関ブロックから候補となる動き（視差）ベクトル生成処理の流れの例を説明するフローチャートである。
【図８１】AMVPモード処理の流れの例を説明するフローチャートである。
【図８２】周辺ブロックの取り扱いの例を説明する図である。
【図８３】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの他の例を説明するフローチャートである。
【図８４】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの他の例を説明する、図８３に続くフローチャートである。
【図８５】周辺ブロックの動き（視差）ベクトルの候補の有無の判定処理の流れの例を説明するフローチャートである。
【図８６】周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理の流れの他の例を説明するフローチャートである。
【図８７】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの他の例を説明するフローチャートである。
【図８８】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの他の例を説明する、図８７に続くフローチャートである。
【図８９】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの他の例を説明する、図８８に続くフローチャートである。
【図９０】時間相関ブロックと周辺ブロックの取り扱いの、さらに他の例を説明する図である。
【図９１】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れのさらに他の例を説明するフローチャートである。
【図９２】左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れのさらに他の例を説明する、図９１に続くフローチャートである。
【図９３】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れのさらに他の例を説明するフローチャートである。
【図９４】上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れのさらに他の例を説明する、図９３に続くフローチャートである。
【図９５】パーソナルコンピュータの主な構成例を示すブロック図である。
【図９６】テレビジョン装置の概略的な構成の一例を示すブロック図である。
【図９７】携帯電話機の概略的な構成の一例を示すブロック図である。
【図９８】記録再生装置の概略的な構成の一例を示すブロック図である。
【図９９】撮像装置の概略的な構成の一例を示すブロック図である。
【発明を実施するための形態】
【００３７】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（画像符号化装置）
２．第２の実施の形態（画像復号装置）
３．第３の実施の形態（画像符号化装置）
４．第４の実施の形態（画像復号装置）
５．第５の実施の形態（画像符号化装置・画像復号装置）
６．第６の実施の形態（画像符号化装置・画像復号装置）
７．第７の実施の形態（コンピュータ）
８．第８の実施の形態（応用例）
【００３８】
＜１．第１の実施の形態＞
［動き予測］
AVC（Advanced Video Coding）やHEVC（High Efficiency Video Coding）等の画像符号化においては、時間方向（フレーム間）の相関を利用した動き予測が行われる。
【００３９】
このような予測処理の処理単位として、AVCにおいては、マクロブロックやサブマクロブロックといった階層構造のブロックが規定されているが、HEVCにおいては、コーディングユニット（CU（Coding Unit））が規定されている。
【００４０】
CUは、Coding Tree Block（CTB）とも呼ばれ、AVCにおけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、１６×１６画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
【００４１】
例えば、出力となる符号化データに含まれるシーケンスパラメータセット（SPS（Sequence Parameter Set））において、CUの最大サイズ（LCU（Largest Coding Unit））と最小サイズ（SCU（Smallest Coding Unit））が規定される。
【００４２】
それぞれのLCU内においては、SCUのサイズを下回らない範囲で、split-flag=1とすることにより、より小さなサイズのCUに分割することができる。２Ｎ×２Ｎの大きさのCUは、split_flagの値が「１」である時、１つ下の階層となる、Ｎ×Ｎの大きさのCUに分割される。
【００４３】
更に、CUは、イントラ若しくはインター予測の処理単位となる領域（ピクチャ単位の画像の部分領域）である予測ユニット（Prediction Unit（PU））に分割され、また、直交変換の処理単位となる領域（ピクチャ単位の画像の部分領域）である、変換ユニット（Transform Unit（TU））に分割される。現在、HEVCにおいては、４×４及び８×８に加え、１６×１６及び３２×３２直交変換を用いることが可能である。
【００４４】
以上のHEVCのように、CUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVCにおけるマクロブロックはLCUに相当すると考えることができる。ただし、CUは階層構造を有するので、その最上位階層のLCUのサイズは、例えば128×128画素のように、AVCのマクロブロックより大きく設定されることが一般的である。
【００４５】
なお、以下において、「領域」には、上述した各種領域（例えば、マクロブロック、サブマクロブロック、LCU、CU、SCU、PU、およびTU等）を全て含む（それらのいずれであってもよい）。もちろん、上述した以外の単位が含まれてもよいし、説明の内容に応じて不可能な単位は、適宜、除外するものとする。
【００４６】
図１は、符号化処理単位であるCUに対する、予測処理単位である予測ユニット（PU）の構成例を示す。図１に示されるように、１CUに対して4種類のPUを形成することができる。図１に示される４つの大きな正方形がCUを示し、その内部の長方形若しくは正方形がPUを示す。数字は、各PUのインデックスを示すものであり、画像の内容を示すものではない。
【００４７】
図１に示されるように、左上の例の場合、CUは１つのPU（２Ｎ×２Ｎ）により構成される。すなわち、この場合、CUとPUは等価である。また、右上の例の場合、CUは、上下に２分割され、２つの横長のPU（２Ｎ×Ｎ）により構成される。さらに、左下の例の場合、CUは、左右に２分割され、２つの縦長のPU（Ｎ×２Ｎ）により構成される。また、右下の例の場合、CUは、上下左右に２分割（合計４分割）され、４つの正方形のPU（Ｎ×Ｎ）により構成される。この中のいずれのパターンが適用されるかは、画像の内容（予測結果のコスト関数値）により決定される。
【００４８】
ところで、非特許文献３には、動き情報の符号化方式の１つとして、Motion Partition Mergingと呼ばれる手法（マージモード）が提案されている。この手法においては、MergeFlagと、MergeLeftFlagという、２つのflagが、マージモードに関する情報であるマージ情報として伝送される。MergeFlag=1は、処理対象であるカレント領域（注目領域とも称する）Ｘの動き情報が、カレント領域の上に隣接する周辺領域Ｔ、若しくは、カレント領域の左に隣接する周辺領域Ｌの動き情報と同一であることを示す。この時、マージ情報には、MergeLeftFlagが含められ、伝送される。MergeFlag=0は、カレント領域Ｘの動き情報が、周辺領域Ｔおよび周辺領域Ｌのいずれの動き情報とも異なることを示す。この場合、カレント領域Ｘの動き情報が伝送される。
【００４９】
カレント領域Ｘの動き情報が、周辺領域Ｌの動き情報と同一である場合、MergeFlag=1、かつ、MergeLeftFlag=1となる。カレント領域Ｘの動き情報が、周辺領域Ｔの動き情報と同一である場合、MergeFlag=1、かつ、MergeLeftFlag=0となる。
【００５０】
なお、このようなマージモードにおいて、空間的な周辺領域ＬおよびＴだけでなく、時間的な周辺領域（時間相関領域）も、カレント領域Ｘとマージさせる領域の候補とすることが考えられている。
【００５１】
参照画像インデックスは、図２に示されるように、処理対象であるカレント領域（Current Block）に対して左に隣接する周辺領域Ａ、上に隣接する周辺領域Ｂ、および右上に隣接する周辺領域Ｃの参照画像インデックスに基づいて図３に示される表のように決定される。
【００５２】
図３に示される表において、左から２番目乃至４番目の列は、それぞれ、周辺領域Ａ乃至周辺領域Ｃの参照画像インデックスの状態を表している。左から１列目は、決定された参照画像インデックスである。「ｘ」、「ｙ」、および「ｚ」は、それぞれ、任意の自然数を示し、「−１」は、参照不可であることを示している。
【００５３】
周辺領域Ａ乃至周辺領域Ｃのうち、参照可能な領域が１つしかない場合、そのブロックの参照画像インデックスを使う。また、周辺領域Ａ乃至周辺領域Ｃのうち、参照可能な領域が２つある場合、最小の参照画像インデックスを使う。さらに、周辺領域Ａ乃至周辺領域Ｃの全てが参照不可の場合、参照画像インデックスを０とする。
【００５４】
処理対象であるカレント領域に対して時間的な周辺に位置する時間相関領域は、図４に示されるように決定される。図４において、左が処理対象であるカレントピクチャ（CurrPic）（注目ピクチャとも称する）の一部の領域を示し、その中の左上の四角がカレント領域（CurrPU）を示す。また、図４の右がカレントピクチャの時間的に周辺に位置する時間相関ピクチャ（colPic）の一部の領域を示している。この時間相関ピクチャにおいて、カレント領域の右下の画素と同じ位置の画素を含む領域を時間相関領域（colPU）とする。この領域が参照不可の場合、復号領域の中央の画素と同じ位置の画素を含む領域を時間相関領域（colPU）とする。
【００５５】
また、時間相関ピクチャは、図５に示されるように決定される。例えば、カレントピクチャがＢピクチャで、collocated_from_l0_flagが１の場合、リストＬ１の参照画像インデックス０のピクチャが時間相関ピクチャとされる。また、カレントピクチャが、Ｐピクチャの場合若しくはＢピクチャでcollocated_from_l0_flagが０の場合、リストＬ０の参照画像インデックス０のピクチャが時間相関ピクチャとされる。
【００５６】
さらに、カレントピクチャと時間相関ピクチャとの位置関係によって、図６に示されるように、飛び越しフラグが設定される。例えば、図６の上に示されるように、時間相関ピクチャの参照画像の時間的位置がカレントピクチャを飛び越す（時間相関ピクチャと参照画像の間にカレントピクチャが存在する）場合、飛び越しフラグが１に設定される。
【００５７】
また、時間相関ピクチャの参照画像の時間的位置がカレントピクチャを飛び越さない（時間相関ピクチャと参照画像の間にカレントピクチャが存在しない）場合、飛び越しフラグが０に設定される。飛び越しフラグが１の場合、カレント領域が、時間相関領域と時間相関領域の参照画像の内挿となるため、予測ベクトルの信頼度が高い。
【００５８】
また、予測ベクトルpmv生成の際には、時間相関領域の動きベクトルmvColが利用されるが、その場合、図７に示される例のように、時間相関領域の動きベクトルのスケーリングが行われる。すなわち、カレント領域とカレント領域の参照画像の時間的距離Ａと、時間相関領域と時間相関領域の参照画像の時間的距離Ｂに基づき、以下の式（１）および式（２）のようにスケーリングが行われる。
【００５９】
ＡとＢが等しい場合、pmv = mvCol  ・・・（１）
ＡとＢが等しくない場合、pmv = mvCol×A/B  ・・・（２）
【００６０】
ところで、多視点画像の場合、画像は複数のビューよりなり、このビュー間（視差方向）の相関性を利用した視差予測も行われる。図８に３視点画像の参照関係の例を示す。
【００６１】
図８に示される３視点画像は、ビュー０、ビュー１、およびビュー２の３つのビューよりなる。図８において、POCは、時刻のインデックスを示す。またPicNumは、復号順序のインデックスを示す。
【００６２】
ビュー０は、ベースビューと呼ばれ、時間相関を利用して予測を行う時間予測を使って符号化されている。ビュー１は、ノンベースビューと呼ばれ、時間予測と視差予測を使って符号化される。視差予測では、符号化済みのビュー０とビュー２を参照することができる。ビュー２は、ノンベースビューと呼ばれ、時間予測と視差予測を使って符号化される。視差予測では、符号化済みのビュー０を参照することができる。
【００６３】
しかしながら、上述したように従来の予測ベクトルは動きベクトルに関するもののみであり、このような視点（ビュー）間を跨ぐ視差予測において生成される、ビュー間の、同一若しくは最も近似する部分画像の位置関係を示す視差ベクトルについての符号化（予測）は考えられていなかった。この視差ベクトルは、時間予測の動きベクトルに相当する情報であり、同一時刻の異なるビューの画像を用いてカレント領域の予測画像を生成する時間予測に用いられる。そのため、視差ベクトルの予測を適切に行うことができず、符号化効率が低減する恐れがあった。
【００６４】
そこで、本技術においては、多視点画像において、以下のように視差ベクトルや動きベクトル（動き視差ベクトル）の予測を行う。
【００６５】
例えば、カレント領域の視差ベクトル（カレント視差ベクトルとも称する）の予測は、図９に示される例のように行われる。この例では、リスト１の参照画像インデックス０に同一ビュー（view_id=1）の参照画像が割り当てられ、参照画像インデックス１に異なるビュー(view_id=2)の参照画像が割り当てられている。
【００６６】
リスト１の参照画像インデックス０（RefPicList[0]）を時間相関ピクチャとする場合、その時間相関ピクチャに含まれる時間相関領域（colPicB）のベクトルが、同一時刻の異なるビューを参照する視差ベクトルの時、予測ベクトルとして採用する。
【００６７】
また、リスト１の参照画像インデックス１（RefPicList[1]）をビュー相関ピクチャとする場合、そのビュー相関ピクチャに含まれるビュー相関領域（colPicA）のベクトルが、同一時刻の異なるビューを参照する視差ベクトルの時、予測ベクトルとして採用する。
【００６８】
すなわち、本技術においては、カレント視差ベクトルの予測のために、すべての参照画像インデックスが相関ピクチャの候補とされる。また、各相関領域のベクトルが、カレント領域のベクトルと同じく、視差ベクトルであるか否かが判定される。
【００６９】
また、カレント領域の動きベクトル（カレント動きベクトルとも称する）の予測は、図１０に示される例のように行われる。この例では、リスト１の参照画像インデックス０に同一ビュー（view_id=1）の参照画像が割り当てられ、参照画像インデックス１に異なるビュー(view_id=2)の参照画像が割り当てられている。
【００７０】
リスト１の参照画像インデックス０（RefPicList[0]）を時間相関ピクチャとする場合、その時間相関ピクチャに含まれる時間相関領域（colPicB）のベクトルが、同一ビューの異なる時刻を参照する動きベクトルの時、予測ベクトルとして採用する。
【００７１】
また、リスト１の参照画像インデックス１（RefPicList[1]）をビュー相関ピクチャとする場合、そのビュー相関ピクチャに含まれるビュー相関領域（colPicA）のベクトルが、同一ビューの異なる時刻を参照する動きベクトルの時、予測ベクトルとして採用する。
【００７２】
すなわち、本技術においては、カレント動きベクトルの予測のために、すべての参照画像インデックスが相関ピクチャの候補とされる。また、各相関領域のベクトルが、カレント領域のベクトルと同じく、動きベクトルであるか否かが判定される。
【００７３】
また、視差ベクトルを予測ベクトルとする場合のスケーリング処理は、以下のように行われる。すなわち、カレント領域とその参照画像のビュー間距離と、相関領域とその参照画像のビュー間距離に基づいて、予測ベクトルがスケーリングされる。
【００７４】
従来の場合、動きベクトルを予測するのみであったので、時間的な距離のみが使用されていたが、多視点画像の場合、視差ベクトルを予測する必要があるので、本技術は、ビュー間距離も使用する。これにより、符号化効率を向上させることができる。
【００７５】
［画像符号化装置］
図１１は、画像処理装置である画像符号化装置の主な構成例を示すブロック図である。
【００７６】
図１１に示される画像符号化装置１００は、例えばAVCやHEVC等の符号化方式のように、予測処理を用いて画像データを符号化する。ただし、画像符号化装置１００は、複数のビューからなる多視点画像を符号化する。以下においては、多視点画像の一例として、３つのビューからなる３視点画像を処理する場合について説明する。ただし、実際には、画像符号化装置１００は、任意の視点数（ビュー数）の多視点画像を符号化することができる。
【００７７】
図１１に示されるように画像符号化装置１００は、A/D変換部１０１、画面並べ替えバッファ１０２、演算部１０３、直交変換部１０４、量子化部１０５、可逆符号化部１０６、および蓄積バッファ１０７を有する。また、画像符号化装置１００は、逆量子化部１０８、逆直交変換部１０９、演算部１１０、ループフィルタ１１１、デコードピクチャバッファ１１２、選択部１１３、イントラ予測部１１４、動き視差予測・補償部１１５、予測画像選択部１１６、および多視点デコードピクチャバッファ１２１を有する。
【００７８】
A/D変換部１０１は、入力された画像データをA/D変換し、変換後の画像データ（デジタルデータ）を、画面並べ替えバッファ１０２に供給し、記憶させる。画面並べ替えバッファ１０２は、記憶した表示の順番のフレームの画像を、GOP（Group Of Picture）に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、その画像のビューIDおよびPOCとともに、演算部１０３に供給する。
【００７９】
また、画面並べ替えバッファ１０２は、フレームの順番を並び替えた画像を、その画像のビューIDおよびPOCとともに、イントラ予測部１１４および動き視差予測・補償部１１５にも供給する。なお、ビューIDは、視点を識別するための情報であり、POCは、時刻を識別するための情報である。
【００８０】
演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、予測画像選択部１１６を介してイントラ予測部１１４若しくは動き視差予測・補償部１１５から供給される予測画像を減算し、その差分情報を直交変換部１０４に出力する。
【００８１】
例えば、イントラ符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、イントラ予測部１１４から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、動き視差予測・補償部１１５から供給される予測画像を減算する。
【００８２】
直交変換部１０４は、演算部１０３から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部１０４は、その変換係数を量子化部１０５に供給する。
【００８３】
量子化部１０５は、直交変換部１０４から供給される変換係数を量子化する。量子化部１０５は、符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。なお、この量子化の方法は任意である。量子化部１０５は、量子化された変換係数を可逆符号化部１０６に供給する。
【００８４】
可逆符号化部１０６は、量子化部１０５において量子化された変換係数を、任意の符号化方式で符号化する。また、可逆符号化部１０６は、イントラ予測のモードを示す情報等を含むイントラ予測情報をイントラ予測部１１４から取得し、インター予測のモードを示す情報や動き視差ベクトル情報などを含むインター予測情報を動き視差予測・補償部１１５から取得する。さらに、可逆符号化部１０６は、ループフィルタ１１１において使用されたフィルタ係数等を取得する。
【００８５】
可逆符号化部１０６は、これらの各種情報を任意の符号化方式で符号化し、符号化データのヘッダ情報の一部とする（多重化する）。可逆符号化部１０６は、符号化して得られた符号化データを蓄積バッファ１０７に供給して蓄積させる。
【００８６】
可逆符号化部１０６の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H．264/AVC方式で定められているCAVLC（Context-Adaptive Variable Length Coding）などが挙げられる。算術符号化としては、例えば、CABAC（Context-Adaptive Binary Arithmetic Coding）などが挙げられる。
【００８７】
蓄積バッファ１０７は、可逆符号化部１０６から供給された符号化データを、一時的に保持する。蓄積バッファ１０７は、所定のタイミングにおいて、保持している符号化データを、ビットストリームとして、例えば、後段の図示せぬ記録装置（記録媒体）や伝送路などに出力する。つまり、符号化された各種情報が復号側に供給される。
【００８８】
また、量子化部１０５において量子化された変換係数は、逆量子化部１０８にも供給される。逆量子化部１０８は、その量子化された変換係数を、量子化部１０５による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部１０５による量子化処理に対応する方法であればどのような方法であってもよい。逆量子化部１０８は、得られた変換係数を、逆直交変換部１０９に供給する。
【００８９】
逆直交変換部１０９は、逆量子化部１０８から供給された変換係数を、直交変換部１０４による直交変換処理に対応する方法で逆直交変換する。この逆直交変換の方法は、直交変換部１０４による直交変換処理に対応する方法であればどのようなものであってもよい。逆直交変換された出力（局所的に復元された差分情報）は、演算部１１０に供給される。
【００９０】
演算部１１０は、逆直交変換部１０９から供給された逆直交変換結果、すなわち、局所的に復元された差分情報に、予測画像選択部１１６を介してイントラ予測部１１４若しくは動き視差予測・補償部１１５から供給される予測画像を加算し、局所的に再構成された画像（以下、再構成画像と称する）を得る。その再構成画像は、ループフィルタ１１１またはデコードピクチャバッファ１１２に供給される。
【００９１】
ループフィルタ１１１は、デブロックフィルタや適応ループフィルタ等を含み、演算部１１０から供給される復号画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ１１１は、復号画像に対してデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。また、例えば、ループフィルタ１１１は、そのデブロックフィルタ処理結果（ブロック歪みの除去が行われた復号画像）に対して、ウィナーフィルタ（Wiener Filter）を用いてループフィルタ処理を行うことにより画質改善を行う。
【００９２】
なお、ループフィルタ１１１が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ１１１は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部１０６に供給し、それを符号化させるようにすることもできる。
【００９３】
ループフィルタ１１１は、フィルタ処理結果（以下、復号画像と称する）をデコードピクチャバッファ１１２に供給する。
【００９４】
デコードピクチャバッファ１１２は、演算部１１０から供給される再構成画像と、ループフィルタ１１１から供給される復号画像とをそれぞれ記憶する。また、デコードピクチャバッファ１１２は、その画像のビューIDおよびPOCを記憶する。
【００９５】
デコードピクチャバッファ１１２は、所定のタイミングにおいて、若しくは、イントラ予測部１１４等の外部からの要求に基づいて、記憶している再構成画像（並びに、その画像のビューIDおよびPOC）を、選択部１１３を介して、イントラ予測部１１４に供給する。また、デコードピクチャバッファ１１２は、所定のタイミングにおいて、若しくは、動き視差予測・補償部１１５等の外部からの要求に基づいて、記憶している復号画像（並びに、その画像のビューIDおよびPOC）を、選択部１１３を介して、動き視差予測・補償部１１５に供給する。
【００９６】
選択部１１３は、デコードピクチャバッファ１１２から出力される画像の供給先を示す。例えば、イントラ予測の場合、選択部１１３は、デコードピクチャバッファ１１２からフィルタ処理されていない画像（再構成画像）を読み出し、周辺画素として、イントラ予測部１１４に供給する。
【００９７】
また、例えば、インター予測の場合、選択部１１３は、デコードピクチャバッファ１１２からフィルタ処理された画像（復号画像）を読み出し、参照画像として、それを動き視差予測・補償部１１５に供給する。
【００９８】
イントラ予測部１１４は、デコードピクチャバッファ１１２から、処理対象領域の周辺に位置する周辺領域の画像（周辺画像）を取得すると、その周辺画像の画素値を用いて、基本的にプレディクションユニット（PU）を処理単位として予測画像を生成するイントラ予測（画面内予測）を行う。イントラ予測部１１４は、予め用意された複数のモード（イントラ予測モード）でこのイントラ予測を行う。
【００９９】
イントラ予測部１１４は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ１０２から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部１１４は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部１１６に供給する。
【０１００】
また、イントラ予測部１１４は、最適なイントラ予測モード等、イントラ予測に関する情報を含むイントラ予測情報を、適宜可逆符号化部１０６に供給し、符号化させる。
【０１０１】
動き視差予測・補償部１１５は、画面並べ替えバッファ１０２から供給される入力画像と、デコードピクチャバッファ１１２から供給される参照画像とを用いて、基本的にPUを処理単位として、動き予測や視差予測（インター予測）を行い、検出された動き視差ベクトルに応じて補償処理を行い、予測画像（インター予測画像情報）を生成する。動き視差予測・補償部１１５は、予め用意された複数のモード（インター予測モード）でこのようなインター予測（画面間予測）を行う。
【０１０２】
動き視差予測・補償部１１５は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き視差予測・補償部１１５は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部１１６に供給する。
【０１０３】
また、動き視差予測・補償部１１５は、最適なインター予測モード等、インター予測に関する情報を含むインター予測情報を可逆符号化部１０６に供給し、符号化させる。
【０１０４】
予測画像選択部１１６は、演算部１０３や演算部１１０に供給する予測画像の供給元を選択する。例えば、イントラ符号化の場合、予測画像選択部１１６は、予測画像の供給元としてイントラ予測部１１４を選択し、そのイントラ予測部１１４から供給される予測画像を演算部１０３や演算部１１０に供給する。また、例えば、インター符号化の場合、予測画像選択部１１６は、予測画像の供給元として動き視差予測・補償部１１５を選択し、その動き視差予測・補償部１１５から供給される予測画像を演算部１０３や演算部１１０に供給する。
【０１０５】
デコードピクチャバッファ１１２は、処理対象のビューの画像（並びに、その画像のビューIDおよびPOC）のみを記憶するが、多視点デコードピクチャバッファ１２１は、各視点（ビュー）の画像（並びに、その画像のビューIDおよびPOC）を記憶する。つまり、多視点デコードピクチャバッファ１２１は、デコードピクチャバッファ１１２に供給された復号画像（並びに、その画像のビューIDおよびPOC）を取得し、デコードピクチャバッファ１１２とともにその復号画像（並びに、その画像のビューIDおよびPOC）を記憶する。
【０１０６】
デコードピクチャバッファ１１２は、処理対象のビューが変わると、その復号画像を消去するが、多視点デコードピクチャバッファ１２１は、そのまま保持する。そして、デコードピクチャバッファ１１２などの要求に従って、記憶している復号画像（並びに、その画像のビューIDおよびPOC）を、「処理対象ではないビューの復号画像」として、デコードピクチャバッファ１１２に供給する。デコードピクチャバッファ１１２は、多視点デコードピクチャバッファ１２１から読み出した「処理対象ではないビューの復号画像（並びに、その画像のビューIDおよびPOC）」を、選択部１１３を介して動き視差予測・補償部１１５に供給する。
【０１０７】
［動き視差予測・補償部］
図１２は、図１１の動き視差予測・補償部の主な構成例を示すブロック図である。
【０１０８】
図１２に示されるように、動き視差予測・補償部１１５は、動き視差ベクトル探索部１３１、予測画像生成部１３２、符号化情報蓄積バッファ１３３、および選択部１３４を有する。また、動き視差予測・補償部１１５は、空間相関予測ベクトル生成部１３５、時間視差相関予測ベクトル生成部１３６、選択部１３７、符号化コスト算出部１３８、およびモード判定部１３９を有する。
【０１０９】
動き視差ベクトル探索部１３１は、デコードピクチャバッファ１１２から復号画像画素値を取得し、画面並べ替えバッファ１０２から原画像画素値を取得する。動き視差ベクトル探索部１３１は、それらを用いて、処理対象であるカレント領域の参照画像インデックスを決定し、時間方向および視差方向の動き探索を行い、カレント動きベクトルおよびカレント視差ベクトルを生成する。
【０１１０】
なお、以下において、時間方向、すなわち、フレーム（ピクチャ）間の動きを示す動きベクトルと、視差方向、すなわち、ビュー間の動きを示す視差ベクトルとを互いに区別する必要が無い場合、若しくは、その両方を指す場合、動き視差ベクトルと称する。カレント領域の動き視差ベクトルは、カレント動き視差ベクトルとも称する。
【０１１１】
動き視差ベクトル探索部１３１は、参照画像インデックスと動き視差ベクトルとを予測画像生成部１３２および符号化コスト算出部１３８に供給する。
【０１１２】
予測画像生成部１３２は、動き視差ベクトル探索部１３１から参照画像インデックスと動き視差ベクトルとを取得するとともに、デコードピクチャバッファ１１２から復号画像画素値を取得する。予測画像生成部１３２は、それらを用いてカレント領域の予測画像を生成する。予測画像生成部１３２は、予測画像画素値を符号化コスト算出部１３８に供給する。
【０１１３】
符号化情報蓄積バッファ１３３は、モード判定部１３９において最適モードに選択されたモードを示すモード情報、並びに、そのモードの参照画像インデックスおよび動き視差ベクトルを記憶する。符号化情報蓄積バッファ１３３は、所定のタイミングにおいて、若しくは、外部からの要求に従って、記憶しているそれらの情報を、選択部１３４に供給する。
【０１１４】
選択部１３４は、符号化情報蓄積バッファ１３３から供給されたモード情報、参照画像インデックス、および動き視差ベクトルを空間相関予測ベクトル生成部１３５若しくは時間視差相関予測ベクトル生成部１３６に供給する。
【０１１５】
空間相関予測ベクトル生成部１３５および時間視差相関予測ベクトル生成部１３６は、処理対象であるカレント領域の動きベクトル（カレント動きベクトル）の予測値（予測ベクトル）を生成する。
【０１１６】
空間相関予測ベクトル生成部１３５は、空間的な相関を利用して予測ベクトル（空間相関予測ベクトル）を生成する。より具体的には、空間相関予測ベクトル生成部１３５は、選択部１３４を介して符号化情報蓄積バッファ１３３から、カレント領域と同一のフレーム（カレントフレーム（注目フレームとも称する））の、カレント領域の空間的な周辺に位置する周辺領域（空間周辺領域）の動き情報に関する情報（モード情報、参照画像インデックス、および動き視差ベクトル等）を取得する。
【０１１７】
空間相関予測ベクトル生成部１３５は、例えば、複数の空間周辺領域の動きベクトル（空間周辺動きベクトル）を用いてメジアン演算を行い、空間相関予測ベクトルを生成する。空間相関予測ベクトル生成部１３５は、生成した空間相関予測ベクトルを選択部１３７に供給する。
【０１１８】
時間視差相関予測ベクトル生成部１３６は、時間的な相関若しくは視差的な相関を利用して予測ベクトル（時間視差相関予測ベクトル（時間相関予測ベクトル若しくは視差相関予測ベクトル））を生成する。より具体的には、時間視差相関予測ベクトル生成部１３６は、例えば、選択部１３４を介して符号化情報蓄積バッファ１３３から、カレント領域の時間的な周辺に位置する周辺領域（時間周辺領域）の動き情報に関する情報を取得する。時間周辺領域とは、カレント領域と同一ビュー（カレントビュー（注目ビューとも称する））の、カレントフレームと異なるフレーム（ピクチャ）のカレント領域に相当する位置の領域、若しくはその近傍の領域のことを示す。
【０１１９】
また、例えば、時間視差相関予測ベクトル生成部１３６は、選択部１３４を介して符号化情報蓄積バッファ１３３から、カレント領域の視差的な周辺に位置する周辺領域（視差周辺領域）の動き情報に関する情報を取得する。視差周辺領域とは、カレント領域のビュー（カレントビュー）と異なるビューの、カレントフレームと同時刻のフレーム（ピクチャ）のカレント領域に相当する位置の領域、若しくはその近傍の領域のことを示す。
【０１２０】
時間視差相関予測ベクトル生成部１３６は、例えば、複数の時間周辺領域の動きベクトル（時間周辺動きベクトル）を用いてメジアン演算を行い、時間相関予測ベクトルを生成する。また、例えば、時間視差相関予測ベクトル生成部１３６は、例えば、複数の視差周辺領域の動きベクトル（視差周辺動きベクトル）を用いてメジアン演算を行い、視差相関予測ベクトルを生成する。
【０１２１】
時間視差相関予測ベクトル生成部１３６は、このように生成した時間視差相関予測ベクトルを選択部１３７に供給する。
【０１２２】
空間相関予測ベクトル生成部１３５および時間視差相関予測ベクトル生成部１３６は、それぞれ予測ベクトルを、インター予測モード毎に生成する。
【０１２３】
選択部１３７は、空間相関予測ベクトル生成部１３５から供給される空間相関予測ベクトル、および、時間視差相関予測ベクトル生成部１３６から供給される時間視差相関予測ベクトルを、符号化コスト算出部１３８に供給する。
【０１２４】
符号化コスト算出部１３８は、予測画像生成部１３２から供給される予測画像画素値と、画面並べ替えバッファ１０２から供給される原画像画素値とを用いて、予測画像と原画像の差分値（差分画像）を、インター予測モード毎に算出する。また、符号化コスト算出部１３８は、その差分画像画素値を用いて、インター予測モード毎にコスト関数値（符号化コスト値とも称する）を算出する。
【０１２５】
さらに、符号化コスト算出部１３８は、選択部１３７から供給された空間相関予測ベクトルと時間視差相関予測ベクトルとの内、動き視差ベクトル探索部１３１から供給されたカレント領域の動き視差ベクトルにより近いほうを、カレント領域の予測ベクトルとして選択する。また、符号化コスト算出部１３８は、その予測ベクトルとカレント領域の動き視差ベクトルとの差分値である差分動き視差ベクトルを生成する。符号化コスト算出部１３８は、インター予測モード毎に差分動き視差ベクトルを生成する。
【０１２６】
符号化コスト算出部１３８は、各インター予測モードの、符号化コスト値、予測画像画素値、差分動き視差ベクトルを含む差分動き視差情報、および、予測ベクトルや参照画像インデックスを含む予測情報をモード判定部１３９に供給する。
【０１２７】
モード判定部１３９は、符号化コスト値が最小となるインター予測モードを最適なモードとして選択する。モード判定部１３９は、最適なモードに選択したインター予測モードの予測画像画素値を、予測画像選択部１１６に供給する。
【０１２８】
予測画像選択部１１６により、インター予測が選択された場合、モード判定部１３９は、最適なモードに選択したインター予測モードに関する情報であるモード情報、並びに、そのインター予測モードの差分動き視差情報および予測情報を、可逆符号化部１０６に供給し、符号化させる。これらの情報は、符号化され、復号側に伝送される。
【０１２９】
また、モード判定部１３９は、最適なモードに選択したインター予測モードの、モード情報、差分動き視差情報、および予測情報を、符号化情報蓄積バッファ１３３に供給し、記憶させる。これらの情報は、カレント領域より時間的に後に処理される他の領域に対する処理おいて、周辺領域の情報として利用される。
【０１３０】
［時間視差相関予測ベクトル生成部］
図１３は、時間視差相関予測ベクトル生成部１３６の主な構成例を示すブロック図である。
【０１３１】
図１３に示されるように、時間視差相関予測ベクトル生成部１３６は、カレント領域処理部（注目領域処理部）１５１、相関領域処理部１５２、LI予測処理部１５３、L0予測処理部１５４、方式１処理部１５５、方式２処理部１５６、方式３処理部１５７、方式４処理部１５８、および予測ベクトル生成部１５９を有する。
【０１３２】
カレント領域処理部１５１は、カレント領域に関する情報を取得する処理を行う。カレント領域処理部１５１は、取得したカレント領域に関する情報を、相関領域処理部１５２乃至L0予測処理部１５４の各部に供給する。相関領域処理部１５２は、相関領域に関する情報を取得する処理を行う。
【０１３３】
なお、相関領域は、カレント領域との相関を利用するために参照される領域である。例えば、時間相関領域とは、カレント領域との時間相関を利用するために参照される領域であり、時間相関予測ベクトルの生成に用いられた動きベクトルを有する時間周辺領域である。また、視差相関領域とは、カレント領域との視差相関を利用するために参照される領域であり、視差相関予測ベクトルの生成に用いられた動きベクトルを有する視差周辺領域である。相関領域は、これらの領域を含む。
【０１３４】
相関領域処理部１５２は、相関領域に関する情報を、L1予測処理部１５３およびL0予測処理部１５４に供給する。
【０１３５】
L1予測処理部１５３は、L1方向の予測に関する処理を行う。L1予測処理部１５３は、画面並べ替えバッファ１０２やデコードピクチャバッファ１１２から必要な情報を取得する。またL1予測処理部１５３は、カレント領域処理部１５１および相関領域処理部１５２から供給された情報を取得する。L1予測処理部１５３は、それらの情報を用いて、L1方向の予測に関する処理を行う。
【０１３６】
予測処理として方式１乃至方式４の４つの方法が用意されている。L1予測処理部は、いずれかの方法を選択し、方式１処理部１５５乃至方式４処理部１５８の内、選択した方法に対応する処理部に、情報を提供する。
【０１３７】
L0予測処理部１５４は、L0方向の予測に関する処理を、L1予測処理部１５３と同様に行う。
【０１３８】
方式１は、リスト１の参照画像インデックス１に割り当てられた、カレントビューと異なるビューの、カレントフレームと同時刻のフレーム（参照画像）を相関画像とし、その相関領域のベクトルが視差ベクトルである場合、その視差ベクトル（リファレンス視差ベクトル）を予測ベクトルとして採用する方式である。方式１処理部１５５は、このような方式に従って予測ベクトルを生成するための処理を行う。方式１処理部１５５は、処理の結果得られた各種パラメータを予測ベクトル生成部１５９に供給する。
【０１３９】
方式２は、リスト１の参照画像インデックス０に割り当てられた、カレントビューと同一のビューの、カレントフレームと異なる時刻のフレーム（参照画像）を相関画像とし、その相関領域のベクトルが視差ベクトルである場合、その視差ベクトル（リファレンス視差ベクトル）を予測ベクトルとして採用する方式である。方式２処理部１５６は、このような方式に従って予測ベクトルを生成するための処理を行う。方式２処理部１５６は、処理の結果得られた各種パラメータを予測ベクトル生成部１５９に供給する。
【０１４０】
方式３は、リスト１の参照画像インデックス１に割り当てられた、カレントビューと同一のビューの、カレントフレームと異なる時刻のフレーム（参照画像）を相関画像とし、その相関領域のベクトルが動きベクトルである場合、その動きベクトル（リファレンス視差ベクトル）を予測ベクトルとして採用する方式である。方式３処理部１５７は、このような方式に従って予測ベクトルを生成するための処理を行う。方式３処理部１５７は、処理の結果得られた各種パラメータを予測ベクトル生成部１５９に供給する。
【０１４１】
方式４は、リスト１の参照画像インデックス０に割り当てられた、カレントビューと同一のビューの、カレントフレームと異なる時刻のフレーム（参照画像）を相関画像とし、その相関領域のベクトルが動きベクトルである場合、その動きベクトル（リファレンス視差ベクトル）を予測ベクトルとして採用する方式である。方式４処理部１５８は、このような方式に従って予測ベクトルを生成するための処理を行う。方式４処理部１５８は、処理の結果得られた各種パラメータを予測ベクトル生成部１５９に供給する。
【０１４２】
予測ベクトル生成部１５９は、方式１処理部１５５乃至方式４処理部１５８から供給された情報、および、デコードピクチャバッファ１１２から取得した参照画像のビュー情報や時間情報等を用いて、時間視差相関予測ベクトルを生成する。その際、予測ベクトル生成部１５９は、方式１処理部１５５乃至方式４処理部１５８から供給される情報を用いてスケーリング処理を行う。その際、予測ベクトル生成部１５９は、動き相関予測ベクトルについては時間方向にスケーリングを行い、視差相関予測ベクトルについては視差方向にスケーリングを行う。予測ベクトル生成部１５９は、生成した時間視差相関予測ベクトルを、選択部１３７を介して符号化コスト算出部１３８に供給する。
【０１４３】
このようにすることにより、時間視差相関予測ベクトル生成部１３６は、動き相関予測ベクトルだけでなく、視差相関予測ベクトルも生成することができる。したがって、動き視差予測・補償部１１５は、カレント領域のベクトルが視差ベクトルの場合であっても、予測精度の高い予測ベクトルを生成することができる。これにより画像符号化装置１００は、符号化効率の低減を抑制することができる。
【０１４４】
［方式選択例］
図１４に、各方式が選択される場合の例を示す。図１４に示されるように、参照画像との位置関係（参照画像が時間方向に存在するか、若しくは視差方向に存在するか）がカレント領域（注目領域）の場合と同様である領域が相関領域として選択される。すなわち、カレント領域とそのカレント領域の参照画像との位置関係と、相関領域とその相関領域の参照画像との位置関係とが等しくなる。そして、そのカレント領域とそのカレント領域の参照画像との位置関係と、カレント領域と相関領域との位置関係とによって方式が決定される。
【０１４５】
図１４の表において、下から１行目乃至４行目が各画像の位置関係の例を示しており、Ａ乃至Ｅは、各行においてビューID若しくはPOCの値の例を示す。つまり、ここで重要なのは、値がいくつであるかではなく、他の画像とビューIDやPOCが一致するか否かである。
【０１４６】
下から４行目の例の場合、カレント領域および相関領域ともに、それぞれの参照画像とビューIDが異なるものの、POCが一致する。すなわち、カレント領域および相関領域のベクトルは視差ベクトルである。また、カレント領域と相関領域との間でも、ビューIDが異なり、POCが一致する。すなわち、相関領域は、カレント領域と同じ時刻のフレームの異なるビューの画像である。従って、図１４の表に示されるように方式１が選択される。視点間で視差の変化量が一定の領域で、方式１は、有効である。
【０１４７】
下から３行目の例の場合、カレント領域および相関領域ともに、それぞれの参照画像とビューIDが異なるものの、POCが一致する。すなわち、カレント領域および相関領域のベクトルは視差ベクトルである。また、カレント領域と相関領域との間では、ビューIDが一致し、POCが異なる。すなわち、相関領域は、カレント領域と同じビューの異なる時刻のフレームの画像である。従って、図１４の表に示されるように方式２が選択される。時間的な動き量の変化が小さいときに、方式２は、有効である。
【０１４８】
下から２行目の例の場合、カレント領域および相関領域ともに、それぞれの参照画像とビューIDが一致し、POCが異なる。すなわち、カレント領域および相関領域のベクトルは動きベクトルである。また、カレント領域と相関領域との間では、ビューIDが異なり、POCが一致する。すなわち、相関領域は、カレント領域と同じ時刻のフレームの異なるビューの画像である。従って、図１４の表に示されるように方式３が選択される。視点間の視差量の変化が小さいときに、方式３は、有効である。
【０１４９】
下から１行目の例の場合、カレント領域および相関領域ともに、それぞれの参照画像とビューIDが一致し、POCが異なる。すなわち、カレント領域および相関領域のベクトルは動きベクトルである。また、カレント領域と相関領域との間では、ビューIDが一致し、POCが異なる。すなわち、相関領域は、カレント領域と同じビューの異なる時刻のフレームの画像である。従って、図１４の表に示されるように方式４が選択される。
【０１５０】
つまり、例えば、３Ｄ画像の左右画像のいずれか一方（例えば左眼用画像）をベースビュー（base view）とし、他方（例えば右眼用画像）をディペンデントビュー（dependent view）とすると、ディペンデントビューにおいて、カレント領域のベクトル（符号化ベクトル（Coding vector））の特性と、同じビューの異なる時刻のフレームの相関領域（コロケーテッドブロック（Co-located block））のベクトル（コロケーテッドベクトル（Co-located vector））の特性が一致する場合、コロケーテッドブロックがアベイラブル（Available）とされる。換言するに、ディペンデントビューにおいて、符号化ベクトルおよびコロケーテッドベクトルの特性が一致しない場合、コロケーテッドブロックがノットアベイラブル（Not Available）とされる。もちろん、ベースビューにおいて、同様にするようにしてもよい。
【０１５１】
例えば、図１３のL1予測処理部１５３およびL0予測処理部１５４が、このような設定を行う。
【０１５２】
符号化ベクトルおよびコロケーテッドベクトルの特性が一致するか否かは、例えば、図１５に示されるように、カレント領域とコロケーテッドブロックのそれぞれのPOCをそれぞれの参照画像のPOCと比較することにより、判定することができる。例えば、図１３のL1予測処理部１５３およびL0予測処理部１５４が、このような判定を行う。
【０１５３】
例えば、L1予測処理部１５３およびL0予測処理部１５４は、カレント領域のPOC（CurrPOC）とカレント領域の参照画像のPOC（CurrRefPOC）とが一致せず、かつ、コロケーテッドブロックのPOC（ColPOC）とコロケーテッドブロックの参照画像のPOC（ColRefPOC）とが一致しない場合（（CurrPOC != CurrRefPOC）&&（ColPOC != ColRefPOC））、符号化ベクトルおよびコロケーテッドブロックがともに動きベクトル（motion vector）であると判定する（図１６Ａ）。
【０１５４】
また、例えば、L1予測処理部１５３およびL0予測処理部１５４は、カレント領域のPOC（CurrPOC）とカレント領域の参照画像のPOC（CurrRefPOC）とが一致し、かつ、コロケーテッドブロックのPOC（ColPOC）とコロケーテッドブロックの参照画像のPOC（ColRefPOC）とが一致する場合（（CurrPOC == CurrRefPOC）&&（ColPOC == ColRefPOC））、符号化ベクトルおよびコロケーテッドブロックがともに視差ベクトル（inter-view vector）であると判定する（図１６Ｂ）。
【０１５５】
L1予測処理部１５３およびL0予測処理部１５４は、例えば、この判定結果に基づいて、図１５の下の表に示されるように、コロケーテッドベクトル（Co-located vector）のアベイラビリティ（Availability）の設定を行う。
【０１５６】
例えば、符号化ベクトルおよびコロケーテッドブロックがともに、動きベクトル（motion vector）若しくは視差ベクトル（inter-view vector）であると判定された場合、コロケーテッドベクトル（Co-located vector）がアベイラブル（Available）に設定される（図１６Ａ若しくは図１６Ｂ）。
【０１５７】
逆に、符号化ベクトルおよびコロケーテッドブロックの一方が、動きベクトル（motion vector）であり、他方が視差ベクトル（inter-view vector）であると判定された場合、コロケーテッドベクトル（Co-located vector）がノットアベイラブル（Not Available）に設定される。
【０１５８】
［シンタックス］
図１７にこの場合のシーケンスパラメータセットのシンタックスの例を示す。図１７に示されるように、下から１０行目乃至下から３行目のように、ビューの合計数、ビューを区別するためのID、リストL0における視差予測の枚数、リストL0における視差予測で参照するビューのID、リストL1における視差予測の枚数、および、リストL1における視差予測で参照するビューのID等の情報がシーケンスパラメータセットに含められる。これらの情報は、多視点画像に必要な情報である。換言するに、本技術は、シーケンスパラメータセットに新たなシンタックスを追加することなく適用することができる。
【０１５９】
図１８にこの場合のスライスヘッダのシンタックスの例を示す。図１８に示されるように、上から８行目のように、ビューを区別するためのIDがスライスヘッダに含められる。この情報は、多視点画像に必要な情報である。換言するに、本技術は、スライスヘッダに新たなシンタックスを追加することなく適用することができる。
【０１６０】
図１９にこの場合の予測ユニットのシンタックスの例を示す。図１９に示されるように、本技術は、予測ユニットにも新たなシンタックスを追加することなく適用することができる。ただし、本技術を適用することにより、相関領域の候補が従来の場合より増えるので、マージモードや予測ベクトルのIDにおいて、シンタックスの種類を拡張するか、または、処理の内容を変更する必要がある。
【０１６１】
［符号化処理の流れ］
次に、以上のような画像符号化装置１００により実行される各処理の流れについて説明する。最初に、図２０のフローチャートを参照して、符号化処理の流れの例を説明する。
【０１６２】
ステップＳ１０１において、A/D変換部１０１は入力された画像をA/D変換する。ステップＳ１０２において、画面並べ替えバッファ１０２は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
【０１６３】
ステップＳ１０３において、イントラ予測部１１４は、イントラ予測処理を行う。ステップＳ１０４において、動き視差予測・補償部１１５は、インター動き予測処理を行う。ステップＳ１０５において、予測画像選択部１１６は、イントラ予測により生成された予測画像、および、インター予測により生成された予測画像の内、いずれか一方を選択する。
【０１６４】
ステップＳ１０６において、演算部１０３は、ステップＳ１０２の処理により並び替えられた画像と、ステップＳ１０５の処理により選択された予測画像との差分を演算する（差分画像を生成する）。生成された差分画像は元の画像に較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。
【０１６５】
ステップＳ１０７において、直交変換部１０４は、ステップＳ１０６の処理により生成された差分画像を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、直交変換係数が出力される。ステップＳ１０８において、量子化部１０５は、ステップＳ１０７の処理により得られた直交変換係数を量子化する。
【０１６６】
ステップＳ１０８の処理により量子化された差分画像は、次のようにして局部的に復号される。すなわち、ステップＳ１０９において、逆量子化部１０８は、ステップＳ１０８の処理により生成された量子化された直交変換係数（量子化係数とも称する）を量子化部１０５の特性に対応する特性で逆量子化する。ステップＳ１１０において、逆直交変換部１０９は、ステップＳ１０９の処理により得られた直交変換係数を、直交変換部１０４の特性に対応する特性で逆直交変換する。これにより差分画像が復元される。
【０１６７】
ステップＳ１１１において、演算部１１０は、ステップＳ１０５において選択された予測画像を、ステップＳ１１０において生成された差分画像に加算し、局部的に復号された復号画像（再構成画像）を生成する。ステップＳ１１２において、ループフィルタ１１１は、ステップＳ１１１の処理により得られた再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行い、復号画像を生成する。
【０１６８】
ステップＳ１１３において、デコードピクチャバッファ１１２や多視点デコードピクチャバッファ１２１は、ステップＳ１１２の処理により生成された復号画像、若しくは、ステップＳ１１１の処理により生成された再構成画像を記憶する。
【０１６９】
ステップＳ１１４において、可逆符号化部１０６は、ステップＳ１０８の処理により量子化された直交変換係数を符号化する。すなわち、差分画像に対して、可変長符号化や算術符号化等の可逆符号化が行われる。なお、可逆符号化部１０６は、予測に関する情報や、量子化に関する情報や、フィルタ処理に関する情報等を符号化し、ビットストリームに付加する。
【０１７０】
ステップＳ１１５において、蓄積バッファ１０７は、ステップＳ１１４の処理により得られたビットストリームを蓄積する。蓄積バッファ１０７に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
【０１７１】
ステップＳ１１６において量子化部１０５は、ステップＳ１１５の処理により蓄積バッファ１０７に蓄積された符号化データの符号量（発生符号量）に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化動作のレートを制御する。
【０１７２】
ステップＳ１１６の処理が終了すると、符号化処理が終了される。
【０１７３】
［インター動き予測処理の流れ］
次に、図２１のフローチャートを参照して、図２０のステップＳ１０４において実行されるインター動き予測処理の流れの例を説明する。
【０１７４】
ステップＳ１３１において、動き視差ベクトル探索部１３１は、処理対象のインター予測モードについて、動き探索を行い、処理対象であるカレント領域の動き視差ベクトル（動きベクトルまたは視差ベクトル）を生成する。ステップＳ１３２において、予測画像生成部１３２は、ステップＳ１３１において生成された動き視差ベクトルを用いて補償処理を行って予測画像を生成する。ステップＳ１３３において、符号化コスト算出部１３８は、ステップＳ１３２において生成された予測画像と、原画像（入力画像）との差分画像を生成する。
【０１７５】
ステップＳ１３４において、符号化コスト算出部１３８は、空間相関予測ベクトル生成部１３５や時間視差相関予測ベクトル生成部１３６等を用いてマージモード処理を行う。
【０１７６】
ステップＳ１３５において、符号化コスト算出部１３８は、ステップＳ１３１において生成されたカレント領域の動き視差ベクトルと、ステップＳ１３４の処理により生成されたカレント領域の予測ベクトルとを比較し、カレント領域においてマージモードが適用されるか否かを判定する。
【０１７７】
両者が一致せず、マージモードが適用されないと判定した場合、符号化コスト算出部１３８は、処理をステップＳ１３６に進め、空間相関予測ベクトル生成部１３５や時間視差相関予測ベクトル生成部１３６等を用いて視差動きベクトル予測処理を行う。ステップＳ１３６の処理が終了すると、符号化コスト算出部１３８は、処理をステップＳ１３７に進める。
【０１７８】
また、ステップＳ１３５において、カレント領域の動き視差ベクトルと予測ベクトルが一致し、カレント領域においてマージモードが適用されると判定した場合、符号化コスト算出部１３８は、ステップＳ１３６の処理を省略し、ステップＳ１３７に進める。
【０１７９】
ステップＳ１３７において、符号化コスト算出部１３８は、全てのインター予測モードで、以上の処理を行ったか否かを判定し、未処理のインター予測モードが存在すると判定された場合、処理をステップＳ１３１に戻し、その未処理のインター予測モードについて、それ以降の処理が繰り返されるように制御する。つまり、ステップＳ１３１乃至ステップＳ１３７の各処理が、各インター予測モードについて実行される。
【０１８０】
ステップＳ１３７において、全てのインター予測モードについて処理を行ったと判定された場合、符号化コスト算出部１３８は、処理をステップＳ１３８に進める。ステップＳ１３８において、符号化コスト算出部１３８は、各インター予測モードのコスト関数値を算出する。
【０１８１】
ステップＳ１３９において、モード判定部１３９は、ステップＳ１３８において算出されたコスト関数値（符号化コスト値）が最も小さいインター予測モードを最適なモード（最適インター予測モード）に決定する。
【０１８２】
ステップＳ１４０において、予測画像生成部１３２は、その最適インター予測モードで予測画像を生成する。この予測画像は、予測画像選択部１１６に供給される。
【０１８３】
ステップＳ１４１において、符号化情報蓄積バッファ１３３は、図２０のステップＳ１０５においてインター予測が選択された場合、最適インター予測モードのモード情報や動き情報（動き視差ベクトルや参照画像インデックス等）を記憶する。イントラ予測モードが選択された場合、動き視差ベクトルとしてゼロベクトルが記憶される。なお、これらの情報は、図２０のステップＳ１０５においてインター予測が選択された場合、可逆符号化部１０６にも供給され、符号化されて、復号側に伝送される。
【０１８４】
ステップＳ１４１の処理が終了すると、符号化情報蓄積バッファ１３３は、インター動き予測処理を終了し、処理を図２０に戻す。
【０１８５】
［マージモード処理の流れ］
次に、図２２のフローチャートを参照して、図２１のステップＳ１３４において実行されるマージモード処理の流れの例を説明する。
【０１８６】
マージモード処理が開始されると、ステップＳ１６１において、空間相関予測ベクトル生成部１３５は、空間周辺領域との相関性を利用して空間相関予測ベクトルを生成する空間相関予測処理を行う。ステップＳ１６２において、時間視差相関予測ベクトル生成部１３６は、時間周辺領域や視差周辺領域との相関性を利用して時間視差相関予測ベクトルを生成する時間相関予測処理を行う。
【０１８７】
ステップＳ１６３において、符号化コスト算出部１３８は、ステップＳ１６１において生成された空間相関予測ベクトルと、ステップＳ１６２において生成された時間視差予測ベクトルとで、重複するベクトルを削除する。
【０１８８】
ステップＳ１６４において、符号化コスト算出部１３８は、ベクトルが存在するか否かを判定する。空間相関予測ベクトル若しくは時間視差相関予測ベクトルが１つでも存在すると判定された場合、符号化コスト算出部１３８は、処理をステップＳ１６５に進める。
【０１８９】
ステップＳ１６５において、符号化コスト算出部１３８は、ベクトルが複数存在するか否かを判定する。複数存在すると判定された場合、符号化コスト算出部１３８は、処理をステップＳ１６６に進め、マージインデックスを取得する。複数存在しないと判定された場合、符号化コスト算出部１３８は、ステップＳ１６６の処理を省略する。
【０１９０】
カレント領域の動きベクトルと一致する空間相関予測ベクトル若しくは時間視差相関予測ベクトルが存在する場合、符号化コスト算出部１３８は、ステップＳ１６７において、その一致するベクトルを予測ベクトルとして取得し、ステップＳ１６８において、参照画像インデックスを取得する。
【０１９１】
ステップＳ１６８の処理を終了すると、符号化コスト算出部１３８は、マージモード処理を終了し、処理を図２１に戻す。
【０１９２】
また、ステップＳ１６４において、空間相関予測ベクトル若しくは時間視差相関予測ベクトルが１つも存在しないと判定された場合、符号化コスト算出部１３８は、処理をステップＳ１６９に進める。
【０１９３】
ステップＳ１６９において、符号化コスト算出部１３８は、予測ベクトルに初期値（例えばゼロベクトル）を与える。また、ステップＳ１７０において、符号化コスト算出部１３８は、参照画像インデックスに初期値（例えば０）を与える。
【０１９４】
ステップＳ１７０の処理を終了すると、符号化コスト算出部１３８は、マージモード処理を終了し、処理を図２１に戻す。
【０１９５】
［視差動きベクトル予測処理の流れ］
次に、図２３のフローチャートを参照して、図２１のステップＳ１３６において実行される視差動きベクトル予測処理の流れの例を説明する。
【０１９６】
視差動きベクトル予測処理が開始されると、ステップＳ１９１において、空間相関予測ベクトル生成部１３５は、空間相関予測処理を行い、空間相関予測ベクトルを生成する。ステップＳ１９２において、時間視差相関予測ベクトル生成部１３６は、時間視差相関予測処理を行い、時間視差相関予測ベクトルを生成する。
【０１９７】
ステップＳ１９３において、符号化コスト算出部１３８は、テップＳ１９１において生成された空間相関予測ベクトルと、ステップＳ１９２において生成された時間視差予測ベクトルとで、重複するベクトルを削除する。
【０１９８】
符号化コスト算出部１３８は、残ったベクトルの内、カレント領域の動きベクトルに最も近いベクトルを選択し、ステップＳ１９４においてそのベクトルを示す予測ベクトルインデックスを作成し、ステップＳ１９５において、そのベクトルを予測ベクトルとする。ステップＳ１９５の処理が終了すると、符号化コスト算出部１３８は、視差動きベクトル予測処理を終了し、処理を図２１に戻す。
【０１９９】
［時間視差相関予測処理の流れ］
次に、図２４乃至図２７のフローチャートを参照して、図２２のステップＳ１６２若しくは図２３のステップＳ１９２において実行される時間視差相関予測処理の流れの例を説明する。
【０２００】
時間視差相関予測処理が開始されると、カレント領域処理部１５１は、図２４のステップＳ２１１において、カレント領域のビューIDとPOCを取得する。ステップＳ２１２において、カレント領域処理部１５１は、カレント領域の参照インデックスを決定する。ステップＳ２１３において、カレント領域処理部１５１は、参照画像のビューIDとPOCを取得する。
【０２０１】
ステップＳ２１４において、相関領域処理部１５２は、リストL1の参照画像インデックスの昇順に相関画像を選択する。ステップＳ２１５において、相関領域処理部１５２は、全ての参照画像インデックスを探索したか否かを判定し、全ての参照画像インデックスを参照したと判定した場合、時間視差相関予測処理を終了し、処理を図２２若しくは図２３に戻す。
【０２０２】
また、ステップＳ２１５において、未処理の参照画像インデックスが存在すると判定された場合、相関領域処理部１５２は、処理をステップＳ２１６に進める。ステップＳ２１６において、相関領域処理部１５２は、相関領域を決定し、処理を図２５に進める。
【０２０３】
図２５のステップＳ２２１において、相関領域処理部１５２は、相関領域がイントラ予測された領域、若しくは、他の領域を参照しない領域であるか否かを判定する。相関領域がイントラ予測された領域である、若しくは、他の領域を参照しない領域であると判定された場合、相関領域処理部１５２は、処理を図２６に進める。
【０２０４】
また、図２５のステップＳ２２１において、相関領域がインター予測された領域であり、かつ、他の領域を参照する領域であると判定された場合、相関領域処理部１５２は、処理をステップＳ２２２に進める。
【０２０５】
ステップＳ２２２において、L1予測処理部１５３は、相関領域のビューIDとPOCを取得する。ステップＳ２２３において、L1予測処理部１５３は、相関領域のL1予測の参照画像のビューIDとPOCを取得する。
【０２０６】
ステップＳ２２４において、L1予測処理部１５３は、カレント領域と相関領域のビューIDが一致するか否かを判定する。両者が一致する場合、相関領域は、コロケーテッドブロックである。カレント領域と相関領域のビューIDが一致すると判定された場合、L1予測処理部１５３は、処理をステップＳ２２５に進め、方式４−２処理を行い、方式４若しくは方式２で予測ベクトルを生成するようにする。ステップＳ２２５の処理が終了すると、処理は図２６に進む。
【０２０７】
また、図２５のステップＳ２２４において、カレント領域と相関領域のビューIDが一致しないと判定された場合、L1予測処理部１５３は、処理をステップＳ２２６に進める。
【０２０８】
ステップＳ２２６において、L1予測処理部１５３は、カレント領域と相関領域のPOCが一致するか否かを判定する。カレント領域と相関領域のPOCが一致しないと判定された場合、L1予測処理部１５３は、処理を図２６に進める。
【０２０９】
また、図２５のステップＳ２２６において、カレント領域と相関領域のPOCが一致すると判定された場合、L1予測処理部１５３は、処理をステップＳ２２７に進める。
【０２１０】
ステップＳ２２７において、L1予測処理部１５３は、カレント領域の参照画像と相関領域の参照画像のPOCが一致するか否かを判定する。カレント領域の参照画像と相関領域の参照画像のPOCが一致すると判定された場合、L1予測処理部１５３は、処理をステップＳ２２８に進め、方式１処理を行い、方式１で予測ベクトルを生成するようにする。ステップＳ２２８の処理を終了すると、L1予測処理部１５３は、処理を図２６に進める。
【０２１１】
また、図２５のステップＳ２２７において、カレント領域の参照画像と相関領域の参照画像のPOCが一致しないと判定された場合、L1予測処理部１５３は、処理をステップＳ２２９に進め、方式３処理を行い、方式３で予測ベクトルを生成するようにする。ステップＳ２２９の処理を終了すると、L1予測処理部１５３は、処理を図２６に進める。
【０２１２】
図２６において、L0予測処理部１５４は、相関領域のL0予測について、図２５のL1予測の場合と同様の処理を行う。つまり、L0予測処理部１５４は、ステップＳ２３１乃至ステップＳ２３８の各処理を、図２５のステップＳ２２２乃至ステップＳ２２９の各処理と同様に行う。
【０２１３】
ただし、図２６の場合、相関領域の参照画像は、L0予測の参照画像とする。また、ステップＳ２３４、ステップＳ２３７、若しくはステップＳ２３８の処理が終了した場合、または、ステップＳ２３５においてカレント領域と相関領域のPOCが一致しないと判定された場合、L0予測処理部１５４は、処理を図２７に進める。
【０２１４】
図２７のステップＳ２４１において、予測ベクトル生成部１５９は、予測ベクトル候補が少なくとも１つ存在するか否かを判定する。予測ベクトル候補が１つも存在しないと判定された場合、予測ベクトル生成部１５９は、処理を図２４のステップＳ２１４に戻す。
【０２１５】
また、図２７のステップＳ２４１において、予測ベクトル候補が少なくとも１つ存在すると判定された場合、予測ベクトル生成部１５９は、処理をステップＳ２４２に進める。ステップＳ２４２において、予測ベクトル生成部１５９は、L1の飛び越しフラグのみ１であるか、若しくは、L0/L1の飛び越しフラグの値が等しく、L1の参照があるか否かを判定する。
【０２１６】
L1の飛び越しフラグのみが１であると判定された場合、若しくは、L0/L1の飛び越しフラグの値が等しく、かつ、L1の参照があると判定された場合、予測ベクトル生成部１５９は、処理をステップＳ２４３に進める。
【０２１７】
ステップＳ２４３において、予測ベクトル生成部１５９は、L1参照のベクトルを取得する。ステップＳ２４４において、予測ベクトル生成部１５９は、L1参照の参照画像インデックスを取得し、処理をステップＳ２４７に進める。
【０２１８】
また、ステップＳ２４２において、L1の飛び越しフラグが１ではない、若しくは、L0の飛び越しフラグも０であると判定され、かつ、L0/L1の飛び越しフラグの値が等しくない、若しくは、L1の参照がないと判定された場合、予測ベクトル生成部１５９は、処理をステップＳ２４５に進める。
【０２１９】
ステップＳ２４５において、予測ベクトル生成部１５９は、L0参照のベクトルを取得する。ステップＳ２４６において、予測ベクトル生成部１５９は、L0参照の参照画像インデックスを取得し、処理をステップＳ２４７に進める。
【０２２０】
ステップＳ２４７において、予測ベクトル生成部１５９は、取得したL1参照のベクトルもしくはL0参照のベクトルを予測ベクトルとする。その際、予測ベクトル生成部１５９は、カレント領域や相関領域における参照画像との距離を用いてベクトルのスケーリングを行い、スケーリング結果を予測ベクトルとする。
【０２２１】
ステップＳ２４７の処理が終了すると、予測ベクトル生成部１５９は、処理を図２４に戻し、時間視差相関予測処理を終了し、処理を図２２若しくは図２３に戻す。
【０２２２】
［方式１処理の流れ］
次に、図２８のフローチャートを参照して、図２５若しくは図２６において実行される方式１処理の流れの例を説明する。
【０２２３】
方式１処理が開始されると、方式１処理部１５５は、ステップＳ２６１において、カレント領域とカレント領域の参照画像のPOCが一致するか否かを判定する。カレント領域とカレント領域の参照画像のPOCが一致しないと判定された場合、方式１処理部１５５は、方式１処理を終了し、処理を図２５若しくは図２６に戻す。
【０２２４】
また、ステップＳ２６１において、カレント領域とカレント領域の参照画像のPOCが一致すると判定された場合、方式１処理部１５５は、処理をステップＳ２６２に進める。
【０２２５】
ステップＳ２６２において、方式１処理部１５５は、相関領域と相関領域の参照画像のPOCが一致するか否かを判定する。相関領域と相関領域の参照画像のPOCが一致しないと判定された場合、方式１処理部１５５は、方式１処理を終了し、処理を図２５若しくは図２６に戻す。
【０２２６】
また、ステップＳ２６２において、相関領域と相関領域の参照画像のPOCが一致すると判定された場合、方式１処理部１５５は、処理をステップＳ２６３に進める。
【０２２７】
ステップＳ２６３において、方式１処理部１５５は、カレント領域とカレント領域の参照画像の視点間距離１を算出する。ステップＳ２６４において、方式１処理部１５５は、相関領域と相関領域の参照画像の視点間距離２を算出する。ステップＳ２６５において、方式１処理部１５５は、参照画像の飛び越しフラグを決定し、処理を図２５若しくは図２６に戻す。これらのパラメータ（視点間距離１、視点間距離２、および飛び越しフラグ）は、図２７の処理に利用される。
【０２２８】
［方式３処理の流れ］
次に、図２９のフローチャートを参照して、図２５若しくは図２６において実行される方式３処理の流れの例を説明する。
【０２２９】
方式３処理が開始されると、方式３処理部１５７は、ステップＳ２７１において、カレント領域とカレント領域の参照画像のビューIDが一致するか否かを判定する。カレント領域とカレント領域の参照画像のビューIDが一致しないと判定された場合、方式３処理部１５７は、方式３処理を終了し、処理を図２５若しくは図２６に戻す。
【０２３０】
また、ステップＳ２７１において、カレント領域とカレント領域の参照画像のビューIDが一致すると判定された場合、方式３処理部１５７は、処理をステップＳ２７２に進める。
【０２３１】
ステップＳ２７２において、方式３処理部１５７は、相関領域と相関領域の参照画像のビューIDが一致するか否かを判定する。相関領域と相関領域の参照画像のビューIDが一致しないと判定された場合、方式３処理部１５７は、方式３処理を終了し、処理を図２５若しくは図２６に戻す。
【０２３２】
また、ステップＳ２７２において、相関領域と相関領域の参照画像のビューIDが一致すると判定された場合、方式３処理部１５７は、処理をステップＳ２７３に進める。
【０２３３】
ステップＳ２７３において、方式３処理部１５７は、カレント領域とカレント領域の参照画像の視点間距離１を算出する。ステップＳ２７４において、方式３処理部１５７は、相関領域と相関領域の参照画像の視点間距離２を算出する。ステップＳ２７５において、方式３処理部１５７は、参照画像の飛び越しフラグを決定し、処理を図２５若しくは図２６に戻す。これらのパラメータ（視点間距離１、視点間距離２、および飛び越しフラグ）は、図２７の処理に利用される。
【０２３４】
［方式４−２処理の流れ］
次に、図３０のフローチャートを参照して、図２５若しくは図２６において実行される方式４−２処理の流れの例を説明する。
【０２３５】
方式４−２処理が開始されると、L1予測処理部１５３若しくはL0予測処理部１５４は、ステップＳ２８１において、カレント領域とカレント領域の参照画像のビューIDが一致するか否かを判定する。両者が一致する場合、符号化ベクトルは動きベクトルである。カレント領域とカレント領域の参照画像のビューIDが一致すると判定された場合、処理は、ステップＳ２８２に進む。
【０２３６】
ステップＳ２８２において、L1予測処理部１５３若しくはL0予測処理部１５４は、相関領域（コロケーテッドブロック）と相関領域の参照画像のビューIDが一致するか否かを判定する。両者が一致しない場合、コロケーテッドベクトルは視差ベクトルである。相関領域と相関領域の参照画像のビューIDが一致しないと判定された場合、L1予測処理部１５３若しくはL0予測処理部１５４は、方式４−２処理を終了し、処理を図２５若しくは図２６に戻す。
【０２３７】
つまり、この場合、符号化ベクトルが動きベクトルであり、コロケーテッドベクトルが視差ベクトルであるので、符号化ベクトルの特性とコロケーテッドベクトルの特性とが一致しない。したがって、コロケーテッドブロックはノットアベイラブルに設定され、方式４−２処理が終了される。
【０２３８】
また、ステップＳ２８２において、相関領域と相関領域の参照画像のビューIDが一致すると判定された場合、L1予測処理部１５３若しくはL0予測処理部１５４は、処理をステップＳ２８３に進める。両者が一致する場合、コロケーテッドベクトルは動きベクトルである。つまり、この場合、符号化ベクトルもコロケーテッドベクトルも動きベクトルであり、両ベクトルの特性が一致する。したがって、この場合、コロケーテッドベクトルがアベイラブルに設定される。
【０２３９】
ステップＳ２８３において、方式４処理部１５８は、カレント領域とカレント領域の参照画像の視点間距離１を算出する。ステップＳ２８４において、方式４処理部１５８は、相関領域と相関領域の参照画像の視点間距離２を算出する。ステップＳ２８５において、方式４処理部１５８は、参照画像の飛び越しフラグを決定し、処理を図２５若しくは図２６に戻す。これらのパラメータ（視点間距離１、視点間距離２、および飛び越しフラグ）は、図２７の処理に利用される。
【０２４０】
また、ステップＳ２８１において、カレント領域とカレント領域の参照画像のビューIDが一致しないと判定された場合、L1予測処理部１５３若しくはL0予測処理部１５４は、処理をステップＳ２８６に進める。
【０２４１】
ステップＳ２８６において、予測処理部１５３若しくはL0予測処理部１５４は、カレント領域とカレント領域の参照画像のPOCが一致するか否かを判定する。カレント領域とカレント領域の参照画像のPOCが一致しないと判定された場合、予測処理部１５３若しくはL0予測処理部１５４は、方式４−２処理を終了し、処理を図２５若しくは図２６に戻す。
【０２４２】
また、ステップＳ２８６において、カレント領域とカレント領域の参照画像のPOCが一致すると判定された場合、予測処理部１５３若しくはL0予測処理部１５４は、処理をステップＳ２８７に進める。両者が一致する場合、符号化ベクトルは視差ベクトルである。
【０２４３】
ステップＳ２８７において、予測処理部１５３若しくはL0予測処理部１５４は、相関領域と相関領域の参照画像のPOCが一致するか否かを判定する。両者が一致しない場合、コロケーテッドベクトルは動きベクトルである。相関領域と相関領域の参照画像のPOCが一致しないと判定された場合、予測処理部１５３若しくはL0予測処理部１５４は、方式４−２処理を終了し、処理を図２５若しくは図２６に戻す。
【０２４４】
つまり、この場合、符号化ベクトルが視差ベクトルであり、コロケーテッドベクトルが動きベクトルであるので、符号化ベクトルの特性とコロケーテッドベクトルの特性とが一致しない。したがって、コロケーテッドブロックはノットアベイラブルに設定され、方式４−２処理が終了される。
【０２４５】
また、ステップＳ２８７において、相関領域と相関領域の参照画像のPOCが一致すると判定された場合、L1予測処理部１５３若しくはL0予測処理部１５４は、処理をステップＳ２８３に戻す。両者が一致する場合、コロケーテッドベクトルは視差ベクトルである。つまり、この場合、符号化ベクトルもコロケーテッドベクトルも視差ベクトルであり、両ベクトルの特性が一致する。したがって、この場合、コロケーテッドベクトルがアベイラブルに設定される。
【０２４６】
この場合、方式２処理部１５６は、方式４処理部１５８が実行する場合と同様に、ステップＳ２８３乃至ステップＳ２８５の処理を行う。ステップＳ２８５の処理が終了すると、方式２処理部１５６は、方式４−２処理を終了し、処理を図２５若しくは図２６に戻す。
【０２４７】
以上のように各処理を行うことにより、時間視差相関予測ベクトル生成部１３６は、動き相関予測ベクトルだけでなく、視差相関予測ベクトルも生成することができる。したがって、動き視差予測・補償部１１５は、カレント領域のベクトルが視差ベクトルの場合であっても、予測精度の高い予測ベクトルを生成することができる。これにより、画像符号化装置１００は、符号化効率の低減を抑制することができる。
【０２４８】
＜２．第２の実施の形態＞
［画像復号装置］
図３１は、画像処理装置である画像復号装置の主な構成例を示すブロック図である。図３１に示される画像復号装置３００は、図１１の画像符号化装置１００に対応する装置である。つまり、画像復号装置３００は、画像符号化装置１００が多視点画像を符号化して生成した符号化データ（ビットストリーム）を、画像符号化装置１００の符号化方法に対応する復号方法で復号し、多視点の復号画像を得る。
【０２４９】
図３１に示されるように、画像復号装置３００は、蓄積バッファ３０１、可逆復号部３０２、逆量子化部３０３、逆直交変換部３０４、演算部３０５、ループフィルタ３０６、画面並べ替えバッファ３０７、およびD/A変換部３０８を有する。また、画像復号装置３００は、デコードピクチャバッファ３０９、選択部３１０、イントラ予測部３１１、動き視差補償部３１２、および選択部３１３を有する。
【０２５０】
さらに、画像復号装置３００は、多視点デコードピクチャバッファ３２１を有する。
【０２５１】
蓄積バッファ３０１は、伝送されてきた符号化データを蓄積し、所定のタイミングにおいてその符号化データを可逆復号部３０２に供給する。可逆復号部３０２は、蓄積バッファ３０１より供給された、図１１の可逆符号化部１０６により符号化された情報を、可逆符号化部１０６の符号化方式に対応する方式で復号する。可逆復号部３０２は、復号して得られた差分画像の量子化された係数データを、逆量子化部３０３に供給する。
【０２５２】
また、可逆復号部３０２は、符号化データを復号して得られた最適な予測モードに関する情報を参照し、最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定する。可逆復号部３０２は、その判定結果に基づいて、その最適な予測モードに関する情報を、イントラ予測部３１１若しくは動き視差補償部３１２に供給する。つまり、例えば、画像符号化装置１００において最適な予測モードとしてイントラ予測モードが選択された場合、その最適な予測モードに関する情報であるイントラ予測情報等がイントラ予測部３１１に供給される。また、例えば、画像符号化装置１００において最適な予測モードとしてインター予測モードが選択された場合、その最適な予測モードに関する情報であるインター予測情報等が動き視差補償部３１２に供給される。
【０２５３】
逆量子化部３０３は、可逆復号部３０２により復号されて得られた量子化された係数データを、図１１の量子化部１０５の量子化方式に対応する方式で逆量子化し、得られた係数データを逆直交変換部３０４に供給する。逆直交変換部３０４は、図１１の直交変換部１０４の直交変換方式に対応する方式で逆量子化部３０３から供給される係数データを逆直交変換する。逆直交変換部３０４は、この逆直交変換処理により、画像符号化装置１００において直交変換される前の差分画像に対応する差分画像を得る。
【０２５４】
逆直交変換されて得られた差分画像は、演算部３０５に供給される。また、演算部３０５には、選択部３１３を介して、イントラ予測部３１１若しくは動き視差補償部３１２から予測画像が供給される。
【０２５５】
演算部３０５は、差分画像と予測画像とを加算し、画像符号化装置１００の演算部１０３により予測画像が減算される前の画像に対応する再構成画像を得る。演算部３０５は、その再構成画像をループフィルタ３０６に供給する。
【０２５６】
ループフィルタ３０６は、供給された再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施して復号画像を生成する。例えば、ループフィルタ３０６は、再構成画像に対してデブロックフィルタ処理を行うことにより、ブロック歪を除去する。また、例えば、ループフィルタ３０６は、そのデブロックフィルタ処理結果（ブロック歪みの除去が行われた再構成画像）に対して、ウィナーフィルタ（Wiener Filter）を用いてループフィルタ処理を行うことにより画質改善を行う。
【０２５７】
なお、ループフィルタ３０６が行うフィルタ処理の種類は任意であり、上述した以外のフィルタ処理を行ってもよい。また、ループフィルタ３０６が、図１１の画像符号化装置１００から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。
【０２５８】
ループフィルタ３０６は、フィルタ処理結果である復号画像を画面並べ替えバッファ３０７およびデコードピクチャバッファ３０９に供給する。なお、このループフィルタ３０６によるフィルタ処理は省略することもできる。つまり、演算部３０５の出力が、フィルタ処理されずに、デコードピクチャバッファ３０９に格納されるようにすることもできる。例えば、イントラ予測部３１１は、この画像に含まれる画素の画素値を周辺画素の画素値として利用する。
【０２５９】
画面並べ替えバッファ３０７は、供給された復号画像の並べ替えを行う。すなわち、図１１の画面並べ替えバッファ１０２により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部３０８は、画面並べ替えバッファ３０７から供給された復号画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
【０２６０】
デコードピクチャバッファ３０９は、供給される再構成画像（並びに、その画像のビューIDおよびPOC）や復号画像（並びに、その画像のビューIDおよびPOC）を記憶する。また、デコードピクチャバッファ３０９は、所定のタイミングにおいて、若しくは、イントラ予測部３１１や動き視差補償部３１２等の外部の要求に基づいて、記憶している再構成画像（並びに、その画像のビューIDおよびPOC）や復号画像（並びに、その画像のビューIDおよびPOC）を、選択部３１０を介してイントラ予測部３１１や動き視差補償部３１２に供給する。
【０２６１】
イントラ予測部３１１は、図１１のイントラ予測部１１４と基本的に同様の処理を行う。ただし、イントラ予測部３１１は、符号化の際にイントラ予測により予測画像が生成された領域に対してのみ、イントラ予測を行う。
【０２６２】
動き視差補償部３１２は、可逆復号部３０２から供給されるインター予測情報に基づいて動き視差補償を行い、予測画像を生成する。なお、動き視差補償部３１２は、可逆復号部３０２から供給されるインター予測情報に基づいて、符号化の際にインター予測が行われた領域に対してのみ、動き視差補償を行う。
【０２６３】
動き視差補償部３１２は、予測処理単位の領域毎に、生成した予測画像を、選択部３１３を介して演算部３０５に供給する。
【０２６４】
選択部３１３は、イントラ予測部３１１から供給される予測画像、若しくは、動き視差補償部３１２から供給される予測画像を演算部３０５に供給する。
【０２６５】
デコードピクチャバッファ３０９は、処理対象のビューの画像（並びに、その画像のビューIDおよびPOC）のみを記憶するが、多視点デコードピクチャバッファ３２１は、各視点（ビュー）の画像（並びに、その画像のビューIDおよびPOC）を記憶する。つまり、多視点デコードピクチャバッファ３２１は、デコードピクチャバッファ３０９に供給された復号画像（並びに、その画像のビューIDおよびPOC）を取得し、デコードピクチャバッファ３０９とともにその復号画像（並びに、その画像のビューIDおよびPOC）を記憶する。
【０２６６】
デコードピクチャバッファ３０９は、処理対象のビューが変わると、その復号画像を消去するが、多視点デコードピクチャバッファ３２１は、そのまま保持する。そして、デコードピクチャバッファ３０９などの要求に従って、記憶している復号画像（並びに、その画像のビューIDおよびPOC）を、「処理対象ではないビューの復号画像」として、デコードピクチャバッファ３０９に供給する。デコードピクチャバッファ３０９は、多視点デコードピクチャバッファ３２１から読み出した「処理対象ではないビューの復号画像（並びに、その画像のビューIDおよびPOC）」を、選択部３１０を介して動き視差補償部３１２に供給する。
【０２６７】
［動き視差補償部］
図３２は、動き視差補償部３１２の主な構成例を示すブロック図である。
【０２６８】
図３２に示されるように、動き視差補償部３１２は、符号化情報蓄積バッファ３３１、空間相関予測ベクトル生成部３３２、時間視差相関予測ベクトル生成部３３３、選択部３３４、演算部３３５、および予測画像生成部３３６を有する。
【０２６９】
符号化情報蓄積バッファ３３１は、可逆復号部３０２において得られた、モード情報、差分動き視差情報、および予測情報を取得する。また、符号化情報蓄積バッファ３３１は、予測画像生成部３３６において使用された復号済みの動き視差ベクトルを記憶する。この動き視差ベクトルは、他の領域に対する処理において周辺領域の動き視差ベクトルとして使用される。
【０２７０】
符号化情報蓄積バッファ３３１は、モード情報や復号済みの周辺領域の動き視差ベクトルを、空間相関予測ベクトル生成部３３２、若しくは、時間視差相関予測ベクトル生成部３３３の、予測情報において指定される予測ベクトルの種類（空間相関予測ベクトル若しくは時間視差相関予測ベクトル）に対応する方に供給する。
【０２７１】
また、符号化情報蓄積バッファ３３１は、差分動き視差情報に含まれる差分動き視差ベクトルを演算部３３５に供給する。さらに、符号化情報蓄積バッファ３３１は、予測情報に含まれる参照画像インデックスを予測画像生成部３３６に供給する。
【０２７２】
空間相関予測ベクトル生成部３３２は、符号化情報蓄積バッファ３３１から供給された情報に基づいて、空間相関予測ベクトルを生成する。この生成方法は、空間相関予測ベクトル生成部１３５の場合と同様である。ただし、空間相関予測ベクトル生成部３３２の場合、最適なインター予測モードは予め決められているので、そのモードについてのみ空間相関予測ベクトルを生成すればよい。空間相関予測ベクトル生成部３３２は、生成した空間相関予測ベクトルを、選択部３３４を介して演算部３３５に供給する。
【０２７３】
時間視差相関予測ベクトル生成部３３３は、符号化情報蓄積バッファ３３１から供給された情報、可逆復号部３０２から供給されるカレント領域のビューIDやPOC等の情報、並びに、デコードピクチャバッファ３０９から供給される参照画像のビューIDやPOC等の情報に基づいて、時間視差相関予測ベクトルを生成する。この生成方法は、時間視差相関予測ベクトル生成部１３６の場合と同様である。ただし、時間視差相関予測ベクトル生成部３３３の場合、最適なインター予測モードは予め決められているので、そのモードについてのみ時間視差相関予測ベクトルを生成すればよい。時間視差相関予測ベクトル生成部３３３は、生成した時間視差相関予測ベクトルを、選択部３３４を介して演算部３３５に供給する。
【０２７４】
選択部３３４は、空間相関予測ベクトル生成部３３２から空間相関予測ベクトルを供給された場合、それを演算部３３５に供給する。また、選択部３３４は、時間視差相関予測ベクトル生成部３３３から時間視差相関予測ベクトルを供給された場合、それを演算部３３５に供給する。
【０２７５】
演算部３３５は、選択部３３４から供給される空間相関予測ベクトル若しくは時間視差相関予測ベクトルに、符号化情報蓄積バッファ３３１から供給される差分動き視差ベクトルを加算し、カレント領域の動き視差ベクトルを再構築する。演算部３３５は、再構築されたカレント領域の動き視差ベクトルを予測画像生成部３３６に供給する。
【０２７６】
予測画像生成部３３６は、演算部３３５より供給される、再構築されたカレント領域の動き視差ベクトルと、符号化情報蓄積バッファ３３１から供給される参照画像インデックスと、デコードピクチャバッファ３０９から供給される周辺領域の画像である周辺画像画素値とを用いて、予測画像を生成する。予測画像生成部３３６は、生成した予測画像画素値を選択部３１３に供給する。
【０２７７】
このようにすることにより、時間視差相関予測ベクトル生成部３３３は、時間視差相関予測ベクトル生成部１３６の場合と同様に、動き相関予測ベクトルだけでなく、視差相関予測ベクトルも生成することができる。したがって、動き視差補償部３１２は、カレント領域のベクトルが視差ベクトルの場合であっても、視差相関予測ベクトルを再構築することができる。すなわち、画像復号装置３００は、画像符号化装置１００により生成された符号化データを正しく復号することができるので、符号化効率の向上を実現することができる。
【０２７８】
［復号処理の流れ］
次に、以上のような画像復号装置３００により実行される各処理の流れについて説明する。最初に、図３３のフローチャートを参照して、復号処理の流れの例を説明する。
【０２７９】
復号処理が開始されると、ステップＳ３０１において、蓄積バッファ３０１は、伝送されてきたビットストリームを蓄積する。ステップＳ３０２において、可逆復号部３０２は、蓄積バッファ３０１から供給されるビットストリーム（符号化された差分画像情報）を復号する。このとき、イントラ予測情報やインター予測情報等、ビットストリームに含められた差分画像情報以外の各種情報も復号される。
【０２８０】
ステップＳ３０３において、逆量子化部３０３は、ステップＳ３０２の処理により得られた、量子化された直交変換係数を逆量子化する。ステップＳ３０４において逆直交変換部３０４は、ステップＳ３０３において逆量子化された直交変換係数を逆直交変換する。
【０２８１】
ステップＳ３０５において、イントラ予測部３１１若しくは動き視差補償部３１２は、供給された情報を用いて予測処理を行う。ステップＳ３０６において、演算部３０５は、ステップＳ３０４において逆直交変換されて得られた差分画像情報に、ステップＳ３０５において生成された予測画像を加算する。これにより再構成画像が生成される。
【０２８２】
ステップＳ３０７において、ループフィルタ３０６は、ステップＳ３０６において得られた再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
【０２８３】
ステップＳ３０８において、画面並べ替えバッファ３０７は、ステップＳ３０７においてフィルタ処理されて生成された復号画像の並べ替えを行う。すなわち画像符号化装置１００の画面並べ替えバッファ１０２により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
【０２８４】
ステップＳ３０９において、D/A変換部３０８は、フレームの順序が並べ替えられた復号画像をD/A変換する。この復号画像が図示せぬディスプレイに出力され、表示される。
【０２８５】
ステップＳ３１０において、デコードピクチャバッファ３０９は、ステップＳ３０７においてフィルタ処理されて得られた復号画像を記憶する。この復号画像は、インター予測処理において参照画像として利用される。
【０２８６】
ステップＳ３１０の処理が終了すると、復号処理が終了される。
【０２８７】
［予測処理の流れ］
次に、図３４のフローチャートを参照して、図３３のステップＳ３０５において実行される予測処理の流れの例を説明する。
【０２８８】
予測処理が開始されると、可逆復号部３０２は、ステップＳ３３１において、処理対象のカレント領域が符号化の際にイントラ予測が行われたか否かを判定する。イントラ予測が行われたと判定された場合、可逆復号部３０２は、処理をステップＳ３３２に進める。
【０２８９】
この場合、イントラ予測部３１１は、ステップＳ３３２において、可逆復号部３０２からイントラ予測モード情報を取得し、ステップＳ３３３において、イントラ予測によって予測画像を生成する。予測画像が生成されると、イントラ予測部３１１は、予測処理を終了し、処理を図３３に戻す。
【０２９０】
また、ステップＳ３３１において、カレント領域がインター予測の行われた領域であると判定した場合、可逆復号部３０２は、処理をステップＳ３３４に進める。ステップＳ３３４において、動き視差補償部３１２は、動き視差補償処理を行う。動き視差補償処理が終了すると、動き視差補償部３１２は、予測処理を終了し、処理を図３３に戻す。
【０２９１】
［動き視差補償処理の流れ］
次に、図３５のフローチャートを参照して、図３４のステップＳ３３４において実行される動き視差補償処理の流れの例を説明する。
【０２９２】
動き視差補償処理が開始されると、ステップＳ３５１において、符号化情報蓄積バッファ３３１は、ステップＳ３５１において復号されたモード情報、動き視差情報、および予測情報等を記憶する。
【０２９３】
ステップＳ３５２において、空間相関予測ベクトル生成部３３２、時間視差相関予測ベクトル生成部３３３、選択部３３４、および演算部３３５は、動き視差ベクトル生成処理を行い、カレント領域の動き視差ベクトルを再構築する。
【０２９４】
動き視差ベクトルが再構築されると、ステップＳ３５３において、予測画像生成部３３６は、その動き視差ベクトルを用いて予測画像を生成する。
【０２９５】
予測画像が生成されると、予測画像生成部３３６は、動き視差補償処理を終了し、処理を図３４に戻す。
【０２９６】
［動き視差ベクトル生成処理の流れ］
次に、図３６のフローチャートを参照して、図３５のステップＳ３５２において実行される動き視差ベクトル生成処理の流れの例を説明する。
【０２９７】
動き視差ベクトル生成処理が開始されると、符号化情報蓄積バッファ３３１は、ステップＳ３７１において、予測情報からスキップモードであるか否かを判定する。スキップモードであると判定された場合、符号化情報蓄積バッファ３３１は、処理をステップＳ３７２に進める。ステップＳ３７２において、空間相関予測ベクトル生成部３３２乃至演算部３３５は、マージモード処理を行い、マージモードで動き視差ベクトルを再構築する。なお、このマージモード処理においては、図２２のフローチャートを参照して説明した各処理と同様の処理が行われる。マージモード処理が終了すると、演算部３３５は、動き視差ベクトル生成処理を終了し、処理を図３５に戻す。
【０２９８】
また、図３６のステップＳ３７１において、スキップモードではないと判定された場合、符号化情報蓄積バッファ３３１は、処理をステップＳ３７３に進める。ステップＳ３７３において、符号化情報蓄積バッファ３３１は、予測情報からマージモードであるか否かを判定する。マージモードであると判定された場合、符号化情報蓄積バッファ３３１は、処理をステップＳ３７２に戻し、マージモード処理を実行させる。
【０２９９】
また、ステップＳ３７３において、マージモードではないと判定された場合、符号化情報蓄積バッファ３３１は、処理をステップＳ３７４に進める。
【０３００】
ステップＳ３７４において、符号化情報蓄積バッファ３３１は、参照画像のインデックスを取得する。ステップＳ３７５において、符号化情報蓄積バッファ３３１は、差分動き視差ベクトルを取得する。
【０３０１】
ステップＳ３７６において、空間相関予測ベクトル生成部３３２若しくは時間視差相関予測ベクトル生成部３３３は、視差動きベクトル予測処理を行う。この視差動きベクトル予測処理は、図２３のフローチャートを参照して説明した場合と同様に行われる。ただし、この場合、予測方法は決められているので、空間相関予測処理と時間視差相関予測処理の内、いずれか一方（予測情報により指定される方）が行われる。
【０３０２】
ステップＳ３７７において、演算部３３５は、ステップＳ３７６において再構築された予測ベクトルと、差分動き視差ベクトルとを加算し、動き視差ベクトルを再構築する。
【０３０３】
ステップＳ３７７の処理が終了すると、演算部３３５は、動き視差ベクトル生成処理を終了し、処理を図３５に戻す。
【０３０４】
以上のように各処理を実行することにより、時間視差相関予測ベクトル生成部３３３は、時間視差相関予測ベクトル生成部１３６の場合と同様に、動き相関予測ベクトルだけでなく、視差相関予測ベクトルも生成することができる。したがって、動き視差補償部３１２は、カレント領域のベクトルが視差ベクトルの場合であっても、視差相関予測ベクトルを再構築することができる。すなわち、画像復号装置３００は、画像符号化装置１００により生成された符号化データを正しく復号することができるので、符号化効率の向上を実現することができる。
【０３０５】
＜３．第３の実施の形態＞
［ポイント］
多視点画像の場合、一般的に、視差を発生させるように画像の位置がビュー間でずれている。そのためビュー方向のブロックを選択するときに、同位置のブロックを選択（参照）しても、予測画像の予測精度が低くなってしまい、適切な予測ベクトルを作ることができない可能性がある。
【０３０６】
そこで、予測ベクトル生成のために、ビュー方向のブロックを選択するときに、シフトした位置のブロックを選択する。つまり、カレント領域と同一の時刻の画像の位置をシフトさせた状態でカレント領域と同じ位置となる領域のベクトルを用いて、予測ベクトルを生成するようにする。
【０３０７】
このシフト量を、周辺ブロックの視差ベクトルから予め決められた手順で算出するようにする。この手順を符号化側の装置と復号側の装置とで共通化することにより、符号化側と復号側で、同様の予測を行うことができる。
【０３０８】
なお、シフト量を計算するための周辺ブロックを明示的に指定し、その情報を、符号化側から復号側に伝送するようにしてもよい。また、シフト量の演算方法に関する情報も符号化側から復号側に伝送するようにしてもよい。
【０３０９】
以上のようにすることにより、画像符号化装置においても、画像復号装置においても、ビュー間で位置合わせしたブロックから予測ベクトルを生成することができる。したがって、予測画像の予測精度を向上させることができ、符号化効率を向上させることができる。
【０３１０】
以下に、詳細を説明する。
【０３１１】
［画像符号化装置］
図３７は、本技術を適用した画像符号化装置の他の構成例を示すブロック図である。
【０３１２】
図３７に示される画像符号化装置４００は、基本的に上述した画像符号化装置１００と同様の装置である。ただし、画像符号化装置４００は、ビュー間で位置合わせしたブロックから予測ベクトルを生成する。
【０３１３】
図３７に示されるように、画像符号化装置４００は、動き予測・補償部４１５およびBase Viewエンコーダ４２１を有する。
【０３１４】
動き予測・補償部４１２は、デコードピクチャバッファ１１２から取得したデコード画像と、Base Viewエンコーダ４２１から取得したベースビューの動き情報を用いて、ビュー方向のブロックを参照する予測ベクトルを生成する。
【０３１５】
Base Viewエンコーダ４２１は、ベースビューの符号化を行う。Base Viewエンコーダ４２１は、ベースビューのデコード画像をデコードピクチャバッファ１１２に供給し、記憶させる。デコードピクチャバッファ１１２には、さらに、ループフィルタ１１１から供給されるノンベースビューのデコード画像も記憶される。
【０３１６】
Base Viewエンコーダ４２１は、ベースビューの動き情報を動き予測・補償部４１２に供給する。
【０３１７】
［動き予測・補償部］
図３８は、図３７の動き予測・補償部４１２の主な構成例を示すブロック図である。
【０３１８】
図３８に示されるように、動き予測・補償部４１２は、インターモード生成部４３１、参照インデックス決定部４３２、ベクトル予測部４３３、ベクトル予測部４３４、およびモード判定部４３５を有する。各処理部の間では、図３８に示される情報が授受される。
【０３１９】
ベクトル予測部４３３は、インター予測モードの場合、予測ベクトルを生成し、その予測画像を生成する。ベクトル予測部４３４は、スキップモードやマージモード等の場合、予測ベクトルを生成し、その予測画像を生成する。これらにおいて生成された予測ベクトルや予測画像は、モード判定部４３５に供給される。
【０３２０】
モード判定部４３５は、これらの情報に基づいてモード判定を行い、選択したモードを示すモード情報と、そのモードの予測ベクトルを可逆符号化部１０６に供給する。また、選択されたモードの予測画像は、予測画像選択部１１６に供給される。
【０３２１】
［ベクトル予測部］
図３９は、ベクトル予測部４３３の主な構成例を示すブロック図である。
【０３２２】
図３９に示されるように、ベクトル予測部４３３は、動き／視差ベクトル探索部４５１、予測画像生成部４５２、ベクトルコスト算出部４５３、ベクトル判定部４５４、ベクトル情報蓄積バッファ４５５、周辺ブロックからの予測ベクトル生成部４５６、異なるピクチャからの予測ベクトル生成部４５７、および選択部４５８を有する。各処理部の間では、図３９に示される情報が授受される。
【０３２３】
異なるピクチャからの予測ベクトル生成部４５７は、異なるピクチャを参照する予測ベクトルを生成する。つまり、異なるピクチャからの予測ベクトル生成部４５７は、時間方向とビュー方向の各方向に異なるピクチャを参照し、予測ベクトルを生成する。ビュー方向に異なるピクチャを参照する予測ベクトルを生成する場合、異なるピクチャからの予測ベクトル生成部４５７は、Base Viewエンコーダ４２１からベースビューの動き情報を取得し、その動き情報を用いて、予測ベクトルを生成する。
【０３２４】
異なるピクチャからの予測ベクトル生成部４５７が生成した予測ベクトルは、選択部４５８を介してベクトルコスト算出部４５３に供給されて、モード判定に用いられるコスト関数値が算出される。
【０３２５】
［異なるピクチャからの予測ベクトル生成部］
図４０は、異なるピクチャからの予測ベクトル生成部４５７の主な構成例を示すブロック図である。
【０３２６】
図４０に示されるように、異なるピクチャからの予測ベクトル生成部４５７は、視差ベクトル判定部４７１、ビュー間参照ベクトル生成部４７２、およびビュー内参照ベクトル生成部４７３を有する。
【０３２７】
視差ベクトル判定部４７１は、周辺ブロックの視差ベクトルから、参照画像のシフト量を算出する。このシフト量の算出方法は、任意である。例えば、周辺ブロックの視差ベクトルの中からいずれか１つを選択し、それをシフト量としてもよい。また、例えば、周辺ブロックの視差ベクトルの平均値や中央値をシフト量としてもよい。
【０３２８】
視差ベクトル判定部４７１は、このように求めたシフト量を視差ベクトルとして、ビュー間参照ベクトル生成部４７２に供給する。
【０３２９】
ビュー間参照ベクトル生成部４７２は、ビュー方向に異なるピクチャを参照する予測ベクトルを生成する。
【０３３０】
ビュー間参照ベクトル生成部４７２は、視差ベクトル判定部４７１により選ばれた視差ベクトル（シフト量）、Base Viewエンコーダ４２１から供給されるベースビューの動きベクトル（ノンベースビューの場合は視差ベクトルも含む）、並びに、ベクトル情報蓄積バッファ４５５から読み出した、参照画像インデックス、ビュー間の同一時刻の動き／視差ベクトル等の情報を用いて、視差ベクトルを考慮した予測ベクトルを生成する。
【０３３１】
つまり、ビュー間参照ベクトル生成部４７２は、視差ベクトル判定部４７１により算出されたシフト量を用いて参照するビューの画像の位置合わせ（シフト）を行う。そして、ビュー間参照ベクトル生成部４７２は、その位置合わせを行ったブロックから予測ベクトルを生成する。
【０３３２】
ビュー間参照ベクトル生成部４７２は、生成した予測ベクトルを、選択部４５８（図４０では図示せず）を介して、ベクトルコスト算出部４５３に供給する。
【０３３３】
なお、ビュー内参照ベクトル生成部４７３は、時間方向に異なるピクチャを参照する予測ベクトルを生成する。
【０３３４】
以上のようにすることにより、ビュー間参照ベクトル生成部４７２は、予測精度の高い、適切な予測ベクトルを作ることができる。これにより、画像符号化装置４００は、符号化効率を向上させることができる。
【０３３５】
［動き予測・補償処理の流れ］
図４１のフローチャートを参照して、動き予測・補償処理の流れの例を説明する。
【０３３６】
動き予測・補償処理が開始されると、インターモード生成部４３１は、ステップＳ４０１において、インター予測モード、スキップモード、マージモード等の中からいずれかを選択し、そのモードを指定する情報であるインターモードを生成する。
【０３３７】
ステップＳ４０２において、インターモード生成部４３１は、生成したインターモードがインター予測モードであるか否かを判定する。
【０３３８】
インター予測モードである場合、ステップＳ４０３において、インターモード生成部４３１は、参照画像を決定し、ステップＳ４０４において、ベクトル予測部４３３は、ベクトル予測処理を実行する。
【０３３９】
また、インター予測モードでない場合、ステップＳ４０４において、ベクトル予測部４３４は、ベクトル予測処理を行う。
【０３４０】
ステップＳ４０５において、モード判定部４３５は、ステップＳ４０４において生成された予測ベクトル等に基づいて、モードを判定する。このモードは、ステップＳ４０１の処理に利用される。
【０３４１】
ステップＳ４０５において、可逆符号化部１０６は、ステップＳ４０５において判定されたモードの情報を符号化する。
【０３４２】
［ベクトル予測処理の流れ］
図４２のフローチャートを参照して、図４１のステップＳ４０４においてベクトル予測部４３３により実行されるベクトル予測処理の流れの例を説明する。
【０３４３】
ベクトル予測処理が開始されると、動き／視差ベクトル探索部４５１は、ステップＳ４２１において、ベクトルの探索を行う。
【０３４４】
ステップＳ４２２において、予測画像生成部４５２は、予測画像を生成する。
【０３４５】
ステップＳ４２３において、ベクトルコスト算出部４５３は、残差画像を生成する。
【０３４６】
ステップＳ４２４において、周辺ブロックからの予測ベクトル生成部４５６および異なるピクチャからの予測ベクトル生成部４５７は、符号化済みベクトルから予測ベクトルを生成する。
【０３４７】
ステップＳ４２５において、ベクトルコスト算出部４５３は、ベクトルの残差を計算する。
【０３４８】
ステップＳ４２６において、ベクトル判定部４５４は、最小コストの予測ベクトルを判定する。この処理結果は、ステップＳ４２４の処理に反映される。
【０３４９】
ステップＳ４２７において、ベクトル情報蓄積バッファ４５５は、ベクトル情報を蓄積し、処理を図４１に戻す。
【０３５０】
［予測ベクトル生成処理の流れ］
次に、図４３のフローチャートを参照して、図４２のステップＳ４２４において実行される予測ベクトル生成処理の流れの例を説明する。
【０３５１】
予測ベクトル生成処理が開始されると、選択部４５８は、ステップＳ４４１において、どのブロックを参照するかを判定する。
【０３５２】
当該ピクチャの周辺ブロックを参照すると判定された場合、周辺ブロックからの予測ベクトル生成部４５６は、ステップＳ４４２において、周辺ブロックの符号化済みベクトルを予測ベクトルにし、処理を図４２に戻す。
【０３５３】
また、ステップＳ４４１において、異なるピクチャのブロックを参照すると判定された場合、選択部４５８は、処理をステップＳ４４３に進め、どのビューのピクチャを参照するかを判定する。
【０３５４】
異なるビューのピクチャを参照すると判定された場合、異なるピクチャからの予測ベクトル生成部４５７は、ステップＳ４４４において、ビュー方向に拡張された符号化済みコロケーテッドブロック（Co-located Block）からビュー方向の予測ベクトルを生成し、処理を図４２に戻す。
【０３５５】
また、ステップＳ４４３において、同じビューのピクチャを参照すると判定された場合、異なるピクチャからの予測ベクトル生成部４５７は、ステップＳ４４５において、符号化済みコロケーテッドブロック（Co-located Block）から時間方向の予測ベクトルを生成し、処理を図４２に戻す。
【０３５６】
［異なるピクチャからの予測ベクトル生成処理の流れ］
次に、図４４のフローチャートを参照して、図４３のステップＳ４４４において実行される異なるピクチャからの予測ベクトル生成処理の流れの例を説明する。
【０３５７】
異なるピクチャからの予測ベクトル生成処理が開始されると、視差ベクトル判定部４７１は、ステップＳ４６１において、周辺ブロックの視差ベクトルからシフト量を決定する。
【０３５８】
ステップＳ４６２において、ビュー間参照ベクトル生成部４７２は、シフトされた位置のコロケーテッドブロックを選択する。
【０３５９】
ステップＳ４６３において、ビュー間参照ベクトル生成部４７２は、コロケーテッドブロックから予測ベクトルを生成し、処理を図４３に戻す。
【０３６０】
［シフト量決定処理の流れ］
次に、図４５のフローチャートを参照して、図４４のステップＳ４６１において実行されるシフト量決定処理の流れの例を説明する。
【０３６１】
ステップＳ４８１において、視差ベクトル判定部４７１は、周辺ブロックの視差ベクトルで、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在するか否かを判定する。
【０３６２】
周辺ブロックは、処理対象であるカレントブロック（カレントブロック）の周辺（「隣接」を含む）に位置するブロックである。例えば、図４６に示されるように、カレントブロック（Curr）の左に隣接するブロック（Left）、カレントブロックの上に隣接するブロック（Above）、および、カレントブロックの右上に隣接するブロック（Above Right）が周辺ブロックとされる。もちろん、これら以外のブロックを周辺ブロックに含めても良いし、これらのブロックの一部または全部を周辺ブロックとしないようにしてもよい。
【０３６３】
周辺ブロックの位置は、全ブロックにおいて共通としてもよいが、ブロックによって異なるようにしてもよい。例えば、画面端やスライス境界に隣接するブロックをカレントブロックとする場合、周辺ブロックの一部を使用不可としてもよい。
【０３６４】
ステップＳ４８１において、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在しないと判定した場合、視差ベクトル判定部４７１は、処理をステップＳ４８２に進め、対象のＸ方向の視差ベクトルをシフト量とし、処理を図４４に戻す。
【０３６５】
また、ステップＳ４８１において、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在すると判定した場合、視差ベクトル判定部４７１は、処理をステップＳ４８３に進め、対象のＸ方向の視差ベクトルの平均値をシフト量とし、処理を図４４に戻す。
【０３６６】
以上のように各処理を実行することにより、動き予測・補償部４１５は、予測精度の高い、適切な予測ベクトルを作ることができる。これにより、画像符号化装置４００は、符号化効率を向上させることができる。
【０３６７】
＜４．第４の実施の形態＞
［画像復号装置］
図４７は、本技術を適用した画像復号装置の他の構成例を示すブロック図である。
【０３６８】
図４７に示される画像復号装置５００は、基本的に上述した画像復号装置３００と同様の装置である。ただし、画像復号装置５００は、画像符号化装置４００の場合と同様に、ビュー間で位置合わせしたブロックから予測ベクトルを生成する。
【０３６９】
図４７に示されるように、画像復号装置５００は、動き補償部５１２およびBase Viewデコーダ５２１を有する。
【０３７０】
動き補償部５１２は、デコードピクチャバッファ３０９から取得したデコード画像と、Base Viewデコーダ５２１から取得したベースビューの動き情報を用いて、ビュー方向のブロックを参照する予測ベクトルを生成する。
【０３７１】
Base Viewデコーダ５２１は、ベースビューの符号化を行う。Base Viewデコーダ５２１は、ベースビューのデコード画像をデコードピクチャバッファ３０９に供給し、記憶させる。デコードピクチャバッファ３０９には、さらに、ループフィルタ３０６から供給されるノンベースビューのデコード画像も記憶される。
【０３７２】
Base Viewデコーダ５２１は、ベースビューの動き情報を動き補償部５１２に供給する。
【０３７３】
［動き補償部］
図４８は、図４７の動き補償部５１２の主な構成例を示すブロック図である。
【０３７４】
図４８に示されるように、動き補償部５１２は、モード判定部５３１、参照インデックス決定部５３２、ベクトル復号部５３３、およびベクトル復号部５３４を有する。各処理部の間では、図４８に示される情報が授受される。
【０３７５】
ベクトル復号部５３３は、インター予測モードの場合、画像符号化装置４００から伝送された残差ベクトルを復号し、予測ベクトルを生成する。また、ベクトル復号部５３３は、その予測ベクトルを用いて予測画像を生成する。その予測画像は、予測画像選択部３１３に供給される。
【０３７６】
ベクトル復号部５３４は、スキップモードやマージモードの場合、画像符号化装置４００から伝送された残差ベクトルを復号し、予測ベクトルを生成する。また、ベクトル復号部５３４は、その予測ベクトルを用いて予測画像を生成する。その予測画像は、予測画像選択部３１３に供給される。
【０３７７】
［ベクトル復号部］
図４９は、ベクトル復号部５３３の主な構成例を示すブロック図である。
【０３７８】
図４９に示されるように、ベクトル復号部５３３は、選択部５５１、周辺ブロックからの予測ベクトル生成部５５２、異なるピクチャからの予測ベクトル生成部５５３、選択部５５４、演算部５５５、予測画像生成部５５６、およびベクトル情報蓄積バッファ５５７を有する。各処理部の間では、図４９に示される情報が授受される。
【０３７９】
選択部５５１は、可逆復号部３０２から供給されるベクトルインデックスを、インターモードに応じて、周辺ブロックからの予測ベクトル生成部５５２（スキップモード若しくはマージモード等の場合）、若しくは、異なるピクチャからの予測ベクトル生成部５５３（インター予測モードの場合）に供給する。
【０３８０】
ベクトルインデックスが供給された、周辺ブロックからの予測ベクトル生成部５５２は、ベクトル情報蓄積バッファ５５７から取得したベクトル情報を用いて、カレントピクチャ内の周辺ブロックからの予測ベクトルを生成する。
【０３８１】
ベクトルインデックスが供給された、異なるピクチャからの予測ベクトル生成部５５３は、ベクトル情報蓄積バッファ５５７から取得したベクトル情報を用いて、カレントビュー内の異なるピクチャからの予測ベクトルを生成する。また、異なるピクチャからの予測ベクトル生成部５５３は、ベクトル情報蓄積バッファ５５７から取得したベクトル情報や、Base Viewデコーダ５２１から供給されるベースビューの動き情報を用いて、異なるビューの異なるピクチャからの予測ベクトルを生成する。
【０３８２】
この異なるピクチャからの予測ベクトル生成部５５３は、異なるピクチャからの予測ベクトル生成部４５７の視差ベクトル判定部４７１と同様の処理部であり、同様の方法で予測ベクトルを生成する。
【０３８３】
選択部５５４は、周辺ブロックからの予測ベクトル生成部５５２が生成した予測ベクトル、若しくは、異なるピクチャからの予測ベクトル生成部５５３が生成した予測ベクトルを演算部５５５に供給する。
【０３８４】
演算部５５５は、可逆復号部３０２から供給される動き／視差ベクトルの差分値（残差ベクトル）と、予測ベクトルを加算し、カレント領域の動き／視差ベクトルを生成する。演算部５５５は、その動き／視差ベクトルを予測画像生成部５５６に供給する。また、演算部５５５は、その動き／視差ベクトルをベクトル情報蓄積バッファ５５７に供給し、記憶させる。
【０３８５】
予測画像生成部５５６は、演算部５５５から供給されたカレント領域の動き／視差ベクトル、可逆復号部３０２から供給される参照画像インデックス、および、デコードピクチャバッファ３０９から供給される復号画像画素値を用いて予測画像を生成する。予測画像生成部５５６は、生成した予測画像画素値を予測画像選択部３１３に供給する。
【０３８６】
［異なるピクチャからの予測ベクトル生成部］
図５０は、異なるピクチャからの予測ベクトル生成部５５３の主な構成例を示すブロック図である。
【０３８７】
図５０に示されるように、異なるピクチャからの予測ベクトル生成部５５３は、視差ベクトル判定部５７１、ビュー間参照ベクトル生成部５７２、およびビュー内参照ベクトル生成部５７３を有する。
【０３８８】
この視差ベクトル判定部５７１、ビュー間参照ベクトル生成部５７２、およびビュー内参照ベクトル生成部５７３は、それぞれ、異なるピクチャからの予測ベクトル生成部４５７の視差ベクトル判定部４７１、ビュー間参照ベクトル生成部４７２、およびビュー内参照ベクトル生成部４７３と同様の処理部であり、同様の処理を行う。
【０３８９】
つまり、視差ベクトル判定部５７１は、視差ベクトル判定部４７１と同様の方法で、参照先のビューの画像のシフト量を算出し、その画像をシフトする。
【０３９０】
したがって、異なるピクチャからの予測ベクトル生成部５５３は、残差ベクトルを正しく復号し、異なるピクチャからの予測ベクトル生成部４５７が生成する予測ベクトルと同様の、予測精度の高い適切な予測ベクトルを生成することができる。つまり、ベクトル復号部５３３は、ベクトル予測部４３３が生成する予測画像と同様の予測画像を生成することができる。したがって、画像復号装置５００は、画像符号化装置４００が生成した符号化データを正しく復号することができ、符号化効率の向上を実現することができる。
【０３９１】
なお、視差ベクトル判定部５７１によるシフト量の算出方法は、視差ベクトル判定部４７１と同じである限り、任意である。例えば、周辺ブロックの視差ベクトルの中からいずれか１つを選択し、それをシフト量としてもよい。また、例えば、周辺ブロックの視差ベクトルの平均値や中央値をシフト量としてもよい。
【０３９２】
［動き補償処理の流れ］
図５１のフローチャートを参照して、動き補償処理の流れの例を説明する。
【０３９３】
動き予測・補償処理が開始されると、モード判定部５３１は、ステップＳ５０１において、インターモードを復号し、ステップＳ５０２において、インター予測モードであるか否かを判定する。
【０３９４】
インター予測モードである場合、ステップＳ５０３において、ベクトル復号部５３３は、参照画像を決定し、ステップＳ５０４において、ベクトル復号処理を行い、残差ベクトルを復号し、予測画像を生成する。
【０３９５】
また、インター予測モードでない場合、ステップＳ５０４において、ベクトル復号部５３４は、ベクトル復号処理を行い、残差ベクトルを復号し、予測画像を生成する。
【０３９６】
［ベクトル復号処理の流れ］
図５２のフローチャートを参照して、図５１のステップＳ５０４においてベクトル復号部５３３により実行されるベクトル復号処理の流れの例を説明する。
【０３９７】
ベクトル復号処理が開始されると、可逆復号部３０２は、ステップＳ５２１において、残差ベクトル（差分ベクトル）を復号する。
【０３９８】
ステップＳ５２２において、可逆復号部３０２は、参照画像インデックスを復号する。
【０３９９】
ステップＳ５２３において、可逆復号部３０２は、ベクトルインデックスを復号する。
【０４００】
ステップＳ５２４において、周辺ブロックからの予測ベクトル生成部５５２および異なるピクチャからの予測ベクトル生成部５５３は、符号化済みベクトルから予測ベクトルを生成する。演算部５５５は、この予測ベクトルを残差ベクトルに加算して、カレント領域の動き／視差ベクトルを生成する。
【０４０１】
ステップＳ５２５において、予測画像生成部５５６は、ステップＳ５２４において生成された動き／視差ベクトルを用いて予測画像を生成する。
【０４０２】
ステップＳ５２６において、ベクトル情報蓄積バッファ４５５は、ベクトル情報を蓄積し、処理を図５１に戻す。
【０４０３】
［予測ベクトル生成処理の流れ］
次に、図５３のフローチャートを参照して、図５２のステップＳ５２４において実行される予測ベクトル生成処理の流れの例を説明する。
【０４０４】
予測ベクトル生成処理が開始されると、選択部５５４は、ステップＳ５４１において、どのブロックを参照するかを判定する。
【０４０５】
カレントピクチャの周辺ブロックを参照すると判定された場合、周辺ブロックからの予測ベクトル生成部５５２は、ステップＳ５４２において、周辺ブロックの符号化済みベクトルを予測ベクトルにし、処理を図５２に戻す。
【０４０６】
また、ステップＳ５４１において、異なるピクチャのブロックを参照すると判定された場合、選択部５５４は、処理をステップＳ５４３に進め、どのビューのピクチャを参照するかを判定する。
【０４０７】
異なるビューのピクチャを参照すると判定された場合、異なるピクチャからの予測ベクトル生成部５５３は、ステップＳ５４４において、ビュー方向に拡張された符号化済みコロケーテッドブロック（Co-located Block）からビュー方向の予測ベクトルを生成し、処理を図５２に戻す。
【０４０８】
また、ステップＳ５４３において、同じビューのピクチャを参照すると判定された場合、異なるピクチャからの予測ベクトル生成部５５３は、ステップＳ５４５において、符号化済みコロケーテッドブロック（Co-located Block）から時間方向の予測ベクトルを生成し、処理を図５２に戻す。
【０４０９】
［異なるピクチャからの予測ベクトル生成処理の流れ］
次に、図５４のフローチャートを参照して、図５３のステップＳ５４４において実行される異なるピクチャからの予測ベクトル生成処理の流れの例を説明する。
【０４１０】
異なるピクチャからの予測ベクトル生成処理が開始されると、視差ベクトル判定部５７１は、ステップＳ５６１において、周辺ブロックの視差ベクトルからシフト量を決定する。
【０４１１】
ステップＳ５６２において、ビュー間参照ベクトル生成部５７２は、シフトされた位置のコロケーテッドブロックを選択する。
【０４１２】
ステップＳ５６３において、ビュー間参照ベクトル生成部５７２は、コロケーテッドブロックから予測ベクトルを生成し、処理を図５３に戻す。
【０４１３】
つまり、図４４のフローチャートの場合と同様の流れで行われる。
【０４１４】
［シフト量決定処理の流れ］
次に、図５５のフローチャートを参照して、図５４のステップＳ５６１において実行されるシフト量決定処理の流れの例を説明する。
【０４１５】
ステップＳ５８１において、視差ベクトル判定部５７１は、周辺ブロックの視差ベクトルで、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在するか否かを判定する。
【０４１６】
ステップＳ５８１において、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在しないと判定した場合、視差ベクトル判定部５７１は、処理をステップＳ５８２に進め、対象のＸ方向の視差ベクトルをシフト量とし、処理を図５４に戻す。
【０４１７】
また、ステップＳ５８１において、Ｙ方向ベクトルの値が非ゼロのブロックが複数存在すると判定した場合、視差ベクトル判定部５７１は、処理をステップＳ５８３に進め、対象のＸ方向の視差ベクトルの平均値をシフト量とし、処理を図５４に戻す。
【０４１８】
つまり、図４５のフローチャートの場合と同様の流れで行われる。周辺ブロックについても同様である。
【０４１９】
以上のように各処理を実行することにより、動き補償部５１２は、予測精度の高い、適切な予測ベクトルを作ることができる。これにより、画像復号装置５００は、符号化効率の向上を実現させることができる。
【０４２０】
なお、上述したように、シフト量を計算するための周辺ブロックや、シフト量演算方法等の情報を、画像符号化装置４００から画像復号装置５００に伝送するようにしてもよい。
【０４２１】
＜５．第５の実施の形態＞
［予測ベクトル］
なお、第３および第４の実施の形態で説明したように、予測ベクトル生成のために、ビュー方向のブロックを選択するときに、シフトした位置のブロックを選択することができる。
【０４２２】
この予測ベクトルの候補を、カレント領域と同じビューの異なる時刻のピクチャに属する同位置のブロックであるコロケーテッドブロックのベクトル（コロケーテッドブロック）、若しくは、グローバル視差ベクトルを用いて生成するようにしてもよい。
【０４２３】
例えば、図５６に示されるように、３Ｄ画像の左右画像のいずれか一方（例えば左眼用画像）をベースビュー（base view）とし、他方（例えば右眼用画像）をディペンデントビュー（dependent view）とする。
【０４２４】
そのディペンデントビューのカレントピクチャ６０１のカレント領域６１１のベクトル（符号化ベクトル（Coding vector））６２１を予測する際に、例えば、カレント領域と同じビューの異なる時刻のピクチャであるコロケーテッドピクチャ６０２の、カレント領域と同じ位置にあるコロケーテッドブロック６１２の動きベクトル（コロケーテッドベクトル）６２２、若しくは、グローバル視差ベクトル（図示せず）を用いて、予測ベクトル求めるようにしてもよい。
【０４２５】
例えば、カレントピクチャ６０１と同じ時刻のベースビューのピクチャ６０３のカレント領域１１と同じ位置から、コロケーテッドブロック６２２若しくはグローバル視差ベクトル分（ベクトル６３１）シフトした位置のブロック６１３のベクトル６２３を、符号化ベクトル（MV）６２１の予測ベクトル（PMV）としてもよい。また、コロケーテッドブロック６２２若しくはグローバル視差ベクトルを、符号化ベクトル（MV）６２１の予測ベクトルとしてもよい。
【０４２６】
この手順を符号化側の装置と復号側の装置とで共通化することにより、符号化側と復号側で、同様の予測を行うことができる。
【０４２７】
なお、コロケーテッドブロックおよびグローバル視差ベクトルのいずれを用いるかを示す情報や、コロケーテッドブロック若しくはグローバル視差ベクトルに関する情報等を明示的に指定し、その情報を、符号化側から復号側に伝送するようにしてもよい。また、シフト量の演算方法に関する情報も符号化側から復号側に伝送するようにしてもよい。
【０４２８】
以上のようにすることにより、画像符号化装置においても、画像復号装置においても、ビュー間で同じように位置合わせしたブロックから予測ベクトルを生成することができる。したがって、予測画像の予測精度を向上させることができ、符号化効率を向上させることができる。
【０４２９】
［グローバル視差ベクトル］
次に、グローバル視差ベクトルについて説明する。グローバル視差ベクトルは、グローバルな（例えば、ピクチャ、スライス、LCU、若しくはCU等の、所定の単位毎の）代表的な視差ベクトルである。例えば、ピクチャ毎に生成されるグローバル視差ベクトルは、ビュー間の視差量を示す。グローバル視差ベクトルの生成方法は任意である。
【０４３０】
なお、グローバル視差ベクトルの詳細な例は、Junghak Nam, Hyomin Choi, Sunmi Yoo, Woong Lim, Donggyu Sim, "3D-HEVC-CE3 result on KWU’s advanced motion and disparity prediction method based on global disparity", INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO/IEC JTC1/SC29/WG11 CODING OF MOVING PICTURES AND AUDIO, ISO/IEC JTC1/SC29/WG11 MPEG2011/M23620, February 2012, San Jose, CAに記載されている。
【０４３１】
図５７は、視差と奥行きについて説明する図である。
【０４３２】
図５７に示すように、被写体Ｍのカラー画像が、位置Ｃ１に配置されたカメラｃ１と位置Ｃ２に配置されたカメラｃ２により撮影される場合、被写体Ｍの、カメラｃ１（カメラｃ２）からの奥行方向の距離である奥行きＺは、以下の式（１）で定義される。
【０４３３】
Z = (L/d)×f  ・・・（１）
【０４３４】
なお、Ｌは、位置Ｃ１と位置Ｃ２の水平方向の距離（以下、カメラ間距離という）である。また、ｄは、カメラｃ１で撮影されたカラー画像上の被写体Ｍの位置の、カラー画像の中心からの水平方向の距離ｕ１から、カメラｃ２で撮影されたカラー画像上の被写体Ｍの位置の、カラー画像の中心からの水平方向の距離ｕ２を減算した値、即ち視差（disparity）である。さらに、fは、カメラｃ１の焦点距離であり、式（１）では、カメラｃ１とカメラｃ２の焦点距離は同一であるものとしている。
【０４３５】
つまり、視差ｄは、以下の式（２）のように定義される。
【０４３６】
【数１】
0005954449.tif 000002
・・・（２）
【０４３７】
式（１）や式（２）に示されるように、視差ｄと奥行きＺは、一意に変換可能である。従って、本明細書では、カメラｃ１とカメラｃ２により撮影された２視点のカラー画像の視差ｄを表す画像と奥行きＺを表す画像とを総称して、デプス画像（視差画像）とする。
【０４３８】
なお、デプス画像（視差画像）は、視差ｄまたは奥行きＺを表す画像であればよく、デプス画像（視差画像）の画素値としては、視差ｄまたは奥行きＺそのものではなく、視差ｄを正規化した値、奥行きＺの逆数１／Ｚを正規化した値等を採用することができる。
【０４３９】
奥行きＺは、以下の式（３）により求めることができる。
【０４４０】
【数２】
0005954449.tif 000003
・・・（３）
【０４４１】
なお、式（３）において、Ｚfarは、奥行きＺの最大値であり、Ｚnearは、奥行きＺの最小値である。最大値Ｚfarと最小値Ｚnearは、１画面単位で設定されてもよいし、複数画面単位で設定されてもよい。
【０４４２】
このように、本明細書では、視差dと奥行きZとは一意に変換可能であることを考慮して、視差ｄを正規化した値Iを画素値とする画像と、奥行きＺの逆数１／Ｚを正規化した値yを画素値とする画像とを総称して、デプス画像（視差画像）とする。ここでは、デプス画像（視差画像）のカラーフォーマットは、YUV420又はYUV400であるものとするが、他のカラーフォーマットにすることも可能である。
【０４４３】
なお、デプス画像（視差画像）の画素値としてではなく、値I又は値yの情報自体に着目する場合には、値I又は値yを、デプス情報（視差情報）とする。更に、値I又は値yをマッピングしたものをデプスマップ（視差マップ）とする。
【０４４４】
［予測ベクトルの生成］
予測ベクトルは、例えば図５８に示される表のように、符号化ベクトルおよびコロケーテッドベクトルの両方の特性に応じた方法で生成される。
【０４４５】
例えば、図５８の表の下から６段目に示されるように、符号化ベクトルおよびコロケーテッドベクトルの両方が動きベクトル（Motion vector）の場合、コロケーテッドベクトルが予測ベクトル候補とされる。
【０４４６】
また、例えば、図５８の表の下から２段目に示されるように、符号化ベクトルおよびコロケーテッドベクトルの両方が視差ベクトル（Inter-view vector）の場合、コロケーテッドベクトルが予測ベクトル候補とされる。
【０４４７】
これらに対して、例えば、図５８の表の下から５段目に示されるように、符号化ベクトルが動きベクトル（Motion vector）であり、かつ、コロケーテッドベクトルが視差ベクトル（Inter-view vector）である場合、コロケーテッドベクトル分だけシフトしたブロックのベースビューの動きベクトルが予測ベクトル候補とされる。
【０４４８】
また、例えば、図５８の表の下から４段目に示されるように、符号化ベクトルが動きベクトル（Motion vector）であり、かつ、コロケーテッドブロックがイントラモードである場合、グローバル視差ベクトル分だけシフトしたブロックのベースビューの動きベクトルが予測ベクトル候補とされる。
【０４４９】
さらに、例えば、図５８の表の下から３段目に示されるように、符号化ベクトルが視差ベクトル（Inter-view vector）であり、かつ、コロケーテッドベクトルが動きベクトル（Motion vector）である場合、グローバル視差ベクトルが予測ベクトル候補とされる。
【０４５０】
また、例えば、図５８の表の下から１段目に示されるように、符号化ベクトルが視差ベクトル（Inter-view vector）であり、かつ、コロケーテッドブロックがイントラモードである場合、グローバル視差ベクトルが予測ベクトル候補とされる。
【０４５１】
このように予測ベクトルの候補の生成方法を増やすことにより、予測ベクトルの予測精度を向上させ、符号化効率を向上させることができる。
【０４５２】
［画像符号化装置］
この場合の画像符号化装置の構成例は、図３５乃至図３８に示される画像符号化装置４００の場合と同様であるので、その説明を省略する。
【０４５３】
［処理の流れ］
また、この場合の、動き予測・補償処理は、図３９のフローチャートを参照して説明した場合と同様に行われる。また、この場合の、ベクトル予測処理は、図４０のフローチャートを参照して説明した場合と同様に行われる。したがって、これらの処理の説明は省略する。
【０４５４】
図５９のフローチャートを参照して、この場合の予測ベクトル生成処理の流れの例を説明する。
【０４５５】
予測ベクトル生成処理が開始されると、選択部４５８は、ステップＳ６０１において、どのブロックを参照するかを判定する。
【０４５６】
周辺ブロックを参照すると判定された場合、処理はステップＳ６０２に進む。ステップＳ６０２において、周辺ブロックからの予測ベクトル生成部４５６は、周辺ブロックの符号化済みベクトルを予測ベクトルにする。ステップＳ６０２の処理が終了すると、予測ベクトル生成処理が終了され、処理は、図４０に戻る。
【０４５７】
また、ステップＳ６０１において、参照先として異なるピクチャのブロックが選択された場合、処理は、ステップＳ６０３に進む。ステップＳ６０３において、異なるピクチャからの予測ベクトル生成部４５７は、異なる時刻・ビューのブロックの符号化済みベクトルを予測ベクトルにする。ステップＳ６０３の処理が終了すると、予測ベクトル生成処理が終了され、処理は、図４０に戻る。
【０４５８】
次に、図６０および図６１のフローチャートを参照して、図５９のステップＳ６０３において実行される、異なるピクチャからの予測ベクトル生成処理の流れの例を説明する。
【０４５９】
異なるピクチャからの予測ベクトル生成処理が開始されると、視差ベクトル判定部４７１は、ステップＳ６２１において、符号化ベクトルが動きベクトルであるか否かを判定する。動きベクトルであると判定された場合、処理は、ステップＳ６２２に進む。
【０４６０】
ステップＳ６２２において、視差ベクトル判定部４７１は、コロケーテッドブロックのモードが何かを判定する。コロケーテッドブロックのモードが動きベクトルであると判定された場合、処理は、ステップＳ６２３に進む。
【０４６１】
ステップＳ６２３において、ビュー内参照ベクトル生成部４７３は、コロケーテッドベクトルを予測ベクトルにセットする。ステップＳ６２３の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４６２】
また、ステップＳ６２２において、コロケーテッドブロックのモードがイントラ予測であると判定された場合、処理は、ステップＳ６２４に進む。
【０４６３】
ステップＳ６２４において、ビュー間参照ベクトル生成部４７２は、グローバル視差ベクトルを求め、そのグローバル視差ベクトル分だけシフトしたベースビューのブロックのベクトルを予測ベクトルにセットする。ステップＳ６２４の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４６４】
また、ステップＳ６２２において、コロケーテッドブロックのモードが視差ベクトルであると判定された場合、処理は、ステップＳ６２５に進む。
【０４６５】
ステップＳ６２５において、ビュー間参照ベクトル生成部４７２は、コロケーテッドベクトル分だけシフトしたベースビューのブロックのベクトルを予測ベクトルにセットする。ステップＳ６２５の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４６６】
また、ステップＳ６２１において、符号化ベクトルが視差ベクトルであると判定した場合、処理は、図６１に進む。
【０４６７】
図６１のステップＳ６３１において、視差ベクトル判定部４７１は、コロケーテッドブロックのモードが何かを判定する。コロケーテッドブロックのモードが視差ベクトルであると判定された場合、処理は、ステップＳ６３２に進む。
【０４６８】
ステップＳ６３２において、ビュー内参照ベクトル生成部４７３は、コロケーテッドベクトルを予測ベクトルにセットする。ステップＳ６３２の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４６９】
また、ステップＳ６３１において、コロケーテッドブロックのモードが動きベクトルであると判定された場合、処理は、ステップＳ６３４に進む。ステップＳ６３４において、ビュー間参照ベクトル生成部４７２は、グローバル視差ベクトルを予測ベクトルにセットする。ステップＳ６３４の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４７０】
さらに、ステップＳ６３１において、コロケーテッドブロックのモードがイントラ予測であると判定された場合、処理は、ステップＳ６３５に進む。ステップＳ６３５において、ビュー間参照ベクトル生成部４７２は、グローバル視差ベクトルを予測ベクトルにセットする。ステップＳ６３５の処理が終了すると、異なるピクチャからの予測ベクトル生成処理が終了し、処理は、図５９に戻る。
【０４７１】
以上のように各処理を実行することにより、この場合の画像符号化装置は、コロケーテッドブロックやグローバル視差ベクトルを用いて予測ベクトルを生成することができる。これにより、画像符号化装置は、予測ベクトルの予測精度を向上させることができ、符号化効率を向上させることができる。
【０４７２】
［画像復号装置］
次に、この場合の画像符号化装置に対応する画像復号装置について説明する。この場合の画像復号装置の構成例は、画像符号化装置の場合と同様に、図４５乃至図４８に示される画像復号装置５００の場合と同様であるので、その説明を省略する。
【０４７３】
［処理の流れ］
次に、この場合の、画像復号装置により実行される各種処理の流れについて説明する。この場合も、画像復号装置においては、画像符号化装置と基本的に同様の処理が行われる。つまり、動き補償処理は、図４９のフローチャートを参照して説明した場合と同様に実行される。また、ベクトル復号処理は、図５０のフローチャートを参照して説明した場合と同様に実行される。
【０４７４】
なお、予測ベクトル生成処理は、図５９のフローチャートを参照して説明した場合、つまり、画像符号化装置が実行する場合と同様に実行される。
【０４７５】
ただし、この場合、ステップＳ６０１の処理は選択部５５１が行う。また、ステップＳ６０２においては、周辺ブロックからの予測ベクトル生成部５５２が、周辺ブロックの復号済みベクトルを予測ベクトルにする。さらに、ステップＳ６０３においては、異なるピクチャからの予測ベクトル生成部５５３が、異なる時刻・ビューのブロックの復号済みベクトルを予測ベクトルにする。
【０４７６】
また、その異なるピクチャからの予測ベクトル生成処理は、図６０および図６１のフローチャートを参照して説明した場合、すなわち、画像符号化装置が実行する場合と同様に実行される。
【０４７７】
ただし、この場合、ステップＳ６２１、ステップＳ６２２、および、ステップＳ６３１の各処理は、視差ベクトル判定部５７１が行い、ステップＳ６２３およびステップＳ６３２の各処理は、ビュー内参照ベクトル生成部５７３が行い、ステップＳ６２４、ステップＳ６２５、ステップＳ６３４、およびステップＳ６３５の各処理は、ビュー間参照ベクトル生成部５７２により実行される。
【０４７８】
このように各処理を実行することにより、この場合の画像復号装置は、画像符号化装置と同様に、コロケーテッドブロックやグローバル視差ベクトルを用いて予測ベクトルを生成することができる。これにより、画像復号装置は、予測ベクトルの予測精度を向上させることができ、符号化効率を向上させることができる。
【０４７９】
＜６．第６の実施の形態＞
［参照画像のタイプ］
例えば、HEVCの場合、参照画像には、短時間参照ピクチャと長時間参照ピクチャの２つのタイプがある。短時間参照ピクチャは、符号化ピクチャと時間的に近いピクチャであるため、予測ベクトルに対して、時間的な距離に基づくスケーリング処理が行われる。これに対して、長時間参照ピクチャは、符号化ピクチャと時間的に遠いピクチャであるため、予測ベクトルに対するスケーリングは意味をなさないため、行われない。
【０４８０】
画像の動き等に応じてこれらの参照ピクチャを使い分けることで、符号量をより低減させることができる。
【０４８１】
符号化ベクトルと予測ベクトルの参照ピクチャのタイプ（短時間参照ピクチャまたは長時間参照ピクチャ）が異なっていても、その予測ベクトルは使用可(Available)となる。
【０４８２】
符号化ベクトルと予測ベクトルの参照ピクチャのタイプが異なる場合、それらのベクトルの相関は低いことが予想される。したがって、ベクトルの候補リストに入れてしまうと符号化効率の低下が起こる恐れがあった。例えば、相関がより高いベクトルが、候補リストの後ろの方に追いやられてしまい、ベクトルを指定するためのインデックスの符号量が増加する恐れがあった。また、例えば、相関がより高いベクトルが、候補リストの後ろの方に追いやられてしまい、候補リストから除外されてしまい、指定できなくなる恐れがあった。
【０４８３】
そこで、符号化ベクトルと予測ベクトルの参照ピクチャのタイプ（短時間参照ピクチャまたは長時間参照ピクチャ）が異なるときに、その予測ベクトルを使用不可(Not available)にするようにする。
【０４８４】
短時間参照ピクチャを参照するベクトルと長時間参照ピクチャを参照するベクトルの特性は異なるため相関が低いと考えられる。したがって、この場合に候補ベクトルから除外することで、符号化効率を改善することができる。
【０４８５】
例えば、図６２は、背景静止アプリの参照画像の様子の例を説明する図である。静止画像の背景画像の前方に動物体が存在するような動画像（背景静止のアプリ）の場合、静止領域である背景（特にオクルージョン領域）は、長時間ピクチャを参照するので、動きベクトルが０となる傾向がある。これに対して、前方の動物体は短時間参照ピクチャを参照するので、動きベクトルが発生する。このように参照ピクチャのタイプが異なると、動きベクトルの相関が低い（図６４Ａ）。そのため、上述したように、符号化ベクトルと予測ベクトルの参照ピクチャのタイプが異なるときに、候補ベクトルから除外することで、符号化効率を改善することができる。
【０４８６】
また、例えば、図６３は、ステレオアプリの参照画像の様子の例を説明する図である。立体視のために左目用の画像（左目画像）と右目用の画像（右目画像）が用意されているような動画像（ステレオアプリ）の場合、Dependent View（ここでは右目画像として説明する）を符号化するときに、Base View（ここでは左目画像として説明する）を長時間参照ピクチャとして指定し、Dependent Viewの符号化済みピクチャを短時間参照ピクチャとして指定する。
【０４８７】
Dependent Viewを参照する場合、参照先と参照元とでフレームIDが異なるのでスケーリング可能であるが、Base Viewを参照する場合、参照先と参照元とでフレームIDが一致してしまう。そのため、スケーリングの際に分母が０になる恐れがあり、スケーリングが困難になる。そのため、HEVC等では、Base Viewは、スケーリングを行わない長時間参照ピクチャとして指定するようになされている。
【０４８８】
そのため、ステレオアプリの場合、長時間参照ピクチャを参照するベクトルは視差ベクトルで、短時間参照ピクチャを参照するベクトルは動きベクトルとなる。したがって、ピクチャタイプ間で、動き（視差）ベクトルの相関が低い（図６４Ｂ）。そのため、上述したように、符号化ベクトルと予測ベクトルの参照ピクチャのタイプが異なるときに、候補ベクトルから除外することで、符号化効率を改善することができる。
【０４８９】
なお、以下においては、処理対象のブロック（ＣＵ、ＰＵ等）を符号化ブロック（若しくはカレント）ブロックとも称する。また、符号化ブロックの時間的に周辺のブロック、すなわち、符号化ブロックが存在するピクチャ（カレントピクチャ）の時間的に周辺のピクチャのコロケーテッドブロックを、時間相関ブロックとも称する。さらに、符号化ブロックの空間的に周辺のブロック、すなわち、カレントピクチャにおいて符号化ブロックに隣接するブロック若しくは近傍に位置するブロックを、周辺ブロックとも称する。
【０４９０】
図６５に周辺ブロックの例を示す。位置Ａ０およびＡ１のブロックは、符号化ブロック（カレントブロック）の周辺ブロックであり、左側位置のブロックとも称する。また、位置Ｂ０、Ｂ１、およびＢ２のブロックは、符号化ブロック（カレントブロック）の周辺ブロックであり、上側位置のブロックとも称する。
【０４９１】
［動き（視差）ベクトルの取り扱いのまとめ］
図６６は、時間相関ブロックと周辺ブロックの取り扱いの例を説明する図である。ベクトルの予測において、時間相関ブロックの動き（視差）ベクトルを候補ベクトルに含めるか否か、並びに、スケーリングを行うか否かは、図６６Ａに示される表のように決定する。
【０４９２】
つまり、例えば、符号化ブロックの参照画像と時間相関ブロックの参照画像とのタイプが一致する場合、すなわち、ともに短時間参照画像であるか、若しくは、ともに長時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルを候補にし、両者のタイプが一致しない場合、候補から除外するようにする。さらに、符号化ブロックの参照画像と時間相関ブロックの参照画像とが、ともに短時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルのスケーリングを行うようにし、両者がともに長時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０４９３】
また、ベクトルの予測において、周辺ブロックの動き（視差）ベクトルを候補ベクトルに含めるか否か、並びに、スケーリングを行うか否かは、図６６Ｂに示される表のように決定する。つまり、時間相関ブロックの場合と同様である。
【０４９４】
つまり、例えば、符号化ブロックの参照画像と周辺ブロックの参照画像とのタイプが一致する場合、すなわち、ともに短時間参照画像であるか、若しくは、ともに長時間参照画像である場合、周辺ブロックの動き（視差）ベクトルを候補にし、両者のタイプが一致しない場合、候補から除外するようにする。さらに、符号化ブロックの参照画像と周辺ブロックの参照画像とが、ともに短時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行うようにし、両者がともに長時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０４９５】
［符号化時の処理の流れ］
このような制御を実現するための符号化時の処理の流れの例について、以下に説明する。なお、このような制御は、第３の実施の形態において説明した画像符号化装置４００（図３７）により実現することができる。
【０４９６】
画像符号化装置４００による符号化処理は、図２０のフローチャートを参照して説明した場合（第１の実施の形態）と同様に行われる。
【０４９７】
図２０のステップＳ１０４において実行されるインター動き予測処理に相当する処理として、動き予測・補償部４１５が実行するＰＵの動き（視差）ベクトルと参照インデックス生成処理の流れの例を、図６７のフローチャートを参照して説明する。
【０４９８】
ステップＳ７０１において、インターモード生成部４３１（図３８）は、インターモードを生成する。ステップＳ７０２において、インターモード生成部４３１は、そのモードがマージ（スキップ）モードであるか否かを判定する。
【０４９９】
マージ（スキップ）モードであると判定された場合、処理は、ステップＳ７０３に進む。ステップＳ７０３において、参照インデックス決定部４３２およびベクトル予測部４３４は、マージ（スキップ）モードの処理を行い、動き（視差）ベクトルと参照インデックスを生成する。ステップＳ７０３の処理が終了すると、処理は、ステップＳ７０７に進む。
【０５００】
また、ステップＳ７０２において、マージ（スキップ）モードでないと判定された場合、処理は、ステップＳ７０４に進む。ステップＳ７０４において、ベクトル予測部４３３は、残差動き（視差）ベクトルと参照インデックスを取得する。ステップＳ７０５において、ベクトル予測部４３３は、AMVPモードの処理を行い、予測動き（視差）ベクトルを生成する。ステップＳ７０６において、モード判定部４３５は、残差動き（視差）ベクトルと予測動き（視差）ベクトルとを加算する。
【０５０１】
ステップＳ７０７において、モード判定部４３５は、全てのモードを処理するまで処理をステップＳ７０１に戻し、全てのモードが揃ったら、最適なモードを判定する。
【０５０２】
ステップＳ７０８において、可逆符号化部１０６は、選ばれた情報を符号化する。ステップＳ７０８の処理が終了すると、処理は、図２０に戻る。
【０５０３】
次に、図６７のステップＳ７０３において実行されるマージ（スキップ）モード処理の流れの例を、図６８のフローチャートを参照して説明する。
【０５０４】
処理が開始されると、ステップＳ７１１において、参照インデックス決定部４３２は、空間的に周辺のブロックから候補となる動き（視差）ベクトルと参照インデックスを作成する。
【０５０５】
ステップＳ７１２において、参照インデックス決定部４３２は、時間相関ブロック用の参照インデックスを生成する。
【０５０６】
ステップＳ７１３において、ベクトル予測部４３４は、時間相関ブロックから候補となる動き（視差）ベクトルを生成する。
【０５０７】
ステップＳ７１４において、ベクトル予測部４３４は、動き（視差）ベクトルと参照インデックスの候補リストを生成する。なお、このリストの要素数をＹとする。
【０５０８】
ステップＳ７１５において、ベクトル予測部４３４は、候補リストの最大数Ｘを設定する。
【０５０９】
ステップＳ７１６において、ベクトル予測部４３４は、リストの要素数Ｙが候補リストの最大数Ｘより小さいか否か（Ｙ＜Ｘであるか否か）を判定する。リストの要素数Ｙが候補リストの最大数Ｘより小さい（Ｙ＜Ｘである）と判定された場合、処理は、ステップＳ７１７に進む。
【０５１０】
ステップＳ７１７において、ベクトル予測部４３４は、候補リストの各要素を組み合わせて、新しく動き（視差）ベクトルと参照インデックスを生成する。
【０５１１】
ステップＳ７１８において、ベクトル予測部４３４は、候補リストを更新する。この時のリストの要素数をＹ’とする。
【０５１２】
ステップＳ７１９において、ベクトル予測部４３４は、リストの要素数Ｙ’が候補リストの最大数Ｘより小さいか否か（Ｙ’＜Ｘであるか否か）を判定する。リストの要素数Ｙ’が候補リストの最大数Ｘより小さい（Ｙ’＜Ｘである）と判定された場合、処理は、ステップＳ７２０に進む。
【０５１３】
ステップＳ７２０において、ベクトル予測部４３４は、ゼロ動き（視差）ベクトルとゼロ参照インデックスを新たに生成する。ステップＳ７２０の処理が終了すると、処理はステップＳ７２１に進む。
【０５１４】
また、ステップＳ７１６において、リストの要素数Ｙが候補リストの最大数Ｘ以上である（Ｙ＜Ｘでない）と判定された場合、処理は、ステップＳ７２１に進む。また、ステップＳ７１９において、リストの要素数Ｙ’が候補リストの最大数Ｘ以上である（Ｙ’＜Ｘでない）と判定された場合、処理は、ステップＳ７２１に進む。
【０５１５】
ステップＳ７２１において、ベクトル予測部４３４は、候補リストの要素インデックスを生成する。
【０５１６】
ステップＳ７２２において、ベクトル予測部４３４は、要素インデックスが指し示す動き（視差）ベクトルと参照インデックスを取得する。ステップＳ７２２の処理が終了すると、処理は、図６７に戻る。
【０５１７】
次に、図６８のステップＳ７１３において実行される時間相関ブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図６９のフローチャートを参照して説明する。
【０５１８】
処理が開始されると、ベクトル予測部４３４は、ステップＳ７３１において、時間相関ピクチャを指定するインデックスを生成する。
【０５１９】
ステップＳ７３２において、ベクトル予測部４３４は、時間相関ピクチャを決定する。
【０５２０】
ステップＳ７３３において、ベクトル予測部４３４は、時間相関ピクチャ内に存在する符号化PU（符号化ブロック）の右下位置のブロックを選択する。
【０５２１】
ステップＳ７３４において、ベクトル予測部４３４は、右下位置のブロックがイントラモード若しくは使用不可であるか否かを判定する。右下位置のブロックがイントラモード若しくは使用不可であると判定された場合、処理は、ステップＳ７３５に進む。
【０５２２】
ステップＳ７３５において、ベクトル予測部４３４は、時間相関ピクチャ内に存在する符号化PUの中心位置のブロックを選択する。
【０５２３】
ステップＳ７３６において、ベクトル予測部４３４は、その中心位置のブロックがイントラモード若しくは使用不可であるか否かを判定する。中心位置のブロックがイントラモード若しくは使用不可であると判定された場合、処理は、ステップＳ７３７に進む。
【０５２４】
ステップＳ７３７において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルを候補から除外する。ステップＳ７３７の処理が終了すると、処理は、図６８に戻る。
【０５２５】
また、ステップＳ７３４において、右下位置のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７３８に進む。同様に、中心位置のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７３８に進む。
【０５２６】
ステップＳ７３８において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルと参照インデックスを決定する。
【０５２７】
ステップＳ７３９において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無を判定する。
【０５２８】
ステップＳ７４０において、ベクトル予測部４３４は、ステップＳ７３９の判定結果に基づいて、時間相関ブロックの動き（視差）ベクトルを候補から除外するか否かを判定する。
【０５２９】
候補から除外すると判定された場合、処理は、ステップＳ７３７に戻る。また、ステップＳ７４０において、候補から除外しない（候補に含める）と判定された場合、処理は、ステップＳ７４１に進む。
【０５３０】
ステップＳ７４１において、ベクトル予測部４３４は、ステップＳ７３９の判定結果に基づいて、時間相関ブロックの動き（視差）ベクトルに対してスケーリングが必要であるか否かを判定する。
【０５３１】
スケーリングが必要であると判定された場合、処理は、ステップＳ７４２に進む。ステップＳ７４２において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルに対して、スケーリング処理を行う。ステップＳ７４２の処理が終了すると、処理は、図６８に戻る。
【０５３２】
また、ステップＳ７４１において、スケーリングが必要でないと判定された場合、処理は、図６８に戻る。
【０５３３】
次に、図６９のステップＳ７３９において実行される、時間相関ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理の流れの例を、図７０のフローチャートを参照して説明する。
【０５３４】
処理が開始されると、ベクトル予測部４３４は、ステップＳ７５１において、符号化ブロックの参照画像が短時間参照画像と長時間参照画像のいずれであるかを判別する。
【０５３５】
ステップＳ７５２において、ベクトル予測部４３４は、時間相関ブロックの参照画像が短時間参照画像と長時間参照画像のいずれであるかを判別する。
【０５３６】
ステップＳ７５３において、ベクトル予測部４３４は、ステップＳ７５１の判別結果に基づいて、符号化ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５３７】
符号化ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ７５４に進む。ステップＳ７５４において、ベクトル予測部４３４は、さらに、ステップＳ７５２の判別結果に基づいて、時間相関ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５３８】
時間相関ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ７５５に進む。この場合、符号化ブロックと時間相関ブロックの動き（視差）ベクトルは、ともに長時間参照画像である。したがって、ステップＳ７５５において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルを候補に含め、スケーリングが不要であると設定する。ステップＳ７５５の処理が終了すると、処理は、図６９に戻る。
【０５３９】
また、図７０のステップＳ７５４において、時間相関ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ７５６に進む。この場合、符号化ブロックと時間相関ブロックとで動き（視差）ベクトルのタイプが一致しない。したがって、ステップＳ７５６において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルを候補から除外すると設定する。ステップＳ７５６の処理が終了すると、処理は、図６９に戻る。
【０５４０】
さらに、図７０のステップＳ７５３において、符号化ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ７５７に進む。ステップＳ７５７において、ベクトル予測部４３４は、さらに、ステップＳ７５２の判別結果に基づいて、時間相関ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５４１】
時間相関ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ７５６に戻る。つまり、この場合、符号化ブロックと時間相関ブロックとで動き（視差）ベクトルのタイプが一致しないので、時間相関ブロックの動き（視差）ベクトルは候補から除外されるように設定される。
【０５４２】
また、ステップＳ７５７において、時間相関ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ７５８に進む。この場合、符号化ブロックと時間相関ブロックの動き（視差）ベクトルは、ともに短時間参照画像である。したがって、ステップＳ７５８において、ベクトル予測部４３４は、時間相関ブロックの動き（視差）ベクトルを候補に含め、さらにスケーリングが必要であると設定する。ステップＳ７５８の処理が終了すると、処理は、図６９に戻る。
【０５４３】
次に、図６７のステップＳ７０５において実行されるAMVPモード処理の流れの例を、図７１のフローチャートを参照して説明する。
【０５４４】
処理が開始されると、ベクトル予測部４３３（図３８）は、ステップＳ７６１において、空間的に周辺のブロックから候補となる動き（視差）ベクトルを生成する。
【０５４５】
ステップＳ７６２において、ベクトル予測部４３３は、動き（視差）ベクトルの候補リストを生成する。この候補リストの要素数をＡとする。
【０５４６】
ステップＳ７６３において、ベクトル予測部４３３は、候補リストの要素数Ａが２より小さいか否か（Ａ＜２であるか否か）を判定する。
【０５４７】
候補リストの要素数Ａが２より小さい（Ａ＜２である）と判定された場合、処理は、ステップＳ７６４に進む。ステップＳ７６４において、ベクトル予測部４３３は、時間相関ブロックから候補となる動き（視差）ベクトルを生成する。この処理は、図６９のフローチャートを参照して説明した場合と同様であるので、その説明は省略する。
【０５４８】
ステップＳ７６５において、ベクトル予測部４３３は、動き（視差）ベクトルと参照インデックスの候補リストを生成する。この候補リストの要素数をＡ’とする。
【０５４９】
ステップＳ７６６において、ベクトル予測部４３３は、候補リストの要素数Ａ’が２より小さいか否か（Ａ’＜２であるか否か）を判定する。
【０５５０】
候補リストの要素数Ａ’が２より小さい（Ａ’＜２である）と判定された場合、処理は、ステップＳ７６７に進む。ステップＳ７６７において、ベクトル予測部４３３は、ゼロ動き（視差）ベクトルとゼロ参照インデックスを新たに生成する。ステップＳ７６７の処理が終了すると、処理は、ステップＳ７６８に進む。
【０５５１】
また、ステップＳ７６３において、候補リストの要素数Ａが２以上である（Ａ＜２でない）と判定された場合、処理は、ステップＳ７６８に進む。さらに、ステップＳ７６６において、候補リストの要素数Ａ’が２以上である（Ａ＜２でない）と判定された場合、処理は、ステップＳ７６８に進む。
【０５５２】
ステップＳ７６８において、ベクトル予測部４３３は、候補リストの要素インデックス（フラグ）を生成する。
【０５５３】
ステップＳ７６９において、ベクトル予測部４３３は、要素インデックスが指し示す動き（視差）ベクトルを取得する。ステップＳ７６９の処理が終了すると、処理は、図６７に戻る。
【０５５４】
次に、図７１のステップＳ７６１において実行される、空間的に周辺のブロックから候補となる動き（視差）ベクトルを生成する処理の流れの例を、図７２のフローチャートを参照して説明する。
【０５５５】
処理が開始されると、ベクトル予測部４３３は、ステップＳ７７１において、左側位置のブロックから候補となる動き（視差）ベクトルを生成する。
【０５５６】
ステップＳ７７２において、ベクトル予測部４３３は、上側位置のブロックから候補となる動き（視差）ベクトルを生成する。
【０５５７】
ステップＳ７２２の処理が終了すると、処理は、図７１に戻る。
【０５５８】
次に、図７２のステップＳ７７１において実行される、左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図７３および図７４のフローチャートを参照して説明する。
【０５５９】
処理が開始されると、ベクトル予測部４３３は、ステップＳ７８１において、位置Ａ０のブロックを選択する。
【０５６０】
ステップＳ７８２において、ベクトル予測部４３３は、位置Ａ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０５６１】
位置Ａ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７８３に進む。ステップＳ７８３において、ベクトル予測部４３３は、位置Ａ０のブロックが符号化ブロックと同じ参照画像を参照しているか否かを判定する。
【０５６２】
位置Ａ０のブロックが符号化ブロックと同じ参照画像を参照していると判定された場合、処理は、ステップＳ７８４に進む。ステップＳ７８４において、ベクトル予測部４３３は、位置Ａ０のブロックの動き（視差）ベクトルを候補にする。ステップＳ７８４の処理が終了すると、処理は、図７２に戻る。
【０５６３】
また、図７３のステップＳ７８２において、位置Ａ０のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ７８５に進む。また、ステップＳ７８３において、位置Ａ０のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、ステップＳ７８５に進む。
【０５６４】
ステップＳ７８５において、ベクトル予測部４３３は、位置Ａ１のブロックを選択する。
【０５６５】
ステップＳ７８６において、ベクトル予測部４３３は、位置Ａ１のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０５６６】
位置Ａ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７８７に進む。ステップＳ７８７において、ベクトル予測部４３３は、位置Ａ１のブロックが符号化ブロックと同じ参照画像を参照しているか否かを判定する。
【０５６７】
位置Ａ１のブロックが符号化ブロックと同じ参照画像を参照していると判定された場合、処理は、ステップＳ７８８に進む。ステップＳ７８８において、ベクトル予測部４３３は、位置Ａ１のブロックの動き（視差）ベクトルを候補にする。ステップＳ７８８の処理が終了すると、処理は、図７２に戻る。
【０５６８】
また、図７３のステップＳ７８６において、位置Ａ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図７４のステップＳ７９１に進む。また、図７３のステップＳ７８７において、位置Ａ１のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、図７４のステップＳ７９１に進む。
【０５６９】
図７４のステップＳ７９１において、ベクトル予測部４３３は、位置Ａ０のブロックを選択する。
【０５７０】
ステップＳ７９２において、ベクトル予測部４３３は、位置Ａ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０５７１】
位置Ａ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７９３に進む。ステップＳ７９３において、ベクトル予測部４３３は、位置Ａ０のブロックの動き（視差）ベクトルを候補にする。ステップＳ７９３の処理が終了すると、処理は、ステップＳ７９７に進む。
【０５７２】
また、図７４のステップＳ７９２において、位置Ａ０のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ７９４に進む。
【０５７３】
ステップＳ７９４において、ベクトル予測部４３３は、位置Ａ１のブロックを選択する。
【０５７４】
ステップＳ７９５において、ベクトル予測部４３３は、位置Ａ１のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０５７５】
位置Ａ０のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図７２に戻る。
【０５７６】
また、図７４のステップＳ７９５において、位置Ａ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ７９６に進む。ステップＳ７９６において、ベクトル予測部４３３は、位置Ａ１のブロックの動き（視差）ベクトルを候補にする。ステップＳ７９６の処理が終了すると、処理は、ステップＳ７９７に進む。
【０５７７】
ステップＳ７９７において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無を判定する。
【０５７８】
ステップＳ７９８において、ベクトル予測部４３３は、ステップＳ７９７の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルを候補から除外するか否かを判定する。
【０５７９】
候補から除外すると判定された場合、処理は、ステップＳ７９９に進む。ステップＳ７９９において、ベクトル予測部４３３は、左側位置ブロックの動き（視差）ベクトルを候補から除外する。ステップＳ７９９の処理が終了すると、処理は、図７２に戻る。
【０５８０】
また、図７４のステップＳ７９８において、候補から除外しない（候補に含める）と判定された場合、処理は、ステップＳ８００に進む。
【０５８１】
ステップＳ８００において、ベクトル予測部４３３は、ステップＳ７９７の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルに対してスケーリングが必要であるか否かを判定する。
【０５８２】
スケーリングが必要であると判定された場合、処理は、ステップＳ８０１に進む。ステップＳ８０１において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルに対して、スケーリング処理を行う。ステップＳ８０１の処理が終了すると、処理は、図７２に戻る。
【０５８３】
また、図７４のステップＳ８００において、スケーリングが必要でないと判定された場合、処理は、図７２に戻る。
【０５８４】
次に、図７４のステップＳ７９７において実行される、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理の流れの例を、図７５のフローチャートを参照して説明する。
【０５８５】
処理が開始されると、ベクトル予測部４３３は、ステップＳ８１１において、符号化ブロックの参照画像が短時間参照画像と長時間参照画像のいずれであるかを判別する。
【０５８６】
ステップＳ８１２において、ベクトル予測部４３３は、周辺ブロックの参照画像が短時間参照画像と長時間参照画像のいずれであるかを判別する。
【０５８７】
ステップＳ８１３において、ベクトル予測部４３３は、ステップＳ８１１の判別結果に基づいて、符号化ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５８８】
符号化ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ８１４に進む。ステップＳ８１４において、ベクトル予測部４３３は、さらに、ステップＳ８１２の判別結果に基づいて、周辺ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５８９】
周辺ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ８１５に進む。この場合、符号化ブロックと周辺ブロックの動き（視差）ベクトルは、ともに長時間参照画像である。したがって、ステップＳ８１５において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルを候補に含め、スケーリングが不要であると設定する。ステップＳ８１５の処理が終了すると、処理は、図７４に戻る。
【０５９０】
また、図７５のステップＳ８１４において、周辺ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ８１６に進む。この場合、符号化ブロックと周辺ブロックとで動き（視差）ベクトルのタイプが一致しない。したがって、ステップＳ８１６において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルを候補から除外すると設定する。ステップＳ８１６の処理が終了すると、処理は、図７４に戻る。
【０５９１】
さらに、図７５のステップＳ８１３において、符号化ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ８１７に進む。ステップＳ８１７において、ベクトル予測部４３３は、さらに、ステップＳ８１２の判別結果に基づいて、周辺ブロックの参照画像が長時間参照画像であるか否かを判定する。
【０５９２】
周辺ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ８１６に戻る。つまり、この場合、符号化ブロックと周辺ブロックとで動き（視差）ベクトルのタイプが一致しないので、周辺ブロックの動き（視差）ベクトルは候補から除外されるように設定される。
【０５９３】
また、ステップＳ８１７において、周辺ブロックの参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ８１８に進む。この場合、符号化ブロックと周辺ブロックの動き（視差）ベクトルは、ともに短時間参照画像である。したがって、ステップＳ８１８において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルを候補に含め、さらにスケーリングが必要であると設定する。ステップＳ８１８の処理が終了すると、処理は、図７４に戻る。
【０５９４】
次に、図７２のステップＳ７７２において実行される、上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図７６および図７７のフローチャートを参照して説明する。
【０５９５】
処理が開始されると、ベクトル予測部４３３は、ステップＳ８２１において、位置Ｂ０のブロックを選択する。
【０５９６】
ステップＳ８２２において、ベクトル予測部４３３は、位置Ｂ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０５９７】
位置Ｂ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８２３に進む。ステップＳ８２３において、ベクトル予測部４３３は、位置Ｂ０のブロックが符号化ブロックと同じ参照画像を参照しているか否かを判定する。
【０５９８】
位置Ｂ０のブロックが符号化ブロックと同じ参照画像を参照していると判定された場合、処理は、ステップＳ８２４に進む。ステップＳ８２４において、ベクトル予測部４３３は、位置Ｂ０のブロックの動き（視差）ベクトルを候補にする。ステップＳ８２４の処理が終了すると、処理は、図７２に戻る。
【０５９９】
また、図７６のステップＳ８２２において、位置Ｂ０のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ８２５に進む。また、ステップＳ８２３において、位置Ｂ０のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、ステップＳ８２５に進む。
【０６００】
ステップＳ８２５において、ベクトル予測部４３３は、位置Ｂ１のブロックを選択する。
【０６０１】
ステップＳ８２６において、ベクトル予測部４３３は、位置Ｂ１のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６０２】
位置Ｂ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８２７に進む。ステップＳ８２７において、ベクトル予測部４３３は、位置Ｂ１のブロックが符号化ブロックと同じ参照画像を参照しているか否かを判定する。
【０６０３】
位置Ｂ１のブロックが符号化ブロックと同じ参照画像を参照していると判定された場合、処理は、ステップＳ８２８に進む。ステップＳ８２８において、ベクトル予測部４３３は、位置Ｂ１のブロックの動き（視差）ベクトルを候補にする。ステップＳ８２８の処理が終了すると、処理は、図７２に戻る。
【０６０４】
また、図７６のステップＳ８２６において、位置Ｂ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ８２９に進む。また、ステップＳ８２７において、位置Ｂ１のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、ステップＳ８２９に進む。
【０６０５】
ステップＳ８２９において、ベクトル予測部４３３は、位置Ｂ２のブロックを選択する。
【０６０６】
ステップＳ８３０において、ベクトル予測部４３３は、位置Ｂ２のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６０７】
位置Ｂ２のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８３１に進む。ステップＳ８３１において、ベクトル予測部４３３は、位置Ｂ２のブロックが符号化ブロックと同じ参照画像を参照しているか否かを判定する。
【０６０８】
位置Ｂ２のブロックが符号化ブロックと同じ参照画像を参照していると判定された場合、処理は、ステップＳ８３２に進む。ステップＳ８３２において、ベクトル予測部４３３は、位置Ｂ２のブロックの動き（視差）ベクトルを候補にする。ステップＳ８３２の処理が終了すると、処理は、図７２に戻る。
【０６０９】
また、図７６のステップＳ８３０において、位置Ｂ２のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図７７のステップＳ８４１に進む。また、図７６のステップＳ８３１において、位置Ｂ２のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、図７７のステップＳ８４１に進む。
【０６１０】
図７７のステップＳ８４１において、ベクトル予測部４３３は、左側位置のブロックから動き（視差）ベクトルの候補が生成されているかを判定する。
【０６１１】
ステップＳ８４２において、ベクトル予測部４３３は、位置Ｂ０のブロックを選択する。
【０６１２】
ステップＳ８４３において、ベクトル予測部４３３は、位置Ｂ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６１３】
位置Ｂ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８４４に進む。ステップＳ８４４において、ベクトル予測部４３３は、位置Ｂ０のブロックの動き（視差）ベクトルを候補にする。ステップＳ８４４の処理が終了すると、処理は、ステップＳ８５１に進む。
【０６１４】
また、ステップＳ８４３において、位置Ｂ０のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ８４５に進む。
【０６１５】
ステップＳ８４５において、ベクトル予測部４３３は、位置Ｂ１のブロックを選択する。
【０６１６】
ステップＳ８４６において、ベクトル予測部４３３は、位置Ｂ１のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６１７】
位置Ｂ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８４７に進む。ステップＳ８４７において、ベクトル予測部４３３は、位置Ｂ１のブロックの動き（視差）ベクトルを候補にする。ステップＳ８４７の処理が終了すると、処理は、ステップＳ８５１に進む。
【０６１８】
また、ステップＳ８４６において、位置Ｂ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、ステップＳ８４８に進む。
【０６１９】
ステップＳ８４８において、ベクトル予測部４３３は、位置Ｂ２のブロックを選択する。
【０６２０】
ステップＳ８４９において、ベクトル予測部４３３は、位置Ｂ２のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６２１】
ステップＳ８４９において、位置Ｂ２のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図７２に戻る。
【０６２２】
また、位置Ｂ２のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ８５０に進む。ステップＳ８５０において、ベクトル予測部４３３は、位置Ｂ２のブロックの動き（視差）ベクトルを候補にする。ステップＳ８５０の処理が終了すると、処理は、ステップＳ８５１に進む。
【０６２３】
ステップＳ８５１において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無を判定する。この処理は、図７５のフローチャートを参照して説明した場合と同様に行われるので、その説明は省略する。なお、この場合において、図７５の処理が終了したとき、処理は、図７４ではなく、図７７に戻る。
【０６２４】
ステップＳ８５２において、ベクトル予測部４３３は、ステップＳ８５１の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルを候補から除外するか否かを判定する。
【０６２５】
候補から除外すると判定された場合、処理は、ステップＳ８５３に進む。ステップＳ８５３において、ベクトル予測部４３３は、上側位置ブロックの動き（視差）ベクトルを候補から除外する。ステップＳ８５３の処理が終了すると、処理は、図７２に戻る。
【０６２６】
また、図７７のステップＳ８５２において、候補から除外しない（候補に含める）と判定された場合、処理は、ステップＳ８５４に進む。
【０６２７】
ステップＳ８５４において、ベクトル予測部４３３は、ステップＳ８５１の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルに対してスケーリングが必要であるか否かを判定する。
【０６２８】
スケーリングが必要であると判定された場合、処理は、ステップＳ８５５に進む。ステップＳ８５５において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルに対して、スケーリング処理を行う。ステップＳ８５５の処理が終了すると、処理は、図７２に戻る。
【０６２９】
また、図７７のステップＳ８５４において、スケーリングが必要でないと判定された場合、処理は、図７２に戻る。
【０６３０】
以上のように各処理を実行することにより、画像符号化装置４００は、符号化効率の低減を抑制することができる。
【０６３１】
［復号時の処理の流れ］
以上のように符号化されて得られた符号化データを正しく復号するためには、復号側においても、符号化側と同様の方法で予測を行えばよい。つまり、復号側においても、符号化ベクトルと予測ベクトルの参照ピクチャのタイプ（短時間参照ピクチャまたは長時間参照ピクチャ）が異なるときに、その予測ベクトルを使用不可(Not available)にするようにする。
【０６３２】
つまり、例えば、符号化ブロックの参照画像と時間相関ブロックの参照画像とのタイプが一致する場合、すなわち、ともに短時間参照画像であるか、若しくは、ともに長時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルを候補にし、両者のタイプが一致しない場合、候補から除外するようにする。さらに、符号化ブロックの参照画像と時間相関ブロックの参照画像とが、ともに短時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルのスケーリングを行うようにし、両者がともに長時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０６３３】
また、例えば、符号化ブロックの参照画像と周辺ブロックの参照画像とのタイプが一致する場合、すなわち、ともに短時間参照画像であるか、若しくは、ともに長時間参照画像である場合、周辺ブロックの動き（視差）ベクトルを候補にし、両者のタイプが一致しない場合、候補から除外するようにする。さらに、符号化ブロックの参照画像と周辺ブロックの参照画像とが、ともに短時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行うようにし、両者がともに長時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０６３４】
このようにすることにより、符号化効率の低減の抑制を実現することができる。
【０６３５】
このような制御を実現するための符号化時の処理の流れの例について、以下に説明する。なお、このような制御は、第４の実施の形態において説明した画像復号装置５００（図４７）により実現することができる。
【０６３６】
画像復号装置５００による復号処理は、図３３のフローチャートを参照して説明した場合（第２の実施の形態）と同様に行われる。また、図３３のステップＳ３０５の予測処理は、図３４のフローチャートを参照して説明した場合と同様に行われる。
【０６３７】
図３４のステップＳ３３４において実行される動き視差補償処理に相当する処理として、動き補償部５１２が実行するＰＵの動き（視差）ベクトルと参照インデックス生成処理の流れの例を、図７８のフローチャートを参照して説明する。
【０６３８】
この処理は、符号化側の処理（図６７）の場合と基本的に同様に行われる。ただし、予測モードは符号化側により決定されているので、復号側においては、その使用された予測モードについてのみ処理を行えばよい。
【０６３９】
処理が開始されると、ステップＳ８６１において、可逆復号部３０２は、符号化側から供給される予測モードを復号する。
【０６４０】
ステップＳ８６２において、モード判定部５３１は、予測モードがマージ（スキップ）モードであるか否かを判定する。
【０６４１】
マージ（スキップ）モードであると判定された場合、処理は、ステップＳ８６３に進む。ステップＳ８６３において、参照インデックス決定部５３２およびベクトル復号部５３４は、マージ（スキップ）モードの処理を行い、動き（視差）ベクトルと参照インデックスを生成する。ステップＳ８６３の処理が終了すると、処理は、図３４に戻る。
【０６４２】
また、図７８のステップＳ８６２において、マージ（スキップ）モードでないと判定された場合、処理は、ステップＳ８６３に進む。ステップＳ８６４において、ベクトル復号部５３３は、残差動き（視差）ベクトルと参照インデックスを取得する。ステップＳ８６５において、ベクトル復号部５３３は、AMVPモードの処理を行い、予測動き（視差）ベクトルを生成する。ステップＳ８６６において、ベクトル復号部５３３は、残差動き（視差）ベクトルと予測動き（視差）ベクトルとを加算する。ステップＳ８６６の処理が終了すると、処理は、図３４に戻る。
【０６４３】
次に、図７８のステップＳ８６３において実行されるマージ（スキップ）モード処理の流れの例を、図７９のフローチャートを参照して説明する。この処理は、基本的に符号化側の処理（図６８）と基本的に同様に行われる。
【０６４４】
ステップＳ８７１乃至ステップＳ８７４の各処理は、図６８のステップＳ７１１乃至ステップＳ７１４の各処理と同様に実行される。ただし、ステップＳ８７１およびステップＳ８７２の各処理は、参照インデックス決定部５３２が行い、ステップＳ８７３およびステップＳ８７４の各処理は、ベクトル復号部５３４が行う。
【０６４５】
ステップＳ８７５において、ベクトル復号部５３４は、候補リストの最大数Ｘを復号する。
【０６４６】
ステップＳ８７６乃至ステップＳ８８０の各処理は、図６８のステップＳ７１６乃至ステップＳ７２０の各処理と同様に実行される。ただし、これらの処理は、ベクトル復号部５３４が実行する。
【０６４７】
ステップＳ８８１において、ベクトル復号部５３４は、候補リストの要素インデックスを復号する。ステップＳ８８２において、ベクトル復号部５３４は、要素インデックスが指し示す動き（視差）ベクトルと参照インデックスを取得する。ステップＳ８８２の処理が終了すると、処理は、図７８に戻る。
【０６４８】
次に、図７９のステップＳ８７３において実行される時間相関ブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図８０のフローチャートを参照して説明する。この処理は、基本的に符号化側の処理（図６９）と基本的に同様に行われる。
【０６４９】
処理が開始されると、ベクトル復号部５３４は、ステップＳ８９１において、時間相関ピクチャを指定するインデックスを復号する。
【０６５０】
ステップＳ８９２乃至ステップＳ９０２の各処理は、図６９のステップＳ７３２乃至ステップＳ７４２の各処理と同様に実行される。ただし、これらの処理は、ベクトル復号部５３４が実行する。
【０６５１】
図８０のステップＳ８９９において実行される、時間相関ブロックの動き（視差）ベクトルのスケーリング処理の有無と候補の有無の判定処理は、図７０のフローチャートを参照して説明した場合と同様に実行されるので、その説明は省略する。ただし、この場合、処理は、ベクトル復号部５３４が実行し、図７０の処理が終了したときは、処理は図８０に戻る。
【０６５２】
次に、図７８のステップＳ８６５において実行されるAMVPモード処理の流れの例を、図８１のフローチャートを参照して説明する。この処理は、基本的に符号化側の処理（図７１）と基本的に同様に行われる。ステップＳ９１１乃至ステップＳ９１７の各処理は、図７１のステップＳ７６１乃至ステップＳ７６７の各処理と同様に実行される。ただし、これらの処理は、ベクトル復号部５３３が実行する。
【０６５３】
ステップＳ９１８において、ベクトル復号部５３３は、候補リストの要素インデックス（フラグ）を復号する。ステップＳ９１９において、ベクトル復号部５３３は、要素インデックスが指し示す動き（視差）ベクトルを取得する。ステップＳ９１９の処理が終了すると、処理は、図７８に戻る。
【０６５４】
なお、図８１のステップＳ９１１において実行される、空間的に周辺のブロックから候補となる動き（視差）ベクトルを生成する処理は、図７２乃至図７７の各フローチャートを参照して説明した場合と同様に実行されるので、その説明は省略する。ただし、この場合、処理は、ベクトル復号部５３３が実行し、図７２の処理が終了したときは、処理は図８１に戻る。
【０６５５】
また、図８１のステップＳ９１４において実行される、時間相関ブロックから候補となる動き（視差）ベクトルを生成する処理は、図８０のフローチャートを参照して説明した場合と同様に実行されるので、その説明は省略する。ただし、この場合、処理は、ベクトル復号部５３３が実行し、図８０の処理が終了したときは、処理は図８１に戻る。
【０６５６】
以上のように各処理を実行することにより、画像復号装置５００は、符号化データを正しく復号することができ、符号化効率の低減の抑制を実現することができる。
【０６５７】
［動き（視差）ベクトルの取り扱いのまとめ］
以上の例の場合、AMVPモードにおいて、周辺ブロックから動き（視差）ベクトルを生成する際に、例えば左側位置の周辺ブロックについては、位置Ａ０、位置Ａ１の順で動き（視差）ベクトルが検索され、見つかった時点で処理が終了される。同様に、例えば上側位置の周辺ブロックについては、位置Ｂ０、位置Ｂ１、位置Ｂ２の順で動き（視差）ベクトルが検索され、見つかった時点で処理が終了される。この場合、動き（視差）ベクトルが候補となり得るか否かは、その後に判定されるので、例えば、ある位置で見つかった動き（視差）ベクトルが候補となり得ない場合であっても、その後の位置の動き（視差）ベクトルの検索は行われない。
【０６５８】
周辺ブロックから動き（視差）ベクトルを生成する方法は、これに限らない。例えば、位置Ａ０および位置Ａ１、または、位置Ｂ０、位置Ｂ１、および位置Ｂ２の全てについて動き（視差）ベクトルを候補とすることができるか否かを判定するようにしてもよい。つまり、各位置の周辺ブロックについて、それぞれ、候補の有無を判定し、最後にまとめてスケーリング処理の有無を判定するようにする。
【０６５９】
このようにすることにより、上述した例よりも処理が複雑になるものの、各位置の動き（視差）ベクトルについて、候補に含めるか否かを判定することができる。つまり、より適切な候補を検索することができ、符号化効率をより向上させることができる。
【０６６０】
図８２は、周辺ブロックの取り扱いの例を説明する図である。ベクトルの予測において、まず、各位置の周辺ブロックについて、周辺ブロックの動き（視差）ベクトルを候補ベクトルに含めるか否かが、図８２Ａに示される表のように決定される。
【０６６１】
つまり、例えば、符号化ブロックの参照画像と周辺ブロックの参照画像とのタイプが一致する場合、すなわち、ともに短時間参照画像であるか、若しくは、ともに長時間参照画像である場合、時間相関ブロックの動き（視差）ベクトルを候補にし、両者のタイプが一致しない場合、候補から除外するようにする。
【０６６２】
候補が選択された後、その候補ベクトルについて、スケーリングを行うか否かが、図８２Ｂに示される表のように決定される。
【０６６３】
つまり、例えば、符号化ブロックの参照画像と周辺ブロックの参照画像とが、ともに短時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行うようにし、それ以外の場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０６６４】
［符号化時の処理の流れ］
この場合の、左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図８３および図８４のフローチャートを参照して説明する。なお、図６７乃至図７２のフローチャートを参照して説明した各処理は、この場合も同様に実行されるため、これらの処理についての説明は省略する。
【０６６５】
図８３のステップＳ９２１乃至ステップＳ９２８の各処理は、図７３のステップＳ７８１乃至ステップＳ７８８の各処理と同様に実行される。ステップＳ９２４若しくはステップＳ９２８の処理が終了すると、左側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。また、ステップＳ９２６において位置Ａ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、または、ステップＳ９２７において位置Ａ１のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、図８４のステップＳ９３１に進む。
【０６６６】
図８４のステップＳ９３１において、ベクトル予測部４３３は、位置Ａ０のブロックを選択する。
【０６６７】
ステップＳ９３２において、ベクトル予測部４３３は、位置Ａ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０６６８】
位置Ａ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ９３３に進む。ステップＳ９３３において、ベクトル予測部４３３は、位置Ａ０のブロックの動き（視差）ベクトルの候補の有無を判定する。
【０６６９】
ステップＳ９３４において、ベクトル予測部４３３は、ステップＳ９３３の判定結果に基づいて、候補を含むか否かを判定する。
【０６７０】
候補を含むと判定した場合、処理はステップＳ９３５に進む。ステップＳ９３５において、ベクトル予測部４３３は、位置Ａ０の動き（視差）ベクトルを候補にする。ステップＳ９３５の処理が終了すると、処理は、ステップＳ９４３に進む。
【０６７１】
また、ステップＳ９３４において、候補を含まないと判定された場合、処理は、ステップＳ９３６に進む。ステップＳ９３６において、ベクトル予測部４３３は、位置Ａ０のブロックの動き（視差）ベクトルを候補から除外する。
【０６７２】
ステップＳ９３６の処理が終了すると、処理は、ステップＳ９３７に進む。また、ステップＳ９３２において、位置Ａ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ９３７に進む。
【０６７３】
ステップＳ９３７において、ベクトル予測部４３３は、位置Ａ１のブロックを選択する。
【０６７４】
ステップＳ９３８において、ベクトル予測部４３３は、位置Ａ１のブロックがイントラモードまたは使用不可であるか否かを判定する。位置Ａ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、左側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。
【０６７５】
また、図８４のステップＳ９３８において、位置Ａ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ９３９に進む。ステップＳ９３９において、ベクトル予測部４３３は、位置Ａ１のブロックの動き（視差）ベクトルの候補の有無を判定する。
【０６７６】
ステップＳ９４０において、ベクトル予測部４３３は、ステップＳ９３９の判定結果に基づいて、候補を含むか否かを判定する。
【０６７７】
候補を含むと判定した場合、処理はステップＳ９４１に進む。ステップＳ９４１において、ベクトル予測部４３３は、位置Ａ１の動き（視差）ベクトルを候補にする。ステップＳ９４１の処理が終了すると、処理は、ステップＳ９４３に進む。
【０６７８】
また、ステップＳ９４０において、候補を含まないと判定された場合、処理は、ステップＳ９４２に進む。ステップＳ９４２において、ベクトル予測部４３３は、位置Ａ１のブロックの動き（視差）ベクトルを候補から除外する。ステップＳ９４２の処理が終了すると、左側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。
【０６７９】
図８４のステップＳ９４３において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無を判定する。
【０６８０】
ステップＳ９４４において、ベクトル予測部４３３は、ステップＳ９４３の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルに対してスケーリングが必要であるか否かを判定する。
【０６８１】
スケーリングが必要であると判定された場合、処理は、ステップＳ９４５に進む。ステップＳ９４５において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルに対して、スケーリング処理を行う。ステップＳ９４５の処理が終了すると、処理は、図７２に戻る。
【０６８２】
また、図８４のステップＳ９４４において、スケーリングが必要でないと判定された場合、処理は、図７２に戻る。
【０６８３】
次に、図８４のステップＳ９３３およびステップＳ９３９において実行される、周辺ブロックの動き（視差）ベクトルの候補の有無の判定処理の流れの例を、図８５のフローチャートを参照して説明する。
【０６８４】
図８５のステップＳ９５１乃至ステップＳ９５４，並びにステップＳ９５７の各処理は、図７５のステップＳ８１１乃至ステップＳ８１４、並びに、ステップＳ８１７の各処理と同様に実行される。
【０６８５】
ステップＳ９５３において符号化ブロックの参照画像が長時間参照画像であると判定され、ステップＳ９５４において周辺ブロックの参照画像が長時間参照画像であると判定された場合、ベクトル予測部４３３は、ステップＳ９５５において、周辺ブロック（位置Ａ０若しくは位置Ａ１のブロック）の動き（視差）ベクトルを候補に含めるように設定する。
【０６８６】
また、ステップＳ９５３において符号化ブロックの参照画像が長時間参照画像であると判定され、ステップＳ９５４において周辺ブロックの参照画像が短時間参照画像であると判定された場合、または、ステップＳ９５３において符号化ブロックの参照画像が短時間参照画像であると判定され、ステップＳ９５７において周辺ブロックの参照画像が長時間参照画像であると判定された場合、符号化ブロックと周辺ブロックとで参照画像のタイプが異なるので、ベクトル予測部４３３は、ステップＳ９５６において、周辺ブロック（位置Ａ０若しくは位置Ａ１のブロック）の動き（視差）ベクトルを候補から除外するように設定する。
【０６８７】
さらに、ステップＳ９５３において符号化ブロックの参照画像が短時間参照画像であると判定され、ステップＳ９５７において周辺ブロックの参照画像が短時間参照画像であると判定された場合、ベクトル予測部４３３は、ステップＳ９５８において、周辺ブロック（位置Ａ０若しくは位置Ａ１のブロック）の動き（視差）ベクトルを候補に含めるように設定する。
【０６８８】
ステップＳ９５５、ステップＳ９５６、または、ステップＳ９５８の処理が終了した場合、処理は、図８４に戻る。
【０６８９】
次に、図８４のステップＳ９４３において実行される、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無の判定処理の流れの例を、図８６のフローチャートを参照して説明する。
【０６９０】
図８６のステップＳ９６１乃至ステップＳ９６３、並びに、ステップＳ９６５の各処理は、図７５のステップＳ８１１乃至ステップＳ８１３、並びに、ステップＳ８１７の各処理と同様に実行される。
【０６９１】
ステップＳ９６３において符号化ブロックの参照画像が長時間参照画像であると判定された場合、または、ステップＳ９６３において符号化ブロックの参照画像が短時間参照画像であると判定され、ステップＳ９６５において、周辺ブロックの参照画像が長時間参照画像であると判定された場合、処理は、ステップＳ９６４に進む。つまり、符号化ブロックの参照画像と周辺ブロックの参照画像とのうち、少なくともいずれか一方が長時間参照画像であると判定された場合、処理はステップＳ９６４に進む。
【０６９２】
ステップＳ９６４において、ベクトル予測部４３３は、スケーリングが不要であると設定する。ステップＳ９６４の処理が終了すると、処理は、図８４に戻る。
【０６９３】
また、図８６のステップＳ９６３において符号化ブロックの参照画像が短時間参照画像であると判定され、ステップＳ９６５において、周辺ブロックの参照画像が短時間参照画像であると判定された場合、つまり、符号化ブロックと周辺ブロックのいずれも参照画像が短時間参照画像であると判定された場合、処理は、ステップＳ９６６に進む。
【０６９４】
ステップＳ９６６において、ベクトル予測部４３３は、スケーリングが必要であると設定する。ステップＳ９６６の処理が終了すると、処理は、図８４に戻る。
【０６９５】
次に、この場合の、上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図８７乃至図８９のフローチャートを参照して説明する。
【０６９６】
図８７のステップＳ９７１乃至ステップＳ９８２の各処理は、図７６のステップＳ８２１乃至ステップＳ８３２の各処理と同様に実行される。ステップＳ９７４、ステップＳ９７８、若しくはステップＳ９８２の処理が終了すると、処理は、図８９のステップＳ１０１７に進む。また、ステップＳ９８０において位置Ｂ２のブロックがイントラモードであるか若しくは使用不可であると判定された場合、または、ステップＳ９８１において位置Ｂ２のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、図８８のステップＳ９９１に進む。
【０６９７】
図８８のステップＳ９９１において、ベクトル予測部４３３は、左側位置のブロックから動き（視差）ベクトルの候補が生成されているかを判定する。
【０６９８】
ステップＳ９９２において、ベクトル予測部４３３は、位置Ｂ０のブロックを選択する。
【０６９９】
ステップＳ９９３において、ベクトル予測部４３３は、位置Ｂ０のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０７００】
位置Ｂ０のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ９９４に進む。ステップＳ９９４において、ベクトル予測部４３３は、位置Ｂ０のブロックの動き（視差）ベクトルの候補の有無を判定する。この処理は、図８５のフローチャートを参照して説明した場合と同様に行われるので、その説明は省略する。
【０７０１】
ステップＳ９９５において、ベクトル予測部４３３は、ステップＳ９９４の判定結果に基づいて、候補を除外するか否かを判定する。
【０７０２】
候補から除外すると判定した場合、処理はステップＳ９９６に進む。ステップＳ９９６において、ベクトル予測部４３３は、位置Ｂ０のブロックの動き（視差）ベクトルを候補から除外する。ステップＳ９９６の処理が終了すると、処理は、ステップＳ９９８に進む。
【０７０３】
また、ステップＳ９９５において、候補から除外しないと判定された場合、処理はステップＳ９９７に進む。ステップＳ９９７において、ベクトル予測部４３３は、位置Ｂ０のブロックの動き（視差）ベクトルを候補にする。ステップＳ９９７の処理が終了すると、処理は、図８９のステップＳ１０１７に進む。
【０７０４】
また、ステップＳ９９３において、位置Ｂ０のブロックがイントラモードである、若しくは使用不可であると判定された場合、処理は、ステップＳ９９８に進む。
【０７０５】
ステップＳ９９８において、ベクトル予測部４３３は、位置Ｂ１のブロックを選択する。
【０７０６】
ステップＳ９９９において、ベクトル予測部４３３は、位置Ｂ１のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０７０７】
位置Ｂ１のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ１０００に進む。ステップＳ１０００において、ベクトル予測部４３３は、位置Ｂ１のブロックの動き（視差）ベクトルの候補の有無を判定する。この処理は、図８５のフローチャートを参照して説明した場合と同様に行われるので、その説明は省略する。
【０７０８】
ステップＳ１００１において、ベクトル予測部４３３は、ステップＳ１０００の判定結果に基づいて、候補を除外するか否かを判定する。
【０７０９】
候補から除外すると判定した場合、処理はステップＳ１００２に進む。ステップＳ１００２において、ベクトル予測部４３３は、位置Ｂ１のブロックの動き（視差）ベクトルを候補から除外する。ステップＳ１００２の処理が終了すると、処理は、図８９のステップＳ１０１１に進む。
【０７１０】
また、図８８のステップＳ１００１において、候補から除外しないと判定された場合、処理はステップＳ１００３に進む。ステップＳ１００３において、ベクトル予測部４３３は、位置Ｂ１のブロックの動き（視差）ベクトルを候補にする。ステップＳ１００３の処理が終了すると、処理は、図８９のステップＳ１０１７に進む。
【０７１１】
また、ステップＳ９９９において、位置Ｂ１のブロックがイントラモードである、若しくは使用不可であると判定された場合、処理は、図８９のステップＳ１０１１に進む。
【０７１２】
図８９のステップＳ１０１１において、ベクトル予測部４３３は、位置Ｂ２のブロックを選択する。
【０７１３】
ステップＳ１０１２において、ベクトル予測部４３３は、位置Ｂ２のブロックがイントラモードまたは使用不可であるか否かを判定する。
【０７１４】
位置Ｂ２のブロックがイントラモードでも使用不可でもないと判定された場合、処理は、ステップＳ１０１３に進む。ステップＳ１０１３において、ベクトル予測部４３３は、位置Ｂ２のブロックの動き（視差）ベクトルの候補の有無を判定する。この処理は、図８５のフローチャートを参照して説明した場合と同様に行われるので、その説明は省略する。
【０７１５】
ステップＳ１０１４において、ベクトル予測部４３３は、ステップＳ１０１３の判定結果に基づいて、候補から除外するか否かを判定する。
【０７１６】
候補から除外すると判定した場合、処理はステップＳ１０１５に進む。ステップＳ１０１５において、ベクトル予測部４３３は、位置Ｂ２のブロックの動き（視差）ベクトルを候補から除外する。ステップＳ１０１５の処理が終了すると、処理は、ステップＳ１０１７に進む。
【０７１７】
また、ステップＳ１０１４において、候補から除外しないと判定された場合、処理はステップＳ１０１６に進む。ステップＳ１０１６において、ベクトル予測部４３３は、位置Ｂ２のブロックの動き（視差）ベクトルを候補にする。ステップＳ１０１６の処理が終了すると、処理は、ステップＳ１０１７に進む。
【０７１８】
ステップＳ１０１７において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルのスケーリング処理の有無を判定する。この処理は、図８６のフローチャートを参照して説明した場合と同様に行われるので、その説明は省略する。
【０７１９】
ステップＳ１０１８において、ベクトル予測部４３３は、ステップＳ１０１７の判定結果に基づいて、周辺ブロックの動き（視差）ベクトルに対してスケーリングが必要であるか否かを判定する。
【０７２０】
スケーリングが必要であると判定された場合、処理は、ステップＳ１０１９に進む。ステップＳ１０１９において、ベクトル予測部４３３は、周辺ブロックの動き（視差）ベクトルに対して、スケーリング処理を行う。ステップＳ１０１９の処理が終了すると、処理は、図７２に戻る。
【０７２１】
また、図８９のステップＳ１０１８において、スケーリングが必要でないと判定された場合、処理は、図７２に戻る。
【０７２２】
以上のように各処理を実行することにより、画像符号化装置４００は、符号化効率の低減を抑制することができる。
【０７２３】
なお、画像復号装置５００も、上述した画像符号化装置４００と同様に、これらの処理を実行するのでその説明は省略する。これにより、画像復号装置５００は、符号化データを正しく復号することができ、符号化効率の低減の抑制を実現することができる。
【０７２４】
［動き（視差）ベクトルの取り扱いのまとめ］
以上においては、図６６乃至図８１を参照して第１の例について説明し、図８２乃至図８９を参照して第２の例について説明した。
【０７２５】
これら以外にも、例えば、第１の例において、符号化ブロックの参照画像と周辺ブロックの参照画像が両方とも長時間参照画像である場合、符号化ブロックと周辺ブロックが同一の参照画像を参照しているときのみ周辺ブロックの動き（視差）ベクトルを候補とし、それらが互いに異なる参照画像を参照しているときは、周辺ブロックの動き（視差）ベクトル候補から除外し、さらに、検索処理も省略するようにしてもよい。
【０７２６】
上述したように、長時間参照画像は、背景画像のような静止領域や異なるビューの画像に適用される。したがって、符号化ブロックの参照画像と周辺ブロックの参照画像が両方とも、このような長時間参照画像であるにも関わらず、敢えて、それらが互いに異なる画像であるということは、その参照画像は、互いの相関性が低いと考えられる。つまり、符号化ブロックと周辺ブロックの動き（視差）ベクトルの相関性が低いと考えられる。
【０７２７】
そこで、このような相関性が低い可能性があるパターン（符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であり、かつ、両者が互いに異なる画像である場合）を、ベクトルの候補から除外することにより、符号化効率の低減をさらに抑制することができる。また、候補やスケーリングの有無の判定処理を省略することにより、処理の負荷を低減させることができる。
【０７２８】
図９０は、時間相関ブロックと周辺ブロックの取り扱いの他の例を説明する図である。ベクトルの予測において、時間相関ブロックの動き（視差）ベクトルを候補ベクトルに含めるか否か、並びに、スケーリングを行うか否かは、図９０Ａに示される表のように決定する。
【０７２９】
つまり、図６６Ａの場合と同様である。
【０７３０】
また、ベクトルの予測において、周辺ブロックの動き（視差）ベクトルを候補ベクトルに含めるか否か、並びに、スケーリングを行うか否かは、図９０Ｂに示される表のように決定する。
【０７３１】
つまり、例えば、符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像である場合、それらの参照画像が同一であるときのみ、周辺ブロックの動き（視差）ベクトルを候補にする。さらに、それらの参照画像が互いに異なる場合、周辺ブロックの動き（視差）ベクトルを候補から除外するだけでなく、候補やスケーリングの有無の判定処理を省略する。
【０７３２】
符号化ブロックの参照画像と周辺ブロックの参照画像とが、ともに短時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行うようにし、両者がともに長時間参照画像である場合、周辺ブロックの動き（視差）ベクトルのスケーリングを行わないようにする。
【０７３３】
［符号化時の処理の流れ］
この場合の、左側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図９１および図９２のフローチャートを参照して説明する。なお、図６７乃至図７２のフローチャートを参照して説明した各処理は、この場合も同様に実行されるため、これらの処理についての説明は省略する。
【０７３４】
図９１のステップＳ１０３１乃至ステップＳ１０３８の各処理は、図７３のステップＳ７８１乃至ステップＳ７８８の各処理と基本的に同様に実行される。ステップＳ１０３４若しくはステップＳ１０３８の処理が終了すると、左側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。また、ステップＳ１０３５において位置Ａ１のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図９２のステップＳ１０４１に進む。
【０７３５】
しかしながら、図９１のステップＳ１０３７において、位置Ａ１のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、ステップＳ１０３９に進む。
【０７３６】
ステップＳ１０３９において、ベクトル予測部４３３は、符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であるか否かを判定する。
【０７３７】
符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であると判定された場合、左側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。
【０７３８】
また、符号化ブロックと周辺ブロックの参照画像の少なくとも一方が短時間参照画像であると判定された場合、処理は、図９２のステップＳ１０４１に進む。
【０７３９】
図９２のステップＳ１０４１乃至ステップＳ１０５１の各処理は、図７４のステップＳ７９１乃至ステップＳ７９９の各処理と同様に実行される。
【０７４０】
つまり、符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であると判定された場合、図９２の処理が全て省略される。したがって、処理の負荷を低減させることができる。
【０７４１】
次に、この場合の、上側位置のブロックから候補となる動き（視差）ベクトル生成処理の流れの例を、図９３および図９４のフローチャートを参照して説明する。
【０７４２】
図９３のステップＳ１０７１乃至ステップＳ１０８２の各処理は、図７６のステップＳ８２１乃至ステップＳ８３２の各処理と基本的に同様に実行される。ステップＳ１０７４、ステップＳ１０７８、若しくはステップＳ１０８２の処理が終了すると、上側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。また、ステップＳ１０８０において位置Ｂ２のブロックがイントラモードであるか若しくは使用不可であると判定された場合、処理は、図９４のステップＳ１０９１に進む。
【０７４３】
しかしながら、図９３のステップＳ１０８１において、位置Ｂ２のブロックが符号化ブロックと異なる参照画像を参照していると判定された場合、処理は、ステップＳ１０８３に進む。
【０７４４】
ステップＳ１０８３において、ベクトル予測部４３３は、符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であるか否かを判定する。
【０７４５】
符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であると判定された場合、上側位置のブロックから候補となる動き（視差）ベクトル生成処理が終了し、処理は、図７２に戻る。
【０７４６】
また、符号化ブロックと周辺ブロックの参照画像の少なくとも一方が短時間参照画像であると判定された場合、処理は、図９４のステップＳ１０９１に進む。
【０７４７】
図９４のステップＳ１０９１乃至ステップＳ１１０５の各処理は、図７７のステップＳ８４１乃至ステップＳ８５５の各処理と同様に実行される。
【０７４８】
つまり、符号化ブロックと周辺ブロックの参照画像がともに長時間参照画像であると判定された場合、図９４の処理が全て省略される。したがって、処理の負荷を低減させることができる。
【０７４９】
なお、上述した一連の処理は、多視点画像符号化・多視点画像復号（マルチビューのエンコーダ・デコーダ）にも適用することができる。つまり、多視点符号化・多視点復号を行う場合においても、符号化効率を向上させることができる。さらに、上述した一連の処理は、階層画像符号化(空間スケーラビリティ)・階層画像復号（マルチレイヤのエンコーダ・デコーダ）にも適用することができる。つまり、階層画像符号化・階層画像復号を行う場合においても、符号化効率を向上させることができる。
【０７５０】
また、上述した一連の処理は、単視点画像（１ビュー）の、所謂２Ｄ画像にも適用することができる。
【０７５１】
なお、本技術は、例えば、MPEG、H．26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報（ビットストリーム）を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本技術は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
【０７５２】
＜７．第７の実施の形態＞
［コンピュータ］
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
【０７５３】
図９５において、パーソナルコンピュータ７００のCPU（Central Processing Unit）７０１は、ROM（Read Only Memory）７０２に記憶されているプログラム、または記憶部７１３からRAM（Random Access Memory）７０３にロードされたプログラムに従って各種の処理を実行する。RAM７０３にはまた、CPU７０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０７５４】
CPU７０１、ROM７０２、およびRAM７０３は、バス７０４を介して相互に接続されている。このバス７０４にはまた、入出力インタフェース７１０も接続されている。
【０７５５】
入出力インタフェース７１０には、キーボード、マウスなどよりなる入力部７１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部７１２、ハードディスクなどより構成される記憶部７１３、モデムなどより構成される通信部７１４が接続されている。通信部７１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０７５６】
入出力インタフェース７１０にはまた、必要に応じてドライブ７１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア７２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部７１３にインストールされる。
【０７５７】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０７５８】
この記録媒体は、例えば、図９５に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、若しくは半導体メモリなどよりなるリムーバブルメディア７２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM７０２や、記憶部７１３に含まれるハードディスクなどで構成される。
【０７５９】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０７６０】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０７６１】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０７６２】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０７６３】
＜８．第８の実施の形態＞
上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルＴＶなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、４つの応用例について説明する。
【０７６４】
［第１の応用例：テレビジョン受像機］
図９６は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置９００は、アンテナ９０１、チューナ９０２、デマルチプレクサ９０３、デコーダ９０４、映像信号処理部９０５、表示部９０６、音声信号処理部９０７、スピーカ９０８、外部インタフェース９０９、制御部９１０、ユーザインタフェース９１１、及びバス９１２を備える。
【０７６５】
チューナ９０２は、アンテナ９０１を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ９０２は、復調により得られた符号化ビットストリームをデマルチプレクサ９０３へ出力する。即ち、チューナ９０２は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置９００における伝送部としての役割を有する。
【０７６６】
デマルチプレクサ９０３は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ９０４へ出力する。また、デマルチプレクサ９０３は、符号化ビットストリームからEPG（Electronic Program Guide）などの補助的なデータを抽出し、抽出したデータを制御部９１０に供給する。なお、デマルチプレクサ９０３は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
【０７６７】
デコーダ９０４は、デマルチプレクサ９０３から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ９０４は、復号処理により生成される映像データを映像信号処理部９０５へ出力する。また、デコーダ９０４は、復号処理により生成される音声データを音声信号処理部９０７へ出力する。
【０７６８】
映像信号処理部９０５は、デコーダ９０４から入力される映像データを再生し、表示部９０６に映像を表示させる。また、映像信号処理部９０５は、ネットワークを介して供給されるアプリケーション画面を表示部９０６に表示させてもよい。また、映像信号処理部９０５は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部９０５は、例えばメニュー、ボタン又はカーソルなどのGUI（Graphical User Interface）の画像を生成し、生成した画像を出力画像に重畳してもよい。
【０７６９】
表示部９０６は、映像信号処理部９０５から供給される駆動信号により駆動され、表示デバイス（例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD（Organic ElectroLuminescence Display）（有機ELディスプレイ）など）の映像面上に映像又は画像を表示する。
【０７７０】
音声信号処理部９０７は、デコーダ９０４から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ９０８から音声を出力させる。また、音声信号処理部９０７は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
【０７７１】
外部インタフェース９０９は、テレビジョン装置９００と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース９０９を介して受信される映像ストリーム又は音声ストリームが、デコーダ９０４により復号されてもよい。即ち、外部インタフェース９０９もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置９００における伝送部としての役割を有する。
【０７７２】
制御部９１０は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置９００の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース９１１から入力される操作信号に応じて、テレビジョン装置９００の動作を制御する。
【０７７３】
ユーザインタフェース９１１は、制御部９１０と接続される。ユーザインタフェース９１１は、例えば、ユーザがテレビジョン装置９００を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース９１１は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９１０へ出力する。
【０７７４】
バス９１２は、チューナ９０２、デマルチプレクサ９０３、デコーダ９０４、映像信号処理部９０５、音声信号処理部９０７、外部インタフェース９０９及び制御部９１０を相互に接続する。
【０７７５】
このように構成されたテレビジョン装置９００において、デコーダ９０４は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置９００での画像の復号に際して、符号化効率の低減の抑制を実現することができる。
【０７７６】
［第２の応用例：携帯電話機］
図９７は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機９２０は、アンテナ９２１、通信部９２２、音声コーデック９２３、スピーカ９２４、マイクロホン９２５、カメラ部９２６、画像処理部９２７、多重分離部９２８、記録再生部９２９、表示部９３０、制御部９３１、操作部９３２、及びバス９３３を備える。
【０７７７】
アンテナ９２１は、通信部９２２に接続される。スピーカ９２４及びマイクロホン９２５は、音声コーデック９２３に接続される。操作部９３２は、制御部９３１に接続される。バス９３３は、通信部９２２、音声コーデック９２３、カメラ部９２６、画像処理部９２７、多重分離部９２８、記録再生部９２９、表示部９３０、及び制御部９３１を相互に接続する。
【０７７８】
携帯電話機９２０は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
【０７７９】
音声通話モードにおいて、マイクロホン９２５により生成されるアナログ音声信号は、音声コーデック９２３に供給される。音声コーデック９２３は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック９２３は、圧縮後の音声データを通信部９２２へ出力する。通信部９２２は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号を、アンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部９２２は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック９２３へ出力する。音声コーデック９２３は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック９２３は、生成した音声信号をスピーカ９２４に供給して音声を出力させる。
【０７８０】
また、データ通信モードにおいて、例えば、制御部９３１は、操作部９３２を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部９３１は、文字を表示部９３０に表示させる。また、制御部９３１は、操作部９３２を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部９２２へ出力する。通信部９２２は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号を、アンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部９２２は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部９３１へ出力する。制御部９３１は、表示部９３０に電子メールの内容を表示させると共に、電子メールデータを記録再生部９２９の記憶媒体に記憶させる。
【０７８１】
記録再生部９２９は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、ＲＡＭ又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB（Unallocated Space Bitmap）メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
【０７８２】
また、撮影モードにおいて、例えば、カメラ部９２６は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部９２７へ出力する。画像処理部９２７は、カメラ部９２６から入力される画像データを符号化し、符号化ストリームを記憶再生部９２９の記憶媒体に記憶させる。
【０７８３】
また、テレビ電話モードにおいて、例えば、多重分離部９２８は、画像処理部９２７により符号化された映像ストリームと、音声コーデック９２３から入力される音声ストリームとを多重化し、多重化したストリームを通信部９２２へ出力する。通信部９２２は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号を、アンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部９２２は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部９２８へ出力する。多重分離部９２８は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部９２７、音声ストリームを音声コーデック９２３へ出力する。画像処理部９２７は、映像ストリームを復号し、映像データを生成する。映像データは、表示部９３０に供給され、表示部９３０により一連の画像が表示される。音声コーデック９２３は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック９２３は、生成した音声信号をスピーカ９２４に供給して音声を出力させる。
【０７８４】
このように構成された携帯電話機９２０において、画像処理部９２７は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機９２０での画像の符号化及び復号に際して、符号化効率の低減を抑制することができる。
【０７８５】
［第３の応用例：記録再生装置］
図９８は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置９４０は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置９４０は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置９４０は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置９４０は、音声データ及び映像データを復号する。
【０７８６】
記録再生装置９４０は、チューナ９４１、外部インタフェース９４２、エンコーダ９４３、HDD（Hard Disk Drive）９４４、ディスクドライブ９４５、セレクタ９４６、デコーダ９４７、OSD（On-Screen Display）９４８、制御部９４９、及びユーザインタフェース９５０を備える。
【０７８７】
チューナ９４１は、アンテナ（図示せず）を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ９４１は、復調により得られた符号化ビットストリームをセレクタ９４６へ出力する。即ち、チューナ９４１は、記録再生装置９４０における伝送部としての役割を有する。
【０７８８】
外部インタフェース９４２は、記録再生装置９４０と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース９４２は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース９４２を介して受信される映像データ及び音声データは、エンコーダ９４３へ入力される。即ち、外部インタフェース９４２は、記録再生装置９４０における伝送部としての役割を有する。
【０７８９】
エンコーダ９４３は、外部インタフェース９４２から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ９４３は、符号化ビットストリームをセレクタ９４６へ出力する。
【０７９０】
HDD９４４は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD９４４は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
【０７９１】
ディスクドライブ９４５は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ９４５に装着される記録媒体は、例えばDVDディスク（DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等）又はBlu-ray（登録商標）ディスクなどであってよい。
【０７９２】
セレクタ９４６は、映像及び音声の記録時には、チューナ９４１又はエンコーダ９４３から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD９４４又はディスクドライブ９４５へ出力する。また、セレクタ９４６は、映像及び音声の再生時には、HDD９４４又はディスクドライブ９４５から入力される符号化ビットストリームをデコーダ９４７へ出力する。
【０７９３】
デコーダ９４７は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ９４７は、生成した映像データをOSD９４８へ出力する。また、デコーダ９０４は、生成した音声データを外部のスピーカへ出力する。
【０７９４】
OSD９４８は、デコーダ９４７から入力される映像データを再生し、映像を表示する。また、OSD９４８は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
【０７９５】
制御部９４９は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置９４０の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース９５０から入力される操作信号に応じて、記録再生装置９４０の動作を制御する。
【０７９６】
ユーザインタフェース９５０は、制御部９４９と接続される。ユーザインタフェース９５０は、例えば、ユーザが記録再生装置９４０を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース９５０は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９４９へ出力する。
【０７９７】
このように構成された記録再生装置９４０において、エンコーダ９４３は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ９４７は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置９４０での画像の符号化及び復号に際して、符号化効率の低減を抑制することができる。
【０７９８】
［第４の応用例：撮像装置］
図９９は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置９６０は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
【０７９９】
撮像装置９６０は、光学ブロック９６１、撮像部９６２、信号処理部９６３、画像処理部９６４、表示部９６５、外部インタフェース９６６、メモリ９６７、メディアドライブ９６８、OSD９６９、制御部９７０、ユーザインタフェース９７１、及びバス９７２を備える。
【０８００】
光学ブロック９６１は、撮像部９６２に接続される。撮像部９６２は、信号処理部９６３に接続される。表示部９６５は、画像処理部９６４に接続される。ユーザインタフェース９７１は、制御部９７０に接続される。バス９７２は、画像処理部９６４、外部インタフェース９６６、メモリ９６７、メディアドライブ９６８、OSD９６９、及び制御部９７０を相互に接続する。
【０８０１】
光学ブロック９６１は、フォーカスレンズ及び絞り機構などを有する。光学ブロック９６１は、被写体の光学像を撮像部９６２の撮像面に結像させる。撮像部９６２は、CCD（Charge Coupled Device）又はCMOS（Complementary Metal Oxide Semiconductor）などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部９６２は、画像信号を信号処理部９６３へ出力する。
【０８０２】
信号処理部９６３は、撮像部９６２から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部９６３は、カメラ信号処理後の画像データを画像処理部９６４へ出力する。
【０８０３】
画像処理部９６４は、信号処理部９６３から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部９６４は、生成した符号化データを外部インタフェース９６６又はメディアドライブ９６８へ出力する。また、画像処理部９６４は、外部インタフェース９６６又はメディアドライブ９６８から入力される符号化データを復号し、画像データを生成する。そして、画像処理部９６４は、生成した画像データを表示部９６５へ出力する。また、画像処理部９６４は、信号処理部９６３から入力される画像データを表示部９６５へ出力して画像を表示させてもよい。また、画像処理部９６４は、OSD９６９から取得される表示用データを、表示部９６５へ出力する画像に重畳してもよい。
【０８０４】
OSD９６９は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部９６４へ出力する。
【０８０５】
外部インタフェース９６６は、例えばUSB入出力端子として構成される。外部インタフェース９６６は、例えば、画像の印刷時に、撮像装置９６０とプリンタとを接続する。また、外部インタフェース９６６には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置９６０にインストールされ得る。さらに、外部インタフェース９６６は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース９６６は、撮像装置９６０における伝送部としての役割を有する。
【０８０６】
メディアドライブ９６８に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ９６８に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD（Solid State Drive）のような非可搬性の記憶部が構成されてもよい。
【０８０７】
制御部９７０は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置９６０の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース９７１から入力される操作信号に応じて、撮像装置９６０の動作を制御する。
【０８０８】
ユーザインタフェース９７１は、制御部９７０と接続される。ユーザインタフェース９７１は、例えば、ユーザが撮像装置９６０を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース９７１は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９７０へ出力する。
【０８０９】
このように構成された撮像装置９６０において、画像処理部９６４は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置９６０での画像の符号化及び復号に際して、符号化効率の低減を抑制することができる。
【０８１０】
なお、本明細書では、閾値などの様々な情報が、符号化ストリームのヘッダに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像（スライス若しくはブロックなど、画像の一部であってもよい）と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像（又はビットストリーム）とは別の伝送路上で伝送されてもよい。また、情報は、画像（又はビットストリーム）とは別の記録媒体（又は同一の記録媒体の別の記録エリア）に記録されてもよい。さらに、情報と画像（又はビットストリーム）とは、例えば、複数フレーム、１フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
【０８１１】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０８１２】
なお、本技術は以下のような構成も取ることができる。
（１）  視差方向の相関性を利用した予測に用いられるカレントブロックのカレント視差ベクトルを符号化する際に、前記カレント視差ベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス視差ベクトルを用いて生成する予測ベクトル生成部と、
前記カレント視差ベクトルと、前記予測ベクトル生成部により生成された前記予測ベクトルとの差分ベクトルを生成する差分ベクトル生成部と
を備える画像処理装置。
（２）  前記予測ベクトル生成部は、カレントビューと同一のビューを対象として、カレントピクチャと異なる時刻のコロケーテッドピクチャに含まれるコロケーテッドブロックの視差ベクトルを用いて、前記カレント視差ベクトルの予測ベクトルを生成する
前記（１）に記載の画像処理装置。
（３）  前記予測ベクトル生成部は、カレントブロックのベクトルの特性とコロケーテッドブロックのベクトルの特性とが一致する場合に、コロケーテッドブロックをアベイラブルに設定する
前記（２）に記載の画像処理装置。
（４）  前記ベクトルの特性は、ベクトルのタイプであり、
前記予測ベクトル生成部は、カンレントブロックのベクトルの特性が視差ベクトルあり、かつ、コロケーテッドブロックのベクトルの特性が視差ベクトルである場合に、コロケーテッドブロックをアベイラブルに設定する
前記（３）に記載の画像処理装置。
（５）  前記予測動きベクトル生成部は、ピクチャの出力順を示すPOC(Picture Order Count)を用いて、カレントブロックのベクトルの特性とコロケーテッドブロックのベクトルの特性とを判定する
前記（３）または（４）に記載の画像処理装置。
（６）  前記予測動きベクトル生成部は、カレントピクチャのPOCと、カレントピクチャから参照されるカレントリファレンスピクチャのPOCと、コロケーテッドピクチャのPOCと、コロケーテッドピクチャから参照されるコロケーテッドリファレンスピクチャのPOCとを用いて、カレントブロックのベクトルの特性とコロケーテッドブロックのベクトルの特性とを判定する
前記（５）に記載の画像処理装置。
（７）  前記予測動きベクトル生成部は、カレントピクチャのPOCとカレントピクチャから参照されるカレントリファレンスピクチャのPOCとが一致し、かつ、コロケーテッドピクチャのPOCとコロケーテッドピクチャから参照されるコロケーテッドリファレンスピクチャのPOCとが一致する場合に、カレントブロックのベクトルの特性とコロケーテッドブロックのベクトルの特性とは、視差ベクトルであると判定する
前記（６）に記載の画像処理装置。
（８）  前記予測ベクトル生成部は、カレントブロックのベクトルの特性とコロケーテッドブロックのベクトルの特性とが異なる場合に、コロケーテッドブロックをノットアベイラブルに設定する
前記（２）乃至（７）のいずれかに記載の画像処理装置。
（９）  前記ベクトルの特性は、参照ピクチャのタイプであり、
前記予測ベクトル生成部は、カレントブロックの参照ピクチャのタイプとコロケーテッドブロックの参照ピクチャのタイプとが異なる場合に、コロケーテッドブロックをノットアベイラブルに設定する
前記（８）に記載の画像処理装置。
（１０）  前記ベクトルの特性は、参照ピクチャのタイプであり、
前記予測ベクトル生成部は、カレントブロックの参照ピクチャのタイプが長時間参照であり、かつ、コロケーテッドブロックの参照ピクチャのタイプが長時間参照である場合に、リファレンスインデックスを探索する探索処理をスキップする
前記（８）または（９）に記載の画像処理装置。
（１１）  前記予測ベクトル生成部は、前記カレントビューと異なるビューを対象として、カレントピクチャと同一の時刻のピクチャに含まれるリファレンスブロックの視差ベクトルを用いて、前記カレント視差ベクトルの予測ベクトルを生成する
前記（１）乃至（１０）のいずれかに記載の画像処理装置。
（１２）  前記予測ベクトル生成部は、カレントピクチャと予測動きベクトルを生成する際に参照するリファレンスピクチャとの位置関係に基づいて、前記リファレンス視差ベクトルをスケーリングして、前記カレント視差ベクトルの予測ベクトルを生成する
前記（１）乃至（１１）のいずれかに記載の画像処理装置。
（１３）  前記予測ベクトル生成部は、時間方向の相関性を利用した予測に用いられるカレントブロックのカレント動きベクトルを符号化する際に、前記カレント動きベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス動きベクトルを用いて生成し、
前記差分ベクトル生成部は、前記カレント動きベクトルと前記予測ベクトル生成部により生成された前記予測ベクトルとの差分ベクトルを生成する
前記（１）乃至（１２）のいずれかに記載の画像処理装置。
（１４）  前記予測ベクトル生成部は、前記カレントビューと異なるビューを対象として、前記カレントピクチャと同一の時刻のピクチャに含まれるリファレンスブロックの動きベクトルを用いて、前記カレント動きベクトルの予測ベクトルを生成する
前記（１３）に記載の画像処理装置。
（１５）  前記予測ベクトル生成部は、前記カレントビューと同一のビューを対象として、前記カレントピクチャと異なる時刻のピクチャに含まれるリファレンスブロックの動きベクトルを用いて、前記カレント動きベクトルの予測ベクトルを生成する
前記（１３）または（１４）に記載の画像処理装置。
（１６）  前記予測ベクトル生成部は、カレントピクチャと予測動きベクトルを生成する際に参照するリファレンスピクチャとの位置関係に基づいて、前記リファレンス動きベクトルをスケーリングして、前記カレント動きベクトルの予測ベクトルを生成する
前記（１５）に記載の画像処理装置。
（１７）  前記予測ベクトル生成部は、前記カレントビューと異なるビューを対象として、前記カレントピクチャと同一の時刻のピクチャの画素の位置をシフトさせた状態で前記カレントブロックと同じ位置となるブロックのベクトルを用いて、前記予測ベクトルを生成する
前記（１）乃至（１６）のいずれかに記載の画像処理装置。
（１８）  前記予測ベクトル生成部は、前記カレントブロックの周辺領域の視差ベクトルに応じて、前記画像のシフト量を設定する
前記（１７）に記載の画像処理装置。
（１９）  前記予測ベクトル生成部は、Ｙ方向の視差ベクトルの値が非ゼロである前記周辺ブロックの、Ｘ方向の視差ベクトルを、前記シフト量とする
前記（１８）に記載の画像処理装置。
（２０）  前記予測ベクトル生成部は、Ｙ方向の視差ベクトルの値が非ゼロである複数の前記周辺ブロックの、Ｘ方向の視差ベクトルから算出される値を、前記シフト量とする
前記（１８）または（１９）に記載の画像処理装置。
（２１）  前記予測ベクトル生成部は、Ｙ方向の視差ベクトルの値が非ゼロである複数の前記周辺ブロックの、Ｘ方向の視差ベクトルの平均値又は中央値を、前記画像のシフト量とする
前記（２０）に記載の画像処理装置。
（２２）  前記予測ベクトル生成部は、グローバル視差ベクトルに応じて、前記画像のシフト量を設定する
前記（１７）乃至（２１）のいずれかに記載の画像処理装置。
（２３）  画像処理装置の画像処理方法において、
前記画像処理装置が、
視差方向の相関性を利用した予測に用いられるカレントブロックのカレント視差ベクトルを符号化する際に、前記カレント視差ベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス視差ベクトルを用いて生成し、
前記カレント視差ベクトルと、生成された前記予測ベクトルとの差分ベクトルを生成する
画像処理方法。
（２４）  視差方向の相関性を利用した予測に用いられるカレントブロックのカレント視差ベクトルの復号において、前記カレント視差ベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス視差ベクトルを用いて生成する予測ベクトル生成部と、
前記カレント視差ベクトルと前記予測ベクトルとの差分ベクトルに、前記予測ベクトル生成部により生成された前記予測ベクトルを加算し、前記カレント視差ベクトルを再構築する演算を行う演算部と
を備える画像処理装置。
（２５）  画像処理装置の画像処理方法において、
前記画像処理装置が、
視差方向の相関性を利用した予測に用いられるカレントブロックのカレント視差ベクトルの復号において、前記カレント視差ベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス視差ベクトルを用いて生成し、
前記カレント視差ベクトルと前記予測ベクトルとの差分ベクトルに、生成された前記予測ベクトルを加算し、前記カレント視差ベクトルを再構築する演算を行う
画像処理方法。
（２６）  時間方向の相関性を利用した予測に用いられるカレントブロックのカレント動きベクトルを符号化する際に、カレントブロックの参照ピクチャのタイプとカレントピクチャと異なる時刻のコロケーテッドピクチャに含まれるコロケーテッドブロックの参照ピクチャのタイプとが異なる場合に、コロケーテッドブロックをノットアベイラブルに設定し、前記カレント動きベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス動きベクトルを用いて生成する予測ベクトル生成部と、
前記カレント動きベクトルと前記予測ベクトル生成部により生成された前記予測ベクトルとの差分ベクトルを生成する差分ベクトル生成部と
を備える画像処理装置。
（２７）  画像処理装置の画像処理方法において、
前記画像処理装置が、
時間方向の相関性を利用した予測に用いられるカレントブロックのカレント動きベクトルを符号化する際に、カレントブロックの参照ピクチャのタイプとカレントピクチャと異なる時刻のコロケーテッドピクチャに含まれるコロケーテッドブロックの参照ピクチャのタイプとが異なる場合に、コロケーテッドブロックをノットアベイラブルに設定し、前記カレント動きベクトルの予測ベクトルを、予測動きベクトルを生成する際に参照するリファレンス動きベクトルを用いて生成し、
前記カレント動きベクトルと生成された前記予測ベクトルとの差分ベクトルを生成する
画像処理方法。
【符号の説明】
【０８１３】
１００  画像符号化装置，  １１５  動き視差予測・補償部，  １２１  多視点デコードピクチャバッファ，  １３１  動き視差ベクトル探索部，  １３２  予測画像生成部，  １３３  符号化情報蓄積バッファ，  １３４  選択部，  １３５  空間相関予測ベクトル生成部，  １３６  時間視差相関予測ベクトル生成部，  １３７  選択部，  １３８  符号化コスト算出部，  １３９  モード判定部，  １５１  カレント領域処理部，  １５２  相関領域処理部，  １５３  L1予測処理部，  １５４  L0予測処理部，  １５５  方式１処理部，  １５６  方式２処理部，  １５７  方式３処理部，  １５８  方式４処理部，  １５９  予測ベクトル生成部，  ３００  画像復号装置，  ３１２  動き視差補償部，  ３２１  多視点デコードピクチャバッファ，  ３３１  符号化情報蓄積バッファ，  ３３２  空間相関予測ベクトル生成部，  ３３３  時間視差相関予測ベクトル生成部，  ３３４  選択部，  ３３５  演算部，  ３３６  予測画像生成部，  ４００  画像符号化装置，  ４１５  動き予測・補償部，  ４２１  Base Viewエンコーダ，  ４３３および４３４  ベクトル予測部，  ４５７  異なるピクチャからの予測ベクトル生成部，  ４７１  視差ベクトル判定部，  ４７２  ビュー間参照ベクトル生成部，  ４７３  ビュー内参照ベクトル生成部，  ５００  画像復号装置，  ５１２  動き補償部，  ５２１  Base Viewデコーダ，  ５３３および５３４  ベクトル復号部，  ５５３  異なるピクチャからの予測ベクトル生成部，  ５７１  視差ベクトル判定部，  ５７２  ビュー間参照ベクトル生成部，  ５７３  ビュー内参照ベクトル生成部
【図１】
0005954449.tif 000004
【図２】
0005954449.tif 000005
【図３】
0005954449.tif 000006
【図４】
0005954449.tif 000007
【図５】
0005954449.tif 000008
【図６】
0005954449.tif 000009
【図７】
0005954449.tif 000010
【図８】
0005954449.tif 000011
【図９】
0005954449.tif 000012
【図１０】
0005954449.tif 000013
【図１１】
0005954449.tif 000014
【図１２】
0005954449.tif 000015
【図１３】
0005954449.tif 000016
【図１４】
0005954449.tif 000017
【図１５】
0005954449.tif 000018
【図１６】
0005954449.tif 000019
【図１７】
0005954449.tif 000020
【図１８】
0005954449.tif 000021
【図１９】
0005954449.tif 000022
【図２０】
0005954449.tif 000023
【図２１】
0005954449.tif 000024
【図２２】
0005954449.tif 000025
【図２３】
0005954449.tif 000026
【図２４】
0005954449.tif 000027
【図２５】
0005954449.tif 000028
【図２６】
0005954449.tif 000029
【図２７】
0005954449.tif 000030
【図２８】
0005954449.tif 000031
【図２９】
0005954449.tif 000032
【図３０】
0005954449.tif 000033
【図３１】
0005954449.tif 000034
【図３２】
0005954449.tif 000035
【図３３】
0005954449.tif 000036
【図３４】
0005954449.tif 000037
【図３５】
0005954449.tif 000038
【図３６】
0005954449.tif 000039
【図３７】
0005954449.tif 000040
【図３８】
0005954449.tif 000041
【図３９】
0005954449.tif 000042
【図４０】
0005954449.tif 000043
【図４１】
0005954449.tif 000044
【図４２】
0005954449.tif 000045
【図４３】
0005954449.tif 000046
【図４４】
0005954449.tif 000047
【図４５】
0005954449.tif 000048
【図４６】
0005954449.tif 000049
【図４７】
0005954449.tif 000050
【図４８】
0005954449.tif 000051
【図４９】
0005954449.tif 000052
【図５０】
0005954449.tif 000053
【図５１】
0005954449.tif 000054
【図５２】
0005954449.tif 000055
【図５３】
0005954449.tif 000056
【図５４】
0005954449.tif 000057
【図５５】
0005954449.tif 000058
【図５６】
0005954449.tif 000059
【図５７】
0005954449.tif 000060
【図５８】
0005954449.tif 000061
【図５９】
0005954449.tif 000062
【図６０】
0005954449.tif 000063
【図６１】
0005954449.tif 000064
【図６２】
0005954449.tif 000065
【図６３】
0005954449.tif 000066
【図６４】
0005954449.tif 000067
【図６５】
0005954449.tif 000068
【図６６】
0005954449.tif 000069
【図６７】
0005954449.tif 000070
【図６８】
0005954449.tif 000071
【図６９】
0005954449.tif 000072
【図７０】
0005954449.tif 000073
【図７１】
0005954449.tif 000074
【図７２】
0005954449.tif 000075
【図７３】
0005954449.tif 000076
【図７４】
0005954449.tif 000077
【図７５】
0005954449.tif 000078
【図７６】
0005954449.tif 000079
【図７７】
0005954449.tif 000080
【図７８】
0005954449.tif 000081
【図７９】
0005954449.tif 000082
【図８０】
0005954449.tif 000083
【図８１】
0005954449.tif 000084
【図８２】
0005954449.tif 000085
【図８３】
0005954449.tif 000086
【図８４】
0005954449.tif 000087
【図８５】
0005954449.tif 000088
【図８６】
0005954449.tif 000089
【図８７】
0005954449.tif 000090
【図８８】
0005954449.tif 000091
【図８９】
0005954449.tif 000092
【図９０】
0005954449.tif 000093
【図９１】
0005954449.tif 000094
【図９２】
0005954449.tif 000095
【図９３】
0005954449.tif 000096
【図９４】
0005954449.tif 000097
【図９５】
0005954449.tif 000098
【図９６】
0005954449.tif 000099
【図９７】
0005954449.tif 000100
【図９８】
0005954449.tif 000101
【図９９】
0005954449.tif 000102