本明細書に記載された処理方法は1つの従来型カメラを備えたモバイル機器によって撮影されたいくつかの画像と、連続して撮影されたいくつかの画像と、すべての画像が撮影された位置との間の極めて単純化された対応付けアルゴリズムを実施する。前記すべての画像が撮影された位置は、モバイル機器、自動車、または任意の移動体に組み込まれた加速度計、ジャイロスコープ、またはこの種の任意の他の機能を使用することによって計算することができる。画像間の対応マッチングが実行されると、画像は、シーンの密な深度マップを作成するために使用される。画像は、手持ちのモバイル機器による1回の撮影で得られるものであり、モバイル機器の動きは撮影が行われている時間経過中に検出され、処理されることが可能である。この動きは、手の生来の動き(手の震え)、着信呼の振動(写真またはビデオを撮影している間に振動するように便利にプログラムされる)、カメラが移動体(例えば、車両または自動車)上にあるため、またはユーザが移動しているために、生じ得るものである。本明細書で説明される方法は、並列プロセッサおよび/またはGPU(ますます広く普及している)、ならびにバッテリ動作モバイル機器のための特定の並列プロセッサにおいてそれらの方法を実装する目的で、効率的に並列化され得る。本発明は、ビデオ記録のためのリアルタイム処理を提供する。
本発明の説明のために、以下の定義を使用する:
プレノプティックカメラ:空間位置だけでなく、入射光線の到来方向も取得することができる装置。
光照射野:プレノプティックカメラまたは合成開口インテグラルイメージングシステムにおいてマイクロレンズ(lx,ly)の下の画素(px,py)によって捕捉された光からの情報を含む4次元構造LF(px,py,lx,ly)。
深度:シーンの物点の平面とカメラの主平面との間の距離であり、両方の平面は光軸に対して垂直である。
エピポーラ画像:図3に記載されるように、(px,lx)(垂直エピポーラ)または(py,ly)(水平エピポーラ)の特定の値を選択することによって構成される光照射野構造の2次元スライス。
エピポーラ線:オブジェクト世界の画像エッジに対応するエピポーラ画像内の連結画素のセット。
プレノピックビュー:1枚のマイクロレンズ(lx,ly)に対して同一のある値(px,py)を選択することで光照射野構造のスライスを得ることにより形成される2次元画像。
深度マップ:オブジェクト世界(dz)の算出された深度値を、位置(dx,dy,dz)を含む2次元画像の位置(dx,dy)毎に加算値として加算した2次元画像。深度マップの各画素は、シーン内の対応する点までの距離を符号化する。
マイクロレンズアレイ(MLA):小型レンズ(マイクロレンズ)のアレイ。
マイクロイメージ:センサ上の特定のマイクロレンズによって生成される主開口の画像。
ベースライン:(プレノプティックもしくは従来型カメラまたは任意のカメラによって撮影された)2つの画像の開口の中心間の距離。
ステレオマッチング(対応付けアルゴリズムとも呼ばれる):この用語は、同じシーンの2つの画像が与えられた場合に、第1の画像のどの画素と第2の画像のどの画素とがシーンの同じ点を表すかを判別する処理に関連する。同様のことは人間の目で行うことができ、その場合に問題となるのは、左眼によって見られるどの点が右眼によって見られるどの点に対応するかということである。
撮影(Shoot):写真を撮る目的でボタンを押すことを指す。このイベントの間に、最終的に多くのフレームを取得することができる。
ショット(Shot):写真を撮る目的でボタンを押したことを指す。
露光:開口が開いている場合にカメラセンサが入射光にさらされ、これにより光がカメラに入射する。
加速度計:自身が取り付けられている構造体の運動(通常はx、y、z方向の運動)の直線加速度を記録する装置。
ジャイロスコープ:(加速度計が直線加速度を示すのに対して)角回転加速度を示す装置であり、通常、3つの回転軸(加速度計のx、y、およびzに対して、ピッチ、ロール、およびヨー)を基準とする。
IMUおよびAHRS:慣性計測装置(IMU)および姿勢および方位基準システム(AHRS)は加速度計およびジャイロスコープ、そして時には磁力計を組み合わせて使用することによって、物体の特定の力、角速度、および時には当該物体を囲む磁界を監視および通知する電子機器である。IMUおよびAHRSは、通常、無人航空機(UAV)を含む航空機内、ならびに潜水艦および無人潜水機(UUV)を含む船内で使用される。慣性計測装置(IMU)とAHRSとの間の主な違いとして、AHRSには姿勢および方位情報を提供する機内搭載の処理システム(例えば、マイクロプロセッサおよびメモリを含み得るシステム)が追加されているのに対して、IMUは単に、姿勢および方位を計算する別の機器にセンサデータを提供するだけである。
スピードメータ:時間経過に伴う物体の位置の変化(速度)を測定し、表示する器具。GPS:Global Positioning System(GPS)は、GPS受信機に地球位置測定情報および時刻情報を提供する衛星を利用したグローバルナビゲーションシステムである。
画像修正:本発明では、3次元形状が既知である移動カメラによって異なる瞬間に取得された画像に2次元射影変換を適用する処理を指す。当該処理の結果、(カメラが時間ゼロであった時の6軸基準系[x、y、z、ピッチ、ロール、およびヨー]を基準とした)変換画像内の線およびパターンを位置合わせするために(移動カメラがある長さの時間t1の後に撮影している時の6軸基準系[x’、y’、z’、ピッチ’、ロール’、およびヨー’]を基準とした)元の画像内の線およびパターンがマッピングされ、その結果、同じz、ピッチ、ロール、およびヨーを有する同一平面上のカメラによって取得されたかのような画像であって、かつ、xおよびyの2つの軸(時間0と時間t1との間のxおよびyにおけるベースライン)に沿った移動に依存するxおよびyの「修正された」値を有する同等の画像である2つの画像(最初に時間t1およびゼロで取得された)が得られる。画像修正処理の後、時間0および時間t1におけるショットを使用して、「仮想ステレオカメラ」の異なるビュー、および/または「仮想マルチビューカメラ」の異なるビュー、および/または「仮想プレノプティックカメラ」の異なるビューを構成することができる。
モバイル機器:一般に手で持って操作が可能なほど十分に小さい小型計算装置。また、内蔵カメラに加えて、GPS、加速度計、ジャイロスコープ等の他の機能を有する。例としては、携帯電話、タブレット、ノートパソコン、カメラ、および他のデバイスが挙げられる。
従来型カメラ:イメージセンサに入射する光線の空間位置のみを捕捉し、センサの各画素が、装置の開口全体から任意の方向に到来する全ての光を統合する装置。
合成開口インテグラルイメージング(SAII):均一または(代替的に)ランダムなグリッドに分散されたイメージセンサ(カメラ)のアレイ。
本質的に、本発明は、以下のステップを含む、シーンから深度情報を取得する方法を開示する:
a)(2)撮影時に少なくとも1台のカメラによってシーンの複数の画像を取得するステップであって、前記複数の画像は、前記シーンの少なくとも2つの異なったビューを提供するステップ;
b)ステップa)の画像の各々について、6軸基準系を基準とする画像の位置に関するデータを同時に取得するステップ;
c)ステップb)の画像から少なくとも2つの画像を選択するステップ;
d)ステップc)で選択された画像を修正し、それによって修正された画像のセットを生成し、e)修正された画像から深度マップを生成する。
撮影時の画像の位置は少なくとも1つの位置決め装置、例えば、加速度計、慣性計測装置(IMU)、姿勢および方位基準系(AHRS)、GPS、スピードメータ、および/またはジャイロスコープの群から選択される装置の手段によって取得される1組の測位データから測定することができる。
慣性計測装置(IMU)および姿勢および方位基準システム(AHRS)は、加速度計およびジャイロスコープ、および時には磁力計の組み合わせを使用することによって、物体の特定の力、角速度、および時には身体を取り囲む磁界を監視および報告する電子機器である。IMUおよびAHRSは、典型的には無人航空機(UAV)を含む航空機、ならびに潜水艦および無人潜水機(UUV)を含む容器内で使用される。慣性計測装置(IMU)とAHRSとの間の主な違いは、姿勢および方位を計算する追加の機器にセンサデータを単に提供するIMUと比較して、姿勢および方位情報を提供するAHRSに機内搭載の処理システム(例えば、マイクロプロセッサおよびメモリを含むことができる)を追加することである。
より良好な精度を達成するために、位置決め装置は、カメラのうちの少なくとも1つに強固に取り付けられてもよい。
一実施形態では、少なくとも1台のカメラがモバイル機器に関連付けられる。このようなモバイル機器は例えば、スマートフォン、タブレット、ノートパソコン、またはコンパクトカメラとすることができる。
より好ましい実施形態ではステップc)において、画像は6軸基準系におけるそれらの位置に基づいて選択される。
第1の好ましい実施形態では、画像がそれらの相対距離が最大で1画素の最大視差を引き起こすのに十分なほど小さくなるように選択される。この場合、ステップe)において、仮想合成開口インテグラルイメージングシステムが、修正された画像を用いて生成され、それによって、エピポーラ画像のセットを生成することができる。
第2の好ましい実施形態では、画像がそれらの相対距離が2つ以上の画素の視差を引き起こすのに十分に大きくなるように選択される。この場合、ステップe)において、仮想立体プレノプティックシステムが、修正された画像を用いて生成され、それによって、拡張されたエピポーラ画像のセットを生成する。
エピポーラ画像が例えば、第1の好ましい実施形態または第2の好ましい実施形態によって生成されると、ステップe)は、エピポーラ画像からエピポーラ線の勾配を計算することをさらに含むことができる。これらのエピポーラ画像を用いて、シーンの深度マップは、エピポーラ線の勾配を深度に変換することによって生成されてもよい。さらに、勾配は、水平および垂直エピポーラ線が多次元マトリックスに組み合わされることを分析することによって得られてもよい。
本発明の方法は、深度マップからシーンの3次元画像を生成するステップを含むことができる。特に、深度/勾配は、水平および/または垂直エピポーラ線において計算されてもよく、2次元疎深度/勾配マップが直接結合される。さらに、疎深度/勾配マップは、画像充填技術を適用して、すべての画素について深度/勾配値を得ることによって充填することができる。好ましくは深度推定のために、計算はオブジェクト世界のエッジが検出されたセンサの画素に対してのみ実行される。
ステップa)において、少なくとも1台のカメラは好ましくは例えば、人間の手の振戦によって生成される不確定なランダムな動きのために、または少なくとも1台のカメラをシーンに対して移動する構造に取り付けることによって、ショットの時間中に移動される(例えば、カメラは自動車の外側の関心領域に対して十分な視感度を有する自動車位置に取り付けられるかまたは配置されるか、またはジェスチャ認識のような用途のために自動車の内側の距離を測定する)。
また、ステップa)の複数の画像は、好ましくは少なくとも2台のカメラによって取得される。この場合、少なくとも2台のカメラは、それらの相対位置が既知であるように位置合わせされてもよい。
好ましい実施形態ではビデオシーケンスが少なくとも2つの深さレベルの前景、任意の中景および背景2D画像(オブジェクト世界の異なる深さに位置する)から構成され、前記異なるレベルの2D画像の連続フレームにおける前記組合せおよび/または背景近傍の2D画像における遮蔽の変化、および/または前景近傍の2D画像における視点およびサイズの変化はユーザに対して3D知覚を生成する。
さらに、例示的な実施形態では、統計的ノイズを低減するために、垂直/水平次元に沿って分布するエピポーラ画像の一部のみまたは全部が考慮される。
本発明は、光照射野から深度マップを生成するための装置および方法に関する。光照射野は、複数の種類の装置によって撮影することができる。簡単にするために、いくつかの画像を撮影している間に動いている従来型カメラを第一の例として考える。本明細書で説明される方法は移動する装置によって撮影された画像から同等の撮像システムを作成し、プレノプティックアルゴリズムを適用して、シーンの深度マップを生成する。
さらなる例では、本方法を1つまたは複数のプレノプティックカメラおよび1つまたは複数の従来型カメラを含む可能性を有するいくつかの移動カメラによって形成されるシステムに適用することによって本方法が説明される。それにもかかわらず、本明細書に記載の方法は、他の一体型撮像装置を含む任意の他の装置によって捕捉される光照射野に適用することができる。
図1はプレノプティックカメラ100の一実施形態、すなわち、センサ1、マイクロレンズ22、および光学構成要素の上限筒(即ちカメラのメインレンズ3)を示す。図1はプレノプティックシステムの主開口を横切り、中心のマイクロレンズと中心に隣接するマイクロレンズに到達する2組の光線を示す。光学システムが適切に設計されていれば、縮小像11、12は重ならない。
図2はメインレンズ3を通るマイクロレンズアレイ22の共役面よりも遠く、したがって二つ以上のマイクロレンズを照らす物点210を示し、それの焦点はマイクロレンズアレイ22の位置よりもメインレンズ3に近く、したがって、イメージセンサ206によって捕捉されたパターンが図2Bに示されるようになる。マイクロイメージ212のうちのいくつかにおけるグレーレベルは部分的に照明された画素に対応するが、白色画素では画素の全領域がオブジェクト世界の物点210から来る光によって照らされている。
プレノプティック撮像の基本は、カメラまでの異なる深さまたは距離にある世界中の物体がプレノプティックカメラのセンサ上に異なる照明パターンを生成することである。センサによって捕捉された様々なパターンはエピポーラ画像で表すことができ、これは、世界中の物体の暗黙の深度情報を提供する。
図3は、プレノプティックカメラ100から異なる距離に位置するオブジェクト世界210内の点(マイクロレンズ22から共役距離(図3A)、共役距離よりも近い(図3B)、共役距離よりも遠い(図3C))を放射するための、光照射野206からの水平中心エピポーラ画像300および垂直中心エピポーラ画像302の形成プロセスを示し、それによって、オブジェクト世界までの距離を計算するためのプレノプティックカメラの固有の機能を示す。図3Cの場合は図2Aおよび図2Bに示されており、オブジェクト世界の放射点210からの光がカメラ100の内部をどのように伝播し、マイクロレンズ22を横切り、センサ206上に光パターンを表示(print)するかを示している。
エピポーラ画像に見られるパターンを深度情報に変換するプロセスは、当技術分野で周知のいくつかの画像処理技法の適用を必要とする。エピポーラ画像はマイクロレンズの焦点よりも遠い世界放射源(図3Cの左に向かって傾斜したエピポーラ線)、マイクロレンズの焦点よりも近い世界放射源(図3Bの右に向かって傾斜したエピポーラ線)、およびマイクロレンズの表面上に正確に集束した世界放射源(図3Aの垂直エピポーラ線)について、図2Bおよび図3Cに明確に示されるように、線を形成する接続された画素(オブジェクト世界の同じ点に対応するいくつかのセンサ画素)であるエピポーラ線を含む。これらのエピポーラ線の勾配は、マイクロレンズ上で照明されるパターンの形状と、オブジェクト世界におけるその点の対応する深さとに直接関係する。このプロセスを要約すると、エピポーラ画像に見られるパターン、エピポーラ線は、現実のオブジェクト世界における物体の深さに関する情報を提供する。これらの線はエッジ検出アルゴリズムを使用して検出することができ、それらの勾配を測定することができる。したがって、各エピポーラ線からの勾配は、そのようなパターンを生成したオブジェクト世界内の点の実際の深さを、ちょうどいい具合に処理されれば示す値を与える。
プレノプティック撮像は非常に有望な技術であるが、これもまたコストがかかる。というのもプレノプティックカメラの性能はマイクロレンズアレイの解像度によって制限され、その結果、従来の撮像装置よりもはるかに低い画像解像度になるからだ。さらに、プレノプティックカメラは、モバイル機器において出くわすことが依然として困難な全く新しい技術である。
図4は、カメラのマトリックスの可能なSAII(Synthetic Aperture Integral Imaging)構成を示す。このマトリックスでは、M×N台のカメラまたはマトリックスの各位置で静止画像を撮影しながらマトリックスに沿って移動(例えば、位置1から開始し、次に2、3など、位置MNまで)させられる1台のカメラを有することができる。マイクロレンズ1枚当たり「O×P」画素の「T×S」個のマイクロレンズを有する図2Aのようなプレノプティックカメラは、プレノプティックカメラの入射瞳上に等間隔に配置された1台あたり「T×S」画素を有する「O×P」台の従来型カメラと機能的に等価であることは周知であるので、プレノプティックカメラとの並列は簡単であり、プレノプティックカメラについて上述したのと同じエピポーラ画像をSAIIで得ることができる。同様に、図4のカメラのM×Nアレイ(カメラ1台当たりQ×R画素を有する)は、マイクロレンズ22一枚当たりM×N画素と、同等のプレノプティックカメラにおけるマイクロレンズの総数に等しい同等のカメラ51当たりの画素数とを有する図1のようなプレノプティックシステムと等価である。唯一の実際的な違いは、SAIIシステムにおけるこの数(Q×R)の大きさが、技術および実装の制約のために、プレノプティックカメラにおいて設計され得るマイクロレンズの数よりもはるかに大きいことである。SAIIから計算された深度マップは、プレノプティックカメラよりも広いベースラインの利益を得ることができる。というのも、図4のノード間の距離(数cm程度に高くてもよいし、それ以上であってもよい)が、「O×P」台のプレノプティックカメラと等価のカメラ間の距離(数ミリメートル、小型カメラでは最小10分の1ミリメートルまで)よりも大きいからだ。図5Aおよび図5B(第3次元が紙に対して垂直であると以下の議論で一般性を失うことなく想定できる3D構成に簡単な方法で外挿することができるカメラの2D側面図)は、プレノプティックカメラのベースライン(「狭いベースライン」dは、マイクロレンズ一枚当たりT×S画素を有するプレノプティックカメラのO×P台の等価カメラ間の距離dを示し、各等価カメラ51はプレノプティックカメラ内のマイクロレンズと同数の画素を有する)と、ステレオカメラの2台のカメラ間の「広いベースライン」Bまたはより広いSAIIベースラインを比較する:ステレオカメラまたはSAIIの実際の例では、「広いベースライン」Bは数センチメートルであり得、一方、典型的なプレノプティックカメラでは「狭いベースライン」dがミリメートルまたは1/10ミリメートル程度の小さい値に達し得る。図4のカメラのM×Nアレイ(カメラ1台当たりQ×TR画素を有する)は、マイクロレンズ22当たりM×N画素で、同等のプレノプティックカメラ(Q×)内のマイクロレンズの総数に等しい等価カメラ51当たりの画素数を有する図1のようなプレノプティックシステムと同等であり、この場合(SAIIシステム)のこの数のサイズ(Q×T)は、プレノプティックカメラ内で設計することができるマイクロレンズの数よりもはるかに大きい。明らかに、SAIIシステムはプレノプティックカメラよりも高い解像度を提供し、より広いベースラインによって、カメラから遠い距離での深度の計算がより正確となる。
提案された発明はシングルショット取得を有する(with a single shot acquisition)従来型カメラから高解像度深度マップを取得し、そしてビデオ記録の場合は、深度マップはリアルタイムで取得される。一連のフレームを得るために、ショットが実行されている間にカメラによって経験される運動および振動を本発明は使用し、その方法によって、移動カメラによって取得された一連のフレームを用い、SAII(またはプレノプティックカメラの同等のカメラ)のいくつかの画像をシミュレートする。本発明は、シーンの深度を推定するために使用することができるマルチビューシステムのベースライン(ビュー間の距離)として、選択された取得間のカメラの距離を使用する。これらの方法の主な目的は、従来型カメラのみが利用可能であり、1つのショット(数フレームの取得を伴うショット)のみである場合に、高解像度深度マップを作成する機能を提供することである。本発明は非常に計算効率がよく、その効率性ゆえに、ビデオシークエンスにおいてリアルタイムに深度マップを取得するのに使用できる。さらには低コストのモバイル機器(ほとんどの場合バッテリ駆動の低コストのプロセッサを有する)は急速なバッテリ消耗を避けるための効率的な計算が要求されるものの、そのモバイル機器においても使用できる。
提案された発明は、いくつかの連続するフレームの記録に続く2つの主なステップを有する。第1に、撮影時に取得された画像(x、y、z、ヨー、ピッチ、およびロールに対してわずかに異なる位置にあるカメラで取得されたすべての画像)を「補正」して、単一のプレノプティックカメラまたは単一のSAII撮像システムによって撮影されたかのように互いに関連する「補正画像」のセットを取得するステップ(図9「画像修正」のプロセス、または図13の一連の画像A、B、C、およびDも生成する)。この第1のステップは、加速度計およびジャイロスコープからの記録、または任意の現代のスマートフォン、自動車または移動体に見られる任意の他の機能のいずれかを使用することによって、(図9のように)画像間の修正を実行する。第2のステップは、プレノプティックアルゴリズムを使用して深度マップを作成するために適用される。これは、エピポーラ画像のエピポーラ線の勾配を検出することによって、シーン内の各点の深度値を計算することに本質がある。一実施形態では、この計算がシーンのすべての画素に対してそれを実行する代わりに、シーン内で検出されたエッジに対してのみ実行することができる。本発明の方法はリアルタイムビデオ画像(毎秒約15フレーム以上)を処理することができ、一方、以前の実施形態は、単一のフレームを処理するのに数百ミリ秒から数分を要する。
正常な手の震え(または生理学的振戦)は人間の目では知覚しにくく、活動を妨げない、小さく、ほとんど知覚できない振戦である。振動の周波数は8〜13サイクル/秒であり、これは、任意のヒトにおける通常の振戦である(これは任意の疾患プロセスと関連するとはみなされない)。これらの小さな振戦でさえ、カメラ上の動きを生成するための源泉、深度検出のためのベースラインを生成することができる源泉として使用されうる。
物体の位置および向きを決定する最も一般的なセンサは、ジャイロスコープおよび加速度計である。それらは、両方とも最新のモバイル機器(スマートフォン等)に存在し、情報が両方のデバイスによって画像取得プロセスに同時に記録されるとき、正確なFOV(Field of View)(3次元世界におけるカメラのx、y、z位置、およびカメラが撮影時に向いている方向、それも図7Aに記載されるように、ピッチ、ロール、およびヨーの3つの基本角度によって定義される方向に関わる)を、記録されたフレームごとに知ることが可能である。動きを記録するために、加速度計およびジャイロスコープの最新技術の通常のサンプリングレートは約500Hzであり、この手段は、加速度計およびジャイロスコープが手の震え運動(毎秒8〜13サイクル)を記録するのに十分な感度を有することである。図7Bは、携帯電話の加速度計によって記録されたX、YおよびZ方向の一連の動きを示す。図7Bは、あたかも私たちが写真を撮ろうとしているかのような位置にある、手に置かれたモバイルから始まっている。ある時点で、写真を撮るために「ボタンを押す」(トリガーを引く)。その後、テーブル上にモバイル機器を置く。全てのシーケンスは、100Hzのサンプルレートで10秒かかる(結果約1000サンプルとなる)。このデータは、ジャイロスコープ装置についても得ることができる。加速度計およびジャイロスコープはそれらが提供する情報についていくらか重複しているが、それらの測定は異なる特性を有する。加速度計は3軸(X‐Y‐Z)の物理的加速度を測定し、ジャイロスコープは各回転軸に沿った3軸(P‐R‐Y)の角加速度を測定し、両方の機器の組み合わせは、6軸の運動感知情報を提供し、カメラの相対的な位置および向きの迅速かつ正確な決定のための、モバイル機器の可能な任意の移動を捕捉する。これらの相対的な位置および方向のパラメータは、「仮想SAIIシステム」(または「仮想プレノプティックカメラ」)からの「仮想補足」の形成に使用され、後述するようにエピポーラ画像を構成するためにも使用される。図7Aは、加速度計およびジャイロスコープによって登録された動きを記述するために使用される、携帯電話内のカメラに関連付けられた6軸座標系を示す。
モバイル機器の特定の初期位置およびユーザがボタンを押して写真を撮るときに開始する画像取得期間を仮定する。説明したように、加速度計およびジャイロスコープからのデータを使用して、初期位置に対するモバイル機器の相対位置は、シャッタボタンを押した後に起こる一連の画像取得の露光期間であれば、任意の時間に算出することができる。図13は、ある時間隔中にモバイル機器がたどる軌跡の例を示す。この時間中、モバイル機器は破線によって示される軌道を辿りながら、A、B、C、およびD位置にあったときには画像を撮影した。図の例はまた、A‐B‐C‐Dで撮影がされた位置に最も近い場所に配置された仮想SAIIシステムと既に説明された画像取得の連続プロセスを比較するために、背景としてM×Nマトリックスを示している。したがって、モバイル機器の運動が適切に登録され、処理される場合、両システム(SAIIおよび提案された発明)は、機能的に同等である。
ここで、本発明が画像を取得し、モバイル機器の運動を登録する時間間隔を詳細に説明する。今日のほとんどのモバイル機器は約120フレーム/秒(fps)のフレームレート周波数を有する画像を取得することができ、このフレームレート周波数は、リアルタイム(15fpsと30fpsとの間で固定された主観的な値、または1秒当たりのフレーム数がより多い)と考えられるものよりも著しく大きい。品質が上記のフレームレート周波数であるモバイル機器であって、たとえば従来型カメラでもよく、人間の手によって所与の位置に保持されている間に写真を撮るであろう機器を仮定する(これらは本発明を限定する要因としては意図されておらず、あくまでも例である)。1秒間画像を記録する場合、例えば120fpsで、それらの間に所与のベースラインを有する4つの画像をこの時間内に選択することがありうる。また、提案された方法と、M×NカメラのSAIIシステムまたは一マイクロレンズ当たりM×N画素を有するプレノプティックカメラとの間の類似性をよりよく主張するために、M×N位置のマトリックスの前に描かれた図13に示される軌道を仮定する。手の震えによって不随意に引き起こされるこの軌道から、例えば、軌道内の総距離(水平および垂直の両方)を最大にする点を選択することができる。隔たりが大きい場合の深度マップの解像度はより広いベースラインで改善され、したがって、互いにできるだけ離れている画像を選択することはオブジェクト世界までの距離をできる限り大きく識別するのに最良である。図13の軌跡の例は、2D簡略化であることに留意されたい。提案された発明をSAIIシステムとして運用させるために、軌道に沿って撮られた異なる画像は、6つの自由度(6つの位置x、y、z、P、R、およびY)を考慮して、加速度計、ジャイロスコープ、またはこの種の任意の他のデバイスによって記録された移動のパラメータに従って「修正」されなければならない。
ステレオ撮像のための画像修正処理実行の過程と本発明のための相違点を定義する。図8は、ステレオ構成の2つの異なるカメラによってパターン81がどのように記録されるかを示す。パターン81は、2つの異なる視点から捕捉され、2つの平坦な画像82および83を記録する。これらの2つのステレオ画像は2台のカメラが完全に整列された場合、すなわち、空間内の同じyおよびz位置にあった場合に得られたものであり、それらの間には、固定された既知の距離xがあり、両方のカメラは同じ平面内に位置し(通常、共平面状態として知られており、ロールおよびピッチの差がゼロであるか、またはそれらの光軸が平行であるかを意味する)、それらの間のヨーの差がない(画像84および85の両方が同じ水平度を有さなければならないと述べることに等しい)。図9は、5軸基準系(x、y、ピッチ、ロール、およびヨー)に関して4つの異なる位置にあるカメラによって4つの異なる瞬間に4つの異なるショット(91〜94)を記録したカメラが人間の手の震えによってどのように移動したかを示す。なお、記録した内容は、点線位置(95〜98)に配置された4台のカメラを有するSAIIシステムによって記録されたものがあったとしてもそれとは異なる。このシステムのための「修正」というプロセスは、一組の取得された画像91〜94から一組の修正画像95〜98を計算するステップを含む。これは、z方向の動きを考慮にいれず、取得された画像91と、画像があることを望む場所、または修正された画像95〜98との間の十分な重複を仮定するので、単純化された見解である。しかしながら、カメラが自動車のような移動構造体内に配置されている場合には、z方向の修正も非常に重要であり、その値は当該移動構造体の速度に正比例するということに留意されたい。本発明のより現実的な実施形態は、いくつかのビデオフレームを順次記録すること(例えば、毎秒120フレームとすることができる)と、6軸基準系(x、y、z、ピッチ、ロールおよびヨー)内のカメラの位置を同時に記録することを成し遂げる。
これは図10に例示されている。すなわち所与の時間に、カメラがフレームを捕捉し、その瞬間に、カメラが空間内の所与の位置に関連した6軸(x、y、z、ピッチ、ロール、およびヨー)に配置され、カメラが次のフレームを捕捉するとき、6軸基準系は新しい位置(x’、y’、z’、ピッチ’、ロール’、およびヨー’)移動された。この新しい位置は、カメラに関連する加速度計およびジャイロスコープによって記録されているために、知られている。図10というこの特定の実施例では、x、y、およびzについての3つの正の運動、ならびに負のヨー回転があった。図11は第1のフレームと第2のフレームとの間でxおよびyについて負の動き、zについて正の動き、並びに正のヨー回転を有する別の例を示す。図12は第1のフレームと第2のフレームとの間で、xおよびy方向の運動が正であり、z方向の運動が負であり、正のピッチ回転である、さらに別の例である。
[0065]
必要なタイミングと、我々の目的を達成するために技術的に実現可能なものとを比較しよう。手の振戦は毎秒8〜13サイクルの低周波数の動きを示し、その間、最新のカメラシステムおよび光センサによって120回のショットを撮影することができ、その間、最新の加速度計およびジャイロスコープによって500回の読み取り値をサンプリングすることができる。図14は既製のスマートフォンの加速度計によって検出されたxおよびy方向の空間移動の2秒間の記録であり(z方向および典型的なヨー、ロール、およびピッチもまた記録され、計算に使用され得る)、図14というこの特定の場合において、スマートフォンはアマチュアのライフルユーザによって保持されている(通常の人の場合、動作はわずかに大きく、パーキンソン病に罹患している人の場合、動作はるかに高い)、図はx軸(図14では垂直)ではほぼ4ミリメートル、y軸(図14では水平)ではほぼ2ミリメートルの移動範囲を示す。これらの変位は典型的なプレノプティックカメラと同等のカメラ間の間隔の典型的な「狭いベースライン」dよりも大きい(2mmで、一マイクロレンズ当たり10画素の入射瞳は最小ベースライン(図5Aの「狭いベースライン」dは0.2mm)をもたらす)すなわち0.1〜0.3mmのプレノプティックカメラの典型的なベースラインdと比較する場合、図14は手の震えによってベースラインが生成される場合、同じベースラインが100〜200ミリ秒ごとに起こる可能性が高いことを示す。そのため、提案された発明は、シーンの深度マップを作成するのに十分な画像およびデータを取得するのに約200msを必要とする。200msの時間隔内に120fpsの典型的なフレームレートで画像を撮影する一実施形態においては、本発明は24フレームを取得する。これらのフレームは、モバイル機器が手の震えまたは任意の他の振動に基づいて動いている間に取得される。これらの24個のフレームから、それらの間に最も長いベースラインを有する2つのフレームを選択することができ、このベースラインは、より長い距離について得られる精度に関してマルチビューカメラの深度マップの品質を改善するのに十分な長さである。
いくつかの画像およびそれらに対応する移動パラメーター(x、y、z、P、R、Y位置)がカメラが一定時間3D空間内で移動しているときに従来型カメラで撮影されると、等価なSAII(または等価なプレノプティックカメラ)が移動パラメーター(6軸基準系における新しい位置)に従ってこれらの画像すべてを修正することによって作成される。次に、エピポーラ画像300および302が形成され、プレノプティックカメラ・アルゴリズムが適用されて、シーンの深度マップが生成される。
プレノプティックカメラの1つの特徴は連続する等価カメラ間の最大視差が±1画素であり、この特徴はエピポーラ線を形成する画素が常に互いに接続されることを含意する。したがって、作成された同等のSAII(または同等のプレノプティックカメラ)にプレノプティックアルゴリズムを適切に適用するために、連続する画像間のベースラインは、エピポーラ画像を形成するときにギャップが作られないことを保証しなければならない。それにもかかわらず、このことは必ずしも保証可能ではない。なぜならばこれは図14における人間の振戦運動がSAIIシステム(またはプレノプティックカメラ)としてモデル化することができない非典型的に大きな運動によって害されることがあるからだ。しかし、それらの非典型的に大きな運動はベースラインを拡大するのに極めて有益であり、したがって、非常に高い信頼性でオブジェクト世界内の大きな距離を計算するために有益である。上記の非典型的に大きな運動は、人工的に形成できる。例えばユーザが電話を片付け始めようとしたときに発生するフレームを記録することや、写真を撮っている人の腕にある人が不注意でぶつかることや、(明らかに図14におけるものよりも大きな運動を生成する)自撮り棒の大きな揺れによって、生成され、当明細書の一部である新しい装置によってよりよくモデル化される。すなわち少なくとも一台のプレノプティックカメラ100および一台の従来型カメラを含むステレオプレノプティック機器5200(図5Aおよび図5B)によって。しかし、図5Bに示されるより好ましい構成においては、二体の従来型カメラまたはプレノプティックカメラ1304(もしくは一体の従来型カメラおよび一体のプレノプティックカメラ)をプレノプティックカメラ100に追加している。この装置のプロトタイプは装置が単独で(例えば、図5Bのような携帯電話において)意味をなすという証拠、そしてまたプレノプティックカメラまたはSAIIシステムによってモデル化することができない非典型的に大きなカメラの動き、すなわち世界中の非常に離れた物体までの大きな距離を計算するのに特に歓迎される動きをモデル化するための証拠を生成した。図14のような手の震えは、ユーザがカメラをできるだけ静かに適当な場所で保持しようとするときに典型的であること留意する価値がある。シャッタを押した後の瞬間の動きは、はるかに大きくはあるものの、依然として良好である。これらは同じFOV(Field of View)に依然として面しているが、ベースラインが数センチメートル増加し、はるかに良好な距離の推定値を生み出すからである。また、図14のxおよびy方向の動きの統計的分布は通常、大きなピーク対平均比率(ほとんどの時間、動きは数ミリメートル以内であるが、時々、最大数センチメートルまで移動する一個または数個のサンプルがある)を示す。この比率はベースラインを改善するのに有益であり、図5Bのように、ステレオプレノプティックデバイスを通してより良くモデル化される。理由はこの場合、垂直および/または水平エピポーラ画像が、図6Aおよび6Bのように、いくつかの行(捕捉画像)の間に大きなギャップを有するからである。
図5Bの実施形態はちょうど言及した2つの深度マップを作成するための技術(プレノプティックおよびステレオ)の新規な組み合わせである。この組み合わせは従来技術を十分に超えている(従来型カメラまたはマルチビュー構成の他のプレノプティックカメラと混合されたプレノプティックカメラ、すなわち、図5Bよりも多くのカメラを含むことができるスーパーセットを含むので)。図5Aは、立体プレノプティックカメラと同じFOV(Field of View)を見る従来型カメラを追加することにより、遠距離に対するプレノプティックカメラの深度推定の精度を大幅に向上させるマルチビューシステムであるステレオプレノプティックデバイスの基本構成を示す。リアルタイム深度推定のための本発明およびその方法は、少なくとも光照射野プレノプティックカメラによって構成され、追加の従来のまたはプレノプティックカメラを含む。このようなマルチビューシステムは、適切な画像処理方法を用いて、非常に高品質の解像度を有するシーンの深度マップを作成することができ、プレノプティックカメラ(大きな深度に対する信頼できない深度測度によって制限される)およびマルチカメラ・システム(はるかに高い処理機能を必要とする)の欠点を克服する。このマルチ視点の発明は、同時に、計算要件に関して極めて効率的である。図6Aは、プレノプティック装置(左側)の記録を示し、プレノプティック装置内のエピポーラ線62およびプレノプティック装置からのエピポーラ画像が、はるかに高い解像度を有する従来型カメラ(右側面)の結果として得られる画像と組み合わされる。この図6Aは、また、例えば、図5Aの下のカメラ(または図5Bの右または上部カメラ)のような従来型カメラ61の点が従来型カメラ(例えば図5Aの下部カメラまたは図5Bのカメラ1304)の画像を用いて、プレノプティックカメラのベースラインを拡張するために、どのように使用されるかを示し、これは、プレノプティックカメラ単独よりも両方のカメラの組み合わせについてより良好な距離推定機能および性能をもたらす。この実施形態の主な利点の1つは、深度推定のためのプレノプティックカメラ・アルゴリズムの使用であり(ステレオ・マッチングよりも計算効率がはるかに高い)、これもまた、以下で説明するように本開示で使用される。このアプローチのさらなる利点は、マルチビューシステムの横方向分解能が従来型カメラの横方向分解能(通常、プレノプティックカメラの横方向分解能よりもはるかに大きい)であり得、従来型カメラ(単数または複数)におけるポイントと同じ数のポイントを有する光照射野を計算することが可能であることである。
図6Bは、従来型カメラ1304の「修正」がその画像をプレノプティックカメラ100と一致させるためにどのように実行されるかの方法についての実施形態である。プレノプティックカメラ100のエピポーラ画像400内でエピポーラ線1404が検出され、プレノプティックカメラ100の中心ビュー1516と従来型カメラ1304との間の距離Bはプレノプティックカメラ100と図5A、図5B、および図6Dのプレノプティックカメラ10の「狭いベースライン」dとの間の「広いベースライン」Bとの間の関係に基づいて得られ、距離Hはプレノプティックカメラ100のFOVの共通部分、およびプレノプティックカメラのエピポーラ線1404(プレノプティックカメラ100のエピポーラ画像400のセット)と一致するように選択される。定義によって、オブジェクトの世界のエッジが線形に描かれる。画素1504において、プレノプティックカメラのセンサと交差する、従来型カメラの画素1406の行との交点に到達するために、1506)であるが、ほとんどの場合、(従来型カメラによってサンプリングされた)画素1504はプレノプティックカメラ100によってサンプリングされた「エッジパターン」と一致せず、そのため、従来型カメラの探索領域1512はプレノプティックカメラ100によって検出されたエッジと一致する従来型カメラ1304の画素61を最終的に見つけるように定義される。この方法により、プレノプティックカメラ100のビュー1510はプレノプティックカメラからの距離(センチメートル以上)が通常のプレノプティックカメラのビュー間隔(約10ミリメートル)よりもはるかに大きい(センチメートル以上)に位置する従来型カメラのビューを追加して、プレノプティックカメラ100の等価カメラ51を捕捉し、ベースライン(d〜B)を劇的に向上させ、カメラからの距離が長い場合の深さの測定の精度を向上させた。これは図6Bの助けを借りて、以下のように要約することができる:プレノプティックカメラ100のビュー1510間の狭い距離「d」はエピポーラ線1404の勾配の非常に小さな変動を生成するために、オブジェクト世界におけるパターンの深さの非常に大きな増分を必要とするが、従来型カメラまたは追加のプレノプティックカメラ1304からの追加のビュー1406を追加することによって、長距離に対してより高精度の深さ測定を提供する非常に正確な「拡張エピポーラ線の勾配」1508を微調整することが可能である。
図5Bは、モバイル機器中の本発明からの機器の実施形態を示す。プレノプティックカメラ100は、2つに従来型のカメラ(または、従来型カメラおよびプレノプティックカメラ、または2つの追加のプレノプティックカメラ)1304に関連付けられ、両方向(xおよびy)でのベースラインを改善するために、一つは水平方向に、他方は垂直方向に整列され、同時に小さな探索領域1512(1次元または2次元であり得る)を用いることによってステレオおよびマルチビュー画像マッチングから高い計算要求を節約している。プレノプティックカメラおよび従来型カメラのみ、2つのプレノプティックカメラのみ、3つのプレノプティックカメラ、少なくとも1つのプレノプティックカメラを含むカメラの任意のアレイなど、いくつかの異なるオプションを有するように、このデバイスをどのように修正/拡張するかは、当業者には明らかである。
図6Aおよび6Bに示されるシナリオ(プレノプティックカメラによって取り込まれた画像63、および従来型カメラによって取り込まれた同じシナリオの画像64)は、互いに狭い距離内のわずかに異なる位置でいくつかの画像を取り込みんだ単一の従来型カメラ、および残りからかなり離れた位置で同じ従来型カメラによって取り込まれた追加の画像と同等である。図6Aおよび6Bに示されるように、形成されたエピポーラ画像は、撮像間にギャップdを有する(ここで、プレノプティックカメラにおけるdは、入射瞳のサイズを1次元[xまたはy]方向におけるマイクロレンズ当たりの画素数で割ったものである)。(仮想プレノプティックカメラの中心ビューと移動カメラによってシミュレートされた従来型カメラ1304の等価ビューとの間の)ギャップBが、プレノプティックカメラ(または移動カメラによってシミュレートされる仮想プレノプティックカメラ)の中心ビューと前記プレノプティックカメラの端のビューとの間の距離Dよりも大きい場合(すなわち、図6Bの例ではdの4倍)、仮想ステレオプレノプティック同等システムを作成することが可能である。同等のSAII(または同等のプレノプティックシステム)またはより広いベースラインを有する同等のステレオプレノプティックシステムのいずれかを作成するための重要な基準は、dよりも大きい少なくとも1つの大きなベースライン(すなわち、隣接する画像間の距離)を有することであり、ベースラインが距離dよりも小さい場合、SAII同等のシステムが推奨される。また、SAII同等システムは、ベースラインBが距離Dよりも小さい場合に選択される。すなわち、図6Bからのエピポーラ画像において、少なくとも1つの大きなギャップ(B‐D)(小さなギャップdよりも大きい)が存在し、探索領域1512を画定し、対応するエッジ点61を探す必要があるかどうかを観察する。一方、全てのベースラインがd以下である場合、エピポーラ画像の行は対応付けアルゴリズム(エピポーラ画像の異なる行間)が回避され、プレーンプレノプティックアルゴリズムが適用されるように、接触している。
図5Bのような装置では、プレノプティックカメラ内のマイクロレンズの数が通常、関連する従来型カメラ内の画素数よりも少ないが、プレノプティックビュー1510が移動カメラから抽出される異なるビューである本発明では、ビュー1510の画素数がベースラインBにおける同等のカメラの画素数に等しいことに留意されたい。
一実施形態では、作成すべき同等のシステムが仮想プレノプティックシステム(仮想SAIIシステムによってもモデル化することができる)であるか、仮想ステレオプレノプティックシステムであるかを判定する方法は、連続して取り込まれた画像(空間領域または隣接する画像において連続している)間の最大距離に直接依存し、その結果、この最大距離はdよりも大きく、dは前記「選択された取り込まれた画像」間の最大視差が1画素であることを保証する仮想プレノプティックカメラの「選択された取り込まれた画像」間の最大距離である。
撮像はこれらの画像の各々を、それらの隣接する画像がグリッドを形成するように、x次元およびy次元において接続することによって分類される。接続された画像間の全ての距離がd(1画素よりも小さい視差)以下である場合、前記画像は、仮想SAII(または同様に仮想プレノプティックカメラ)を構成するために使用することができる。一方、1つまたは他の画像がdよりも大きいxまたはy方向の距離で撮影される場合、これらの画像64を使用して、図6Aおよび図6Bに示すように、仮想立体プレノプティックシステムの追加のビュー1406を構成することができる。
一実施形態ではすべての撮影された画像のうちのどの画像が互いに連続しているかを判定するために、x座標およびy座標を使用して、図13のようなグリッドを作成し、次いで、ある画像の(空間領域における)「選択された連続画像」は前記ある画像から(x方向およびy方向における)最小距離に位置するが、常にdよりも短い距離に位置する画像である。
従来型カメラ対プレノプティックカメラについて上述した「修正」プロセスは、図5Bの機器および同様の機器にとって意味がある場合であっても、カメラ1304が物理的なカメラではなく、実際の移動するカメラからの異なる視点から異なる露出を撮影する「仮想カメラ」である場合に起こることを過度に簡略化したものである。図6Bにおいて、我々は、ベースライン(B)のための画像「修正」および「修正」Hを行って、両方のカメラ(100および1304)のFOVの共通部分に一致させた;1304がユーザがカメラをできるだけ静かに保持しようと意図的に試みている間に、人間の振戦によるミリメートルよりも大きな動きを伴って数センチメートル移動した仮想カメラであった場合(図14におけるように)、「修正」プロセスは、ベースラインBおよび視野Hの代わりに、加速度計、ジャイロスコープ、またはカメラに関連付けられた任意の他の位置決め装置が新しい位置(x’、y’、z’、yaw’、pitch’、およびroll’)を記録したことを考慮して決定することができる6軸(x、y、z、yaw、pitch、およびroll)におけるランダムな動きを考慮しなければならず、「修正」プロセスはプレノプティックカメラ100が第1の画像を取り込んだ後に、ある時間、仮想カメラ1304が画像を取り込んだものであった。異なる実施形態では、カメラ100が物理的カメラではなく、図14のような手の震えに起因する(図13のような:ショットA、B、C、D)いくつかのショットを撮影する「仮想プレノプティックカメラ」(または仮想SAIIシステム)である。
図16Aは、ステレオカメラ撮像に関連する第1の手順(1600)を示す。この図は、ステレオカメラの固定された(既知の)位置(2つのステレオカメラの較正プロセスから既知である)を仮定する簡略化されたプロセス1600を示す。この手順は2台のカメラの既知の位置(および方位)が与えられた場合に単純である画像修正(1604)と、2つの取得された画像に共通であるパターンを一致させることを意味する第2の対応ステップ(1606)とを含み、明らかに、2台のカメラの画素間の一致手順は両方のカメラにおいてパターンを生成した光源のオブジェクト世界距離に依存して異なり、すなわち、換言すれば、両方のカメラから非常に遠い世界の物点は2台のカメラにおいてその2つの画像間に実質的にゼロの視差を生成し、一方、カメラの非常に近い物点は、2台のカメラのセンサにおいて非常に大きな視差を生成する。
本発明による第2の手順(1610)を図16Bに示す。この手順は、以下のステップを含む。連続フレーム(例えば、毎秒120fpsフレーム)と、「記録されたフレーム」(毎秒120フレームで、例えば、1フレーム当たり約5個の位置または毎秒600個のサンプルでサンプリングされた6軸位置で)の1つごとにカメラの6軸位置(x、y、z、P、R、Y)を同時に記録するステップ1614と、充分に大きなベースラインdを有する位置(例えば、図13の位置A、B、C、およびDのように、「パーキンソン病に罹患している人」と「オリンピックピストンシューター」について異なる可能性がある位置)を選択して、「仮想SAIIシステム」(または仮想プレノプティックカメラ)を構成し、また、それらが存在する場合には「仮想ステレオプレノプティックシステム」を構成するために充分に「より大きなベースライン」Dを有する位置を選択する次のステップ1616と、図8および9のように選択されたショットまたはフレームを修正するが、修正は6軸x、y、z、ピッチ、ロール、およびヨーの異なる値(ステップ1616で選択されたショットの各々についての異なる値)に依存する第3のステップ1618と、選択したショットについての同等のSAIIシステム(または同等のプレノプティックカメラ)を作成し、かつ/またはxおよび/またはy方向の変位のいくつかが非典型的に大きい場合は(しかし、移動カメラの場合とは異なり、図5Aおよび5Bにおけるカメラは整列され、かつ同一平面上にあるため、「ワイドベースライン」Bを有する同等のカメラについてのz、ピッチ、ロール、およびヨーの値が全く異なる可能性が最も高い)、図5A〜5Bにおけるような同等のステレオプレノプティックシステムを作成する第4のステップ1620。同等システムが作成されると(図16Bのステップ1620において)、従来のエピポーラ線の勾配分析(図3A〜3Cにおけるような)、またはベースラインが十分に大きい場合(画像のうちの少なくとも1つが、「接続された画像のセット」からのxおよび/またはy方向おける距離がdより大きい場合)(「接続された画像のセット」内のすべての画像の距離が、「接続された画像のセット」内のその最も近い画像からd以下である場合)、ステップ1620の「同等システム」における全てのカメラの共通FOV視野の画像の勾配マップを取得する拡張エピポーラ線分析(図6Aおよび6Bにおけるように)に従って、世界中の物体までの距離を計算することを目的とする追加の第5のステップ(1622)を実行することが可能である。以前に得られたエピポーラ線の勾配は、従来のエピポーラ勾配から深度への変換(ステップ1624)によって深度マップを得るためにさらに使用することができ、ステップ1620「同等システム」の全てのカメラの共通FOV視野の画像の深度マップを得る。あらゆる3Dフォーマット(ステレオ画像、インテグラル画像など)に準拠する3D画像を、以前に計算された3D画像から勾配マップおよび深度マップから作成することが可能である(ステップ1626)。
提案されたプロセスのロバスト性は、異なるユーザおよびデバイスを用いて、かつ、異なる時刻に実験的に実証されている。さらに、プロセスの確率性を回避するために、すべての実験を数回繰り返した。
特定の実施形態では、本発明への画像の入力をビデオシーケンスとすることができる。120fpsで撮影されるビデオシーケンスを仮定すると、本発明では、シーンの深度値を計算するために、4フレーム(4画像)を使用することが望ましい。これは、システムが約30fps(多くてもリアルタイムと考えられる)で深度マップ(または3D画像)を生成することを意味する。深度マップを計算するために(または3D画像を構成するために)選択されるフレームは、必ずしも連続するフレームではなく、十分に広いベースラインを示すフレームである。
これまで、加速度計、ジャイロスコープ、または任意の他の位置決め装置からのデータを使用して、モバイル機器によって撮られた2つ以上の画像を「登録する」プロセスについて説明してきた。位置合わせプロセスは画像「修正」(図8および図9のように、取得された2つ以上の画像が「再計算」されて同等の同一平面画像にあることを保証するため)および「対応付け」または「パターンマッチング」(共通パターン86を探索することによって図8に例示される)を含むことを思い出されたい。プレノプティックカメラおよび本発明の一実施形態におけるSAIIにおける「対応付け」または「パターンマッチング」は、エピポーラ画像内のエピポーラ線を識別することによって実行される。
別の実施形態では、プロセスが記載された手順がリアルタイムプロセスと見なされ得る時間範囲内で実行され得る。
モバイル機器によって登録された動きは、ロバストな深度マップを得るのに十分良好である。この目的のために、プレノプティックカメラのサブ開口によって得られたベースラインを、提案された発明によって得られたベースラインと再び比較する。
プレノプティックカメラのベースラインは2つの連続するサブ開口の中心間の距離(図5Bの2つの等価なカメラ51の中心間の距離d)であり、ベースラインのサイズ(ならびに最大直径2D)はデバイスが許容可能な精度で推定することができるオブジェクト世界までの最大距離に直接関連し、ベースラインおよび直径(dおよびD)が大きいほど、深度マップが良好になる(オブジェクト世界までの大きな距離のより良好な推定値を得る)。前に述べたように、1ミリメートルの10分の1はプレノプティックカメラにおける正常なベースラインと考えることができる(入射瞳の典型的な開口は1または2mmであり、マイクロレンズ当たりの典型的な数は10〜20画素である)。提案された発明はSAIIシステム(またはプレノプティックカメラ)と同様の方法で動作することができるが、連続的なビューを撮影するただ1つの従来型カメラを使用する。提案された発明は深度マップを推定するために、プレノプティックカメラ(またはSAIIシステム)として、エピポーラ画像からの勾配の計算に基づく同じアルゴリズムを使用することができる。しかしながら、本発明は手の振戦が通常それよりも大きいので、プレノプティックカメラのベースライン(約0.1mm)よりも大きなベースラインで動作することができ、したがって、提案された発明は、より大きな距離に対する精度に関してより高い品質の深度マップを得ることができる。この重要な利点に加えて、システムが従来型カメラセンサの解像度全体を有し、プレノプティックカメラの主な欠点(マイクロレンズと同じ小さな空間解像度を有し、方形マイクロレンズ1個当たり約100画素を有し、解像度が約100分の1である)を解決するので、提案された発明によれば、プレノプティックカメラによって得られるものよりもはるかに高い空間解像度を有する深度マップを得ることができることを強調することがさらに重要である。
一実施形態では、手の振戦に起因するモバイル機器の動きは、モバイル機器に含まれる小さな振動モータによって生成される振動(呼び出し音の代わりにまたは相補的に使用される振動とすることができる)によって、または、露光時間中に移動体上にカメラを配置することによって(例えば、カメラは自動車の外側の関心領域に対して十分な視界を有する自動車位置に取り付けられるか、または配置される)、強化または置換することができる。
別の実施形態では、加速度計、ジャイロスコープ、または任意の他の位置決め装置を使用して対応問題を解決するために、本明細書で説明されるプレノプティックカメラおよびステレオプレノプティックカメラの方法は、異なる画像をマッチングさせるアルゴリズム(ステレオマッチングまたはマルチビューマッチング)によって置き換えることができる。さらに別の実施形態では、前景のオブジェクトを特定することができ、一方で、合成されたビデオシーケンスにおいて、カメラから異なる距離にある2D画像を組み合わせることによって、動かない前景オブジェクト(またはより遅い速度で動く前景オブジェクト)に対して背景を動かすことができ、3D効果を生成する:ビデオシーケンスにおいて、背景画像の遮りが時間とともに変化するとき、背景での動きが速く、前景のオブジェクトがそれより遅い速度で動くとき、前景のオブジェクトの視界またはサイズがゆっくりと変化するとき(例えば、サメがカメラに向かって泳ぎ、連続するフレームにおいて背景を段々と遮っていく;またはFOVに沿ってカメラ平面から一定の距離で泳ぐサメが連続するビデオフレームにおいて遮蔽を変化させる);または逆に、背景よりも速く前景が動き、遮蔽を変化させるとき。上記の例として、他を排除しないが、上記の場合には、カメラから幾つかの異なる距離に位置する複数の異なるレベルの2D前景、中景、および背景レベルの画像のビデオシーケンスの組合せ(本開示で言及された技術がビデオ画像のリアルタイム深度マップ計算を可能にするので、それらの計算された距離に関連することができるレベル)が2つ以上の2D画像の組合せを可能にし、見る人に対して3D知覚を生成する。
光照射野は多くの方法で、例えば、カメラのアレイを含むSAIIシステム、または、同等に、明確に定義された位置からシーンの画像を撮影するために自動的に動かされるカメラを用いて、生成され得る。光照射野は、プレノプティックカメラを使用して生成することもできる。本明細書で提案される本発明は、時間隔内にいくつかの画像を取得し、次いで、前述のように、加速度計、ジャイロスコープ、またはデバイスに統合されたこの種の任意の他の機能からのデータを使用してこれらの画像を修正するモバイル機器で実施される。このプロセスは、シーンの光照射野も構成する。この光照射野からシーンの深度マップを生成するための処理手順のいくつかの実施形態を以下に詳細に説明する。
光照射野からシーンの深度情報を取得する方法は、エピポーラ画像においてセンサによって捕捉されたパターンを分析することである。提案された発明では、取得された画像(都合よく修正された)の各々がプレノプティックビューとして扱われ、各プレノプティックビューはエピポーラ画像を生成するために使用される。図3A〜3B〜3Cは水平エピポーラ画像300および垂直エピポーラ画像302が光照射野からどのように構成されるかを示し、これらの画像内で、ライン、いわゆるエピポーララインを形成する接続された画素を識別することが可能である。エピポーラ線62の全ての照明された画素は、オブジェクト世界の同じ点に対応する。さらに、これらの線の傾きは、マイクロレンズ上で照明されるパターンのサイズ、およびオブジェクト世界内の点の対応する深さに直接関係する。したがって、このパターンを知ることによって、画素によってサンプリングされたパターンをカメラを通してバックトレースし、そのようなパターンを生成したオブジェクト世界内の点の正確な深さを得ることが可能である。プレノプティックカメラでは、深さと勾配との間の関係が、光照射野を捕捉するために使用される装置の物理的寸法および設計に依存することがよく知られている。本発明では、エピポーラ画像におけるパターンの形成が、取得された異なる画像(異なるビュー)間の変位(ベースライン)に依存する。この変位は、対応付けアルゴリズム(ステレオマッチングアルゴリズム)を使用して計算することもできる。これらのアルゴリズムは、前記2つ以上の画像の画素間の1対1の関係を確立するために、2つ以上の画像に現れ得るパターンを検索する。これらは、本発明を用いることによって回避することができる計算集約的アルゴリズムである。本発明では、画像間の変位が、加速度計、ジャイロスコープ、または装置に組み込まれたこの種の任意の他の機能のデータを使用して計算される。これには、「画像修正処理」の後、両方の画像の画素間の1対1の関係で終了する連続的な回転および並進運動の計算が含まれる。
カメラまでの異なる深さまたは距離にある物体は、プレノプティックカメラのセンサ上に、ならびにモバイル機器内の移動カメラによって撮影された画像の提案された構成上に、異なる照明パターンを生成する。既に述べたように、プレノプティックカメラではいわゆるプレノプティックビュー(光照射野を構成する)をエピポーラ画像で表すことができるのと全く同じ方法で、本発明では単一の移動カメラ(これも光照射野を構成する)から連続的に得ることができるいくつかの「修正されたビュー」をエピポーラ画像によって表すこともできる。両方の場合において、エピポーラ画像は、図3で説明したように光照射野の2次元スライスを撮影することによって構成される。
一実施形態では、深さ推定のために本発明で使用されるプレノプティックアルゴリズムは、エピポーラ線を形成する点に線形回帰技法を適用して、前記エピポーラ線から勾配を得ることができる。水平/垂直エピポーラ画像内のエピポーラ線を分析するとき、垂直/横次元に沿って分布する(プレノプティックビューで生じるような)すべての画像が考慮される。なぜなら、これは同じ物点がこれらのビューのいくつかによって捕捉されており、世界内の同じ点によって生成されたエピポーラ線がいくつかのエピポーラ画像内に現れる可能性があるためである。したがって、この線形回帰技法およびオブジェクト世界内の同じ点までの距離を計算するための異なるエピポーラ画像の使用は、1つの次元に沿った冗長情報を利用することによって統計的ノイズを低減する。
さらに別の実施形態では、水平および垂直エピポーラ画像に形成されたすべての線が識別され、それらの対応する勾配が計算される。そして、その傾きから、対応する物体の深度を算出する。
別の実施形態では、エピポーラ線はいくつかの視点から捕捉された同じ物点によって形成されるので、エピポーラ線1本当たり1つの勾配値(および/または深さ)のみが計算される。したがって、データの量は、2つの要因によって大幅に低減される。すなわち、(i)オブジェクト世界のエッジに対応するエピポーラ線においてのみ線が検出される(オブジェクト世界の領域は、エッジなしでは完全に均一であり、エピポーラ線を生成しないため)こと、および(ii)従来技術で従来行われていたように、エピポーラ線を形成する各画素に1つの値を計算/記憶する代わりに、線ごとに1つの勾配値のみを計算/記憶することが可能であること。少なくとも1つの実施形態では、この計算プロセスの出力がこれらの検出された勾配の対応する深度値だけとすることができる。
別の可能な実施形態では、水平および垂直エピポーラ線を分析することによって得られた勾配が、統計的ノイズを低減するために、多次元行列に組み合わされる。この冗長性は、垂直および水平エピポーラ画像の両方を分析するときに同じセンサ画素が考慮され、したがって、いくつかの勾配値がオブジェクト世界の同じ点によって生成されるので、本発明の出力を改善する。
エピポーラ線について計算された勾配は、対応する物体深度に変換される。別の実施形態では、この変換ステージがすべての冗長な勾配を組み合わせた後に実行することができ、勾配から深さへの変換の数を大幅に減少させる。
別の実施形態では、水平および垂直エピポーラ線で計算された深度/勾配が2次元疎深度/勾配マップに直接組み込まれ(これはエピポーラ線内の点についてのみ深度/勾配計算を含み、従来技術のように画像内のすべての点について深度/勾配計算を含むわけではないため、疎らである)、したがって、単一の結合段階を実行し、計算効率を向上させる。
別の実施形態では、疎深度/勾配マップが画像充填技法を適用して、すべての画素について深度/勾配値を得ることによって充填することができる。その結果、本発明は、各点がシーン内のその点の深度推定に関連付けられる密な深度マップを提供する。
別の実施形態では、深度マップを推定するための本明細書で説明される方法が最終結果を改善するために、ステレオマッチングアルゴリズムまたはマルチビューマッチングアルゴリズムと組み合わせることができ、またはそれらによって置き換えることができる。
少なくとも1つの実施形態では、本明細書で説明する方法がプレノプティックカメラを装備したモバイル機器で実施することができる。
一実施形態では、エピポーラ線はエッジ検出アルゴリズムを使用して検出することができ、それらの勾配は線形回帰技法によって測定することができる(方法論、エッジ検出、および線形回帰の両方を、サブ画素精度で使用することができる)。
深度推定のための一実施形態では、オブジェクト世界のエッジが検出されたセンサの画素に対してのみ全ての計算を実行し、計算がセンサの非常に多数の画素に対して計算を実行することを回避することができる。
(バッテリに依存する)移動端末における電力消費は極めて重要であり、そのため、アルゴリズムにおける計算効率は最も重要である。(2台のカメラを使用する)いくつかの3D電話機は、低バッテリ状態で第2のカメラ(および3D機能)を無効にすることは公知である。これらの例はモバイル機器においてリアルタイムで深度マップを取得するために、極めて効率的な方法でアルゴリズムを実行することが便利であることを明らかにする。本発明は、従来型カメラが識別されたエッジについてのみ深度を計算するための極めて効率的なアルゴリズムを使用して、モバイル機器(携帯電話、タブレット・・・)において3D画像を提供することを可能にする。
これを行うために、今日プロセッサ(モバイル機器からのプロセッサでも)に含まれる複数のコアを利用することが可能である。本質的なアイデアは、いくつかのアルゴリズム実行スレッドを、それらの各々が異なる動作を実行することを担当するように作成することである。例えば、図15Aでは、マルチコアプロセッサ1006とすることができるプロセッサ1004を介して処理される画像1002を撮影する、本発明のマルチビューシステム1001を含む電子モバイル機器1000を示す。プロセッサ1004は、2つ以上のCPU(Central Processing Unit)1008aおよび1008b(図15B)によって構成することができる。
計算効率を高めるために、より高度な計算技術を使用することができる。例えば、現在のプロセッサ1004はグラフィックス・プロセッサ・ユニット(GPU)1010を含むことができ、モバイル機器1010用に設計されたGPUであっても、同時に動作を実行することができる数百または数千のコアを含む。したがって、少なくとも1つの実施形態では、各エピポーラ画像がGPUの異なるコア内で同時に処理され、アルゴリズムの実行をさらに加速する。