(57)【特許請求の範囲】
【請求項１】
被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定し、
前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させることを特徴とする処理装置。
【請求項２】
前記光源条件は、少なくとも前記被写体に光を照射する光源の位置に関する情報を含むことを特徴とする請求項１に記載の処理装置。
【請求項３】
前記被写体に光を照射する光源の位置に対応する輝度情報の変化に基づいて、前記被写体の面法線を算出する算出部を更に有することを特徴とする請求項１または２に記載の処理装置。
【請求項４】
前記処理装置は、前記光軸と、前記被写体と前記被写体に光を照射する光源とを結ぶ線と、がなす角度が第１の閾値より大きくなるように、前記光源条件を決定することを特徴とする請求項１から３のいずれか１項に記載の処理装置。
【請求項５】
前記処理装置は、前記角度を前記第１の閾値より大きくすることができない場合、ユーザーに警告することを特徴とする請求項４に記載の処理装置。
【請求項６】
前記処理装置は、前記角度を前記第１の閾値より大きくすることができない場合、ユーザーに前記撮像光学系の移動を促すことを特徴とする請求項４に記載の処理装置。
【請求項７】
前記処理装置は、前記被写体を撮像した複数の画像において、輝度値が所定値より小さい陰画素の数が第２の閾値より大きい場合に、前記陰画素の数が少なくなるように、前記被写体に光を照射する光源の位置を再決定することを特徴とする請求項１から６のいずれか１項に記載の処理装置。
【請求項８】
被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定し、
前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させることを特徴とする処理装置と、
前記被写体に光を照射する光源の位置に対応する輝度情報の変化に基づいて、前記被写体の面法線を算出する算出部と、を有することを特徴とする処理システム。
【請求項９】
それぞれ位置が異なる３つ以上の光源を備える光源部を更に有することを特徴とする請求項８に記載の処理システム。
【請求項１０】
撮像光学系を備える撮像部と、
それぞれが少なくとも３つの光源を備え、前記撮像光学系の光軸からの距離が異なる複数の光源群と、
被写体距離に基づいて、前記被写体に光を照射する光源群を決定する撮像制御部と、を有し、
前記撮像制御部は、前記被写体距離が長くなるほど決定される光源の位置が前記撮像光学系の光軸から離れるように、前記被写体に光を照射する光源群を決定することを特徴とする撮像装置。
【請求項１１】
前記撮像制御部は、前記被写体距離と撮影画角に基づいて、前記被写体に光を照射する光源のガイドナンバーを変更することを特徴とする請求項１０に記載の撮像装置。
【請求項１２】
前記被写体距離を算出する距離算出部を更に有することを特徴とする請求項１０または１１に記載の撮像装置。
【請求項１３】
前記距離算出部は、前記撮像光学系のフォーカスレンズの位置から前記被写体距離を算出することを特徴とする請求項１２に記載の撮像装置。
【請求項１４】
前記撮像部は、互いに視差を有する視差画像を取得し、
前記距離算出部は、前記視差画像から被写体距離を算出することを特徴とする請求項１２に記載の撮像装置。
【請求項１５】
前記撮像部は、前記撮像光学系の瞳のうちそれぞれ異なる領域を通過し、互いに異なる画素に導かれる複数の光束を光電変換する撮像素子を備えることを特徴とする請求項１４に記載の撮像装置。
【請求項１６】
前記撮像部は、撮像光学系の瞳のうちそれぞれ異なる領域からの光束を光電変換する複数の画素対を備える撮像素子と、前記画素対ごとに設けられたマイクロレンズと、を有することを特徴とする請求項１４に記載の撮像装置。
【請求項１７】
被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定するステップと、
前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させるステップと、
を有することを特徴とする処理方法。
【請求項１８】
請求項１７に記載の処理方法をコンピュータに実行させるためのプログラム。
【請求項１９】
請求項１８に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
被写体に関するより多くの物理情報を取得しておくことで、撮像後の画像処理において、物理モデルに基づく画像生成を行うことができる。例えば、被写体の見えを変更した画像を生成することが可能となる。被写体の見えは、被写体の形状情報、被写体の反射率情報、光源情報等で決定される。光源から出た光が被写体によって反射された反射光の物理的な振る舞いは局所的な面法線に依存するため、形状情報としては３次元形状ではなく被写体の面法線を用いることが特に有効である。被写体の面法線を取得する方法として、例えば、レーザ光を用いた三角測量や２眼ステレオなどの方法で取得された距離情報から求めた三次元形状を面法線情報に変換する方法が知られている。しかしながら、このような方法では装置は複雑になり、取得された面法線の精度は不十分である。
【０００３】
そこで、特許文献１や非特許文献１では、被写体の面法線を直接取得する方法として照度差ステレオ法を開示している。照度差ステレオ法は、被写体の面法線と被写体から光源への方向に基づく被写体の反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性から面法線を算出する方法である。被写体の反射特性は、例えば、ランバートの余弦則に従うランバート反射モデルを用いて近似することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１２２１５８号公報
【非特許文献】
【０００５】
【非特許文献１】松下康之、“照度差ステレオ”、情報処理学会研究報告、Ｖｏｌ． ２０１１−ＣＶＩＭ−１７７、Ｎｏ．２９、ｐｐ．１−１２、２０１１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
デジタルカメラなどの撮像装置において照度差ステレオ法により被写体の面法線を取得する際、それぞれ異なる位置に配置された複数の光源からの光を被写体に照射する必要がある。光源の位置が固定されている場合、被写体が遠くなるほど、撮像装置が備える撮像光学系の光軸と光源から被写体への光がなす角度（以下、照射角度という）が小さくなる。複数の光源位置での輝度変化から被写体の面法線を決定する照度差ステレオ法では、照射角度が小さくなると輝度変化が低下し、撮像装置内でのノイズの影響が強くなる。その結果、算出される面法線にばらつきが生じる。
【０００７】
このような課題に鑑みて、本発明は、高精度に被写体の面法線を算出可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一側面としての処理装置は、被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定し、前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させることを特徴とする。
【０００９】
また、本発明の他の発明としての処理システムは、被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定し、前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させることを特徴とする処理装置と、前記被写体に光を照射する光源の位置に対応する輝度情報の変化に基づいて、前記被写体の面法線を算出する算出部と、を有することを特徴とする。
【００１０】
また、本発明の他の発明としての撮像装置は、撮像光学系を備える撮像部と、それぞれが少なくとも３つの光源を備え、前記撮像光学系の光軸からの距離が異なる複数の光源群と、被写体距離に基づいて、前記被写体に光を照射する光源群を決定する撮像制御部と、を有し、前記撮像制御部は、前記被写体距離が長くなるほど決定される光源の位置が前記撮像光学系の光軸から離れるように、前記被写体に光を照射する光源群を決定することを特徴とする。
【００１１】
また、本発明の他の発明としての処理方法は、被写体距離が長くなるほど、被写体に光を照射するための光源の位置が、前記被写体を撮影するための撮像光学系の光軸から離れるように光源条件を決定するステップと、前記光源条件に基づいて、それぞれ異なる３以上の位置からの光が順次照射される前記被写体を撮像させるステップと、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、高精度に被写体の面法線を算出可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】実施例１の撮像装置の外観図である。
【図２Ａ】実施例１の撮像装置のブロック図である。
【図２Ｂ】処理システムを示す図である。
【図３】実施例１の面法線算出処理を示すフローチャートである。
【図４】撮像素子の受光部と撮像光学系の瞳との関係図である。
【図５】撮像部の模式図である。
【図６】撮像の他の例を示す図である。
【図７】実施例２の面法線算出処理を示すフローチャートである。
【図８】実施例３の法線情報取得システムの外観図である。
【図９】Ｔｏｒｒａｎｃｅ−Ｓｐａｒｒｏｗモデルの説明図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
【００１５】
照度差ステレオ法は、被写体の面法線と被写体から光源への方向に基づく被写体の反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性から面法線を算出する方法である。反射特性は、所定の面法線と光源の位置が与えられたときに反射率が一意に定まらない場合、ランバートの余弦則に従うランバート反射モデルで近似すればよい。また、鏡面反射成分は、図９に示されるように、光源ベクトルｓと視線方向ベクトルｖの２等分線と、面法線ｎのなす角αに依存する。したがって、反射特性は、視線方向に基づく特性としてもよい。また、輝度情報は、光源が点灯している場合と消灯している場合のそれぞれの被写体を撮像し、これらの差分をとることで環境光等の光源以外の光源による影響を除いてもよい。
【００１６】
以下、ランバート反射モデルで反射特性を仮定した場合について説明する。反射光の輝度値をｉ、物体のランバート拡散反射率をρｄ、入射光の強さをＥ、物体から光源への方向（光源方向）を示す単位ベクトル(光源ベクトル)をｓ、物体の単位面法線ベクトルをｎとすると、輝度ｉはランバートの余弦則から以下の式（１）で示される。
0006671915.tif 000002
【００１７】
異なるＭ個（Ｍ≧３）の光源ベクトルの各成分をｓ１、ｓ２、・・・、ｓＭ、光源ベクトルの各成分ごとの輝度値をｉ１、ｉ２、・・・ｉＭとすると、式（１）は以下の式（２）で示される。
0006671915.tif 000003
【００１８】
式（２）の左辺はＭ行１列の輝度ベクトル、右辺の［ｓ１Ｔ、・・・ｓＭＴ］はＭ行３列の光源方向を示す入射光行列Ｓ、ｎは３行１列の単位面法線ベクトルである。Ｍ＝３の場合は、入射光行列Ｓの逆行列Ｓ−１を用いて、Ｅρｄｎは以下の式（３）で示される。
0006671915.tif 000004
【００１９】
式（３）の左辺のベクトルのノルムが入射光の強さＥとランバート拡散反射率ρｄの積であり、正規化したベクトルが物体の面法線ベクトルとして算出される。すなわち、入射光の強さＥとランバート拡散反射率ρｄは積の形でのみ条件式に現れるので、Ｅρｄを１つの変数とみなすと、式（３）は単位面法線ベクトルｎの２自由度と合わせて未知の３変数を決定する連立方程式とみなせる。したがって、少なくとも３つの光源を用いて輝度情報を取得することで、各変数を決定することができる。なお、入射光行列Ｓが正則行列でない場合は逆行列が存在しないため、入射光行列Ｓが正則行列となるように入射光行列Ｓの各成分ｓ１〜ｓ３を選択する必要がある。すなわち、成分ｓ３を成分ｓ１，ｓ２に対して線形独立に選択することが望ましい。
【００２０】
また、Ｍ＞３の場合は求める未知変数より多い条件式が得られるので、任意に選択した３つの条件式からＭ＝３の場合と同様の方法で単位面法線ベクトルｎを算出すればよい。４つ以上の条件式を用いる場合は、入射光行列Ｓが正則行列ではなくなるため、例えば、Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ疑似逆行列を使って近似解を算出すればよい。また、フィッティング手法や最適化手法によって単位面法線ベクトルｎを算出してもよい。
【００２１】
被写体の反射特性をランバート反射モデルとは異なるモデルで仮定した場合は、条件式が単位面法線ベクトルｎの各成分に対する線形方程式と異なる場合がある。その場合、未知変数以上の条件式が得られれば、フィッティング手法や最適化手法を用いることができる。
【００２２】
また、Ｍ＞３の場合には３以上Ｍ−１以下の複数の条件式が得られるため、単位面法線ベクトルｎの複数の解の候補を求めることができる。この場合、さらに別の条件を用いて複数の解の候補から解を選択すればよい。例えば、単位面法線ベクトルｎの連続性を条件として用いることができる。単位面法線ｎを撮像装置の１画素ごとに算出する場合、画素（ｘ、ｙ）での面法線をｎ（ｘ、ｙ）として、ｎ（ｘ−１、ｙ）が既知であれば以下の式（４）で示される評価関数が最小となる解を選択すればよい。
0006671915.tif 000005
【００２３】
また、ｎ（ｘ＋１、ｙ）やｎ（ｘ、ｙ±１）も既知であれば、以下の式（５）が最小となる解を選択すればよい。
0006671915.tif 000006
【００２４】
既知の面法線がなく、全画素位置で面法線の不定性があるとすれば、以下の式（６）で示される式（５）の全画素での総和が最小となるように解を選択してもよい。
0006671915.tif 000007
【００２５】
なお、最近傍以外の画素での面法線を用いたり、注目する画素位置からの距離に応じて重みづけした評価関数を用いてもよい。
【００２６】
また、別の条件として、任意の光源位置での輝度情報を用いてもよい。ランバート反射モデルに代表される拡散反射モデルでは、単位面法線ベクトルと光源方向ベクトルが近いほど反射光の輝度が大きくなる。よって、複数の光源方向での輝度値のうち最も輝度値が大きくなる光源方向ベクトルに近い解を選択することで、単位面法線ベクトルを決定することができる。
【００２７】
また、鏡面反射モデルでは、光源ベクトルをｓ、物体からカメラへの方向の単位ベクトル(カメラの視線ベクトル)をｖとすると、以下の式（７）が成り立つ。
0006671915.tif 000008
【００２８】
式（７）に示されるように、光源方向ベクトルｓとカメラの視線ベクトルｖが既知であれば単位面法線ベクトルｎを算出することができる。表面に粗さがある場合、鏡面反射も出射角の広がりを持つが、平滑面として求めた解の付近に広がるため、複数の解の候補うち最も平滑面に対する解に近い候補を選択すればよい。
【００２９】
また、複数の解の候補の平均によって真の解を決定してもよい。
【実施例１】
【００３０】
図１は本実施例の撮像装置１の外観図であり、図２Ａは撮像装置１のブロック図である。撮像装置１は、撮像部１００、光源部２００、およびレリーズボタン３００を備える。撮像部１００は、撮像光学系１０１を備える。光源部２００は、撮像光学系１０１の光軸からの距離が異なる３つの光源群２００ａ，２００ｂ，２００ｃを備える。各光源群はそれぞれ、撮像光学系１０１の光軸を中心とした同心円状に等間隔で配置された８個の光源２０１から構成される。なお、照度差ステレオ法を実施する際に必要な光源は少なくとも３個であるため、各光源群は３個以上の光源を備えていればよい。また、本実施例では光源部２００は３つの光源群２００ａ，２００ｂ，２００ｃを備え、各光源群は複数の光源を撮像光学系１０１の光軸を中心とした同心円状に等間隔で配置しているが、本発明はこれらに限定されるものではない。また、本実施例では、光源部２００は、撮像装置１に内蔵されているが、着脱可能に取り付けられる構成としてもよい。レリーズボタン３００は、撮影やオートフォーカスを作動させるためのボタンである。
【００３１】
撮像光学系１０１は、絞り１０１ａを備え、被写体からの光を撮像素子１０２上に結像させる。撮像素子１０２はＣＣＤセンサやＣＭＯＳセンサ等の光電変換素子により構成され、被写体を撮像する。撮像素子１０２の光電変換によって生成されたアナログ電気信号は、Ａ／Ｄコンバータ１０３でデジタル信号に変換されて画像処理部１０４に入力される。画像処理部１０４は、デジタル信号に対して一般的に行われる画像処理と併せて、被写体の法線情報を算出する。画像処理部１０４は、被写体距離を算出する被写体距離算出部１０４ａ、被写体距離に基づいて光源条件を決定する撮像制御部１０４ｂ、および法線情報を算出する法線算出部１０４ｃを備える。画像処理部１０４で処理された出力画像は、半導体メモリや光ディスク等の画像記録部１０９に保存される。また、出力画像を、表示部１０５に表示してもよい。なお、本実施例では、被写体距離算出部１０４ａ、撮像制御部１０４ｂ、および法線算出部１０４は、撮像装置１に内蔵されているが、後述するように撮像装置１とは別に構成されてもよい。
【００３２】
情報入力部１０８は、ユーザーによって選択された撮影条件（絞り値、露出時間、および焦点距離など）をシステムコントローラ１１０に供給する。画像取得部１０７は、システムコントローラ１１０からの情報に基づいて、ユーザーが選択した所望の撮影条件で画像を取得する。照射光源制御部１０６は、システムコントローラ１１０からの指示に応じて光源部２００の発光状態を制御する。なお、撮像光学系１０１は、撮像装置１に内蔵される構成であってもよいし、一眼レフカメラのように撮像装置１に着脱可能に取り付けられる構成であってもよい。
【００３３】
図３は、本実施例の面法線算出処理を示すフローチャートである。本実施例の面法線算出処理は、システムコントローラ１１０および撮像制御部１０４ｂにより、コンピュータプログラムとしての処理プログラムに従って実行される。なお、処理プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録してもよい。
【００３４】
ステップＳ１０１では、ユーザーによって選択された撮影条件が情報入力部１０８からシステムコントローラ１１０に供給される。
【００３５】
ステップＳ１０２では、レリーズボタン３００が半押しされたかどうかを判定する。半押しされた場合は撮像装置１は撮影準備状態となり、オートフォーカスや以下のステップで必要なプリ撮影を行い、不図示のメモリやＤＲＡＭにプリ撮影画像を保存する。
【００３６】
ステップＳ１０３では、被写体距離算出部１０４ａは、被写体距離を算出する。本実施例では、被写体距離は、ステップＳ１０２においてオートフォーカス、またはユーザーが手動でフォーカスを行った際のフォーカスレンズの位置から算出される。また、異なる視点から撮影した複数の視差画像を取得するステレオ法によって被写体距離を算出してもよい。ステレオ法では、取得した複数の視差画像中の被写体の対応点の視差量と撮影した各視点の位置情報および光学系の焦点距離から三角測量によって奥行きを算出する。被写体距離は、被写体の対応点で算出された奥行きの平均値としてもよいし、被写体の特定の点における奥行きとしてもよい。視差画像から被写体距離を算出する場合、複数の視差画像の撮像部は、図４に示されるように、撮像光学系の瞳のうちそれぞれ異なる領域を通過した複数の光束を撮像素子の互いに異なる受光部（画素）に導いて光電変換を行う撮像系を有する。
【００３７】
図４は、撮像素子の受光部と撮像光学系の瞳との関係図である。撮像素子には、受光部であるＧ１画素とＧ２画素の対（画素対）が複数配列されている。複数のＧ１画素をまとめてＧ１画素群といい、複数のＧ２画素をまとめてＧ２画素群という。対のＧ１画素とＧ２画素は、共通の（すなわち、画素対ごとに１つずつ設けられた）マイクロレンズＭＬを介して撮像光学系の射出瞳ＥＸＰと共役な関係を有する。また、マイクロレンズＭＬと受光部との間には、カラーフィルタＣＦが設けられている。
【００３８】
図５は、図４のマイクロレンズＭＬの代わりに、射出瞳ＥＸＰの位置に薄肉レンズがあると仮定した場合の撮像系の模式図である。Ｇ１画素は射出瞳ＥＸＰのうちＰ１領域を通過した光束を受光し、Ｇ２画素は射出瞳ＥＸＰのうちＰ２領域を通過した光束を受光する。撮像している物点ＯＳＰには必ずしも物体が存在している必要はなく、物点ＯＳＰを通った光束は通過する瞳内での領域（位置）に応じてＧ１画素またはＧ２画素に入射する。瞳内の互いに異なる領域を光束が通過することは、物点ＯＳＰからの入射光が角度（視差）によって分離されることに相当する。すなわち、マイクロレンズＭＬごとに設けられたＧ１画素およびＧ２画素のうち、Ｇ１画素からの出力信号を用いて生成された画像とＧ２画素からの出力信号を用いて生成された画像とが、互いに視差を有する複数（ここでは一対）の視差画像となる。以下の説明において、瞳内の互いに異なる領域を通過した光束を互いに異なる受光部（画素）により受光することを瞳分割という。
【００３９】
図４および図５において、射出瞳ＥＸＰの位置がずれる等して、上述した共役関係が完全ではなくなったりＰ１領域とＰ２領域とが部分的にオーバーラップしたりしても、得られた複数の画像を視差画像として扱うことができる。
【００４０】
図６は、撮像の他の例を示す図である。図６に示されるように、１つの撮像装置に複数の撮像光学系ＯＳｊ（ｊ＝１，２）を設けることで視差画像を取得することができる。また、複数のカメラを用いて同一被写体を撮像する場合も視差画像が得られる。
【００４１】
ステップＳ１０４では、撮像制御部１０４ｂは、ステップＳ１０３で算出された被写体距離に基づいて、照度差ステレオ法を実施する光源条件を決定する。本実施例では、被写体距離に対して被写体に光を照射する光源群をあらかじめ設定し、算出された被写体距離に基づいて照度差ステレオ法を実施する光源群を決定する。光源の位置が固定されている場合、被写体が遠くなるほど、撮像光学系の光軸と光源方向がなす角（照射角度）が小さくなる。複数の光源位置での輝度変化から被写体の面法線を算出する照度差ステレオ法では、照射角度が小さくなると輝度変化が低下し、ノイズの影響が強くなる。ノイズの影響が強くなると、算出される面法線にばらつきが生じる。ばらついた面法線を用いて被写体の見えを変更する画像処理を行うと、元の画像はノイズが増幅されてしまう。そのため、照射角度が閾値（第１の閾値）より大きくなる光源条件を満たす光源群を選択することが好ましい。例えば、照射角度θが式（８）を満たすように光源群を選択する。
0006671915.tif 000009
【００４２】
式（８）において、σｎは撮像装置のノイズの標準偏差、ｃは定数である。なお、照射角度に対する閾値は、式（８）とは異なる条件を用いて設定してもよい。
【００４３】
照射角度を閾値より大きくすることができない場合、被写体距離を短くする（照射角度を大きくする）必要がある。その場合、ユーザーに対して移動するように（被写体に近づくように）、表示部１０５に表示してもよい。また、表示部１０５を介して、算出される面法線に誤差が生じることをユーザーに警告してもよい。
【００４４】
また、照射角度が大きくなると被写体に陰の領域が多くなり、面法線の算出が困難になる。そのため、照射角度を制限する閾値を設けてもよい。
【００４５】
さらに、算出された被写体距離に基づいて、被写体に光を照射する光源のガイドナンバーを決定してもよい。照度差ステレオ法では、取得した輝度情報が被写体に光を照射する光源のみに由来すると仮定して面法線を取得しているため、被写体以外の物体が光源からの光を照射された際に生じる反射光を被写体が照射された場合、算出される面法線に誤差が生じてしまう。したがって、被写体または撮影画角範囲内のみに光が当たるように光源の広がり角を調整することが好ましい。つまり、光源のガイドナンバーを調整することに相当する。さらに光源からの光が被写体に照射されるように、光源の光軸（照射方向）を調整してもよい。
【００４６】
ステップＳ１０５では、レリーズボタン３００が全押しされたかどうかを判定する。全押しされた場合は、撮像装置１は撮影状態となり、本撮影を開始する。
【００４７】
ステップＳ１０６では、システムコントローラ１１０は、照射光源制御部１０６を介して、選択された光源群の光源からの光を被写体に順次照射させ、画像取得部１０７を介して撮像部１００に被写体を撮像させる。
【００４８】
ステップＳ１０７では、法線算出部１０４ｂは、照度差ステレオ法を用いて、光源位置による輝度情報の変化を用いて、面法線を算出する。
【００４９】
なお、本実施例では撮像装置１内で被写体の面法線を算出しているが、図２Ｂに示されるように、撮像装置１とは異なる処理システム２を用いて被写体の面法線を算出してもよい。図２Ｂに示される処理システム２は、処理装置５００、被写体距離算出部５０１、光源部５０２、撮像部５０３、および法線算出部５０４を備える。処理システム２を用いて面法線を算出する場合、まず、処理装置５００が、被写体距離算出部５０１によって算出された被写体距離に対応する光源条件を決定し、決定された光源条件に応じて光源部５０２を点灯させる。次に、処理装置５００は、光源部５０２からの光が照射された被写体を撮像部５０３に撮像させ、撮像部５０３により撮像された画像を用いて法線算出部５０４に法線情報を算出させる。なお、処理システムは少なくとも処理装置５００と法線算出部５０４を備えていればよく、処理装置５００が法線算出部５０４を備えていてもよい。また、被写体距離算出部５０１および光源部５０２はそれぞれ、個別の装置であってもよいし、撮像部５０３に搭載されていてもよい。
【００５０】
以上説明したように、本実施例では、被写体距離に基づいて、適切な光源条件で被写体の面法線を算出することができる。
【実施例２】
【００５１】
本実施例も実施例１と同様の撮像装置を用いて面法線を算出する。本実施例では、光源を照射した際、被写体に陰の領域が多い場合に、光源条件を変えて再撮影することで、適切な光源条件で面法線を取得する。
【００５２】
図７は、本実施例の面法線算出処理を示すフローチャートである。本実施例の面法線算出処理は、システムコントローラ１１０および撮像制御部１０４ｂにより、コンピュータプログラムとしての画像処理プログラムに従って実行される。
【００５３】
ステップＳ２０１〜Ｓ２０６およびＳ２０９はそれぞれ、実施例１のステップＳ１０１〜Ｓ１０７と同様であるため、詳細な説明は省略する。
【００５４】
ステップＳ２０７では、撮像制御部１０４ｂは、被写体の陰の領域となる、すなわち輝度値が所定値より小さい陰画素の数を算出し、その数が閾値（第２の閾値）より大きいかどうかを判断する。被写体の陰の領域は照射角度が大きくなると多くなり、面法線の算出が困難になる。特に、被写体距離が近いと照射角度が大きくなり、陰領域が多くなってしまう。被写体の陰の領域は被写体の形状によって変化するため、陰画素の数が大きくなる場合、照射角度が小さくなる光源群を選択することが好ましい。本実施例では、複数の光源位置で撮影した複数の画像における画素のうち、少なくとも１つの画素の輝度値が所定値より小さい画素を陰画素とする。また、照度差ステレオ法では、最低３個の輝度情報が必要であることから、複数の画像における画素のうち輝度値が閾値より大きい画素が２つ以下の画素を陰画素としてもよい。検出された陰画素の数が閾値（第２の閾値）より大きい場合はステップＳ２０８に進み、小さい場合はステップＳ２０９に進む。なお、被写体の全領域に対する被写体の陰の領域の割合に基づいて、ステップＳ２０８とステップＳ２０９のいずれかに進むかを判断してもよい。
【００５５】
ステップＳ２０８では、ステップＳ２０４において設定した光源群よりも照射角度が小さい光源群を再選択して再撮影を行う。例えば、ステップＳ２０４で光源群２００ｂが選択されていた場合、光源群２００ｂよりも照射角度が小さい光源群２００ａを再選択して再撮影を行う。ただし、再選択した光源群の照射角度がステップＳ２０４で設定した閾値より小さくならないようにする。なお、再撮影前後における陰画素の数の減少量が閾値より小さい場合や、照射角度が小さくなる光源群がない場合には、再撮影は行わずにステップＳ２０９に移行してよい。
【００５６】
以上説明したように、本実施例では、被写体距離に基づいて、適切な光源条件で被写体の面法線を算出することができる。特に、本実施例では、被写体に陰の領域が多い場合に、被写体距離に基づいて適切な光源条件を再決定した後、再撮影することでより適切な光源条件で被写体の面法線を取得することができる。
【実施例３】
【００５７】
実施例１および２では、光源を内蔵した撮像装置について説明したが、本実施例では撮像装置と光源ユニットから構成される法線情報取得システムについて説明する。
【００５８】
図８は、法線情報取得システムの外観図である。法線情報取得システムは、被写体３０３を撮像する撮像装置３０１、および複数の光源ユニット３０２を備える。本実施例の撮像装置３０１は、実施例１の撮像装置１と同様の構成であるが、光源部として照度差ステレオ法用の複数の光源を内蔵する必要はない。光源ユニット３０２は、撮像装置３０１と有線または無線で接続され、撮像装置３０１からの情報に基づいて制御できることが好ましい。また、光源ユニット３０２は、撮像装置３０１から被写体までの被写体距離から決定された光源条件に基づいて自動で光源位置を変えることができる機構を備えることが好ましい。なお、光源ユニット３０２が自動で光源位置を変更できない場合や光源ユニット３０２が撮像装置３０１により制御できない場合には、撮像装置３０１の表示部に表示される光源条件になるようにユーザーに光源ユニット３０２を調整させるようにしてもよい。
【００５９】
また、実施例１と同じように、撮像装置３０１は、撮像光学系の光軸からの距離が異なる複数の光源ユニット群を備え、光源ユニット群が複数の光源を備えていてもよい。
【００６０】
照度差ステレオ法では少なくとも３光源で撮像した画像が必要であるが、本実施例のように光源位置が可変な光源ユニットを使用する場合、少なくとも一つの光源ユニットがあればよい。ただし、光源ユニットの位置を変えることで、最低３つの光源位置で撮影を行う必要がある。
【００６１】
以上説明したように、本実施例では、被写体距離に基づいて、適切な光源条件で被写体の面法線を算出することができる。本実施例の面法線算出処理については、実施例１または２のフローと同様であるため詳細な説明は省略する。
【００６２】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００６３】
５００  処理装置
【図１】
0006671915.tif 000010
【図２Ａ】
0006671915.tif 000011
【図２Ｂ】
0006671915.tif 000012
【図３】
0006671915.tif 000013
【図４】
0006671915.tif 000014
【図５】
0006671915.tif 000015
【図６】
0006671915.tif 000016
【図７】
0006671915.tif 000017
【図８】
0006671915.tif 000018
【図９】
0006671915.tif 000019