(57)【要約】【課題】付加的な撮像装置を搭載することなく、光源が撮像された光源画像を撮像し、光源情報を推定して、画像の高解像度化を実現する。【解決手段】広角画像撮像部１０１は広角画像を撮像可能な撮像装置１００１を用いて、被写体を自動的に連続して撮像する。撮像装置情報取得部１０２は撮像が行われたときにおける撮像装置１００１の状況を表す撮像装置情報を取得する。光源情報推定部１０３は撮像された広角画像と取得された撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定し、画像高解像度化部１０４は推定された光源情報を用いて、撮像された広角画像を高解像度化する。【選択図】図１
2008016918.tif 000002
【特許請求の範囲】
【請求項１】
広角画像を撮像可能な撮像装置を用いて、被写体を、自動的に連続して撮像する広角画像撮像部と、
前記広角画像撮像部によって撮像が行われたときにおける、前記撮像装置の状況を表す撮像装置情報を、取得する撮像装置情報取得部と、
前記広角画像撮像部によって撮像された広角画像と、前記撮像装置情報取得部によって取得された撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定する光源情報推定部と、
前記広角画像を、前記光源情報推定部によって推定された光源情報を用いて、高解像度化する画像高解像度化部とを備えた
ことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、
前記撮像装置情報取得部は、
前記撮像装置に搭載された角度センサの出力、および、前記広角画像撮像部が撮像した画像のうち、少なくともいずれか一方を用いて、前記撮像装置情報を取得するものである
ことを特徴とする画像処理装置。
【請求項３】
請求項１記載の画像処理装置において、
前記広角画像撮像部は、前記撮像装置の画素の露光時間を、領域毎に、異なる値に設定する
ことを特徴とする画像処理装置。
【請求項４】
請求項３記載の画像処理装置において、
前記広角画像撮像部は、前記撮像装置のレンズの周辺部に対応する領域において、画素の露光時間を、前記レンズの中心部に対応する領域よりも、短く設定する
ことを特徴とする画像処理装置。
【請求項５】
請求項１記載の画像処理装置において、
前記被写体の、表面の法線情報または３次元位置情報を、形状情報として取得する形状情報取得部を備え、
前記画像高解像度化部は、
前記形状情報取得部によって取得された形状情報を用いて、前記広角画像の高解像度化を行うものである
ことを特徴とする画像処理装置。
【請求項６】
請求項５記載の画像処理装置において、
前記画像高解像度化部は、前記広角画像を拡散反射成分と鏡面反射成分とに分離し、分離した拡散反射成分と鏡面反射成分とを、個別に、高解像化するものである
ことを特徴とする画像処理装置。
【請求項７】
請求項５記載の画像処理装置において、
前記画像高解像度化部は、前記広角画像をパラメータに分解し、分解したパラメータを、個別に、高解像化するものである
ことを特徴とする画像処理装置。
【請求項８】
請求項１記載の画像処理装置において、
前記画像高解像度化部は、高解像度化の拡大倍率を、画像の領域毎に、異なる値に設定する
ことを特徴とする画像処理装置。
【請求項９】
請求項８記載の画像処理装置において、
前記画像高解像度化部は、前記撮像装置のレンズの周辺部に対応する領域において、拡大倍率を、前記レンズの中心部に対応する領域よりも、高く設定する
ことを特徴とする画像処理装置。
【請求項１０】
請求項１記載の画像処理装置において、
前記撮像装置に対する光源環境が変化したか否かを判定する光源環境判定部を備え、
前記光源情報推定部は、光源環境が変化したと前記光源環境判定部によって判定されたとき、光源情報の推定を行う
ことを特徴とする画像処理装置。
【請求項１１】
請求項１０記載の画像処理装置において、
前記光源環境判定部は、
前記撮像装置に搭載された角度センサの出力から、前記撮像装置が移動したか否かを判定し、移動したとき、光源環境が変化したと判定する
ことを特徴とする画像処理装置。
【請求項１２】
請求項１０記載の画像処理装置において、
前記撮像環境判定部は、
前記広角画像撮像部が撮像した画像を用いて、前記撮像装置が移動したか否かを判定し、移動したとき、光源環境が変化したと判定する
ことを特徴とする画像処理装置。
【請求項１３】
請求項１記載の画像処理装置において、
前記光源情報推定部が光源情報を正確に推定しているか否かを判定する推定光源情報判定部を備え、
前記光源情報推定部は、光源情報を正確に推定していないと前記推定光源情報判定部によって判定されたとき、再度、光源情報の推定を行う
ことを特徴とする画像処理装置。
【請求項１４】
請求項１３記載の画像処理装置において、
前記推定光源情報判定部は、ＧＰＳ（Global Positioning System）センサの出力と時刻情報とを用いて、太陽光の方向または太陽の位置を推定し、推定した方向または位置を、前記光源情報推定部によって推定された光源情報と対比することによって、判定を行う
ことを特徴とする画像処理装置。
【請求項１５】
請求項１３記載の画像処理装置において、
前記推定光源情報判定部は、被写体の形状情報と、前記光源情報推定部が推定した光源情報とを用いて、前記被写体の画像を推定し、推定した画像を、前記広角画像撮像部によって撮像された画像と対比することによって、判定を行う
ことを特徴とする画像処理装置。
【請求項１６】
請求項１３記載の画像処理装置において、
前記推定光源情報判定部は、前記広角画像撮像部によって撮像された画像の色情報を、前記光源情報推定部によって推定された光源の色と対比することによって、判定を行う
ことを特徴とする画像処理装置。
【請求項１７】
画像を高解像度化する画像処理システムであって、
請求項１記載の広角画像撮像部および撮像装置情報取得部を有し、前記広角画像撮像部によって撮像された広角画像、および前記撮像装置情報取得部によって取得された撮像装置情報を送信する通信端末と、
請求項１記載の光源情報推定部および画像高解像度化部を有し、前記通信端末から送信された前記広角画像および前記撮像装置情報を受信し、前記広角画像を前記光源情報推定部および画像高解像度化部に与えるとともに、前記撮像装置情報を前記光源情報推定部に与えるサーバとを備え、
前記通信端末は、前記サーバに、光源情報の推定および画像の高解像度化の内容を指示する
ことを特徴とする画像処理システム。
【請求項１８】
広角画像を撮像可能な撮像装置を用いて、被写体を、自動的に連続して撮像する第１のステップと、
前記第１のステップにおいて撮像が行われたときにおける、前記撮像装置の状況を表す撮像装置情報を、取得する第２のステップと、
前記第１のステップにおいて撮像した広角画像と、前記第２のステップにおいて取得した撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定する第３のステップと、
前記広角画像を、前記第３のステップにおいて推定した光源情報を用いて、高解像度化する第４のステップとを備えた
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像撮像時の光源の位置、方向、輝度、スペクトル、色などの光源情報を推定する技術、および、推定した光源情報を用いて画像の高解像度化を行う技術に関するものである。
【背景技術】
【０００２】
カメラ付き携帯電話やデジタルカメラの普及に伴い、画像処理の重要度が高まってきている。このような画像処理として、例えばデジタルズームとして知られている画像の高解像度化や、Ｃｏｍｐｕｔｅｒ−Ｇｒａｐｈｉｃｓで作成された画像を重畳表示する拡張現実など、さまざまなものがある。
【０００３】
これらの画像処理は、画像撮像により撮像素子に記録された被写体の「見え」を基に処理が行なわれている。この物体の見えは、光源からの光が被写体表面で反射され、その反射光を撮像素子が受光することで得られる。
【０００４】
そのため、光源情報は画像処理において非常に重要である。つまり、光源情報を取得して、画像撮像や画像処理に利用することは非常に効果的である。例えば、特許文献１では、仮想物体を実世界に重畳表示させる際、実世界の光源環境を計測することで、仮想物体上に写り込む照射光による反射光や仮想物体により生成される影を付与する。
【０００５】
また、光源情報は、画像処理だけでなく、撮像行為を行う主体者である撮像者が撮像装置で画像を取得する際にも有益である。例えば、特許文献２では、光源位置を検出し、その情報を利用して、順光状態や逆光状態を撮像者に表示することによって、一般の人が特に専門的な知識をもっていない場合でも、光や影を生かした逆光（半逆光）のポートレート写真等を容易に撮像することを可能にしている。
【特許文献１】特開平１１−１７５７６２号公報
【特許文献２】特開平８−１６０５０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このような画像処理を実現するために、光源を撮像した画像、すなわち光源画像が必要である。光源画像は、
(1)被写体とは別方向を撮像し、かつ
(2)全天周に近い、広範囲な画像である
ことが望ましい。これは、以下の理由による。
【０００７】
(1)一般的な被写体、例えば人に対して、照明である街灯や室内照明は上方から照射されることが多い。また、被写体と同じ方向に光源がある場合、逆光状態となり、被写体が暗くなる可能性がある。そのため、撮像者は被写体と光源が同じ画像に入ることを避けたがる。
【０００８】
(2)光源は、撮像者にとって、どこに何個あるか未知。
【０００９】
このため、上述の特許文献１および特許文献２では、光源情報を取得するために、天頂方向に光軸を向け、魚眼レンズを搭載した撮像装置を利用している。
【００１０】
しかし、このように魚眼レンズを被写体とは別方向に向けて撮像するためには、被写体を撮像する撮像装置とは別の、第２の撮像装置が必要になる。これは、コストの面で大きな負担となってしまう。また特に、身に付けるカメラであるウェアラブルカメラやカメラ付き携帯電話では、小型化の要望が大きいため、撮像装置を現在よりも増やすことは、大きさの面でも大きな問題となる。
【００１１】
さらに、被写体を撮像する撮像装置と光源を撮像する撮像装置が異なるため、２つの撮像装置間での位置合わせ（キャリブレーション）が必要になってしまう。これは、光源情報を推定する上で、被写体と光源との位置関係が特に重要であることに起因する。すなわち、被写体と光源を別個の撮像装置で撮像した場合、これらの対応付けが必要になるが、この操作は非常に煩雑である。
【００１２】
前記の問題に鑑み、本発明は、例えばウェアラブルカメラなどの装置において、付加的な撮像装置を搭載することなく、光源が撮像された光源画像を撮像し、光源情報を推定して、画像の高解像度化を実現することを課題とする。
【課題を解決するための手段】
【００１３】
本発明は、画像処理装置および方法として、広角画像を撮像可能な撮像装置を用いて、被写体を自動的に連続して撮像し、撮像が行われたときにおける前記撮像装置の状況を表す撮像装置情報を取得し、撮像された広角画像と取得された撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定し、前記広角画像を、推定された光源情報を用いて、高解像度化するものである。
【００１４】
本発明によると、被写体を、広角画像を撮像可能な撮像装置を用いて、自動的に連続して撮像するので、撮像された広角画像には、被写体周囲の光源が映る可能性が高くなる。すなわち、被写体画像と併せて、光源画像を得ることができる。そして、撮像された広角画像と、撮像が行われたときの撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報が推定され、推定された光源情報を用いて、前記広角画像が高解像度化される。すなわち、被写体撮像用以外の付加的な撮像装置を搭載することなく、光源画像を取得し、画像の高解像度化を実現することが可能となる。
【発明の効果】
【００１５】
本発明によると、本来の目的である被写体撮像用以外の付加的な撮像装置を搭載することなく、被写体周囲の光源画像を撮像することができ、こうして撮像された光源画像から、光源情報を推定することができる。これにより、高倍率のデジタルズーム処理などの多彩な画像処理を実現することができる。
【発明を実施するための最良の形態】
【００１６】
本発明の第１態様では、広角画像を撮像可能な撮像装置を用いて、被写体を自動的に連続して撮像する広角画像撮像部と、前記広角画像撮像部によって撮像が行われたときにおける前記撮像装置の状況を表す撮像装置情報を取得する撮像装置情報取得部と、前記広角画像撮像部によって撮像された広角画像と、前記撮像装置情報取得部によって取得された撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定する光源情報推定部と、前記広角画像を、前記光源情報推定部によって推定された光源情報を用いて高解像度化する画像高解像度化部とを備えた画像処理装置を提供する。
【００１７】
本発明の第２態様では、前記撮像装置情報取得部は、前記撮像装置に搭載された角度センサの出力、および、前記広角画像撮像部が撮像した画像のうち、少なくともいずれか一方を用いて、前記撮像装置情報を取得するものである前記第１態様の画像処理装置を提供する。
【００１８】
本発明の第３態様では、前記広角画像撮像部は、前記撮像装置の画素の露光時間を領域毎に異なる値に設定する前記第１態様の画像処理装置を提供する。
【００１９】
本発明の第４態様では、前記広角画像撮像部は、前記撮像装置のレンズの周辺部に対応する領域において、画素の露光時間を、前記レンズの中心部に対応する領域よりも、短く設定する前記第３態様の画像処理装置を提供する。
【００２０】
本発明の第５態様では、前記被写体の、表面の法線情報または３次元位置情報を、形状情報として取得する形状情報取得部を備え、前記画像高解像度化部は、前記形状情報取得部によって取得された形状情報を用いて、前記広角画像の高解像度化を行うものである前記第１態様の画像処理装置を提供する。
【００２１】
本発明の第６態様では、前記画像高解像度化部は、前記広角画像を拡散反射成分と鏡面反射成分とに分離し、分離した拡散反射成分と鏡面反射成分とを個別に高解像化するものである前記第５態様の画像処理装置を提供する。
【００２２】
本発明の第７態様では、前記画像高解像度化部は、前記広角画像をパラメータに分解し、分解したパラメータを個別に高解像化するものである前記第５態様の画像処理装置を提供する。
【００２３】
本発明の第８態様では、前記画像高解像度化部は、高解像度化の拡大倍率を画像の領域毎に異なる値に設定する前記第１態様の画像処理装置を提供する。
【００２４】
本発明の第９態様では、前記画像高解像度化部は、前記撮像装置のレンズの周辺部に対応する領域において、拡大倍率を前記レンズの中心部に対応する領域よりも高く設定する前記第８態様の画像処理装置を提供する。
【００２５】
本発明の第１０態様では、前記撮像装置に対する光源環境が変化したか否かを判定する光源環境判定部を備え、前記光源情報推定部は、光源環境が変化したと前記光源環境判定部によって判定されたとき、光源情報の推定を行う前記第１態様の画像処理装置を提供する。
【００２６】
本発明の第１１態様では、前記光源環境判定部は、前記撮像装置に搭載された角度センサの出力から、前記撮像装置が移動したか否かを判定し、移動したとき、光源環境が変化したと判定する前記第１０態様の画像処理装置を提供する。
【００２７】
本発明の第１２態様では、前記撮像環境判定部は、前記広角画像撮像部が撮像した画像を用いて、前記撮像装置が移動したか否かを判定し、移動したとき、光源環境が変化したと判定する前記第１０態様の画像処理装置を提供する。
【００２８】
本発明の第１３態様では、前記光源情報推定部が光源情報を正確に推定しているか否かを判定する推定光源情報判定部を備え、前記光源情報推定部は、光源情報を正確に推定していないと前記推定光源情報判定部によって判定されたとき、再度、光源情報の推定を行う前記第１態様の画像処理装置を提供する。
【００２９】
本発明の第１４態様では、前記推定光源情報判定部は、ＧＰＳ（Global Positioning System）センサの出力と時刻情報とを用いて、太陽光の方向または太陽の位置を推定し、推定した方向または位置を、前記光源情報推定部によって推定された光源情報と対比することによって、判定を行う前記第１３態様の画像処理装置を提供する。
【００３０】
本発明の第１５態様では、前記推定光源情報判定部は、被写体の形状情報と、前記光源情報推定部が推定した光源情報とを用いて、前記被写体の画像を推定し、推定した画像を、前記広角画像撮像部によって撮像された画像と対比することによって、判定を行う前記第１３態様の画像処理装置を提供する。
【００３１】
本発明の第１６態様では、前記推定光源情報判定部は、前記広角画像撮像部によって撮像された画像の色情報を、前記光源情報推定部によって推定された光源の色と対比することによって、判定を行う前記第１３態様の画像処理装置を提供する。
【００３２】
本発明の第１７態様では、画像を高解像度化する画像処理システムとして、前記第１態様の広角画像撮像部および撮像装置情報取得部を有し、前記広角画像撮像部によって撮像された広角画像、および前記撮像装置情報取得部によって取得された撮像装置情報を送信する通信端末と、前記第１態様の光源情報推定部および画像高解像度化部を有し、前記通信端末から送信された前記広角画像および前記撮像装置情報を受信し、前記広角画像を前記光源情報推定部および画像高解像度化部に与えるとともに、前記撮像装置情報を前記光源情報推定部に与えるサーバとを備え、前記通信端末は、前記サーバに、光源情報の推定および画像の高解像度化の内容を指示するものを提供する。
【００３３】
本発明の第１８態様では、広角画像を撮像可能な撮像装置を用いて、被写体を、自動的に連続して撮像する第１のステップと、前記第１のステップにおいて撮像が行われたときにおける、前記撮像装置の状況を表す撮像装置情報を、取得する第２のステップと、前記第１のステップにおいて撮像した広角画像と、前記第２のステップにおいて取得した撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定する第３のステップと、前記広角画像を、前記第３のステップにおいて推定した光源情報を用いて、高解像度化する第４のステップとを備えた画像処理方法を提供する。
【００３４】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００３５】
（第１の実施形態）
図１は本発明の第１の実施形態に係る画像処理装置の構成を示すブロック図である。図１において、１０１は広角画像を撮像可能な撮像装置１００１を用いて、被写体を自動的に連続して撮像する広角画像撮像部、１０２は広角画像撮像部１０１によって撮像が行われたとき、撮像装置１００１の状況を表す撮像装置情報を取得する撮像装置情報取得部、１０３は広角画像撮像部１０１によって撮像された広角画像と撮像装置情報取得部１０２によって取得された撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定する光源情報推定部、１０４は広角画像撮像部１０１によって撮像された広角画像を、光源情報推定部１０３によって推定された光源情報を用いて、高解像度化する画像高解像度化部である。
【００３６】
なおここでは、広角画像撮像部１０１、撮像装置情報取得部１０２、光源情報推定部１０３および画像高解像度化部１０４は、例えば、ＣＰＵ１０２１によってプログラムを実行することによって、実現されるものとする。ただし、これらの機能の全部または一部を、ハードウェアによって実現するようにしてもかまわない。また、メモリ１０２２は、広角画像撮像部１０１によって撮像された撮像画像と、撮像装置情報取得部１０２によって取得された撮像装置情報を格納する。
【００３７】
図２は本実施形態に係る画像処理装置が搭載された機器としてのウェアラブルカメラの利用形態を示す模式図である。図２において、撮像行為を行う主体者である撮像者１００３は、ウェアラブルカメラ１０００を自分の肩に設置している。１０１７はウェアラブルカメラ１０００の撮像装置の光軸方向を示す。図２のように、本実施形態に係る画像処理装置は、ウェアラブルカメラなどに利用されることが有効である。
【００３８】
撮像装置１００１はＣＭＯＳやＣＣＤセンサ等によって構成されており、広角画像が撮像可能なように、例えば魚眼レンズや全周囲カメラ、あるいは焦点距離の短いレンズが搭載されている。また撮像装置１００１には、３軸の角度センサ１０２０が搭載されている。広角画像撮像部１０１は撮像装置１０００を用いて、被写体を自動的に連続して撮像する。すなわち本実施形態では、撮像者が撮像スイッチを押すなどの積極的な操作をすることなく、撮像が連続して実施される。このとき撮像された広角画像には、光源が含まれる可能性が高い。撮像された広角画像は、メモリ１０２２に格納される。
【００３９】
図３は撮像された広角画像を示す模式図である。図３において、撮像装置１００１の視野範囲１００４には、被写体１０１８と被写体１０１８を照射している光源１００５とが含まれる。すなわち、撮像装置１００１によって撮像された広角画像１００６には、光源画素１００７および被写体画像１０１９が映っている。このように、広角に画像を撮像することにより、光源１００５と被写体１０１８を同時に撮像することができる。なお、焦点距離の短いレンズを用いる場合、撮像者が気になっている画像全てを撮像することが望ましい。そのため、はっきりは見えないが物体の存在や動きが気になる視野の領域である誘導視野が撮像できるように、視野角１１０度以上のレンズを利用することが望ましい。
【００４０】
撮像装置情報取得部１０２は、広角画像撮像部１０１によって撮像が行われた際の、撮像装置１００１の状況を表す撮像装置情報を取得する。具体的には例えば、角度センサ１０２０の出力と撮像装置１００１の焦点距離情報とを、撮像装置情報として取得する。取得された撮像装置情報はメモリ１０２２に格納される。図４はメモリ１０２２に保持された情報の一部を示す模式図である。ある撮像画像に対して、角度センサ出力と焦点距離が、撮像装置情報として格納されている。
【００４１】
撮像装置１００１の姿勢情報は、角度センサ１０２０の出力を用いて、以下の３ｘ３行列Ｒlightで表現される。
【数１】
2008016918.tif 000003
【００４２】
撮像装置１００１の姿勢情報を表す、この３ｘ３行列Ｒlightをカメラ姿勢行列と呼ぶ。ここで、（α,β,γ）はカメラに取り付けられたセンサ出力のロール・ピッチ・ヨー角表現での値であり、ある基準点からの動き量で表現される。ロール・ピッチ・ヨー角表現とは、図５に示したように、任意の回転を、ｚ軸周りの回転であるロー、次に、新しいｙ軸周りの回転であるピッチ、最後に、新しいｘ軸まわりの回転であるヨーの３段階の回転によって表すものである。
【００４３】
また、Ｒx(α)、Ｒy(β)、Ｒz(γ)はロール・ピッチ・ヨー角からｘ軸回転、ｙ軸回転、ｚ軸回転へ変換する行列であり、次式で表される。
【数２】
2008016918.tif 000004
【００４４】
このような、カメラに取り付けられた角度センサや角速度センサからカメラの姿勢情報を取得する方法は、既存の手法を利用すればよい（例えば、「岡谷貴之、“メカニカルセンサとイメージセンサの融合による３次元形状復元”、情報処理学会研究報告会、２００５−ＣＶＩＭ−１４７、ｐｐ．１２３−１３０、２００５」）。
【００４５】
また、撮像装置１００１がズーム可能である場合、そのズーム情報も焦点距離情報として取得される。また、撮像装置１００１が固定焦点の場合、その焦点距離情報も取得される。焦点距離情報は、画像処理の分野で広く使われているカメラキャリブレーションを行うことにより、取得できる。
【００４６】
また、撮像装置情報取得部１０２は、広角画像撮像部１０１によって撮像された画像を利用して、撮像装置１００１の光軸方向や位置情報等を撮像装置情報として求めてもかまわない。例えば、時刻ｔ１とｔ２で撮像された画像を利用して、時刻ｔ１とｔ２間の相対的な位置関係Ｐ１とカメラ姿勢行列Ｒlightを、オプティカルフローを用いて求める。
【００４７】
オプティカルフローは、被写体上のある１点に対応する、時間的に連続した２つの画像上の点、すなわち対応点を結ぶベクトルであり、対応点とカメラ動きとの間には幾何学的な拘束式が成り立つ。このため、対応点が一定の条件を満たす場合に、カメラの動きを算出することができる。
【００４８】
異なる時刻における撮像装置の相対的な位置関係をオプティカルフローから求める手法としては、例えば８点法と呼ばれる手法が知られている（H. C. Longuet-Higgins, “A computer algorithm for reconstructing a scene from two projections”, Nature, vol.293, pp.133-135, 1981）。この手法は、２画像間の静止した８点以上の対応点の組からカメラ動きを算出するものである。また、このような２画像間の対応点を求める手法は、一般に広く知られた方法であるので、詳細な説明を省略する（例えば、Carlo Tomasi and Takeo Kanade,  “Detection and Tracking of Point Features”, Carnegie Mellon University Technical Report, CMU-CS-91-132, April 1991）。
【００４９】
光源情報推定部１０３は、メモリ１０２２に格納された、広角画像撮像部１０１が撮像した広角画像と撮像装置情報取得部１０２が取得した撮像装置情報とを用いて、現在の撮像装置１００１に対する光源情報を取得する。この処理について説明する。
【００５０】
ここでは、光源の方向を推定するものとする。まず、広角画像において、十分に輝度値の高い画素を、光源を撮像している画素すなわち光源画素として抽出する。図３において、撮像された広角画像１００６では、光源１００５が撮像されている領域１００７の輝度値は非常に高くなる。そこで、閾値処理を利用し、所定の閾値よりも輝度値が高い画素を光源画素として抽出する。
【００５１】
こうして求まった光源画素から、光源方向を推定する。この処理には、撮像装置の画素位置（ｕ，ｖ）と画像座標系とよばれる撮像素子上での実寸位置（ｘf，ｙf）との関係式が必要である。レンズの歪みなどの影響を考慮すると、画素位置（ｕ，ｖ）と実寸位置（ｘf，ｙf）との関係は、次式で求められる。
【数３】
2008016918.tif 000005
【００５２】
ただし、（Ｃx，Ｃy）は画素中心位置、ｓはスケールファクタ、（dx，dy）は撮像素子１画素のサイズ[mm]、Ｎcxはｘ方向の撮像素子数、Ｎfxはｘ方向の有効画素数、κ1、κ2はレンズの歪みを示す歪みパラメータである。
【００５３】
また、図６に示した、撮像装置の焦点位置を原点、その光軸方向をＺ軸にとったカメラ座標系（ｘ，ｙ，ｚ）と画像座標系（ｘf，ｙf）との関係は、次式で求められる。
【数４】
2008016918.tif 000006
ここで、ｆは撮像装置の焦点距離を表している。つまり、カメラパラメータ（Ｃx，Ｃy），ｓ，（dx，dy），Ｎcx，Ｎfx，ｆ，κ1，κ2が既知であれば、（式１）（式２）により、画素位置（ｕ，ｖ）とカメラ座標系（ｘ，ｙ，ｚ）の変換が可能である。
【００５４】
通常、Ｎcx，Ｎfxは撮像素子が特定できれば既知であり、また、（Ｃｘ，Ｃy），s，（dx，dy），κ1、κ2、ｆはいわゆるカメラキャリブレーションを行うことで既知となる（例えば、Roger Y.Tsai, “An Efficient and Accurate Camera Calibration Technique for 3D Machine Vision”, Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, Miami Beach, FL, 1986, pp. 364-374, 1986）。これらのパラメータは、撮像装置の位置や姿勢が変化しても変化しない。このようなパラメータをカメラ内部パラメータとよぶ。
【００５５】
そこで、撮像を行う前にカメラキャリブレーションを行い、カメラ内部パラメータ（Ｃｘ，Ｃｙ），s，（dx，dy），Ｎcx，Ｎfx，ｆ，κ1，κ2を特定する。これらの値は、撮像装置購入時に付属されているものを利用しても構わない。また、カメラが固定焦点ではなく、ズーム可能である場合、各ズーム時の焦点距離ｆを個別に求めておき、必要なときに選択できるようにしておけばよい。そして、焦点距離ｆを撮像した画像とともに保持しておけばよい。
【００５６】
以上の情報を利用して、光源画素から光源方向を推定する。光源画素の画素位置を（ｕlight，ｖlight）とすると、光源方向Ｌlightは以下の式で表現できる。
【数５】
2008016918.tif 000007
ただし、
【数６】
2008016918.tif 000008
ところで、Ｌlightは光源画素を撮像したときのカメラ座標系で表現されているため、現在のカメラ座標系Ｌnowで表現しなおす。これは、以下の式で表現できる。
【数７】
2008016918.tif 000009
ただし、Ｒlightは光源画素を撮影したときのカメラ姿勢行列、Ｒnowは現在のカメラ姿勢行列を示している。
【００５７】
以上の処理を行うことにより、光源方向ベクトルＬnowを推定する。このようにして、光源の方向が推定される。
【００５８】
さらに、撮像装置１００１が移動することを利用して、光源の方向だけでなく、３次元位置まで求めるようにしても構わない。
【００５９】
図７はこの処理を説明するための模式図である。図７において、１００１Ａ、１００２Ａは時刻ｔ＝ｔ１における撮像装置と推定された光源方向ベクトル、また、１００１Ｂ、１００２Ｂは時刻ｔ＝ｔ２における撮像装置と推定された光源方向ベクトルを示している。ここで、時刻ｔ１とｔ２の撮像装置の相対的な位置関係と姿勢がわかっていれば、光源ベクトル１００２Ａ、１００２Ｂを延長した交点に光源は存在するはずである。つまり、光源の３次元位置は以下のように求まる。
【００６０】
時刻ｔ１における、撮像装置のカメラ姿勢行列、撮像装置の３次元位置、および推定された光源方向ベクトルをそれぞれ、Ｒ1、Ｐ1、Ｌ1とし、時刻ｔ２における、撮像装置のカメラ姿勢行列と推定された光源方向ベクトルをそれぞれ、Ｒ2、Ｌ2とする。ただし、時刻ｔ２において、撮像装置の位置は原点Ｏ（０，０，０）であるとする。このとき、光源位置Ｐlightは次式を満たす。
【数８】
2008016918.tif 000010
【数９】
2008016918.tif 000011
ただし、ｓ，ｍは任意の定数である。もし、すべての推定値が正しく、ノイズが存在していなければ、（式３）と（式４）をｓとｍに関する連立方程式を解くことによって、光源位置Ｐlightは求まる。しかし、通常はノイズの影響があるため、最小自乗法を利用して、光源位置を求める。
【００６１】
まず、以下の関数ｆ（ｍ，ｓ）を考える。
【数１０】
2008016918.tif 000012
ここで、ｍ，ｓは以下の関係式を満たす。
【数１１】
2008016918.tif 000013
【数１２】
2008016918.tif 000014
つまり、
【数１３】
2008016918.tif 000015
【数１４】
2008016918.tif 000016
よって、（式５）、（式６）をｍとｓに関する連立方程式として解き、求まったｍとｓを（式３）または（式４）へ代入することにより、光源位置Ｐlightが求まる。このようにして、光源の位置が推定される。
【００６２】
なお、時刻ｔ１における撮像装置の相対的な３次元位置Ｐ１（時刻ｔ１とｔ２における撮像装置の相対的な位置関係）は、上述したように、広角画像撮像部１０１によって撮像された画像から、オプティカルフローを用いることによって求められる。
【００６３】
さらに、光源画素の輝度値やＲＧＢ値を求めることによって、光源の輝度や色も求めることができる。また、画像をマルチスペクトルカメラで取得することで、光源のスペクトルを検出するようにしても構わない。このように光源のスペクトルを取得することによって，後述する画像の高解像度化や拡張現実において、色再現性の高い画像が合成できることが知られている（例えば、「内山俊郎, 土田  勝, 山口雅浩, 羽石秀昭, 大山永昭, “マルチスペクトル撮影による光源環境計測とスペクトルに基づく画像生成”, 電子情報通信学会技術研究報告PRMU2005-138, pp.7-12, 2006」）。
【００６４】
また、光源情報取得部１０３は、光源情報として、光源の照度情報を取得するようにしても構わない。これは撮像装置１００１と光軸方向の一致した照度計を利用すればよい。照度計としては、光電池にマイクロアンペア計を接続し、入射光によって生じる光電流を読む光電池照度計などを用いればよい。
【００６５】
画像高解像度化部１０４は、広角画像撮像部１０１が撮像した画像を、光源情報推定部１０３が推定した光源情報を利用して、高解像度化する。
【００６６】
ＣＣＤやＣＭＯＳのような素子で広角画像を撮像した場合、狭角レンズで撮像した場合に比べて低解像度の画像となってしまう。そこで、本実施形態に係る画像撮像装置では、光源情報推定部１０３が推定した光源情報などを利用して、被写体の解像度を改善させる。
【００６７】
画像高解像度化部１０４について詳述する。画像の高解像度化はデジタルズームとして知られており、補間を利用する方法、複数枚の画像を利用してカメラの劣化モデルを推定する方法（例えば、「田中正行，奥富正敏，“再構成型超解像処理の高速化アルゴリズムとその精度評価”、電子情報通信学会論文誌D-II，vol.J88-D-II，No.11，pp.2200-2209，2005」など）、学習を利用する方法などを利用すればよい。ここでは、学習を利用した画像の高解像度化処理について説明する。
【００６８】
まず、学習を利用した画像の高解像度化処理の概念を説明する。画像高解像度化部１０４は、以下の４つの入力情報を利用する。
【００６９】
○被写体の拡散反射画像
○被写体の鏡面反射画像
○被写体の３次元形状情報
○光源位置・色・照度
【００７０】
ここで、拡散反射画像とは、入力画像のうち、マットな反射成分である拡散反射成分のみを画像化したものであり、同様に、鏡面反射画像は、入力画像のうち、てかりである鏡面反射成分のみを画像化したものである。ここで、拡散反射成分とは、光沢の無い物体表面で起こる反射であり、すべての方向に一様に散乱する成分である。一方、鏡面反射成分とは、鏡の面での反射のように、法線に対して入射光の反対方向に強く反射する成分である。２色性反射モデルを仮定すると、物体の輝度は、拡散反射成分と鏡面反射成分との和として表現される。後述するように、鏡面反射画像と拡散反射画像は、例えば偏光フィルタを回転させながら被写体を撮像することで取得することができる。
【００７１】
図８（ａ）は、光源で照射された被写体（タンブラー）を撮像装置で撮像した画像を示している。図の上部にてかりである鏡面反射が現れているのがわかる。一方、図８（ｂ）（ｃ）は、図８（ａ）の画像を後述する方法で拡散反射画像と鏡面反射画像とに分離した結果である。拡散反射画像はてかりが取り除かれ、表面のテクスチャ情報が鮮明になっているが、立体感が失われている。一方、鏡面反射画像は細かな形状情報が鮮明に現れているが、逆にテクスチャ情報が失われている。つまり、入力画像はこれら全く異なる情報を含んだ二つの画像が重畳されたものであった。画像を拡散反射画像と鏡面反射画像とに分離し、別々に処理することにより、より精細な高解像度化処理が可能である。
【００７２】
高解像度化処理には、学習ベースの手法を用いる。学習ベースとは、事前に低解像度と高解像度の画像組を用意し、その対応を学習するものである。この際、用意された画像以外の画像においても高解像度化処理を働かせるために、画像そのものを学習するのではなく、画像から抽出した特徴量を学習する。
【００７３】
図９は画像高解像度化部１０４の構成例を示すブロック図である。図９の画像高解像度化部１０４は、広角画像撮像部１０１によって撮像されメモリ１０２２に格納された広角画像を、光源情報推定部１０３によって推定された光源情報を用いて、高解像度化する。また、形状情報取得部２０４は、被写体の表面の法線情報または３次元位置情報を形状情報として取得する。形状情報取得部２０４によって取得された形状情報は、画像高解像度化部１０４における画像の高解像度化処理に用いられる。
【００７４】
画像高解像度化部１０４は、与えられた広角画像を拡散反射成分と鏡面反射成分とに分離し、分離した拡散反射成分と鏡面反射成分とを個別に高解像化する。以下、それぞれの処理について説明する。
【００７５】
拡散反射・鏡面反射分離部２０２は、与えられた広角画像を、拡散反射成分と鏡面反射成分とに分離する。
【００７６】
まず、物体の反射特性について説明する。２色性反射モデルを仮定すると、物体の輝度は、拡散反射成分と鏡面反射成分との和として以下の式で表現される。
【数１５】
2008016918.tif 000017
ここで、Ｉは撮像装置が撮像した被写体の輝度値、Ｉaは環境光成分、Ｉdは拡散反射成分、Ｉsは鏡面反射成分である。ここで、環境光成分とは、光源の光が物体などによって散乱された間接光のことである。これは空間の至る所に散乱され、直接光がとどかない影の部分にもわずかに明るさを与える。そのため、通常はノイズとして取り扱われることが多い。
【００７７】
環境光成分は十分に小さく、ノイズとして無視できると考えると、画像は拡散反射成分と鏡面反射成分とに分離できる。上述のように、拡散反射成分がテクスチャ情報に依存するのに対し、鏡面反射画像は細かな形状情報に依存するといったように、これらの成分は非常に異なった特質を示す。そのため、画像を高解像度化するために、入力画像を拡散反射画像と鏡面反射画像とに分離し、それぞれの画像を別々の方法で高解像度化することによって、非常に高精細な高解像度化画像を取得することができる。このため、まずは拡散反射画像と鏡面反射画像とを分離する必要性がある。
【００７８】
この分離方法は、従来からさまざまなものが提案されている。例えば、
・鏡面反射と拡散反射の偏光度の違いを利用し、偏光フィルタを用いた方法（例えば、特許第３４５９９８１号公報）。
・対象物を回転させ、マルチスペクトルカメラを利用することで鏡面反射領域を分離する方法（例えば、特開２００３−８５５３１号公報）。
・様々な方向から光源を当てた対象物の画像を利用し、鏡面反射が生じない理想状態での画像である線形化画像を合成し、その線形化画像を利用して鏡面反射や影領域を分離する方法（例えば、「石井育規，福井孝太郎，向川康博，尺長健，“光学現象の分類に基づく画像の線形化“，情報処理学会論文誌，vol.44，no. SIG5 (CVIM6) ，pp.11-21，2003」）。
などがある。
【００７９】
ここでは、偏光フィルタを利用する方法を用いる。図１０は本実施形態に係る画像処理装置が搭載されたウェアラブルカメラ１０００を示している。図１０に示すように、撮像装置１００１には回転機構（図示せず）をもった直線偏光フィルタ１００９Ａが設けられている。また、直線偏光フィルタ１００９Ｂが取り付けられた照明装置１００５が設けられている。
【００８０】
ここで、直線偏光フィルタ１００９Ｂが取り付けられた照明装置１００５に照らされた被写体について、撮像装置１００１が、直線偏光フィルタ１００９Ａを回転機構により回転させながら、複数枚の画像を撮像する。ここで、照明が直線偏光されていることに着目すると、反射光強度は偏光フィルタ１００９Ａの回転角ψに対して、図１１のように変化する。ここで、反射光の拡散反射成分をＩｄ、鏡面反射成分をＩsとすると、反射光輝度の最大値Ｉmaxと最小値Ｉminは以下の式で表現される。
【数１６】
2008016918.tif 000018
【数１７】
2008016918.tif 000019
つまり、反射光の拡散反射成分Ｉｄ、鏡面反射成分Ｉsは、以下の式から求まる。
【数１８】
2008016918.tif 000020
【数１９】
2008016918.tif 000021
【００８１】
図１２はこの処理の流れを示したものである。まず、回転機構により偏光フィルタ１００９Ａを回転させ（ステップＳ３０１）、画像を撮像し、メモリに保持する（ステップＳ３０２）。次に、メモリに保持された画像が、所定の枚数撮像されているかを確認する（ステップＳ３０３）。このとき、反射光輝度の最小値と最大値を検出するのに十分な枚数がまだ撮像されていない場合（ステップＳ３０３でＮｏ）、偏光フィルタを再度回転させ（ステップＳ３０１）、撮像を繰り返す。一方、十分な枚数の撮像ができている場合（ステップＳ３０３でＹｅｓ）、撮像された画像データを利用して、反射光輝度の最小値と最大値を検出し（ステップＳ３０４）、（式８）と（式９）を利用することにより、拡散反射成分と鏡面反射成分とを分離する（ステップＳ３０５）。この処理は、複数枚の画像から各画素ごとに最小値と最大値を求めても構わないが、ここでは、sin関数のフィッテングを利用する。この処理を説明する。
【００８２】
図１１に示した偏光フィルタ角ψに対する反射光輝度Ｉは、以下のように、sin関数で近似できる。
【数２０】
2008016918.tif 000022
ここで、Ａ、Ｂ、Ｃは定数であり、（式８）、（式９）より
【数２１】
2008016918.tif 000023
【数２２】
2008016918.tif 000024
つまり、撮像された画像から、（式１０）のＡ，Ｂ，Ｃを求めることにより、拡散反射成分と鏡面反射成分とを分離することができる。
【００８３】
ところで、（式１０）は以下のように展開できる。
【数２３】
2008016918.tif 000025
ただし、
【数２４】
2008016918.tif 000026
つまり、以下の評価式を最小にするＡ，Ｂ，Ｃを求めることで、拡散反射成分と鏡面反射成分とを分離することができる。
【数２５】
2008016918.tif 000027
ただし、Ｉiは、偏光フィルタ角ψi時の反射光強度を示している。ここで、最小自乗法を用いると、各パラメータは以下のように推定される。
【数２６】
2008016918.tif 000028
【数２７】
2008016918.tif 000029
【数２８】
2008016918.tif 000030
【数２９】
2008016918.tif 000031
【数３０】
2008016918.tif 000032
以上より、（式１１）〜（式１９）を利用することで、拡散反射成分と鏡面反射成分とを分離する。この場合、未知パラメータが３個であるため、偏光フィルタの回転角を変更した画像を最低３枚撮像すればよい。
【００８４】
このため、直線偏光フィルタ１００９Ａの回転機構を設ける代わりに、画素ごとに偏光方向の異なる撮像装置を利用しても構わない。図１３はこのような撮像装置の画素を模式的に示したものである。ここで、１０１０は各画素を示し、各画素内の直線は偏光方向を示している。すなわち、この撮像装置は０°、４５°、９０°、１３５°の４種類の偏光方向を有する画素を持つ。そして、図１３の太線１０１０のように、４種類の画素をベイヤ配列のように１画素として取り扱うことによって、偏光方向が４種類異なった画像を同時に撮像することができる。このような撮像装置は、例えば、フォトニック結晶デバイスなどを利用すればよい。
【００８５】
また、照明装置１００５として、偏光された照明例えば液晶ディスプレイを利用してもかまわない。例えば、ウェアラブルカメラにインターフェイス用として搭載されている液晶ディスプレイを利用すればよい。
【００８６】
もちろん、撮像装置１００１の偏光フィルタ１００９Ａを回転させる代わりに、照明装置１００５の偏光フィルタ１００９Ｂを回転させてもかまわない。また、撮像装置１００１と照明装置１００５の両方に偏光フィルタを設置する代わりに、撮像装置側など片側のみに設置し、独立成分分析を利用して拡散反射成分と鏡面反射成分とを分離させてもかまわない（例えば、特許３４５９９８１号公報参照）。
【００８７】
形状情報取得部２０４は、被写体の形状情報である表面の法線情報または、被写体の３次元位置情報を取得する。被写体の形状情報を取得する手段としては、例えば、スリット光投影法、パターン光投影法、レーザレーダ法などの既存の手法を用いればよい。
【００８８】
もちろん、形状情報の取得はこれらの手法に限られるものでない。例えば、複数のカメラを利用するステレオ視、カメラの動きを利用するモーションステレオ法、光源の位置を変化させながら撮像した画像を利用する照度差ステレオ法、ミリ波や超音波を利用して被写体との距離を測定する方法、さらには反射光の偏光特性を利用した方法（例えば、米国特許第５，０２８，１３８号公報や「宮崎大輔，池内克史，"偏光レイトレーシング法による透明物体の表面形状の推定手法"， 電子情報通信学会論文誌D-II，vol. J88-D-II，No.8，pp. 1432-1439，2005」）を用いてもかまわない。ここでは、照度差ステレオ法について説明する。
【００８９】
照度差ステレオ法は、光源方向が異なる３枚以上の画像を利用して、被写体の法線方向と反射率を推定する手法である。例えば、「H. Hayakawa, ”Photometric Stereo under a light source with arbitrary motion”, Journal of the Optical Society of America A, vol.11, pp.3079-89, 1994」は、画像上で６点以上の反射率が等しい点を既知情報として取得し、拘束条件として利用することによって、光源の位置情報も未知としながらも、以下のパラメータを推定する手法である。
・被写体情報：画像上の各点の法線方向と反射率
・光源情報：被写体の観察点における光源方向と照度
【００９０】
ここでは、前述の拡散反射・鏡面反射分離手法によって分離された拡散反射画像のみを利用した照度差ステレオ法を行う。本来、この手法は被写体が完全拡散反射をしていることを仮定しているため、鏡面反射が存在する被写体では大きな誤差が生じてしまう。しかし、分離した拡散反射画像のみを利用することで、鏡面反射の存在による推定誤差を無くすことができる。もちろん、後述するように、影除去部２０５で影領域を除去した拡散反射画像で処理を行ってもかまわない。
【００９１】
光源方向が異なる拡散反射画像を以下のように輝度行列Ｉdで表現する。
【数３１】
2008016918.tif 000033
ただし、ｉdf(p)は光源方向ｆの拡散反射画像の画素ｐにおける輝度値を示している。また、画像の画素数はＰ画素、異なった光源方向で撮像した画像枚数はＦ枚である。ところで、ランバーシャンモデルより、拡散反射画像の輝度値は以下のように表現できる。
【数３２】
2008016918.tif 000034
ただし、ρpは画素ｐの反射率（アルベド）、ｎpは画素ｐの法線方向ベクトル、ｔfは光源ｆの入射照度、Ｌfは光源ｆの方向ベクトルを示している。
（式２０）、（式２１）より以下の式が導かれる。
【数３３】
2008016918.tif 000035
ただし、
【数３４】
2008016918.tif 000036
【数３５】
2008016918.tif 000037
【数３６】
2008016918.tif 000038
【数３７】
2008016918.tif 000039
【数３８】
2008016918.tif 000040
【数３９】
2008016918.tif 000041
ここで、Ｒは表面反射行列、Ｎは表面法線行列、Ｌは光源方向行列、Ｔは光源強度行列、Ｓは表面行列、Ｍは光源行列と呼ぶ。
【００９２】
ここで、特異値分解を利用すると、（式２２）は以下のように展開できる。
【数４０】
2008016918.tif 000042
【数４１】
2008016918.tif 000043
ただし、
【数４２】
2008016918.tif 000044
であり、Ｅは単位行列を示している。また、Ｕ’はＰ×３行列、Ｕ”はＰ×（Ｆ−３）行列、Σ’は３×３行列、Σ”は(Ｆ−３)×(Ｆ−３)行列、Ｖ’は３×Ｆ行列、Ｖ”は（Ｆ−３）×Ｆ行列である。ここで、Ｕ”、Ｖ”は信号成分であるＵ’、Ｖ’の直交基底、すなわち、ノイズ成分であると考えられる。ここで、特異値分解を利用すると、（式２４）は以下のように変形できる。
【数４３】
2008016918.tif 000045
【数４４】
2008016918.tif 000046
【００９３】
すなわち、（式２５）を解くことにより、形状情報と光源情報を同時に取得することができるが、以下の３×３行列Ａの不定性が残る。
【数４５】
2008016918.tif 000047
【数４６】
2008016918.tif 000048
ここで、Ａは任意の３×３行列である。形状情報と光源情報を取得するためには、この行列Ａを求める必要がある。これは、例えば、画面上の６点以上で反射率が等しいことが既知であればよい。例えば、任意の６点k1〜k6の反射率が等しいとすると、
【数４７】
2008016918.tif 000049
（式２３）、（式２６）と（式２８）より、
【数４８】
2008016918.tif 000050
さらに、
【数４９】
2008016918.tif 000051
とおくと、（式２９）は以下のようになる。
【数５０】
2008016918.tif 000052
ここで、（式３０）より行列Ｂは対称行列であるため、行列Ｂの未知数は６である。すなわち、画面上の６点以上で反射率が等しいことが既知であれば、（式３１）は解くことができる。
【００９４】
また、行列Ｂが既知となれば、（式３０）に特異値分解を利用することにより、行列Ａは解くことができる。
【００９５】
さらに、（式２６）、（式２７）より、形状情報と光源情報を取得する。
【００９６】
以上のことより、反射率が等しい６点以上の画素が既知な被写体において、光源方向を変更しながら３枚以上の画像を撮像することにより、以下の情報を得ることができる。
・被写体情報：画像上の各点の法線方向ベクトルと反射率
・光源情報：被写体の観察点における光源方向ベクトルと放射輝度
【００９７】
ただし、上記の処理で求まる被写体の反射率と光源の放射輝度は相対的なものであり、絶対値を求めるためには、画面上の６点以上で反射率が既知であるなど、上記とは異なる既知情報が必要となる。
【００９８】
また、光源と撮像装置の位置関係が既知の場合、撮像装置と被写体の距離や３次元位置を求めるようにしてもかまわない。これを図を用いて説明する。
【００９９】
図１４はこの処理を説明するための模式図である。図１４において、１００１は撮像装置、１００５Ａおよび１００５Ｂは光源、１０１２は被写体の観察点Ｏ、１００２Ａおよび１００２Ｂは被写体の観察点Ｏにおける各光源の光源方向、１０１３は被写体の観察点Ｏにおける撮像措置の視線方向を示している。
【０１００】
まず、光源と撮像装置との位置関係が既知であるため、撮像装置１００１と光源１００５Ａ、１００５Ｂの３次元位置関係Ｌa、Ｌbは既知である。また、撮像装置１００１はキャリブレーションされているとすると、撮像装置１００１の視線方向１０１３も既知である。このことから、被写体の観察点Ｏ１０１２はこの視線方向１０１３上に存在する。また、上述の照度差ステレオ法により、被写体の観察点Ｏにおける各光源の光源方向１００２Ａ、１００２Ｂは既知である。撮像装置１００１と観察点Ｏ１０１２の距離Ｌvが正（Ｌv＞０）であるとすると、このような位置関係を満たす観察点Ｏは、１点しか存在しない。そのため、観察点Ｏ１０１２の位置がわかり、撮像装置１００１と観察点Ｏ１０１２との距離Ｌvが求まる。
【０１０１】
また、例えばデジタルカメラのフラッシュのように撮像装置に光源が設置されている場合、光源と撮像装置との位置関係は設計情報から求めることができる。
【０１０２】
また、形状情報取得部２０４は反射光の偏光特性を利用して、被写体の表面法線方向を取得してもかまわない。この処理について、図１５を用いて説明する。
【０１０３】
図１５において、１００１は撮像装置、１００５は光源、１０１２は観察点Ｏ、１００９は回転機構（図示せず）をもった直線偏光フィルタ、１０１４は法線方向を示している。光源として自然光が照射されている状態において、回転機構によって偏光フィルタ１００９を回転させながら撮像を行った場合、その反射光強度は、図１６に示したように、周期πのsin関数となる。
【０１０４】
ここで、この反射光強度の最大値Ｉmaxと最小値Ｉminを計測する偏光フィルタの角度ψmax、ψminを考える。撮像装置１００１と光源１００５、観察点Ｏ１０１２を含む平面を入射面とすると、ψmaxは偏光フィルタ１００９の偏光方向が入射面に対して垂直な方向、また、ψminは偏光フィルタ１００９の偏光方向が入射面に対して平行な方向になることが知られている。
【０１０５】
また、上述したように、反射光成分において、偏光特性を有するものは観察点Ｏの表面で反射した鏡面反射成分、非偏光の成分は拡散反射成分である。このことから、反射光強度の最大値Ｉmaxと最小値Ｉminの強度差が生じる観察点Ｏは鏡面反射成分が強い観察点、すなわち、光が正反射している（観察点Ｏの法線方向１０１４が観察点Ｏからの光源方向と観察点Ｏからの撮像装置方向の二等分線方向である）ことがわかる。そのため、法線方向１０１４も入射面内に存在する。そのため、ψmaxまたはψminを推定することにより、法線方向１０１４は以下の平面内に存在すると推定することができる。
○撮像装置１００１を通り、偏光フィルタ１００９の偏光方向ψmin（またはψmaxの垂直方向）を含む平面
【０１０６】
ここで、ψmaxまたはψminは、上述のsin関数のフィッテング処理を行うことで推定する。
【０１０７】
また、撮像装置１００１の位置を変更させて、同様な処理を行うことによって、法線方向１０１４を含む、異なった２つの平面を推定することができる。推定した２つの平面の交線を求めることによって、法線方向１０１４を推定する。この際、撮像装置１００１の移動量を推定する必要があるが、これは、前述の８点法などを利用すればよい。
【０１０８】
もちろん、拡散反射・鏡面反射分離部２０２と同様に、画素ごとに偏光方向の異なる撮像装置を利用しても構わない。
【０１０９】
また、もちろん、撮像装置１００１の位置を変更させるのではなく、複数台の撮像装置を設置して法線方向１０１４を求めるようにしても構わない。
【０１１０】
以上のように、照度差ステレオ法や偏光特性を利用した方法では、表面の法線情報を取得する。一方、スリット光投影法やステレオ視などの手法では、被写体の３次元位置情報を取得する。被写体表面の法線情報とは、被写体の３次元位置情報の微小空間での傾き情報であり、どちらも被写体の形状情報である。
【０１１１】
以上の処理により、形状情報取得部２０４は被写体の形状情報である表面の法線情報または、被写体の３次元位置情報を取得する。
【０１１２】
以上の処理により、以下の情報を取得する。
○被写体の拡散反射画像
○被写体の鏡面反射画像
○被写体の３次元形状情報
○光源位置・照度
【０１１３】
影除去部２０５は、画像中の影領域を推定し、影除去処理を行う。このような、影除去および影領域推定処理はさまざまな方法が提案されているが、例えば、影領域は輝度値が低いことを利用し、輝度値が閾値以下の画素を影領域と推定すればよい。
【０１１４】
また、形状情報取得部２０４によって３次元形状情報が取得されている場合、Ｃｏｍｐｕｔｅｒ−Ｇｒａｐｈｉｃｓの分野で広く利用されているレンダリング手法である、レイトレーシングを利用してもかまわない。レンダリングは物体の座標データや光源や視点の位置などの環境に関するデータを計算して行うが、レイトレーシングは、視点に届く光線を逆にたどることによって描画する。そのため、レイトレーシングを利用してどの場所にどの程度の影が生成されているかを計算することができる。
【０１１５】
次に、拡散反射・鏡面反射分離部２０２によって分離された拡散反射画像と鏡面反射画像を、それぞれ、別々の方法で高解像度化する。まず、拡散反射画像の処理について説明する。
【０１１６】
アルベド推定部２０６は、拡散反射・鏡面反射分離部２０２によって分離された拡散反射画像を利用し、被写体のアルベドを推定する。アルベドは光源情報に影響を受けないため、アルベド画像を利用して処理を行うことによって、光源変動にロバストな処理が実現できる。
【０１１７】
この処理を説明する。（式２１）より、拡散反射成分では、以下の関係が成り立つ。
【数５１】
2008016918.tif 000053
ただし、θiは被写体の法線方向ベクトルと光源方向ベクトルのなす角を示す。ここで、光源情報取得部１０３および形状情報取得部２０４により、角度θiは既知である。また、後述するように、光源の入射照度ｔfも推定可能なため、被写体のアルベドｒpを（式３２）から求める。
【０１１８】
この際、cosθiが０以下の値を持つ場合、すなわち、attached shadowである場合、（式３２）はアルベドがマイナスになる、あるいは、０で除算を行うことになり、意味を持たない。しかし、上述の影除去部２０５によってこのような画素を除去しているため、問題は生じない。
【０１１９】
もちろん、被写体のアルベドを求めるのではなく、次式によりアルベドに光源の放射輝度を乗算した擬似アルベドを求め、これを利用しても構わない。
【数５２】
2008016918.tif 000054
【０１２０】
次に、こうして求めたアルベド画像の高解像度化について説明する。
【０１２１】
アルベド高解像度化部２０７は、アルベド推定部２０６が推定したアルベド画像を高解像度化する。この処理について詳述する。
【０１２２】
前述のように、アルベド画像は、光の鏡面反射や陰影など光学現象によらない被写体固有の反射率特性を表現した画像である。本実施形態における高解像度化は、被写体情報が不可欠なため、被写体の事前学習に基づく。ここではテキストン（画像のテクスチャ特徴量）に基づく高解像度化を用いる。
【０１２３】
図１７はテキストンに基づく高解像度化の概念を示す図である。実行時に入力された低解像度画像ＬＲ（画素数Ｎ×Ｎ）は、画素数を目標画素数に合致させるため、Ｍ×Ｍ倍に補間拡大される。この画素数ＭＮ×ＭＮ画像をｅｘＬＲ画像と称する。ｅｘＬＲ画像では画像の高周波成分が失われて、ぼけた画像になる。このぼけ画像を先鋭化することが高解像度化に他ならない。
【０１２４】
次に、多重解像度変換ＷＴによって、ｅｘＬＲ画像の輝度値を画素ごとに、多重解像度に基づくＴ次元テキストンに変換する。この変換にはウェーブレット変換やピラミッド構造分解などの処理が用いられる。この結果、ｅｘＬＲ画像の各画素ごとに、合計ＭＮ×ＭＮ本のＴ次元テキストンベクトルが生成される。次に、汎用性の向上のため、テキストンベクトルにクラスタリングが実施されて、Ｌ本の入力代表テキストンベクトルが選択生成される。これらＬ本のテキストンベクトルに対して、予め学習したデータベースの情報から変換が施されて、Ｔ次元の高解像度化テキストンベクトルが生成される。この変換には、テーブル読み出しや、Ｔ次元の多次元特徴ベクトル空間内における線形および非線形変換が用いられる。高解像度化テキストンベクトルは、逆ウェーブレット変換やピラミッド構造再構成などの逆変換ＩＷＴによって、画像輝度値に戻されて、高解像度画像ＨＲが完成する。
【０１２５】
この処理では、ＭＮ×ＭＮ本のＴ次元テキストンベクトルのクラスタリング処理における探索とテーブル読み出しの処理に多大な時間を要し、動画など高速化対応が困難であった。そこで、１）クラスタリング処理をＬＲ画像にて実施する。２）テーブル読み出しを線形マトリクス変換に変更する。という改良を加えた。この処理では、ＬＲ画像の１画素はＨＲ画像のＭ×Ｍ画素のセルに対応する事実を使って、Ｔ次元からＴ次元への線形マトリクス変換をセル毎に実施して、セル内部での空間的な連続性を維持することができる。また利用する線形マトリクスはクラスタリングの結果から最適に選択する。セル境界の不連続性が問題になる場合にはマトリクス処理単位のブロックを一部重ねるなどの処理を追加してもよい。
【０１２６】
図１８は上の改良点を模式的に描いた図である。ＬＲ画像をＷＴ変換して、Ｔ次元の特徴量空間の中のＬ（ここではＬ＝３）本の代表特徴ベクトルとしている。そして、各特徴ベクトルに異なる線形マトリクスが付随している。この状態を保存したものが高解像度化データベースに他ならない。
【０１２７】
以下、Ｎ＝３２、Ｍ＝４、すなわち３２×３２画素の低解像画像に４×４倍の高解像度化を施す例をとって、画像処理手法の詳細を述べる。アルベド画像は（ＲＧＢ）カラー画像とするが、カラー画像は（ＲＧＢ）から輝度色差（ＹＣｒＣＢ）に変換して独立した色成分画像として取り扱うものとする。通常、２×２倍率程度では、輝度Ｙ成分だけの高解像度でカラー成分は低解像度の色差信号のまま付加しても違和感はないが、４×４以上では、色信号も高解像度化が必須になるので各成分とも同様な取り扱いとする。以下、カラー画像の１つの成分画像のみの処理を説明することとする。
【０１２８】
（学習時）
図１９は学習処理の流れを説明するＰＡＤ図であり、図２０は学習処理において処理される画像の処理対象画素と処理対象セルとの関係を説明する図である。以下、図１９および図２０を交互に用いて説明を行う。
【０１２９】
まず、Ｓ３１１〜Ｓ３１３において、低解像度画像ＬＲ画像、高解像度画像ＨＲ画像、および低解像度画像の拡大画像ｅｘＬＲ画像を入力する。これら画像は、ＨＲから全て生成されており、撮像における画素ずれがない状態としておく。また、ＬＲ画像からｅｘＬＲ画像の生成にはバイキュービック補間を用いている。図２０において、高解像度画像ＨＲ(画素数１２８×１２８)と、低解像度ＬＲ画像（画素数３２×３２）と、ＬＲを画素数だけＨＲと合致させたｅｘＬＲ画像（画素数１２８×１２８）の３種類の画像を用意する。
【０１３０】
Ｓ３１４において、ＬＲ画像をテキストン化する。具体的には、Ｈａａｒ基底を用いた２次元離散定常ウェーブレット変換（Discrete stationary wavelet transform：ＳＷＴ変換）を行う。ＳＷＴ変換の階層は２階層(2-step)とすると、６次元のＬＲＷ画像（画素数３２×３２＝１０２４）が生成される。本来、２階層ステップの２次元離散定常ウェーブレット変換では７次元の特徴ベクトルとなるが、最低周波数のＬＬ成分画像は画像の平均輝度情報に近くなり、これを保存するため残りの６成分のみを利用する。
【０１３１】
Ｓ３１５において、テキストン化されたＬＲＷ画像の合計１０２４本の６次元ベクトルをＣmax個にまでクラスタリングする。ここではK-means法を用いて、例えばＣmax＝５１２本にクラスタリングする。この５１２本の結果のテキストンベクトルの集合をクラスタＣと称する。クラスタリングをせず１０２４本のテキストンを全て利用しても問題ない。
【０１３２】
Ｓ３１６において、クラスタＣの同一クラスタに判別されたＬＲ画素を判定する。具体的には、ＬＲ画像の画素値がクラスタＣの各テキストン番号に置き換えられる。
【０１３３】
Ｓ３１７において、クラスタＣの全テキストンに対して繰り返し処理をしながら、該当テキストンに対応するｅｘＬＲの画素セルとＨＲ画像の画素セルを探索して、該当セル番号を格納する。この探索がＬＲ画像の画素数分だけで済むため、高倍率の場合に大きな探索時間の削減となる。
【０１３４】
ここでＬＲ画像の画素とｅｘＬＲ画像、ＨＲ画像の画素セルとの対応につき、図２０で説明する。図２０では、ＬＲ画像上で、２００１と２００２という２画素がＣの同一クラスタ（クラスタ番号：Ｃi＝０）に判別されたとする。すると、そのままの位置関係を保って拡大されたｅｘＬＲ画像上では２００３，２００４、ＨＲ画像上では２００５、２００６という画素セルが対応していると考えられ、これらの２箇所のセル位置の番号が、該当するテキストンを有するものとして格納される。画素セル内に含まれる画素数は拡大率４×４＝１６に等しい。
【０１３５】
次にＳ３１８において、これらの画素セル群についてｅｘＬＲ画像とＨＲ画像の対でテキストン化を行う。具体的には、２次元離散定常ウェーブレット変換（Discrete stationary wavelet transform）が実施されて、ｅｘＬＲＷ画像とＨＲＷ画像が生成される。
【０１３６】
Ｓ３１９とＳ３２０において、上記ＨＲＷ画像とｅｘＬＲＷ画像から得られたテキストンの対が行列の形として集積される。形式はいずれも、６×Ｄａｔａ＿ｎｕｍの行列となる。ここでＤａｔａ＿ｎｕｍは、（１セルの画素数）×（探索されたセルの数）となり、上のＣｉ＝０の例では、２個のセルが探索されたので１６×２＝３２となる。
【０１３７】
Ｓ３２１において、集積された両者に所属する合計２×４×４＝１２８個の特徴ベクトルから最小二乗法にて６×６マトリクスＭを算出し、それをＳ３２２において、クラスタ番号Ｋ＝０とともにデータベースＣＭａｔ（Ｋ）に格納蓄積する。Ｓ３２２における最小二乗法は、まずＳ３１９とＳ３２０において集積されたｅｘＬＲとＨＲのテキストンの行列を各々ＬｆとＨｆ（サイズ：６×Ｄａｔａ＿ｎｕｍ）とし、求めるマトリクスをＭ（６×６）とすると以下のように実行できる。
【数５３】
2008016918.tif 000055
【０１３８】
次に、クラスタ番号Ｋ＝１について同様処理を繰り返して、Ｋ＝５１１まで行う。すなわち、ＣＭａｔはクラスタ番号ごとに規定される６×６変換行列の群である。
【０１３９】
最後に、Ｓ３２３とＳ３２４において、使用したクラスタＣと学習された変換行列ＣＭａｔとを出力する。こうして求めたクラスタＣと学習された変換行列ＣＭａｔを、アルベドＤＢ２０８に蓄積する。
【０１４０】
図２１は２次元離散定常ウェーブレット変換（Discrete stationary wavelet transform）の処理を示す図である。通常のウェーブレット変換では、フィルタバンク構成は同一のまま分解の階層が進む毎に画像が縮小していくが、２次元離散定常ウェーブレット変換では、分解の階層が進んでも変換画像サイズは不変であり、スケーリング関数Ｆとウェーブレット関数Ｇの２種類のフィルタがアップサンプリング（↑）されて２のべき乗で長くなっていくことにより多重解像度解析を行う。Ｈａａｒ基底では、ＦとＧの具体的な数値とアップサンプリングの様子は表１のようになる。
【０１４１】
【表１】
2008016918.tif 000056
【０１４２】
ＬＬ成分であるｃＡ画像を１階層進めてウェーブレット分解する場合、ＦとＧのフィルタを交互に１次元的にコンボリューションすることにより、図２１のように４種類の画像が生成される。１）行方向にＦ・列方向にＦ：ｃＡ画像(ＬＬ成分)  ２）行方向にＦ・列方向にＧ：ｃＤｈ画像(ＬＨ成分)  ３）行方向にＧ・列方向にＦ：ｃＤｖ画像(ＨＬ成分)  ４）行方向にＧ・列方向にＧ：ｃＤｄ画像(ＨＨ成分)。
【０１４３】
図２２は２次元離散定常ウェーブレット変換をテスト画像に実施した場合の画像結果例である。テキストンベクトルとは、これらウェーブレットの１−ＳＴＥＰと２−ＳＴＥＰの変換画像の1画素ごとに対応する値を連ねたもので、
【数５４】
2008016918.tif 000057
の７次元ベクトルのことである。ただし２−ＳＴＥＰのＬＬ成分であるｃＡ２を除いて、６次元ベクトル部分のみを使って高解像度変換し、ｃＡ２成分は保存している。
【０１４４】
なお、ウェーブレット変換のステップ数をここではＳ３１４とＳ３１８のいずれも２−ＳＴＥＰとしている。このステップ数が大きくなるほど、画像の大まかな特徴までテキストンで表現することができる。本発明においてステップ数は可変であるが、ＬＲ画像のクラスタリングのためのＳ３１４の場合、１−ＳＴＥＰでは周辺の画素状況として十分な情報とならない場合があるため、２−ＳＴＥＰとしている。一方、ｅｘＬＲ画像を高解像度化するためのテキストンを生成するＳ３１８の場合、たとえば８×８の倍率においては２−ＳＴＥＰよりも３−ＳＴＥＰの方が良好な画像が得られることが、実験的に確認されている。このため、倍率との関係でステップ数を決定することが望ましい。
【０１４５】
（高解像度化処理の実行時）
図２３は実行時の処理の流れを示すＰＡＤ図であり、図２４は実行時の処理の画素セルとの関係を示す図である。
【０１４６】
まず、Ｓ３３１とＳ３３２において、ＬＲ画像とこれを拡大したｅｘＬＲ画像とを入力する。学習時と同様に、ＬＲ画像の画素数＝３２×３２、ｅｘＬＲ画像の画素数＝１２８×１２８とする。ここでｅｘＬＲ画像の生成方法は、図１９のＳ３１３において学習画像のｅｘＬＲ画像を生成した方法と同様にバイキュービック法による。
【０１４７】
次に、Ｓ３３３とＳ３３４において、学習時に得られたクラスタＣと変換行列ＣＭａｔとアルベドＤＢ２０８から読み出し、入力する。
【０１４８】
Ｓ３３５において、ＬＲ画像をテキストン化する。具体的には図２４で示すように、Ｈａａｒ基底を用いた２次元離散定常ウェーブレット変換（Discrete stationary wavelet transform：ＳＷＴ変換）を行う。ＳＷＴ変換の階層は２階層(2-step)とすると、６次元のＬＲＷ画像（画素数３２×３２＝１０２４）が生成される。本来は２階層ステップの２次元離散定常ウェーブレット変換では７次元の特徴ベクトルとなるが、最低周波数のＬＬ成分画像は画像の平均輝度情報に近くなり、これを保存するため残りの６成分のみを利用する。
【０１４９】
次にＳ３３６において、各テキストンにつき、クラスタＣ（Ｃmax個のテキストン）内の最短距離のテキストンベクトルを探索してテキストン番号（Ci）を得る。これは図２４において、ＬＲ画像の１ライン上の各画素２０１１，２０１２，…，２０１３について、各々Ｃ０，Ｃ１，…，Ｃｎというテキストン番号が付与されることに相当する。
【０１５０】
次にＳ３３７に進むが、これ以降はＨＲ画像の各セルを走査線順に処理していく繰り返し処理となる。具体的には、図２４において、ｅｘＬＲ画像のセル２０１４，２０１５，…，２０１６を処理していくと、対応するＨＲ画像のセル２０２３，２０２４，…，２０２５が順次高解像度化されていく。
【０１５１】
Ｓ３３７において、ｅｘＬＲ画像の該当セル領域がテキストン化される。具体的には、２次元離散定常ウェーブレット変換（Discrete stationary wavelet transform）が実施されて、ｅｘＬＲＷ画像が生成される。セル２０１７，２０１８，…，２０１９などが生成される。
【０１５２】
Ｓ３３８において、テキストン番号から変換行列ＣＭａｔを引いて該当セルにおける変換行列Ｍを確定する。この処理は図２４のように行われる。ＬＲＷ画像には、すでに画素２０１１＝Ｃ０、画素２０１２＝Ｃ１、…、画素２０１３＝Ｃｎとテキストン番号が振られている。これを位置関係を保存したｅｘＬＲＷ画像のセル２０１７、２０１８、…２０１９に適用して、各々のセルで、Ｃ０，Ｃ１，・・Ｃｎをテキストン番号としてＭａｔから別々の６×６変換行列Ｍを選択することができる。
【０１５３】
Ｓ３３９において、各セルに変換行列Ｍを作用させる。これはセル内のテキストンＬＴｉ（ｉ＝１〜１６）全部について、
【数５５】
2008016918.tif 000058
を実施すればよい。これらを繰り返して、ｅｘＬＲＷ画像のセル２０１７，２０１８，…，２０１９からＨＲＷ画像のセル２０２０，２０２１，…，２０２２が、それぞれ生成される。
【０１５４】
次に、これら高解像度化されたセル内の６次元テキストンに、ｅｘＬＲＷ画像の２−ＳＴＥＰのＬＬ成分を付加して７次元テキストンを生成する。
【０１５５】
Ｓ３４０において、この各セル内７次元のテキストンを逆ＳＷＴ変換することにより画像に変換する。以上をｅｘＬＲ画像の全セルについて繰り返す。
【０１５６】
逆ＳＷＴ（ＩＳＷＴ）変換は、図２５で示す信号フローで実現できる。図２１とほとんど同じ表現である。通常のウェーブレット逆変換ではフィルタバンクの構成は同一のまま、分解の階層が進む毎に画像が拡大していく。これに対して、本逆変換においては、分解の階層が進んでも変換画像サイズは不変であり、スケーリング関数Ｆとウェーブレット関数Ｇ１の２種類のフィルタがダウンサンプリング（↓）されて２のべき乗で短くなっていくことにより、多重解像度解析を行う。Ｈａａｒ基底では、ＦとＧ１の具体的な数値とダウンサンプリングの様子は表２のようになる。
【０１５７】
【表２】
2008016918.tif 000059
【０１５８】
以上のようにしてアルベド画像の１成分が高解像度化される。この処理を、アルベド画像全てに行うことにより、高解像度なアルベド画像を合成する。
【０１５９】
このとき、アルベド画像に含まれる被写体の大きさや姿勢、向きなどが変化しても処理が可能なように、画像の正規化を行うようにしてもかまわない。テキストンを利用した高解像度化処理は、学習データに対してアルベド画像の大きさや姿勢が異なっている場合、高解像度化の精度が十分に発揮されないことが考えられる。そこで、アルベド画像を複数組用意し、この問題を解決する。すなわち、アルベド画像を３０度ずつ回転させた画像を合成し、そのすべての画像で高解像度化を行い、姿勢や向きの変化に対応させる。この場合、前述の「高解像度化処理の実行時」のＰＡＤ図である図２３のステップＳ３３６において、最短距離のテキストンを探索する際、回転処理を行った各画像から求めた複数のＬＲ画像のテキストン、それぞれにおいて最短距離のテキストンを探索し、最も距離の近いものを探索してテキストン番号（Ci）を得るようにすればよい。
【０１６０】
また、大きさの変化に対応するために、画像の大きさを変更したアルベド画像を合成するようにしてもかまわない。
【０１６１】
また、実際の大きさを基準に、例えば、５ｃｍ×５ｃｍの画像が必ず８ｘ８画素になるように拡大縮小処理を行い、その画像に対してテキストンを作製するようにしてもかまわない。被写体の大きさは、形状情報取得部２０４により既知であるため、「学習時」および「高解像度化処理の実行時」ともに同じ大きさの画像でテキストンを作製することで、大きさの変動に対応するようにしてもかまわない。
【０１６２】
また、「高解像度化処理の実行時」のアルベド画像を回転させるのではなく、「学習時」のアルベド画像を回転させ、複数組のテキストンを作製し、クラスタＣと学習された変換行列ＣＭａｔをアルベドＤＢ２０８に蓄積するようにしてもかまわない。
【０１６３】
さらに、入力された被写体が何であるかを推定し、推定された被写体がどのように回転しているかを姿勢推定するようにしてもかまわない。このような処理は、広く使われている画像認識技術を利用すればよい。これは、例えば、被写体にＲＦＩＤのようなタグを設置しておき、そのタグ情報を認識することで被写体が何であるかを認識し、さらにタグ情報から被写体の形状情報を推定し、画像や被写体の形状情報から姿勢推定を行うようにすればよい（例えば、特開２００５−３４６３４８号公報参照）。
【０１６４】
拡散画像高解像度化部２０９は、アルベド高解像度化部２０７が合成した高解像度アルベド画像から高解像度な拡散画像を合成する。この処理を説明する。
【０１６５】
前述のように、アルベド画像は、拡散成分画像を光源ベクトルと被写体の法線方向ベクトルの内積で除算したものである。そのため、アルベド画像に、光源情報推定部１０３によって推定された光源方向ベクトルと、後述するパラメータ高解像度化部２１３によって求めた被写体の高密度法線方向ベクトルとの内積を乗算することによって、高解像度の拡散画像を合成する。光源情報推定部１０３により、複数の光源が推定された場合、それぞれの光源に対して高解像度な拡散画像をおのおの合成し、その画像を足し合わせることで、一枚の高解像度拡散画像を合成する。
【０１６６】
以上の処理により、高解像度化された拡散画像を合成することができる。ここで、高解像度化処理はアルベド画像を利用して行ったが、アルベド画像ではなく、拡散画像を直接、高解像度化するようにしてもかまわない。この場合、学習処理は拡散画像を用いて行えばよい。
【０１６７】
次に、鏡面反射画像の高解像度化処理について説明する。ここでは、画像をパラメータに分解し、パラメータごとに高密度化する。この処理を順に説明する。
【０１６８】
パラメータ推定部２１０は、形状情報取得部２０４によって取得された被写体の法線情報、拡散反射・鏡面反射分離部２０２によって分離された拡散反射画像と鏡面反射画像を利用して、その被写体を表現するパラメータを推定する。ここでは、Ｃｏｍｐｕｔｅｒ−Ｇｒａｐｈｉｃｓの分野で広く使われているＣｏｏｋ−Ｔｏｒｒａｎｃｅモデルを利用する方法を説明する。
【０１６９】
Ｃｏｏｋ−Ｔｏｒｒａｎｃｅモデルでは、鏡面反射画像を次式のようにモデル化する。
【数５６】
2008016918.tif 000060
【数５７】
2008016918.tif 000061
【数５８】
2008016918.tif 000062
【数５９】
2008016918.tif 000063
【数６０】
2008016918.tif 000064
【数６１】
2008016918.tif 000065
【数６２】
2008016918.tif 000066
【数６３】
2008016918.tif 000067
【数６４】
2008016918.tif 000068
【０１７０】
ここで、Ｅiは入射照度、ρs,λは波長λにおける鏡面反射成分の双方向反射率、ｎは被写体の法線方向ベクトル、Ｖは視線ベクトル、Ｌは光源方向ベクトル、Ｈは視線ベクトルと照明方向ベクトルの中間ベクトル、βは中間ベクトルＨと法線方向ベクトルｎの角度を表す。また、Fλはフレネル方程式から求められる誘電体表面からの反射光の比であるフレネル係数、Ｄはマイクロファセット分布関数、Ｇは物体表面の凸凹による遮光の影響を表す幾何減衰率である。さらに、ｎλは被写体の屈折率、ｍは被写体表面の粗さを示す係数、Ｉjは入射光の放射輝度である。また、ｋsは鏡面反射成分の係数である。
【０１７１】
さらに、（式２１）のランバーシャンモデルを利用すると、（式７）は以下のように展開される。
【数６５】
2008016918.tif 000069
ただし、
【数６６】
2008016918.tif 000070
【数６７】
2008016918.tif 000071
ここで、ρｄは拡散反射成分の反射率（アルベド）、dpx、dpyは撮像装置の１画素のｘ方向、ｙ方向の長さ、ｒは撮像装置の観察点Ｏからの距離を示している。また、ｋdは以下の関係式を満たす係数である。
【数６８】
2008016918.tif 000072
Ｓrは拡散反射成分と鏡面反射成分の輝度値の違いを表現するための定数であり、拡散反射成分が被写体からすべての方向へエネルギーを反射することを示している。図２６はこの定数Ｓrを説明するための模式図である。図２６において、観察点Ｏで反射された拡散反射成分エネルギーは、半球状に広がっていく。ここで、撮像装置１００１が観察点Ｏからｒだけ離れているので、撮像装置の１撮像素子に届くエネルギーと、観察点Ｏで反射した総エネルギーの比Ｓrは、（式４４）で表される。
【０１７２】
以上のことから、パラメータ推定部２１０は、（式３３）〜（式４４）からパラメータを推定する。
【０１７３】
以上の関係式をまとめると、パラメータ推定を行うための既知パラメータと、推定すべきパラメータは以下のようになる。
【０１７４】
（既知パラメータ）
○環境光成分Ｉa
○拡散反射成分Ｉd
○鏡面反射成分Ｉs
○被写体の法線方向ベクトルｎ
○光源方向ベクトルＬ
○視線ベクトルＶ
○中間ベクトルＨ
○中間ベクトルＨと法線方向ベクトルｎの角度β。
○撮像装置の１画素のｘ方向、ｙ方向の長さdpx，dpy。
○撮像装置と観察点Ｏとの距離ｒ
【０１７５】
（推定すべきパラメータ）
○入射照度Ｅi
○鏡面反射成分の係数ｋs
○被写体表面の粗さｍ
○被写体の屈折率ηλ
ここで、拡散反射成分の係数ｋd、および拡散反射成分の反射率（アルベド）ρdも未知パラメータであるが、鏡面反射成分のパラメータのみを推定するため、ここでは推定処理を行わない。
【０１７６】
図２７はパラメータ推定部２１０の処理の流れを示した図である。処理は、以下の２段階からなる。
【０１７７】
まず、光源情報を使用して、入射照度Ｅiを求める（ステップＳ３５１）。これは、光源情報推定部１０３によって取得した光源の位置情報、形状情報取得部２０４で求めた撮像装置と被写体との距離情報、さらには光源情報推定部１０３で求めた光源照度を用いる。これは、次式から求まる。
【数６９】
2008016918.tif 000073
ここで、Ｉiは撮像装置１００１に設置された照度計１０１５によって測定された光源１００５の入射照度、Ｒ1は撮像装置１００１と光源１００５との距離、Ｒ2は光源１００５と観察点Ｏとの距離、θ1は観察点Ｏにおける法線１０１４と光源方向１００２Ｃとのなす角度、θ2は撮像装置１００１における光軸方向１０１７と光源方向１００２Ａとのなす角度を示している（図２８参照）。ここで、被写体の大きさが、光源１００５と観察点Ｏとの距離Ｒ2に比べ十分に大きいと考えられる場合、距離Ｒ2は被写体上の全ての観察点Ｏで等しくなる。そのため、（式４６）において（Ｒ1／Ｒ2）は定数となり、実際に計測する必要はなくなる。
【０１７８】
次に、シンプレックス法を利用して、未知パラメータｍ、ηλ、ｋsを推定する（ステップＳ３５２）。シンプレックス法は、シンプレックスと呼ぶ図形の頂点に変数を割り付け、シンプレックスの大きさと形を変えて関数の最適化を行う方法である（大田登，“色再現光学の基礎” ，pp.90-92，コロナ社）。シンプレックスは、ｎ次元空間の（ｎ＋１）個の点の集合である。ただし、ｎは推定する未知数の数であり、ここでは「３」である。そのため、シンプレックスは四面体である。シンプレックスの頂点をベクトルxiで表し、新しいベクトルを次のように定める。
【数７０】
2008016918.tif 000074
【数７１】
2008016918.tif 000075
【数７２】
2008016918.tif 000076
【数７３】
2008016918.tif 000077
ただし、
【数７４】
2008016918.tif 000078
【数７５】
2008016918.tif 000079
はそれぞれ関数ｆ(xi)を最大、最小にするxiを示している。
【０１７９】
さらに、この方法で用いる３種類の操作を以下のように定める。
１．鏡像：
【数７６】
2008016918.tif 000080
【０１８０】
２．拡張：
【数７７】
2008016918.tif 000081
【０１８１】
３．収縮：
【数７８】
2008016918.tif 000082
ここで、α（＞０）、β（＞１）、γ（１＞γ＞０）は係数である。
【０１８２】
シンプレックス法は、シンプレックスの頂点の中で関数値の最も大きなものを選ぶことで、その鏡像における関数値は小さくなるという期待に基づいている。この期待が正しければ、同じプロセスの繰り返しで関数の最小値が求められる。つまり、初期値で与えたパラメータを３種類の操作で更新しながら、評価関数が示すターゲットとの誤差が閾値未満になるまでパラメータの更新を繰り返す。ここでは、パラメータとしてｍ、ηλ、ｋs、評価関数として（式５２）で表される、（式３３）から算出される鏡面反射成分画像と拡散反射・鏡面反射分離部２０２で求められた鏡面反射成分画像との差ΔIｓを利用した。
【数７９】
2008016918.tif 000083
ただし、is(i,j)’,is(i,j)はそれぞれ、計算された鏡面反射画像の推定値Is’と拡散反射・鏡面反射分離部２０２で求められた鏡面反射成分画像Isの画素(i,j)の輝度値、Ｍs(i,j)は、画素(i,j)が鏡面反射成分を持つ場合に１、そうでない場合０をとる関数である。
【０１８３】
この処理について詳しく説明する。図２９はこの処理の流れを説明するためのフローチャートである。
【０１８４】
まず、繰り返し演算の更新回数を記憶するカウンターｎとｋに０を代入し、初期化する（ステップＳ３６１）。ここで、カウンターｎは初期値を何回変更したかを記憶するカウンターであり、ｋはある初期値に対してシンプレックスによる候補パラメータの更新を何回行ったかを記憶するカウンターである。
【０１８５】
次に、乱数を利用し、推定パラメータの候補パラメータm’、ηλ’、ks’の初期値を決定する（ステップＳ３６２）。このとき、各パラメータの物理的な拘束条件から、初期値の発生範囲は以下のように決定した。
【数８０】
2008016918.tif 000084
【０１８６】
次に、こうして求めた候補パラメータを（式３３）へ代入し、鏡面反射画像の推定値Is’を求める（ステップＳ３６３）。さらに、計算された鏡面反射画像の推定値Is’と拡散反射・鏡面反射分離部２０２で求められた鏡面反射成分画像との差ΔIｓを（式５２）より求め、これをシンプレックス法の評価関数とする（ステップＳ３６４）。こうして求めたΔIｓが十分小さい場合（ステップＳ３６５でＹｅｓ）、パラメータ推定は成功したとして、推定パラメータm、ηλ、ksとして候補パラメータm’、ηλ’、ks’を選択し、処理を終了する。一方、ΔIｓが大きい場合（ステップＳ３６５でＮｏ）、シンプレックス法により候補パラメータの更新を行う。
【０１８７】
候補パラメータの更新を行う前に、更新回数の評価を行う。まず、更新回数を記憶しているカウンターｋに１を足し（ステップＳ３６６）、カウンターｋの大きさを判断する（ステップＳ３６７）。カウンターｋが十分に大きい場合（ステップＳ３６７でＮｏ）、繰り返し演算は十分に行われているが、ローカルミニマムに落ちいっているため、このまま更新を繰り返しても最適値には達しないと判断し、初期値を変更して、ローカルミニマムからの脱却を図る。そのため、カウンターｎに１を足し、カウンターｋに０を入れる（ステップＳ３７１）。ここで、カウンターｎの値が閾値より高いかどうかを判定し、処理をこのまま続けるか、処理不能として処理を終了させるかを決定する（ステップＳ３７２）。ここで、ｎが閾値より大きい場合（ステップＳ３７２でＮｏ）、この画像は推定不能として処理を終了する。一方、ｎが閾値より小さい場合（ステップＳ３７２でＹｅｓ）、再度、初期値を（式５３）の範囲内で乱数から選択しなおし（ステップＳ３６２）、処理を繰り返す。このようなｋに対する閾値は、例えば、１００などを選択すればよい。
【０１８８】
一方、ステップＳ３６７において、カウンターｋが閾値以下の場合（ステップＳ３６７でＹｅｓ）、候補パラメータを（式４９）〜（式５１）を利用して変更する（ステップＳ３６８）。この処理については後述する。
【０１８９】
次に、こうして変形された候補パラメータが、解として意味のあるものであるかを判定する（ステップＳ３６９）。すなわち、シンプレックス法を繰り返すことで、変形されたパラメータが物理的に意味のない値（例えば、粗さパラメータｍが負の値など。）におちいる可能性があるため、これを除去する。これは、例えば、以下のような条件を与え、この条件を満たす場合には意味のあるパラメータ、満たさない場合には意味のないパラメータと判定すればよい。
【数８１】
2008016918.tif 000085
これらの値は、被写体より求めることができる。例えば、屈折率ηλであれば、被写体の材質によって決定される値である。例えば、プラスチックであれば１．５〜１．７、ガラスであれば１．５〜１．９であることが知られているため、これらの値を利用すればよい。つまり、被写体がプラスチックである場合、屈折率ηλは１．５〜１．７とすればよい。
【０１９０】
変形したパラメータが（式５４）を満たす場合（ステップＳ３６９でＹｅｓ）、その候補パラメータは意味のある値であると考えられるため、新しい候補パラメータとして設定し（ステップＳ３７０）、更新処理を繰り返す（ステップＳ３６３）。一方、変形したパラメータが（式５４）を満たさない場合（ステップＳ３６９でＮｏ）、その初期値に対する更新処理を打ち切り、新しい初期値により更新を行う（ステップＳ３７１）。
【０１９１】
ここで、ステップＳ３６８の変形処理について詳述する。図３０はこの処理の流れを示したフローチャートである。ここでは、候補パラメータｍ’、ηλ’、ｋs’をベクトル表現し、これをパラメータxとする。すなわち、
【数８２】
2008016918.tif 000086
【０１９２】
まず、（式４７）〜（式４９）を利用して、鏡像操作を行ったパラメータxrを計算し、（式５２）によってxrでの鏡面反射成分画像との差ΔIｓ(xr)を計算する（ステップＳ３８１）。次に、こうして求められたΔIｓ(xr)と、２番目に評価関数が悪かったΔIｓ(xs)を比較する（ステップＳ３８２）。ここでΔIｓ(xr)がΔIｓ(xs)より小さかった場合（ステップＳ３８２でＹｅｓ）、鏡像操作を行った評価値ΔIｓ(xr)と現在、最も評価値のよいΔIｓ(xl)を比較する（ステップＳ３８３）。ここで、ΔIｓ(xr)の方が大きかった場合（ステップＳ３８３でＮｏ）、最も評価値の悪かったxhをxrへ変更し（ステップＳ３８４）、処理を終了する。
【０１９３】
一方、ΔIｓ(xr)がΔIｓ(xl)より小さかった場合（ステップＳ３８３でＹｅｓ）、（式４６）を利用して拡張処理を行い、パラメータxeと、xeでの鏡面反射成分画像との差ΔIｓ(xe)を計算する（ステップＳ３８５）。次に、こうして求められたΔIｓ(xe)と、鏡像操作によるΔIｓ(xr)を比較する（ステップＳ３８６）。ここでΔIｓ(xe)がΔIｓ(xr)より小さかった場合（ステップＳ３８６でＹｅｓ）、最も評価値の悪かったxhをxeへ変更し（ステップＳ３８７）、処理を終了する。
【０１９４】
一方、ΔIｓ(xe)がΔIｓ(xr)より大きかった場合（ステップＳ３８６でＮｏ）、最も評価値の悪かったxhをxrへ変更し（ステップＳ３８７）、処理を終了する。
【０１９５】
また、ステップＳ３８２において、ΔIｓ(xr)がΔIｓ(xs)より大きかった場合（ステップＳ３８２でＮｏ）、鏡像操作を行った評価値ΔIｓ(xr)と現在、最も評価値の悪いΔIｓ(xh)を比較する（ステップＳ３８８）。ここでΔIｓ(xr)がΔIｓ(xh)より小さかった場合（ステップＳ３８８でＹｅｓ）、最も評価値の悪かったxhをxrへ変更し（ステップＳ３８９）、（式５０）を利用して、収縮操作を行ったパラメータxcと、xcでの鏡面反射成分画像との差ΔIｓ(xc)を計算する（ステップＳ３９０）。一方、ΔIｓ(xr)がΔIｓ(xh)より大きかった場合（ステップＳ３８８でＮｏ）、xhを変更することなく、収縮操作を行ったパラメータxcと、xcでの鏡面反射成分画像との差ΔIｓ(xc)を計算する（ステップＳ３９０）。
【０１９６】
次に、こうして求められたΔIｓ(xc)と、最も評価値の悪いΔIｓ(xh)を比較する（ステップＳ３９１）。ここでΔIｓ(xc)がΔIｓ(xh)より小さかった場合（ステップＳ３９１でＹｅｓ）、最も評価値の悪かったxhをxcへ変更し（ステップＳ３９２）、処理を終了する。
【０１９７】
一方、ΔIｓ(xc)がΔIｓ(xh)より大きかった場合（ステップＳ３９１でＮｏ）、すべての候補パラメータxi(i=1,2,3,4)を以下の式により変更し、処理を終了する。
【数８３】
2008016918.tif 000087
【０１９８】
以上の処理を繰り返すことにより、鏡面反射画像における未知パラメータであるｍ、ηλ、ｋsを推定する。
【０１９９】
以上の処理により、すべての未知パラメータを推定することができる。
【０２００】
なお、パラメータ推定に用いるモデルは、Ｃｏｏｋ−Ｔｏｒｒａｎｃｅモデルである必要はなく、例えば、Ｔｏｒｒａｎｃｅ−ＳｐａｒｒｏｗモデルやＰｈｏｎｇモデル、簡易Torrance-Sparrowモデル（例えば、「K. Ikeuchi and K. Sato, “Determining reflectance properties of an object using range and brightness images”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.13, no.11, pp.1139-1153, 1991」）であってもかまわない。
【０２０１】
また、パラメータ推定方法は、シンプレックス法である必要はなく、例えば、勾配法や最小自乗法などのような一般的なパラメータ推定手法を利用してもかまわない。
【０２０２】
また、以上の処理は、画素毎に行ってもかまわないし、領域分割を行い、各領域ごとに等しいパラメータ組を推定するようにしてもかまわない。画素毎に処理を行う場合、光源や撮像装置、または被写体を動かすことにより、被写体の法線方向ベクトルｎや光源方向ベクトルＬ、または視線ベクトルＶといった既知パラメータが変動したサンプルを取得するようにすることが望ましい。また、処理を領域ごとに行う場合、領域ごとに求まったパラメータのばらつきが小さくなるように領域分割を変更することで、最適なパラメータ推定を行うようにすることが望ましい。
【０２０３】
法線情報高密化部２１１は、形状情報取得部２０４で取得した表面の法線情報を高密度化する。これは、以下のように実現される。
【０２０４】
まず、形状情報取得部２０４によって取得した表面の法線情報を、画像撮像部２０１によって取得された画像へ投影し、画像内の各画素に対応する法線方向を求める。このような処理は、従来のカメラキャリブレーション処理（例えば、「運天 弘樹, 池内 克史, “実物体の仮想化のための3次元幾何モデルのテクスチャリング手法”, CVIM-149-34, pp.301-316, 2005」）を行うことで実現できる。
【０２０５】
この際、法線ベクトルは極座標で表現し、その値をθi、φiとする（図３１参照）。以上の処理により、法線成分であるθ、φの画像を作製する。こうして求めたθ画像とφ画像を、上述のアルベド高解像度化部２０７と同様の手法によって高解像度化することによって、高密度の法線情報を推定する。この際、高密度度化処理を行う前に学習処理を行い、法線のθ、φ成分に対するクラスタＣと学習された変換行列ＣＭａｔを法線ＤＢ２１２に蓄積する。
【０２０６】
また、以上の処理は、影除去部２０５において、影として除去されなかった領域のみに対して行うことが望ましい。これは、影の存在により、パラメータ推定処理に誤差が生じてしまうことを防止するためである。
【０２０７】
また、パラメータ推定部２１０において、撮像装置近傍に設置された制御可能な光源を利用してもかまわない。この光源は、デジタルカメラのフラッシュであってもよい。この場合、フラッシュを照射して撮像したフラッシュ画像と、フラッシュを照射しないで撮像した非フラッシュ画像を時間的に連続して撮像し、その差分画像を利用してパラメータ推定を行えばよい。撮像装置と光源であるフラッシュとの位置関係は既知であり、また、フラッシュの光源情報である３次元位置や色、強度も事前に測定しておくことが可能である。また、撮像装置とフラッシュは非常に近い場所に設置されているため、影が少ない画像を撮像することができる。そのため、画像内のほとんどの画素において、パラメータを推定することができる。
【０２０８】
さらに、パラメータ高密度化部２１３は、パラメータ推定部２１０によって求めたパラメータを高密度化する。ここでは、単純な線形補間を行い、すべてのパラメータを高密度化する。もちろん、上述のアルベド高解像度化部２０７のような学習を利用した高密度化手法を利用してもかまわない。
【０２０９】
また、パラメータごとに高密化方法を切り替えるようにしてもかまわない。例えば、推定パラメータである被写体の屈折率ηλは、高密度化しても値が変化しないと考えられる。そのため、被写体の屈折率ηλは単純補間により高密度化を行い、拡散反射成分の係数ｋd、鏡面反射成分の係数ｋs、さらには拡散反射成分の反射率（アルベド）ρdに関しては学習を利用した高密度化処理を行うようにしてもかまわない。
【０２１０】
鏡面反射画像高解像度化部２１４は、法線情報高密度化部２１１によって推定された高密度法線情報と、パラメータ高解像度化部２１４によって高密度化されたパラメータを利用し、高解像度な鏡面反射画像を合成する。高解像度な鏡面反射画像は、（式３３）〜（式４１）に高密度化したパラメータを代入することによって、合成する。
【０２１１】
ここで、実際の鏡面反射画像よりも輝度値が高くなるように、例えば入射照度Ｅiのみ推定された値に係数ｌ（例えば、ｌ＝２）を乗算するようにしてもかまわない。これは、鏡面反射画像の輝度値を上げることによって、被写体の質感を上げるためである。同じように、被写体表面の粗さｍを推定値よりも大きな値として、実際よりもてかりが強い鏡面反射画像を合成してもかまわない。
【０２１２】
影生成部２１５は、拡散反射画像高解像度化部２０９と鏡面反射画像高解像度化部２１４によって生成された高解像度拡散反射画像と高解像度化鏡面反射画像に重畳する、影画像を合成する。これは、前述影除去部２０５において利用したレイトレーシングを利用すればよい。
【０２１３】
ここで、画像高解像度化部１０４は、撮影対象となっている被写体の３次元形状に関する知識を有するものとする。影生成部２１５は、被写体の３次元形状データを取得し、撮影画像における被写体の見え(appearance)から、被写体の３次元姿勢及び３次元位置を推定する。被写体が人間の目の角膜である場合の、見えから３次元位置及び３次元姿勢を推定する例が、「K.Nishino and S.K.Nayar, "The World in an Eye", in Proc. of Computer Vision and Pattern Recognition CVPR '04, vol.I, pp444-451, Jul., 2004.」に開示されている。見えから３次元位置及び３次元姿勢を推定できる被写体は限られるが、そのような被写体であれば、上記文献の手法を本発明に適用することが可能である。
【０２１４】
被写体の３次元姿勢及び３次元位置が推定されれば、被写体上の任意の位置において、被写体表面の法線情報が算出できる。以上の処理を、撮影画像において繰り返し、被写体表面の法線情報を算出する。さらに、法線情報高密度化部２１１で推定された高密度法線情報を利用して被写体の法線情報を高密度化することによって、被写体の３次元形状を高密化することが可能である。こうして求めた高密度３次元形状と、パラメータ高解像度化部２１３によって高密度化されたパラメータを利用してレイトレーシングを行うことにより、高解像度な影画像の推定を行う。
【０２１５】
レンダリング部２１６は、拡散反射画像高解像度化部２０９が合成した高解像度拡散反射画像、鏡面反射画像高解像度化部２１４が合成した高解像度鏡面反射画像、さらには、影生成部２１５が合成した影画像を合成し、高解像度の出力画像を合成する。
【０２１６】
以上のように、本実施形態に係る画像処理装置は、画像の高解像度化処理を行うことができる。
【０２１７】
また、ここでは、鏡面反射画像のみパラメータ推定を利用して高解像度化を行ったが、拡散反射画像においてもパラメータ推定を行い、高解像度化するようにしてもかまわない。
【０２１８】
この処理を説明する。拡散反射画像の未知パラメータは、上述のとおり、以下の２つである。
○拡散反射成分の係数ｋd
○拡散反射成分の反射率（アルベド）ρd
そこで、これらのパラメータを推定する。図３２は拡散反射画像のパラメータ推定処理の流れを示した図である。図２７で示した鏡面反射画像のパラメータ推定部２１０の処理後、さらに以下の２段階の処理を行う。
【０２１９】
まず、（式４５）と鏡面反射画像のパラメータ推定で求まったｋsを利用して、次式よりｋdを推定する（ステップＳ３５３）。
【数８４】
2008016918.tif 000088
【０２２０】
さらに、（式４３）を利用して、拡散反射画像の反射率（アルベド）ρｄを次式より推定する（ステップＳ３５４）。
【数８５】
2008016918.tif 000089
【０２２１】
以上の処理により、すべての未知パラメータを推定することができる。こうして求まったパラメータをパラメータ高密度化部２１３と同様の手法により高密化することによって、拡散反射画像を高解像度化すればよい。
【０２２２】
また、広角画像撮像部１０１が撮像を行う際には、フラッシュを照射せずに撮像を行うことが望ましい。これは、鏡のような鏡面反射を起こす被写体が撮像装置１００１の視野内に存在している場合、フラッシュが反射され、誤って光源画素として推定されてしまうためである。そのため、冷却ＣＣＤカメラや多重露光撮像など、広いダイナミックレンジを撮像できる撮像装置を利用することが望ましい。
【０２２３】
また、広角画像撮像部１０１は、撮像装置１００１の画素の露光時間を、領域毎に、異なる値に設定するようにしてもかまわない。異なる露光時間の設定は、例えば撮像装置１００１がＣＣＤである場合、その電荷蓄積時間を変えることによって、実現できる。
【０２２４】
図２において、ウェアラブルカメラ１０００の光軸方向１０１７が撮像者１００３の正面方向と同じ方向であるとすると、撮像者が正対している被写体は、レンズ中心部に撮像される可能性が高い。そして、撮像者１００３が正対している被写体は、撮像者１００３が興味を持っている被写体だと考えられる。このため、被写体が映るレンズ中心部に対応する領域については、画素の露光時間を長くして、高感度に撮像することが効果的である。一方、光源は、屋外では太陽光や街灯、また屋内では天井に敷設された照明などが考えられるため、レンズの周辺部に撮像される可能性が高い。このため、レンズ周辺部に対応する領域では、画素の露光時間をレンズ中心部よりも短くすることによって、輝度値の高い光源画素が飽和する可能性を低くすることが可能である。
【０２２５】
もちろん、ウェアラブルカメラ１０００の光軸方向１０１７が撮像者１００３の正面方向と異なっている場合、撮像者１００３の正面方向に対応する画素の露光時間を相対的に長くするようにすればよい。撮像者１００３の正面方向を検出するには、例えば、撮像者１００３がウェアラブルカメラ１０００を装着した際に、撮像者１００３が正面方向をウェアラブルカメラ１０００に指示するようにすればよい。
【０２２６】
また、画像高解像度化部１０４は、高解像度化の拡大倍率を、画像の領域毎に、異なる値に設定するようにしてもかまわない。
【０２２７】
広角画像を撮像するためには、焦点距離の短い広角レンズや魚眼レンズなどを利用する必要がある。しかし、これらのレンズはレンズ歪みの影響が大きいため、レンズ中心部と周辺部とで分解能が一様ではなくなる。通常、レンズ中心部の分解能が最も高く、周辺部へ行くほど低分解能になる。このため、レンズ周辺部に対応する領域に対する拡大倍率を、レンズ中心部に対応する領域に対して高く設定するようにしてもよい。これにより、分解能が一様な拡大画像を生成することができる。
【０２２８】
上述のように、撮像者が正対している被写体はレンズ中心部に撮像される可能性が高い。そして、撮像者に正対している被写体は、撮像者が興味を持っている被写体だと考えられる。一方、光源は、屋外では太陽光や街灯、また屋内では天井に敷設された照明などが考えられるため、レンズの周辺部に撮像される可能性が高い。通常、２ｘ２倍以上の画像の高解像度化処理を行うと、拡大倍率を高くすればするほど、画像がぼやけて画質が劣化してしまうといった問題が生じる。しかし、レンズ中心部の拡大倍率を周辺部に比べて低くすることによって、撮像者が興味を持っている被写体の画質の劣化を抑えながら、広角画像を高解像度化することができる。
【０２２９】
また、分解能が低い領域の拡大倍率を、分解能が高い領域に比べて高くすることによって、分解能が一様な拡大画像を生成するようにしてもかまわない。
【０２３０】
また、広角画像を撮影するために、反射ミラーを利用する方法が知られている（例えば、特許第２９３９０８７号公報参照）。このような撮像装置を利用する場合も、やはり、分解能は画像内で一様ではなくなる。そこで、撮像画像内の分解能を検出し、その結果に基づいて、分解能が低い領域の拡大倍率を、分解能が高い領域に比べて高く設定することによって、分解能が一様な拡大画像を生成するようにしてもかまわない。
【０２３１】
撮像画像内の分解能を検出するためには、広く知られているカメラキャリブレーションを行うことによって、カメラの内部パラメータを取得すればよい。これは、内部パラメータである、焦点距離や焦点位置、レンズの歪み、さらには撮像素子のサイズなどの情報を利用することによって、撮像装置の画素毎の撮影範囲を推定することができるためである。
【０２３２】
以上のように本実施形態によると、被写体を、広角画像を撮像可能な撮像装置を用いて、自動的に連続して撮像するので、被写体画像と併せて光源画像を得ることができる。すなわち、被写体を撮像したその時の光源画像を正確に取得することができる。そして、撮像された広角画像と、撮像が行われたときの撮像装置情報とを用いて、光源の位置、色および照度を含む光源情報を推定し、推定された光源情報を用いて、広角画像を高解像度化することができる。すなわち、被写体撮像用以外の付加的な撮像装置を搭載することなく、光源画像を取得し、画像の高解像度化を実現することが可能となる。さらに、被写体と光源が一枚の画像として取得できるため、光源位置と被写体との位置合わせにわずらわされることもない。
【０２３３】
（第２の実施形態）
図３３は本発明の第２の実施形態に係る画像処理装置の構成を示すブロック図である。図３３において、図１に示す本発明の第１の実施形態に係る画像処理装置と共通の構成要素には、同一の符号を付しており、ここではその詳細な説明を省略する。
【０２３４】
図３３の構成は、図１の構成に加え、光源環境判定部１０５を有する。光源環境判定部１０５は、撮像装置１００１に対する光源環境が変化したか否かを判定し、光源情報推定部１０３は、光源環境判定部１０５によって光源環境が変化したと判定されたとき、光源情報の推定を行う。
【０２３５】
具体的には例えば、光源環境判定部１０５は、撮像装置１００１が移動したか否かを判定し、移動したとき、撮像装置１００１に対する光源環境が変化したと判定する。上述のように、光源情報として光源の位置を推定する場合、撮像装置１００１の位置や姿勢が変化した２画像が必要である。そこで、撮像装置１００１が移動した場合にのみ光源情報推定部１０３によって光源推定処理を行うことによって、効率的な光源推定処理を行うことが可能となる。
【０２３６】
光源環境判定部１０５は例えば、撮像装置１００１に搭載された角度センサ１０２０の出力から、撮像装置１００１が移動したか否かを判定する。すなわち、角度センサ１０２０の出力が変化したとき、撮像装置１００１が移動したと判定すればよい。また、撮像装置１００１に角速度センサや加速度センサが搭載されている場合は、その出力の変化を検出したとき、撮像装置１００１が移動したと判定すればよい。
【０２３７】
また、角度センサ１０２０の出力を利用する代わりに、広角画像撮像部１０１が撮像した画像を用いて、撮像装置１００１が移動したか否かを判定してもよい。例えば、時系列に撮像された広角画像の差分を求め、差分画像を合成し、変化量が大きい場合に、撮像装置１００１が移動したと判定すればよい。あるいは、広角画像から、上述の８点法などを利用して、撮像装置１００１の移動量や姿勢の変化量を求めるようにしてもかまわない。
【０２３８】
また、光源環境判定部１０５は、上述した光源画素の情報を利用して、撮像装置１００１に対する光源環境が変化したか否かを判定するようにしてもかまわない。すなわち、光源画素の輝度値や位置が変化した場合、光源環境が変化している可能性が高いと判断できる。このため、広角画像から光源画素のみを抽出し、その位置や輝度値に変化があったとき、光源環境が変化したと判定し、光源情報推定処理を行うようにすればよい。
【０２３９】
以上のように本実施形態によると、撮像装置に対する光源環境が変化したか否かを判定し、光源環境が変化したと判定されたとき、光源情報の推定を行うので、効率的に、光源情報を推定し、撮像画像を高解像度化することができる。
【０２４０】
（第３の実施形態）
図３４は本発明の第３の実施形態に係る画像処理装置の構成を示すブロック図である。図３４において、図１に示す第１の実施形態に係る画像処理装置と共通の構成要素には、同一の符号を付しており、ここではその詳細な説明を省略する。
【０２４１】
図３４の構成は、図１の構成に加え、推定光源情報判定部１０６を有する。推定光源情報判定部１０６は、光源情報推定部１０３が光源情報を正確に推定しているか否かを判定する。推定光源情報判定部１０６によって、光源情報が正確に推定されていないと判定されたとき、光源情報推定部１０３は再度、光源情報の推定処理を行う。
【０２４２】
推定光源情報判定部１０６の処理について説明する。ここでは、ＧＰＳ（Global Positioning System）センサと時刻情報とを利用する手法を説明する。晴天の昼間に屋外で撮像が行われている場合、光源として、太陽光が存在すると考えられる。そこで、太陽光の方向または太陽の位置を推定し、推定した方向または位置を、光源情報推定部１０３によって推定された光源情報と対比する。これによって、光源情報が正確に推定されているか否かを判定する。太陽光の推定は、撮像装置１００１に設置されたＧＰＳセンサ１０２４の出力と、例えば、電波時計１０２５などを利用して取得した時刻情報とから、行えばよい。
【０２４３】
また、ＧＰＳ情報を利用して、撮像者周囲の建物の状況を地図情報から利用するようにしても構わない。建物の状況から、太陽光が遮断されているか否かを判断することができる。
【０２４４】
また、推定光源情報判定部１０６は、被写体の形状情報を利用してもかまわない。これは、被写体の形状情報と光源情報推定部１０３が推定した光源情報とから、被写体の画像を推定し、実際に広角画像撮像部１０１によって撮像された画像と推定した画像とを比較することによって、光源情報が正確に推定されているか否かを判定するものである。
【０２４５】
この処理を詳述する。撮像装置１００１に前述の形状情報取得部２０４が搭載されている場合、被写体の形状情報である被写体表面の法線情報、撮像装置１００１からの距離情報、被写体の３次元位置情報などが取得できる。そこで、被写体表面の法線情報または被写体の３次元位置情報と、光源情報、さらにはカメラパラメータ情報を用いて、図３５に示すように、観察点Ｏにおける法線方向、視線方向、光源方向を取得する。
【０２４６】
図３５は観察点Ｏと撮像装置１００１および光源１００５との位置関係を示す模式図である。ここで、視線方向Ｖと法線方向ｎとのなす角をθＶ、光源方向Ｌと法線方向ｎとのなす角をθＬとする。ここで、以下の関係を満たす画素は、光が正反射を起こしている画素となり、その輝度値が非常に高くなることが知られている。
○θＬ＝θＶ
○光源方向Ｌ、法線方向ｎ、視線方向Ｖが同一平面上に存在
【０２４７】
そこで、上記の条件を満たす画素を広角画像撮像部１０１によって撮像された画像から検出し、その輝度値が、十分に大きい、または近傍画素の輝度値よりも十分に大きい場合、光源情報推定部１０３は光源情報を正確に推定していると判定する。一方、検出した画素の輝度値が、十分に大きくない、または近傍画素の輝度値よりも小さい場合、光源情報推定部１０３が推定した光源情報は誤っていると判定する。
【０２４８】
また、推定光源情報判定部１０６は、広角画像撮像部１０１によって撮像された画像の色情報を、光源情報推定部１０３によって推定された光源の色と対比することによって、光源情報が正確に推定されているか否かを判定するようにしてもよい。
【０２４９】
例えば、推定された光源の色と、鏡面反射成分の色情報とを比較する。まず、被写体は誘電体であるとする。このとき、広角画像撮像部１０１によって撮像された画像を、拡散反射・鏡面反射分離部２０２の説明で述べた手法を利用して、鏡面反射成分と拡散反射成分とに分離する。ここで、分離された鏡面反射成分の色情報は、光源の色情報と等しいことが知られている。そこで、分離された鏡面反射成分の色情報と、光源情報推定部１０３が推定した光源の色とを比較し、十分に近い場合、光源情報推定部１０３が推定した光源情報が正しいと判断する。一方、色情報が十分に近くない場合、光源情報推定部１０３が推定した光源情報が誤っていると判断する。あるいは、分離された鏡面反射成分の色情報と、光源画素の色情報とを比較するようにしても構わない。
【０２５０】
また、もちろん、光源の色情報と拡散反射成分の色情報とを比較するようにしてもかまわない。拡散反射成分の色情報は、被写体固有の色情報と光源の色情報とにより決定される。そのため、光源の色情報と拡散反射の色情報とが補色の関係になることはありえない。そのため、例えば光源色は青であるが、拡散反射の色は黄であるというように、光源の色情報と拡散反射の色情報とが補色の関係にある場合は、光源情報推定部１０３が推定した光源情報が誤っていると判断する。この処理はもちろん、光源の色情報と、広角画像撮像部１０１によって撮像された画像の色情報を利用してもかまわない。
【０２５１】
また、推定光源情報判定部１０６によって、推定された光源情報が誤っていると判断された場合、そのときの広角画像にマーキングを行い、以後の処理において、その広角画像を光源推定に用いないようにしてもかまわない。これは、編集処理のように、光源情報推定部１０３が、広角画像撮像部１０１が撮像を行ったときでなく、後で推定を行う場合に有効である。
【０２５２】
以上のように本実施形態によると、光源情報が正確に推定されているか否かを判定し、光源情報が正確に推定されていないと判定されとき、再度、光源情報の推定が行われるので、正確な光源情報が確実に推定されることとなり、撮像画像を精度良く高解像度化することができる。
【０２５３】
（第４の実施形態）
図３６は本発明の第４の実施形態に係る画像処理システムの構成を示すブロック図である。図３６において、図１に示す第１の実施形態に係る画像処理装置と共通の構成要素には、同一の符号を付しており、ここではその詳細な説明を省略する。
【０２５４】
図３６では、通信機能を有した通信端末１１００に、広角画像撮像部１０１と撮像装置情報取得部１０２が設けられている。そして、光源情報推定部１０３と画像高解像度化部１０４は、通信端末１１００とネットワークで接続された外部の装置であるサーバ１１０１に設けられている。すなわち、本実施形態では、通信端末１０００側では、全ての処理を行うのではなく、広角画像と撮像装置情報の取得のみを行い、光源情報の推定と画像の高解像度化はサーバ１１０１側で実行する。
【０２５５】
サーバ１１０１と通信端末１１００は互いに離れた位置にあり、サーバ１１０１はネットワークを介して通信端末１１００と通信を行う。通信端末１０００は情報送信部１０７を有し、情報送信部１０７は、広角画像撮像部１０１が撮像した広角画像と撮像装置情報取得部１０２が取得した撮像装置情報とをサーバ１１０１に送信する。また、通信端末１１００はサーバ１１０１に、光源情報の推定および画像の高解像度化の内容を指示する。
【０２５６】
サーバ１１０１は情報受信部１０８を有し、情報受信部１０８は、通信端末１１００の情報送信部１０７が送信した広角画像および撮像装置情報を受信する。光源情報取得部１０３は、受信された広角画像および撮像装置情報を用いて、光源情報を推定する。さらに、画像高解像度化部１０４は、受信した広角画像を、光源情報推定部１０３が推定した光源情報を用いて、高解像度化する。光源情報の推定および画像の高解像度化は、通信端末１１００から指示された内容に従って行われる。
【０２５７】
このように、光源情報推定部１０３と画像高解像度化部１０４をサーバ１１０１に設けることによって、通信端末１１００の計算負荷を軽くすることが可能である。
【０２５８】
本発明の画像処理方法は、画像の高解像度化以外の画像処理に関しても有効である。ここでは、Ｃｏｍｐｕｔｅｒ−Ｇｒａｐｈｉｃｓで作成された画像（ＣＧ画像）を重畳表示する拡張現実表示について説明する。
【０２５９】
Ｃｏｍｐｕｔｅｒ−Ｇｒａｐｈｉｃｓで作成された画像を重畳表示する場合、ＣＧ画像を、違和感のない明るさ、色合い、陰影でもって実画像に重ね込むことが重要である（例えば、特許文献１を参照）。本発明の画像処理方法では、光源の位置や方向、輝度、色、スペクトル情報を正確に取得することができるため、このような処理が可能である。この場合、画像高解像度化部１０４に代えて、ＣＧ画像を実画像に重畳表示する手段を設ければよい。このような重畳表示の方法は、例えば、特許文献１のような公知の方法を利用すればよい。
【０２６０】
以上のように、本発明の画像処理装置を利用することによって、高解像度なデジタルズーム処理などの画像処理を行うことができる。
【産業上の利用可能性】
【０２６１】
本発明によると、付加的な撮像装置を搭載することなく、光源画像を取得し、光源情報を推定することが可能となる。このため、例えば、人や車など移動体に取り付けたデジタルカメラやデジタルビデオカメラにおいて、画像の高解像度化などの画象処理を行うのに有用である。
【図面の簡単な説明】
【０２６２】
【図１】本発明の第１の実施形態に係る画像処理装置の構成を示すブロック図である。
【図２】本発明に係る画像処理装置が搭載された機器としてのウェアラブルカメラの利用形態を示す模式図である。
【図３】撮像された広角画像を示す模式図である。
【図４】メモリに保持された情報の一部を示す模式図である。
【図５】ロール・ピッチ・ヨー角表現を説明するための模式図である。
【図６】カメラ座標系と画像座標系との関係を説明するための模式図である。
【図７】撮像装置が移動することを利用して、光源の３次元位置を推定する処理を説明するための模式図である。
【図８】画像を拡散反射画像と鏡面反射画像とに分離した例を示す図である。
【図９】画像高解像度化部の構成例を示すブロック図である。
【図１０】本発明の実施形態に係る画像処理装置が搭載されたウェアラブルカメラを示す図である。
【図１１】直線偏光光を照射した際、偏光フィルタを回転させたときの反射光強度の変化を示すグラフである。
【図１２】偏光フィルタを利用した、鏡面反射画像と拡散反射画像との分離処理の流れを示すフローチャートである。
【図１３】画素ごとに偏光方向が異なる撮像装置を説明するための模式図である。
【図１４】照度差ステレオ法を利用して、被写体の距離や３次元位置を求める処理を説明するための模式図である。
【図１５】反射光の偏光特性を利用した形状情報の取得処理を説明するための模式図である。
【図１６】自然光を照射した際、偏光フィルタを回転させたときの反射光強度の変化を示すグラフである。
【図１７】テキストンに基づく高解像度化処理の概念を示す模式図である。
【図１８】線形マトリクス変換を利用したテキストンに基づく高解像度化処理を説明するための概念図である。
【図１９】テキストンに基づく高解像度化処理における学習処理の流れを示すＰＡＤ図である。
【図２０】テキストンに基づく高解像度化処理における学習処理を説明するための模式図である。
【図２１】２次元離散定常ウェーブレット変換の処理を示す図である。
【図２２】２次元離散定常ウェーブレット変換をテスト画像に実施した場合の画像結果例である。
【図２３】テキストンに基づく高解像度化処理における実行時の処理の流れを示すＰＡＤ図である。
【図２４】テキストンに基づく高解像度化処理における実行時の処理を説明するための模式図である。
【図２５】２次元離散定常逆ウェーブレット変換の処理を示す図である。
【図２６】拡散反射成分と鏡面反射成分の輝度値の違いを表現するための定数Ｓrを説明するための模式図である。
【図２７】画像高解像度化処理における鏡面反射画像のパラメータ推定処理の流れを示す図である。
【図２８】入射照度を表す式の各パラメータを説明するための概念図である。
【図２９】シンプレックス法によるパラメータ推定処理の流れを示すフローチャートである。
【図３０】シンプレックス法におけるパラメータ更新処理の流れを示したフローチャートである。
【図３１】極座標表現を説明するための模式図である。
【図３２】画像高解像度化処理における拡散反射画像のパラメータ推定処理の流れを示す図である。
【図３３】本発明の第２の実施形態に係る画像処理装置の構成を示すブロック図である。
【図３４】本発明の第３の実施形態に係る画像処理装置の構成を示すブロック図である。
【図３５】被写体の観察点と撮像装置および光源との位置関係を示す模式図である。
【図３６】本発明の第４の実施形態に係る画像処理システムの構成を示すブロック図である。
【符号の説明】
【０２６３】
１０１  広角画像撮像部
１０２  撮像装置情報取得部
１０３  光源情報推定部
１０４  画像高解像度化部
１０５  光源環境判定部
１０６  推定光源情報判定部
２０４  形状情報取得部
１００１  撮像装置
１０２０  角度センサ
１０２４  ＧＰＳセンサ
１１００  通信端末
１１０１  サーバ
【図１】
2008016918.tif 000090
【図２】
2008016918.tif 000091
【図３】
2008016918.tif 000092
【図４】
2008016918.tif 000093
【図５】
2008016918.tif 000094
【図６】
2008016918.tif 000095
【図７】
2008016918.tif 000096
【図９】
2008016918.tif 000097
【図１０】
2008016918.tif 000098
【図１１】
2008016918.tif 000099
【図１２】
2008016918.tif 000100
【図１３】
2008016918.tif 000101
【図１４】
2008016918.tif 000102
【図１５】
2008016918.tif 000103
【図１６】
2008016918.tif 000104
【図１７】
2008016918.tif 000105
【図１８】
2008016918.tif 000106
【図１９】
2008016918.tif 000107
【図２０】
2008016918.tif 000108
【図２１】
2008016918.tif 000109
【図２３】
2008016918.tif 000110
【図２４】
2008016918.tif 000111
【図２５】
2008016918.tif 000112
【図２６】
2008016918.tif 000113
【図２７】
2008016918.tif 000114
【図２８】
2008016918.tif 000115
【図２９】
2008016918.tif 000116
【図３０】
2008016918.tif 000117
【図３１】
2008016918.tif 000118
【図３２】
2008016918.tif 000119
【図３３】
2008016918.tif 000120
【図３４】
2008016918.tif 000121
【図３５】
2008016918.tif 000122
【図３６】
2008016918.tif 000123
【図８】
2008016918.tif 000124
【図２２】
2008016918.tif 000125