(58)【調査した分野】(Int.Cl.,DB名)
前記画像シーケンスの各画像内のトークン領域を識別するさらなるステップを含み、前記対応付け情報が、前記画像シーケンスにわたるマッチングトークン情報を含む、請求項1に記載の方法。
前記対応付け情報に応じて、前記画像シーケンスの各画像に関して個別の固有画像を生成するステップが、アンカ制約を実行することによって行われる、請求項1に記載の方法。
前記対応付け情報に応じて、前記画像シーケンスの各画像に関して個別の固有画像を生成するステップが、マルチ画像求解技法を実行することによって行われる、請求項1に記載の方法。
前記粗い対応付け技法が、パッチ登録技法、ヒストグラムベースの対応付け技法およびスペクトル比ベースの対応付け技法からなる群から選択される、請求項3に記載の方法。
前記画像シーケンスの各画像内のトークン領域を識別するさらなるステップを含み、前記対応付け情報が、前記画像シーケンスにわたるマッチングトークン情報を含む、請求項10に記載のコンピュータプログラム。
前記対応付け情報に応じて、前記画像シーケンスの各画像に関して個別の固有画像を生成するプロセスステップが、アンカ制約を実行することによって行われる、請求項10に記載のコンピュータプログラム。
前記対応付け情報に応じて、前記画像シーケンスの各画像に関して個別の固有画像を生成するプロセスステップが、マルチ画像求解技法を実行することによって行われる、請求項10に記載のコンピュータプログラム。
【発明を実施するための形態】
【0009】
次に図面を参照し、まず
図1を参照すると、画像に関係付けられた操作を行うように配置および構成されたコンピュータシステム10のブロック図が示されている。CPU12は、例えばUSBポートを介して、例えばデジタルカメラ14などのデバイスに結合される。デジタルカメラ14は、同一シーンの複数の画像、またはビデオを撮影するように動作し、静止位置で動作させることも、移動させながら動作させることもできる。カメラ14は、カメラ14にローカルで記憶された画像をCPU12にダウンロードする。CPU12は、ダウンロードされた画像を画像ファイル18としてメモリ16に記憶する。モニタ20に表示するため、またはプリンタ22でプリントアウトするために、画像ファイル18にCPU12がアクセスすることができる。
【0010】
あるいは、CPU12は、例えばデジタルカメラ14やロボットなどのデバイスに埋め込まれたマイクロプロセッサとして実装することができる。また、CPU12には、例えばロボット操作やユーザとの対話操作に関連する、画像に関係付けられたリアルタイム操作のためのリアルタイム操作システムを備え付けることもできる。
【0011】
図2に示されるように、各画像ファイル18は、N×M画素アレイを備える。各画素pは、画像全体の別々の部分に対応するピクチャ要素である。すべての画素が合わさって、画像ファイル18によって表される画像を定義する。各画素は、1組のカラーバンド、例えばピクチャ要素の赤色、緑色、および青色成分(RGB)に対応するデジタル値を備える。本発明は、各バンドが電磁スペクトルの一部分に対応する任意のマルチバンド画像に適用可能である。画素アレイは、それぞれn行m列を含み、画素p(1,1)から始まり、画素p(n,m)で終わる。画像を表示または印刷するとき、CPU12は、一般に知られているように、対応する画像ファイル18をメモリ16から検索し、画像ファイル18内の画素のデジタル値に応じて、場合によりモニタ20またはプリンタ22を動作させる。
【0012】
画像操作中、CPU12は、記憶されている画像ファイル18の画素のRGB値を解析するように動作して、様々な目的を実現し、そのような目的は、例えば、画像ファイル18内に記録されたシーン内に示される単一の物質に対応する画像の領域を識別することである。Friedhoff特許に開示されている、本発明の基本的な発見の根底にある根本的な考えは、画像が2つの成分、すなわち物質成分と照明成分とを備えることである。画像のすべての変化は、これらの成分の一方または他方によって引き起こされる。これらの成分の一方、例えば物質成分を検出するための方法は、物体の縁部など物質または物体の幾何形状を、照明と陰影の境界から見分けるためのメカニズムを提供する。
【0013】
そのようなメカニズムは、固有画像を生成するために使用することができる技法を実現可能にする。固有画像は、元の画像、例えば入力された画像ファイル18内に示される画像に対応する。固有画像は、例えば、画像内に示される表面上での各点に入射する光の強度および色を取り込むための照明画像と、画像内に示される表面の反射率特性(表面が反射する光の各波長のパーセンテージ)を取り込むための物質反射率画像とを含む。固有画像内の物質から照明を分離することは、コンピュータビジョンなどの用途において、より効果的かつ正確なさらなる処理のために最適化された画像をCPU12に提供する。
【0014】
米国特許出願公開第2010/0142805号明細書および同第2010/0142825号明細書は、元の画像から固有画像を生成するためのコンピュータ操作に関する空間スペクトル演算子/制約/ソルバモデルにおけるFriedhoff特許の根本の教示を利用する方法を開示する。引用する特許公開に開示されている発明の特徴によれば、画像ファイル18内に示されるシーンの照明アスペクトと物質アスペクトの区別のためのプロセスを容易にするために、空間スペクトル演算子が生成される。
【0015】
空間スペクトル演算子は、画像の物質アスペクトと照明アスペクトの処理で有用な空間スペクトル情報を含む画像の表現または特性を備える。空間スペクトル演算子は、演算子間の制約空間スペクトル関係を定義する制約を受けて、ソルバに入力される。ソルバは、空間スペクトル演算子間の制約関係に応じて、画像ファイル18に記憶されている元の画像から導出される物質画像および/または照明画像などの固有画像を生成するための最適化解を得るように動作する数学的処理エンジンを含む。
【0016】
本発明の1つの特徴によれば、引用する特許公開の方法が、同一シーンの複数の画像を処理すべきシナリオに拡張される。シーンは、同一の物体、すなわちシーン内に示される建物など単一の物体または1群の物体の複数の画像に関して定義することができる。一般に、このシナリオは、例えば、グラフィックスアプリケーションに関して環境をモデリングするときに生じることがあるように、場合によっては間隔の広い複数の視点からの同一シーンの複数のビューを示す複数の画像が存在するときに生じる。別の例は、静止カメラまたは移動カメラによって生成されるビデオデータで生じるように、時間および空間的に間隔が狭い画像のシーケンスである。
【0017】
固有画像を生成するための方法の実行は、1組の複数の画像にわたる情報収集形態に応じて、複数の画像それぞれに関して行うことができる。1組の複数の画像全体に関連する情報の使用は、いくつかの異なるビューで示される各同一シーンパッチ間の対応付けを保証し、1組の画像にわたる一貫した結果を提供する。
【0018】
引用する特許公開に開示されている発明の特徴によれば、空間スペクトル演算子は、例えば、トークン、トークンマップ情報、対数色度表現値、X−junction、およびBIDRモデル表現を含む。
【0019】
トークンは、画像の連接領域であり、その領域の画素は、物質および照明の識別など、画像の特徴および特性の識別に関連する様式で互いに関係付けられている。トークンの使用は、ある画像の1組の特定の物質/照明/幾何学的特性が単一の画素を超えて広がっていることを認識し、したがって、本明細書で説明する画像処理を画素レベルで行うことができると共に、トークンが画像性質のより効率的な処理を促進する。トークンの画素は、例えば画素間の色の密接な相関など均質因子に関して、またはRGB空間など色空間内で幾何学的に関連する異なる色値(例えば一般にテクスチャと呼ばれる)など不均質因子に関して関係付けることができる。本発明は、トークン領域を識別するために、画像ファイル18内に示される画像の連続する画素に関連する空間スペクトル情報を利用する。空間スペクトル情報は、画素のカラーバンド(例えばRGB値)に関する連続する画素間のスペクトル関係と、単一の物質に関連する画素スペクトル特性の空間的な広がりとを含む。
【0020】
本発明の1つの例示的実施形態によれば、トークンはそれぞれ、タイプAトークン、タイプBトークン、またはタイプCトークンとして分類される。タイプAトークンは、連続する画素を備える連接画像領域であり、この領域は、シーン内の単一物質(均一な反射率)を含む可能な最大の画像領域を表す。タイプBトークンも、連続する画像を備える連接画像領域であり、シーン内の単一物質を含む画像領域を表すが、必ずしも、その物質に対応する均一な反射率の最大領域ではない。また、タイプBトークンは、すべて同じ反射率(物質の色)を有する1つまたは複数の画像領域または画素の集合体と定義することもできるが、必ずしも、その物質の色に対応するすべての画素ではない。
【0021】
タイプCトークンは、トークンの連続する画素間で類似の画像性質、例えば単一のロバストな色測定に対する類似の色および強度を有する連接画像領域を備え、ここで、類似性は、画像を記録するために使用される撮像システムに関する雑音モデルに関して定義される。タイプCトークンは、数学的な計算の効率、および色測定の精度のために使用される。タイプCトークンを使用することによって、処理すべき画像は、類似の色および強度特性を有する連続する画素の領域(タイプCトークン)に分割される。したがって、処理の目的で、それぞれのトークンの各個の成分画素を解析する(この解析はより時間がかかる)のではなく、各トークンが単一のユニットとして解析される。さらに、各トークンの色は、実質的に類似の成分画素の平均として計算されて、本発明の例示的実施形態のプロセスで使用するためのよりロバストな色測定を提供する。
【0022】
線形トークンは、画像の連接領域を備える不均質トークンであり、その領域の隣接画素が異なる色測定値を有し、これらの値は、RGB空間内で、正の勾配に沿った暗色側の端部(陰影)から明色側の端部(照明端部)への円筒形内にある。本発明の1つの特徴によれば、色変化が、画像内に示されるシーンの単一の物質にわたって陰影を生み出す照明変化(すなわち、照明領域内での入射または直接光源と周囲光源との相互作用としての入射光源の強度減少)によるものであるとき、円筒形構成は二光源二色性反射モデル(BIDRモデル)によって予測される。
【0023】
線形トークンを記述、識別、および使用するために、BIDRモデルは、I(x,y,z,θ,φ,λ)=c
b(λ)l
d(λ)γ
b+M
a(λ)c
b(λ)と記述することができ、ここで、I(x,y,z,θ,φ,λ)は、波長λに関する方向θ、φでの(x,y,z)での表面点の放射輝度であり、c
b(λ)は、波長λに関する表面の幾何学的に独立した物体の反射率であり、l
d(λ)は、波長λに関する入射光量(incident illuminant)であり、γ
bは、陰影因子s
x,y,zと幾何学的因子m
b(θ
i)との積であり、M
a(λ)は、入射光量を除いた、半球にわたる周囲光量(ambient illuminant)と幾何学的物体反射率との積分である。BIDRモデルに関するより詳細な情報については、2007年8月2日に米国特許出願公開第2007/0176940号明細書として公開された、「Bi-illuminant Dichromatic Reflection Model For Image Manipulation」という名称の2006年1月27日出願の米国特許出願第11/341,751号明細書を参照されたい。
【0024】
トークンマップ情報は、画像内のトークンの互いに対する位置を示す。マップ情報を使用して、隣接するトークンを識別し、トークン間の空間スペクトル制約関係に関連するトークン隣接関係の解析を行って、ソルバに入力する。
【0025】
対数色度表現値は、画像の画素に関する照明不変値を提供する。画像画素のカラーバンド値の対数値が、対数色空間グラフに描かれる。次いで、対数値が、BIDRモデルに応じて方向付けられた対数色度投影面に投影される。色度面値は、各画素のカラーバンド値(例えばRGB値)の代わりとなる。対数色度表現値に関するより詳細な情報については、「Method And System For Separating Illumination And Reflectance Using a Log Color Space」という名称の米国特許第7,596,266号明細書を参照されたい。
【0026】
X−junctionは、物質縁部と照明境界が互いに交差する画像領域である。X−junctionは、画像の物質アスペクトと照明アスペクトの正確な解析のための最適な位置である。
【0027】
引用する特許公開に開示されている発明の特徴によれば、制約は、アンカ制約、同一照明制約、平滑照明制約、同一物質制約、線形トークン制約、BIDR施行制約、対数色度類似性制約、およびX−junction制約を備える。各制約は、それぞれの制約によって利用される空間スペクトル演算子を定義する制約ジェネレータソフトウェアモジュールとして構成され、成分演算子に課される制約関係の表現を提供する。
【0028】
アンカ制約は、トークンまたは画素の照度または物質反射率を指定値に固定する。例えば、アンカ制約は、画像内のいくつかの最も明るい/最大のタイプCトークンに関して生成することができ、それぞれのタイプCトークンを、画像内の観察された色に等しい反射率を有するように制約する。この例での制約の適用は、最も明るい/最大のトークンが白色光によって完全に照明されるという仮定に従う。さらに、他の制約が、トークンの相対的な物質反射率値または照度値しか指定しない場合、アンカ制約は、画像内の反射率または照度の絶対値を指定する助けとなり得る。
【0029】
同一照明制約は、画像およびトークンマップ情報において識別されるタイプCトークンおよびタイプBトークンを利用する。この制約関係は、トークンマップ情報によって示される隣接するタイプCトークンが、同一のタイプBトークンの一部でない限り、同一照明であるというものである。用語「照明」に関連する用語「同一」は、画像を記録するために使用される撮像システムに関する雑音モデルに関する平均値を意味するものとして使用される。これは、同一のタイプBトークンの一部ではない隣接するタイプCトークン間の任意の観察される見た目の差を、物質変化に制約する。
【0030】
平滑照明制約では、制約は、隣接するタイプCトークン間の共有される境界付近の画素の平均照度に基づく。これは、1つのトークンにわたって区分的に一定ではなく、照明領域をいくぶん滑らかなものとなるように制約する。
【0031】
同一物質制約またはタイプBトークン制約も、タイプCトークンとタイプBトークンを利用する。しかし、この制約関係は、同一のタイプBトークンの一部であるすべてのタイプCトークンが同一物質に制約されるというものである。この制約は、タイプBトークンの定義、すなわち、連続する画素を備える連接画像領域であり、シーン内で単一の物質を含む画像領域を表すが、必ずしもその物質に対応する最大領域ではないという定義を施行する。したがって、同一のタイプBトークン内にあるすべてのタイプCトークンは、タイプBトークンに課される定義によって、同一物質のものであるが、必ずしも同一照明ではない。したがって、タイプCトークンは、異なる照明によって引き起こされる観察される見た目の差に対応するように制約される。
【0032】
したがって、タイプBトークン制約は、上述したように観察される差を照明変化ではなく物質変化に対応するものとして制約する同一照明制約および平滑照明制約を補完するものである。これは、同一照明制約および平滑照明制約それぞれにおいて、隣接しているが、同一のタイプBトークンの一部ではないタイプCトークンが同一照明に制約されることに起因する。これらのタイプCトークンは異なる物質を備えるはずである。なぜなら、制約により、それらは同一のタイプBトークン内にはなく、したがって、制約によって施行されるタイプBトークンの定義により、含んでいる物質がただ1つではないからである。したがって、照明は一定であるはずであり、任意の観察される差は物質変化に起因するものとみなされる。
【0033】
要約すると、引用する特許公開に開示されている発明の特徴によれば、照明と物質の区別を可能にする画像の特性を提供するために、タイプCトークンおよびタイプBトークン空間スペクトル演算子が定義される。各タイプCトークンは、画像ファイル18に記録および記憶された類似の画像性質、例えば類似の色を有する連接画像領域を備える。したがって、隣接するタイプCトークンは、何らかの形態の画像変化を示すか、または同一のタイプCトークンを成す。タイプBトークンは単一の物質を含む。同一/平滑照明制約とタイプBトークン制約という補完的な制約が、物質変化または照明変化を示すトークン間の関係を施行する。
【0034】
隣接するタイプCトークンが同一のタイプBトークン内にある場合、共通のタイプBトークンの同一物質特性により、それらのタイプCトークン間の差は、タイプBトークン制約におけるように照明変化に対応するはずである。隣接するタイプCトークンが同一のタイプBトークン内にない場合、共通の単一物質タイプBトークンによっては両方のタイプCトークンが定義されないので、それらのタイプCトークン間の差は、同一/平滑照明制約におけるように物質変化に対応するはずである。
【0035】
線形トークン制約は、タイプCトークンと線形トークンを利用する。この制約関係は、線形トークンによって離隔された2つのタイプCトークン間の差が、画像に関する特性光源スペクトル比にほぼ等しいというものである。定義したように、線形トークンは、色空間を通って正の勾配に沿った円筒形構成に従う。BIDRモデルは、暗色側の端部と明色側の端部との間の色の差が、画像に関する特性光源スペクトル比に等しいと予測する。したがって、線形トークンは、単一物質での照明遷移を取り込むので、それぞれ線形トークンの暗色側の端部と明色側の端部にある2つのタイプCトークンの色の差が、画像に関する特性光源スペクトル比の値を反映するはずである。線形トークンの下でのタイプCトークンは、すべて同一物質であり、同一物質となるように制約することができる。
【0036】
BIDR施行制約は、タイプCトークンと、対数色度投影面に関するBIDRモデル定義垂直ベクトルを利用する。この制約関係は、画像の局所パッチでのすべてのタイプCトークンに関する照明が、対数色空間内で線を成し、その線の向きが、BIDRモデル定義垂直ベクトルによって定義されるというものである。したがって、この制約は、画像内に存在する照明領域を、照明に関するBIDRモデル予測に明示的に適合させる。
【0037】
したがって、線形トークン制約とBIDR施行制約はそれぞれ、画像の照明アスペクトと物質アスペクトを区別するための基礎としてBIDRモデル予測を利用する。BIDRモデルは、色変化が、画像内に示されるシーンの単一の物質にわたって陰影(すなわち、照明領域内での入射または直接光源と周囲光源の相互作用としての、入射光源の強度の減少)を生み出す照明変化によるものであるときに、画像の色変化を予測する。BIDRモデルの色変化予測は、照明領域の入射光源成分と周囲光源成分との間で生じるスペクトル変化の相互作用に応じて操作することによって、タイプCトークン間のすべてのカラーバンド変化を、画像内で生じる照明領域効果に正確に制約する。したがって、BIDRモデルベースの制約は、すべてのカラーバンド変化を1つの統合的な制約関係に組み合わせる。BIDRモデル制約は、照明領域が周囲光による領域から完全に照明された領域まで及ぶことを保証し、照明色の物質依存変化を防止する。
【0038】
対数色度類似性制約は、タイプCトークンと対数色度表現値を利用する。この制約関係は、類似の対数色度表現値を有する画素を含むタイプCトークンが同一物質色値に制約され、観察される差が照明領域の変化に起因するというものである。
【0039】
X−junction制約は、タイプCトークンとX−junction演算子を利用する。上述したように、X−junctionは、物質縁部と照明境界が互いに交差する画像の領域である。X−junctionは、典型的には4つのタイプCトークン、すなわち物質縁部を形成する2対の同一物質タイプCトークンによって形成され、同一物質の各対が、照明されているタイプCトークンの対と陰影がかかっているタイプCトークンの対とに同一物質を分割する照明境界を含む。この制約関係は、以下のようなものである。1)同一物質制約が、X−junctionを形成する同一物質のタイプCトークンの各対(それらの間に照明境界を有する対)の間で課され、かつ、2)同一照明制約が、X−junctionの物質縁部を形成するタイプCトークンの各対の間で課される。X−junction、および成分トークンの関係のより詳細な説明については、「Method And System For Identifying Illumination Flux In An Image」という名称の米国特許第7,672,530号明細書を参照されたい。
【0040】
引用する特許公開に開示されている発明の1つの特徴による例示的なソルバは、最適化関数、例えば[A][x]=[b]によって表される式の結果の最適化を実行するための数学的処理エンジンを備え、ここで[A]は、演算子および選択された制約の制約関係の定義が満たすことができる(したがってそれらによって求解されると考えられる)値の行列であり、[x]は、式が最適解を見出す際の変数の行列であり、例えば画素またはトークンの照明成分または物質成分の一方であり、[b]は、既知の値または指定値の行列であり、これらの値は、例えば処理のために選択された画像内で観察された値、例えば画像ファイル18の各画素のRGBカラーバンドに関する記録値である。
【0041】
行列[b]に関する他のベースは、以下のものである。
− 汎用のアンカ制約。この制約では、[b]は、任意の指定値でよく、トークンの物質色が[b]内の値であるべきであることを示し、ここで、その値は、画像からの値またはユーザによって指定された任意の値でよく、例えば、人の顔の場合、ユーザが、スキントークンに関して値0.4を指定することができる(それにより、すべての顔が、画像内にあるものとして記憶されるように妥当な強度で現れる)。
− 同一物質制約。この制約では、[b]内の値は0であり、関連の式は、2つのトークンの物質色の差が0であることを指定している。
− 同一照明制約。この制約では、[b]内の値は、元の画像内の各トークンに関して測定された2つの色の差であり、関連の式は、元の画像内の2つのトークンの差が、それらの物質色の差であることを示す(これは、照明の差が0であることを意味する)。
− 平滑照明制約。この制約では、[b]内の値は、例えば平滑照明の場合にはフィルタ応答の出力として、または他のバージョンの平滑照明制約の場合には近隣の画素の差の平均として、元の画像から計算される何らかの値である。
【0042】
例示的なソルバでは、最適化式は、例えば最小二乗ソルバや前処理付き共役勾配ソルバなどの既知の凸最適化操作など、1組の既知の最適化ソルバから選択される数学的な最適化関数で実施することができる。
【0043】
本発明の1つの特徴によれば、対応付け情報が識別され、例えば、複数画像のシーケンスに記録された同一シーンの画素またはタイプCトークンをマッチさせて、複数の画像のさらなる処理、例えば固有画像の生成に使用する。マッチは、画像シーケンスの第1の画像内の画素またはタイプCトークンによって示される1つの画像の部分または特徴が、画像シーケンスの後続画像内の対応する画素またはタイプCトークンによって示される同一シーンの同一部分または特徴に対応することを示す。以下の説明は、一般に、2つの画像間のマッチを識別するための技法の例を提供する。しかし、開示する技法は、シーケンス内の任意の数の画像に適用することができる。さらに、以下の説明は、例示的な赤、緑、青(RGB)色空間に関するものである。しかし、開示する技法は、電磁スペクトル内での任意の分散からサンプルされた任意の数のカラーバンド、例えば(黄、マゼンタ、シアン)、(赤、緑、青、エメラルド)、または(赤外、赤、緑、青)に適用することができる。
【0044】
本発明の例示的な実施形態では、同一シーンの画像シーケンスに関する識別される対応付け情報は、CPU12によって、固有画像を生成するために画像シーケンスを処理する際に適用される。例えば、CPU12は、マッチするタイプCトークンの間でアンカ制約を実施することができ、それにより、シーケンスの第2の画像内のトークンの反射率が、第1の画像内の対応するトークンの反射率に制約され、以下同様である。
【0045】
本発明のさらなる例示的な実施形態では、マルチ画像求解が、CPU12によって実行される。マルチ画像求解では、シーケンスのすべての画像のすべてのタイプCトークンが、ソルバの行列式において未知のものとしてリストされる。異なる画像の対応するトークンに応じて、同一物質制約を実施することができる。
【0046】
本発明のさらに別の例示的実施形態では、各画像は、対応する固有画像を生成するために別々に処理することができ、固有画像は、次いで後処理操作で調節され、それにより、いくつかの物質画像それぞれの反射率が、対応付け情報に応じて互いにマッチされる。アンカ制約、マルチ画像求解、および後処理技法をそれぞれ以下に詳細に説明する。
【0047】
次に
図3Aを参照すると、本発明の好ましい例示的実施形態による、
図2の画像ファイル18内に示されるシーン内のタイプCトークン領域を識別するための流れ図が示されている。本発明の1つの特徴によれば、タイプCトークンは、
図3Aのステップを利用して、同一シーンを示す画像シーケンスの各画像で容易に識別することができ、次いで、対応付け情報に応じて解析および処理される。
【0048】
1次の均一かつ均質なタイプCトークンは、画像の連続する画素間で単一のロバストな色測定を備える。識別ルーチンの開始時、CPU12は、メモリ内の領域マップをセットアップする。ステップ100で、CPU12は、領域マップをクリアし、領域IDを割り当てる。領域IDは、始めは1に設定される。画素数に対応するルーチンの反復が、i=0に設定され、トークンを決定するためにシードとして使用するためのN×N画素アレイに関する数値が、初期値N=N
startに設定される。N
startは、任意の整数>0とすることができ、例えば11または15画素に設定することができる。
【0049】
ステップ102で、シードテストが開始される。CPU12は、例えば第1の画素i=1、画素(1,1)、すなわち画像ファイル18の第1のN×Nサンプルの左上隅の画素を選択する(
図2参照)。次いで、決定ブロック104で、この画素がテストされて、選択された画素が良好なシードの一部であるか判定される。このテストは、選択された画素の色値と、その画素に隣接する、シードとして予め選択された数の画素(例えばN×Nアレイ)の色値との比較を含むことができる。色値の比較は、画素の複数のカラーバンド値(本明細書の例ではRGB)に関するものとすることができる。比較が、シード内の画素に対して(例えば記録デバイスの雑音レベル内で)ほぼ等しい値をもたらさない場合、CPU12は、次のN×Nシードサンプルに関してiの値を増分し(ステップ106)(例えばi=2、画素(1,2))、次いで、i=i
maxであるか判定するためにテストする(決定ブロック108)。
【0050】
画素値が、i
max、すなわち、改良された結果を得るためにシードサイズを減少させるという決定を下すためのしきい値として選択された値である場合、シードサイズNが、例えばN=15からN=12に減少される(ステップ110)。本発明の1つの例示的実施形態では、i
maxは、
図2に示されるように画素(n,m)で終了する画像内の画素の数に設定することができる。このようにして、
図3Aのルーチンは、第1のN値で画像全体をパースしてから、減少されたNの値に関してルーチンを繰り返す。
【0051】
シードサイズの減少後、ルーチンはステップ102に戻り、トークンシードに関してテストを続ける。また、ステップ110で、解析が完了したかどうか判定するために、N
stop値(例えばN=2)もチェックされる。Nの値がN
stopである場合、CPU12は、画像画素アレイの調査を完了してルーチンから出る。
【0052】
iの値がi
max未満であり、かつNがN
stopよりも大きい場合、ルーチンは、ステップ102に戻り、トークンシードに関してテストを続ける。
【0053】
良好なシード(ほぼ等しい画素値を有するN×Nアレイ)が見出されると(ブロック104)、シードからトークンが成長する。ステップ112で、CPU12は、シードからの画素をキューにプッシュする。キュー内のすべての画素が、領域マップ内で、現行領域IDでマークされている。次いで、CPU12は、キューが空かどうか問い合わせる(決定ブロック114)。キューが空でない場合、ルーチンはステップ116に進む。
【0054】
ステップ116で、CPU12は、先頭の画素をキューから抜き出し、ステップ118に進む。ステップ118で、CPU12は、対象画素の周りの「良好な」隣接画素、すなわち、現行領域IDを有する、対象画素と色値がほぼ等しい隣接画素をマークする。マークされた良好な隣接画素はすべて領域マップ内に置かれ、やはりキューにプッシュされる。次いで、CPU12は決定ブロック114に戻る。キューが空になるまでステップ114、116、118のルーチンが繰り返される。そのとき、現行領域内のトークンを形成するすべての画素が、タイプCトークンとして識別されて、領域マップ内でマークされる。
【0055】
キューが空であるとき、CPU12はステップ120に進む。ステップ120で、CPU12は、次のトークンの識別で使用するために領域IDを増分する。次いで、CPU12は、ステップ106に戻り、新たな現行トークン領域に関してルーチンを繰り返す。
【0056】
N=N
stopに達する(
図3Aの流れ図のステップ110)と、または画像と一致する領域マップが完成すると、ルーチンは、トークン生成タスクを完了する。
図3Bは、トークンの識別において一例として使用される元の画像である。画像は、青色領域および濃い青色領域、ならびに茶色領域および濃い茶色領域を示す。
図3Cは、
図3Bの画像に関して、例えば
図3Aのルーチンの実行によって識別された領域マップに対応するトークン領域(タイプCトークン)を示す。トークン領域は、
図3Bの画像のトークン作成を示すためにカラーコード化され、画像の完全な青色および茶色の領域と着色領域の陰影との間の半影領域を含む。
【0057】
各タイプCトークンが、画像の連続する画素間で単一のロバストな色測定値を有する画像領域を備える一方で、トークンは、物質境界をまたいで成長することができる。典型的には、異なる物質が、ネック領域を介して一体につながって1つのタイプCトークンを成し、ネック領域は、多くの場合、陰影境界に位置されるか、または類似の色調であるが異なる強度を有する異なる物質を横切って変化する照明を有する領域内に位置される。ネック画素は、隣接する画素の特性を検査することによって識別することができる。ある画素が、対応するトークン内部にない2つの連続する画素を両側に有し、かつ対応するトークン内部にある2つの連続する画素を両側に有するとき、その画素はネック画素と定義される。
【0058】
図3Eは、タイプCトークンに関するネックテストに関する流れ図を示す。ステップ122で、CPU12は、識別されたトークンの各画素を検査して、検査中の画素の任意のものがネックを形成するかどうか判定する。
図3Eのルーチンは、
図3Aのルーチンの実行中に特定のトークンが識別された直後に、サブルーチンとして実行することができる。ネックとして識別されるすべての画素が「成長不可能」とマークされる。決定ブロック124で、CPU12は、任意の画素がマークされたかどうか判定する。
【0059】
「いいえ」の場合、CPU12は、
図3Eのルーチンから出て、
図3Aのルーチンに戻る(ステップ126)。
【0060】
「はい」の場合、CPU12は、ステップ128に進み、
図3Aのルーチンに従って、シードサイズおよび領域IDに関するカウントを変えずに、現行のトークンのマークされていない画素の中から選択されたシード位置からトークンを再成長させるように動作する。再成長プロセス中、CPU12は、「成長不可能」と事前にマークされた画素は含まない。トークンが再成長された後、事前にマークされた画素がマークを外され、したがって、他のトークンがそこに成長することができる。
【0061】
事前にマークされた画素を含まないトークンの再成長後、CPU12は、ステップ122に戻り、新たに再成長されたトークンをテストする。ネックテストは、物質境界を横切るタイプCトークンを識別し、識別されたトークンを再成長させて、タイプBトークンを作成するために使用するのに適した単一物質のタイプCトークンを提供する。
【0062】
図3Dは、
図3CのタイプCトークンから生成されるタイプBトークンを示す。米国特許出願公開第2009/0034835号明細書は、画像ファイル18の画像内で識別されるタイプCトークンを解析することによってタイプBトークンを構成するための新規の例示的な技法を教示する。これらの技法は、任意境界除去、隣接平坦トークンマージング、およびローカルトークン解析を含む。これらの技法は、例えばCPU12による
図3Aのルーチンの実行によって識別されるような連続および/または重畳するタイプCトークン(各タイプCトークンが単一のロバストな色測定値の領域を備える)の特性を解析し、解析で使用されるそれぞれのタイプCトークンの間での照明条件の変化とは無関係に、対応するタイプBトークン(それぞれ単一物質の領域を備える)を決定する。上述したように、本発明の特徴に従って、タイプCトークンおよびタイプBトークンを使用して、同一シーンの複数の画像に対して様々な空間スペクトル制約を実施する。
【0063】
次に
図4を参照すると、本発明の特徴による、同一シーンの複数の画像間の対応付け情報を識別して使用するためのルーチン実施技法に関する流れ図が示されている。上述したように、これらの技法は、同一シーンの複数の画像を処理すべきシナリオに関して実行される。やはり上述したように、このシナリオは、例えば、場合によっては間隔の広い複数の視点からの同一シーンの複数のビューを示す複数の画像、または静止カメラもしくは移動カメラによって生成されるビデオデータで生じ得るような時間および空間的に間隔が狭い画像のシーケンスが存在するときに生じる。
【0064】
いずれの場合にも、ステップ200で、同一シーンの複数の画像I
0,I
1,...,I
tがCPU12に入力される。シーンは、任意の物体または1群の物体を示すことができ、処理は、シーン全体、またはシーンの任意の領域、例えば単一の物体もしくは1群の物体を示す領域に対して実施することができる。
【0065】
ステップ200で、適用可能なときには、任意選択で、例えば3Dまたは深さ情報など他のデータが、以下に説明するように使用するためにCPU12に入力される。入力された複数の画像I
0,I
1,...,I
tはそれぞれ、同一シーンを示す画像ファイル18を備えることができ、または、シーンの同一物体もしくは1群の物体を示す各画像ファイル18の領域を備えることができる。入力された複数の画像I
0,I
1,...,I
tは、例えばユーザがグラフィカルユーザインターフェースを介して選択することができる密な技法または粗い技法に従って、CPU12によって処理される。
【0066】
粗い技法は、例えばポイントワイドマッチなど、粗い明確な1組の特徴マッチに応じて、対応付け情報を識別する。密な技法は、画素毎のマッチングに応じて、対応付け情報を識別する。両方の技法を単一のシーンにおいて実施することができ、各技法が、ユーザが選択することができる画像の様々な部分に対して使用される。例えば、粗い技法は、処理が、共通のシーンでの単一物体または1群の物体に焦点を当てられているときに使用することができる。また、ユーザは、画像シーケンスがビデオであることも、静止カメラが使用されたかを示すこともできる。
【0067】
ステップ200で、ユーザが粗い技法を選択した場合、CPU12は、ステップ202に進む。ステップ202は、ユーザ入力によって実施することができる。この手法では、ユーザは、例えば、画像I
0内に示された記録されたシーンのN個の位置を選択し、次いで、シーンの後続画像、例えば画像I
1内で同じN個の位置を選択して、N個のマッチを提供する。ユーザによって選択されたN個の位置は、対象の物体または1群の物体をユーザに示すことができる。また、ユーザ入力を使用して、本発明の例示的実施形態による技法に関連付けて使用される他の特徴マッチング技法を初期化または補正することもできる。
【0068】
あるいは、ステップ202は、例えば、SIFT、MSER、またはHarris Corners(例えば、Harris and Stephens,「A combined corner and edge detector」,Proceedings of the 4
th Alvey Vision Conference,pp.147−151,1988参照)など既知の特徴マッチング技法をCPU12によって実行することによって実施することができる。これらの既知の技法は、画像シーケンスにわたって点をマッチさせる機能を提供する。例えば、シーン内に示され、CPU12によるSIFTモジュールの実行によって識別される窓の隅は、シーケンスの後続画像内での同一の窓の隅にマッチするように動作する。そのような技法は、典型的には、複数の写真を継ぎ合わせてより大きいパノラマにするために画像間の対応付けを確立するために使用される。
【0069】
CPU12の動作による、またはユーザによって入力される粗い1組のマッチング点の識別後、CPU12は、ステップ204で、1組の粗い特徴を出力する。
【0070】
決定ブロック206で、CPU12は、同一シーンの複数の画像I
0,I
1,...,I
tが、ビデオシーケンスであるか、それとも同一シーンの複数のビューを示す1組の静止画像であるかどうかに関して検査する。
【0071】
複数の画像が1組の静止画像である場合、CPU12は、ステップ208に進む。ステップ208で、CPU12は、1組の画像間の特徴をマッチさせるための既知の技法を継続する。本発明の例示的実施形態の1つの特徴によれば、任意選択で、例えば空間スペクトル演算子/制約/ソルバモデルによる上述したような固有画像の初期生成がCPU12によって行われて、複数の画像I
0,I
1,...,I
tそれぞれに関する物質画像を提供する。次いで、CPU12は、改良された結果を得るためのより正確な特徴マッチングのために、初期物質画像を使用して特徴マッチングを行う。次いで、初期固有画像を用いて識別された特徴から得られる対応付け情報を使用して、CPU12によって第2の固有画像生成操作が行われる。
【0072】
顔または他の同様に限定された領域を示す画像を処理するとき、例えば、適応形状モデルなどの領域特有技法を実施して、特徴マッチングタスクを行うことができる。そのような技法を使用して、目、眉毛、鼻など顔の特徴を位置特定することができる。次いで、位置特定された特徴を使用して、画像内の対応する点を識別することができる。
【0073】
決定ブロック206での結果が「はい」である(ビデオを示す)場合、CPU12は、ステップ210に進む。ビデオでは、画像は、互いに密接に連続して取り込まれる。したがって、そのような場合には、ステップ210で、CPU12は、ビデオのフレームからフレームへの点または特徴の運動を追跡することができる。例えばLucasおよびKanadeによって述べられる追跡技法(B. D. Lucas and T. Kanade,「An iterative image registration technique with an application to stereo vision」,Proceedings of Imaging Understanding Workshop,pp.121−130,1981参照)など、既知の追跡技法を実施することができる。追跡は、上述したように、SIFTなど特徴マッチング技法を使用して識別される特徴に基づくことができる。
【0074】
いずれの場合にも、ステップ208または210の一方の出力が、複数の画像I
0,I
1,...,I
tに関する点対応付け情報を提供する(ステップ212)。
図4の流れ図に示される本発明の例示的実施形態の1つの特徴によれば、特徴マッチングまたは特徴追跡ステップ208、210で見られる点対応付けは、例えば、タイプCトークンによって表される画像領域に相関される。このようにして、固有画像を生成するための操作において、マッチまたは対応するタイプCトークンは、対応付け情報に応じて複数の画像にわたって処理することができる。したがって、ステップ214で、CPU12は、上述したように
図3Aのルーチンを実行して、複数の画像I
0,I
1,...,I
tそれぞれでタイプCトークンを識別する。
【0075】
ステップ216で、CPU12は、パッチ登録によって、ステップ214で識別されたタイプCトークンとの点対応付けを相関させるように動作する。画像をマッチさせるための最良の特徴は、典型的には、複数の物質領域の交点に存在する。本発明の例示的実施形態では、固定された比較的小さい画素パッチが、複数画像の組の各画像での各対応付け点の周りに定義される。画素の数としての各パッチのサイズは、例えば、1つのマッチング点と、別の画像内の異なる点にマッチする同一画像内の最も近い点との間の平均距離の2倍の幅に設定することができる。
【0076】
1つの対応付け点の周りのパッチは、後続画像の対応する点の周りのパッチにマッチされる。各対のパッチが、1対のパッチの2つのパッチ内部の画素毎の画像データを最良にマッチさせるために、伸縮または歪関数を推定することによって登録される。この目的は、パッチの位置を整列させるため、および/またはパッチ内部の画素値の差を最小にするために、特定のクラスの変換に関するパラメータを決定することである。例えば、この目的は、アフィン変換を実施することによって実現することができる。アフィン変換は、あるシーケンスの1つの画像からそのシーケンスの次の画像への、マッチされる特徴の間で生じ得る回転、並進、拡大縮小、および歪を取り込むことが可能なパラメータを有する線形変換である。
【0077】
1つのオプションは、各対のパッチに関する最良の登録を識別するために、CPU12によってルーチンを実行することである。上で引用したLucasとKanadeの記事に記載されている技法など、任意の数のよく知られている技法を実施して、この機能を行うことができる。この技法は、1対のパッチの一方と、その対の他方のパッチの伸縮バージョンとの見た目の最小差を与える最良の変換を見出すために、反復最適化を行う。
【0078】
パッチ登録のための第2のオプションは、画像全体に関する大域的な登録を決定するというものである。この手法は、単一画像伸縮または歪を使用して、画像シーケンスのパッチ対のすべてまたはほとんどをマッチさせることができると想定する。そのような大域的な登録は、シーケンスの1つの画像内の特徴点の空間的位置と、シーケンスの後続画像内の対応する伸縮された位置との差を最小にする推定値に基づく変換でよい。次いで、大域的な解を、パッチを登録するために各個のパッチ対に適用することができる。
【0079】
第3のオプションは、最初の2つのオプションを組み合わせるものである。この手法では、CPU12は、各個のパッチ対それぞれに関して最良のものとして決定された登録変換の特定の1つを洗練するための初期化として、大域的な解を実施する。
【0080】
登録変換に関する上述したオプションの1つの実行後、CPU12は、画像I
0,I
1,...,I
tのシーケンスの2つの連続する画像それぞれから1つずつ、識別された対応する画素パッチを有し、1対のパッチの一方における各画素が他方のパッチにおける対応する画素と同じビットのシーンを示すように、それらのパッチの一方が歪曲される。次いで、CPU12は、ステップ214で
図3Aのルーチンの実行によって決定されるように、それぞれのマッチされたパッチの成分画素を解析して、成分画素が属するタイプCトークンを識別することによって、1対の各パッチに対応するタイプCトークンを識別することができる。
【0081】
上述したように、画像をマッチさせるための最良の特徴は、典型的には、複数の物質領域の交点に存在する。したがって、おそらく、解析される領域内に多くの境界が存在する。境界の存在は、マッチングプロセスでのエラーを引き起こすことがある。
【0082】
マッチされた特徴を表すタイプCトークンの識別におけるエラーを最小にするために、CPU12は、例えば、よく知られているように、ガウスぼかしフィルタとそれに続く前進差分演算子など単純な勾配フィルタを用いて局所勾配を決定するように動作させることができる。このとき、CPU12は、予め選択されたしきい値を超える勾配の大きさを有するすべての画素を無視することができる。あるいは、CPU12は、最大量の画素(例えば10画素)よりも多くの画素を有するタイプCトークンのみを処理することによって、または、トークン決定のために最小シードサイズ(例えば、3×3シード最小値)を超えるシードサイズを使用するタイプCトークンを識別することによって、高勾配領域を避けることができる。
【0083】
パッチ登録技法に加えて、CPU12は、ヒストグラムベースの対応付け技法(ステップ218)またはスペクトル比ベースの対応付け技法(ステップ220)を選択的に実行して、トークン対応付けを識別することができる。
【0084】
図5は、本発明の例示的実施形態による、トークン対応付け技法を選択するためのルーチンに関する流れ図である。ステップ300で、CPU12は、画像シーケンス内の2つの画像I
t、I
t+1それぞれに関して、タイプCトークンT
t、T
t+1を出力する。ステップ302で、CPU12は、各トークンセットのサブセット、すなわちトークンセットT
tからのサブセットAと、トークンセットT
t+1からのサブセットBとを選択する。サブセットは、トークンセットT
t、T
t+1を計算するために使用される連続する画像の対応する領域(識別された対応付け点によって示される)にわたって広がるタイプCトークンを含む。
【0085】
ステップ304で、CPU12は、各サブセットAおよびBの平均強度を計算するように動作し、次いでステップ306に進む。ステップ306で、CPU12は、サブセットに関して、計算された平均強度を比較する。決定ブロック308で、CPU12は、比較ステップが、2つのトークンサブセットAとBの間で同様の平均強度を示すかどうか判定する。
【0086】
「はい」の場合、CPU12は、ヒストグラムベースの対応付け技法に進む(
図4のステップ218)。CPU12は、マッチ結果に関して、サブセットAおよびBに関するヒストグラムベースの対応付け技法を行う。
【0087】
「いいえ」である場合、CPU12は、スペクトル比ベースの対応付け技法に進む(
図4のステップ220)。CPU12は、マッチ結果に関して、サブセットAおよびBに関するスペクトル比ベースの対応付け技法を行う。
【0088】
ステップ310で、CPU12は、ヒストグラムベースの技法またはスペクトル比ベースの技法の実行によって得られたマッチ結果に関するマッチ品質を決定する。品質が、許容レベルを満たすまたは超える場合、CPU12は、決定ブロック312に進む。品質が許容レベルを満たさない場合、決定ブロック312に進む前に、デフォルトの技法、例えばパッチ登録技法をCPU12によって実行することができる。
【0089】
決定ブロック312で、CPU12は、画像の対I
t、I
t+1すべてがスキャンされたかどうかを判定する。
【0090】
「いいえ」の場合、CPU12は、ステップ302に戻り、別の1組の対応付け点を表す別の1対のトークンサブセットを解析のために選択する。
【0091】
「はい」の場合、CPU12は、トークン対応付けを出力する(
図4でのステップ222)。
【0092】
本発明の例示的実施形態によれば、ヒストグラムベースのトークン対応付け技法(
図4のステップ218)は、対応するパッチ間の色変換に基づく。上述したように、2つのトークンサブセットAとBの間で同様の平均強度が存在することを比較ステップ(ステップ306)が示す場合、CPU12によって実行するためにヒストグラムベースの技法が選択される。このシナリオは、例えば、画像I
t内の物質の集合体が画像I
t+1内で同様の照明を有する場合に見られる。
【0093】
点対応付けの判定と同様に、2つのパッチがシーンの同一の特徴を示すと仮定すると、2つのパッチ間の生じ得る差は、照明、露出、およびカメラ白色バランスの差によって表現することができる。そのような場合、単純な色変換は、以下の式によって表現することができる。
【数1】
【0094】
上の数学的な式では、c
1およびc
2によって表される色は、マッチされた1対の各パッチから1つずつの、(R,G,B)色ベクトルとして表された、(それぞれの画像ファイル18内に画素として記憶されている)測定された色である。Tは、c
2およびc
1からの色をマップするための3×3変換行列である。最も単純な場合には、Tは、以下のような対角行列である。
【数2】
【0095】
上の行列式と等価な式は、以下の3つの式によって表現することができる。
【数3】
【0096】
1対の各パッチの色を検査するようにCPU12を動作させて主要変換を見つけることによって、行列Tに関する1組の値を決定することができ、ここで、主要変換は、第2のパッチ内の色のできるだけ多くが第1のパッチ内の色に近くなるようにし、また、第1のパッチ内の色のできるだけ多くが、第1のパッチの各色それぞれに近い第2のパッチからの変換された色を有するようにする。
【0097】
本発明の例示的実施形態では、主要変換を決定するために既知のRANSAC技法を実施することができる。例えば、Martin A. Fischer and Robert C. Bolles,「Random Sample Consensus:A Paradigm for Model Fitting with Application to Image Analysis and Automated Cartography」,Comm. of the ACM 24:381395(1981年6月)を参照されたい。
【0098】
本発明のさらなる特徴によれば、変換は、画像シーケンスに示されるシーンの記録の状況に基づいて制限することができる。例えば、空間的に離れているが、時間的には近い記録された2つの画像の場合、シーン内の表面および光源のスペクトル特性は、比較的一定であると期待することができる。それに従って、行列Tは、以下のように制限することができる。指定されたεに関して、
【数4】
【0099】
この場合、この制限は、変換行列Tが単純なスカラー倍に近いことを指定する。すなわち、パッチの色の全体的な明度は、画像毎に大幅に変わる可能性があるが、例えば、カラーバンドR、G、およびBに関する相対的な大きさは、同様のままであるはずである。さらに、互いに近接する複数の対に関する変換の間に連続性または平滑性を課すことによって、1対のパッチの間の変換を正則化することができる。
【0100】
変換行列Tが決定された後、CPU12は、それぞれ画像I
t、I
t+1内の1対のパッチ間の色対応付けを見出すことができる。画像I
t内の第1のパッチの画素を含む各タイプCトークンに関して、CPU12は、マッチされた対の第2のパッチからの成分画素を有する後続画像I
t+1内の対応するタイプCトークンを位置特定することができ、以下同様である。境界によって引き起こされることがあるエラーを最小にするために、パッチ登録技法に関して上述した境界を回避するための方法を実施することができる。
【0101】
ステップ306の実行が、2つのトークンサブセットAとBの間で同様の平均強度がないことを示す場合、CPU12は、トークン対応付けを位置特定するためにスペクトル比ベースの対応付け技法を選択する(
図4のステップ220)。そのような状況は、一般に、2つの画像が空間的には近いが、時間的には離れている場合に生じる。その状況では、画像I
t、I
t+1内の物質は、同一であり得るが、共通のシーンのすべてまたは一部にわたる照明スペクトルは、例えば陰影の変化により画像毎に大幅に異なることがある。
【0102】
Friedhoff特許の根本の教示は、画像が2つの成分、すなわち物質成分と照明成分を備えることである。照明は、周囲照明と、入射または直接照明とを備える。したがって、CPU12は、入射または直接光源と周囲光源との相互作用によって引き起こされるスペクトルシフトの認識によって、物質アスペクトと照明束とを区別するように動作させることができる。入射光源と周囲光源に関するスペクトルは互いに異なることがある。Friedhoff特許によって教示されるように、陰影によって引き起こされるスペクトルシフト、すなわち入射光源の強度の減少は、画像内に示されるシーン内に存在する異なる物質にわたって実質的に不変となる。
【0103】
Friedhoff特許の教示に従って、スペクトルシフト情報は、光源比、または入射光源と周囲光源との相互作用によって生成される特性スペクトル比によって表される。スペクトル比は、画像内に示されるシーンの2つの領域間の色または強度の差に基づく比であり、そのような差は、異なる物質、照明変化、またはそれら両方によってもたらされることがある。画像シーケンスに関するそのような特性スペクトル比または大域的なスペクトル比は、上述したように、各画像が空間的に近いが、共通のシーンのすべてまたは一部にわたる照明スペクトルが例えば陰影の変化によりシーケンスの各画像間で大幅に異なるような画像シーケンスの状況において使用することができる。
【0104】
周囲照明と入射照明との正規化された特性スペクトル比は、陰影がかかっているときと、あるレベルの入射照明で照明されたときとの表面の見た目の関係を制約する。正規化されたスペクトル比は、以下の式によって表現される。
【数5】
ここで、darkは、陰影内の物質の画素であり、brightは、同一物質の照明された画素である。
【0105】
本発明の1つの特徴によれば、スペクトル比情報は、スペクトル比ベースの対応付け技法でトークンをマッチさせるために使用される。例えば、画像シーケンスの第1の画像内の暗色トークンの集合体と、シーケンスの第2の画像からの暗色トークンの集合体との状況において、トークンの明色/暗色集合体に基づいて、正規化されたスペクトル比を計算して、画像シーケンスに関する特徴的な大域的なスペクトル比に対して解析することができる。
【0106】
2つの集合体(暗色および明色)によって表される物質の類似性の尺度を提供するマップは、大域的な正規化されたスペクトル比と、明色/暗色集合体から計算された正規化されたスペクトル比との二乗誤差である。この関係は以下のように表される。
【数6】
【0107】
マッピングMは、単一の色チャネル内部で明度の順序を保存すべきである。したがって、暗色集合体内のトークンが、最も暗いものから最も明るいものへ順序付けられる場合、暗色トークンiが明色トークンjにマップするとき、暗色トークンi+1は、明色トークンk(ここでk≧j)にマップしなければならない。スペクトル比情報に基づいて対応付けを提供するためにマップを生成するために、動的時間伸縮などの既知の技法を実施することができる。
【0108】
エラーマップを生成する際に使用するための大域的なスペクトル比は、例えば以下のように計算することができる。
− ユーザが、陰影領域内および照明領域内の同一物質を識別し、識別された領域からの画素色値の関数として特性スペクトル比を計算する。
− 例えば米国特許第7,672,530号明細書に開示されている自動技法など、特性スペクトル比を決定するための自動技法がCPU12によって実行される。
− 暗色および明色画素をサンプルし、それらのサンプルを使用して妥当な特性スペクトル比を計算するようにCPU12を動作させる。
− 暗色および明色画素をサンプルし、それらのサンプルをミーンシフトなどの技法で使用して特性スペクトル比を識別するようにCPU12を動作させる。
【0109】
いずれにせよ、ステップ216、218、および/または220の少なくとも1つのステップの実行後、CPU12は、トークン対応付け情報を出力する(ステップ222)。
【0110】
ステップ200に戻り、ユーザが密な技法を選択した場合、CPU12は、ステップ224に進む。ステップ224で、CPU12は、画像I
0,I
1,...,I
tのシーケンスに関する画像ファイル18をメモリ16から取得する。決定ブロック226で、CPU12は、同一シーンの複数の画像I
0,I
1,...,I
tが、ビデオシーケンスであるか、それとも同一シーンの複数のビューを示す1組の静止画像であるかどうかに関して検査する。
【0111】
複数の画像がビデオシーケンスからのものである場合、CPU12は、ステップ228に進む。決定ブロック228で、CPU12は、画像シーケンスが静止カメラによって記録されたかどうかを判定する。
【0112】
「はい」の場合、CPU12は、ステップ230に進む。ステップ230で、CPU12は、記録されたシーンを通って移動する物体などフォアグラウンドの物体を識別する。上述した粗い技法を、シーンに関する対応付け情報の発見と並行して、または独立した操作で実施して、フォアグラウンド物体に関する対応付け情報を決定することができる。次いで、CPU12は、ステップ232に進む。
【0113】
「いいえ」の場合、CPU12は、ステップ232に直接進む。ステップ232で、CPU12は、オプティカルフロー操作を実施する。例えば、ステップ210でCPU12によって実行されるような特徴追跡技法は、この例では、CPU12が、画像I
0,I
1,...,I
tのシーケンスに関して画像ファイル18から画像ファイル18への各画素の運動を追跡するように実施される。その結果、画素毎の密な対応付けが得られる(ステップ234)。
【0114】
決定ブロック226が、同一シーンの複数のビューを示す1組の静止画像を示す場合、CPU12は、決定ブロック236に進む。決定ブロック236で、CPU12は、画像の記録中のカメラの相対位置に関して、画像が較正されているかどうか判定する。
【0115】
「いいえ」の場合、CPU12は、ステップ238に進む。ステップ238で、CPU12は、位置のシーケンスの記録中のカメラの相対位置を推定し、次いでステップ240に進む。
【0116】
「はい」の場合、CPU12は、ステップ240に直接進む。ステップ240で、CPU12は、例えば、Fundamental Matrix(Q. T. Luong and and O. D. Faugeras,「The Fundamental Matrix,Theory,Algorithms,and Stability Analysis」,International Journal of Computer Vision,17(1),pp.43−75,1996参照)に基づく技法を実行することによって、修正された画像を生成するように動作する。
【0117】
ステップ242で、CPU12は、1つの画像の2つ以上のビューについて、ステレオマッチングに関する任意の既知の技法を実行することによって、修正された画像を使用して画素毎の密な対応付けを決定し、出力する(ステップ234)。
【0118】
ステップ200で述べたように、例えば3Dまたは深さ情報などの追加のデータをCPU12に入力することができる。既知のマッチングアルゴリズムは、3Dまたは深さ情報が利用可能であるときに使用して、ステップ234で密な対応付け出力を提供することができる。
【0119】
粗い対応付け技法の使用の場合と同様に、CPU12は、固有画像の生成で使用するために、画素毎の密な対応付けをタイプCトークンに相関させるように動作する(ステップ222)。1つのオプションは、
図3Aのルーチンに従って、画素の対応付けを、ステップ214の実行中にCPU12によって識別されるタイプCトークンと相関させることである。密な対応付けによって連係される成分画素を有するすべてのそのようなタイプCトークンが、マッチングトークンとしてマークされる。
【0120】
第2のオプションでは、CPU12は、ステップ214Aで、一括トークン化を実施する。
図3Aのルーチンによれば、各タイプCトークンは、画素のシードに隣接する画素から成長し、これらの画素はすべて同一画像内にある。ステップ214Aで、ルーチンは、画素毎の密な対応付けを使用するために調節されて、画像シーケンスの先行画像および後続画像内での対応する画素を含むようにトークンを成長させる。実際には、先行画像および後続画像は、密な対応付けに基づいて伸縮させることができ、それにより、それらの画像の画素は、シーケンスの参照画像に位置合わせされ、隣接する画素を、複数の画像にわたって同一の空間的位置に位置させることができる。
【0121】
ビデオの場合、連続する画像は、時間的に間隔が狭く、フレーム間での動きがほぼゼロであると仮定することができる。したがって、
図6に示されるように、トークンは、ビデオの画像にわたって、時間的に前または後に成長させることができる。
図6は、本発明の1つの特徴による一括トークン化技法を示す。
【0122】
ステップ222の完了後、CPUは、上述した空間スペクトル演算子/制約/ソルバモデルに従って、固有画像生成の実行中にトークン対応付けを利用する。CPU12は、ステップ244、246、および248で、それぞれ、アンカ制約、マルチ画像求解、および後処理技法の1つまたは複数を実行するように動作させることができる。
【0123】
ステップ244のアンカ制約技法が選択される場合、CPU12は、第2の画像内のトークンの物質反射率が第1の画像内の対応するトークンの物質反射率に制約されるという制約を実施するように動作する。
【0124】
アンカ制約の第1の実装形態では、
図7の固定アンカの例示で示されるような固定アンカが使用される。
図7に示されるように、固定アンカ手法では、固有画像の生成で使用するために固定アンカ値が計算または指定される(ステップ400)。アンカに関する固定値は、例えば以下のようないくつかの異なる方法に従って設定することができる。
1)第1の画像(I
0)に関して単独で求解し、決定された反射率を、(トークン対応付けによって)すべての後続画像に関する固定アンカとして使用する(400a)。
2)ユーザに、1つまたは複数のトークンの反射率を示す入力値を提供させ、次いで、これを使用して、(トークン対応付けによって)すべての後続画像をアンカする(400b)、または
3)1組の対応するアンカに関して画素値を解析し、例えば最大値、90パーセンタイル、中央値、または平均値など、その組の何らかの関数を得る(400c)。
【0125】
次いで、ステップ406、408で、CPU12によって、ステップ400a、400b、または400cの1つで設定された物質反射率に関する固定アンカ値400の関数として、対応するトークンシーケンスの対応するトークン402、404に関して、連続する画像I
t、I
t+1における求解が行われる。
【0126】
アンカ制約の第2の実装形態では、シーケンスの先行画像から計算された物質反射率に基づくアンカが、シーケンスの現行画像に関する求解において使用される。
図7に示されるように、先行画像I
t−1に関する求解からのアンカ410が、現行画像I
tでのトークン412に関する求解に使用される(ステップ414)。次いで、ステップ414の求解で計算された物質反射率が、次の画像I
t+1での対応するトークン418に関する求解に関してアンカ416として使用され、以下同様である。
【0127】
アンカ制約に関する第3の実装形態では、フィルタを通して更新されたアンカが使用される。
図7に示されるように、前のアンカ手法が実施される(ステップ410〜420)。さらに、シーケンスの各画像で、アンカの使用なしで求解(ステップ422)が行われる。例えば、上述したように、CPU12によって、同一物質制約を平滑または同一照明制約と共に実行することができる。時間にわたって制約の値を更新するために、(アンカ制約を用いた、および用いない)各計算の結果が、カルマンフィルタなどのフィルタに入力される(ステップ424)。フィルタベースの手法での目的は、各フレームを(前の求解からの値に結び付けるアンカを用いずに)別々に求解して、アンカすべきトークンの物質反射率値の独立した推定値を得ることである。これは、厳格でない様式で、時間にわたる画像間の結び付きを提供する。すなわち、対応するトークンの反射率は、画像シーケンスにわたって変化することができるが、原理的にゆっくりと変化する。
【0128】
図8は、本発明の1つの特徴に従って、
図4のルーチンに関連するマルチフレーム求解(
図4のステップ246)を実施するためのルーチンに関する流れ図である。マルチフレーム手法に関する1つのオプションでは、シーケンスの2つ以上の画像に関するタイプCトークンがすべて一度に求解される。例えば、同一物質反射率制約を、シーケンスの連続する画像I
t、I
t+1内での対応するトークン500、502に課すことができる(ステップ504)。
【0129】
第2のオプションでは、ステップ506で、ステップ214Aで行われるような一括トークン化がCPU12によって実行されて、連続する画像I
t、I
t+1に関して、マルチフレームの対応するトークンを提供する(ステップ508)。求解は、マルチフレームの対応するトークンに対して行うことができる(ステップ510)。求解は、例えば、同一または平滑照明制約、同一物質反射率制約、およびアンカ制約の組合せに基づくことがある。この目的は、様々な制約をまとめて適用し、求解ステップに進むことである。例えば連立一次方程式の最小二乗解として実施される求解ステップは、完全には適合しない制約を同時に最大限に満たすことによって、パワーを提供する。
【0130】
図9は、本発明の1つの特徴による、
図4のルーチンと共に使用するための後処理技法(
図4のステップ248)を実施するためのルーチンに関する流れ図である。後処理技法では、CPU12によって、シーケンスの各画像、例えば画像I
t、I
t+1に関して求解が別々に行われて、例えば、ステップ604、606でそれぞれ、画像I
tのトークン600に関して物質反射率R
tおよび照度L
tを決定し、画像I
t+1のトークン602に関して物質反射率R
t+1および照度L
t+1を決定する。
【0131】
独立した求解の実施後、CPU12は、後処理操作を行い、これは例えば、トークン600の反射率にトークン602の反射率をマッチさせるための変換を見出すこと(ステップ608)、およびトークン600に関する照明に対して、時間にわたって、トークン602に関して平滑な一貫性のある照明を施行することである(ステップ610)。それらの結果は、ステップ612で、シーケンスからの先行画像の対応するトークン600に関する求解に応じた、トークン602に関する反射率および照度の更新された求解として出力され、以下同様である。
【0132】
ステップ608で、CPU12は、R
t=TR
t+1となるように変換Tを決定し、ここで、Tは3×3の対角行列である。行列Tは大域的でよく、すなわち、対応するトークンのすべての対にわたって適用される平均でよく、または、Tは空間的に変えることができ、各トークン対の位置でTを記録し、画像の残りにブレンドする。空間的に変化するTの場合、ブレンドは、滑らかに、または、対応する縁部が反射率画像内に存在するときにはTでの縁部が許容されるような様式で行うことができる。さらに、空間的に変化するバージョンのTでは、この行列は、画像空間内でぼかすことができ、それにより滑らかに変化する。ガウスぼかしを、指定されたσで実施することができ、または代替形態として、バイラテラルフィルタなどエッジ保存ぼかしフィルタを使用することができる。
【0133】
ステップ610で、CPU12は、画像から画像への照明平滑性を施行するように動作することができる。なぜなら、照明は、ゆっくりと空間的に変化する傾向があり、これはまた時間的にも施行することができるからである。
【0134】
以上の明細書において、本発明を、その特定の例示的実施形態および例を参照して説明してきた。しかし、添付の特許請求の範囲に記載する本発明のより広範な精神および範囲から逸脱することなく、様々な修正および変更をそれらに加えることができることは明らかであろう。したがって、明細書および図面は、限定的な意味ではなく例示的なものとみなすべきである。