(57)【要約】【課題】  多視点画像を効率よく符号化する。またた、基準画像以外では、ブロック変換、直交変換などの大規模な処理を行わなくて済み、高速に符号化する。【解決手段】  多視点画像を符号化する際、その中の基準となる視点位置の基準画像と、当該基準画像の各画素における撮像装置と被写体までの距離を表すデプス情報についてはそれぞれに適した符号化を行う。そして、基準画像を除く画像については、基準画像とデプス情報に基づき、予測画像を生成し、その差分を符号化する。【選択図】  図１
2014230040.tif 000002
【特許請求の範囲】
【請求項１】
複数の視点位置で撮像した複数の画像を、符号化する符号化装置であって、
前記複数の画像中の、予め設定された基準となる視点位置の基準画像と、当該基準画像の各画素における撮像装置と被写体までの距離を表すデプス情報とを取得する取得手段と、
該取得手段で取得した前記基準画像を符号化する第１の符号化手段と、
前記取得手段で取得した前記デプス情報を符号化する第２の符号化手段と、
前記取得手段で取得した前記基準画像と前記デプス情報に基づき、前記基準画像を除く他の画像それぞれを符号化する第３の符号化手段とを有し、
前記第３の符号化手段は、
前記複数の画像中の、前記基準画像を除く画像の１つを着目画像としたとき、当該着目画素データの視点と前記基準画像の視点との相対位置と前記デプス情報に基づき、前記基準画像に対する視差を補償する予測画像を生成する生成手段と、
前記着目画像内の着目画素データと前記生成手段で生成された予測画像内の前記着目画素データに対応する位置の予測画素データとの差分を求め、当該差分が予め設定した第１の閾値以下であるか否かを判定する判定データを生成し、当該判定データを符号化する判定データの判定データ符号化手段と、
前記着目画素データに対する前記判定データが前記第１の閾値を超えることを示す場合のみ、前記着目画素データを差分符号化する差分符号化手段とを有する
ことを特徴とする符号化装置。
【請求項２】
前記差分符号化手段は、
前記着目画像における前記着目画素よりも前に符号化した、予め設定した領域内の複数の画素データの中から、前記着目画素データに最近似する画素データを探索し、探索した画素データと前記着目画素データとの差が予め設定された第２の閾値以下である場合に、前記最近似する画素データの画素位置を特定するベクトルを符号化する第１のベクトル符号化手段と、
前記着目画素データと前記最近似する画素データとの差が前記第２の閾値を超える場合、前記予測画像における、前記着目画像と前記基準画像の相対位置関係で決まる方向に沿った範囲から、前記着目画素データに最近似する画素データを探索し、探索した画素データと前記着目画素データとの差が予め設定された第３の閾値以下である場合に、前記最近似する画素データの画素位置を特定するベクトルを符号化する第２のベクトル符号化手段と、
前記着目画素データと前記最近似する画素データとの差が前記第３の閾値を超える場合、前記着目画素データと、前記予測画像における前記着目画像と同じ位置にある画素データとの差分データを符号化する差分データ符号化手段と、
を含むことを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記取得手段は、前記複数の視点位置における最も中央に位置する視点の画像を前記基準画像として取得し、
前記差分符号化手段は、前記基準画像の周囲に位置する画像のうち、隣り合う順に符号化することを特徴とする請求項１または２に記載の符号化装置。
【請求項４】
前記差分符号化手段は、着目画像を符号化する際に、前記基準画像と直前に符号化した周囲の画像を参照して符号化することを特徴とする請求項３に記載の符号化装置。
【請求項５】
前記判定データ符号化手段が生成する、前記着目画像における、前記第１の閾値以下を示す判定データの割合が予め設定された割合を下回る場合、前記第１の閾値を予め設定された値だけ増加させ、前記着目画像を再符号化させる制御手段を更に有することを特徴とする請求項１乃至４のいずれか１項に記載の符号化装置。
【請求項６】
複数の視点位置で撮像した複数の画像を、符号化する符号化装置の制御方法であって、
取得手段が、前記複数の画像中の、予め設定された基準となる視点位置の基準画像と、当該基準画像の各画素における撮像装置と被写体までの距離を表すデプス情報とを取得する取得工程と、
第１の符号化手段が、該取得工程で取得した前記基準画像を符号化する第１の符号化工程と、
第２の符号化手段が、前記取得工程で取得した前記デプス情報を符号化する第２の符号化工程と、
第３の符号化手段が、前記取得工程で取得した前記基準画像と前記デプス情報に基づき、前記基準画像を除く他の画像それぞれを符号化する第３の符号化工程とを有し、
前記第３の符号化工程は、
前記複数の画像中の、前記基準画像を除く画像の１つを着目画像としたとき、当該着目画素データの視点と前記基準画像の視点との相対位置と前記デプス情報に基づき、前記基準画像に対する視差を補償する予測画像を生成する生成工程と、
前記着目画像内の着目画素データと前記生成工程で生成された予測画像内の前記着目画素データに対応する位置の予測画素データとの差分を求め、当該差分が予め設定した第１の閾値以下であるか否かを判定する判定データを生成し、当該判定データを符号化する判定データの判定データ符号化工程と、
前記着目画素データに対する前記判定データが前記第１の閾値を超えることを示す場合のみ、前記着目画素データを差分符号化する差分符号化工程とを有する
ことを特徴とする符号化装置の制御方法。
【請求項７】
コンピュータに読み込ませ実行させることで、前記コンピュータに、請求項６の方法の各工程を実行させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は多視点画像の符号化技術に関するものである。
【背景技術】
【０００２】
従来から、複数の視点で映像を撮影し、撮影した多視点映像を利用してステレオ立体視や、自由視点合成といった映像表現を実現する方法が知られている。そのような映像表現を実現するためには、多視点で撮影した映像を記憶保存することが必要になるが、異なる視点の映像を別々に符号化すると、視点数に比例したデータ量になってしまう。一方で、多視点映像を撮影するカメラ同士が近いほど、異なる視点の映像間の相関が高く、別々に圧縮した場合に比べて符号データを削減できると考えられ、この性質を利用した圧縮・符号化方式が多数提案されている。
【０００３】
既存の画像の符号化方式としては、AVC（Advanced Video Coding）やMVC（Multiview Video Coding）方式がある。MVCでは、２か所の多視点画像で似たブロックを探索し、その位置関係を視差ベクトルとして算出し、動画符号化の動きベクトルと切り替えながら符号化していく方式で、既に国際標準方式となったものである。
【０００４】
また特許文献１では、基準視点画像とグローバル距離画像を用いて、基準点以外の視点の画像を符号化する時に、カメラ位置情報をもとに視差補償画像を推定する。この時、推定できない画素は周辺の画素値から推定し、この推定した視差補償画像と符号化対象画像の差分を符号化するものである。予測差分が０なる場合も含めて符号化することになるので、符号化効率が悪くなる場合もある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第4114379号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
既存方式のような画素を１６ｘ１６画素のブロック処理を行うと、ブロック変換バッファなどのハード規模が大きくなる。これをカメラ台数分だけ持つことは非常に難しい。また予測画像との差分を生成してから符号化する方式では、カメラの２次元配列では、水平方向、垂直方向特有の予測方式を使わないと、余計な探索時間が必要になったり、符号化効率が悪くなるなどの課題が残る。
【課題を解決するための手段】
【０００７】
この課題を解決するため、例えば本発明の符号化装置は以下の構成を備える。すなわち、
複数の視点位置で撮像した複数の画像を、符号化する符号化装置であって、
前記複数の画像中の、予め設定された基準となる視点位置の基準画像と、当該基準画像の各画素における撮像装置と被写体までの距離を表すデプス情報とを取得する取得手段と、
該取得手段で取得した前記基準画像を符号化する第１の符号化手段と、
前記取得手段で取得した前記デプス情報を符号化する第２の符号化手段と、
前記取得手段で取得した前記基準画像と前記デプス情報に基づき、前記基準画像を除く他の画像それぞれを符号化する第３の符号化手段とを有し、
前記第３の符号化手段は、
前記複数の画像中の、前記基準画像を除く画像の１つを着目画像としたとき、当該着目画素データの視点と前記基準画像の視点との相対位置と前記デプス情報に基づき、前記基準画像に対する視差を補償する予測画像を生成する生成手段と、
前記着目画像内の着目画素データと前記生成手段で生成された予測画像内の前記着目画素データに対応する位置の予測画素データとの差分を求め、当該差分が予め設定した第１の閾値以下であるか否かを判定する判定データを生成し、当該判定データを符号化する判定データの判定データ符号化手段と、
前記着目画素データに対する前記判定データが前記第１の閾値を超えることを示す場合のみ、前記着目画素データを差分符号化する差分符号化手段とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、多視点画像を効率よく符号化することが可能になる。また、基準画像以外では、ブロック変換、直交変換などの大規模な処理を行わなくて済み、高速に符号化することも可能になる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態の画像符号化装置のブロック構成図。
【図２】図１における差分符号化部のブロック構成図。
【図３】符号化画像ファイルの構造を示す図。
【図４】画像復号装置のブロック構成図。
【図５】図４の差分復号部のブロック構成図。
【図６】復号画素参照モード時の参照範囲を示す図。
【図７】予測画素参照モード時の参照範囲を示す図。
【図８】各周囲画像の予測画素参照モードにおける参照範囲を示す図。
【図９】差分符号化部が生成するハフマン符号の割り当てを示す図。
【図１０】量子化モードにおけるハフマン符号の割り当てを示す図。
【図１１】第１の実施形態の変形例における情報処理装置のブロック構成図。
【図１２】符号化処理手順を示すフローチャート。
【図１３】図１２における周囲画像の符号化処理手順を示すフローチャート
【図１４】復号処理手順を示すフローチャート。
【図１５】図１３の周囲画像の復号処理手順を示すフローチャート。
【図１６】設定ＧＵＩの例を示す図。
【図１７】周囲画像の符号化順を示す図。
【発明を実施するための形態】
【００１０】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下で説明する実施の形態では、多視点撮影を行うために、９個のカメラを３×３の２次元に配置する例を説明するが、２次元配列になっていればよいのでｍ×ｎの配列（ｍ×ｎ個のカメラ）に一般化できることを付言しておく。また、実施の形態では、説明を単純なものとするため、各カメラは、１画素につき、８ビット（２５６諧調）のモノクロ画像を撮像するものとして説明する。カラー画像データの場合には、各色成分について以下の処理を行えばよい。以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施の形態の１つである。
【００１１】
［第１の実施形態］
図１は、第１の実施形態における多視点カメラシステム１００と画像符号化装置２００との接続関係、並びに、符号化装置２００のブロック図である。
【００１２】
多視点カメラシステム１００には、図示のとおり、９個のカメラ１０１が３×３の２次元に、水平、垂直とも等間隔に配置されている。多視点カメラシステム１００は、各カメラ１０１で撮像して得た画像を画像データＩ０乃至Ｉ８として符号化装置２００に供給する。
【００１３】
詳細は後述から明らかにするが、符号化装置２００は、３×３の２次元配列されたカメラで得られた９枚の画像を高い圧縮率で符号化するため、以下の４種類の符号化データを生成し、それらを結合部２１１で結合して１つの画像ファイル２５０を出力する。
（１）３×３の２次元配列の中心に位置する画像Ｉ４は通常のＪＰＥＧ符号化する。なお、実施の形態では、ＪＰＥＧを例にするが、ＪＰＥＧ２０００、ＪＰＥＧ  ＲＸなどの非可逆符号化でも良いし、可逆符号化であっても構わない。ＪＰＥＧはあくまで一例であると理解されたい。
（２）中心に位置する画像Ｉ４を構成する各画素のデプス値を算出し、デプス値の集合であるデプス情報を生成し、生成されたデプス情報を可逆符号化する。
（３）画像Ｉ４とデプス値から、画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８それぞれの視差補償予測画像（以下、単に予測画像という）Ｐ０乃至Ｐ３，Ｐ５乃至Ｐ８を生成する。そして、画像Ｉ０と予測画像Ｐ０のペアの同一座標の画素の差分（絶対値）と予め設定した閾値とを比較することで、差分が許容範囲（閾値）内であるか否かを識別するための判定マップデータを生成し、符号化する。｛画像Ｉ１、予測画像Ｐ１｝のペア、｛画像Ｉ２，予測画像Ｐ２｝のペア、…｛画像Ｉ８、予測画像Ｐ８｝についても同様の処理を行う。
（４）画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８それぞれを符号化する。
【００１４】
以下、図１の符号化装置２００の構成を、その機能とともに説明する。制御部２０１は、本装置全体の制御を司り、図示の各種処理部を制御する。インターフェース２０２は、制御部２０１の制御の下で、多視点カメラシステム１００と通信し、多視点カメラシステム１００から受信した３×３個の画像データＩ０乃至Ｉ８を一時的にバッファメモリ２０３に格納する。なお、バッファメモリ２０３に格納された画像データＩ０乃至Ｉ８は、それぞれどのカメラで撮像したのかを識別可能に格納されるものとする。簡単には、カメラシステム１００から受信した画像データを順に記憶管理したり、画像のヘッダにカメラを識別する情報を持たせるなどでよく、その識別の仕方は問わない。
【００１５】
基準画像符号化部２０４は、バッファメモリ２０３に格納された画像中の、３×３の配列の中央に位置する画像Ｉ４を基準画像として符号化する。基準画像符号化部２０４は、先に示したようにＪＰＥＧ符号化するものとし説明は省略するが、他の符号化方式でもよい。基準画像符号化部２０４は、基準画像（画像Ｉ４）の符号化データを結合部２１１に供給する。
【００１６】
統合デプス生成部２０５は、３×３の画像Ｉ０乃至Ｉ８を参照し、画像Ｉ４（基準画像）の全画素のデプス値（たとえば８ビット）を求め、デプス情報として予測画像生成部２０７、デプス符号化部２０６に出力する。なお、デプス値は複数の画像の視差を利用して算出できる。たとえば、画像Ｉ４と画像Ｉ３の２つの着目したとき、両者は水平方向に隔てた視点位置の画像と言うことができるので、視差は水平方向にのみ発生すると考えて良い。そこで、画像Ｉ４の或る画素と同じ色の画素を、画像Ｉ３の同じ位置から水平軸に沿って探索し求める。そして求めた画素の位置を、探索開始した位置を視差（シフト量）として決定する。視差は、カメラから被写体までの距離が短いほど大きく、被写体までの距離が長いほど小さくなるのは明らかである。つまり、視差と距離は反比例の関係にあると言える。そこで、視差の逆数（分母が０になる場合には、無限遠の深さを表す値をセットする）を、その画素の深さ（デプス）値として算出する。なお、オクルージョンの問題もあるので、水平方向の視差は画像Ｉ４と画像Ｉ５をも参照し、基準画像Ｉ４内の画素のデプス値を求める。また、垂直、斜め方向でも同様にして求め、その平均値などを利用し、画像Ｉ４の全画素のデプス値を算出するものとする。なお、多視点画像から、或る特定の画像のデプス情報を求めることは公知でもあるので、これ以上の説明は省略する。デプス符号化部２０６は、上記のようにして得られた基準画像Ｉ４のデプス情報を可逆符号化し、結合部２１１に供給する。なお、デプス符号化部２０６は多値の可逆符号化であればよく（たとえばパックビッツ符号化）、その種類は問わない。
【００１７】
以上、基準画像Ｉ４、並びに、基準画像Ｉ４のデプス情報の符号化について説明した。次に、基準画像Ｉ４以外の、画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８、ならびに、それらの判定マップデータの符号化を説明する。簡単のため以下では、画像Ｉ０の判定マップデータ、及び、その予測符号化処理を説明するが、他の画像Ｉ１乃至Ｉ３，画像Ｉ５乃至Ｉ８も同様であると理解されたい。
【００１８】
予測画像生成部２０７は、制御部１０１からの指示に従い、基準画像Ｉ４とデプス情報から画像Ｉ０用の予測画像Ｐ０を生成し、比較部２０８、差分符号化部２１０に供給する。予測画像の生成については、先に説明した特許文献１に従えばよいであろう。
【００１９】
比較部２０８は、バッファメモリ２０３内の画像Ｉ０と、予測画像生成部２０７から供給された予測画像Ｐ０を、それぞれラスタースキャンし、同一座標の画素の差分（絶対値）を算出する。そして、比較部２０８は、その差分と予め設定した閾値Ｔ０とを比較し、差分が閾値以下であるか否か、すなわち、差分が許容範囲内にあるか否かを表す２値（１ビット）の判定マップデータをマップ符号化部２０９、差分符号化部２１０に出力する。実施の形態における判定マップデータは、差分が許容範囲内である場合には“１”、許容範囲外にある場合には“０”とする。比較部２０８は、画像Ｉ０における画素ごとに判定マップデータを供給することになるので、画像Ｉ０に対する判定マップデータの総データ量（ビット数）は画像Ｉ０に含まれる画素数と同じとなる。
【００２０】
マップ符号化部２０９（判定データ符号化部）は、比較部２０８から供給される判定マップデータを可逆符号化し、生成された符号化データを結合部２１１に供給する。実施の形態では、可逆符号化としては２値のランレングス符号化とするが、可逆であればその種類は問わない。
【００２１】
次に、画像Ｉ０の符号化について説明する。差分符号化部２１０の基本は、画像Ｉ０と予測画像生成部２０７から供給される予測画像Ｐ０の差分を求め、符号化するものである。ただし、比較部２０８から出力される判定マップデータが、画像Ｉ０内の着目画素と、予測画像Ｐ０内の同一位置の予測画素との差が許容範囲内にあることを示している場合（“１”である場合）、差分符号化部２１０を機能しないように停止させる。理由は、復号装置において、着目画素を復号する場合には、予測画素を着目画素の復号結果として出力すればよく、差分符号化部の符号化データを不要にできるからである。なお、差分符号化部２１０を停止させるのではなく、差分符号化部２１０から出力される符号化データを破棄するものとしても構わない。
【００２２】
さらに、実施の形態では、符号化効率をさらに高めるため、いくつかの特徴を有する。その１つは、画像Ｉ０の各画素をラスタースキャン順に符号化している過程で、符号化しようとする着目画素に隣接し、既に符号符号化された画素をも参照して符号化する。このため、局所復号部２１２は、マップ符号化部２０９、差分符号化部２１０から出力する符号を入力し、着目画素の直前に位置する画素を復号し、その結果を差分符号化部２１０内のメモリ（後述するバッファ２５６）に格納する。かかる特徴、並びに、他の特徴を以下の説明で明らかにする。
【００２３】
実施の形態における差分符号化部２１０の具体的な構成例を図２に示し、以下に説明する。図２に示すごとく、差分符号化部２１０は、３つのハフマン符号化部２５１乃至２５３、２つのベクトル検出部２５４，２５５、バッファ２５６、差分算出部２５８、判定部２６０、セレクタ２６１、出力部２６２を有する。また、差分符号化部２１０には、画像Ｉ０及び予測画像Ｐ０がともにラスタースキャン順に、それぞれの画素データが供給されるものとする。バッファ２５６は２ライン分のメモリを有し、着目画像内の符号化対象の画素が存在するラインと、符号化済である真上（１つ前）のラインの画素データを格納可能とする。また、比較部２０８からの判定マップデータも、この差分符号化部２１０に供給される。この判定マップデータは、先に説明したように、差分符号化部２１０を実行／停止を指示するためのものであるが、以下は判定マップデータが実行を指示することを示す“０”である場合の説明である。
【００２４】
バッファ２５６には、局所復号部２１２で復号された、着目画素の直前の位置する画素データが格納される。バッファ２５６を設けたのは、図６の記号「＊」の位置を符号化しようとする着目画素位置としたとき、既に符号化済みである左隣、真上、左上の画素その図示の番号順に参照するためである。従って、バッファ２５６は２ライン分の容量を有していれば十分である。なお、ラスタースキャン順に符号化を行うので、画像Ｉ０の符号化が開始した直後では、符号化済みの画素は存在しない。そのため、画像Ｉ０を符号化に先立ち初期化され、所定の値（たとえば８ビットで表される値の中央値「１２８」）を有する、もしくは初期値を有するものとみなす。初期値はこれに限らずいかなる値でも構わない。要は、復号装置と共通になっていればよい。
【００２５】
ベクトル検出部２５４は、画像Ｉ０の着目画素（図６の記号「＊」の位置の画素）を符号化するとき、バッファ２５６内の隣接画素「１」，「２」，「３」の順番に調べ、着目画素の値に最も近い１つの画素を見つけ出す。そして、その最も近い画素の番号をベクトルデータとしてハフマン符号化部２５１に出力する。また、ベクトル検出部２５４は、着目画素の値と、それに最も近いと判定された画素の値との差分（絶対値）を判定部２６０に出力する。ハフマン符号化部２５１（ベクトル符号化部でもある）は、与えられたベクトルデータをハフマン符号化し、その符号化データをセレクタ２６１に出力する。
【００２６】
ベクトル検出部２５５は、予測画像Ｐ０内の、符号化対象の着目画素データの近傍の位置にある予測画素データの中から、最近似の画素を見つけ出し、その画素位置を特定する情報をベクトルデータとして出力する。ここで、画像Ｉ０は基準画像Ｉ４に対して、左下方向にシフトしている。それ故、ベクトル検出部２５５は、図７に示すように、着目画素位置＊を除く、−４乃至−１、＋１乃至＋４で示される領域内の予測画素データの中から、着目画素の値に最も近い１つの画素を探し出し、その番号をベクトルデータとしてハフマン符号化部２５２に出力する。また、ベクトル検出部２５５は、着目画素の値と、それに最も近いと判定された画素の値との差分（絶対値）を判定部２６０に出力する。ハフマン符号化部２５２は、与えられたベクトルデータをハフマン符号化し、その符号化データをセレクタ２６１に出力する。なお、図７の着目画素位置＊の予測画素が、選択されることはない。理由は、比較部２０８が既にその着目画素位置＊の予測画素の判定を行い、差分が大きいと判定しているからである。
【００２７】
上記のベクトル検出部２５５の処理は画像Ｉ０の符号化の場合である。各画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８と、基準画像との視差方向の関係は、図８に示す関係にある。たとえば、画像Ｉ１は基準画像Ｉ４に対して垂直方向に視差があると言える。そこで、画像Ｉ１を符号化する場合には、ベクトル検出部２５５は、垂直方向に並ぶ予測画素の中から、着目画素の値に最も近い１つの画素を探し出すことになる。
【００２８】
差分算出部２５８は、画像Ｉ０内の着目画素の値と、予測画像Ｐ０内の着目画素と同じ座標位置の予測画素の値との差分を算出し、差分データとしてハフマン符号化部２５３（差分データ符号化部）に供給する。ハフマン符号化部２５３は、供給された差分データが示す値を、制御部２０１から設定された量子化ステップ値Ｑ（実施の形態ではＱ＝８）で量子化（除算）し、その量子化結果をハフマン符号化する。そして、ハフマン符号化部２５３は、符号化データをセレクタ２６１に供給する。
【００２９】
判定部２６０には、予め制御部２０１より、２つの閾値Ｔ１，Ｔ２が設定されている。そして、判定部２６０は次の判定処理を実行する。ただし、ベクトル検出部２５４からの差分データをＶ（Ｉ０）、ベクトル検出部２５５からの差分データをＶ（Ｐ０）と表現する。
・条件１：Ｖ（Ｉ０）≦Ｔ１の場合
判定部２６０はセレクタ２６１にハフマン符号化部２５１からの符号化データを選択する制御信号を供給する。以下、この条件１での符号化処理のモードを「復号画素参照モード」という。
・条件２：Ｖ（Ｐ０）≦Ｔ２の場合（条件１は否定されている）
判定部２６０はセレクタ２６１にハフマン符号化部２５２からの符号化データを選択する制御信号を供給する。以下、この条件２での符号化処理のモードを「予測画素参照モード」という。
・条件３：条件１、２のいずれでもない場合：
判定部２６０はセレクタ２６１にハフマン符号化部２５３からの符号化データを選択する制御信号を供給する。以下、この条件３での符号化処理モードを「量子化モード」という。
【００３０】
セレクタ２６１は判定部２６０からの制御信号を受け、ハフマン符号化部２５１乃至２５３のうち、指示された１つからの符号化データを選択する。そして、セレクタ２６１は、選択した符号化データを結合部２１１に供給する。
【００３１】
なお、上記において、３つのハフマン符号化部は並列して符号化を行うものとして説明したが、例えば条件１と２におけるハフマン符号化部は共用しても構わない。すなわち、条件１、条件２の判定をまず行い、その判定結果を受けて一方のベクトルデータを符号化しても構わない。
【００３２】
実施形態の差分符号化部２１０から出力されるハフマン符号化データは、例えば図９に示すようなシンボルを割り当てる。シンボル「０」は量子化モードを示し、その後に図１１０に示すシンボルを割り当てる。また、復号画素参照モードの場合には、シンボルのみで構わない。また、予測画素参照モードの場合には、図示のようなシンボルを割り当てる。
【００３３】
なお、量子化モードを採用するのは、着目画素が予測画素と大きくことなる場合であり、量子化後の値が小さくなるのはむしろまれである。量子化パラメータを非常に大きくすると０になる場合もあるので、このシンボル（符号化ビン）も用意しておく。シンボル番号２５５，２４４のように、カラー画像に対応させた場合に、３つの要素の量子化値（たとえばRGB）が同じ値になった場合を特別にシンボルとして用意しておき、さらに符号化効率を改善することができる。
【００３４】
以上画像Ｉ０の判定マップデータの符号化、及び、差分符号化について説明したが、基準画像Ｉ４を除く、他の画像Ｉ１，Ｉ２，Ｉ３、Ｉ５，Ｉ６，Ｉ７，Ｉ８の符号化処理も同様である。
【００３５】
なお、差分符号化部２１０内のベクトル検出部２５５が探索する、予測画像Ｐ内の方向は、符号化対象の画像に応じて図８に示す方向とした。しかし、実験した結果、視差方向が水平、垂直方向にある画像の場合には、高い確率で近似する予測画素を探し出すことができたものの、視差方向（視点の相対位置関係）が斜め方向となっている画像Ｉ０，Ｉ３，Ｉ６，Ｉ８については、探索範囲を１次元にするのではなく、もしろ２次元的に広がった範囲を探索すると良好な結果が得られた。そこで、画像Ｉ０，Ｉ３，Ｉ６，Ｉ８については、着目画素位置を取り囲む渦巻状に探索するようにしてもよい。
【００３６】
さて、結合部２１１は上記の符号化処理で得られた符号化データを結合し、１つの符号化画像ファイル２５０を作成し、出力することになる。図３は、そのファイル構造の例である。図３において、ファイルヘッダには、カメラのレイアウトに関する情報（カメラ数を含む）、どの位置のカメラを基準にしたのかを示す情報、各画像の水平／垂直方向の画素数（画像サイズ）、色成分の種類とその数、符号化の際の利用した量子化ステップ値など、復号に必要な情報が格納される。そして、ファイルヘッダに、基準画像（実施の形態では画像Ｉ４）の符号化データ並びにデプス符号化データが続く。さらに、基準画像を除いた他の視点位置の画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８の判定マップ符号化データと、それらの差分画像符号化データが後続する。
【００３７】
次に実施の形態における符号化画像ファイル２５０を復号する復号装置を説明する。図４は復号装置４００のブロック構成図である。基本的に、復号装置４００は符号化装置２００と逆の処理を行う。以下、同図の復号装置４００の構成を、その機能とともに説明する。制御部４０１は、本装置全体の制御を司り、図示の各種処理部を制御する。インターフェース４０２は、符号化画像ファイル２５０を入力し、入力バッファ４０３に格納する。ヘッダ解析部４０４は、入力バッファ４０３に格納された画像ファイルのヘッダを解析することで、カメラの配置などの復号に必要な情報を取得し、制御部４０１に通知する。制御部４０１は、この情報を基づいて各構成を制御することになる。
【００３８】
符号化データ分離部４０５は、制御部４０１の制御の下で、入力バッファ４０３から、基準画像の符号化データを分離し、基準画像復号部４０６を供給する。基準画像復号部４０６は、ＪＰＥＧ復号処理を行って基準画像Ｉ４を生成し、出力バッファ４１１に出力する。
【００３９】
次に、符号化データ分離部４０５は、デプス符号化データをデプス復号部４０７に供給する。デプス復号部４０７は、供給されたデプス符号データを可逆復号し、予測画像生成部４０８に出力する。なお、復号して得られたデプスデータは、基準画像以外の画像を復号するたびに利用することになるので、復号処理回数を減らすため、出力バッファ４１１に格納してもよい。
【００４０】
以降、基準画像Ｉ４の周囲の画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８の復号処理を行うが、それらは同じであるので、以下では、画像Ｉ０の復号処理について説明する。
【００４１】
マップ符号化部４０９は、符号化データ分離部４０５から供給された画像Ｉ０用の符号化マップデータを順次可逆復号し、判定マップデータとして予測画像生成部４０８、及び、差分復号部４１０に供給する。判定マップデータは、ラスタースキャン順に符号化されているので、復号結果もラスタースキャン順になる。
【００４２】
差分復号部４１０は、マップ復号部１０９からの判定マップデータが、着目画素と予測画素との差が許容範囲外にあることを示している場合に処理を実行し、許容範囲内にあることを示している場合に停止する。この差分符号化部４１０の構成と処理内容は後述する。
【００４３】
予測画像生成部４０８は、画像Ｉ０用の予測画像Ｐ０を基準画像Ｉ４及びデプス情報に基づき生成し、ラスタースキャン順に予測画素を差分復号部４１０に出力する。さらに、マップ復号部４０９が復号したマップデータが、着目画素と予測画素との差が許容範囲内にあることを示している場合には、生成した予測画素を復号対象の画像Ｉ０の着目画素の復号結果として出力バッファ４１１に出力する。
【００４４】
次に差分復号部４１０の構成と動作を、図５のブロック構成図を参照して説明する。差分復号部４１０は、図示のごとく、符号判定部５０１、ハフマン復号部５０２乃至５０４、画素探索部５０５、５０６、セレクタ５０８を有する。以下は、判定マップデータが、着目画素と予測画素との差が許容範囲外にあることを示している場合の復号処理の説明であることに注意されたい。
【００４５】
符号判定部５０１は差分符号化データの先頭のシンボルを解析し、「復号画素参照モード」「予測画素参照モード」「量子化モード」の符号化データのいずれであるのかを判定し、その判定結果をセレクタ５０８に供給する。さらに、符号判定部５０１は、判定結果に基づき、入力した符号化データを、ハフマン復号部５０２乃至５０４のいずれか１つに供給する。より詳細には、「復号画素参照モード」の符号化データであると判定した場合には、符号化データはハフマン復号部５０２に供給される。「予測画素参照モード」の符号化データであると判定した場合には、符号化データはハフマン復号部５０３に供給される。そして、「量子化モード」の符号化データであると判定した場合には、符号化データはハフマン復号部５０４に供給される。
【００４６】
ハフマン復号部５０２は供給された符号化データを復号し、ベクトルデータを生成し、画素探索部５０５に供給する。画素探索部５０５は、出力バッファ４１１内の復号途中の画像Ｉ０を参照し、着目画素に隣接する３つの画素(図６参照）の中の、ベクトルデータで示される画素を選択し、セレクタ５０８に供給する。つまり、ハフマン復号部５０２、画素探索部５０５は、「復号画素参照モード」の復号処理を行っているということができる。
【００４７】
ハフマン復号部５０３は、供給された符号化データを復号し、ベクトルデータを生成し、画素探索部５０６に供給する。画素探索部５０６は、予測画像Ｐ０内の、着目画素の近傍の画素の中からベクトルデータで示される画素を選択し、セレクタ５０８に供給する。画像Ｉ０を復号する場合には、ベクトルデータが示す値に従い、予測画像Ｐ０における図７の符号−４乃至−１、＋１乃至＋４で示される中から１つを選択し、セレクタ５０８に供給することになる。なお、ここでは画像Ｉ０の場合を説明したが、画像Ｉ１の場合、復号したベクトルは垂直方向の画素値を示すものとして復号することになる（図８参照）。ハフマン復号部５０３、画素探索部５０６、及びバッファ５０７は、「予測画素参照モード」の復号処理を行っているということができる。
【００４８】
ハフマン復号部５０４は、供給された符号化データを復号し、その復号結果を、制御部４０１よりセットされた量子化ステップＱで逆量子化する。そして、ハフマン復号部５０４は、量子化後の値を差分データとして加算部５０９に出力する。加算部５０９は、予測画像Ｐ０内の着目画素の値に、差分データが示す値を加算し、その加算結果を着目画素の値としてセレクタ５０８に供給する。つまり、ハフマン復号部５０４、加算部５０９は、「量子化モード」の復号処理を行っているということができる。
【００４９】
セレクタ５０８は、符号判定部５０１の判定結果に従い、復号して得られた着目画素の画素データを、画像Ｉ０の画素データとして、出力バッファ４１１に出力する。
【００５０】
以上、画像Ｉ０の復号処理を説明した。画像Ｉ１乃至Ｉ３，Ｉ５乃至Ｉ７についても同様である。こうして、画像Ｉ４乃至Ｉ５のすべてが出力バッファ４１１に生成れるので、それらを出力対象（たとえば表示装置や、多視点画像の表示アプリケーションなど）に出力することになる。なお、多視点画像の表示アプリケーションが、デプス情報を活用する場合には、復号したデプス情報も合わせて出力してもよい。
【００５１】
以上説明したように、本実施の形態によれば、多視点画像を符号化する際に、その１つを基準画像として符号化するものの、他の視点の画像については、基準画像との差分を符号化する。この結果、視点数の画像それぞれを単独で符号化する場合と比較して、はるかに高い圧縮率の符号化データを生成することができる。特に、差分画像を符号化するだけでなく、既に符号化処理を終えた領域の復号画像や予測画像を参照してベクトルデータを符号化することまで行うことで、さらに高い圧縮率が期待できるようになる。
【００５２】
［第１の実施の形態の変形例］
上記実施の形態の処理を、パーソナルコンピュータなどに代表される情報処理装置上で実行するコンピュータプログラムを実行する例を以下に説明する。この場合、バッファメモリはＲＡＭなどに格納されることになり、それを除く各構成は、プログラムを構成する各関数やサブルーチンで実現することで等価の機能を果たすこととなる。
【００５３】
図１１は本変形例で示す情報処理装置１０００のハードウェアのブロック図である。本装置は、装置全体の制御を司るＣＰＵ１１０１をはじめ、ＣＰＵ１１０１が実行するプログラムをロードしたり、ワークエリアとして使用するＲＡＭ１１０２、ＢＩＯＳやブートプログラムを格納しているＲＯＭを有する。また、本装置には、キーボード１１０４、マウス１１０５、表示装置１１０６、ハードディスクなどの外部記憶装置１１０７、ＣＤ−ＲＯＭなどの記録媒体ドライブ１１０８、多視点カメラシステム１００と通信するためのインターフェース１１０９、及び、これらを接続するためのバスで構成される。
【００５４】
本装置の電源がＯＮになると、ＣＰＵ１１０１はＲＯＭ１１０３のブートプログラムを実行し、外部記憶装置１１０７よりオペレーティングシステム（ＯＳ）をＲＡＭ１１０２にロードして実行することで、本装置が情報処理装置として機能することになる。さらに、ユーザはマウス１１０５を操作して、多視点カメラのアプリケーションの実行を指示すると、外部記憶装置１１０７からそのアプリケーションプログラムをＲＡＭ１１０２にロードされ、多視点カメラシステム１００を活用が可能になる。そのアプリケーションにて、多視点カメラ１００で撮像し、外部記憶装置１１０７に保存する指示を与えた場合、上記実施の形態で説明した画像符号化にかかるプログラム（プロシージャ）が実行され、画像ファイルが生成されることになる。以下、そのアプリケーションプログラムの一部である画像符号化処理を、図１２のフローチャートに従って説明する。なお、多視点カメラシステム１００の撮影は既に完了し、撮像画像Ｉ０乃至Ｉ８が既にＲＡＭ１１０２に格納されているものとして説明する。
【００５５】
まず、ＣＰＵ１１０１は、Ｓ１２０１にて画像Ｉ４を基準画像としてＪＰＥＧ符号化を行い、符号化データを一時的にＲＡＭ１１０２に格納する。次いで、ＣＰＵ１０１は、Ｓ１２０２にて、画像Ｉ４を構成する各画素のデプス値を、基準画像Ｉ４の周囲に位置する画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８を参照して算出して、デプス情報を得る。ＣＰＵ１１０１は、次にＳ１２０３にて、デプス情報を可逆符号化する。得られた符号化データはＲＡＭ１２０２に格納する。
【００５６】
次いで、ＣＰＵ１１０１は、Ｓ１２０４で、周囲画像の１つ（Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８のいずれか）について予測画像Ｐをする。この生成は、基準画像Ｉ４とそのデプス情報を用いて生成する。次いで、Ｓ１２０５にて、周囲画像をその予測画像Ｐを用いて差分符号化する。そして、Ｓ１２０６にて、全周囲画像の符号化を終えたか否かを判定し、否の場合には、Ｓ１２０４，Ｓ１２０５の処理を、全周囲画像の符号化を終えたと判断されるまで繰り返す。
【００５７】
全周囲画像の符号化を終えると、Ｓ１２０７に処理を進める。この時点で、基準画像Ｉ４の符号化データ、基準画像Ｉ４用のデプス符号化データ、並びに、各周囲画像のマップデータ、差分符号化データが生成されることになる。そこで、ＣＰＵ１１０１は、外部記憶装置１１０７にファイルヘッダを作成し、それに後続して各符号化データを決層させることで、符号化画像ファイルを生成する。
【００５８】
次に上記のＳ１２０５の処理の詳細を図１３のフローチャートに従って説明する。なお、簡単のため、符号化対象の周囲画像が画像Ｉ０であるものとして説明する。
【００５９】
まず、ＣＰＵ１１０１は、Ｓ１３０１にて、画像Ｉ０の着目画素の画素データを変数Ｘに格納する。初期状態では、ラスタースキャンの開始位置である、画像の左上隅の画素データを変数Ｘに格納する。次いで、Ｓ１３０２にて、着目画素と同じ座標にある、予測画像Ｐ０内の予測画素を変数Ｐに格納する。そして、Ｓ１３０３で差分の絶対値Ｄを求め、Ｓ１３０４にて、差分が閾値Ｔ０以下であるか否か、すなわち、誤差は許容範囲内にあるか否かを判断する。許容範囲内にあると判断した場合、Ｓ１３１５にて、判定マップデータ“１”をＲＡＭ１１０２の所定領域に格納する。そして、ステップ１３１３に進める。一方、許容範囲外（差分が閾値Ｔ０より大きい）と判定した場合には、Ｓ１３０５に進み、判定マップデータ“０”をＲＡＭ１１０２の所定領域に格納する。なお判定マップデータは区別がつけばよいので、０、１は逆であっても構わない。
【００６０】
Ｓ１３０６では、ＣＰＵ１１０１は、ＲＡＭ１１０２に確保された局所復号した画素を格納するバッファを参照し、復号画素参照モードによる、着目画素Ｘに隣接し、既に符号化された領域の中から着目画素Ｘの値に最も近い画素を探索する処理を行う（図６）。そして、探索した画素と着目画素Ｘとの差分（絶対値）が閾値Ｔ１以下であるか否かを判定する。差分が閾値Ｔ１以下であると判定した場合、Ｓ１３０８にて探索した画素の存在位置を示すベクトルを符号化する。そして、Ｓ１３１３に進む。
【００６１】
また、Ｓ１３０７の判定がＮｏであった場合、処理はＳ１３０９に進み、予測画素参照モードによる、着目画素Ｘの値に近似する画素を探索する。ここで符号化対象の画像Ｉ０は基準画像Ｉ４に対して左下方向に視差がある。従って、図７に示す−４乃至−１、１乃至４の範囲内から、近似する画素を探索する。なお、探索する範囲は、基準画像Ｉ４に対する相対的な位置関係で決まる。そして、Ｓ１３１０にて、探索した画素と着目画素Ｘとの差分（絶対値）が閾値Ｔ２以下であるか否かを判定する。差分が閾値Ｔ２以下であると判定した場合には、Ｓ１３１１にて、Ｓ１３０９にて探索した画素の存在位置を示すベクトルを符号化する。
【００６２】
また、Ｓ１３１０の判定がＮｏであった場合、処理はＳ１３１２に進み、画素値Ｘと予測画素Ｐとの差分を求め、さらに量子化（実施の形態では「８」で除算）し、符号化する。
【００６３】
Ｓ１３１３では、着目画素の画素値を局所復号し、ＲＡＭの局所復号バッファに格納する。そして、Ｓ１３１４にて、画像Ｉ０の全画素についての符号化が終了したか否かを判定する。否の場合には、Ｓ１３０１に戻り、ラスタースキャン順に沿った次の画素の符号化を行う。そして、上記の処理を繰り返すことで、画像Ｉ０の全画素の符号化を終えたと判断した場合、Ｓ１３１６にて、ＲＡＭ１１０２に格納された判定マップデータの可逆符号化を行い、そのマップ符号化データと上記処理で得られた差分符号化データを出力バッファに出力する。
【００６４】
以上、本変形例における符号化処理を説明した。次に、本変形例における、復号処理を図１４のフローチャートに従って説明する。以下の説明は、ユーザが、復号対象の符号化画像ファイルを外部記憶装置１１０７の中から選択し、復号を指示した場合の処理である。復号処理は、符号化処理の逆であるので、簡単に説明する。
【００６５】
ＣＰＵ１１０１は、まずＳ１４０１にて、ユーザが指定した符号化画像ファイルのヘッダを解析し、復号に必要な情報を取得する。次に、ＣＰＵ１１０１は、Ｓ１４０２，Ｓ１４０３にて基準画像Ｉ４、及び、そのデプス情報を復号する。この後、Ｓ１４０４にて、基準画像とデプス情報から、周囲画像のうちの１つの予測画像を生成し、Ｓ１４０５にて、その予測画像と、符号化差分画像とに基づく復号処理を行う。この復号処理を、Ｓ１４０６にて、全周囲画像について行ったと判定するまで繰り返す。
【００６６】
図１５は上記のＳ１４０５の周囲画像の復号処理の詳細を示すフローチャートである。周囲画像には、基準が画像Ｉ４を除く、画像Ｉ０乃至Ｉ３、Ｉ５乃至Ｉ８があり、これらの復号処理は同じであるので、以下では画像データＩ０を復号する例で説明する。
【００６７】
まず、ＣＰＵ１１０１はＳ１５０４にて、画像Ｉ０の符号化マップ情報を可逆復号し、ＲＡＭ１１０２の所定領域に各画素の判定マップデータを格納しておく。次いで、Ｓ１５０２にて、復号した中から、着目画素の判定マップデータを取得し、それが“１”であるか否か、すなわち、着目画素は予測画像内の同一位置の画素値との差が許容範囲にあるか否かを判定する。“１”であると判定した場合には、Ｓ１５０３に進み、先に示したＳ１４０４にて復号した画像Ｉ０用の予測画像Ｐ０内の、着目画素と同じ位置の画素の値を、復号結果として出力する。
【００６８】
一方、Ｓ１５０２の判定がＮｏの場合には、Ｓ１５０４にて、着目画素の差分符号化データの先頭のシンボルを解析し、復号画素参照モードの符号化データであるか否かを判定する。Ｓ１５０４の判定がＹｅｓ、すなわち、復号画素参照モードの符号化データであると判定した場合には、処理はＳ１５０５に進む。このＳ１５０５では、その符号化データのハフマン復号し、その結果は図６に示す隣接画素を特定するベクトルであるのとし、復号済みの隣接画素の１つを、着目画素の復号結果として出力する。
【００６９】
Ｓ１５０４の判定がＮｏの場合には、Ｓ１５０６にて、着目画素の差分符号化データを解析し、予想画素参照モードの符号化データであるか否かを判定する。Ｓ１５０６の判定がＹｅｓ、すなわち、予測画素参照モードの符号化データであると判定した場合には、処理はＳ１５０７に進む。Ｓ１５０７では、符号化データをハフマン復号する。その結果得られたデータは、ベクトルデータであるものとし、予測画像Ｐ０の中から、該当する位置の画素を、着目画素の復号結果として出力する。着目画像Ｉ０は基準画像Ｉ４に対して斜め左下方向に視差があるので、復号して得られたベクトルは、図７に示す−４乃至−１、１乃至４のラベルの中のいずれかになる。
【００７０】
Ｓ１５０６の判定がＮｏの場合、着目画素は量子化モードで符号化されたことを示す。それゆえ、先頭のシンボルに後続する符号化データを、差分データとして復号する。そして、差分データを逆量子化（実施の形態では「８」を乗算する）し、復号する。そして、ＣＰＵ１１０１は、逆量子化後の差分データに、予測画像Ｐ０の同一位置にある画素値を加算し、その加算結果を着目画素の復号結果として出力する。この後、Ｓ１５０９にて、画像Ｉ０の全画素の復号を終えたと判断するまで、ステップ１５０２以降の処理を繰り返す。
【００７１】
以上、第１の実施形態の変形例を説明した。上記の通り、第１の実施形態における符号化、並びに、復号処理をコンピュータプログラムでも実現できるようになる。
【００７２】
［第２の実施形態］
次に、生成される多視点画像の符号化データ量を調整する例を第２の実施形態として説明する。これまでの説明から明らかなように、基準画像Ｉ４を除く、周囲画像の符号量を少なくするためには、着目画素と予測画素との差分が許容範囲内にあると判定されやすくすることである。そのためには、比較部２０８に設定する閾値Ｔ０が大きくすることである。
【００７３】
そこで、例えば、周囲画像、例えば画像Ｉ０を符号化している過程で、比較部２０８が出力する判定マップデータの“１”の個数（差分が許容範囲内であることを示す回数）をカウントする。判定マップデータの総数は、画像Ｉ０に含まれる画素数と同じである。画像Ｉ０内の総画素数をＮ、判定マップデータの“１”の個数をｎ、着目画素と予測画素との差分が許容範囲にあると判定される目標割合をＲとしたとき、
ｎ／Ｎ＜Ｒ      …（１）
であった場合（目標割合を下回った場合）、制御部２０１は、閾値Ｔ０をΔＴだけ増加させた上で、画像Ｉ０の再符号化を実行する。
【００７４】
上記の結果、差分符号化部２１０で生成される符号量を抑制できるため、全体の多視点画像の総符号量を安定したものとすることができる。それ故、ユーザが目標割合Ｒを自由に増減できるようにすることが望ましい。
【００７５】
［第３の実施形態］
上記第２の実施形態によれば、目標割合Ｒを“１”に近づけるほど、圧縮率をあがっていく。なぜなら、閾値Ｔ０がどんどん大きくなっていくからである。しあｋし、閾値Ｔ０が多くなると、復号画像の劣化は避けられない。従って、目標割合Ｒ（もしくは閾値Ｔ０）をユーザが変更できるようにしつつも、上限を設けることが望ましい。ただし、その目標割合Ｒを上限に設定した場合であっても、総符号量を目標符号量以下にしたいという要望が発生することも考えられる。
【００７６】
かかる点に応えるには、差分符号化部２１０において、復号画像参照モードで符号化するか否かを判定するための閾値Ｔ１、予測画素参照モードで符号化するか否かを判定するための閾値Ｔ２をもユーザに調整できるようにすることである。また、実施の形態では、量子化ステップ値Ｑを調整しても構わない。なお、閾値Ｔ０，Ｔ１，Ｔ２と量子化ステップＱは、Ｔ０，Ｔ１，Ｔ２≦Ｑの関係、換言すれば、閾値Ｔ０，Ｔ１，Ｔ２は、量子化ステップ値Ｑを上限にすることが望ましい。理由は、量子化ステップ値Ｑによって、量子化後の値（整数値）は、オリジナルの値に対して最大「Ｑ−１」の差が含まれる。故に、この関係を維持できれば、周囲画像の全画像が、オリジナルのそれぞれ画像の画素値に対して、最大でも量子化ステップ値Ｑの差の範囲内であることを保証でき、画質の評価の指標とすることができるからである。
【００７７】
図１６は、本第２の実施形態の不図示の設定部にて設定するＧＵＩの例を示している。本第２の実施形態を第１の実施形態の変形例に適用するのであれば、図１６はアプリケーションプログラムにおける環境設定のＧＵＩとみることができる。このＧＵＩには、画面上段から、目標割合Ｒ（閾値Ｔ０、ΔＴはアプリケーションが自動設定するものとする），閾値Ｔ１，閾値Ｔ２、量子化ステップ値Ｑが設けられ、ユーザが適宜設定できる。なお、設定パターンをユーザが名前を付けて登録し、状況に応じて必要なパターンを読出して利用できるようにしてもよい。
【００７８】
［第４の実施形態］
上記実施の形態では、基準画像Ｉ４以外の周囲の画像Ｉ０乃至Ｉ３，Ｉ５乃至Ｉ８を符号化する際、その順番については特に規定しなかったが、同じ画質にしながら符号化効率を上げるには、図１７に示すごとく、Ｉ３→Ｉ０→Ｉ１→Ｉ２→Ｉ５→Ｉ８→Ｉ７→Ｉ６のように、基準画像Ｉ４の周囲を囲んでいる順に行い、基準画像だけでなく、直前に符号化した画像をも参照することである。
【００７９】
図示の場合、周囲の画像Ｉ３が、基準画像Ｉ４以外では最初に符号化される。基準画像Ｉ４と画像Ｉ３とは水平方向に視野がずれている。従って、画像Ｉ３の左端近傍の全画素のほとんどは、画像Ｉ４には存在しない画素となる可能性が高く、予測誤差が大きくなるのは容易に想像できる。
【００８０】
ところが、画像Ｉ３に後続して符号化する画像Ｉ０を着目したとき、画像Ｉ３の下端近傍の多くの画素は基準画像Ｉ４には存在しないので、やはり予測誤差は大きなものとなる。しかし、画像Ｉ０の左端に位置する画素の多くは、直前に符号化した画像Ｉ３の左端に存在する可能性が高い。よって、画像Ｉ３を符号化する場合には、基準画像Ｉ４だけでなく、直前に符号化が完了した周囲の画像Ｉ３をも参照して符号化する。そのためには、復号画像参照モード、予測画素参照モード、量子化モードそれぞれについて、基準画像Ｉ４から求めた予測画像に従って実行するのに加えて、直前に符号化した画像Ｉ３から求めた予測画像に基づいても実行すればよい。
【００８１】
上記は画像Ｉ０を符号化する場合であったが、画像Ｉ１を符号化する場合も同様である。画像Ｉ１を符号化する場合には、基準画像Ｉ４と直前に符号化した画像Ｉ０を参照して符号化を行うだけである。
【００８２】
なお、差分符号化部２１０は、基準画像Ｉ４、直前に符号化した画像のいずれから求めたのかを判別できる符号化データを生成する必要があるので、第１の実施形態における差分符号化部２１０は、出力する符号化データの先頭にさらに１ビットの識別ビットを付加する。
【００８３】
復号装置では、周囲の画像を復号する場合には、符号化装置と同じ順番に復号していけば良いので、その説明は省略する。なお、本第３の実施形態に対してもコンピュータプログラムで実現できるのは明らかである。
【００８４】
以上説明したように本実施の形態によれば、多視点画像を効率よく符号化することが可能になる。また、基準画像以外では、ブロック変換、直交変換などの大規模な処理を行わなくて済み、高速に符号化することも可能になる。
【００８５】
以上実施の形態を説明したが、上記実施の形態では、多視点画像が３×３の２次元配列されたカメラ（撮像装置）からの画像を符号化する例を説明した。また、その際に、中央に位置するカメラで撮像した画像を基準画像とする例を説明した。しかしながら、カメラの配列は、３×３に限らず、ｎ×ｍの配列（ｎ，ｍはに以上の整数）に適用できるのは明らかである。４×４の配列の場合、真に中央に位置する画像は存在しないので、中央に近い１つのカメラからの画像を基準画像とすればよい。また、撮像対象が、静止物もしくは静止物とみなせる場合には、１台のカメラを、その視点位置を変えて撮像することで、結果として複数視点の画像を取得するようにしても構わない。また、多視点の画像における基準となる画像は、他の画像に対して精度の高い予測画像を生成するため、あるいは、予測誤差を小さくするため、中央に位置するカメラからの画像にすることが望ましいが、偏った位置にある画像を基準にしても構わない。
【００８６】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014230040.tif 000003
【図２】
2014230040.tif 000004
【図３】
2014230040.tif 000005
【図４】
2014230040.tif 000006
【図５】
2014230040.tif 000007
【図６】
2014230040.tif 000008
【図７】
2014230040.tif 000009
【図８】
2014230040.tif 000010
【図９】
2014230040.tif 000011
【図１０】
2014230040.tif 000012
【図１１】
2014230040.tif 000013
【図１２】
2014230040.tif 000014
【図１３】
2014230040.tif 000015
【図１４】
2014230040.tif 000016
【図１５】
2014230040.tif 000017
【図１６】
2014230040.tif 000018
【図１７】
2014230040.tif 000019