(57)【要約】【課題】多視点画像の符号化処理において、データ量を抑えつつ、処理を高速化する。【解決手段】複数のカメラユニットを含むカメラアレイから被写体までの距離を推定する距離推定手段と、複数のカメラユニットのうち独立して画像データの符号化を行う第１のカメラユニットの数と、当該第１のカメラユニットのカメラアレイにおける配置とを、距離推定手段が推定した距離に基づき決定する決定手段と、決定手段が決定した第１のカメラユニットの数および配置に基づき、各カメラユニットを、第１のカメラユニットとして、または、第１のカメラユニットの画像データを参照して自カメラユニットの画像データの符号化を行う第２のカメラユニットとして、動作させる制御手段とを備える。【選択図】図２
2017060008.tif 000002
【特許請求の範囲】
【請求項１】
複数のカメラユニットの各々から取得された、視点の異なる画像データを符号化する多視点画像符号化装置であって、
前記複数のカメラユニットを含むカメラアレイから被写体までの距離を推定する距離推定手段と、
前記複数のカメラユニットのうち独立して画像データの符号化を行う第１のカメラユニットの数と、当該第１のカメラユニットの前記カメラアレイにおける配置とを、前記距離推定手段が推定した前記距離に基づき決定する決定手段と、
前記決定手段が決定した前記第１のカメラユニットの数および配置に基づき、各カメラユニットを、前記第１のカメラユニットとして、または、前記第１のカメラユニットの画像データを参照して自カメラユニットの画像データの符号化を行う第２のカメラユニットとして、動作させる制御手段とを備える
ことを特徴とする多視点画像符号化装置。
【請求項２】
前記決定手段は、
前記被写体との距離が短くなるほど、前記第１のカメラユニットの数を多く設定する
請求項１に記載の多視点画像符号化装置。
【請求項３】
前記決定手段は、
前記第１のカメラユニットの数を２以上に設定した場合には、前記カメラアレイにおいて前記第１のカメラユニットが均一に分散されて配置されるように、前記第１のカメラユニットの前記カメラアレイにおける配置を決定する
請求項１または請求項２に記載の多視点画像符号化装置。
【請求項４】
前記第２のカメラユニットは、自カメラユニットから最も近くに配置された前記第１のカメラユニットの画像データを参照して符号化を行う
請求項１から請求項３のうちのいずれか１項に記載の多視点画像符号化装置。
【請求項５】
前記決定手段は、
前記第１のカメラユニットの数を１に設定した場合には、各カメラユニットについて、撮影範囲に含まれる被写体との最短距離を算出し、算出した前記最短距離が最も小さいカメラユニットを前記第１のカメラユニットに決定する
請求項１から請求項４のうちのいずれか１項に記載の多視点画像符号化装置。
【請求項６】
前記第２のカメラユニットは、
画像データが動画像データである場合には、前記第１のカメラユニットのＩピクチャと同タイミングのフレームに対しては、当該第１のカメラユニットのＩピクチャを参照して符号化を行い、前記第１のカメラユニットのＩピクチャと異なるタイミングのフレームに対しては、当該フレームの前後のフレームを参照して符号化を行う
請求項１から請求項５のうちのいずれか１項に記載の多視点画像符号化装置。
【請求項７】
前記決定手段は、
前記複数のカメラユニットの画角がそれぞれ異なる場合には、同じ画角を有するカメラユニットごとに、前記第１のカメラユニットの数および配置の決定を行う
請求項１から請求項６のうちのいずれか１項に記載の多視点画像符号化装置。
【請求項８】
請求項１から請求項７のうちのいずれか１項に記載の多視点画像符号化装置を備える撮影装置。
【請求項９】
複数のカメラユニットの各々から取得された、視点の異なる画像データを符号化する多視点画像符号化方法であって、
被写体との距離を推定する距離推定ステップと、
前記複数のカメラユニットのうち独立して画像データの符号化を行う第１のカメラユニットの数と、当該第１のカメラユニットの配置とを、前記推定された距離に基づき決定する決定ステップと、
前記決定された前記第１のカメラユニットの数および配置に基づき、各カメラユニットを、前記第１のカメラユニットとして、または、前記第１のカメラユニットの画像データを参照して自カメラユニットの画像データの符号化を行う第２のカメラユニットとして、動作させる制御ステップとを含む
ことを特徴とする多視点画像符号化方法。
【請求項１０】
コンピュータを請求項１から請求項８のうちのいずれか１項に記載の多視点画像符号化装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多視点画像を符号化する多視点画像符号化装置、多視点画像符号化方法およびプログラムに関する。
【背景技術】
【０００２】
近年、複数の視点で撮影された画像（以下、複数視点画像または多視点画像という）を用いて、単眼のカメラでは不可能な様々な機能を実現することが試みられている。しかし、そのような機能を実現するには、複数のカメラで撮影された画像を処理する必要があり、処理すべきデータ量が膨大になる。そのため、複数のカメラで撮影された画像を、まとめて効率よく符号化する技術（以下、多視点画像符号化技術という）が重要となる。
【０００３】
従来、単眼カメラでは、画像情報を圧縮符号化する技術の１つとして、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）規格に従って符号化する技術が知られていて、ＭＰＥＧ２、ＭＰＥＧ４およびＭＰＥＧ４ＡＶＣなどが一般に広く使われている。これらの圧縮符号化技術の主な特徴は、予測符号化対象のピクチャ（以下、予測符号化対象ピクチャ）と、既に符号化され再構成されたピクチャ（以下、参照ピクチャ）との差分を符号化することである。具体的には、予測符号化対象ピクチャと参照ピクチャとの差分に、離散コサイン変換（ＤＣＴ  ：  Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）と量子化とを行い、量子化された結果を可変長符号化する。
【０００４】
ここで、上記の圧縮符号化技術で符号化された画像データを復号する場合について説明する。
【０００５】
例えば、ＭＰＥＧ２で符号化された画像データは、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの３種類のピクチャから構成されている。
【０００６】
Ｉピクチャは、他のピクチャを参照しないで符号化されたピクチャである。したがって、Ｉピクチャを復号する際は、Ｉピクチャ単体で復号することができる。Ｐピクチャは、過去のＩピクチャまたはＰピクチャを参照し、参照したピクチャとの差分を用いて符号化されるピクチャである。したがって、Ｐピクチャを復号する際は、過去のＩピクチャまたはＰピクチャを参照して復号するため、参照するＩピクチャまたはＰピクチャを予め復号しておく必要がある。
【０００７】
Ｂピクチャは、過去のＩピクチャまたはＰピクチャと未来のＩピクチャまたはＰピクチャとを参照して、参照したピクチャとの差分を用いて符号化されるピクチャである。したがって、Ｂピクチャを復号する際は、前後のＩピクチャまたはＰピクチャを参照して復号するため、参照する前後のＩピクチャまたはＰピクチャを予め復号しておく必要がある。
【０００８】
多眼カメラにおいては、上記の圧縮符号化技術だけではカメラの台数に比例してデータ量が増加するため、カメラ間（多視点間）の圧縮符号化処理が行われる。近年では、複数の視点のそれぞれから撮影された動画像データ（複数のチャンネルの動画像データ）を、Ｈ．２６４／ＭＶＣ規格に基づいて符号化する多視点映像符号化技術が知られている。複数の動画像データは、被写体を複数の視点から撮影することで得られたデータであるので、互いに類似しているという特徴を有する。上記多視点映像符号化技術では、この特徴（相関関係）を利用して圧縮率を向上させる。具体的には、上記多視点映像符号化技術では、他のチャンネルの動画像データを参照して、１つのチャンネルの動画像データを符号化する。Ｈ．２６４／ＭＶＣ規格は、例えば、視聴者が立体的に感じることができる三次元映像を符号化する際に用いられる。
【０００９】
特許文献１には、複数のビデオカメラから取得された映像シーケンスを符号化する手法が提案されている。特許文献１に記載された手法では、全てのビデオカメラの中心位置に配置されたビデオカメラ（ベースビデオカメラ）の映像シーケンスを独立して符号化し、隣接するビデオカメラの映像シーケンスを、先に符号化された映像シーケンスを参照して符号化する。以降、映像シーケンスが符号化されたビデオカメラに隣接する、ビデオカメラの映像シーケンスについて同様の処理が繰り返され、ベースビデオカメラの周辺のビデオカメラの画像データが順次符号化される。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許第４５７０１５９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、特許文献１に記載された手法では、全てのビデオカメラの中心位置に配置されたビデオカメラのみをベースビデオカメラとし、さらに、当該ベースビデオカメラから順次符号化処理を行っているため、符号化処理に時間がかかるおそれがある。それにより、リアルタイム性が要求されるブロック間通信、例えば、撮像系（撮像センサなど）から現像系（画像処理部など）へのデータ転送時に問題が発生することが予想される。
【００１２】
そこで、本発明は、多視点画像の符号化処理において、データ量を抑えつつ、処理を高速化する多視点画像符号化装置、多視点画像符号化方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明による多視点画像符号化装置は、複数のカメラユニットの各々から取得された、視点の異なる画像データを符号化する多視点画像符号化装置であって、複数のカメラユニットを含むカメラアレイから被写体までの距離を推定する距離推定手段と、複数のカメラユニットのうち独立して画像データの符号化を行う第１のカメラユニットの数と、当該第１のカメラユニットのカメラアレイにおける配置とを、距離推定手段が推定した距離に基づき決定する決定手段と、決定手段が決定した第１のカメラユニットの数および配置に基づき、各カメラユニットを、第１のカメラユニットとして、または、第１のカメラユニットの画像データを参照して自カメラユニットの画像データの符号化を行う第２のカメラユニットとして、動作させる制御手段とを備えることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、多視点画像の符号化処理において、データ量を抑えつつ、処理を高速化することができる。
【図面の簡単な説明】
【００１５】
【図１】実施例１における多眼方式の撮影装置の概観を示す説明図である。
【図２】実施例１における多眼方式の撮影装置の構成の一例を示す説明図である。
【図３】符号化回路および符号化回路制御部の内部構成を示す説明図である。
【図４】カメラユニットの配置例を示す説明図である。
【図５】多眼方式の撮影装置の状態遷移を示す状態遷移図である。
【図６】カメラアレイから被写体までの距離と、基準カメラユニットとの相関関係を示す説明図である。
【図７】基準カメラユニットの数が１に決定された場合における、基準カメラユニットの決定方法を説明するための説明図である。
【図８】異なる画角を有するカメラユニットが交互に配置されている様子を示す説明図である。
【図９】符号化回路制御部における符号化処理を示すフローチャートである。
【図１０】複数の視点で撮影された動画像データを予測符号化する処理を説明するための説明図である。
【図１１】距離推定部における距離推定処理を示すフローチャートである。
【図１２】距離推定処理を説明するための説明図である。
【図１３】差分処理を用いた予測符号化処理を説明するための説明図である。
【図１４】基準カメラユニットに対応する参照カメラユニットの範囲を示す説明図である。
【発明を実施するための形態】
【００１６】
［実施例１］
以下、図面を参照して、本発明を実施する形態について説明する。なお、以下に示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１７】
［装置の概観］
図１には、実施例１における多眼方式の撮影装置（以下、多眼カメラ）１００の概観を示す説明図である。図１（ａ）には、多眼カメラ１００を正面から見た概観図が示されている。図１（ｂ）には、多眼カメラ１００を背面から見た概観図が示されている。
【００１８】
図１（ａ）に示すように、多眼カメラ１００の正面（図１（ａ）において手前の面）にはカメラユニット１０１を複数配置したカメラアレイが配置され、上面（図１（ａ）において上側の面）には撮影開始を指示するレリーズボタン１０６が配置されている。カメラユニット１０１はそれぞれ、撮影レンズ１０２と、光学フィルタ１０３と、撮像デバイス１０４と、周辺回路１０５とを含む。本実施例では、このようなカメラアレイによる同時撮影によって複数視点画像が得られる。
【００１９】
図１（ｂ）に示すように、多眼カメラ１００の側面（図１（ｂ）において右側の面）には半導体メモリカードのような記録媒体を装着するメモリカードスロット１１３が配置されている。なお、メモリカードスロット１１３の代わりにＵＳＢなどのシリアルバスインタフェイスを配置して、シリアルバスを介してハードディスクドライブなどの記憶装置を接続してもよい。また、多眼カメラ１００の背面（図１（ｂ）において手前の面）には表示部１０７、十字状に配置されたキー群１０８、電源ボタン１０９、メニューボタン１１０、決定ボタン１１１、キャンセルボタン１１２などが配置されている。
【００２０】
なお、本実施例の多眼カメラ１００は光学ファインダを備えないので、ユーザは、表示部１０７に表示される画像を用いて、フレーミング操作（ピントや構図の確認）を行う。表示部１０７の表示画面には、撮影範囲をリアルタイムに表示するライブビュー表示や、メニューボタン１１０が押された場合に表示されるカメラ設定メニュー表示などがある。なお、カメラ設定メニューが表示された状態でメニューボタン１１０が押されると、表示部１０７の表示画面はライブビュー表示に復帰する。
【００２１】
カメラ設定メニューが表示された状態において、ユーザは、キー群１０８を操作して、選択した設定項目の状態を変更し、決定ボタン１１１を押して変更を決定するか、キャンセルボタン１１２を押して変更をキャンセルする。カメラ設定メニューにより変更が可能な設定項目には、動画撮影・静止画撮影などの撮影モードの切り替え、絞り値、シャッタスピードなどがある。
【００２２】
以下の説明において、絞り値、シャッタスピード、ズーム位置は、カメラアレイを構成するカメラユニット１０１それぞれについてすべて同値に設定されるとして説明を行うが、カメラユニット１０１それぞれに異なる値が設定されてもよい。また、撮影距離（ピント）については、例えば、後述するＣＰＵ２００が、表示部１０７のタッチスクリーンやキー群１０８の操作により指定される自動焦点（ＡＦ）測距枠に対応する、被写体までの距離を算出し、算出した距離を全カメラユニットの撮影距離に設定する。
【００２３】
［装置の構成］
まず、実施例１における多眼カメラ１００の構成を説明する。図２は、実施例１における多眼カメラ１００の構成の一例を示す説明図である。
【００２４】
本実施例における多眼カメラ１００は、図２に示すように、マイクロプロセッサ（ＣＰＵ）２００と、複数のカメラユニット１０１（１０１−１〜１０１−ｎ）と、画像処理部２１１と、距離推定部２１５と、スイッチ（ＳＷ）２０６と、符号化回路制御部２０８と、バッファメモリ２１０と、復号回路２１６と、バックライト２１２と、ＬＣＤモニタ２１３とを備える。
【００２５】
ＣＰＵ２００は、内蔵するＲＯＭなどに格納された制御プログラムを実行して、各カメラユニット１０１が出力する画像データを画像処理するとともに、後述する各構成要素を制御して多眼カメラ１００全体の動作を制御する。ＣＰＵ２００の制御対象には、ＬＣＤなどの表示部１０７の表示制御、表示部１０７のバックライトの制御、各カメラユニット１０１の電源制御などがある。
【００２６】
各カメラユニット１０１は、上述したように、撮影レンズ１０２と、光学フィルタ１０３と、撮像デバイス１０４と、周辺回路１０５とを含む。
【００２７】
周辺回路１０５は、撮像装置制御回路２０３と、画像処理回路２０４と、電源回路２０５と、符号化回路２０７と、フレームメモリ２０９とを含む。
【００２８】
撮像装置制御回路２０３は、撮影レンズ１０２の各種制御やシャッタ制御などを行う。例えば、撮像装置制御回路２０３は、撮影距離に合わせて撮影レンズ１０２を駆動する撮影距離制御、絞り値に合わせて撮影レンズ１０２の光量調節器を駆動する絞り制御、露出時間に合わせて撮像デバイス１０４を駆動するシャッタ制御を行う。
【００２９】
画像処理回路２０４は、撮像デバイス１０４が出力する画像信号を処理してデジタルデータに変換して得られた画像データ（ＲＡＷ画像データ）を、符号化回路２０７に送る。
【００３０】
電源回路２０５は、カメラユニット１０１の各構成要素に電力を供給する。
【００３１】
符号化回路２０７は、画像処理回路２０４から受け取った画像データの符号化を行い、符号化した画像データをフレームメモリ２０９に格納する。
【００３２】
フレームメモリ２０９は、例えばＲＡＭである。フレームメモリ２０９に格納された画像データは、ＣＰＵ２００によってバッファメモリ２１０に転送される。
【００３３】
符号化回路制御部２０８は、距離推定部２１５から出力される情報に基づき、符号化回路２０７を制御する。符号化回路制御部２０８の詳細については、後述する。
【００３４】
復号回路２１６は、バッファメモリ２１０に格納された、符号化された画像データを復号する。復号回路２１６は、復号して得られたＲＡＷ画像データを、画像処理部２１１に送る。
【００３５】
画像処理部２１１は、復号回路２１６から受け取った画像データに対して画像処理を行う。画像処理部２１１は、復号回路２１６から受け取った各カメラユニットの画像データを合成して、新たな画像データを生成する。本実施例では、新たな画像データとしてパノラマ画像データを生成する。なお、画像処理部２１１は、パノラマ画像データ以外の画像データを生成するようにしてもよい。また、画像処理部２１１が、復号する前の画像データに対して画像処理を行うことが可能な場合には、復号回路２１６を設けずに、バッファメモリ２１０に格納された画像データをそのまま画像処理部２１１に入力するようにしてもよい。画像処理部２１１は、新たな画像データを、表示部１０７等の表示装置に表示可能な画像データの形式に変換して、記録媒体２１４に格納する。
【００３６】
距離推定部２１５は、後述する距離推定方法を用いて、バッファメモリ２１０に格納された画像データにもとづいて、カメラアレイから最短被写体までの距離を推定する。最短被写体は、カメラユニットとの距離が最短である被写体である。距離推定部２１５は、最短被写体までの距離を示す情報（以下、最短被写体距離情報という）を、符号化回路制御部２０８に転送する。
【００３７】
バックライト２１２とＬＣＤモニタ２１３は、図１（ｂ）に示す表示部１０７を構成する。
【００３８】
ここで、符号化回路２０７および符号化回路制御部２０８の詳細を、図３を用いて説明する。図３は、符号化回路２０７および符号化回路制御部２０８の内部構成を示す説明図である。
【００３９】
図３に示すように、符号化回路２０７は、撮影画像取得部２２４と、予測符号化部２２５と、独立符号化部２２６とを有する。
【００４０】
撮影画像取得部２２４は、後述する制御信号を受信する。予測符号化部２２５は、制御信号に応じて予測符号化を行う。独立符号化部２２６は、制御信号に応じて独立符号化を行う。
【００４１】
なお、各カメラユニットが、ＣＰＵなどを備えている場合には、当該ＣＰＵに、予測符号化部２２５および独立符号化部２２６の処理を実行させるようにしてもよい。
【００４２】
また、図３に示すように、符号化回路制御部２０８は、被写体距離情報取得部２２０と、基準カメラユニット数決定部２２１と、基準カメラユニット配置決定部２２２と、符号化制御部２２３とを有する。以下、独立して画像データの符号化を行うカメラユニットを基準カメラユニット（または第１のカメラユニット）と称する。また、基準カメラユニットの画像データを参照して符号化を行うカメラユニットを参照カメラユニット（または第２のカメラユニット）と称する。
【００４３】
被写体距離情報取得部２２０は、前述の最短被写体距離情報を受信する。基準カメラユニット数決定部２２１は、基準カメラユニットの数を決定する。基準カメラユニット配置決定部２２２は、基準カメラユニットのカメラアレイにおける配置を決定する。符号化制御部２２３は、各カメラユニット１０１へ制御信号を送信する。
【００４４】
［カメラユニットの配置］
図４は、カメラユニット１０１の配置例を示す説明図である。図４において、矩形は各カメラユニット１０１を表し、矩形の並びは多眼カメラ１００を正面から観た場合のカメラユニット１０１の配置例を表す。カメラユニット１０１の配置パターンとして、図４（ａ）〜図４（ｄ）に示すような配置パターンが考えられる。なお、カメラユニット１０１の配置パターンは、図４に示す配置パターンに限られない。以下では、多眼カメラ１００のカメラユニット１０１が図４（ｃ）に示す配置パターンで配置されているものとして説明を行う。
【００４５】
［撮影状態遷移］
図５は、多眼カメラ1００の状態遷移を示す状態遷移図である。多眼カメラ１００の動作状態は、電源ボタン１０９のオン／オフ操作により、スタンバイ状態Ｓ１０とライブビュー状態Ｓ１１との間を遷移する。
【００４６】
静止画撮影モードには、一般に、フレーミング（ライブビュー）状態Ｓ１１、撮影準備（フォーカシング、露出決定）状態Ｓ１２、静止画撮影状態Ｓ１３があり、これら３つの状態を経るシーケンスによって画像が取得される。一方、動画撮影モードにおいては、ライブビュー状態Ｓ１１から録画が開始されると動画撮影状態Ｓ１４になり、その後、録画が停止されるとライブビュー状態Ｓ１１に戻るシーケンスによって、動画データが取得される。
【００４７】
多眼カメラ１００が静止画撮影モードにある場合、ライブビュー状態Ｓ１１において、レリーズボタン１０６が途中まで押された状態（半押状態）になると、多眼カメラ１００は撮影準備状態Ｓ１２になる。撮影準備状態Ｓ１２においてＳＷ２０６がオン状態になると、多眼カメラ１００は、静止画撮影状態Ｓ１３に移行し、静止画の撮影を開始する。なお、ＳＷ２０６は、レリーズボタン１０６が最後まで押された状態（全押状態）で閉状態（オン状態）になる。静止画撮影状態Ｓ１３において、多眼カメラ１００は、撮影準備状態Ｓ１２において決定した露光時間が経過すると、静止画の撮影を終了し、ライブビュー状態Ｓ１１に移行する。多眼カメラ１００は、撮影した静止画を、例えばメモリカードスロット１１３に装着された記録媒体２１４に格納する。
【００４８】
多眼カメラ１００が動画撮影モードにある場合、ライブビュー状態Ｓ１１において、レリーズボタン１０６が最後まで押されＳＷ２０６がオン状態になると、多眼カメラ１００は、動画撮影状態Ｓ１４に移行し、動画撮影（録画）を開始する。多眼カメラ１００は、動画撮影を開始後、ＳＷ２０６が一旦開状態（オフ状態）になり再びオン状態になると、動画撮影を停止し、ライブビュー状態Ｓ１１に移行する。そして、多眼カメラ１００は、撮影して得られた動画像データを、例えばメモリカードスロット１１３に装着された記録媒体２１４に格納する。なお、動画撮影中は、ズーム操作によって撮影レンズ１０２の画角を変更することができる。
【００４９】
［基準カメラユニットの決定方法］
多眼カメラ１００が各カメラユニットの撮影画像の符号化を行う際に用いる、基準カメラユニットの決定方法を以下に示す。
【００５０】
まず、カメラアレイから被写体（以下、撮影オブジェクトともいう）までの距離と、基準カメラとの相関関係について、図６を用いて説明する。
【００５１】
図６は、カメラアレイから被写体までの距離と、基準カメラユニットとの相関関係を示す説明図である。図６（ａ）は、カメラアレイから被写体までの距離と、画角が重なり合うカメラユニットの個数との関係を示す。図６（ａ）には、水平方向に４つ並べられたカメラユニットが例示されている。図６（ａ）に示すように、カメラアレイと被写体との距離が短いほど画角の重なり合うカメラユニットの数が少なくなる。逆に、カメラアレイと被写体との距離が長いほど画角の重なり合う撮像部の数が多くなる。カメラユニット間で予測符号化を行う際の圧縮率は、カメラユニット同士の重なり合う画角の領域によって変化する。そのため、カメラアレイと被写体との距離によって圧縮率が変化する。そこで本発明では、図６（ｂ）に示すように、被写体との最短距離に応じて、基準カメラユニットを増減させる。図６（ｂ）には、被写体との最短距離と、基準カメラユニットのカメラアレイにおける配置との関係が示されている。図６（ｂ）における矩形および矩形の並びは、図３と同様に、各カメラユニット１０１とその配置を示す。黒塗りの矩形は、基準カメラユニットを示す。白抜きの矩形は、参照カメラユニットを示す。
【００５２】
多眼カメラ１００が基準カメラユニットの数を決定する際には、まず距離推定部２１５が距離推定により被写体との距離を推定する。さらに、距離推定部２１５は、推定した結果をもとに生成した最短被写体距離情報を、符号化回路制御部２０８に転送する。符号化回路制御部２０８の基準カメラユニット数決定部２２１は、最短被写体距離情報に基づき、最短被写体との距離が短い場合には、全カメラユニットに対する基準カメラユニットの割合を増加させる。一方、最短被写体との距離が長い場合には、基準カメラユニット数決定部２２１は、全カメラユニットに対する基準カメラユニットの割合を減少させる。例えば、図６（ｂ）に示すように、最短被写体との距離が０．１ｍ〜０．１２ｍの場合、８１個中９個のカメラユニットが基準カメラユニットに決定される。同様に、最短被写体との距離が０．１２ｍ〜０．２ｍの場合は、８１個中５個のカメラユニットが基準カメラユニットに決定される。最短被写体との距離が０．２ｍ〜２ｍの場合は、８１個中４個のカメラユニットが基準カメラユニットに決定される。最短被写体との距離が２ｍ以上の場合は、８１個中１個のカメラユニットが基準カメラユニットに決定される。
【００５３】
基準カメラユニット配置決定部２２２は、決定された基準カメラユニットの数に応じて、基準カメラユニットのカメラアレイにおける配置を決定する。その際、基準カメラユニット配置決定部２２２は、カメラアレイにおいて基準カメラユニットが均一に分散されて配置されるように、基準カメラユニットのカメラアレイにおける配置を決定する。
【００５４】
次に、基準カメラユニットの数が１に決定された場合における、基準カメラユニットの決定方法を、図７を用いて説明する。
【００５５】
図７は、基準カメラユニットの数が１に決定された場合における、基準カメラユニットの決定方法を説明するための説明図である。図７（ａ）には、同一平面上に縦３列横３列で等間隔にカメラユニットが配置された多眼カメラと、被写体１，２，３とを上方から俯瞰した様子が示されている。図７（ａ）では、カメラユニット５０１〜５０３のみが図示されているが、その下方には、カメラユニット５０４〜５０６が配置されている。さらにその下方には、カメラユニット５０７〜５０９が配置されている。すわなち、カメラユニット５０１〜５０３はカメラ上段に配置されているカメラユニット群である。カメラユニット５０４〜５０６はカメラ中央段に設置されているカメラユニット群である。カメラユニット５０７〜５０９はカメラ下段に設置されているカメラユニット群である。なお、ここでは、カメラユニットが２次元で配置された多眼カメラを例にしているが、カメラユニットは、３次元で配置されていてもよい。図７（ｂ）には、カメラユニット５０１〜５０９の撮像画像を合成して生成されるパノラマ画像の、フレーム全体に対するカメラユニット５０１〜５０９の撮影範囲を点線で表した画像６０１〜６０９が示されている。
【００５６】
図７（ｂ）の下側の折れ線グラフは、水平方向の位置が同じであるカメラユニットについて算出された、最短被写体の距離を示す。図７（ｂ）の右側の折れ線グラフは、垂直方向の位置が同じであるカメラユニットについて算出された、最短被写体の距離を示す。
【００５７】
各カメラユニットについて、列毎（水平方向における位置が同じであるカメラユニット毎）に最短被写体との距離を求めた場合、カメラユニット５０１，５０４，５０７に対応する列では、画像６０１，６０４，６０７に示されるように、被写体３が最短被写体となる。また、カメラユニット５０２，５０５，５０８に対応する列では、画像６０２，６０５，６０８に示されるように、被写体１が最短被写体となる。また、カメラユニット５０３，５０６，５０９に対応する列では、画像６０３，６０６，６０９に示されるように、被写体２が最短被写体となる。
【００５８】
同様に、各カメラユニットについて、行毎（垂直方向における位置が同じであるカメラユニット毎）に最短被写体との距離を求めた場合、カメラユニット５０１〜５０３に対応する行では、画像６０１〜６０３に示されるように、被写体２が最短被写体になる。また、カメラユニット５０４〜５０６に対応する行では、画像６０４〜６０６に示されるように、被写体１が最短被写体になる。また、カメラユニット５０７〜５０９に対応する行では、画像６０７〜６０９に示されるように、被写体１が最短被写体になる。
【００５９】
以上より、水平方向の最短被写体距離が最も短い列は中央列になる。また、垂直方向の最短被写体距離が最も短い行は中央行、および下段行になる。符号化回路制御部２０８（具体的には、符号化回路制御部２０８の基準カメラユニット配置決定部２２２）は、最短被写体距離が最も近い行と列とが交差する位置に配置されたカメラユニット（カメラユニット５０５、または、カメラユニット５０８）のいずれかを基準カメラユニットに決定する。基準カメラユニット配置決定部２２２がいずれのカメラユニットを基準カメラユニットに決定するかは、よりセンタカメラユニット（全カメラユニットの中心付近に配置されるカメラユニット）に近い方を選択するなど、あらかじめ決められた方式に基づき選択する。なお、基準カメラユニットの数が１に決定された場合は、全被写体が十分遠景に位置し、カメラユニット間の差があまり出ないため、カメラアレイにおいて偏った位置に基準カメラユニットを設定しても問題ない。
【００６０】
なお、本実施例では、例えば次のようにして、最短被写体距離が最も近い行と列とが交差する位置に配置されたカメラユニットを特定する。まず、距離推定部２１５が、各カメラユニットについて、各カメラユニットの撮影範囲に含まれる被写体との最短距離を推定する。そして、符号化回路制御部２０８が、各カメラユニットのうち、推定された最短距離が最も小さいカメラユニットを特定し、特定したカメラユニットを基準カメラユニットに決定する。
【００６１】
ここで、異なる画角を有するカメラユニットを含む多眼カメラにおける基準カメラユニットの決定方法を説明する。
【００６２】
図８は、異なる画角を有するカメラユニット（広角カメラユニットと望遠カメラユニット）が交互に配置されている様子を示す説明図である。図８に示すように画角が異なるカメラユニットが配置されている場合は、符号化回路制御部２０８は、上記の基準カメラユニットの決定処理を、同じ画角を有するカメラユニット同士間で行う。それにより、広角カメラユニットと望遠カメラユニットとのそれぞれから、基準カメラユニットが決定される。また、符号化処理に関しても同様に、後述する符号化処理フローを、同じ画角を有するカメラ同士間で実行する。なお、図８には、２種類のカメラユニットが例示されているが、多眼カメラには、異なる画角を有するカメラユニットとして、３種類以上のカメラユニットが含まれていてもよい。
【００６３】
［符号化処理フロー］
符号化処理フローについて、図９を用いて説明する。図９は、符号化回路制御部２０８における符号化処理を示すフローチャートである。
【００６４】
まず、符号化回路制御部２０８の被写体距離情報取得部２２０が、距離推定部２１５から、最短被写体距離情報を受け取ると（ステップＳ９０１）、基準カメラユニット数決定部２２１は、最短被写体距離情報をもとに、基準カメラユニットの数を決定する（ステップＳ９０２）。次に、基準カメラユニット配置決定部２２２が、基準カメラユニットのカメラアレイにおける配置を決定する（ステップＳ９０３）。特に、基準カメラユニットの数が１つである場合は、基準カメラユニット配置決定部２２２は、前述した方法に基づき、基準カメラユニットのカメラアレイにおける配置を決定する。符号化制御部２２３は、基準カメラユニット配置決定部２２２の決定の結果にもとづいて、各カメラユニットが基準カメラユニットであるか、参照カメラユニットであるかを判別するための制御信号を符号化回路２０７の撮影画像取得部２２４に送信する。
【００６５】
撮影画像取得部２２４は、画像処理回路２０４から受け取った画像データを、受信した制御信号に応じて転送する（ステップＳ９０４）。具体的には、制御信号が自カメラユニットを参照カメラユニットとして動作させるための信号である場合は（ステップＳ９０４のＮＯ）、撮影画像取得部２２４は、画像データを予測符号化部２２５へ転送する。制御信号が自カメラユニットを基準カメラユニットとして動作させるための信号である場合は（ステップＳ９０４のＹＥＳ）、撮影画像取得部２２４は、画像データを独立符号化部２２６へ転送する。
【００６６】
基準カメラユニットでは、独立符号化部２２６が、撮影画像取得部２２４から受け取った画像データに対して、自カメラユニットの情報のみで独立符号化を行う（ステップＳ９０５）。また、参照カメラユニットでは、予測符号化部２２５が、最も近い基準カメラユニットの情報を用いて予測符号化を行う（ステップＳ９０６）。この際行われる予測符号化処理については、後述する。参照カメラユニットから最も近い基準カメラユニットが２つ以上存在する場合は、予測符号化部２２５は、あらかじめ決められた基準カメラユニットを選択し予測符号化を行う。
【００６７】
ここで、動画撮影時など、連続的に画像データを符号化する場合の処理を説明する。図１０は、複数の視点で撮影された動画像データを予測符号化する処理を説明するための説明図である。図１０に示すカメラユニットの構成は、図７と同じである。また、図１０に示す例では、基準カメラユニットとしてカメラユニット５０５が選択されている。従って、カメラユニット５０５の映像シーケンスは独立して符号化される。また、参照カメラユニットであるカメラユニット５０１〜５０４，５０６〜５０９は、カメラユニット５０５の符号化された映像シーケンスを参照して予測符号化を行う。図１０におけるＩ５０はＩピクチャであって、独立符号化されるフレームを示す。図１０におけるＰ１０，Ｐ２０，Ｐ３０，Ｐ４０，Ｐ６０，Ｐ７０，Ｐ８０，Ｐ９０はＰピクチャであって、Ｉ５０と同タイミングのフレームであり、Ｉ５０を用いて予測符号化されたフレームを示す。すなわち、Ｉ５０は、Ｐ１０，Ｐ２０，Ｐ３０，Ｐ４０，Ｐ６０，Ｐ７０，Ｐ８０，Ｐ９０の参照フレームである。基準カメラユニット以外のカメラユニット５０１〜５０４，５０６〜５０９の次フレーム（Ｂピクチャ）Ｂ１１，Ｂ２１，Ｂ３１，Ｂ４１，Ｂ６１，Ｂ７１，Ｂ８１，Ｂ９１に関しては、カメラユニットごとに他のフレーム（例えば、前後のフレーム）を参照してフレーム間予測による符号化を行ってもよいし、カメラユニット５０５の同タイミングのフレームＢ５１を用いて、カメラユニット間で予測符号化を行ってもよい。
【００６８】
［距離推定処理］
距離推定部２１５は、多眼カメラ１００で撮影した複数視点画像に基づいて、撮影したシーンにおける被写体との距離を推定して距離マップ（デプス画像）を生成する。撮影したシーンにおける被写体とは、本実施例では複数視点画像を合成して生成されるパノラマ画像のフレーム内の被写体である。距離推定方法にはステレオ法、マルチベースラインステレオ法などがある。本実施例では、距離推定部２１５はステレオ法による距離推定を行う。図１１は、距離推定部２１５における距離推定処理を示すフローチャートである。図１２は、距離推定を説明するための説明図である。
【００６９】
距離推定部２１５は、ＣＰＵ２００が複数視点画像から選択した、二つの画像を入力する（ステップＳ１１０１）。図１２（ａ）における矩形および矩形の並びは、図４と同様に、各カメラユニットとその配置を示す。ＣＰＵ２００は、例えば、図１２（ａ）に示すように、センタカメラユニット５１が撮影した画像（以下、基準画像）と、距離推定用のカメラユニット５２のうち任意の一台が撮影した画像（以下、対応画像）とを、距離の推定に使用する画像として選択する。
【００７０】
次に、距離推定部２１５は、基準画像の任意の点（例えば原点）に注目画素を設定し（ステップＳ１１０２）、注目画素とその周囲画素を含む注目領域を設定する（ステップＳ１１０３）。そして、距離推定部２１５は、注目領域と対応画像の間でブロックマッチングを行って、注目画素に対応する対応画像の画素（対応画素）を決定する（ステップＳ１１０４）。
【００７１】
次に、距離推定部２１５は、対応画像を撮影したカメラユニット５２の画角や、センタカメラユニット５１からの相対位置などを示す撮像装置情報や、注目画素と対応画素の座標に基づき、注目画素に対応する距離ｐを計算する（ステップＳ１１０５）。
【００７２】
図１２（ｂ）には、センタカメラユニット５１とカメラユニット５２と被写体５３とを上方から俯瞰した様子が示されている。図１２（ｂ）に示すｘ軸は、各カメラユニットが配置された面の平行方向を表す。ｙ軸は、各カメラユニットが配置された面の法線方向を表す。各カメラユニットと被写体５３との距離ｐは次式によって計算される。
ｐ＝{ｓｉｎα・ｓｉｎβ/ｓｉｎ(π−α−β)}ｓ
【００７３】
ここで、角度αは、センタカメラユニット５１の水平画角と、基準画像の撮像位置と、注目画素の座標とから算出される。角度βは、距離推定用のカメラユニット５２の水平画角と、対応画像の撮像位置と、対応画素の座標とから算出される。距離ｓは、センタカメラユニット５１とカメラユニット５２との距離であり、基準画像と対応画像の撮像位置から算出される。
【００７４】
次に、距離推定部２１５は、基準画像の全画素に対応する距離ｐを計算したか否かを判定する（ステップＳ１１０６）。未計算の画素がある場合は（ステップＳ１１０６のＮＯ）、距離推定部２１５は、注目画素を移動して（ステップＳ１１０７）、ステップＳ１１０３の処理に戻る。基準画像の全画素に対応する距離ｐが計算されている場合は（ステップＳ１１０６のＹＥＳ）、距離推定部２１５は、各画素に対応する距離ｐを、各画素の画素値に対応させた距離マップを生成する（ステップＳ１１０８）。
【００７５】
なお、距離推定部２１５は、上記処理により生成された距離マップに基づいて、カメラアレイから最短被写体までの距離を推定する。
【００７６】
また、撮影距離は、上記処理により生成された距離マップに基づいて決定される。例えば、ＣＰＵ２００が、ユーザ操作等により別途指定された測距枠に対応する距離マップ上の領域を求め、その領域内の距離情報を用いて撮影距離を決定する。図１２（ｃ）には、測距枠に対応する距離マップ上の領域が求められる様子が示されている。
【００７７】
［予測符号化処理］
符号化回路制御部２０８が上記の基準カメラユニットの決定処理を行った後に、参照カメラユニットの符号化回路２０７における予測符号化部２２５は、基準カメラユニットの画像データと、自カメラユニットの画像データとの位置合わせ処理を行った後、基準カメラユニットの情報を用いて予測符号化処理を行う。予測符号化処理には、単純差分方式や、複合差分方式等あるが、いずれの方法でも構わない。位置合わせ処理は、基準カメラユニットの画像データと、自カメラユニットの画像データとが重なる領域のずれを解消する処理である。例えば、予測符号化部２２５は、基準カメラユニットの画像データと、自カメラユニットの画像データとが重なる領域において、同じ被写体に対応する画素を対応付けして、当該領域のずれを解消する。
【００７８】
図１３は、差分処理を用いた予測符号化処理を説明するための説明図である。図１３に示す、基準カメラユニットが撮像したフレームであって、独立符号化されたフレーム内の点Ｘ´、Ａ´を用いて、参照カメラユニットが撮像したフレーム内のＸ、Ａを予測符号化する場合には、予測符号化部２２５は、例えば以下に示す式を用いる。  
単純差分方式
Δ＝Ｘ−Ｘ´
複合差分方式
Δ＝Ｘ−Ａ−（Ｘ´−Ａ´）
【００７９】
図１４は、基準カメラユニットに対応する参照カメラユニットの範囲を示す説明図である。図１４において点線で囲われた部分は、同一の基準カメラユニットを用いて、符号化を行う参照カメラユニットの範囲を示す。参照カメラユニット（具体的には、参照カメラユニットの予測符号化部２２５）は、最も近い距離に位置する基準カメラユニットの情報を用いて予測符号化を行う。２つ以上の基準カメラユニットが参照カメラユニットと等しい距離に位置する際は、当該参照カメラユニットの予測符号化部２２５は、あらかじめ決められた方の基準カメラユニットの情報を用いて符号化を行う。
【００８０】
また、符号化回路制御部２０８は、動画撮影時、またはフレーミング時に予測符号化による圧縮率を監視し、当該圧縮率が閾値以下になった場合には、再度基準カメラユニットの数および配置を決定する。そして、符号化回路制御部２０８は、再度決定した基準カメラユニットの数および配置に基づいて、各カメラユニットへ制御信号を送信し直す。
【００８１】
以上に説明したように、本実施例では、被写体との距離に応じて、基準カメラユニットの数と配置とを決定する。そして、参照カメラユニットが自カメラユニットに最も近い基準カメラユニットの情報を参照して符号化を行う。したがって、特許文献１に記載された手法のように、ベースビデオカメラから周囲のビデオカメラへ順次符号化処理を実行させる必要がないので、符号化処理を高速化することができる。それにより、ブロック間通信、例えば撮像系（カメラユニット１０１−１〜１０１−ｎ）から現像系（画像処理部２１１）へのデータ転送において要求される、リアルタイム性を確保することができる。
【００８２】
また、本実施例では、被写体との距離に応じて、基準カメラユニットの数と配置とを決定し、基準カメラユニットの画角と参照カメラユニットの画角との重なり合う領域を調整する。したがって、本実施例によれば、基準カメラユニットと参照カメラユニットとの間で符号化を行う際の圧縮率を高めることができ、データ量を抑えることができる。
【００８３】
また、本実施例では、基準カメラユニットの画像データと、参照カメラユニットの画像データとの位置合わせ処理を行うようにしているので、さらにデータ量を抑えることができる。
【００８４】
さらに、本実施例では、現像系に対して、ＲＡＷ画像データではなく、符号化回路２０７によって符号化された画像データを転送するので、撮像系と現像系との間の通信負荷を低減させることができる。
【００８５】
なお、本実施例では、符号化回路２０７を、撮像系の内部に配置しているが、符号化回路２０７は、撮像系の外部に配置されていてもよい。そのような構成によれば、既存のビデオカメラから得られた多視点画像を外部に設置されたサーバ等で処理する多眼カメラシステムにも、本発明を適用することができる。例えば、複数台のビデオカメラと、各ビデオカメラから出力される画像データを符号化する装置（多視点画像符号化装置）と、符号化された画像データに対して画像処理を行うサーバとを備える多眼カメラシステムに本発明を適用することができる。その場合、多視点画像符号化装置に、少なくとも、符号化回路２０７と符号化回路制御部２０８と距離推定部２１５とを搭載すればよい。そして、多視点画像符号化装置が、符号化した画像データをサーバに送信するようにすればよい。このとき、ビデオカメラの台数に応じて符号化回路を複数搭載し、各符号化回路が、対応するビデオカメラの画像データを符号化するようにしてもよいし、符号化回路を１つだけ搭載し、当該符号化回路が各ビデオカメラの画像データを符号化するようにしてもよい。
【００８６】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８７】
２０７  符号化回路
２０８  符号化回路制御部
２１５  距離推定部
【図１】
2017060008.tif 000003
【図２】
2017060008.tif 000004
【図３】
2017060008.tif 000005
【図４】
2017060008.tif 000006
【図５】
2017060008.tif 000007
【図６】
2017060008.tif 000008
【図７】
2017060008.tif 000009
【図８】
2017060008.tif 000010
【図９】
2017060008.tif 000011
【図１０】
2017060008.tif 000012
【図１１】
2017060008.tif 000013
【図１２】
2017060008.tif 000014
【図１３】
2017060008.tif 000015
【図１４】
2017060008.tif 000016