(58)【調査した分野】(Int.Cl.,DB名)
ユーザーによる前記画像上の領域の選択を受け付け、前記選択された領域を、前記光源からの光を鏡面反射する領域を表す前記画像上の鏡面反射領域として設定する鏡面反射領域設定部を更に含み、
前記測定点選択部は、前記鏡面反射領域から前記第1の点及び前記第2の点を選択する請求項1記載の光源方向推定装置。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0016】
<本発明の実施の形態の原理>
本発明の実施の形態では、カメラに入射した物体面からの鏡面反射光の偏光方向が分かれば、光源が存在する平面(入射面)が求まることを利用して、光源方向を推定する。
【0017】
具体的には、空間を撮影した画像と当該空間の偏光情報を取得し、空間を撮影した画像から鏡面反射光がカメラに入射している点(測定点)を少なくとも2点選択し、偏光情報を用いて、各測定点に対して入射面(カメラから測定点までを結んだ直線と、測定点から光源までを結んだ直線を含んだ平面)をそれぞれ算出する。そして、これら2つの入射面同士の交線に基づいて、光源方向を推定する。
【0018】
なお、2つの入射面が平行になってしまう場合(面の法線方向が一致する場合)には、入射面同士の交線が求まらないため、別の2点を再度選択する。
【0019】
これにより、特定の物体の立体形状情報を予め用意することなく、容易に光源方向の推定を行うことができる。また、空間に存在する物体の立体形状が未知であっても、当該空間の光源方向を推定することができる。
【0020】
ここで、測定点の選択方法として、以下の2つの方法がある。
【0021】
1つ目の方法では、偏光度が高い領域から任意の2点を選択する。これは、鏡面反射光が拡散反射光に対して偏光度が高くなることを利用したものである。
【0022】
2つ目の方法では、表面に微細な凹凸がある領域(アスファルトなどの領域)を予め画像上に設定しておき、その領域内から任意の2点を選択する。これは、アスファルトなどの微細な凹凸がある面は、面の傾きや光源の位置によらずに、カメラに鏡面反射光が入射するという性質があることを利用したものである。
【0023】
また、入射面を算出する際には、カメラの視線方向(
図5の点線)と、鏡面反射光の偏光方向に垂直な方向とで定まる、入射面の法線方向を求める。なお、カメラの視線方向は、カメラと測定点に撮影されている物体の実空間上の位置(鏡面反射光の反射位置)を結ぶ直線である。
【0024】
<光源方向推定装置100の構成>
以下、本発明を適用した光源方向推定装置100の概略構成を示した
図1を参照し、本発明の実施の形態の構成を説明する。
【0025】
(光源方向推定装置100)
光源方向推定装置100は、所定の空間を撮影した画像から取得した偏光情報を用いて、当該空間における光源方向を推定する。
【0026】
ここで、物体面からの反射光は、鏡面反射光と拡散反射光に大別される。拡散反射光は、光源方向や観測位置によらず観測される光である。
【0027】
一方、鏡面反射光は、入射角(光源方向と反射面の法線方向がなす角)と、反射角(観測位置と反射面の法線方向がなす角)とが等しい場合に観測される光である。本発明の実施の形態に係る光源方向推定装置100は、このような鏡面反射光の特性を利用して、光源方向を推定する。
【0028】
光源方向推定装置100で推定された光源方向に関する情報(推定結果)は、外部の装置などに出力される。
【0029】
光源方向の推定結果は、外部の装置において、様々な目的に利用することができる。例えば、光源方向は、外部の画像処理装置に入力され、画像に映っている影の領域を検出する用途に用いられる。また、夜間の車両のヘッドライトが映っている画像から、車両が存在する方向や車両の進行方向を推定することにも用いられる。
【0030】
なお、本発明の実施の形態に係る光源方向推定装置100は、空間における光源方向を推定するものであり、その推定結果の用途については特に限定しない。
【0031】
図1は、本実施の形態における光源方向推定装置100の構成を示した図である。
【0032】
図1に示すように、本実施の形態における光源方向推定装置100は、撮影部10、偏光情報取得部20、記憶部30、情報処理部40、及び出力部52から構成される。
【0033】
(撮影部10)
撮影部10は、カメラなどの撮影装置であり、所定の空間を撮影する。
【0034】
撮影部10は、光学系、CCD素子またはCMOS素子から構成される。
【0035】
本実施の形態における撮影部10は、空間を撮影したデータをA/D変換し、そのデジタル画像を、偏光情報取得部20に出力する。
【0036】
撮影部10は、特定の偏光方向の光のみを透過する偏光フィルタを備え、偏光フィルタが透過する偏光方向が少なくとも3種類以上になるように、空間を撮影する。
【0037】
具体的には、撮影部10は、偏光フィルタを回転させて、透過させる光の偏光方向を切換えながら、都度、撮影を行うことで、異なる3種類以上の偏光方向の画像(以下、偏光画像)を撮影する。
【0038】
本実施の形態における撮影部10は、偏光フィルタを備え、それを回転させることで、4種類の偏光方向(0deg、45deg、90deg、135deg)の偏光画像を撮影する。すなわち、撮影部は、1シーン毎に4枚の偏光画像を撮影し、それらの偏光画像をシーン毎に対応付けて偏光情報取得部20に出力する。
【0039】
なお、偏光画像の撮影方法はこれに限らない。例えば、画素毎に異なる偏光方向の偏光フィルタをモザイク状に配置した偏光カメラを用いて、偏光方向が互いに異なる3種類以上の偏光画像を撮影してもよい。このように、撮影部10の構成や撮影方法は特に限定されず、偏光方向が互いに異なる3種類以上の偏光画像を撮影できるものであればよい。
【0040】
また、本実施の形態における光源方向推定装置100は、偏光フィルタを備えた撮影部10のみを用いているが、これに限らない。例えば、偏光フィルタを備えた撮影装置に加えて、偏光フィルタを備えない撮影装置を設け、当該撮影装置を用いて、監視空間を、偏光フィルタを備えた撮影装置と略同じ画角・略同時に撮影するようにしてもよい。
【0041】
(偏光情報取得部20)
偏光情報取得部20は、撮影部10から受け取った、同じシーンを撮影した3種類以上の偏光画像を用いて、画素毎に、当該シーンにおける偏光情報を取得する。具体的には、本実施の形態における偏光情報取得部20は、偏光情報として、偏光度及び偏光方向を算出する。また、偏光情報取得部20は、各偏光画像の輝度値の平均値(平均輝度値)から、そのシーンにおける平均輝度値画像を生成する。以下、この画像を入力画像とする。
【0042】
本実施の形態における偏光情報取得部20は、画素毎に算出した偏光情報を、入力画像の各画素に対応付けて、後述する情報処理部40に出力する。
【0043】
また、本実施の形態では、光源方向推定装置100の撮影部10で撮影した偏光画像を用いて、偏光情報取得部20にて偏光情報の算出と入力画像の生成を行ったが、これに限らない。例えば、予め、光源方向推定装置100の外部で入力画像の画素毎に偏光情報を予め対応付けておき、それを光源方向推定装置100の記憶部30に記憶しておく。そして、後述する情報処理部40は、記憶部30からそれらの情報を取得して各種の処理を行うようにしてもよい。
【0044】
また、平均輝度値画像を入力画像とするのではなく、前述したように、偏光フィルタを備えない撮影装置で撮影した画像について、当該画像の画素毎に、同一のシーンを撮影した偏光画像から算出した偏光情報を対応付けて、情報処理部40に出力するようにしてもよい。
【0045】
(偏光度・偏光方向・平均輝度値の算出)
次に、偏光度・偏光方向・平均輝度値の算出について説明する。
図2は、偏光フィルタの偏光方向と偏光画像の輝度値との関係を示した図である。
【0046】
偏光した光の輝度値は、偏光方向に対して正弦波として変化する。すなわち、偏光方向m[deg]の光が透過する偏光フィルタを介して撮影した場合の輝度値I
mは、以下の式で表される。
【0048】
偏光情報取得部20は、入力画像の画素毎に、最も強い輝度値を示す偏光方向の角度ρ(偏光角度ρ)を求め、それを当該画素の偏光方向とする。また、平均輝度値Mに対する正弦波の振幅Aの比率Dを偏光度とする。
【0049】
本実施の形態のように、4種類の偏光方向(0deg、45deg、90deg、135deg)の偏光画像から偏光情報を算出する場合、ある画素における偏光画像の輝度値をそれぞれI
0、I
45、I
90、I
135とすると、偏光角度ρ、偏光度D、平均輝度値Mは、以下の式で求められる。
【0051】
(記憶部30)
記憶部30は、ROM(Read Only Memory)、RAM(Random Access Memory)等の半導体メモリ、ハードディスクなどのメモリ装置で構成される。
【0052】
記憶部30は、光源方向推定装置100において、各処理を実行するのに必要なプログラムやパラメータなどの各種情報を記憶する。また、記憶部30は、光源方向推定装置100を構成する各部などからアクセス可能である。
【0053】
本実施の形態における記憶部30は、撮影部10の設置情報30Aを記憶する。設置情報30Aは、例えば、レンズ焦点距離、画角、解像度、俯角、設置高、などである。これらの設置情報30Aは、後述する情報処理部40の入射面算出手段46にて、入射面を算出する際に用いられる。
【0054】
(情報処理部40)
情報処理部40は、取得した入力画像に対応付けられた偏光情報に基づいて、空間における光源方向を推定する。
【0055】
本実施の形態における情報処理部40は、鏡面反射領域設定手段42、測定点選択手段44、入射面算出手段46、推定可否判定手段48、及び光源方向推定手段50から構成される。なお、鏡面反射領域設定手段42は、鏡面反射領域検出部及び鏡面反射領域設定部の一例である。
【0056】
(鏡面反射領域設定手段42)
鏡面反射領域設定手段42は、入力画像において、鏡面反射成分が優位に返ってきている領域を鏡面反射領域として設定する。
【0057】
本実施の形態における鏡面反射領域設定手段42は、入力画像の偏光情報を参照し、偏光度が所定値以上となる領域を鏡面反射領域として検出し、その鏡面反射領域を特定可能な情報を記憶部30に記憶する。
【0058】
この鏡面反射領域の検出方法は、「拡散反射光に対して偏光度が高くなる」という鏡面反射光の特性を利用したものである。このため、検出に用いる所定値は、一般的な拡散反射光の偏光度の最大値よりも大きい値が設定されていればよい。
【0059】
なお、一般的に、拡散反射光の偏光度は、「物体面の屈折率がほぼ一定である」と仮定すると、撮影部の視線方向と物体面の法線がなす天頂角が90degのときに最大値を取る。このため、予め、一般的な物体の屈折率を用いて、天頂角が90degのときの偏光度を算出しておき、その値を所定値として設定すればよい。例えば、物体面の屈折率を1.5とした場合は、所定値(拡散反射光の偏光度の最大値)は、約0.4となる。
【0060】
また、これに限らず、鏡面反射領域設定手段42は、以下のように、ユーザーの入力に基づいて、入力画像から鏡面反射領域を設定するようにしてもよい。
【0061】
具体的には、ユーザーが操作する端末(ユーザー端末)の表示装置(図示しない)に入力画像を表示し、ユーザーがその入力画像から、アスファルトなどの表面に微細な凹凸のある領域を、入力装置(図示しない)を用いて選択する。そして、鏡面反射領域設定手段42は、ユーザーによって選択された領域を、鏡面反射領域として記憶部30に記憶する。
【0062】
ここで、物体面からの鏡面反射光について説明する。
図3は、物体面からの鏡面反射光について説明する図である。
【0063】
図3(a)は、平面62における鏡面反射の様子を示した図である。平面62においては、光源60の位置と撮影部10の位置が
図3(a)に示すような位置関係(入射角=反射角)であるときに、撮影部10に鏡面反射光64が入射する。ただし、入射角は、平面62の法線方向と光源60からの光の入射方向とのなす角であり、反射角は、平面62の法線方向と鏡面反射光64の反射方向とのなす角である。
【0064】
図3(b)、(c)、(d)は、微細な凹凸のある物体面66における鏡面反射の様子を示した図である。
図3(b)、(c)、(d)に示すように、光源60の位置によらず、微細な凹凸のある物体面66で反射した鏡面反射光64が撮影部10に入射している。
【0065】
このように、アスファルトなどの表面に微細な凹凸のある物体面66は、撮影部10に鏡面反射光64が入射する面が必ず存在する。微細な凹凸のある物体面66では、ある面からの鏡面反射光64だけでなく、その周辺の面からの拡散反射光も撮影部10に入射するが、鏡面反射光は拡散反射光に対して偏光度が高い傾向があるため、鏡面反射光成分の方が優位となり、当該物体面66の偏光方向として測定される。したがって、アスファルトなどの表面に微細な凹凸のある面は、光源方向によらず常に鏡面反射光が測定できる面であるため、この面が撮影されている入力画像の領域を鏡面反射領域として設定する。
【0066】
なお、上記例においては、入力画像(平均輝度値画像)上でアスファルトなどの表面に微細な凹凸のある領域を選択したが、これに限らず、前述した偏光フィルタを備えない撮影装置で撮影した画像上で選択するようにしてもよい。
【0067】
(測定点選択手段44)
測定点選択手段44は、記憶部30を参照し、入力画像における鏡面反射領域内から、少なくとも2点以上を選択し、それらを測定点として設定する。
【0068】
本実施の形態では、測定点選択手段44は、入力画像の鏡面反射領域内からランダムに2点を選択する。
【0069】
また、測定点選択手段44は、推定可否判定手段48から、「推定不可」の信号を受け取ると、再度、入力画像の鏡面反射領域内からランダムに2点を選択する。
【0070】
なお、本実施の形態では、測定点選択手段44が自動で測定点を選択したが、これに限らない。例えば、測定点選択手段44は、ユーザー端末の表示部(図示省略)に、鏡面反射領域を重畳させた入力画像を表示し、ユーザーにその鏡面反射領域から2点を選択させてもよい。そして、測定点選択手段44は、その選択結果を受け取って、それらを測定点として設定するようにしてもよい。この際、ユーザーが鏡面反射領域外の2点を選択できないようにしたり、そのような選択結果を測定点として設定できないようにしてもよい。
【0071】
また、本実施の形態では、測定点を画素単位で設定したが、これに限らない。例えば、鏡面反射領域から複数の画素の集合(領域)を少なくとも2ヶ所選択し、それらを測定領域として設定してもよい。
【0072】
また、本実施の形態では、測定点選択手段44は、推定可否判定手段48から、「推定不可」の信号を受け取った場合に、自動的に別の2点を選択するようにしたが、これに限らず、ユーザー端末などに対して、「測定点を再選択する旨」を通知するようにしてもよい。
【0073】
(入射面算出手段46)
入射面算出手段46は、測定点選択手段44によって選択された少なくとも2点の測定点について、当該測定点(画素)に対応する偏光方向や画素位置、および、記憶部30から取得した撮影部10の設置情報30Aを用いて、入射面をそれぞれ算出する。
【0074】
具体的には、入射面算出手段46は、以下のように入射面の法線方向を算出する。
図4は、入射面の算出方法を説明するための図である。
【0075】
各測定点の画素位置の座標を(x
I,y
I)、当該測定点の偏光角度をρとする。
【0076】
入射面は、撮像面70上における測定点の画素位置から、当該測定点に撮影されている物体の実空間上の位置(物体位置)までを結んだ直線と、当該物体位置における反射面の法線とを含む平面のことであり、鏡面反射光の偏光方向は入射面に垂直となる性質がある。そこで、撮像面70上における測定点の画素位置(x
I,y
I)を、鏡面反射光の測定点とし、当該測定点の画素位置から実空間上の物体位置までを結んだ直線方向
→p
1と、鏡面反射光の偏光方向に垂直な方向
→p
2を求め、
→p
1と
→p
2の両方を含む面を入射面とする。なお、当該測定点の画素位置から実空間上の物体位置までを結んだ直線は、当該測定点の画素位置へ入射した入射光を表す直線である。
【0077】
レンズ焦点から撮像素子のある画素位置(x
I,y
I)へ向かうベクトル
→p
1が、以下の式で求められる。なお、fはレンズ焦点距離である。
【0079】
この
→p
1は、画素(x
I,y
I)に撮影されている実空間上の物体位置から撮影部10へ入射した入射光の方向に一致する。
【0080】
次に、偏光角度ρである反射光が鏡面反射光である場合、入射面は鏡面反射光の偏光方向に垂直になる。鏡面反射光の偏光方向に垂直なベクトル
→p
2は以下の式で表すことができる。
【0082】
入射面は「実空間上の物体位置から撮影部10へ向かう方向ベクトル
→p
1」と「偏光方向に垂直なベクトル
→p
2」の両方を含むため、入射面の法線方向
→n
1は、
→p
1と
→p
2の両方に垂直になる。すなわち、
→p
1と
→p
2の外積を求めれば、入射面の法線方向
→n
1が以下の式によって得られる。
【0084】
なお、前述したように、本発明の実施の形態においては、測定点を点ではなく領域(測定領域)で設定してもよい。この場合、測定領域の重心座標を(x
I,y
I)とし、測定領域内の平均偏光角度をρとして、前述した式により、入射面の法線方向を算出すればよい。
【0085】
(推定可否判定手段48)
推定可否判定手段48は、入射面算出手段46が算出した複数の入射面について、交線が求められるか否かを判定する。
【0086】
具体的には、推定可否判定手段48は、算出した入射面のそれぞれの法線方向が異なるか否かを判定する。
【0087】
法線方向が一致する場合は、入射面の交線を算出することができない。すなわち、後述する光源方向推定手段50によって光源方向が推定できない。
【0088】
推定可否判定手段48は、法線方向が一致すると判定すると、「推定不可」の信号を測定点選択手段44に出力し、測定点選択手段44にて再度、測定点を選択させる。
【0089】
また、推定可否判定手段48は、法線方向が異なると判定すると、「推定可能」の信号を光源方向推定手段50に出力し、光源方向の推定処理を実行させる。
【0090】
(光源方向推定手段50)
光源方向推定手段50は、推定可否判定手段48から「推定可能」の信号を受けとると、その2つの入射面の交線方向を算出し、その方向を光源方向と推定する。
【0091】
図5は、入射面の交線を説明するための図である。
【0092】
具体的には、光源方向推定手段50は、以下のように光源方向を推定する。まず、光源の位置を
→x
lightとし、2つの入射面の法線方向をそれぞれ
→n
11、
→n
12とする。光源はどちらの入射面上にも存在するため、
→x
lightは法線方向
→n
11、
→n
12と直交する。このため、以下の式が成立する。なお、法線方向
→n
11、
→n
12が、第1入射面及び第2入射面の法線方向の一例である。
【0094】
これらを連立させて解いて、光源の位置とレンズ焦点位置を結ぶ直線の式を光源方向として推定する。なお、このように光源方向を推定すると、レンズ焦点位置を中心として、実際の光源位置と対称な方向も光源方向として求まるため、光源方向の候補が2つ存在する(
図6)。この場合、以下のような前提条件を用いて正しい光源方向に絞り込む。例えば、太陽などの環境光となる光源方向を推定する場合、光源は撮影部10よりも空間的に高い位置に存在するという前提条件を用いることで、撮影部10の下方向に向かう光源方向の候補を除外する。
【0095】
光源方向の推定方法は前述した方法に限らない。例えば、測定点を3つ以上選択し、それぞれの入射面の法線方向を求め、それらのすべての法線方向に対して垂直な直線を最小二乗法などによって求めてもよい。この場合も、前述の前提条件を用いて正しい光源方向に絞り込めばよい。
【0096】
(出力部52)
出力部52は、情報処理部40にて推定した光源方向の推定結果を外部の装置に出力する。外部の装置では、光源方向の推定結果を用いて、様々な処理を行う。例えば、光源方向の推定結果を、人物を検出する画像監視装置に出力した場合は、以下のような用途がある。
【0097】
画像監視装置は、背景差分処理等によって、変化領域を抽出する。このとき、人物とその影が1つの変化領域として抽出されてしまうことがあり、人物が黒い服を着用していた場合は、低輝度であるという特徴だけでは、人物と影を分離できない。このままでは変化領域が人の標準的な大きさや形状でないため、人物を精度良く検出することができない。
【0098】
しかし、本発明の実施の形態に係る光源方向推定装置100にて推定した光源方向に基づいて、光源方向と反対方向に出現するという影の特徴を利用すれば、変化領域から影を精度良く除去して、人物を精度良く検出することが可能となる。
【0099】
<光源方向推定装置100の動作>
以下、
図7に示したフローチャートを参照しつつ、本発明を適用した光源方向推定装置100による全体処理の動作を説明する。
【0100】
図7に示すフローチャートは、ユーザーの指示等によって開始される。
【0101】
最初に、撮影部10は、偏光フィルタが透過する偏光方向が少なくとも3種類以上になるように、空間を撮影し、同じシーンを撮影した3種類以上の偏光画像を取得する(ステップS1)。
【0102】
そして、偏光情報取得部20は、撮影部10から受け取った、同じシーンを撮影した3種類以上の偏光画像を用いて、画素毎に、当該シーンにおける偏光情報を取得する(ステップS2)。具体的には、本実施の形態における偏光情報取得部20は、偏光情報として、偏光度及び偏光方向を算出する。また、偏光情報取得部20は、各偏光画像の輝度値の平均値(平均輝度値)から、そのシーンにおける平均輝度値画像を生成し、入力画像とする。
【0103】
そして、鏡面反射領域設定手段42は、入力画像において、鏡面反射成分が優位に返ってきている領域を鏡面反射領域として設定する(ステップS3)。そして、測定点選択手段44は、入力画像における鏡面反射領域内から、少なくとも2点以上を選択し、それらを測定点として設定する(ステップS4)。
【0104】
次に、入射面算出手段46は、測定点選択手段44によって選択された少なくとも2点の測定点について、当該測定点(画素)に対応する偏光方向や画素位置、および、記憶部30から取得した撮影部10の設置情報30Aを用いて、入射面をそれぞれ算出する(ステップS5)。
【0105】
そして、推定可否判定手段48は、入射面算出手段46が算出した複数の入射面について、交線が求められるか否かを判定する(ステップS6)。具体的には、推定可否判定手段48は、算出した入射面のそれぞれの法線方向が異なるか否かを判定する。
【0106】
光源方向推定手段50は、推定可否判定手段48から「推定可能」の信号を受けとったか否かを判定する(ステップS7)。推定可否判定手段48から「推定不可」の信号を受けとった場合には、上記ステップS4へ戻る。一方、推定可否判定手段48から「推定可能」の信号を受けとった場合には、上記ステップS5で算出された2つの入射面の交線方向を算出し、その方向を光源方向と推定する(ステップS8)。
【0107】
出力部52は、上記ステップS8にて推定した光源方向の推定結果を外部の装置に出力し(ステップS9)、上記ステップS1へ戻る。
【0108】
以上説明してきたように、本発明の実施の形態に係る光源方向推定装置は、撮影部の設置情報および撮影した画像の偏光情報に基づいて、光源からの光による鏡面反射の反射位置に対応する、画像上の複数の点を選択し、複数の点の各々についての入射面と入射面との交線に基づいて、光源方向を推定することにより、空間に存在する物体の立体形状が未知であっても、当該空間の光源方向を容易に推定できる。すなわち、特定の物体の立体形状情報を予め用意することなく、容易に光源方向の推定を行うことができる。
【0109】
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。当業者は本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【0110】
例えば、上記の実施の形態では、偏光方向に直交する方向と撮影部への入射光とを含む平面を、入射面として、入射面の法線方向を求め、入射面同士の交線を求める場合を例に説明したが、これに限定されるものではない。偏光方向と撮影部への入射光とを含む平面を、偏光面として求め、偏光面に直交し、かつ撮影部への入射光を含む平面を、入射面として求め、入射面同士の交線を求めるようにしてもよい。この場合には、偏光情報として、偏光面に関する情報を取得するようにしてもよい。