(57)【要約】【課題】効率的かつ確実な３次元画像データ生成処理を実現する構成を実現する。【解決手段】画像に含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像の選択処理に際して、画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成に適する画像であるか否かを判定し、適切と判定した画像のみを候補画像として選択し、さらに候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットをベストセットとして選択し、このベストセットを利用した３次元画像データ生成処理を実行する構成とした。【選択図】図１５
2009237846.tif 000002
【特許請求の範囲】
【請求項１】
画像に含まれる画素の３次元位置を算出する情報処理装置であり、
参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像フレームの選択処理を実行する画像選択部と、
前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する３次元画像データ生成処理実行部を有し、
前記画像選択部は、
カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択する候補画像選択部と、
前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択部を有する構成であり、
前記３次元画像データ生成処理実行部は、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する構成であることを特徴とする情報処理装置。
【請求項２】
前記候補画像選択部は、
（ａ）選択画像フレームに参照画像フレームに含まれる特徴点に対応する対応特徴点が規定数以上存在すること、
（ｂ）参照画像フレームの焦点位置と、選択画像フレームの焦点位置の位置関係によって決定されるベースラインが規定条件を満足すること、
（ｃ）参照画像フレームの撮影方向と選択画像フレームの撮影方向が規定条件を満足すること、
上記条件（ａ）〜（ｃ）のすべてを満足する画像を３次元画像データ生成処理候補画像として選択する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記候補画像選択部は、
（ａ）特徴点の条件として、下記判定式、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ・・・（式１）
ただし、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数、
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数、
ｔｈｎ：閾値、
上記判定式（式１）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記候補画像選択部は、
（ｂ）ベースラインの規定条件として、下記判定式、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
ただし、
ｄｈ：参照画像フレームの焦点位置と、選択画像フレームの焦点位置間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置から、特徴点群中心（ＣｏＧ）までの、参照画像平面に対して垂直方向の距離、
ｔｈｄ１，ｔｈｄ２：閾値、
上記判定式（式２）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記候補画像選択部は、
（ｃ）撮影方向の規定条件として、下記判定式、
｜α｜＜ｔｈα・・・（式３）
ただし、
α：参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差
ｔｈα：閾値、
上記判定式（式３）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項２に記載の情報処理装置。
【請求項６】
前記ベストセット選択部は、
参照画像フレームの左右から規定数の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
情報処理装置において、画像に含まれる画素の３次元位置を算出する情報処理方法であり、
画像選択部が、参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像フレームの選択処理を実行する画像選択ステップと、
３次元画像データ生成処理実行部が、前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する３次元画像データ生成処理実行ステップを有し、
前記画像選択ステップは、
候補画像選択部が、カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択する候補画像選択ステップと、
ベストセット選択部が、前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択ステップを実行するステップを含み、
前記３次元画像データ生成処理実行ステップは、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行するステップであることを特徴とする情報処理方法。
【請求項８】
前記候補画像選択ステップは、
（ａ）選択画像フレームに参照画像フレームに含まれる特徴点に対応する対応特徴点が規定数以上存在すること、
（ｂ）参照画像フレームの焦点位置と、選択画像フレームの焦点位置の位置関係によって決定されるベースラインが規定条件を満足すること、
（ｃ）参照画像フレームの撮影方向と選択画像フレームの撮影方向が規定条件を満足すること、
上記条件（ａ）〜（ｃ）のすべてを満足する画像を３次元画像データ生成処理候補画像として選択するステップであることを特徴とする請求項７に記載の情報処理方法。
【請求項９】
前記候補画像選択ステップは、
（ａ）特徴点の条件として、下記判定式、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ・・・（式１）
ただし、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数、
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数、
ｔｈｎ：閾値、
上記判定式（式１）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項８に記載の情報処理方法。
【請求項１０】
前記候補画像選択ステップは、
（ｂ）ベースラインの規定条件として、下記判定式、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
ただし、
ｄｈ：参照画像フレームの焦点位置と、選択画像フレームの焦点位置間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置から、特徴点群中心（ＣｏＧ）までの、参照画像平面に対して垂直方向の距離、
ｔｈｄ１，ｔｈｄ２：閾値、
上記判定式（式２）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項８に記載の情報処理方法。
【請求項１１】
前記候補画像選択ステップは、
（ｃ）撮影方向の規定条件として、下記判定式、
｜α｜＜ｔｈα・・・（式３）
ただし、
α：参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差
ｔｈα：閾値、
上記判定式（式３）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする請求項８に記載の情報処理方法。
【請求項１２】
前記ベストセット選択ステップは、
参照画像フレームの左右から規定数の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する処理を実行するステップであることを特徴とする請求項７に記載の情報処理方法。
【請求項１３】
情報処理装置において、画像に含まれる画素の３次元位置を算出させるコンピュータ・プログラムであり、
画像選択部に、参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像フレームの選択処理を実行させる画像選択ステップと、
３次元画像データ生成処理実行部に、前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行させる３次元画像データ生成処理実行ステップを有し、
前記画像選択ステップは、
候補画像選択部に、カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択させる候補画像選択ステップと、
ベストセット選択部に、前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択ステップを実行させるステップを含み、
前記３次元画像データ生成処理実行ステップは、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行させるステップであることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに詳細には、画像に含まれる画素の３次元位置の算出処理を行う情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
カメラの撮影画像を解析して撮影画像に含まれるオブジェクトの３次元位置を求める処理が様々な分野で利用されている。例えばカメラを備えたロボットなどのエージェント(移動体)が、カメラの撮影画像を解析して移動環境を観測し、観測状況に応じてエージェント周囲の環境を把握しながら移動を行う処理や、撮影画像に基づいて周囲環境の地図（環境地図）を作成する環境マップ構築処理に利用される。非特許文献１には、特徴点位置の追跡を全フレームで行い、全フレームのデータが得られた後、バッチ処理により特徴点の位置とカメラ位置を算出する方法を開示している。
【０００３】
３次元マップ（３Ｄ  ｍａｐ）の生成処理シーケンスの一例について図１を参照して説明する。まず、ステップ１１においてカメラによって画像を撮影する。例えばカメラを保持したユーザやロボットなどが移動しながら周りの画像を連続的に撮影する。
【０００４】
ステップＳ１２において取得画像の解析によって、画像に含まれる特徴点の位置情報などが含まれる疎な３次元情報を構築する。この処理においては、ＳＬＡＭ（ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ）やＳＦＭ（Ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  Ｍｏｔｉｏｎ）などの処理が適用される。ＳＬＡＭは、カメラから入力する画像内の特徴点の位置と、カメラの位置姿勢を併せて検出する処理である。ＳＦＭは、例えば複数の異なる位置から撮影した画像を利用して画像内に含まれる特徴点（Ｌａｎｄｍａｒｋ）の対応を解析する処理などである。
【０００５】
さらに、ステップＳ１３では、ステップＳ１２において求めたカメラの軌跡情報や画像内の特徴点情報などを利用して、詳細な３次元情報である３次元マップを生成する。
【０００６】
ステップＳ１３における３次元マップ生成処理に際しては、ステップＳ１２において求めた特徴点の位置やカメラ位置姿勢情報を利用して、画像フレームに含まれる各画素（ピクセル）についての３次元位置を決定する処理が行われる。この処理は、例えば図２に示すフローに従って実行される。まず、ステップＳ２１において、複数の近接する画像フレームを単位とした所定領域の３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）の生成処理を実行する。次に、ステップＳ２２において、ステップＳ２１で生成した所定領域単位の３次元画像データをマージする処理が行われる。これらの処理により、カメラによって撮影された画像領域全体の３次元画像データが生成される。
【０００７】
この図２に示すステップ中、ステップＳ２１の処理、すなわち複数の近接する画像フレームを単位とした所定領域の３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）を生成する３次元画像データ生成処理は、各画像フレームの位置姿勢情報とカメラモデル（焦点距離等）情報、特徴点の３次元位置情報を利用して、各画素の三次元位置を決定する方法である。
例えばプレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）と呼ばれる技術で実現される。このプレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）は、例えば図１に示すフローのステップＳ１２で得られる各画像フレームの位置姿勢情報とカメラモデル（焦点距離等）情報、特徴点の３次元位置情報を利用して、その他の画素の３次元位置を決定する処理である。
【０００８】
また、ステップＳ２２の処理、すなわち、ステップＳ２１で生成した所定領域単位の３次元画像データをマージする処理は、複数の３Ｄマップから１つの３Ｄマップを生成する処理であり、例えばメディアンヒュージョン（Ｍｅｄｉａｎ  ｆｕｓｉｏｎ）と呼ばれる技術で実現される。
【０００９】
３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）生成処理の一例である、プレーンスイーピング処理について図３を参照して説明する。例えば図３に示すように重複する領域を撮影した複数の近接する画像フレーム（Ｆ１〜Ｆ５）を選択し、その対応する特徴点を選択する。この特徴点は１つのオブジェクトであり、その３次元空間での位置は１つに定まるはずである。図に示す例では、壁面のポスターが被写体であり、そのポスター内の１つの点が特徴点として設定されている。なお、ｘｙｚの各方向は、
ｙ：高さ方向、
ｘ：参照画像の画像（本例では画像フレームＦ３）平面に平行な水平方向、
ｚ：参照画像の画像（本例では画像フレームＦ３）平面に垂直な奥行方向、
である。
【００１０】
各画像フレーム（Ｆ１〜Ｆ５）を撮影したカメラの位置姿勢情報は、図１に示すフローのステップＳ１２の処理において取得済みであり、また、各画像フレームに対応する解析データとして、特徴点１１の３次元位置も算出済みである。なお各画像フレームに対応して算出されたカメラの位置姿勢情報や、特徴点位置情報には多少の誤差が含まれるが、１つの対応する特徴点１１の位置を収束させる処理、すなわち、バンドル調整処理（Ｂｕｎｄｌｅ  Ａｄｊｕｓｔｍｅｎｔ）によってカメラの位置姿勢情報や、特徴点位置情報を修正して１つの特徴点の３次元位置を１つに収束させる処理が実行され、この処理によって特徴点１１の最終的な３次元位置が決定される。
【００１１】
例えば、図３に示すように、５つの異なる位置からの撮影画像Ｆ１〜Ｆ５から検出した対応特徴点１１を利用する。画像フレームに含まれる特徴点１１の３次元位置は図３に示すように、各画像の撮影ポイントから特徴点の３次元位置１１を結ぶ線（Ｂｕｎｄｌｅ）が１つの特徴点１１の位置において交わるはずである。各画像フレームに対応して算出されたカメラの位置姿勢情報や、特徴点位置情報を修正するバンドル調整処理（Ｂｕｎｄｌｅ  ａｄｊｕｓｔｍｅｎｔ）によって特徴点１１の位置を収束させて正確な特徴点位置情報を算出する。
【００１２】
特徴点周囲の画素データについても、例えば各画像フレームＦ１〜Ｆ５のウィンドウマッチングによって、各画像フレームの対応画像領域を選択して、それぞれの画素が図３に示すＺ（奥行き方向）のいずれの面（プレーン）に属するかを決定していく。この処理をプレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）と呼び、この処理によって、画像フレームに含まれる全ての画素の３次元位置を算出する。
【００１３】
一般的なプレーンスイーピングの処理シーケンスについて図４を参照して説明する。まず、ステップＳ５１において、参照画像フレームの面に平行な面として仮想的に設定した複数のプレーン（図３に示す平面Ｚａ，Ｚｂ，Ｚｃ・・）から１つのプレーンを選択する。次にステップＳ５２において、参照画像フレームに設定したウィンドウの画像を各近接画像フレームの対応位置にワープさせる。これは、選択したプレーンにウィンドウ画像が位置すると仮定して、参照画像フレームに設定したウィンドウ画像を、近接画像フレームの撮影ポイントから撮影した場合に想定される画像を射影変換によって取得する処理である。なお、複数の近接画像フレームに対応ウィンドウが設定されている場合は、それぞれに対して同様の処理を行う。
【００１４】
次にステップＳ５３において、参照画像のウィンドウ画像の射影変換データと、近接画像フレームの対応ウィンドウの画像データとのマッチング（比較）を実行して、ステップＳ５４においてマッチングスコアを算出し記憶部に記録する。類似度が高いほど高いスコアとなる設定としたスコアとする。なお、複数の近接画像フレームに対応ウィンドウが設定されている場合は、それぞれに対して同様の処理を行う。
【００１５】
次にステップＳ５５において未処理プレーンの有無を確認し、未処理プレーンがある場合は、ステップＳ５１に戻り、新たなプレーンを選択して同様の処理を繰り返す。ステップＳ５５において未処理プレーンが無くなったことが確認されると、ステップＳ５６に進み、各ウィンドウについてスコアの高いデータを選択してそのハイスコアが算出されたプレーンをそのウィンドウの設定されるプレーンとする。なお、複数の近接画像フレームに対応ウィンドウが設定され、１つのウィンドウに複数のスコアが算出されている場合は、スコア平均値を算出して比較する。
【００１６】
このプレーンスイーピングは、先に説明したように、図２に示すフローのステップＳ２１において実行されるが、この際、複数の近接する画像フレームを選択する処理が必要となる。例えば図３に示す画像フレームＦ１〜Ｆ５の選択である。プレーンスイーピングを効率的に実行するためには、それぞれの画像フレームに異なる方向から撮影した対応特徴点が含まれ、また重複する画像領域が含まれている画像データを選択することが重要となる。
【００１７】
カメラの撮影した画像フレームを時系列に順次選択した場合、プレーンスイーピングが効率的に実行できない場合がある。図５を参照して説明する。図５はある平面（ｘｚ平面）を移動しながら撮影するカメラの軌跡を示している。図５に示すように、カメラ３１がスタートからエンドまで図に示す軌跡をたどって移動しながら撮影を実行した場合、単に時系列に従って、プレーンスイーピング用の画像フレームを選択したとする。１つの参照画像フレーム（Ｃ）を中心に３つの先行画像フレーム（Ｌ）と３つの後続画像フレーム（Ｒ）を選択すると、図５に示すように、
Ｌ１〜Ｌ３，Ｃ，Ｒ１〜Ｒ３、
これらの７画像が１つのプレーンスイーピングの実行単位である画像集合として選択されることになる。
【００１８】
プレーンスイーピングにおいては、参照画像フレーム（Ｃ）に含まれる画素の距離（Ｚ方向の距離）を算出する処理が行われる。しかし、図５に示すような画像フレームの選択が行われた場合、Ｌ１〜Ｌ３の位置において撮影された画像フレームは、図に示すＸ方向にはほとんど移動がなく奥行き（Ｚ方向）のみが異なる位置で撮影された画像となる。このような画像を用いてプレーンスイーピングを行うと、図３を参照して説明した対応特徴点の収束処理にエラーが発生しやすくなる。
【００１９】
先に説明したバンドル調整処理（Ｂｕｎｄｌｅ  ａｄｊｕｓｔｍｅｎｔ）は、異なる方向からの撮影画像を複数利用することで正確な処理が可能となるからである。Ｌ１〜Ｌ３の位置において撮影された画像フレームに含まれる特徴点や画素の撮影方向は、ほぼ同じであり、バンドル調整処理（Ｂｕｎｄｌｅ  ａｄｊｕｓｔｍｅｎｔ）やプレーンスイーピングが困難になってしまう。これに伴い、特徴点の位置情報などを利用して行われる特徴点以外の画素の３次元位置算出も困難となりエラーが発生しやすくなる。
【非特許文献１】"Ｓｈａｐｅ  ａｎｄ  ｍｏｔｉｏｎ  ｆｒｏｍ  ｉｍａｇｅ  ｓｔｒｅａｍｓ  ｕｎｄｅｒ  ｏｒｔｈｏｇｒａｐｈｙ：  ａ  ｆａｃｔｏｒｉｚａｔｉｏｎ  ｍｅｔｈｏｄ"，Ｃ．Ｔｏｍａｓｉ  ａｎｄ  Ｔ．Ｋａｎａｄｅ，Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  Ｖｏｌｕｍｅ  ９，  Ｎｕｍｂｅｒ  ２，  ｐｐ．１３７−１５４，（１９９２）．
【発明の開示】
【発明が解決しようとする課題】
【００２０】
本発明は、カメラによる撮影画像に基づく３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）の生成処理において、例えば、プレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）処理に適用する複数の画像フレームの選択処理の改良などにより、正確でかつ効率的な３次元画像データの生成を実現する情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２１】
本発明の第１の側面は、
画像に含まれる画素の３次元位置を算出する情報処理装置であり、
参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）生成処理に適用する画像フレームの選択処理を実行する画像選択部と、
前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する３次元画像データ生成処理実行部を有し、
前記画像選択部は、
カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択する候補画像選択部と、
前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択部を有する構成であり、
前記３次元画像データ生成処理実行部は、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する構成であることを特徴とする情報処理装置にある。
【００２２】
さらに、本発明の情報処理装置の一実施態様において、前記候補画像選択部は、
（ａ）選択画像フレームに参照画像フレームに含まれる特徴点に対応する対応特徴点が規定数以上存在すること、
（ｂ）参照画像フレームの焦点位置と、選択画像フレームの焦点位置の位置関係によって決定されるベースラインが規定条件を満足すること、
（ｃ）参照画像フレームの撮影方向と選択画像フレームの撮影方向が規定条件を満足すること、
上記条件（ａ）〜（ｃ）のすべてを満足する画像を３次元画像データ生成処理候補画像として選択する構成であることを特徴とする。
【００２３】
さらに、本発明の情報処理装置の一実施態様において、前記候補画像選択部は、
（ａ）特徴点の条件として、下記判定式、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ・・・（式１）
ただし、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数、
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数、
ｔｈｎ：閾値、
上記判定式（式１）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００２４】
さらに、本発明の情報処理装置の一実施態様において、前記候補画像選択部は、
（ｂ）ベースラインの規定条件として、下記判定式、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
ただし、
ｄｈ：参照画像フレームの焦点位置と、選択画像フレームの焦点位置間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置から、特徴点群中心（ＣｏＧ）までの、参照画像平面に対して垂直方向の距離、
ｔｈｄ１，ｔｈｄ２：閾値、
上記判定式（式２）を満足することを３次元画像データ処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００２５】
さらに、本発明の情報処理装置の一実施態様において、前記候補画像選択部は、
（ｃ）撮影方向の規定条件として、下記判定式、
｜α｜＜ｔｈα・・・（式３）
ただし、
α：参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差
ｔｈα：閾値、
上記判定式（式３）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００２６】
さらに、本発明の情報処理装置の一実施態様において、前記ベストセット選択部は、参照画像フレームの左右から規定数の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する処理を実行する構成であることを特徴とする。
【００２７】
さらに、本発明の第２の側面は、
情報処理装置において、画像に含まれる画素の３次元位置を算出する情報処理方法であり、
画像選択部が、参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像フレームの選択処理を実行する画像選択ステップと、
３次元画像データ生成処理実行部が、前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行する３次元画像データ生成処理実行ステップを有し、
前記画像選択ステップは、
候補画像選択部が、カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択する候補画像選択ステップと、
ベストセット選択部が、前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択ステップを実行するステップを含み、
前記３次元画像データ生成処理実行ステップは、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行するステップであることを特徴とする情報処理方法にある。
【００２８】
さらに、本発明の情報処理方法の一実施態様において、前記候補画像選択ステップは、
（ａ）選択画像フレームに参照画像フレームに含まれる特徴点に対応する対応特徴点が規定数以上存在すること、
（ｂ）参照画像フレームの焦点位置と、選択画像フレームの焦点位置の位置関係によって決定されるベースラインが規定条件を満足すること、
（ｃ）参照画像フレームの撮影方向と選択画像フレームの撮影方向が規定条件を満足すること、
上記条件（ａ）〜（ｃ）のすべてを満足する画像を３次元画像データ生成処理候補画像として選択するステップであることを特徴とする。
【００２９】
さらに、本発明の情報処理方法の一実施態様において、前記候補画像選択ステップは、
（ａ）特徴点の条件として、下記判定式、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ・・・（式１）
ただし、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数、
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数、
ｔｈｎ：閾値、
上記判定式（式１）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００３０】
さらに、本発明の情報処理方法の一実施態様において、前記候補画像選択ステップは、
（ｂ）ベースラインの規定条件として、下記判定式、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
ただし、
ｄｈ：参照画像フレームの焦点位置と、選択画像フレームの焦点位置間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置から、特徴点群中心（ＣｏＧ）までの、参照画像平面に対して垂直方向の距離、
ｔｈｄ１，ｔｈｄ２：閾値、
上記判定式（式２）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００３１】
さらに、本発明の情報処理方法の一実施態様において、前記候補画像選択ステップは、
（ｃ）撮影方向の規定条件として、下記判定式、
｜α｜＜ｔｈα・・・（式３）
ただし、
α：参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差
ｔｈα：閾値、
上記判定式（式３）を満足することを３次元画像データ生成処理候補画像として選択する条件として設定した処理を実行することを特徴とする。
【００３２】
さらに、本発明の情報処理方法の一実施態様において、前記ベストセット選択ステップは、参照画像フレームの左右から規定数の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する処理を実行するステップであることを特徴とする。
【００３３】
さらに、本発明の第３の側面は、
情報処理装置において、画像に含まれる画素の３次元位置を算出させるコンピュータ・プログラムであり、
画像選択部に、参照画像フレームに含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像フレームの選択処理を実行させる画像選択ステップと、
３次元画像データ生成処理実行部に、前記画像選択部において選択された画像セットを利用した３次元画像データ生成処理を実行させる３次元画像データ生成処理実行ステップを有し、
前記画像選択ステップは、
候補画像選択部に、カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを３次元画像データ生成処理候補画像として選択させる候補画像選択ステップと、
ベストセット選択部に、前記候補画像選択部の選択した候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットを選択するベストセット選択ステップを実行させるステップを含み、
前記３次元画像データ生成処理実行ステップは、
前記ベストセット選択部において選択された画像セットを利用した３次元画像データ生成処理を実行させるステップであることを特徴とするコンピュータ・プログラムにある。
【００３４】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００３５】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３６】
本発明の一実施例の構成によれば、画像に含まれる画素の３次元位置決定処理として実行する３次元画像データ生成処理に適用する画像の選択処理に際して、画像フレーム各々について、特定の参照画像フレームに対する３次元画像データ生成処理に適する画像であるか否かを判定して、適切と判定した画像のみを候補画像として選択し、さらに候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットをベストセットとして選択し、このベストセットを利用した３次元画像データ生成処理を実行する構成とした。本構成によれば、３次元画像データ生成処理の実行に際して、特徴点や画素に対応する３次元位置の算出が困難となるような画像選択がなされることがなくなり、正確で効率的な３次元画像データ生成処理を行うことが可能となる。
【発明を実施するための最良の形態】
【００３７】
以下、図面を参照しながら本発明の実施形態に係る情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。
【００３８】
本発明の概要について、図６を参照して説明する。本発明の情報処理装置１２０は、例えば移動するユーザ１０１の保持するカメラ１０２の撮影画像、例えば動画像を構成する画像を入力し、その入力画像の解析を実行して撮影画像に含まれる様々なオブジェクトからなる３次元画像情報１０３を生成する。
【００３９】
情報処理装置１２０は、先に図１を参照して説明した処理と同様、取得画像の解析によって、画像に含まれる特徴点の位置情報などが含まれる疎な３次元マップ１３１を、ＳＬＡＭ（ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ）やＳＦＭ（Ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  Ｍｏｔｉｏｎ）などの処理を適用して生成し、さらに、カメラの軌跡情報や画像内の特徴点情報などを利用して詳細な３次元情報である密な３次元マップ１３２を生成する。
【００４０】
先に説明したように、ＳＬＡＭは、カメラから入力する画像内の特徴点の位置と、カメラの位置姿勢を併せて検出する処理である。ＳＦＭは、例えば複数の異なる位置から撮影した画像を利用して画像内に含まれる特徴点（Ｌａｎｄｍａｒｋ）の対応を解析する処理などである。
【００４１】
ＳＬＡＭ（ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ）やＳＦＭ（Ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  Ｍｏｔｉｏｎ）などの処理を適用して各画像フレームに対応する特徴点位置情報とカメラ位置姿勢情報が取得される。その後、これらの情報を適用して密な３次元マップ１３２を生成する。
【００４２】
密な３次元マップは、特徴点の３次元位置のみならず、画像に含まれる全ての画素の３次元位置の算出が必要であり、この処理のために、先に図２参照して説明した処理、すなわち、
複数の近接する画像フレームを単位とした所定領域の３次元画像データ（Ｄｅｐｔｈ  ｍａｐ）を生成する一手法であるプレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）処理、
所定領域単位の３次元画像データをマージするメディアンヒュージョン（Ｍｅｄｉａｎ  ｆｕｓｉｏｎ）処理、
これらの処理を実行して、３次元画像データが完成する。
本発明の情報処理装置１２０は、このプレーンスイーピング処理（３次元画像データ生成処理）の改良に関する。
【００４３】
まず、本発明に係る情報処理装置１２０において実行するプレーンスイーピング（Ｐｌａｎｅ  ｓｗｅｅｐｉｎｇ）処理における画像フレームの選択処理の概要について図７を参照して説明する。
【００４４】
図７は、先に説明した図５と同様、ある平面（ｘｚ平面）を移動しながら撮影するカメラの軌跡を示している。図７に示すように、カメラ１０２がスタートからエンドまで図に示す軌跡をたどって移動しながら撮影を実行したとする。なお、ｘｙｚの各方向は、
ｙ：高さ方向、
ｘ：参照画像の画像（本例ではカメラ位置（Ｃ）の画像）平面に平行な水平方向、
ｚ：参照画像の画像（本例ではカメラ位置（Ｃ）の画像）平面に垂直な奥行方向、
である。
【００４５】
先に図５を参照して説明した例では、単に時系列に従って画像フレーム選択を行った例について説明した。このような処理では、異なる方向からの撮影画像フレームが選択されない場合があり、プレーンスイーピングが正しく効率的に実行できないことは先に述べた通りである。
【００４６】
本発明の情報処理装置１２０では、例えば図７に示す１つの参照画像フレーム（Ｃ）を撮影したカメラ位置２０１を中心として、左右に撮影方向を分離して、最適な位置、姿勢にあるカメラの撮影画像を選択する。図７の例では、
Ｌ１〜Ｌ３，Ｃ，Ｒ１〜Ｒ３、
これらの７画像が１つのプレーンスイーピングの実行単位である画像集合として選択されることになる。
【００４７】
すなわち、本発明の処理では、撮影済みの画像フレームを単利時系列に従って区切るのではなく、撮影された画像フレーム全体から、プレーンスイーピングに適した画像フレームの集合を選択する処理を実行してプレーンスイーピングを行う。
【００４８】
図８に示すフローチャートは、本発明に従ったプレーンスイーピング用画像フレームの選択処理シーケンスを説明するフローチャートである。この図８に示すフローは、ある１つの参照イメージとなる参照画像フレームに対して最適なプレーンスイーピング用画像フレームを決定するシーケンスである。
【００４９】
まず、ステップＳ１０１において、カメラの撮影した画像フレーム中から、プレーンスイーピング用画像フレーム候補を選択する。次に、ステップＳ１０２において、選択画像フレーム候補からプレーンスイーピング用画像フレームのセットを決定する。
【００５０】
この処理フローにおけるステップＳ１０１のプレーンスイーピング用画像フレーム候補の選択シーケンスについて図９に示すフローチャートを参照して説明する。この図９に示すフローは、１つの参照イメージとなる画像フレームを選択後、その参照画像フレームに対して最適なプレーンスイーピング用画像フレームの候補となる複数の画像フレームを選択するシーケンスである。
【００５１】
ステップＳ１５１において、画像フレームを１つ選択する。これはカメラによって撮影された画像フレームを順番に選択する処理である。選択順番は特に限定しない。例えば時系列順でよい。
【００５２】
ステップＳ１５２では、選択画像フレームの位置姿勢（Ｐｏｓｅ）がプレーンスイーピング用画像フレームとしての規定条件を満足するか否かを判定する。この判定処理の詳細シーケンスについて、図１０に示すフローチャートを参照して説明する。
【００５３】
まず、ステップＳ２０１において対応特徴点数が規定数以上であるか否かを判定する。すなわち、選択画像フレームに含まれる特徴点と参照画像フレーム各々において抽出された特徴点の中から対応特徴点を選択し、その対応特徴点数が予め設定した基準以上であるか否かを判定する。具体的には、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数
閾値係数：ｔｈｎ
とした場合、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ  ・・・（式１）
上記式（式１）が成立すれば、対応特徴点数が規定数以上であると判定する。
たとえば、閾値係数：ｔｈｎ＝０．７とする。
【００５４】
すなわち、参照画像フレームから検出された特徴点の７０％以上の対応特徴点が選択画像フレームに含まれている場合には、ステップＳ２０１において対応特徴点数が規定数以上であると判定してステップＳ２０２に進む。７０％未満である場合は、ステップＳ２０１の判定はＮｏとなりステップＳ２１１に進み、選択画像フレームの位置姿勢は不良と判定される。
【００５５】
ステップＳ２０１において対応特徴点数が規定数以上であると判定した場合は、ステップＳ２０２に進み、ベースラインが、予め設定された規定条件を満足するか否かを判定する。この処理について、図１１を参照して説明する。ベースラインは参照画像の撮影カメラと選択画像フレームの撮影カメラの位置姿勢によって規定される値である。
【００５６】
図１１に示すように、参照画像フレームの撮影カメラ２１０と選択画像フレームの撮影カメラ２２０がそれぞれ位置し、カメラ２１０は、参照画像フレーム撮影領域２１１を撮影し、カメラ２２０は、選択画像フレーム撮影領域２２１を撮影している。それぞれの画像フレームには複数の特徴点２３１が検出済みである。なお、ステップＳ２０１の判定を満足している場合、参照画像フレームから検出される特徴点の７０％以上の対応特徴点が選択画像フレームに含まれていることになる。図１１に示す特徴点群中心（ＣｏＧ）２５１は、参照画像フレームから検出された複数の特徴点の中心位置に対応する。複数の特徴点の３次元位置の平均値によって決定される位置である。
【００５７】
ここで、ｄｈ，ｄｃを以下のように定義する。
ｄｈ：参照画像フレームの焦点位置２１５と、選択画像フレームの焦点位置２２５間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置２１５から、特徴点群中心（ＣｏＧ）２５１までの、参照画像平面に対して垂直方向の距離
これらの距離［ｄｈ，ｄｃ］について、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
上記式（式２）が成立すれば、ベースラインが規定条件を満足すると判定する。
なお、例えば、
ｔｈｄ１＝０．１
ｔｈｄ２＝０．５
である。
【００５８】
すなわち、例えば、選択画像フレームについて、
０．１≦（ｄｈ／ｄｃ）≦０．５
上記式を満足する場合は、ステップＳ２０２の判定はＹｅｓとなり、ステップＳ２０３に進む。上記式を満足しない場合は、ステップＳ２０２の判定はＮｏとなりステップＳ２１１に進み、選択画像フレームの位置姿勢は不良と判定される。
【００５９】
ステップＳ２０１において上記式（式２）を満足した場合は、ステップＳ２０３に進み、選択画像フレームの撮影方向が規定条件を満足するか否かを判定する。この処理について、図１１を参照して説明する。ステップＳ２０３の判定処理は、参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差［α］が閾値［ｔｈα］未満であるか否かを判定する処理として実行する。すなわち、
｜α｜＜ｔｈα・・・（式３）
上記式（式３）が成立すれば、選択画像フレームの撮影方向が規定条件を満足すると判定する。
なお、例えば、
ｔｈα＝２０度（ｄｅｇ）
である。
【００６０】
ステップＳ２０３において、上記式（式３）を満足する場合は、ステップＳ２０３の判定はＹｅｓとなり、ステップＳ２０４に進む。上記式を満足しない場合は、ステップＳ２０３の判定はＮｏとなりステップＳ２１１に進み、選択画像フレームの位置姿勢は不良と判定される。
【００６１】
ステップＳ２０１〜Ｓ２０３の判定が全てＹｅｓと判定された選択画像フレームが、ステップＳ２０４において、位置姿勢（Ｐｏｓｅ）が良好なフレームとして選択されることになる。すなわち、図９のフローチャートにおけるステップＳ１５２において選択画像フレームの位置姿勢（Ｐｏｓｅ）がプレーンスイーピング用画像フレームとしての規定条件を満足すると判定され、ステップＳ１５３に進み、この選択画像フレームをプレーンスイーピング用の画像フレーム候補として決定する。一方、図１０のフローにおいて、ステップＳ２０１〜Ｓ２０３の判定のいずれかがＮｏと判定された場合は、その選択画像フレームは、プレーンスイーピング用画像フレームとしての規定条件を満足しないと判定され、ステップＳ１５４に進み、次の未処理画像の処理に移行する。
【００６２】
このようにしてある１つの参照画像フレームに対応するプレーンスイーピング用画像フレームの選択処理が実行される。この処理によって、図８に示すフローのステップＳ１０１の処理が終了する。
【００６３】
次に、図８に示すフローのステップＳ１０２の処理、すなわち、ステップＳ１０１において選択されたプレーンスイーピング用画像フレーム候補から、最終的にプレーンスイーピングに適用する画像フレームのセットを決定する処理を行う。この処理の詳細シーケンスについて、図１２に示すフローチャートを参照して説明する。
【００６４】
なお、図１２に示すフローは、選択済みの特定の参照画像フレームに対応して、図９に示すフローに従って選択された複数のプレーンスイーピング用画像フレーム候補から、各参照画像フレームに対応して利用するプレーンスイーピング用画像フレームのベストセットを決定する処理シーケンスを説明するフローである。すなわち、この図１２に示すフローは、複数の参照画像フレーム各々に対して実行することになる。
【００６５】
特定の参照画像フレームに対して、まず、ステップＳ２５１において、プレーンスイーピング用画像フレーム候補を２分割する。このプレーンスイーピング用画像フレーム候補は、図１０のフローチャートに従って選択された画像フレームであり、ある特定の参照画像フレームに対してプレーンスイーピング用画像フレームとして適切であると判定された画像フレームである。
【００６６】
例えば図１３に示すように、参照画像フレームの焦点３０１を中心位置として、参照画像フレームの画像フレーム平面（ＸＹ平面）に、複数の候補画像の焦点位置［●］を展開した構成を用いて説明する。参照画像フレームの焦点３０１を通る垂直境界線３０２によって、候補画像を左側と右側に２分割する。
【００６７】
本例では、プレーンスイーピング用画像フレーム候補として、
右側に［Ｒ１］，［Ｒ２］，［Ｒ３］，［Ｒ４］、
左側に［Ｌ１］，［Ｌ２］，［Ｌ３］，［Ｌ４］，［Ｌ５］、
これらの候補が選択されているとする。
これらの候補は、全て図１０のフローチャートに従って選択された画像フレームであり、ある特定の参照画像フレームに対してプレーンスイーピング用画像フレームとして適切であると判定された画像フレームである。
【００６８】
図１２に示すフローのステップＳ２５２では、画像フレームが予め設定した閾値数［Ｍ］以上存在するか否かを判定する。例えば本例では、Ｍ＝３として、参照画像の左右両側にそれぞれ３個以上のプレーンスイーピング用画像フレーム候補が存在するか否かを判定する。存在しない場合は、ステップＳ２５２の判定はＮｏとなり、ステップＳ２６１に進み、ベストセットの選択失敗として処理を終了する。
【００６９】
図１３に示すように、参照画像の左右両側にそれぞれ３個以上のプレーンスイーピング用画像フレーム候補が存在する場合は、ステップＳ２５２の判定はＹｅｓとなり、ステップＳ２５３に進む。ステップＳ２５３では、左側画像フレームから、予め設定された数［Ｍ＝３］個の画像フレームを選択し、さらに、ステップＳ２５４で、右側画像フレームから、予め設定された数［Ｍ＝３］個の画像フレームを選択する。なお、選択はランダムに選択する設定でよい。
【００７０】
例えば、
右側から、［Ｒ１］，［Ｒ２］，［Ｒ３］、
左側から、［Ｌ１］，［Ｌ２］，［Ｌ３］、
このように３個ずつを選択する。
【００７１】
次に、ステップＳ２５５において、選択された画像フレームセットに対応するスコアを算出する。このスコアは、例えば、選択したフレーム画像［Ｒ１］，［Ｒ２］，［Ｒ３］，［Ｌ１］，［Ｌ２］，［Ｌ３］に参照画像［Ｃ］を加えた合計７つの画像フレームの、参照画像フレームの画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとする。
【００７２】
選択したフレーム画像［Ｒ１］，［Ｒ２］，［Ｒ３］，［Ｌ１］，［Ｌ２］，［Ｌ３］に参照画像［Ｃ］を加えた合計７つの画像フレームの、参照画像フレームの画像フレーム平面（ＸＹ平面）における距離としては、
７Ｃ２の２１個の距離データが算出されるが、この２１個の距離データ中の最小の距離データをスコアとして、このスコアが最大となる画像フレームのセットをベストセットとして選択する処理を実行する。
【００７３】
本例の場合、フレーム画像［Ｒ１］，［Ｒ２］，［Ｒ３］，［Ｌ１］，［Ｌ２］，［Ｌ３］に参照画像［Ｃ］を加えた合計７つの画像フレームの、参照画像フレームの画像フレーム平面（ＸＹ平面）における距離は、図１４に示す点線のように、７Ｃ２の２１個の距離データが算出され、参照画像フレーム（Ｃ）と候補（Ｒ２）との距離が最小距離（Ｍｉｎｉｍｕｍ  ｄｉｓｔａｎｃｅ）として算出される。
【００７４】
次にステップＳ２５６に進み、選択セットの切り替えの要否を判定する。例えば、上記の算出スコアと予め設定した閾値を比較して、スコアが閾値未満である場合は、選択セットの組み合わせを変更して、候補セットの選択、スコア算出を繰り返す。切り換えたセットにおいて算出されたスコアが閾値以上となった場合は、ステップＳ２５７に進み、そのセットをベストセットとして決定する。
【００７５】
なお、全ての組み合わせのセットのスコアが閾値未満である場合は、最高のスコアを示したセットをベストセットして決定してよい。また、特に閾値を設定せず、すべての組み合わせについてのスコアを算出して、スコアが最大となるセットをベストセットとして決定する構成としてもよい。
【００７６】
このように図１２に示すフローチャートに従って、図８のフローのステップＳ１０２の選択画像フレーム候補からのプレーンスイーピング用画像フレームのセットの決定処理が行われる。
【００７７】
このプレーンスイーピング用画像フレームのセット決定処理は、参照画像フレーム各々に対して実行されることになる。参照画像フレーム各々に対して決定されたプレーンスイーピング用画像フレームのセットを用いて、プレーンスイーピング処理が実行され、参照画像フレームの構成画素の３次元位置が決定される。この処理は先に図２を参照して説明したフローのステップＳ２１の処理として実行された後、複数の参照画像に対応して算出された３次元画像データが、ステップＳ２２の処理でマージされ、カメラ撮影画像全体の３次元画像データが生成される。
【００７８】
本発明の情報処理装置では、上述したように、まず、プレーンスイーピングに適用する画像候補を、図１０に示すフローに従った複数の判定処理の結果に基づいて選定する。具体的には、
（ａ）特徴点が規定条件を満足する
（ｂ）ベースラインが規定条件を満足する
（ｃ）撮影方向が規定条件を満足する、
これらの３条件を満足する画像フレームのみをプレーンスイーピングに適用する画像候補として選択する。
【００７９】
具体的には、
（ａ）特徴点の条件、
Ｎ＞（ｔｈｎ）×Ｎｒｅｆ  ・・・（式１）
ただし、
Ｎ：選択画像フレームと参照画像フレームに共通に存在する対応特徴点数
Ｎｒｅｆ：参照画像フレームにおいて抽出されている特徴点数
ｔｈｎ：閾値（例えばｔｈｎ＝０．７）
上記式（式１）を満足すること。
【００８０】
さらに、
（ｂ）ベースラインの規定条件、
ｔｈｄ１≦（ｄｈ／ｄｃ）≦ｔｈｄ２  ・・・（式２）
ただし、
ｄｈ：参照画像フレームの焦点位置と、選択画像フレームの焦点位置間の、参照画像フレーム面に平行な平面に沿った距離
ｄｃ：参照画像フレームの焦点位置から、特徴点群中心（ＣｏＧ）までの、参照画像平面に対して垂直方向の距離、
ｔｈｄ１，ｔｈｄ２：閾値（例えばｔｈｄ１＝０．１，ｔｈｄ２＝０．５）
上記式（式２）を満足すること。
【００８１】
さらに、
（ｃ）撮影方向が規定条件、
｜α｜＜ｔｈα・・・（式３）
ただし、
α：参照画像フレームの撮影方向と、選択画像フレームの撮影方向との角度差
ｔｈα：閾値（例えばｔｈα＝２０度（ｄｅｇ））
上記式（式３）を満足すること。
【００８２】
これらの３条件を満足する画像フレームのみをプレーンスイーピングに適用する画像候補として選択し、さらに、これらの条件を満足する画像候補から、プレーンスイーピングに適用する画像として最適なベストセットを選択するために、図１２のフローを参照して説明した処理に従った処理を実行する。
【００８３】
すなわち、参照画像フレームの左右から規定数［Ｍ］の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像［Ｃ］を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する。
【００８４】
このような処理を行うことで、プレーンスイーピングの実行に際して、例えば先に図５を参照して説明したような特徴点や画素に対応する３次元位置の算出が困難となるような画像選択がなされることがなくなり、正確で効率的なプレーンスイーピングを行うことが可能となる。
【００８５】
図１５に本発明の情報処理装置の構成例を示す。情報処理装置１２０は、先に図６を参照して説明したように例えば移動するユーザ１０１の保持するカメラ１０２の撮影画像、例えば動画像を構成する画像を入力し、その入力画像の解析を実行して撮影画像に含まれるオブジェクトについての３次元画像情報１０３を生成する。
【００８６】
情報処理装置１２０は、図１５に示すように、画像入力部５０１、特徴点位置＆カメラ位置姿勢算出部（ＳＦＭ／ＳＬＡＭ）５０２、画像選択部５０３、３次元画像データ生成処理実行部に相当するプレーンスイーピング処理実行部５０６、マージ処理部５０７、記憶部５０８を有する。画像選択部５０３は、候補画像選択部５０４と、ベストセット選択部５０５を有する。
【００８７】
画像入力部５０１は、図５を参照して説明したように例えば移動するユーザ１０１の保持するカメラ１０２の撮影画像を入力して、特徴点位置＆カメラ位置姿勢算出部（ＳＦＭ／ＳＬＡＭ）５０２に入力する。特徴点位置＆カメラ位置姿勢算出部（ＳＦＭ／ＳＬＡＭ）５０２では、ＳＬＡＭ（ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ）やＳＦＭ（Ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  Ｍｏｔｉｏｎ）などの処理を適用して画像内の特徴点の位置と、カメラの位置姿勢を検出する。
【００８８】
撮影画像フレームデータと、特徴点位置情報およびカメラ位置姿勢情報は、画像選択部５０３に入力される。画像選択部５０３はプレーンスイーピング処理実行部５０６におけるプレーンスイーピング処理に適用する画像セットを選択する。例えば時系列順の画像フレームを一定間隔にピックアップして参照画像を決定し、決定した参照画像に対応する最適なプレーンスイーピング画像のセットを選択する。図７〜図１４を参照して説明した処理である。
【００８９】
すなわち画像選択部５０３は、参照画像フレームに含まれる画素の３次元位置決定処理として実行するプレーンスイーピング処理に適用する画像フレームの選択処理を実行する処理部であり、カメラの撮影画像フレームを順次選択して選択画像フレーム各々について、特定の参照画像フレームに対するプレーンスイーピングに適する画像であるか否かを判定して、適切と判定した画像のみをプレーンスイーピング処理候補画像として選択する候補画像選択部５０４と、候補画像選択部５０４の選択した候補画像を複数組み合わせて設定した画像セットから、プレーンスイーピング処理に適用する最適な画像セットを選択するベストセット選択部５０５を有する。
【００９０】
３次元画像データ生成処理実行部に相当するプレーンスイーピング処理実行部５０６は、ベストセット選択部５０５において選択された画像セットを利用したプレースイーピング処理を実行する。さらに、マージ処理部５０７は、プレーンスイーピング処理実行部５０６において生成したデータをマージして、カメラによって撮影された画像全体の３次元画像データを生成する。なお、記憶部５０８には画像フレームの他、各処理部において算出されたデータが記録される。
【００９１】
候補画像選択部５０４は、先に説明した図９、図１０に示すフローチャートに従った処理を実行してプレーンスイーピングに適する画像候補を選択する。具体的には、
（ａ）選択画像フレームに参照画像フレームに含まれる特徴点に対応する対応特徴点が規定数以上存在すること、
（ｂ）参照画像フレームの焦点位置と、選択画像フレームの焦点位置の位置関係によって決定されるベースラインが規定条件を満足すること、
（ｃ）参照画像フレームの撮影方向と選択画像フレームの撮影方向が規定条件を満足すること、
上記条件（ａ）〜（ｃ）のすべてを満足する画像をプレーンスイーピング処理候補画像として選択する。
【００９２】
ベストセット選択部５０５は、先に説明した図１２に示すフローチャートに従った処理を実行してプレーンスイーピング処理に利用する画像セットを決定する。すなわち、参照画像フレームの左右から規定数の画像を選択して、選択した画像フレームセットに対応するスコアとして、選択したフレーム画像に参照画像を加えた複数の画像フレームについて、参照画像フレーム平面（ＸＹ平面）における距離の最小値をスコアとして算出して、スコアが最大値の組み合わせ、または予め設定した閾値以上のスコアを有するセットを最終的なベストセットとして決定する処理を実行する。
【００９３】
このような処理を行うことで、プレーンスイーピングの実行に際して、例えば先に図５を参照して説明したような特徴点や画素に対応する３次元位置の算出が困難となるような画像選択がなされることがなくなり、正確で効率的なプレーンスイーピングを行うことが可能となる。
【００９４】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【００９５】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【００９６】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【００９７】
以上、説明したように、本発明の一実施例の構成によれば、画像に含まれる画素の３次元画像データ生成処理に適用する画像の選択処理に際して、画像フレーム各々について、特定の参照画像フレームに適する画像であるか否かを判定して、適切と判定した画像のみを候補画像として選択し、さらに候補画像を複数組み合わせて設定した画像セットから、３次元画像データ生成処理に適用する最適な画像セットをベストセットとして選択し、このベストセットを利用した３次元画像データ生成処理を実行する構成とした。本構成によれば、３次元画像データ生成の実行に際して、特徴点や画素に対応する３次元位置の算出が困難となるような画像選択がなされることがなくなり、正確で効率的な３次元画像データ生成を行うことが可能となる。
【図面の簡単な説明】
【００９８】
【図１】３次元マップ（３Ｄ  ｍａｐ）の生成処理シーケンスの一例について説明するフローチャートを示す図である。
【図２】画像フレームに含まれる各画素（ピクセル）についての３次元位置を決定する処理シーケンスの一例について説明するフローチャートを示す図である。
【図３】３次元画像データ生成の一例である、プレーンスイーピング処理について説明する図である。
【図４】プレーンスイーピング処理のシーケンスについて説明するフローチャートを示す図である。
【図５】プレーンスイーピング処理における画像選択の問題点について説明する図である。
【図６】本発明の処理の概要について説明する図である。
【図７】本発明の一実施例に従ったプレーンスイーピング処理における画像選択処理について説明する図である。
【図８】本発明の一実施例に従ったプレーンスイーピング用画像フレームの選択処理シーケンスを説明するフローチャートを示す図である。
【図９】プレーンスイーピング用画像フレーム候補の選択シーケンスについて説明するフローチャートを示す図である。
【図１０】プレーンスイーピング用画像フレーム候補の選択シーケンスについて説明するフローチャートを示す図である。
【図１１】プレーンスイーピング用画像フレーム候補の選択処理において利用する情報について説明する図である。
【図１２】各参照画像フレームに対応して利用するプレーンスイーピング用画像フレームのベストセットを決定する処理シーケンスを説明するフローチャートを示す図である。
【図１３】プレーンスイーピング用画像フレームのベストセットを決定する処理について説明する図である。
【図１４】プレーンスイーピング用画像フレームのベストセットを決定する処理について説明する図である。
【図１５】本発明の一実施例に係る情報処理装置の構成例について説明する図である。
【符号の説明】
【００９９】
１１  特徴点
３１  カメラ
１０１  ユーザ
１０２  カメラ
１０３  ３次元画像情報
１２０  情報処理装置
１３１  疎な３次元マップ
１３２  密な３次元マップ
２０１  カメラ位置
２１０  カメラ
２１１  参照画像フレーム撮影領域
２１５  参照画像フレームの焦点位置
２２０  カメラ
２２１  選択画像フレーム撮影領域
２２５  選択画像フレームの焦点位置
２３１  特徴点
２５１  特徴点群中心
３０２  垂直境界線
５０１  画像入力部
５０２  特徴点位置＆カメラ位置姿勢算出部（ＳＦＭ／ＳＬＡＭ）
５０３  画像選択部
５０４  候補画像選択部
５０５  ベストセット選択部
５０６  プレーンスイーピング処理実行部
５０７  マージ処理部
５０８  記憶部
【図１】
2009237846.tif 000003
【図２】
2009237846.tif 000004
【図４】
2009237846.tif 000005
【図５】
2009237846.tif 000006
【図７】
2009237846.tif 000007
【図８】
2009237846.tif 000008
【図９】
2009237846.tif 000009
【図１０】
2009237846.tif 000010
【図１１】
2009237846.tif 000011
【図１２】
2009237846.tif 000012
【図１５】
2009237846.tif 000013
【図３】
2009237846.tif 000014
【図６】
2009237846.tif 000015
【図１３】
2009237846.tif 000016
【図１４】
2009237846.tif 000017