(57)【特許請求の範囲】
【請求項１】
複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化装置であって、
前記符号化対象画像を分割した符号化対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、
前記擬似動きベクトルによって示される前記デプスマップ上の前記領域を求め、前記デプスマップの整数画素位置のデプス情報を用いて、前記符号化対象領域内の整数画素位置の画素に対応する前記擬似動きベクトルによって示される前記デプスマップ上の前記領域内の整数または小数位置の画素に対して、参照領域デプスとなるデプス情報を生成する参照領域デプス生成部と、
前記参照領域デプスと前記参照画像とを用いて、前記符号化対象領域に対する視点間予測画像を生成するカメラ間予測画像生成部と
を備える画像符号化装置。
【請求項２】
複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、視点間で画像を予測しながら符号化を行う画像符号化装置であって、
前記デプスマップに小数画素位置の画素に対するデプス情報を生成し、前記デプスマップ若しくは前記小数画素位置の画素に対するデプス情報と前記参照画像とを用いて、前記符号化対象画像の整数及び小数画素位置の画素に対する視点合成画像を生成する視点合成画像生成部と、
前記符号化対象画像を分割した符号化対象領域に対して、前記視点合成画像上の領域を示す小数画素精度の擬似動きベクトルを設定する擬似動きベクトル設定部と、
前記擬似動きベクトルによって示される前記視点合成画像上の前記領域に対する画像情報を視点間予測画像とするカメラ間予測画像生成部と、
を備える画像符号化装置。
【請求項３】
複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化装置であって、
前記符号化対象画像を分割した符号化対象領域に対して、前記符号化対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、
前記符号化対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、参照領域デプスとして設定する参照領域デプス設定部と、
前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記参照領域デプスであるとして、前記符号化対象領域に対する視点間予測画像を、前記参照画像を用いて生成するカメラ間予測画像生成部と
を備える画像符号化装置。
【請求項４】
複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号装置であって、
前記復号対象画像を分割した復号対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、
前記擬似動きベクトルによって示される前記デプスマップ上の前記領域を求め、前記デプスマップの整数画素位置のデプス情報を用いて、前記復号対象領域内の整数画素位置の画素に対応する前記擬似動きベクトルによって示される前記デプスマップ上の前記領域内の整数または小数位置の画素に対して、復号対象領域デプスとなるデプス情報を生成する参照領域デプス生成部と、
前記復号対象領域デプスと前記参照画像とを用いて、前記復号対象領域に対する視点間予測画像を生成するカメラ間予測画像生成部と
を備える画像復号装置。
【請求項５】
前記カメラ間予測画像生成部は、前記復号対象領域デプスから得られる視差ベクトルを用いて、前記視点間予測画像を生成する請求項４に記載の画像復号装置。
【請求項６】
前記カメラ間予測画像生成部は、前記復号対象領域デプスから得られる視差ベクトルと前記擬似動きベクトルを用いて、前記視点間予測画像を生成する請求項４に記載の画像復号装置。
【請求項７】
前記カメラ間予測画像生成部は、前記復号対象領域を分割した予測領域ごとに、前記復号対象領域デプス上で当該予測領域に対応する領域内のデプス情報を用いて、前記参照画像に対する視差ベクトルを設定し、当該視差ベクトルと前記参照画像とを用いて視差補償画像を生成することにより前記復号対象領域に対する前記視点間予測画像を生成する請求項４から６のいずれか１項に記載の画像復号装置。
【請求項８】
前記カメラ間予測画像生成部は、前記視差ベクトルを蓄積し、前記蓄積された視差ベクトルに基づき前記復号対象領域に隣接する領域における視差補償予測を行う請求項７に記載の画像復号装置。
【請求項９】
前記カメラ間予測画像生成部は、前記視差ベクトルを補正するベクトルである補正視差ベクトルで前記視差ベクトルを補正したベクトルと、前記参照画像とを用いて視差補償画像を生成することにより前記視点間予測画像を生成する請求項７に記載の画像復号装置。
【請求項１０】
前記カメラ間予測画像生成部は、前記補正視差ベクトルを蓄積し、前記蓄積された補正視差ベクトルを用いて、前記復号対象領域に隣接する領域における予測視差情報を生成する請求項９に記載の画像復号装置。
【請求項１１】
前記参照領域デプス生成部は、前記領域内の小数画素位置の画素に対するデプス情報を、周辺の整数画素位置の画素に対するデプス情報とする請求項４から１０のいずれか１項に記載の画像復号装置。
【請求項１２】
複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号装置であって、
擬似動きベクトルに対するビットストリームから、前記復号対象画像上の領域を示す擬似動きベクトルを復号する擬似動きベクトル復号部と、
前記復号対象画像を分割した復号対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、復号対象領域デプスとして設定する参照領域デプス設定部と、
前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記復号対象領域デプスであるとして、前記復号対象領域に対する視点間予測画像を、前記参照画像を用いて生成するカメラ間予測画像生成部と
を備える画像復号装置。
【請求項１３】
前記カメラ間予測画像生成部は、前記復号対象領域を分割した予測領域ごとに、前記復号対象領域デプス上で当該予測領域に対応する領域内のデプス情報を用いて、前記参照画像に対する視差ベクトルを設定し、前記擬似動きベクトルと当該視差ベクトルと前記参照画像とを用いて視差補償画像を生成することにより前記復号対象領域に対する前記視点間予測画像を生成する請求項１２に記載の画像復号装置。
【請求項１４】
前記カメラ間予測画像生成部は、前記視差ベクトルと前記擬似動きベクトルとを用いて表される前記復号対象領域における前記参照画像に対する参照ベクトルを蓄積し、前記蓄積された参照ベクトルを用いて、前記復号対象領域に隣接する領域における予測視差情報を生成する請求項１３に記載の画像復号装置。
【請求項１５】
複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化方法であって、
前記符号化対象画像を分割した符号化対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、
前記擬似動きベクトルによって示される前記デプスマップ上の前記領域を求め、前記デプスマップの整数画素位置のデプス情報を用いて、前記符号化対象領域内の整数画素位置の画素に対応する前記擬似動きベクトルによって示される前記デプスマップ上の前記領域内の整数または小数位置の画素に対して、参照領域デプスとなるデプス情報を生成する参照領域デプス生成ステップと、
前記参照領域デプスと前記参照画像とを用いて、前記符号化対象領域に対する視点間予測画像を生成するカメラ間予測画像生成ステップと
を有する画像符号化方法。
【請求項１６】
複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化方法であって、
前記符号化対象画像を分割した符号化対象領域に対して、前記符号化対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、
前記符号化対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、参照領域デプスとして設定する参照領域デプス設定ステップと、
前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記参照領域デプスであるとして、前記符号化対象領域に対する視点間予測画像を、前記参照画像を用いて生成する視点間予測ステップと
を有する画像符号化方法。
【請求項１７】
複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号方法であって、
前記復号対象画像を分割した復号対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、
前記擬似動きベクトルによって示される前記デプスマップ上の前記領域を求め、前記デプスマップの整数画素位置のデプス情報を用いて、前記復号対象領域内の整数画素位置の画素に対応する前記擬似動きベクトルによって示される前記デプスマップ上の前記領域内の整数または小数位置の画素に対して、復号対象領域デプスとなるデプス情報を生成する参照領域デプス生成ステップと、
前記復号対象領域デプスと前記参照画像とを用いて、前記復号対象領域に対する視点間予測画像を生成するカメラ間予測画像生成ステップと
を有する画像復号方法。
【請求項１８】
複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号方法であって、
擬似動きベクトルに対するビットストリームから、前記復号対象画像上の領域を示す擬似動きベクトルを復号する擬似動きベクトル復号ステップと、
前記復号対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、復号対象領域デプスとして設定する参照領域デプス設定ステップと、
前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記復号対象領域デプスであるとして、前記復号対象領域に対する視点間予測画像を、前記参照画像を用いて生成するカメラ間予測画像生成ステップと
を有する画像復号方法。
【請求項１９】
コンピュータに、請求項１５または１６に記載の画像符号化方法を実行させるための画像符号化プログラム。
【請求項２０】
コンピュータに、請求項１７または１８に記載の画像復号方法を実行させるための画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多視点画像を符号化及び復号する画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラムに関する。
本願は、２０１２年１２月２７日に日本へ出願された日本特願２０１２−２８４６９４号に対して優先権を主張し、その内容をここに援用する。
【背景技術】
【０００２】
従来から、複数のカメラで同じ被写体と背景を撮影した複数の画像からなる多視点画像（Multiview images：マルチビューイメージ）が知られている。この複数のカメラで撮影した動画像のことを多視点動画像（または多視点映像）という。以下の説明では１つのカメラで撮影された画像（動画像）を“２次元画像（動画像）”と称し、同じ被写体と背景とを位置や向き（以下、視点と称する）が異なる複数のカメラで撮影した２次元画像（２次元動画像）群を“多視点画像（多視点動画像）”と称する。【０００３】
２次元動画像は、時間方向に関して強い相関があり、その相関を利用することによって符号化効率を高めることができる。一方、多視点画像や多視点動画像では、各カメラが同期されている場合、各カメラの映像の同じ時刻に対応するフレーム（画像）は、全く同じ状態の被写体と背景を別の位置から撮影したものであるので、カメラ間で強い相関がある。多視点画像や多視点動画像の符号化においては、この相関を利用することによって符号化効率を高めることができる。【０００４】
ここで、２次元動画像の符号化技術に関する従来技術を説明する。国際符号化標準であるＨ．２６４、ＭＰＥＧ−２、ＭＰＥＧ−４をはじめとした従来の多くの２次元動画像符号化方式では、動き補償予測、直交変換、量子化、エントロピー符号化という技術を利用して、高効率な符号化を行う。例えば、Ｈ．２６４では、過去あるいは未来の複数枚のフレームとの時間相関を利用した符号化が可能である。【０００５】
Ｈ．２６４で使われている動き補償予測技術の詳細については、例えば非特許文献１に記載されている。Ｈ．２６４で使われている動き補償予測技術の概要を説明する。Ｈ．２６４の動き補償予測は、符号化対象フレームを様々なサイズのブロックに分割し、各ブロックで異なる動きベクトルと異なる参照フレームを持つことを許可している。各ブロックで異なる動きベクトルを使用することで、被写体ごとに異なる動きを補償した精度の高い予測を実現している。一方、各ブロックで異なる参照フレームを使用することで、時間変化によって生じるオクルージョンを考慮した精度の高い予測を実現している。【０００６】
次に、従来の多視点画像や多視点動画像の符号化方式について説明する。多視点画像の符号化方法と、多視点動画像の符号化方法との違いは、多視点動画像にはカメラ間の相関に加えて、時間方向の相関が同時に存在するということである。しかし、どちらの場合でも、同じ方法でカメラ間の相関を利用することができる。そのため、ここでは多視点動画像の符号化において用いられる方法について説明する。【０００７】
多視点動画像の符号化については、カメラ間の相関を利用するために、動き補償予測を同じ時刻の異なるカメラで撮影された画像に適用した“視差補償予測”によって高効率に多視点動画像を符号化する方式が従来から存在する。ここで、視差とは、異なる位置に配置されたカメラの画像平面上で、被写体上の同じ部分が存在する位置の差である。図１０は、カメラ間で生じる視差を示す概念図である。図１０に示す概念図では、光軸が平行なカメラの画像平面を垂直に見下ろしたものとなっている。このように、異なるカメラの画像平面上で被写体上の同じ部分が投影される位置は、一般的に対応点と呼ばれる。【０００８】
視差補償予測では、この対応関係に基づいて、符号化対象フレームの各画素値を参照フレームから予測して、その予測残差と、対応関係を示す視差情報とを符号化する。視差は対象とするカメラの対や位置ごとに変化するため、視差補償予測を行う領域ごとに視差情報を符号化することが必要である。実際に、Ｈ．２６４の多視点動画像符号化方式では、視差補償予測を用いるブロックごとに視差情報を表すベクトルを符号化している。【０００９】
視差情報によって与えられる対応関係は、カメラパラメータを用いることで、エピポーラ幾何拘束に基づき、２次元ベクトルではなく、被写体の３次元位置を示す１次元量で表すことができる。被写体の３次元位置を示す情報としては、様々な表現が存在するが、基準となるカメラから被写体までの距離や、カメラの画像平面と平行ではない軸上の座標値を用いることが多い。なお、距離ではなく距離の逆数を用いる場合もある。また、距離の逆数は視差に比例する情報となるため、基準となるカメラを２つ設定し、それらのカメラで撮影された画像間での視差量として３次元位置を表現する場合もある。どのような表現を用いたとしても本質的な違いはないため、以下では、表現による区別をせずに、それら３次元位置を示す情報をデプスと表現する。【００１０】
図１１はエピポーラ幾何拘束の概念図である。エピポーラ幾何拘束によれば、あるカメラの画像上の点に対応する別のカメラの画像上の点はエピポーラ線という直線上に拘束される。このとき、その画素に対するデプスが得られた場合、対応点はエピポーラ線上に一意に定まる。例えば、図１１に示すように、第１のカメラ画像においてｍの位置に投影された被写体に対する第２のカメラ画像での対応点は、実空間における被写体の位置がＭ’の場合にはエピポーラ線上の位置ｍ’に投影され、実空間における被写体の位置がＭ’’の場合にはエピポーラ線上の位置ｍ’’に、投影される。【００１１】
非特許文献２では、この性質を利用して、参照フレームに対するデプスマップ（距離画像）によって与えられる各被写体の３次元情報に従って、参照フレームから符号化対象フレームに対する予測画像を合成することで、精度の高い予測画像を生成し、効率的な多視点動画像の符号化を実現している。なお、このデプスに基づいて生成される予測画像は視点合成画像、視点補間画像、または視差補償画像と呼ばれる。【００１２】
しかしながら、エピポーラ幾何は単純なカメラモデルに従っているため、現実のカメラの投影モデルと比べると多少の誤差が存在する。また、その単純なカメラモデルに従うとしても、実際の画像に対してカメラパラメータを正確に求めることは困難であるため、誤差を避けることはできない。更に、カメラモデルが正確に求まる場合においても、実写画像に対して、デプスを正確に得ることも歪みなしで符号化・伝送することも困難であるため、正確な視点合成画像や視差補償画像を生成することはできない。【００１３】
非特許文献３では、生成した視点合成画像をＤＰＢ（Decoded Picture Buffer）に挿入してその他の参照フレームと同様に扱うことを可能としている。これにより、上記のような誤差の影響で符号化対象画像と視点合成画像とか微妙にずれてしまっていても、視点合成画像上でのそのズレを示すベクトルを設定・符号化することで、そのズレを補償した高精度な画像予測を実現している。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】ITU-T Recommendation H.264 (03/2009), "Advanced video coding for generic audiovisual services", March, 2009.
【非特許文献２】Shinya SHIMIZU, Masaki KITAHARA, Kazuto KAMIKURA and Yoshiyuki YASHIMA, "Multi-view Video Coding based on 3-D Warping with Depth Map", In Proceedings of Picture Coding Symposium 2006, SS3-6, April, 2006.
【非特許文献３】Emin Martinian, Alexander Behrens, Jun Xin, Anthony  Vetro, and Huifang Sun, "EXTENSIONS OF H.264/AVC FOR MULTIVIEW VIDEO COMPRESSION", MERL Technical Report, TR2006-048, June, 2006.
【発明の概要】
【発明が解決しようとする課題】
【００１５】
非特許文献３に記載の方法によれば、一般的な動き補償予測処理を用いながら、ＤＰＢの管理部分のみを変更するだけで、視点合成画像における位置ズレを擬似的な動きとして扱い、その擬似的な動きの補償を行うことが可能となる。これにより、様々な要因によって視点合成画像に生じてしまう符号化対象画像との位置ずれを補償し、実画像に対する視点合成画像を用いた予測効率を向上させることができる。【００１６】
しかしながら、通常の参照画像と同様に視点合成画像を取り扱うため、符号化対象画像の一部分でしか視点合成画像が参照されない場合においても、一画像分の視点合成画像を生成する必要が生じ、処理量が増加してしまうという問題がある。【００１７】
符号化対象画像に対するデプスを用いることで、必要な領域に対してのみ視点合成画像を生成することも可能であるが、小数画素位置を示す擬似的な動きベクトルが与えられた場合、１つの小数画素に対する画素値を補間するためには、複数の整数画素に対する視点合成画像の画素値が必要となる。すなわち、予測対象の画素よりも多くの画素に対して視点合成画像を生成する必要が生じることになり、処理量が増加するという問題を解決することはできないという問題がある。【００１８】
本発明は、このような事情に鑑みてなされたもので、視点合成画像上で擬似的な動きを補償する際に、画像信号の予測効率が著しく低下することを抑えつつ、少ない演算量で視点合成画像に対する小数画素精度の擬似動き補償予測を実現することが可能な画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明は、複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化装置であって、前記符号化対象画像を分割した符号化対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、前記擬似動きベクトルによって示される前記デプスマップ上の前記領域をデプス領域として設定するデプス領域設定部と、前記デプスマップの整数画素位置のデプス情報を用いて、前記符号化対象領域内の整数画素位置の画素に対応する前記デプス領域内の整数または小数位置の画素に対して、参照領域デプスとなるデプス情報を生成する参照領域デプス生成部と、前記参照領域デプスと前記参照画像とを用いて、前記符号化対象領域に対する視点間予測画像を生成する視点間予測部とを備える。【００２０】
本発明は、複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、視点間で画像を予測しながら符号化を行う画像符号化装置であって、前記デプスマップに小数画素位置の画素に対するデプス情報を生成し小数画素精度デプスマップとする小数画素精度デプス情報生成部と、前記小数画素精度デプスマップと前記参照画像とを用いて、前記符号化対象画像の整数及び小数画素位置の画素に対する視点合成画像を生成する視点合成画像生成部と、前記符号化対象画像を分割した符号化対象領域に対して、前記視点合成画像上の領域を示す小数画素精度の擬似動きベクトルを設定する擬似動きベクトル設定部と、前記擬似動きベクトルによって示される前記視点合成画像上の前記領域に対する画像情報を視点間予測画像とする視点間予測部と、を備える。【００２１】
本発明は、複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化装置であって、前記符号化対象画像を分割した符号化対象領域に対して、前記符号化対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、前記符号化対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、参照領域デプスとして設定する参照領域デプス設定部と、前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記参照領域デプスであるとして、前記符号化対象領域に対する視点間予測画像を、前記参照画像を用いて生成する視点間予測部とを備える。【００２２】
本発明は、複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号装置であって、前記復号対象画像を分割した復号対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、前記擬似動きベクトルによって示される前記デプスマップ上の前記領域をデプス領域として設定するデプス領域設定部と、前記デプスマップの整数画素位置のデプス情報を用いて、前記復号対象領域内の整数画素位置の画素に対応する前記デプス領域内の整数または小数位置の画素に対して、復号対象領域デプスとなるデプス情報を生成する復号対象領域デプス生成部と、前記復号対象領域デプスと前記参照画像とを用いて、前記復号対象領域に対する視点間予測画像を生成する視点間予測部とを備える。【００２３】
好ましくは、本発明の画像復号装置において、前記視点間予測部は、前記復号対象領域デプスから得られる視差ベクトルを用いて、前記視点間予測画像を生成する。【００２４】
好ましくは、本発明の画像復号装置において、前記視点間予測部は、前記復号対象領域デプスから得られる視差ベクトルと前記擬似動きベクトルを用いて、前記視点間予測画像を生成する。【００２５】
好ましくは、本発明の画像復号装置において、前記視点間予測部は、前記復号対象領域を分割した予測領域ごとに、前記復号対象領域デプス上で当該予測領域に対応する領域内のデプス情報を用いて、前記参照画像に対する視差ベクトルを設定し、当該視差ベクトルと前記参照画像とを用いて視差補償画像を生成することにより前記復号対象領域に対する前記視点間予測画像を生成する。【００２６】
好ましくは、本発明の画像復号装置は、前記視差ベクトルを蓄積する視差ベクトル蓄積部と、前記蓄積された視差ベクトルを用いて、前記復号対象領域に隣接する領域における予測視差情報を生成する視差予測部とを更に有する。【００２７】
好ましくは、本発明の画像復号装置は、前記視差ベクトルを補正するベクトルである補正視差ベクトルを設定する補正視差ベクトル部をさらに有し、前記視点間予測部は、前記視差ベクトルを前記補正視差ベクトルで補正したベクトルと、前記参照画像とを用いて視差補償画像を生成することにより前記視点間予測画像を生成する。【００２８】
好ましくは、本発明の画像復号装置は、前記補正視差ベクトルを蓄積する補正視差ベクトル蓄積部と、前記蓄積された補正視差ベクトルを用いて、前記復号対象領域に隣接する領域における予測視差情報を生成する視差予測部とを更に有する。【００２９】
好ましくは、本発明の画像復号装置において、前記復号対象領域デプス生成部は、前記デプス領域内の小数画素位置の画素に対するデプス情報を、周辺の整数画素位置の画素に対するデプス情報とする。【００３０】
本発明は、複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号装置であって、前記復号対象画像を分割した復号対象領域に対して、前記復号対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定部と、前記復号対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、復号対象領域デプスとして設定する復号対象領域デプス設定部と、前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記復号対象領域デプスであるとして、前記復号対象領域に対する視点間予測画像を、前記参照画像を用いて生成する視点間予測部とを備える。【００３１】
好ましくは、本発明の画像復号装置において、前記視点間予測部は、前記復号対象領域を分割した予測領域ごとに、前記復号対象領域デプス上で当該予測領域に対応する領域内のデプス情報を用いて、前記参照画像に対する視差ベクトルを設定し、前記擬似動きベクトルと当該視差ベクトルと前記参照画像とを用いて視差補償画像を生成することにより前記復号対象領域に対する前記視点間予測画像を生成する。【００３２】
好ましくは、本発明の画像復号装置は、前記視差ベクトルと前記擬似動きベクトルとを用いて表される前記復号対象領域における前記参照画像に対する参照ベクトルを蓄積する参照ベクトル蓄積部と、前記蓄積された参照ベクトルを用いて、前記復号対象領域に隣接する領域における予測視差情報を生成する視差予測部とを更に有する。【００３３】
本発明は、複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化方法であって、前記符号化対象画像を分割した符号化対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、前記擬似動きベクトルによって示される前記デプスマップ上の前記領域をデプス領域として設定するデプス領域設定ステップと、前記デプスマップの整数画素位置のデプス情報を用いて、前記符号化対象領域内の整数画素位置の画素に対応する前記デプス領域内の整数または小数位置の画素に対して、参照領域デプスとなるデプス情報を生成する参照領域デプス生成ステップと、前記参照領域デプスと前記参照画像とを用いて、前記符号化対象領域に対する視点間予測画像を生成する視点間予測ステップとを有する。【００３４】
本発明は、複数の異なる視点の画像からなる多視点画像を符号化する際に、符号化対象画像とは異なる視点に対する符号化済みの参照画像と、前記符号化対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら符号化を行う画像符号化方法であって、前記符号化対象画像を分割した符号化対象領域に対して、前記符号化対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、前記符号化対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、参照領域デプスとして設定する参照領域デプス設定ステップと、前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記参照領域デプスであるとして、前記符号化対象領域に対する視点間予測画像を、前記参照画像を用いて生成する視点間予測ステップとを有する。【００３５】
本発明は、複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号方法であって、前記復号対象画像を分割した復号対象領域に対して、前記デプスマップ上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、前記擬似動きベクトルによって示される前記デプスマップ上の前記領域をデプス領域として設定するデプス領域設定ステップと、前記デプスマップの整数画素位置のデプス情報を用いて、前記復号対象領域内の整数画素位置の画素に対応する前記デプス領域内の整数または小数位置の画素に対して、復号対象領域デプスとなるデプス情報を生成する復号対象領域デプス生成ステップと、前記復号対象領域デプスと前記参照画像とを用いて、前記復号対象領域に対する視点間予測画像を生成する視点間予測ステップとを有する。【００３６】
本発明は、複数の異なる視点の画像からなる多視点画像の符号データから、復号対象画像を復号する際に、前記復号対象画像とは異なる視点に対する復号済みの参照画像と、前記復号対象画像に対するデプスマップとを用いて、異なる視点間で画像を予測しながら復号を行う画像復号方法であって、前記復号対象画像を分割した復号対象領域に対して、前記復号対象画像上の領域を示す擬似動きベクトルを設定する擬似動きベクトル設定ステップと、前記復号対象領域内の画素に対応する前記デプスマップ上の画素に対するデプス情報を、復号対象領域デプスとして設定する復号対象領域デプス設定ステップと、前記擬似動きベクトルによって示される前記領域に対して、当該領域のデプスが前記復号対象領域デプスであるとして、前記復号対象領域に対する視点間予測画像を、前記参照画像を用いて生成する視点間予測ステップとを有する。【００３７】
本発明は、コンピュータに、前記画像符号化方法を実行させるための画像符号化プログラムである。【００３８】
本発明は、コンピュータに、前記画像復号方法を実行させるための画像復号プログラムである。
【発明の効果】
【００３９】
本発明によれば、視点合成画像に対する小数画素精度の動き補償予測を行う際に、指定された小数画素位置にあわせて、視点合成画像を生成する際の画素位置やデプスを変更することで、予測対象画素数以上の画素について視点合成画像を生成する処理を省き、少ない演算量で視点合成画像を生成することができるという効果が得られる。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施形態における画像符号化装置の構成を示すブロック図である。
【図２】図１に示す画像符号化装置１００の動作を示すフローチャートである。
【図３】図１に示す画像符号化装置１００の変形例を示すブロック図である。
【図４】図２に示すカメラ間予測画像を生成する処理の処理動作を示すフローチャートである。
【図５】本発明の実施形態における画像復号装置の構成を示すブロック図である。
【図６】図５に示す画像復号装置２００の動作を示すフローチャートである。
【図７】図５に示す画像復号装置２００の変形例を示すブロック図である。
【図８】画像符号化装置１００をコンピュータとソフトウェアプログラムとによって構成する場合のハードウェア構成を示すブロック図である。
【図９】画像復号装置２００をコンピュータとソフトウェアプログラムとによって構成する場合のハードウェア構成を示すブロック図である。
【図１０】カメラ間で生じる視差を示す概念図である。
【図１１】エピポーラ幾何拘束の概念図である。
【発明を実施するための形態】
【００４１】
以下、図面を参照して、本発明の実施形態による画像符号化装置及び画像復号装置を説明する。以下の説明においては、第１のカメラ（カメラＡという）、第２のカメラ（カメラＢという）の２つのカメラで撮影された多視点画像を符号化する場合を想定し、カメラＡの画像を参照画像としてカメラＢの画像を符号化または復号するものとして説明する。なお、デプス情報から視差を得るために必要となる情報は別途与えられているものとする。具体的には、この情報は、カメラＡとカメラＢの位置関係を表す外部パラメータや、カメラによる画像平面への投影情報を表す内部パラメータであるが、これら以外の形態であってもデプス情報から視差が得られるものであれば、別の情報が与えられていてもよい。これらのカメラパラメータに関する詳しい説明は、例えば、文献「Oliver Faugeras, "Three-Dimension Computer Vision", pp. 33-66, MIT Press; BCTC/UFF-006.37 F259 1993, ISBN:0-262-06158-9.」に記載されている。この文献には、複数のカメラの位置関係を示すパラメータや、カメラによる画像平面への投影情報を表すパラメータに関する説明が記載されている。
【００４２】
以下の説明では、画像や映像フレーム、デプスマップに対して、記号［］で挟まれた位置を特定可能な情報（座標値もしくは座標値に対応付け可能なインデックス）を付加することで、その位置の画素によってサンプリングされた画像信号や、それに対するデプスを示すものとする。また、座標値やブロックに対応付け可能なインデックス値とベクトルの加算によって、その座標やブロックをベクトルの分だけずらした位置の座標値やブロックを表すものとする。さらに、ある領域ａに対する視差または擬似動きベクトルがｖｅｃであるとき、領域ａに対応する領域はａ＋ｖｅｃで表現されるものとする。
【００４３】
図１は本実施形態における画像符号化装置の構成を示すブロック図である。画像符号化装置１００は、図１に示すように、符号化対象画像入力部１０１、符号化対象画像メモリ１０２、参照画像入力部１０３、参照画像メモリ１０４、デプスマップ入力部１０５、デプスマップメモリ１０６、擬似動きベクトル設定部１０７、参照領域デプス生成部１０８、カメラ間予測画像生成部１０９及び画像符号化部１１０を備えている。
【００４４】
符号化対象画像入力部１０１は、符号化対象となる画像を入力する。以下では、この符号化対象となる画像を符号化対象画像と称する。ここではカメラＢの画像を入力するものとする。また、符号化対象画像を撮影したカメラ（ここではカメラＢ）を符号化対象カメラと称する。符号化対象画像メモリ１０２は、入力した符号化対象画像を記憶する。参照画像入力部１０３は、カメラ間予測画像（視点合成画像、視差補償画像）を生成する際に参照する画像を入力する。以下では、ここで入力された画像を参照画像と呼ぶ。ここではカメラＡの画像を入力するものとする。参照画像メモリ１０４は、入力された参照画像を記憶する。以下では、参照画像を撮影したカメラ（ここではカメラＡ）を参照カメラと称する。
【００４５】
デプスマップ入力部１０５は、カメラ間予測画像を生成する際に参照するデプスマップを入力する。ここでは符号化対象画像に対するデプスマップを入力する。なお、デプスマップとは対応する画像の各画素に写っている被写体の３次元位置を表すものである。別途与えられるカメラパラメータ等の情報によって３次元位置が得られるものであれば、デプスマップはどのような情報でもよい。例えば、カメラから被写体までの距離や、画像平面とは平行ではない軸に対する座標値、別のカメラ（例えばカメラＡ）に対する視差量を用いることができる。また、ここでは視差量が得られれば構わないので、デプスマップではなく、視差量を直接表現した視差マップを用いても構わない。なお、ここではデプスマップとして画像の形態で渡されるものとしているが、同様の情報が得られるのであれば、画像の形態でなくても構わない。デプスマップメモリ１０６は、入力されたデプスマップを記憶する。
【００４６】
擬似動きベクトル設定部１０７は、符号化対象画像を分割したブロックごとに、デプスマップ上での擬似動きベクトルを設定する。参照領域デプス生成部１０８は、デプスマップと擬似動きベクトルとを用いて、符号化対象画像を分割したブロックごとに、カメラ間予測画像を生成する際に用いるデプス情報であるところの参照領域デプスを生成する。カメラ間予測画像生成部１０９は、参照領域デプスを用いて、符号化対象画像の画素と参照画像の画素との対応関係を求め、符号化対象画像に対するカメラ間予測画像を生成する。画像符号化部１１０は、カメラ間予測画像を用いて、符号化対象画像の予測符号化を行い、ビットストリームを出力する。
【００４７】
次に、図２を参照して、図１に示す画像符号化装置１００の動作を説明する。図２は、図１に示す画像符号化装置１００の動作を示すフローチャートである。まず、符号化対象画像入力部１０１は、符号化対象画像を入力し、符号化対象画像メモリ１０２に記憶する（ステップＳ１１）。次に、参照画像入力部１０３は参照画像を入力し、参照画像メモリ１０４に記憶する。これと並行して、デプスマップ入力部１０５はデプスマップを入力し、デプスマップメモリ１０６に記憶する（ステップＳ１２）。
【００４８】
なお、ステップＳ１２で入力される参照画像とデプスマップは、既に符号化済みのものを復号したものなど、復号側で得られるものと同じものとする。これは復号装置で得られるものと全く同じ情報を用いることで、ドリフト等の符号化ノイズの発生を抑えるためである。ただし、そのような符号化ノイズの発生を許容する場合には、符号化前のものなど、符号化側でしか得られないものが入力されてもよい。デプスマップに関しては、既に符号化済みのものを復号したもの以外に、複数のカメラに対して復号された多視点画像に対してステレオマッチング等を適用することで推定したデプスマップや、復号された視差ベクトルや動きベクトルなどを用いて推定されるデプスマップなども、復号側で同じものが得られるものとして用いることができる。
【００４９】
次に、画像符号化装置１００は、符号化対象画像を分割したブロックごとに、カメラ間予測画像を作りながら、符号化対象画像を符号化する。すなわち、符号化対象画像を分割したブロックのインデックスを示す変数ｂｌｋを０に初期化した後（ステップＳ１３）、ｂｌｋに１ずつ加算しながら（ステップＳ１７）、ｂｌｋがｎｕｍＢｌｋｓになるまで（ステップＳ１８）、以下の処理（ステップＳ１４〜ステップＳ１６）を繰り返す。なお、ｎｕｍＢｌｋｓは符号化対象画像中の符号化処理を行う単位ブロックの個数を表す。
【００５０】
符号化対象画像のブロックごとに行われる処理では、まず、擬似動きベクトル設定部１０７において、デプスマップ上でのブロックｂｌｋの擬似的な動きを表す擬似動きベクトルｍｖを設定する（ステップＳ１４）。擬似的な動きとは、エピポーラ幾何に従ってデプス情報を用いて対応点を求めた際に生じる位置ずれ（誤差）を指す。ここでは、どのような方法を用いて擬似動きベクトルを設定しても構わないが、復号側で同じ擬似動きベクトルが得られる必要がある。
【００５１】
例えば、位置ずれ等を推定することで任意のベクトルを擬似動きベクトルとして設定し、設定した擬似動きベクトルを符号化することで復号側へ通知しても構わない。この場合、図３に示すように、画像符号化装置１００は擬似動きベクトル符号化部１１１と多重化部１１２とを更に備えればよい。図３は、図１に示す画像符号化装置１００の変形例を示すブロック図である。擬似動きベクトル符号化部１１１は、擬似動きベクトル設定部１０７の設定した擬似動きベクトルを符号化する。多重化部１１２は、擬似動きベクトルのビットストリームと、符号化対象画像のビットストリームとを多重化して出力する。
【００５２】
なお、ブロックごとに擬似動きベクトルを設定して符号化するのではなく、フレームやスライスなどのブロックよりも大きな単位ごとにグローバルな擬似動きベクトルを設定し、そのフレームやスライス内のブロックでは、設定されたグローバル擬似動きベクトルをそのブロックに対する擬似動きベクトルとして用いても構わない。この場合、ブロックごとに行われる処理の前に、グローバル擬似動きベクトルを設定し、ブロックごとに擬似動きベクトルを設定するステップ（ステップＳ１４）をスキップする。
【００５３】
どのようなベクトルが擬似動きベクトルとして設定されても構わないが、高い符号化効率を達成するためには、設定した擬似動きベクトルを用いて後の処理で生成されるカメラ間予測画像と符号化対象画像との誤差が小さくなるように設定する必要がある。また、設定した擬似動きベクトルを符号化する場合は、カメラ間予測画像と符号化対象画像との誤差と、擬似動きベクトルの符号量から算出されるレート歪みコストが最小になるようなベクトルを擬似動きベクトルとして設定しても構わない。
【００５４】
図２に戻り、次に、参照領域デプス生成部１０８及びカメラ間予測画像生成部１０９において、ブロックｂｌｋに対するカメラ間予測画像を生成する（ステップＳ１５）。ここでの処理は後で詳しく説明する。
【００５５】
カメラ間予測画像を得たら、次に、画像符号化部１１０は、カメラ間予測画像を予測画像として、符号化対象画像を予測符号化して出力する（ステップＳ１６）。符号化の結果得られるビットストリームが画像符号化装置１００の出力となる。なお、復号側で正しく復号可能であるならば、符号化にはどのような方法を用いてもよい。
【００５６】
ＭＰＥＧ−２やＨ．２６４、ＪＰＥＧなどの一般的な動画像符号化または画像符号化では、ブロックごとに、符号化対象画像と予測画像との差分信号を生成し、差分画像に対してＤＣＴ（離散コサイン変換）などの周波数変換を施し、その結果得られた値に対して、量子化、２値化、エントロピー符号化の処理を順に適用することで符号化を行う。
【００５７】
なお、本実施形態では、全てのブロックにおいてカメラ間予測画像を予測画像として用いたが、ブロックごとに異なる方法で生成された画像を予測画像として用いても構わない。その場合、どの方法で生成された画像を予測画像として用いたかを、復号側で判別できる必要がある。例えば、Ｈ．２６４のように、予測画像を生成する方法（モードやベクトル情報など）を示した情報を符号化し、ビットストリームに含めることで、復号側で判断できるようにしても構わない。
【００５８】
次に、図４を参照して、図１に示す参照領域デプス生成部１０８及びカメラ間予測画像生成部１０９の処理動作を説明する。図４は、図２に示すブロックｂｌｋに対するカメラ間予測画像を生成する処理（ステップＳ１５）の処理動作を示すフローチャートである。ここでの処理は、ブロックを更に分割したサブブロックごとに行われる。すなわち、サブブロックのインデックスを示す変数ｓｂｌｋを０に初期化した後（ステップＳ１５０１）、ｓｂｌｋに１ずつ加算しながら（ステップＳ１５０５）、ｓｂｌｋがｎｕｍＳＢｌｋｓになるまで（ステップＳ１５０６）、以下の処理（ステップＳ１５０２〜Ｓ１５０４）を繰り返す。ここで、ｎｕｍＳＢｌｋｓはブロックｂｌｋ内のサブブロックの個数を表す。
【００５９】
なお、サブブロックの大きさや形状にはどのようなものを用いても構わないが、復号側で同じサブブロック分割が得られる必要がある。例えば、各サブブロックが、縦×横で、２画素×２画素、４画素×４画素、８画素×８画素などとなるように、予め定められた分割を用いても構わない。なお、予め定められた分割としては、１画素×１画素（すなわち画素ごと）や、ブロックｂｌｋと同じサイズ（すなわち分割を行わない）を用いても構わない。
【００６０】
復号側と同じサブブロック分割を用いる別の方法として、サブブロック分割の方法を符号化することで復号側へ通知しても構わない。この場合、サブブロック分割の方法に対するビットストリームは、符号化対象画像のビットストリームと多重化され、画像符号化装置１００の出力するビットストリームの一部となる。なお、サブブロック分割の方法を選択する場合は、１つのサブブロックに含まれる画素が参照画像に対してできるだけ同じ視差を持ち、できるだけ少ない数のサブブロックに分割するような方法を選ぶことで、後述するカメラ間予測画像の生成処理によって、高品質な予測画像を少ない処理量で生成することが可能となる。また、この場合、復号側ではビットストリームからサブブロック分割を示す情報を復号し、復号された情報に基づいた方法にしたがってサブブロック分割を行う。
【００６１】
更に別の方法として、ステップＳ１４で設定された擬似動きベクトルｍｖによって示されるデプスマップ上のブロックｂｌｋ＋ｍｖに対するデプスからサブブロック分割を決定しても構わない。例えば、デプスマップのブロックｂｌｋ＋ｍｖのデプスをクラスタリングすることでサブブロック分割を求めることができる。また、クラスタリングを行うのではなく、予め定められた分割の種類の中から、最も正しくデプスが分類される分割を選択するようにしても構わない。予め定められた分割以外を用いる場合は、ステップＳ１５０１に先だって、サブブロック分割を決定する処理を行い、そのサブブロック分割に従ってｎｕｍＳＢｌｋｓを設定する必要がある。
【００６２】
サブブロックごとに行われる処理では、まず、デプスマップと擬似動きベクトルｍｖとを用いて、サブブロックｓｂｌｋに対して１つのデプス値を設定する（ステップＳ１５０２）。具体的には、サブブロックｓｂｌｋ内の画素群に対応するデプスマップ上の画素群を求め、それらの画素群に対するデプス値を用いて１つのデプス値を決定して設定する。なお、サブブロック内の画素ｐに対するデプスマップ上の画素はｐ＋ｍｖで与えられる。
【００６３】
サブブロック内の画素群に対するデプス値から、１つのデプス値を決定する方法にはどのような方法を用いても構わない。ただし、復号側と同じ方法を用いることが必要である。例えば、サブブロック内の画素群に対するデプス値の平均値・最大値・最小値・中央値のいずれかを用いても構わない。また、サブブロックの４頂点の画素に対するデプス値の平均値・最大値・最小値・中央値のいずれかを用いても構わない。更に、サブブロックの特定の場所（左上や中央など）におけるデプス値を用いても構わない。サブブロック内の一部の画素に対するデプス値しか使用しない場合は、その他の画素に対するデプスマップ上の画素やデプス値を求めなくても構わない。
【００６４】
なお、擬似動きベクトルｍｖが小数画素を示す場合、デプスマップ上の対応画素ｐ＋ｍｖは小数画素位置となるため、デプスマップのデータには対応するデプス値が存在しない。この場合、ｐ＋ｍｖの周辺の整数画素に対するデプス値を用いた補間処理によって、デプス値を生成しても構わない。また、補間するのではなく、ｐ＋ｍｖを整数画素位置へ丸めることで、周辺の整数画素位置の画素に対するデプス値をそのまま用いても構わない。
【００６５】
サブブロックｓｂｌｋに対してデプス値が得られたら、次に、そのデプス値に対応する参照画像と符号化対象画像との視差ベクトルｄｖを求める（ステップＳ１５０３）。デプス値から視差ベクトルへの変換は与えられたデプス及びカメラパラメータの定義に従って行う。例えば、（１）式で画像上の画素と三次元点との関係が定義される場合、視差ベクトルｄｖは（２）式で表される。
【数１】
0006053200.tif 000002
【数２】
0006053200.tif 000003
【００６６】
なお、ｍは画素の２次元座標値を表す列ベクトル、ｇは対応する三次元点の座標値を表す列ベクトル、ｄはカメラから被写体までの距離を表すデプス値、Ａはカメラの内部パラメータと呼ばれる３×３行列、Ｒはカメラの外部パラメータの１つで回転を表す３×３行列、ｔはカメラの外部パラメータの１つで並進を表す３次元列ベクトルを表す。また、［Ｒ｜ｔ］はＲとｔを並べた３×４行列を表す。また、カメラパラメータＡ，Ｒ，ｔの添え字はカメラを示し、ｒは参照カメラを表し、ｃは符号化対象カメラを表す。また、ｑは符号化対象画像上の座標値、ｄｑはステップＳ１５０２で求めたデプス値に対応する符号化対象カメラから被写体までの距離、ｓは数式を満たすスカラー量を表す。
【００６７】
なお、（２）式のように、視差ベクトルを求めるにあたって、符号化対象画像上の座標値ｑが必要になる場合がある。このとき、ｑとして、サブブロックｓｂｌｋの座標値を用いても構わないし、擬似動きベクトルｍｖによってサブブロックｓｂｌｋが対応するブロックの座標値を用いても構わない。なお、ブロックに対する座標値は、ブロックの左上や中央など、予め定められた位置の座標値を用いることができる。すなわち、サブブロックｓｂｌｋの座標値をｐｏｓとすると、ｑとしてｐｏｓを用いても構わないし、ｐｏｓ＋ｍｖを用いても構わない。
【００６８】
また、カメラ配置が一次元平行の場合、サブブロックの位置によらず、視差の向きはカメラの配置に依存し、視差量はデプス値に依存するため、予め作成したルックアップテーブルを参照することで、デプス値から視差ベクトルを求めることができる。
【００６９】
次に、得られた視差ベクトルｄｖと参照画像とを用いて、サブブロックｓｂｌｋに対する視差補償画像を生成する（ステップＳ１５０４）。ここでの処理は、与えられたベクトルと参照画像とを用いるだけで、従来の視差補償予測や擬似動き補償予測と同様の方法を用いることができる。ここで、サブブロックｓｂｌｋの参照画像に対する視差ベクトルをｄｖとしても構わないし、ｄｖ＋ｍｖとしても構わない。
【００７０】
ステップＳ１５０３において符号化対象画像上の座標値としてサブブロックの位置を用い、ステップＳ１５０４においてサブブロックの参照画像に対する視差ベクトルとしてｄｖを用いる場合は、擬似動きベクトルｍｖによって示されたデプスをサブブロックが持つとしてカメラ間予測を行うことに相当する。すなわち、符号化対象画像とデプスマップとの間に、ズレが生じている場合に、そのズレを補償したカメラ間予測を実現することが可能となる。
【００７１】
また、ステップＳ１５０３において符号化対象画像上の座標値として擬似動きベクトルｍｖによってサブブロックが対応する位置を用い、ステップＳ１５０４においてサブブロックの参照画像に対する視差ベクトルとしてｄｖ＋ｍｖを用いる場合は、擬似動きベクトルｍｖによって示された領域がデプスによって対応する参照画像上の領域と、サブブロックとが対応するとしてカメラ間予測を行うことに相当する。すなわち、符号化対象画像とデプスマップとの間に位置ズレがないとして生成した場合のカメラ間予測画像において、投影モデル誤差など様々な要因によって、擬似動きベクトルｍｖ分だけ生じたズレを補償して予測を行うことが可能となる。
【００７２】
なお、符号化対象画像とデプスマップとの間に位置ズレがないとして、符号化対象画像の全ての画素に対してカメラ間予測画像を生成した後に、投影モデル誤差など様々な要因によって生じたズレを補償する従来手法と比べて、本実施形態では、最終的な予測画像を１画素分生成するのにあたり、生成しなければならないカメラ間予測画像の画素数を減らすことが可能となる。具体的には、小数画素分だけズレが生じている場合、従来手法では、ズレを補償した位置の小数画素に対して予測画像を生成するために、その周辺の複数の整数画素に対してカメラ間予測画像を生成する必要が生じる。一方、本実施形態によって、ズレを補償した位置の小数画素に対するカメラ間予測画像を直接生成することが可能となる。
【００７３】
さらに、ステップＳ１５０３において符号化対象画像上の座標値として擬似動きベクトルｍｖによってサブブロックが対応する位置を用い、ステップＳ１５０４においてサブブロックの参照画像に対する視差ベクトルとしてｄｖを用いる場合は、サブブロックにおける視差ベクトルが、擬似動きベクトルｍｖによって示された領域における視差ベクトルと等しいとしてカメラ間予測を行うことに相当する。すなわち、単一オブジェクト内でデプスマップに生じた誤差を補償してカメラ間予測を行うことが可能となる。
【００７４】
また、ステップＳ１５０３において符号化対象画像上の座標値としてサブブロックの位置を用い、ステップＳ１５０４においてサブブロックの参照画像に対する視差ベクトルとしてｄｖ＋ｍｖを用いる場合は、サブブロックにおける視差ベクトルが、擬似動きベクトルｍｖによって示された領域における視差ベクトルと等しく、擬似動きベクトルｍｖによって示された領域の対応する参照画像上の領域と、サブブロックとが対応するとしてカメラ間予測を行うことに相当する。すなわち、単一オブジェクト内でデプスマップに生じた誤差と、投影モデル誤差など様々な要因によって生じるズレを補償して予測を行うことが可能となる。
【００７５】
ステップＳ１５０３とステップＳ１５０４とで実現される処理は、サブブロックｓｂｌｋに対して１つのデプス値が与えられた際に、カメラ間予測画像を生成する処理の１実施形態である。本発明では、サブブロックに対して与えられた１つのデプス値からカメラ間予測画像を生成できれば、別の方法を用いても構わない。例えば、サブブロックが１つのデプス平面に属すると仮定することで、参照画像上の対応領域（サブブロックと同じ形状や大きさである必要はない）を同定し、その対応領域に対する参照画像をワーピングすることでカメラ間予測画像を生成しても構わない。また、サブブロックを擬似動きベクトルの分だけずらしたブロックの参照画像上の対応領域に対する画像を、サブブロックに対してワーピングすることでカメラ間予測画像を生成しても構わない。
【００７６】
また、カメラの投影モデルのモデル化、多視点画像の平行化（レクティフィケーション）、カメラパラメータの推定などで生じる誤差や、デプス値の誤差を、更に詳細に補正するために、上記視差ベクトルに加えて、参照画像上での補正ベクトルｃｖを用いても構わない。その場合、ステップＳ１５０４では、視差ベクトルｄｖの代わりにｄｖ＋ｃｖを用いる。なお、どのようなベクトルを補正ベクトルとしても構わないが、効率的な補正ベクトルの設定には、符号化対象領域におけるカメラ間予測画像と符号化対象画像の誤差や、符号化対象領域におけるレート歪みコストの最小化を用いることができる。
【００７７】
補正ベクトルは復号側で同じものが得られれば、任意のベクトルを用いても構わない。例えば、任意のベクトルを設定し、そのベクトルを符号化することで復号側へ通知しても構わない。ベクトルを符号化して伝送する場合は、サブブロックｓｂｌｋごとに符号化して伝送しても構わないが、ブロックｂｌｋごとに一つの補正ベクトルを設定することで、その符号化で必要となる符号量を抑えることができる。
【００７８】
なお、補正ベクトルが符号化されている場合は、復号側ではビットストリームから適切なタイミング（サブブロック毎やブロック毎）でベクトルを復号し、復号したベクトルを補正ベクトルとして使用する。
【００７９】
ブロックやサブブロックごとに、使用したカメラ間予測画像に関する情報を蓄積する場合、デプスを用いた視点合成画像を参照したことを示す情報を蓄積しても構わないし、実際にカメラ間予測画像を生成する際に使用した情報を蓄積しても構わない。なお、蓄積された情報は、別のブロックや別のフレームを符号化または復号する際に参照される。例えば、あるブロックに対するベクトル情報（視差補償予測に用いるベクトルなど）を符号化または復号する際に、そのブロック周辺の既に符号化済みのブロックについて蓄積されているベクトル情報から、予測ベクトル情報を生成して、予測ベクトル情報との差分のみ符号化または復号しても構わない。
【００８０】
デプスを用いた視点合成画像を参照したことを示す情報としては、対応する予測モード情報を蓄積しても構わないし、予測モードとしてはフレーム間予測モードに対応する情報を蓄積し、その際の参照フレームとして視点合成画像に対応する参照フレーム情報を蓄積しても構わない。また、ベクトル情報として、擬似動きベクトルｍｖを蓄積しても構わないし、擬似動きベクトルｍｖと補正ベクトルｃｖとを蓄積しても構わない。
【００８１】
実際にカメラ間予測画像を生成する際に使用した情報としては、予測モードとしてはフレーム間予測モードに対応する情報を蓄積し、その際の参照フレームとして参照画像を蓄積しても構わない。また、ベクトル情報としては、サブブロックごとに、視差ベクトルｄｖまたは補正された視差ベクトルｄｖ＋ｃｖを蓄積しても構わない。なお、ワーピング等を用いた場合など、サブブロック内で２つ以上の視差ベクトルが使用されている場合がある。その場合は、全ての視差ベクトルを蓄積しても構わないし、予め定められた方法で、サブブロックごとに１つの視差ベクトルを選択して蓄積しても構わない。１つの視差ベクトルを選択する方法としては、例えば、視差量が最大の視差ベクトルとする方法や、サブブロックの特定の位置（左上など）における視差ベクトルとする方法などがある。
【００８２】
次に、画像復号装置について説明する。図５は、本実施形態における画像復号装置の構成を示すブロック図である。画像復号装置２００は、図５に示すように、ビットストリーム入力部２０１、ビットストリームメモリ２０２、参照画像入力部２０３、参照画像メモリ２０４、デプスマップ入力部２０５、デプスマップメモリ２０６、擬似動きベクトル設定部２０７、参照領域デプス生成部２０８、カメラ間予測画像生成部２０９、及び画像復号部２１０を備えている。
【００８３】
ビットストリーム入力部２０１は、復号対象となる画像に対するビットストリームを入力する。以下では、この復号対象となる画像を復号対象画像と呼ぶ。ここではカメラＢの画像を指す。また、以下では、復号対象画像を撮影したカメラ（ここではカメラＢ）を復号対象カメラと呼ぶ。ビットストリームメモリ２０２は、入力した復号対象画像に対するビットストリームを記憶する。参照画像入力部２０３は、カメラ間予測画像（視点合成画像、視差補償画像）を生成する際に参照する画像を入力する。以下では、ここで入力された画像を参照画像と呼ぶ。ここではカメラＡの画像が入力されるものとする。参照画像メモリ２０４は、入力した参照画像を記憶する。以下では、参照画像を撮影したカメラ（ここではカメラＡ）を参照カメラと称する。
【００８４】
デプスマップ入力部２０５は、カメラ間予測画像を生成する際に参照するデプスマップを入力する。ここでは、復号対象画像に対するデプスマップを入力するものとする。なお、デプスマップとは対応する画像の各画素に写っている被写体の３次元位置を表すものである。別途与えられるカメラパラメータ等の情報によって３次元位置が得られるものであれば、デプスマップはどのような情報でもよい。例えば、カメラから被写体までの距離や、画像平面とは平行ではない軸に対する座標値、別のカメラ（例えばカメラＡ）に対する視差量を用いることができる。また、ここでは視差量が得られれば構わないので、デプスマップではなく、視差量を直接表現した視差マップを用いても構わない。なお、ここではデプスマップとして画像の形態で渡されるものとしているが、同様の情報が得られるのであれば、画像の形態でなくても構わない。デプスマップメモリ２０６は、入力されたデプスマップを記憶する。
【００８５】
擬似動きベクトル設定部２０７は、復号対象画像を分割したブロックごとに、デプスマップ上での擬似動きベクトルを設定する。参照領域デプス生成部２０８は、デプスマップと擬似動きベクトルとを用いて、復号対象画像を分割したブロックごとに、カメラ間予測画像を生成する際に用いるデプス情報であるところの参照領域デプスを生成する。カメラ間予測画像生成部２０９は、参照領域デプスを用いて、復号対象画像の画素と参照画像の画素との対応関係を求め、復号対象画像に対するカメラ間予測画像を生成する。画像復号部２１０は、カメラ間予測画像を用いて、ビットストリームから復号対象画像を復号して復号画像を出力する。
【００８６】
次に、図６を参照して、図５に示す画像復号装置２００の動作を説明する。図６は、図５に示す画像復号装置２００の動作を示すフローチャートである。まず、ビットストリーム入力部２０１は、復号対象画像を符号化したビットストリームを入力し、ビットストリームメモリ２０２に記憶する（ステップＳ２１）。これと並行して、参照画像入力部２０３は参照画像を入力し、参照画像メモリ２０４に記憶する。また、デプスマップ入力部２０５はデプスマップを入力し、デプスマップメモリ２０６に記憶する（ステップＳ２２）。
【００８７】
なお、ステップＳ２２で入力される参照画像とデプスマップは、符号化側で使用されたものと同じものとする。これは符号化装置で使用したものと全く同じ情報を用いることで、ドリフト等の符号化ノイズの発生を抑えるためである。ただし、そのような符号化ノイズの発生を許容する場合には、符号化時に使用されたものと異なるものが入力されてもよい。デプスマップに関しては、別途復号したもの以外に、複数のカメラに対して復号された多視点画像に対してステレオマッチング等を適用することで推定したデプスマップや、復号された視差ベクトルや擬似動きベクトルなどを用いて推定されるデプスマップなどを用いることもある。
【００８８】
次に、画像復号装置２００は、復号対象画像を分割したブロックごとに、カメラ間予測画像を作りながら、ビットストリームから復号対象画像を復号する。すなわち、復号対象画像を分割したブロックのインデックスを示す変数ｂｌｋを０に初期化した後（ステップＳ２３）、ｂｌｋに１ずつ加算しながら（ステップＳ２７）、ｂｌｋがｎｕｍＢｌｋｓになるまで（ステップＳ２８）、以下の処理（ステップＳ２４〜ステップＳ２６）を繰り返す。なお、ｎｕｍＢｌｋｓは復号対象画像中の復号処理を行う単位ブロックの個数を表す。
【００８９】
復号対象画像のブロックごとに行われる処理では、まず、擬似動きベクトル設定部２０７において、デプスマップ上でのブロックｂｌｋの擬似的な動きを表す擬似動きベクトルｍｖを設定する（ステップＳ２４）。擬似的な動きとは、エピポーラ幾何に従ってデプス情報を用いて対応点を求めた際に生じる位置ずれ（誤差）を指す。ここでは、どのような方法を用いて擬似動きベクトルを設定しても構わないが、符号化側で用いられた擬似動きベクトルと同じものが得られる必要がある。
【００９０】
例えば、符号化時に使用した擬似動きベクトルがビットストリームに多重化されている場合、そのベクトルを復号して、擬似動きベクトルｍｖとして設定しても構わない。この場合、図７に示すように、画像復号装置２００は、擬似動きベクトル設定部２０７の代わりに、ビットストリーム分離部２１１と擬似動きベクトル復号部２１２を備えればよい。図７は、図５に示す画像復号装置２００の変形例を示すブロック図である。ビットストリーム分離部２１１は、入力されたビットストリームから擬似動きベクトルに対するビットストリームと、復号対象画像に対するビットストリームを分離して出力する。擬似動きベクトル復号部２１２は擬似動きベクトルに対するビットストリームから、符号化時に使用された擬似動きベクトルを復号して、復号した擬似動きベクトルを参照領域デプス生成部２０８に通知する。
【００９１】
なお、ブロックごとに擬似動きベクトルを設定するのではなく、フレームやスライスなどのブロックよりも大きな単位ごとにグローバルな擬似動きベクトルを設定し、そのフレームやスライス内のブロックでは、設定されたグローバル擬似動きベクトルをそのブロックに対する擬似動きベクトルとして用いても構わない。この場合、ブロックごとに行われる処理の前に、グローバル擬似動きベクトルを設定し、ブロックごとに擬似動きベクトルを設定するステップ（ステップＳ２４）をスキップする。
【００９２】
次に参照領域デプス生成部２０８及びカメラ間予測画像生成部２０９において、ブロックｂｌｋに対するカメラ間予測画像を生成する（ステップＳ２５）。ここでの処理は前述の図２に示すステップＳ１５と同じであるので、詳細な説明を省略する。
【００９３】
カメラ間予測画像を得たら、次に、画像復号部２１０は、カメラ間予測画像を予測画像として用いながら、ビットストリームから復号対象画像を復号して出力する（ステップＳ２６）。この結果得られる復号画像が画像復号装置２００の出力となる。なお、ビットストリームを正しく復号できるならば、復号にはどのような方法を用いてもよい。一般的には、符号化時に用いられた方法に対応する方法が用いられる。
【００９４】
ＭＰＥＧ−２やＨ．２６４、ＪＰＥＧなどの一般的な動画像符号化または画像符号化で符号化されている場合は、ブロックごとに、エントロピー復号、逆２値化、逆量子化などを施した後、ＩＤＣＴ（逆離散コサイン変換）などの逆周波数変換を施して予測残差信号を得た後、予測画像を加え、画素値範囲でクリッピングすることで復号を行う。
【００９５】
なお、本実施形態では、全てのブロックにおいてカメラ間予測画像を予測画像として用いたが、ブロックごとに異なる方法で生成された画像を予測画像として用いても構わない。その場合、どの方法で生成された画像を予測画像として用いたかを、判別して適切な予測画像を使用する必要がある。例えば、Ｈ．２６４のように、予測画像を生成する方法（モードやベクトル情報など）を示した情報が符号化されて、ビットストリームに含まれている場合、その情報を復号することで適切な予測画像を選択して復号を行っても構わない。なお、カメラ間予測画像を予測画像として用いないブロックに対しては、カメラ間予測画像の生成にかかわる処理（ステップＳ２４及びＳ２５）を省略することが可能である。
【００９６】
また、前述した説明においては、１フレームを符号化及び復号する処理を説明したが、複数フレーム繰り返すことで動画像符号化にも本実施形態を適用することができる。また、動画像の一部のフレームや一部のブロックにのみ本実施形態を適用することもできる。さらに、前述した説明では画像符号化装置及び画像復号装置の構成及び処理動作を説明したが、これら画像符号化装置及び画像復号装置の各部の動作に対応した処理動作によって本発明の画像符号化方法及び画像復号方法を実現することができる。
【００９７】
図８は、前述した画像符号化装置１００をコンピュータとソフトウェアプログラムとによって構成する場合のハードウェア構成を示すブロック図である。図８に示すシステムは、プログラムを実行するＣＰＵ（Central Processing Unit）５０と、ＣＰＵ５０がアクセスするプログラムやデータが格納されるＲＡＭ（Random Access Memory）等のメモリ５１と、カメラ等からの符号化対象の画像信号を入力する符号化対象画像入力部５２（ディスク装置等による画像信号を記憶する記憶部でもよい）と、カメラ等からの参照対象の画像信号を入力する参照画像入力部５３（ディスク装置等による画像信号を記憶する記憶部でもよい）と、デプスカメラ等からの符号化対象画像を撮影したカメラに対するデプスマップを入力するデプスマップ入力部５４（ディスク装置等によるデプスマップを記憶する記憶部でもよい）と、本発明の実施形態として説明した画像符号化処理をＣＰＵ５０に実行させるソフトウェアプログラムである画像符号化プログラム５５１が格納されたプログラム記憶装置５５と、ＣＰＵ５０がメモリ５１にロードされた画像符号化プログラム５５１を実行することにより生成されたビットストリームを、例えばネットワークを介して出力するビットストリーム出力部５６（ディスク装置等によるビットストリームを記憶する記憶部でもよい）とが、バスで接続された構成になっている。
【００９８】
図９は、前述した画像復号装置２００をコンピュータとソフトウェアプログラムとによって構成する場合のハードウェア構成を示すブロック図である。図９に示すシステムは、プログラムを実行するＣＰＵ６０と、ＣＰＵ６０がアクセスするプログラムやデータが格納されるＲＡＭ等のメモリ６１と、画像符号化装置が本手法により符号化したビットストリームを入力するビットストリーム入力部６２（ディスク装置等による画像信号を記憶する記憶部でもよい）と、カメラ等からの参照対象の画像信号を入力する参照画像入力部６３（ディスク装置等による画像信号を記憶する記憶部でもよい）と、デプスカメラ等からの復号対象を撮影したカメラに対するデプスマップを入力するデプスマップ入力部６４（ディスク装置等によるデプス情報を記憶する記憶部でもよい）と、本発明の実施形態として説明した画像復号処理をＣＰＵ６０に実行させるソフトウェアプログラムである画像復号プログラム６５１が格納されたプログラム記憶装置６５と、ＣＰＵ６０がメモリ６１にロードされた画像復号プログラム６５１を実行することにより、ビットストリームを復号して得られた復号対象画像を、再生装置などに出力する復号対象画像出力部６６（ディスク装置等による画像信号を記憶する記憶部でもよい）とが、バスで接続された構成になっている。
【００９９】
また、図１及び図３に示す画像符号化装置ならびに図５及び図７に示す画像復号装置における各処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより画像符号化処理と画像復号処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳ（Operating System）や周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷ（World Wide Web）システムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Read Only Memory）、ＣＤ（Compact Disc）−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１００】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０１０１】
以上、図面を参照して本発明の実施形態を説明してきたが、上記実施形態は本発明の例示に過ぎず、本発明が上記実施形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行っても良い。
【産業上の利用可能性】
【０１０２】
本発明は、符号化（復号）対象画像に対するデプスマップを用いて、符号化（復号）対象画像に対するカメラ間予測を行う際に、デプスマップ等にノイズが含まれる場合においても、高い符号化効率を少ない演算量で達成することが不可欠な用途に適用できる。
【符号の説明】
【０１０３】
１０１・・・符号化対象画像入力部、１０２・・・符号化対象画像メモリ、１０３・・・参照画像入力部、１０４・・・参照画像メモリ、１０５・・・デプスマップ入力部、１０６・・・デプスマップメモリ、１０７・・・擬似動きベクトル設定部、１０８・・・参照領域デプス生成部、１０９・・・カメラ間予測画像生成部、１１０・・・画像符号化部、１１１・・・擬似動きベクトル符号化部、１１２・・・多重化部、２０１・・・ビットストリーム入力部、２０２・・・ビットストリームメモリ、２０３・・・参照画像入力部、２０４・・・参照画像メモリ、２０５・・・デプスマップ入力部、２０６・・・デプスマップメモリ、２０７・・・擬似動きベクトル設定部、２０８・・・参照領域デプス生成部、２０９・・・カメラ間予測画像生成部、２１０・・・画像復号部、２１１・・・ビットストリーム分離部、２１２・・・擬似動きベクトル復号部
【図１】
0006053200.tif 000004
【図２】
0006053200.tif 000005
【図３】
0006053200.tif 000006
【図４】
0006053200.tif 000007
【図５】
0006053200.tif 000008
【図６】
0006053200.tif 000009
【図７】
0006053200.tif 000010
【図８】
0006053200.tif 000011
【図９】
0006053200.tif 000012
【図１０】
0006053200.tif 000013
【図１１】
0006053200.tif 000014