説明

三次元モデリング装置、三次元モデリング方法、ならびに、プログラム

【課題】ズーム機能を用いた場合であっても、精度よく三次元モデルを作成する。
【解決手段】画像取得部11は、ペア画像を取得する。特徴点対応抽出部12Bは、画像取得部11が取得したペア画像のそれぞれの画像から、特徴点対応の組を抽出する。誤対応除去部12Cは、特徴点対応抽出部12Bによって抽出された特徴点対応の組において、垂直座標の差が所定値以上ある組を誤対応として除去する。第1補正部12Dは、誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、画像取得部11が取得したペア画像を、三次元モデル作成に適した画像に補正する。三次元モデル生成部13は、画像取得部11が取得し、画像補正部12が補正したペア画像から、被写体の三次元モデルを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体を適切に三次元モデリングするための三次元モデリング装置、三次元モデリング方法、ならびに、プログラムに関する。
【背景技術】
【0002】
人間、動物、あるいは、美術品などの被写体を右眼用撮像部と左目用撮像部とを備えるステレオカメラを用いて撮像し、撮像により得られたステレオ画像(右眼用画像と左眼用画像)から、被写体の三次元モデルを構築する技術が知られている。
【0003】
また、カメラのズーム機能を使用して撮像したステレオ画像から三次元モデルを構築することを可能にした技術についても開示されている。
【0004】
例えば、特許文献1に記載の発明では、ズーム位置毎に、予め測定した補正用データ(カメラ情報)をテーブルに格納しておく。そして、ステレオ画像を撮像した際に、撮像制御部から当該撮像したズーム位置を特定する。そして、特定したズーム位置に対応した補正用データをテーブルから取得し、取得した補正データに基づいて、ステレオ画像の歪み補正と平行化とを行うことで、ズーム機能を使用して撮像されたステレオ画像から三次元モデルを作成する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−241491号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ステレオカメラの左右の撮像部は、経年劣化や機械的な「遊び」による影響により、焦点距離等の内部パラメータに誤差が生じることが多い。このような誤差が生じている場合は、特許文献1に記載の発明のようにズーム位置毎に記憶された補正データを用いて、ステレオ画像の歪み補正と平行化とを行ったとしても、左右画像でエピ極線の高さが異なるため、作成される三次元モデルの精度が低下してしまうという問題があった。
【0007】
また、特許文献1に記載の発明では、ズームさせるためにカメラのレンズ位置を移動させるモータ等の駆動装置にばらつきがあるため、ズーム位置毎の補正データの測定を細かいステップで事前に行なう必要がある。従って、測定に多大な時間がかかり製品の生産性が低下するという問題があった。
【0008】
本発明は上記実情に鑑みてなされたものであり、ズーム機能を用いた場合であっても、精度よく三次元モデルを作成することができる三次元モデリング装置、三次元モデリング方法、ならびに、プログラムを提供することを目的とする。
また、ズーム位置毎の補正データの測定にかかる時間を短縮することができる三次元モデリング装置、三次元モデリング方法、ならびに、プログラムを提供することを他の目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため本発明の三次元モデリング装置は、
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得手段と、
前記画像取得手段が取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得手段と、
前記特徴点対応取得手段が取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去手段と、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得手段が取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正手段と、
前記第1画像補正手段が補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成手段と、
を備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、ズーム機能を用いた場合であっても、精度よく三次元モデルを作成することができる。また、ズーム位置毎の補正データの測定にかかる時間を短縮することができる。
【図面の簡単な説明】
【0011】
【図1】本発明の実施形態に係るステレオカメラの外観構成を示す図であり、(A)は、前面側を示し、(B)は背面側を示す。
【図2】本実施形態のステレオカメラの電気的構成を示すブロック図である。
【図3】本実施形態のステレオカメラにおいて、ステレオ撮影モードに係る主要な機能構成を示すブロック図である。
【図4】本実施形態における3次元モデリング処理の手順を示すフローチャートである。
【図5】本実施形態における画像補正処理の手順を示すフローチャートである。
【図6】本実施形態における画像の補正について説明するための図であり、(A)は誤対応除去前の画像を示し、(B)は誤対応除去後の画像を示す。
【図7】本実施形態における三次元モデル生成処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。本実施形態では、本発明をデジタル式のステレオカメラに適用した例を示す。なお、本発明は下記の実施形態及び図面によって限定されるものではない。また、本発明の要旨を変更しない範囲で下記の実施形態及び図面に変更を加えることが出来る。また、図中同一または相当部分には同一符号を付す。
【0013】
図1(A)、(B)は、本実施形態に係るステレオカメラ1の外観図である。図1(A)に示すように、このステレオカメラ1の前面には、レンズ111Aと、レンズ111Bと、ストロボ発光部400と、が設けられ、上面には、シャッタボタン331が設けられている。レンズ111Aとレンズ111Bは、シャッタボタン331が上になる方向で、ステレオカメラ1を水平にした場合に、各々の中心位置が水平方向で同一線上となるように、所定の間隔を隔てて配置されている。ストロボ発光部400は、必要に応じて被写体に向けてストロボ光を照射する。シャッタボタン331は、ユーザからのシャッタ動作指示を受け付けるためのボタンである。
【0014】
ステレオカメラ1の背面には、図1(B)に示すように、表示部310と、操作キー332と、電源ボタン333と、ズームボタン334と、が設けられている。表示部310は、例えば、液晶表示装置等から構成され、ステレオカメラ1を操作するために必要な種々の画面や、撮影時のライブビュー画像、撮像画像等を表示するための電子ビューファインダとして機能する。
【0015】
操作キー332は、十字キーや決定キー等を含み、モード切替や表示切替等、ユーザからの各種の操作を受け付ける。電源ボタン333は、ステレオカメラ1の電源のオン・オフをユーザから受け付けるためのボタンである。
【0016】
ズームボタン334は、ステレオカメラ1のズーム機能を動作させるためのボタンである。ズームボタン334を押下することで、第1撮像部100Aと第2撮像部100Bとの撮像倍率が同時に変更される。
【0017】
図2は、ステレオカメラ1の電気的構成を示すブロック図である。図2に示すように、ステレオカメラ1は、第1撮像部100Aと、第2撮像部100Bと、データ処理部200と、I/F部300と、ストロボ発光部400と、を備える。
【0018】
第1撮像部100A及び第2撮像部100Bは、それぞれ被写体を撮像する機能を担う部分である。ステレオカメラ1は、いわゆる複眼カメラであり、このように2つの撮像部を有する構成であるが、第1撮像部100Aと第2撮像部100Bは同一の構成である。以下、第1撮像部100Aについての構成には参照符号の末尾に「A」を付し、第2撮像部100Bについての構成には参照符号の末尾に「B」を付す。
【0019】
図2に示すように、第1撮像部100A(第2撮像部100B)は、光学装置110A(110B)、イメージセンサ部120A(120B)、及び、レンズ駆動部130A(130B)等から構成されている。光学装置110A(110B)は、例えば、可動可能なレンズ、絞り機構、シャッタ機構、等を含み、撮像に係る光学的動作を行う。即ち、光学装置110A(110B)の動作により、入射光が集光されるとともに、焦点距離、絞り、シャッタスピード等といった、画角やピント、露出等にかかる光学的要素の調整がなされる。
【0020】
なお、光学装置110A(110B)に含まれるシャッタ機構はいわゆるメカニカルシャッタであり、イメージセンサの動作のみでシャッタ動作をおこなう場合には、光学装置110A(110B)にシャッタ機構が含まれていなくてもよい。また、光学装置110A(110B)は、後述する制御部210による制御によって動作する。
【0021】
イメージセンサ部120A(120B)は、光学装置110A(110B)によって集光された入射光に応じた電気信号を生成する。イメージセンサ部120A(120B)は、例えば、CCD(Charge Coupled Device)やCMOS(Complementally Metal Oxide Semiconductor)等のイメージセンサから構成され、光電変換を行うことで、受光した光の強度に応じた電気信号を生成し、生成した電気信号をデータ処理部200に出力する。
【0022】
レンズ駆動部130A(130B)は、ステッピングモータやアクチュエータなどから構成され、制御部210の指示に基づいて、光学装置110A(110B)のレンズを図1の紙面に垂直方向に移動させる。レンズが移動することにより被写体の撮像倍率が変化し、ズーム機能が達成される。なお、本実施形態では、両レンズ駆動部130A,130Bはほぼ同時に駆動制御され、ズーム機能を用いても、第1撮像部と第2撮像部の撮像倍率は同一に制御される。しかし、実際には、レンズ駆動部130A,130Bの経年劣化や機械的な「遊び」の影響により、ズーム機能を用いた場合、第1撮像部と第2撮像部の撮像倍率に誤差が生じている可能性が高い。
【0023】
なお、上述したように、第1撮像部100Aと第2撮像部100Bとは同一の構成である。より詳細には、レンズの焦点距離fやF値、絞り機構の絞り範囲、イメージセンサのサイズや画素数、配列、画素面積等の各仕様が全て同一である。第1撮像部100Aと第2撮像部100Bとを同時に動作させた場合、同一被写体について2つの画像(ペア画像)が撮像されるが、光軸位置は横方向で異なっている。
【0024】
データ処理部200は、第1撮像部100A及び第2撮像部100Bによる撮像動作によって生成された電気信号を処理し、撮像画像を示すデジタルデータを生成すると共に、撮像画像に対する画像処理等を行う。データ処理部200は、制御部210、画像処理部220、画像メモリ230、画像出力部240、記憶部250、外部記憶部260、カメラ情報記憶部270等から構成される。
【0025】
制御部210は、例えば、CPU(Central Processing Unit)等のプロセッサや、RAM(Random Access Memory)等の主記憶装置等から構成され、記憶部250等に格納されているプログラムを実行することで、ステレオカメラ1の各部を制御する。また、本実施形態では、所定のプログラムを実行することで、後述する三次元モデリング処理等にかかる機能が制御部210によって実現する。
【0026】
画像処理部220は、例えば、ADC(Analog-Digital Converter)、バッファメモリ、画像処理用のプロセッサ(いわゆる、画像処理エンジン)等から構成され、イメージセンサ部120A及び120Bによって生成された電気信号に基づいて、撮像画像を示すデジタルデータを生成する。即ち、イメージセンサ部120A(120B)から出力されたアナログ電気信号をADCがデジタル信号に変換して順次バッファメモリに格納すると、バッファされたデジタルデータに対し、画像処理エンジンが、いわゆる現像処理等を行うことで、画質の調整やデータ圧縮等を行う。
【0027】
画像メモリ230は、例えば、RAMやフラッシュメモリ等の記憶装置から構成され、画像処理部220によって生成された撮像画像データや、制御部210によって処理される画像データ等を一時的に保存する。
【0028】
画像出力部240は、例えば、RGB信号を生成する回路等から構成され、画像メモリ230に格納された画像データをRGB信号等に変換して表示画面(表示部310等)に出力する。
【0029】
記憶部250は、例えば、ROM(Read Only Memory)やフラッシュメモリ等の記憶装置から構成され、ステレオカメラ1の動作に必要なプログラムやデータ等を格納する。本実施形態では、制御部210等が実行する動作プログラムや、その実行時に必要となるパラメータや演算式等のデータが記憶部250に格納されているものとする。
【0030】
外部記憶部260は、例えば、メモリカード等といった、ステレオカメラ1に着脱可能な記憶装置から構成され、ステレオカメラ1で撮像した画像データ、三次元モデルデータ等を格納する。
【0031】
カメラ情報記憶部270には、第1撮像部100Aおよび第2撮像部100Bが撮像したペア画像から三次元モデルを作成するために必要な情報(カメラ情報)が格納されている。
カメラ情報は、具体的には、第1撮像部100Aおよび第2撮像部100Bそれぞれの解像度、画角、フォーカス距離、焦点距離係数、画像の角度係数、レンズの歪み係数等の情報である。なお、カメラ情報のうち、第1撮像部100A(第2撮像部100B)のズーム状態に応じて変化する情報(焦点距離係数、画像の角度係数、レンズの歪み係数等)については、複数のズーム状態毎に、対応した情報がカメラ情報記憶部270に複数格納される。また、カメラ情報は、工場出荷時の初期調整時に、校正パターンなどを用いた既存のカメラキャリブレーションの手法を用いて計測し、事前にカメラ情報記憶部270に格納すればよい。
【0032】
I/F部300は、ステレオカメラ1と、ユーザあるいは外部装置との間のインタフェースに係る機能を担う処理部であり、表示部310、外部I/F部320、操作部330等から構成される。
【0033】
表示部310は、上述したように、例えば、液晶表示装置等から構成され、ユーザがステレオカメラ1を操作するために必要な種々の画面や、撮影時のライブビュー画像、撮像画像等を表示出力する。本実施形態では、画像出力部240からの画像信号(RGB信号)等に基づいて撮像画像等の表示出力が行われる。
【0034】
外部I/F部320は、例えば、USB(Universal Serial Bus)コネクタやビデオ出力端子等から構成され、外部のコンピュータ装置への画像データの出力や外部モニタ装置への撮像画像の表示出力等を行う。
【0035】
操作部330は、ステレオカメラ1の外面上に設けられている各種ボタン等によって構成され、ユーザによる操作に応じた入力信号を生成して制御部210に送出する。操作部330を構成するボタンには、上述したように、シャッタボタン331、操作キー332、電源ボタン333、ズームボタン334等が含まれる。
【0036】
ストロボ発光部400は、例えば、キセノンランプ(キセノンフラッシュ)により構成される。ストロボ発光部400は、制御部210の制御に従って被写体にストロボ光を照射する。
【0037】
以上、本発明を実現するために必要となるステレオカメラ1の構成について説明したが、ステレオカメラ1は、このほかにも、一般的なステレオカメラの機能を実現するための構成を備えているものとする。
【0038】
続いて、ステレオカメラ1の動作の内、ステレオ撮影モードに係る動作について説明する。
【0039】
図3は、ステレオカメラ1における、ステレオ撮影モードに係る動作を実現するための主要な機能構成を示すブロック図である。図3に示すように、ステレオカメラ1は、機能的に、画像取得部11と、画像補正部12と、三次元モデル生成部13と、を備える。なお、これらの各部は、例えば、制御部210により構成される。
【0040】
画像取得部11は、第1撮像部100Aおよび第2撮像部100Bが同一被写体を異なる角度から撮像した画像のペア(以下、ペア画像とする)を取得する。なお、この際、画像取得部11は、ペア画像とともに、当該ペア画像を撮像した際の第1撮像部100Aおよび第2撮像部100Bのズーム状態を示すズーム制御情報を取得する。
【0041】
画像補正部12は、三次元モデル作成に適した画像になるように画像取得部11が取得したペア画像を補正する。画像補正部12は、図3に示すように、第2補正部12Aと、特徴点対応抽出部12Bと、誤対応除去部12Cと、第1補正部12Dとを備える。
【0042】
第2補正部12Aは、ズーム制御情報に基づいて、ペア画像を構成する各画像のレンズ歪みを補正する処理、及び、各画像間で画像上の対応する点が同一の水平ラインに並ぶように補正する平行化処理を行う。
【0043】
特徴点対応抽出部12Bは、第2補正部12Aが補正したペア画像の各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組(ペア画像の画像間で対応する特徴点の組)を抽出する。
【0044】
誤対応除去部12Cは、特徴点対応抽出部12Bによって抽出された特徴点対応の組において、垂直座標の差が所定値以上ある組を誤対応として除去する。
【0045】
第1補正部12Dは、誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、第2補正部12Aが補正したペア画像を、三次元モデル作成に適した画像に補正する。
【0046】
三次元モデル生成部13は、画像取得部11が取得し、画像補正部12が補正したペア画像から、被写体の三次元モデルを生成する。
【0047】
続いて、図4に示すフローチャートを用いて、ステレオ撮影モードに係る動作時の処理(三次元モデリング処理)について説明する。三次元モデリング処理は、ユーザが、操作キー332等の操作部330を操作することで、ステレオ撮影モードが選択されたことを契機に開始される。
【0048】
三次元モデリング処理が開始されると、まず、制御部210は、終了イベントが発生したか否かを判定する(ステップS101)。終了イベントは、例えば、ユーザにより、再生モード等へのモード移行操作が行われた場合や、ステレオカメラ1の電源がオフされた場合等に発生する。
【0049】
終了イベントが発生している場合(ステップS101;Yes)、三次元モデリング処理は終了する。一方、終了イベントが発生していない場合(ステップS101;No)、制御部210は、一方の撮像部(例えば、第1撮像部100A)を介して得られた画像データに基づく画像(いわゆる、ライブビュー画像)を表示部310に表示させる(ステップS102)。
【0050】
続いて、制御部210は、ズームボタン334が押下されているか否かを判定する(ステップS103)。ズームボタン334が押下されていない場合(ステップS103;No)、ステップS105に処理は移る。
【0051】
一方、ズームボタン334が押下されている場合(ステップS103;Yes)、制御部210は、被写体を撮像する第1撮像部100A及び第2撮像部100Bのズーム状態(撮像倍率)を変化させる(ステップS104)。具体的には、制御部210は、両レンズ駆動部130A,130Bを制御して、光学装置110A,110Bのレンズ位置を、ズームボタン334の押下時間や押下位置に応じて移動させることでズーム状態を変化させる。なお、ズーム状態の変化に応じて、表示部に表示されるライブビュー画像のズーム状態も適宜変化する。
【0052】
続いて、制御部210は、シャッタボタン331が押下されているか否かを判定する(ステップS105)。シャッタボタン331が押下されていない場合(ステップS105;No)、制御部210は、再度、ステップS101の処理を実行する。一方、シャッタボタン331が押下されている場合(ステップS105;Yes)、制御部210は、第1撮像部100A、第2撮像部100B、及び、画像処理部220を制御して、被写体を撮像する(ステップS106)。
【0053】
続いて、制御部210(画像取得部11)は、第1撮像部100A及び第2撮像部100Bが撮像した2枚のステレオ画像(ペア画像)を、画像メモリ230に保存する(ステップS107)。なお、この際、制御部210は、両レンズ駆動部130A,130Bから撮像時のズーム状態を示すズーム制御情報を取得し、画像メモリ230又は記憶部250に記憶する。例えば、レンズ駆動部130A,130Bがステッピングモータから構成される場合、制御部210は、ステッピングモータのステップ数を示す情報をズーム制御情報として取得して保存すればよい。なお、以降の説明において、ペア画像の内、第1撮像部100Aによる撮像の結果得られた画像を画像A0、第2撮像部100Bによる撮像の結果得られた画像を画像B0とする。
【0054】
続いて、制御部210(画像補正部12)は、画像メモリ230に保存したペア画像を、三次元モデル作成に適した画像に補正する画像補正処理を実行する(ステップS108)。
【0055】
ここで、画像補正処理の詳細について、図5のフローチャートを参照して説明する。
【0056】
まず、制御部210(第2補正部12A)は、ペア画像とともに格納したズーム制御情報に基づいて、レンズ歪みの補正、および、平行化処理を行う(ステップS201)。
具体的には、まず、制御部210は、レンズ歪み補正と平行化に必要なカメラ情報をカメラ情報記憶部270から取得する。この際、ズーム制御情報に応じて変化するカメラ情報については、ペア画像とともに保存したズーム制御情報に対応したカメラ情報を取得する。なお、ズーム制御情報に対応したカメラ情報がカメラ情報記憶部270に記憶されていない場合は、近傍のズーム制御情報で対応するカメラ情報が記憶されている場合はそのカメラ情報を代用して取得する。または、近傍の対応するカメラ情報が存在する複数のズーム制御情報を参照し、実際のズーム制御情報との関係から重みを付けてカメラ情報を線形補間することで精度の良いカメラ情報を取得してもよい。そして、制御部210は、このようにして取得したカメラ情報を用いてレンズ歪み補正と平行化処理とを行えばよい。なお、本処理を行った結果、ペア画像(画像A0、画像B0)が、ペア画像(画像A1、画像B1)に補正されたものとして以下説明する。
【0057】
ここで、ステップS201の処理により、レンズ歪み補正、および、平行化がなされたペア画像(画像A1、画像B1)の例を図6(A)に示す。この段階では、両レンズ駆動部130A,130Bの経年劣化や機械的な遊びの影響により、ペア画像の平行化がなされていても、画像A1と画像B1との間で、対応する点同士の破線で示すエピ極線の高さにずれが発生している。
【0058】
図5に戻り、続いて、制御部210(特徴点対応抽出部12B)は、レンズ歪み補正及び平行化処理がなされたペア画像の各々から、特徴点を取得する(ステップS202)。
例えば、制御部210は、画像のスケール変化にロバストな特徴量をもつ特徴点、例えばSURF(Speeded-Up Robust Features)特徴点やSIFT(Scale-invariant feature transform)特徴点を特徴点として画像A1、B1から取得すればよい。
【0059】
続いて、制御部210(特徴点対応抽出部12B)は、特徴量マッチングを実行し、画像A1の各特徴点と画像B1の各特徴点の対応付けから特徴点対応の組を抽出する(ステップS203)。具体的には、制御部210は、特徴量空間で互いに最近傍かつ他に近い距離の特徴点が存在しないものを対応付ける。
【0060】
続いて、制御部210(誤対応除去部12C)は、抽出した特徴点対応の組のうち、誤った対応付けがなされている組を除去する(ステップS204)。
具体的には、制御部210は、対応する特徴点の垂直座標の差が所定の閾値以上ある場合に、この特徴点対応の組を除去すればよい。なお、この所定の閾値は、ズーム機構の遊びを考慮に入れた適切な値を事前に実験等により求めて設定すればよい。
【0061】
続いて制御部210(第1補正部12D)は、誤対応が除去された特徴点対応の組の垂直座標から、ペア画像(画像A1、画像B1)を補正(変換)するための係数(補正係数)を求める(ステップS205)。
具体的には、制御部210は、ペア画像の両画像で被写体の表示倍率が略一致し(所定の倍率範囲内に収まり)、且つ、各特徴点と対応点との垂直座標が略一致する(所定値内に収まる)ように、画像A1と画像B2とが補正(変換)されるような補正係数を、公知の幾何学的手法を用いて求める。
【0062】
続いて、制御部210(第1補正部12D)は、求めた補正係数を用いて、画像A1、画像B1を補正(変換)する(ステップS206)。なお、この補正処理により、画像A2、画像B2が生成されたものとする。また、補正された画像A2と画像B2は、例えば、画像メモリ230に記憶される。このステップS206の処理により、図6(B)に示すように、画像A2と画像B2とで、対応する点同士のエピ極線の高さはほぼ一致する。従って、画像A2と画像B2とから、精度のよい三次元モデルを作成することが可能となる。
勿論、画像A1、画像B1の代わりに、画像A0、画像B0から画像A2、画像B2を生成されるようにしてもよい。一般的には画像変換は2回実行するよりも、1回で済ませるほうが画像の劣化が少ないので、状況によってはこちらの方が望ましい。
【0063】
図4に戻り、画像補正処理(ステップS108)が完了すると、制御部210(三次元モデル生成部13)は、画像メモリ230に記憶されている補正後のペア画像(画像A2と画像B2)から三次元モデルを生成する三次元モデル生成処理を実行する(ステップS109)。
【0064】
ここで、図7に示すフローチャートを参照して、三次元モデル生成処理について説明する。
【0065】
まず、制御部210は、特徴点の候補を抽出する(ステップS301)。例えば、制御部210は、画像A2に対してコーナー検出を行う。コーナー検出においては、ハリスなどのコーナー特徴量が、所定閾値以上かつ所定半径内で最大になる点がコーナー点として選択される。従って、被写体の先端など、他の点に対して特徴のある点が特徴点として抽出される。
【0066】
続いて、制御部210は、ステップS301の処理を完了すると、ステレオマッチングを実行し、画像A2の特徴点に対応する点(対応点)を画像B2から探す(ステップS302)。具体的には、制御部210は、テンプレートマッチングにより類似度が所定閾値以上かつ最大のもの(相違度が所定閾値以下かつ最小のもの)を対応点とする。テンプレートマッチングには、例えば、残差絶対値和(SAD)、残差平方和(SSD)、正規化相関(NCCやZNCC)、方向符号相関など、様々な既知の技法が利用可能である。
【0067】
続いて、制御部210は、ステップS302において見つけられた対応点の視差情報(水平座標の差)、および、第1撮像部100Aおよび第2撮像部100Bのカメラ情報(画角、基線長など)に基づいて、特徴点の位置情報を算出する(ステップS303)。生成された特徴点の位置情報は、例えば、記憶部250に記憶される。
【0068】
続いて、制御部210は、ステップS303において算出された特徴点の位置情報をもとにドロネー三角形分割を実行し、ポリゴン化を実行する(ステップS304)。生成されたポリゴン情報は、例えば、記憶部250に記憶される。制御部210は、ステップS304の処理を完了すると、三次元モデル生成処理を終了する。
【0069】
図4に戻り、制御部210は、上記の三次元モデル生成処理(ステップS109)を終了すると、生成した三次元モデルデータを表示する(ステップS110)。具体的には、制御部210は、生成した三次元モデルデータを確認用の二次元データに変換して表示部310に表示する。そして、制御部210は、三次元モデルデータを外部記憶部260等に保存し(ステップS111)、ステップS101の処理に戻る。
【0070】
このように、本実施形態に係るステレオカメラ1によれば、レンズ歪み補正と平行化処理とを行ったペア画像から抽出した特徴点対応の組のうち、誤って対応付けられた組を除去する。そして、除去後の特徴点対応の組の位置関係から、ペア画像の両画像で対応点のエピ極線の高さがほぼ一致するようにペア画像を補正し、当該補正したペア画像から三次元モデルを生成する。従って、ズーム機能を用いて撮像されたペア画像から、精度よく三次元モデルを作成することができる。
【0071】
また、本実施形態に係るステレオカメラ1では、レンズ歪み補正と平行化処理は、必ずしも精度良く行う必要はない。従って、レンズ歪み補正と平行化処理のために、ズーム状態ごとに測定しておく補正データ(カメラ情報)を、細かい段階で測定して記憶しておく必要がなく、測定時間を短縮することができ、生産効率を向上させることができる。
【0072】
なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。
【0073】
例えば、上記実施形態では、画像補正処理における誤対応の組の除去(図5のステップS204)の際、対応する特徴点の垂直座標の差が所定の閾値以上ある組を誤対応であるとして除去した。しかしながら、この条件に加えて、さらに、以下の条件A〜条件Cにより誤対応の組を除去してもよい。このようにすることで、より精度よく誤対応の組を除去することが可能となるため、より精度のよい三次元モデルを作成することができる。
【0074】
(条件A)
オートフォーカス機能などを用いてステレオカメラ1と被写体と間の大まかな距離を求め、求めた距離から画像A1と画像B1との間の視差のとるべき範囲を求める。そして、対応する特徴点の水平座標から求めた視差がこの範囲内に無い場合に、当該特徴点対応の組を誤対応として除去する。
【0075】
(条件B)
画像A1と画像B1の各々の特徴点対応に対して、周囲の他の特徴点対応の配置を示す情報(例えば、Shape Context)を求める。そして、求めた配置を示す情報間の類似度が所定値以下である場合に、この特徴点対応の組を誤対応として除去する。
【0076】
(条件C)
各特徴点対応の組の垂直座標に対し、補正係数の推定をRANSAC(RANdom SAmple Consensus)法や最小メジアン法等のロバスト推定法を用いて行い、ノイズ(誤対応の組)を除去する。
【0077】
また、上記実施形態では、第1撮像部100Aと第2撮像部100Bとのズーム機能による撮像倍率は同時に制御されるものとしているが、第1撮像部100Aと第2撮像部100Bとで個別に撮像倍率を変化させることができるステレオカメラにも、本発明は適用可能である。
【0078】
また、カメラ(撮像部)の数は2に限定するものではなく、それ以上の任意の数の撮像部を備えて、2以上の撮像画像から三次元モデルを作成するカメラにも、本発明は適用可能である。
【0079】
また、画像補正処理において、レンズ歪みの補正、および、平行化処理(ステップS201)を必ずしも実施する必要は無い。この場合、制御部210は、ステレオカメラ1が撮像したペア画像から直接特徴点対応の組を抽出し、誤対応の組を除去した後、エピ極線の高さがほぼ一致するようにペア画像を補正すればよい。
【0080】
また、既存のステレオカメラ等を本発明に係る三次元モデリング装置として機能させることも可能である。即ち、上述した制御部210が実行したようなプログラムを既存のステレオカメラ等に適用し、そのステレオカメラ等のCPU等が当該プログラムを実行することで、当該ステレオカメラ等を本発明に係る三次元モデリング装置として機能させることができる。
【0081】
このようなプログラムの配布方法は任意であり、例えば、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。
【0082】
この場合、上述した本発明に係る機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などでは、アプリケーションプログラム部分のみを記録媒体等に格納してもよい。
【0083】
これまで、本発明のいくつかの実施形態を説明したが、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0084】
(付記1)
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得手段と、
前記画像取得手段が取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得手段と、
前記特徴点対応取得手段が取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去手段と、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得手段が取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正手段と、
前記第1画像補正手段が補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成手段と、
を備えることを特徴とする三次元モデリング装置。
【0085】
(付記2)
前記画像取得手段は、
同一被写体を異なる角度から撮像した複数の画像を、該複数の画像を撮像した各撮像装置のズーム状態を示すズーム制御情報とともに取得し、
前記三次元モデリング装置は、
前記画像取得手段が複数の画像とともに取得したズーム制御情報に基づいて、該複数の画像間の平行化及びレンズ歪みの補正を行う第2画像補正手段を更に備え、
前記特徴点対応取得手段は、
前記画像取得手段が取得し、更に前記第2画像補正手段が補正した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得し、
前記第1画像補正手段は、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記第2画像補正手段が補正した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記第2画像補正手段が補正した画像をさらに補正する、
ことを特徴とする付記1に記載の三次元モデリング装置。
【0086】
(付記3)
前記特徴点対応取得手段は、
前記各々の画像からスケールにロバストな特徴量を持つ特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する、
ことを特徴とする付記1又は2に記載の三次元モデリング装置。
【0087】
(付記4)
前記誤対応除去手段は、前記特徴点対応取得手段が取得した特徴点対応の組の水平座標に基づいて視差を求め、該視差が所定範囲内に無い場合に、該特徴点対応の組を誤対応として除去する、
ことを特徴とする付記1乃至3の何れか1つに記載の三次元モデリング装置。
【0088】
(付記5)
前記誤対応除去手段は、前記特徴点対応取得手段が取得した特徴点対応の各々について、周囲の他の特徴点対応の配置を示す情報を求め、求めた配置を示す情報間の類似度が所定値以下である場合に、該特徴点対応の組を誤対応として除去する、
ことを特徴とする付記1乃至4の何れか1つに記載の三次元モデリング装置。
【0089】
(付記6)
前記第1画像補正手段は、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に対して、RANSAC法、又は最小メジアン法によるロバスト推定法を用いて画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるような補正係数求め、該補正係数を用いて前記画像を補正する、
ことを特徴とする付記1乃至5の何れか1つに記載の三次元モデリング装置。
【0090】
(付記7)
三次元モデリング方法であって、
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得ステップと、
前記画像取得ステップで取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得ステップと、
前記特徴点対応取得ステップで取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去ステップと、
前記特徴点対応取得ステップで取得され、前記誤対応除去ステップで誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得ステップで取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正ステップと、
前記第1画像補正ステップで補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成ステップと、
を含むことを特徴とする三次元モデリング方法。
【0091】
(付記8)
コンピュータに、
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得機能、
前記画像取得機能が取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得機能、
前記特徴点対応取得機能が取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去機能、
前記特徴点対応取得機能により取得され、前記誤対応除去機能により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得機能が取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正機能、
前記第1画像補正機能が補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成機能、
を実現させることを特徴とするプログラム。
【符号の説明】
【0092】
1…ステレオカメラ、11…画像取得部、12…画像補正部、12A…第2補正部、12B…特徴点対応抽出部、12C…誤対応除去部、12D…第1補正部、13…三次元モデル生成部

【特許請求の範囲】
【請求項1】
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得手段と、
前記画像取得手段が取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得手段と、
前記特徴点対応取得手段が取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去手段と、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得手段が取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正手段と、
前記第1画像補正手段が補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成手段と、
を備えることを特徴とする三次元モデリング装置。
【請求項2】
前記画像取得手段は、
同一被写体を異なる角度から撮像した複数の画像を、該複数の画像を撮像した各撮像装置のズーム状態を示すズーム制御情報とともに取得し、
前記三次元モデリング装置は、
前記画像取得手段が複数の画像とともに取得したズーム制御情報に基づいて、該複数の画像間の平行化及びレンズ歪みの補正を行う第2画像補正手段を更に備え、
前記特徴点対応取得手段は、
前記画像取得手段が取得し、更に前記第2画像補正手段が補正した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得し、
前記第1画像補正手段は、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記第2画像補正手段が補正した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記第2画像補正手段が補正した画像をさらに補正する、
ことを特徴とする請求項1に記載の三次元モデリング装置。
【請求項3】
前記特徴点対応取得手段は、
前記各々の画像からスケールにロバストな特徴量を持つ特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する、
ことを特徴とする請求項1又は2に記載の三次元モデリング装置。
【請求項4】
前記誤対応除去手段は、前記特徴点対応取得手段が取得した特徴点対応の組の水平座標に基づいて視差を求め、該視差が所定範囲内に無い場合に、該特徴点対応の組を誤対応として除去する、
ことを特徴とする請求項1乃至3の何れか1項に記載の三次元モデリング装置。
【請求項5】
前記誤対応除去手段は、前記特徴点対応取得手段が取得した特徴点対応の各々について、周囲の他の特徴点対応の配置を示す情報を求め、求めた配置を示す情報間の類似度が所定値以下である場合に、該特徴点対応の組を誤対応として除去する、
ことを特徴とする請求項1乃至4の何れか1項に記載の三次元モデリング装置。
【請求項6】
前記第1画像補正手段は、
前記特徴点対応取得手段により取得され、前記誤対応除去手段により誤対応が除去された後の特徴点対応の組の垂直座標に対して、RANSAC法、又は最小メジアン法によるロバスト推定法を用いて画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるような補正係数求め、該補正係数を用いて前記画像を補正する、
ことを特徴とする請求項1乃至5の何れか1項に記載の三次元モデリング装置。
【請求項7】
三次元モデリング方法であって、
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得ステップと、
前記画像取得ステップで取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得ステップと、
前記特徴点対応取得ステップで取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去ステップと、
前記特徴点対応取得ステップで取得され、前記誤対応除去ステップで誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得ステップで取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正ステップと、
前記第1画像補正ステップで補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成ステップと、
を含むことを特徴とする三次元モデリング方法。
【請求項8】
コンピュータに、
同一被写体を異なる角度から撮像した複数の画像を取得する画像取得機能、
前記画像取得機能が取得した各々の画像から特徴点を取得し、取得した特徴点の対応付けにより特徴点対応の組を取得する特徴点対応取得機能、
前記特徴点対応取得機能が取得した特徴点対応の組のうち、垂直座標の差が所定値以上である組を誤対応として除去する誤対応除去機能、
前記特徴点対応取得機能により取得され、前記誤対応除去機能により誤対応が除去された後の特徴点対応の組の垂直座標に基づいて、前記画像取得機能が取得した画像間で被写体の表示倍率の差と垂直座標の差とが所定範囲内になるように、前記画像を補正する第1画像補正機能、
前記第1画像補正機能が補正した各画像から、前記被写体の三次元モデルを生成する三次元モデル生成機能、
を実現させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−202942(P2012−202942A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−70349(P2011−70349)
【出願日】平成23年3月28日(2011.3.28)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】