(57)【要約】【課題】被写体を適切に三次元モデリングする。【解決手段】受付部１１は、ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける。生成部１２は、複数の画像の組に基づく、被写体の複数の三次元モデルを生成する。選択部１３は、被合成三次元モデルと合成三次元モデルとを選択する。分割部１４は、選択された合成三次元モデルを、複数の合成領域に分割する。特定部１５は、複数の合成領域に対応する、被合成三次元モデル中の複数の被合成領域を特定する。取得部１６は、複数の合成領域を、複数の被合成領域に重ねるための複数の座標変換パラメータを取得する。変換部１７は、複数の合成領域を、取得された複数の座標変換パラメータに基づいて座標変換する。更新部１８は、座標変換後の複数の合成領域を、特定された複数の被合成領域に合成する。【選択図】図３
2011192228.tif 000002
【特許請求の範囲】
【請求項１】
ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付手段と、
それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成手段と、
前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択手段と、
前記選択された合成三次元モデルを、複数の合成領域に分割する分割手段と、
それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定手段と、
それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得手段と、
前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換手段と、
前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新手段と、を備える、
ことを特徴とする三次元モデリング装置。
【請求項２】
前記選択手段は、前記更新手段による前記被合成三次元モデルの更新がなされた後、当該更新された被合成三次元モデルを新たな被合成三次元モデルとして選択するとともに、前記生成された複数の三次元モデルの中から、未選択の三次元モデルを新たな合成三次元モデルとして選択する、
ことを特徴とする請求項１に記載の三次元モデリング装置。
【請求項３】
前記分割手段は、さらに、前記選択された被合成三次元モデルを、複数の被合成領域に分割し、
前記特定手段は、前記分割手段により得られた複数の被合成領域の中から、前記複数の合成領域に対応する複数の被合成領域を選択する、
ことを特徴とする請求項１または２に記載の三次元モデリング装置。
【請求項４】
前記更新手段は、前記変換手段による座標変換後の複数の合成領域の境界面からのユークリッド距離と、前記特定された複数の被合成領域の境界面からのユークリッド距離と、が一致する面が新たな被合成三次元モデルを構成する面となるように、前記被合成三次元モデルを更新する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の三次元モデリング装置。
【請求項５】
前記分割手段は、それぞれが、前記選択された合成三次元モデルに設定された複数の始点のいずれかを中心とする複数の領域を、相互に重複するまで拡大したときに得られる複数の領域が、前記複数の合成領域となるように、前記選択された合成三次元モデルを分割する、
ことを特徴とする請求項１乃至４のいずれか１項に記載の三次元モデリング装置。
【請求項６】
前記特定手段は、前記複数の合成領域に含まれる特徴点と、前記被合成三次元モデルに含まれる特徴点と、の関係に基づいて、前記複数の被合成領域を特定する、
ことを特徴とする請求項１乃至５のいずれか１項に記載の三次元モデリング装置。
【請求項７】
受付手段、生成手段、選択手段、分割手段、特定手段、取得手段、変換手段、更新手段を備える三次元モデリング装置が実行する三次元モデリング方法であって、
前記受付手段が、ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付ステップと、
前記生成手段が、それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成ステップと、
前記選択手段が、前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択ステップと、
前記分割手段が、前記選択された合成三次元モデルを、複数の合成領域に分割する分割ステップと、
前記特定手段が、それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定ステップと、
前記取得手段が、それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得ステップと、
前記変換手段が、前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換ステップと、
前記更新手段が、前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新ステップと、を備える、
ことを特徴とする三次元モデリング方法。
【請求項８】
コンピュータを、
ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付手段、
それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成手段、
前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択手段、
前記選択された合成三次元モデルを、複数の合成領域に分割する分割手段、
それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定手段、
それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得手段、
前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換手段、
前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新手段、として機能させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体を適切に三次元モデリングするのに好適な三次元モデリング装置、三次元モデリング方法、ならびに、これらをコンピュータ上で実現するためのプログラムに関する。
【背景技術】
【０００２】
人間、動物、あるいは、美術品などの被写体をステレオカメラを用いて撮像し、撮像により得られた一組の画像に基づいて、被写体の三次元モデルを生成する技術が知られている。このような技術は、例えば、特許文献１に開示されている。
【０００３】
ステレオカメラによる一回の撮像により得られる一組の画像からは、一つの三次元モデルが生成される。従って、ステレオカメラを用いて異なる角度から被写体を複数回撮像することにより得られる複数組の画像からは、複数の三次元モデルが生成される。そして、生成された複数の三次元モデルが合成されると、被写体の正確な三次元モデルが得られる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第２９５３１５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ステレオカメラによる複数回の撮像の間に被写体の一部が動く場合、生成された複数の三次元モデルを適切に合成できなかった。つまり、三次元モデルの合成が可能な被写体は、静止している被写体に限られていた。このため、一部が動いている被写体を撮像して得られた複数組の画像に基づいて、当該被写体を三次元モデリングすることが可能な画像処理装置が望まれている。
【０００６】
本発明は、上記問題に鑑みてなされたものであり、被写体を適切に三次元モデリングするのに好適な三次元モデリング装置、三次元モデリング方法、ならびに、これらをコンピュータ上で実現するためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の第１の観点に係る三次元モデリング装置は、
ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付手段と、
それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成手段と、
前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択手段と、
前記選択された合成三次元モデルを、複数の合成領域に分割する分割手段と、
それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定手段と、
それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得手段と、
前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換手段と、
前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新手段と、を備えることを特徴とする。
【０００８】
前記選択手段は、前記更新手段による前記被合成三次元モデルの更新がなされた後、当該更新された被合成三次元モデルを新たな被合成三次元モデルとして選択するとともに、前記生成された複数の三次元モデルの中から、未選択の三次元モデルを新たな合成三次元モデルとして選択してもよい。
【０００９】
前記分割手段は、さらに、前記選択された被合成三次元モデルを、複数の被合成領域に分割し、
前記特定手段は、前記分割手段により得られた複数の被合成領域の中から、前記複数の合成領域に対応する複数の被合成領域を選択してもよい。
【００１０】
前記更新手段は、前記変換手段による座標変換後の複数の合成領域の境界面からのユークリッド距離と、前記特定された複数の被合成領域の境界面からのユークリッド距離と、が一致する面が新たな被合成三次元モデルを構成する面となるように、前記被合成三次元モデルを更新してもよい。
【００１１】
前記分割手段は、それぞれが、前記選択された合成三次元モデルに設定された複数の始点のいずれかを中心とする複数の領域を、相互に重複するまで拡大したときに得られる複数の領域が、前記複数の合成領域となるように、前記選択された合成三次元モデルを分割してもよい。
【００１２】
前記特定手段は、前記複数の合成領域に含まれる特徴点と、前記被合成三次元モデルに含まれる特徴点と、の関係に基づいて、前記複数の被合成領域を特定してもよい。
【００１３】
上記目的を達成するために、本発明の第２の観点に係る三次元モデリング方法は、
受付手段、生成手段、選択手段、分割手段、特定手段、取得手段、変換手段、更新手段を備える三次元モデリング装置が実行する三次元モデリング方法であって、
前記受付手段が、ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付ステップと、
前記生成手段が、それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成ステップと、
前記選択手段が、前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択ステップと、
前記分割手段が、前記選択された合成三次元モデルを、複数の合成領域に分割する分割ステップと、
前記特定手段が、それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定ステップと、
前記取得手段が、それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得ステップと、
前記変換手段が、前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換ステップと、
前記更新手段が、前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新ステップと、を備えることを特徴とする。
【００１４】
上記目的を達成するために、本発明の第３の観点に係るプログラムは、
コンピュータを、
ステレオカメラを用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける受付手段、
それぞれが、前記受け付けられた複数の画像の組のいずれかに基づく、前記被写体の複数の三次元モデル、を生成する生成手段、
前記生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する選択手段、
前記選択された合成三次元モデルを、複数の合成領域に分割する分割手段、
それぞれが、前記複数の合成領域のうちのいずれかに対応する、前記被合成三次元モデル中の複数の被合成領域、を特定する特定手段、
それぞれが、前記複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する取得手段、
前記複数の合成領域を、前記取得された複数の座標変換パラメータに基づいて座標変換する変換手段、
前記変換手段による座標変換後の複数の合成領域を、前記特定された複数の被合成領域に合成することにより、前記被合成三次元モデルを更新する更新手段、として機能させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、被写体を適切に三次元モデリングするのに好適な三次元モデリング装置、三次元モデリング方法、ならびに、これらをコンピュータ上で実現するためのプログラムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】（Ａ）は、本発明の第１の実施形態に係るステレオカメラの前面の様子を表す外観図である。（Ｂ）は、本発明の第１の実施形態に係るステレオカメラの背面の様子を表す外観図である。
【図２】本発明の第１の実施形態に係るステレオカメラの構成を示すブロック図である。
【図３】本発明の第１の実施形態に係るステレオカメラの主要部の構成を示すブロック図である。
【図４】（Ａ）〜（Ｃ）は、ステレオカメラを用いて被写体を撮像する手法を説明するための図である。
【図５】本発明の第１の実施形態に係るステレオカメラが実行する三次元モデリング処理を示すフローチャートである。
【図６】図５に示す領域分割処理を示すフローチャートである。
【図７】（Ａ）〜（Ｃ）は、合成三次元モデルを複数の合成領域に領域分割する手法を説明するための図である。（Ｄ）は、被合成三次元モデルが複数の被合成領域に領域分割された様子を示す図である。（Ｅ）は、被合成領域を座標変換する手法を説明するための図である。（Ｆ）は、被合成領域に合成領域が重ねられた様子を示す図である。（Ｇ）は、合成後のモデリング面を説明するための図である。
【図８】図５に示す三次元モデル合成処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本発明の実施形態に係る三次元モデリング装置について説明する。
【００１８】
（第１の実施形態）
第１の実施形態においては、本発明を、デジタル式のステレオカメラに適用する例を示す。本実施形態においては、ステレオカメラは、シャッターボタンが押圧されてから、当該シャッターボタンが再度押圧されるまでの間、被写体を撮像する処理と、当該被写体の三次元モデルを更新する処理と、を繰り返し実行する。まず、図１（Ａ）、（Ｂ）を参照して、本発明の第１の実施形態に係るステレオカメラ１０００の外観について説明する。
【００１９】
図１（Ａ）に示すように、ステレオカメラ１０００の前面には、レンズ１１１Ａと、レンズ１１１Ｂと、ストロボ発光部４００と、が設けられている。また、図１（Ａ）に示すように、ステレオカメラ１０００の上面には、シャッターボタン３３１が設けられている。さらに、図１（Ｂ）に示すように、ステレオカメラ１０００の背面には、表示部３１０と、操作キー３３２と、電源キー３３３と、が設けられている。
【００２０】
レンズ１１１Ａとレンズ１１１Ｂとは、所定の間隔を隔てて、平行に設けられている。
【００２１】
表示部３１０は、電源キー、操作キー、電子ビューファインダーとして機能するＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）から構成される。
【００２２】
シャッターボタン３３１は、被写体の撮像を開始、または、被写体の撮像を終了する際に、押圧されるべきボタンである。つまり、ステレオカメラ１０００は、シャッターボタン３３１が押圧された後、再度、シャッターボタン３３１が押圧されるまで、被写体の撮像を繰り返す。
【００２３】
操作キー３３２は、ユーザから各種の操作を受け付ける。操作キー３３２は、十字キーや決定キーを含み、モード切替や表示切替等の操作に用いられる。
【００２４】
電源キー３３３は、ステレオカメラ１０００の電源をオン・オフする際に押圧されるべきキーである。
【００２５】
ストロボ発光部４００は、被写体に向けてストロボ光を照射する。ストロボ発光部４００の構成については、後述する。
【００２６】
ここで、図２を参照して、ステレオカメラ１０００の電気的構成について説明する。
【００２７】
図２に示すように、ステレオカメラ１０００は、第１撮像部１００Ａと、第２撮像部１００Ｂと、データ処理部２００と、インターフェース部３００と、ストロボ発光部４００と、を備える。なお、図面において、適宜、インターフェース部のことをＩ／Ｆ部と表記する。
【００２８】
第１撮像部１００Ａと第２撮像部１００Ｂとは、被写体を撮像する部分である。ステレオカメラ１０００は、ステレオカメラであるため、第１撮像部１００Ａと第２撮像部１００Ｂとの２つの撮像部を有する構成であるが、第１撮像部１００Ａと第２撮像部１００Ｂとは同一の構成である。なお、第１撮像部１００Ａについての構成には参照符号の末尾に「Ａ」を付し、第２撮像部１００Ｂについての構成には参照符号の末尾に「Ｂ」を付す。
【００２９】
図２に示すように、第１撮像部１００Ａは、光学装置１１０Ａとイメージセンサ部１２０Ａとを備え、第２撮像部１００Ｂは、光学装置１１０Ｂとイメージセンサ部１２０Ｂとを備える。光学装置１１０Ｂは、光学装置１１０Ａと同様の構成であり、イメージセンサ部１２０Ｂはイメージセンサ部１２０Ａと同様の構成である。従って、以下、光学装置１１０Ａおよびイメージセンサ部１２０Ａの構成についてのみ説明する。
【００３０】
光学装置１１０Ａは、例えば、レンズ１１１Ａ、絞り機構、シャッタ機構、などを含み、撮像にかかる光学的動作を行う。すなわち、光学装置１１０Ａの動作により、入射光が集光されるとともに、焦点距離、絞り、シャッタスピードなどといった、画角やピント、露出などにかかる光学的要素の調整がなされる。なお、光学装置１１０Ａに含まれるシャッタ機構はいわゆるメカニカルシャッタであり、イメージセンサ部１２０Ａの動作のみでシャッタ動作がなされる場合には、光学装置１１０Ａにシャッタ機構が含まれていなくてもよい。また、光学装置１１０Ａは、後述する制御部２１０による制御によって動作する。
【００３１】
イメージセンサ部１２０Ａは、光学装置１１０Ａによって集光された入射光に応じた電気信号を生成する。例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ：電荷結合素子）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｌｌｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ：相補型金属酸化物半導体）などのイメージセンサから構成される。イメージセンサ部１２０Ａは、光電変換をおこなうことで、受光に応じた電気信号を発生し、データ処理部２００に出力する。
【００３２】
なお、上述したように、第１撮像部１００Ａと第２撮像部１００Ｂとは同一の構成である。従って、レンズの焦点距離ｆやＦ値、絞り機構の絞り範囲、イメージセンサのサイズや画素数、配列、画素面積などの仕様は、すべて同一である。
【００３３】
このような第１撮像部１００Ａと第２撮像部１００Ｂとを有するステレオカメラ１０００は、図１（Ａ）に示すように、光学装置１１０Ａに構成されたレンズ１１１Ａと光学装置１１０Ｂに構成されたレンズ１１１Ｂとが、ステレオカメラ１０００の外面における同一平面上に形成された構成とする。ここでは、シャッターボタン３３１が上になる方向でステレオカメラ１０００を水平にした場合に、中心位置が水平方向に伸びる同一の線上となるように２つのレンズ（受光部）が配置されるものとする。つまり、第１撮像部１００Ａと第２撮像部１００Ｂとを同時に動作させた場合、同一被写体についての２つの画像（以下、適宜「ペア画像」という。）が撮像されることになるが、各画像における光軸位置は、横方向にずれることになる。ステレオカメラ１０００は、いわゆる平行ステレオカメラの構成である。
【００３４】
データ処理部２００は、第１撮像部１００Ａおよび第２撮像部１００Ｂによる撮像動作によって生成された電気信号を処理し、撮像された被写体の画像を示すデジタルデータを生成するとともに、当該画像に対する画像処理等を行う。図２に示すように、データ処理部２００は、制御部２１０、画像処理部２２０、画像メモリ２３０、画像出力部２４０、記憶部２５０、外部記憶部２６０などから構成される。
【００３５】
制御部２１０は、例えば、ＣＰＵ(Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央演算処理部）などのプロセッサや、ＲＡＭ(Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ)などの主記憶装置(メモリ)、などから構成され、後述する記憶部２５０などに格納されているプログラムを実行することで、ステレオカメラ１０００の各部を制御する。
【００３６】
画像処理部２２０は、例えば、ＡＤＣ（Ａｎａｌｏｇ−Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ：アナログ・デジタル変換器）、バッファメモリ、画像処理用のプロセッサ（いわゆる、画像処理エンジン）などから構成され、イメージセンサ部１２０Ａおよび１２０Ｂによって生成された電気信号に基づいて、撮像された被写体の画像を示すデジタルデータ（以下、適宜「画像データ」という。）を生成する。
【００３７】
すなわち、ＡＤＣは、イメージセンサ部１２０Ａおよびイメージセンサ部１２０Ｂから出力されたアナログ電気信号を、デジタル信号に変換して順次バッファメモリに格納する。一方、画像処理部２２０は、バッファされたデジタルデータに対し、いわゆる現像処理などを行うことで、画質の調整やデータ圧縮などをおこなう。
【００３８】
画像メモリ２３０は、例えば、ＲＡＭやフラッシュメモリなどの記憶装置から構成され、画像処理部２２０によって生成された画像データや、制御部２１０によって処理される画像データなどを一時的に格納する。
【００３９】
画像出力部２４０は、例えば、ＲＧＢ信号の生成回路などから構成され、画像メモリ２３０に展開された画像データをＲＧＢ信号に変換して表示画面（後述する表示部３１０など）に出力する。
【００４０】
記憶部２５０は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリなどの記憶装置から構成され、ステレオカメラ１０００の動作に必要なプログラムやデータなどを格納する。本実施形態では、制御部２１０などが実行する動作プログラム、各処理に必要となるパラメータや演算式などが記憶部２５０に格納されているものとする。
【００４１】
外部記憶部２６０は、例えば、メモリカードなどといった、ステレオカメラ１０００に着脱可能な記憶装置から構成され、ステレオカメラ１０００が撮像した画像データ、三次元モデルを表すデータなどを格納する。
【００４２】
インターフェース部３００は、ステレオカメラ１０００とその使用者あるいは外部装置とのインターフェースにかかる構成である。図２に示すように、インターフェース部３００は、表示部３１０、外部インターフェース部３２０、操作部３３０などから構成される。
【００４３】
表示部３１０は、例えば、液晶表示装置などから構成され、ステレオカメラ１０００を操作するために必要な種々の画面や、撮像時のライブビュー画像、撮像された被写体の画像、などを表示する。本実施形態では、画像出力部２４０から供給された画像信号（ＲＧＢ信号）などに基づいて、撮像された被写体の画像や三次元モデル等を表示する。
【００４４】
外部インターフェース部３２０は、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）コネクタやビデオ出力端子などから構成され、外部のコンピュータ装置や外部のモニタ装置へ、画像データなどを出力する。
【００４５】
操作部３３０は、ステレオカメラ１０００の外面上に構成されている各種ボタンなどによって構成され、ステレオカメラ１０００の使用者による操作に応じた入力信号を生成して制御部２１０に供給する。操作部３３０には、例えば、シャッタ動作を指示するためのシャッターボタン３３１、ステレオカメラ１０００の動作モード等の指定や各種機能設定を行なう操作キー３３２、電源キー３３３、が含まれているものとする。
【００４６】
ストロボ発光部４００は、例えば、キセノンランプ（キセノンフラッシュ）により構成される。ストロボ発光部４００は、制御部２１０の制御に従って、被写体にフラッシュを照射する。
【００４７】
ステレオカメラ１０００は、図２に示す全ての構成を備えていなくても良いし、図２に示す構成以外の構成を備えていてもよい。
【００４８】
ここで、図３を参照して、ステレオカメラ１０００の動作のうち、三次元モデリングに係る動作について説明する。
【００４９】
図３は、ステレオカメラ１０００の主要部の構成、つまり、三次元モデリングに係る動作を実現するための構成、を示すブロック図である。
【００５０】
図３に示すように、ステレオカメラ１０００は、受付部１１、生成部１２、選択部１３、分割部１４、特定部１５、取得部１６、変換部１７、更新部１８を備える。これらの要素は、例えば、制御部２１０により構成される。
【００５１】
受付部１１は、ステレオカメラ１０００を用いて、被写体を異なる角度から複数回撮像することにより得られる複数の画像の組の入力を受け付ける。
【００５２】
生成部１２は、それぞれが、受け付けられた複数の画像の組のいずれかに基づく、被写体の複数の三次元モデル、を生成する。
【００５３】
選択部１３は、生成された複数の三次元モデルの中から、被合成三次元モデルと当該被合成三次元モデルに合成する合成三次元モデルとを選択する。
【００５４】
分割部１４は、選択された合成三次元モデルを、複数の合成領域に分割する。
【００５５】
特定部１５は、それぞれが、複数の合成領域のうちのいずれかに対応する、被合成三次元モデル中の複数の被合成領域、を特定する。
【００５６】
取得部１６は、それぞれが、複数の合成領域のうちのいずれかを、当該いずれかの合成領域に対応する被合成領域に重ねるための複数の座標変換パラメータ、を取得する。
【００５７】
変換部１７は、複数の合成領域を、取得された複数の座標変換パラメータに基づいて座標変換する。
【００５８】
更新部１８は、変換部１７による座標変換後の複数の合成領域を、特定された複数の被合成領域に合成することにより、被合成三次元モデルを更新する。
【００５９】
次に、図４（Ａ）〜（Ｃ）を参照して、被写体を撮像する様子について説明する。
【００６０】
ステレオカメラ１０００は、被写体を撮像する毎に、撮像により得られた画像ペアに基づいて合成三次元モデルを生成し、生成した合成三次元モデルを被合成三次元モデルに合成する。ここで、被写体は、撮像毎に異なる角度から撮像される。
【００６１】
本実施形態では、最初の撮像で、図４（Ａ）に示すカメラ位置Ｃ１から被写体５０１が撮像され、２回目の撮像で、図４（Ｂ）に示すカメラ位置Ｃ２から被写体５０１が撮像され、３回目の撮像で、図４（Ｃ）に示すカメラ位置Ｃ３から被写体５０１が撮像されるものとする。ここで、最初の撮像時と３回目の撮像時においては、くまのぬいぐるみを示す被写体５０１の左腕が挙がっておらず、２回目の撮像時においては、被写体５０１の左腕が挙がっているものとする。ステレオカメラ１０００は、このように、撮像中に一部が動いてしまう被写体５０１の三次元モデルを生成することができる。
【００６２】
次に、図５に示すフローチャートを用いて、ステレオカメラ１０００が実行する三次元モデリング処理について説明する。ステレオカメラ１０００は、操作キー３３２などの操作により、動作モードが三次元モデリングモードに設定されると、図５に示す三次元モデリング処理を実行する。
【００６３】
まず、制御部２１０は、シャッターボタン３３１が押圧されたか否かを判別する（ステップＳ１０１）。制御部２１０は、シャッターボタン３３１が押圧されていないと判別すると（ステップＳ１０１：ＮＯ）、再度、ステップＳ１０１の処理を実行する。一方、制御部２１０は、シャッターボタン３３１が押圧されたと判別すると（ステップＳ１０１：ＹＥＳ）、撮像回数カウンタＮを１に初期化する（ステップＳ１０２）。なお、撮像回数カウンタＮは、例えば、記憶部２５０に記憶される。
【００６４】
制御部２１０は、ステップＳ１０２の処理を完了すると、被写体５０１を撮像する（ステップＳ１０３）。制御部２１０により被写体５０１が撮像されると、２枚の平行同位画像（ペア画像）が得られる。取得されたペア画像は、例えば、画像メモリ２３０に記憶される。
【００６５】
制御部２１０は、ステップＳ１０３の処理を完了すると、画像メモリ２３０に記憶されているペア画像に基づいて、三次元モデルを生成する（ステップＳ１０４）。三次元モデル（三次元情報）は、例えば、以下の式（１）〜（３）を用いて、ペア画像から求められる。生成された三次元モデルを示す情報は、例えば、記憶部２５０に記憶される。なお、ペア画像から三次元情報を取得する方法の詳細については、例えば、非特許文献、デジタル画像処理、２００６年３月１日発行、ＣＧ−ＡＲＴＳ協会、に開示されている。
Ｘ＝（ｂ＊ｕ）／（ｕ−ｕ’）  （１）
Ｙ＝（ｂ＊ｖ）／（ｕ−ｕ’）  （２）
Ｚ＝（ｂ＊ｆ）／（ｕ−ｕ’）  （３）
ここで、ｂは、光学装置１１０Ａと１１０Ｂとの間の距離で、基線長と呼ばれる。（ｕ，ｖ）は、光学装置１１０Ａにより撮像された被写体５０１の画像上の座標を示し、（ｕ’，ｖ’）は光学装置１１０Ｂにより撮像された被写体５０１の画像上の座標を示す。式（１）〜（３）における（ｕ−ｕ’）は、光学装置１１０Ａと光学装置１１０Ｂとから、同じ被写体５０１を撮像したときに得られる２つの画像上における被写体５０１の座標の差であり、視差と呼ばれる。ｆは、光学装置１１０Ａの焦点距離を示す。既に説明したとおり、光学装置１１０Ａと１１０Ｂとは同じ構成であり、焦点距離ｆも等しい。
【００６６】
制御部２１０は、ステップＳ１０４の処理を終了すると、撮像回数カウンタＮが１であるか否かを判別する（ステップＳ１０５）。ここで、撮像回数カウンタＮが１であることは、最初の撮像の直後であることを示す。制御部２１０は、撮像回数カウンタＮが１であると判別すると（ステップＳ１０５：ＹＥＳ）、ステップＳ１０４において生成された三次元モデルを、被合成三次元モデルに設定する（ステップＳ１０６）。ここで、被合成三次元モデルは、合成三次元モデルが合成される三次元モデルであって、合成の基礎となる三次元モデルである。
【００６７】
一方、制御部２１０は、撮像回数カウンタＮが１ではない、つまり、最初の撮像の直後ではないと判別すると（ステップＳ１０５：ＮＯ）、領域分割処理を実行する（ステップＳ１０７）。領域分割処理については、図６および図７（Ａ）〜（Ｄ）を参照して、詳細に説明する。図６は、ステップＳ１０７の領域分割処理を示すフローチャートである。
【００６８】
まず、制御部２１０は、合成三次元モデルにＫ個の始点を設定する（ステップＳ２０１）。本実施形態においては、理解を容易にするため、合成三次元モデルを合成二次元モデルに変換して領域分割する例を示す。つまり、ステップＳ２０１では、合成三次元モデルを所定の投影面に投影させたときに、当該投影面に投影される二次元化された合成三次元モデル上に、略均等にＫ個の始点５１０が設定される。なお、撮像により得られた画像ペアのいずれかの画像上の被写体５０１にＫ個の始点５１０が設定されてもよい。図７（Ａ）に、二次元化された合成三次元モデルに、Ｋ個の始点５１０が設定されているイメージを示す。
【００６９】
制御部２１０は、ステップＳ２０１の処理を完了すると、各始点５１０を中心とした領域を、互いに重複するまで拡大する（ステップＳ２０２）。例えば、始点５１０を中心とした領域は、互いに、同じスピードで拡大され、互いに重複するまで拡大される。ここで、合成三次元モデルの三次元空間上のポリゴンの表面の法線（ポリゴン法線）が急激に変化する箇所で領域の拡大が中止される。例えば、合成三次元モデルの腕の付け根部分などが、当該領域の境界線（三次元空間上における境界面）となる。このようなルールによって領域分割された、二次元化された合成三次元モデルの状態を、図７（Ｂ）に示す。図７（Ｂ）は、二次元化された合成三次元モデルが、境界線５１１により複数の小領域（以下、「合成領域」という。）５１２に分割されている様子を示す。また、図７（Ｃ）に、複数の合成領域５１２に分割され、始点５１０が取り除かれた、二次元化された合成三次元モデルを示す。なお、三次元上の合成三次元モデルを直接領域分割してもよい。この場合、三次元上の合成三次元モデルに直接Ｋ個の始点が設定され、各始点を中心に領域が拡大された領域が相互に重なるまで、各始点が拡大された時にできる境界面により、合成三次元モデルが分割される。
【００７０】
制御部２１０は、ステップＳ２０２の処理を完了すると、被合成三次元モデルにＫ個の始点を設定する（ステップＳ２０３）。制御部２１０は、ステップＳ２０３の処理を完了すると、二次元化された被合成三次元モデルについて、各始点５１０を中心とした領域を、互いに重複するまで拡大する（ステップＳ２０４）。なお、二次元化された被合成三次元モデルを複数の小領域（以下、「被合成領域」という。）５１４に分割する手法は、二次元化された合成三次元モデルを複数の合成領域５１２に分割する手法と同様である。制御部２１０は、ステップＳ２０４の処理を完了すると、領域分割処理を完了する。
【００７１】
制御部２１０は、ステップＳ１０７の処理を完了すると、三次元モデル合成処理を実行する（ステップＳ１０８）。三次元モデル合成処理については、図８に示すフローチャートを参照して、詳細に説明する。
【００７２】
まず、制御部２１０は、ステレオカメラ１０００の相対的な位置を取得する（ステップＳ３０１）。具体的には、最初の撮像時のカメラ位置Ｃ１に対する、今回合成される合成三次元モデルの元となっているペア画像の撮像時のカメラ位置の相対的な位置を、被合成三次元モデルと合成三次元モデルとに基づいて推定する。ここでは、カメラ位置Ｃ１に対する、カメラ位置Ｃ２が推定されるものとする。つまり、被合成三次元モデルは、カメラ位置Ｃ１から撮像して得られたペア画像から生成された三次元モデルであり、合成三次元モデルは、カメラ位置Ｃ２から撮像して得られたペア画像から生成された三次元モデルであるものとする。
【００７３】
制御部２１０は、被合成三次元モデルと合成三次元モデルとに共通する、特徴点の三次元空間上の座標の差に基づいて、相対的なカメラ位置を推定する。本実施形態においては、まず、制御部２１０は、被合成三次元モデルを、カメラ位置Ｃ１を視点として二次元に射影変換したときの当該被合成三次元モデルと、合成三次元モデルを、カメラ位置Ｃ２を視点として二次元に射影変換したときの当該合成三次元モデルと、の二次空間上での特徴点の対応をとる（例えば、ＳＨＦＴ法などによる）。さらに、制御部２１０は、ステレオ撮像のモデリングにより得られる三次元情報に基づいて、特徴点の対応の精度を向上させる。そして、制御部２１０は、特徴点の対応関係に基づいて、カメラ位置Ｃ１に対するカメラ位置Ｃ２の相対的な位置を算出する。なお、本実施形態において、最初の撮像時には、被写体５０１の左腕は挙がっておらず、２回目の撮像時には、被写体５０１の左腕は動いてしまい、挙がっていた。従って、厳密に言えば、最初の撮像時における被写体５０１と、２回目の撮像時における被写体５０１と、の座標は、完全には一致しない。しかしながら、左腕はノイズとみなされる。このため、概略の相対的なカメラ位置の推定は可能である。
【００７４】
制御部２１０は、ステップＳ３０１の処理を完了すると、ステップＳ３０１において求めた相対的なカメラ位置に基づいて、合成三次元モデルの座標系と被合成三次元モデルの座標系とを合わせる（ステップＳ３０２）。
【００７５】
制御部２１０は、ステップＳ３０２の処理を完了すると、二次元化された合成三次元モデルの複数の合成領域５１２から、合成領域５１２を１つ選択する（ステップＳ３０３）。ここでは、複数の合成領域５１２から合成領域５１３が選択されたものとして説明する。
【００７６】
制御部２１０は、ステップＳ３０３の処理を完了すると、ステップＳ３０３において選択された合成領域５１３に対応する被合成領域５１４を特定する（ステップＳ３０４）。つまり、制御部２１０は、三次元空間における被合成三次元モデルを構成する領域のうち、選択された合成領域５１３に対応する三次元空間上の領域の近傍の領域を特定する。なお、ステップＳ３０２において、合成三次元モデルと被合成三次元モデルとの座標系が合わせられているため、近傍計算が可能となる。ここでは、合成領域５１３には、被合成領域５１５が対応しているものとする。
【００７７】
制御部２１０は、ステップＳ３０４の処理を完了すると、ステップＳ３０３において選択した合成領域５１３をステップＳ３０４で特定した被合成領域５１５に合わせるための座標変換パラメータを求める（ステップＳ３０５）。座標変換パラメータは、４×４の行列であるＨで表され、以下に示す式（４）により、合成領域５１３の座標を表すＷ’から、被合成領域５１５の座標を表すＷへ変換される。
ｋＷ＝ＨＷ’  （４）
ここで、ｋは任意の値であり、Ｗ、Ｗ’は同次座標であるため次元拡張され、４次元目に１が格納されている。Ｈは、３×３の回転行列Ｒと、３×１の並進ベクトルＴにより、以下に示す式（５）で示される。
【数１】
2011192228.tif 000003
【００７８】
合成領域５１３と被合成領域５１５との間で、Ｈを満足する対応点が閾値数以上見つけられた場合に、座標変換パラメータであるＨが求められたものとする。なお、ステップＳ３０４において、合成領域５１３に対応する被合成領域５１４が複数特定された場合、制御部２１０は、特定された複数の被合成領域５１４の各々から特徴点候補を抽出し、ＲＡＮＳＡＣ等で対応点を絞り込むことで、１つの被合成領域５１５を特定することができる。
【００７９】
制御部２１０は、ステップＳ３０５の処理を完了すると、ステップＳ３０５において求めた座標変換パラメータＨを用いて、ステップＳ３０３において選択した合成領域５１３を座標変換する（ステップＳ３０６）。
【００８０】
例えば、図７（Ｃ）における合成領域５１３がステップＳ３０３において選択され、図７（Ｄ）における被合成領域５１５がステップＳ３０４において特定された場合、図７（Ｅ）に示すように、合成領域５１３は、ステップＳ３０６による座標変換により、合成領域５１６となる。
【００８１】
制御部２１０は、ステップＳ３０６の処理を完了すると、座標変換後の合成領域５１６を被合成領域５１５と合成する（ステップＳ３０７）。なお、合成領域５１６は、単純に、被合成領域５１５に重ねられても良いが、本実施形態においては、合成領域５１６と被合成領域５１５との間の境界部にスムージング処理が実行される例について説明する。
【００８２】
スムージング処理においては、本来は重なる領域（変換パラメータＨを求めるために使用した特徴点を含む領域）について、その平均（ユークリッド距離の中間）となる平面を、新たな三次元モデルのモデリング面とする。図７（Ｆ）に、被合成領域５１５に合成領域５１６を重ねた様子を示す。図７（Ｆ）の矢印Ｃ４の方向から見た三次元空間上の境界面の様子を図７（Ｇ）に示す。図７（Ｇ）に、被合成領域５１５と合成領域５１６とのユークリッド距離の平均を取った新たなモデリング面５１７を示す。
【００８３】
制御部２１０は、ステップＳ３０７の処理を完了すると、全ての合成領域５１２が選択済みであるか否かを判別する（ステップＳ３０８）。制御部２１０は、いずれかの合成領域５１２が選択済みではないと判別すると（ステップＳ３０８：ＮＯ）、ステップＳ３０３に処理を戻す。一方、制御部２１０は、全ての合成領域５１２が選択済みであると判別すると（ステップＳ３０８：ＹＥＳ）、合成後の被合成三次元モデルを被合成三次元モデルに設定した後（ステップＳ３０９）、三次元モデル合成処理を終了する。
【００８４】
制御部２１０は、ステップＳ１０８の処理を完了すると、撮像回数カウンタＮの値を１つ増加させる（ステップＳ１０９）。
【００８５】
制御部２１０は、ステップＳ１０６もしくはステップＳ１０９の処理を完了すると、シャッターボタン３３１が押圧されたか否かを判別する（ステップＳ１１０）。制御部２１０は、シャッターボタン３３１が押圧されたと判別すると（ステップＳ１１０：ＹＥＳ）、三次元モデリング処理を完了する。一方、制御部２１０は、シャッターボタン３３１が押圧されていないと判別すると（ステップＳ１１０：ＮＯ）、ステップＳ１０３に処理を戻す。
【００８６】
本実施形態に係るステレオカメラ１０００によれば、被写体の一部に動きがある場合であっても、当該被写体の三次元モデルを生成することができる。なお、本実施形態においては、被写体の特定部分が一体となって動く場合に有効である。その理由は、一体となって動く部分が同じ領域に属するように、領域分割がなされると考えられるためである。つまり、本実施形態においては、人間や動物の関節、ぬいぐるみの接合部、など、一体となって動く部分を接続する部分が、領域分割の際の境界となるように、領域分割がなされるためである。なお、分割された領域単位で、座標変換が行われる。このため、一部の領域が一体となって動いた場合でも、当該動いた一部の領域が動かなかった場合と同様に、当該部分を合成することができる。
【００８７】
（第２の実施形態）
第１の実施形態においては、二次元化された合成三次元モデルが複数の合成領域５１２に分割され、さらに、二次元化された被合成三次元モデルが複数の被合成領域５１４に分割される例を示した。つまり、第１の実施形態においては、複数の合成領域５１２のうちのいずれかに対応する領域が、複数の被合成領域５１４の中から選択される例を示した。しかし、二次元化された被合成三次元モデルは、必ずしも、複数の被合成領域５１４に分割されなくてもよい。
【００８８】
この場合、図６に示す領域分割処理において、ステップＳ２０１〜ステップＳ２０２の処理が実行されると領域分割処理が完了する。つまり、領域分割処理において、ステップＳ２０３〜ステップＳ２０４の処理が実行されない。そして、図８に示す三次元モデル合成処理のステップＳ３０４においては、ステップＳ３０３において選択された合成領域５１３に対応する領域（合成領域５１３の近傍の領域）が、二次元化された被合成三次元モデルから直接特定される。なお、合成領域５１３に対応する領域は、例えば、当該合成領域５１３内の特徴点と、二次元化された被合成三次元モデル内の特徴点と、の比較により求められる。座標変換パラメータであるＨも、同様に、当該合成領域５１３内の特徴点と、二次元化された被合成三次元モデル内の特徴点と、の比較により求められる。本実施形態に係るステレオカメラ１０００の構成ならびに上述した動作以外の動作は、第１の実施形態と同様である。
【００８９】
本実施形態に係るステレオカメラ１０００によれば、二次元化された被合成三次元モデルを領域分割することなく、第１の実施形態と同様の効果を得ることができる。このため、領域分割に費やされる処理時間が節約される。
【００９０】
（変形例）
本発明は、上記実施形態に開示したものに限られない。
【００９１】
本発明は、撮像装置を有していない機器（例えば、パーソナルコンピュータ）に適用することもできる。この場合、あらかじめ用意された複数のペア画像に基づいて、三次元モデルの合成が実行される。なお、複数のペア画像のうち、最も良好に被写体が写っているペア画像を、基準とするペア画像（キーフレーム）に割り当てても良い。
【００９２】
なお、本発明に係る三次元モデリング装置は、専用のシステムによらず、通常のコンピュータシステムを用いても実現可能である。例えば、コンピュータに、上記動作を実行するためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＭＯ（Ｍａｇｎｅｔｏ  Ｏｐｔｉｃａｌ  Ｄｉｓｋ）などのコンピュータ読み取り可能な記録媒体に記憶して配布し、これをコンピュータシステムにインストールすることにより、上述の処理を実行する三次元モデリング装置を構成しても良い。
【００９３】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【符号の説明】
【００９４】
１１・・・受付部、１２・・・生成部、１３・・・選択部、１４・・・分割部、１５・・・特定部、１６・・・取得部、１７・・・変換部、１８・・・更新部、１００Ａ・・・第１撮像部、１００Ｂ・・・第２撮像部、１１０Ａ，１１０Ｂ・・・光学装置、１１１Ａ，１１１Ｂ・・・レンズ、１２０Ａ，１２０Ｂ・・・イメージセンサ部、２００・・・データ処理部、２１０・・・制御部、２２０・・・画像処理部、２３０・・・画像メモリ、２４０・・・画像出力部、２５０・・・記憶部、２６０・・・外部記憶部、３００・・・インターフェース部、３１０・・・表示部、３２０・・・外部インターフェース部、３３０・・・操作部、３３１・・・シャッターボタン、３３２・・・操作キー、３３３・・・電源キー、４００・・・ストロボ発光部、５０１・・・被写体、５１０・・・始点、５１１・・・境界線、５１２、５１３、５１６・・・合成領域、５１４、５１５・・・被合成領域、５１７・・・モデリング面、１０００・・・ステレオカメラ
【図１】
2011192228.tif 000004
【図２】
2011192228.tif 000005
【図３】
2011192228.tif 000006
【図４】
2011192228.tif 000007
【図５】
2011192228.tif 000008
【図６】
2011192228.tif 000009
【図７】
2011192228.tif 000010
【図８】
2011192228.tif 000011