JP2017187882A - 画像処理に用いられるコンピュータープログラム - Google Patents
画像処理に用いられるコンピュータープログラム Download PDFInfo
- Publication number
- JP2017187882A JP2017187882A JP2016075092A JP2016075092A JP2017187882A JP 2017187882 A JP2017187882 A JP 2017187882A JP 2016075092 A JP2016075092 A JP 2016075092A JP 2016075092 A JP2016075092 A JP 2016075092A JP 2017187882 A JP2017187882 A JP 2017187882A
- Authority
- JP
- Japan
- Prior art keywords
- real object
- model
- computer program
- image
- posture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/251—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/564—Depth or shape recovery from multiple images from contours
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
【課題】撮像された物体の画像を用いて、撮像された物体の姿勢以外の情報を用いて各種処理を行なう。
【解決手段】画像処理システムと通信可能なコンピューターのためのコンピュータープログラムは;実物体が撮像されて得られる撮像画像データに基づく実物体の画像を表示装置に表示させる機能と;実物体に対応する3Dモデルを所定のビューに基づいて写像して得られた2Dモデルを表示装置に表示させる機能と;表示装置によって実物体と前記2Dモデルとがほぼ一致して表示された後で、実物体の外観情報と、前記2Dモデルのデータと、を対応付けて記憶装置に記憶させる記憶機能と、をコンピューターによって実現させる。
【選択図】図1
【解決手段】画像処理システムと通信可能なコンピューターのためのコンピュータープログラムは;実物体が撮像されて得られる撮像画像データに基づく実物体の画像を表示装置に表示させる機能と;実物体に対応する3Dモデルを所定のビューに基づいて写像して得られた2Dモデルを表示装置に表示させる機能と;表示装置によって実物体と前記2Dモデルとがほぼ一致して表示された後で、実物体の外観情報と、前記2Dモデルのデータと、を対応付けて記憶装置に記憶させる記憶機能と、をコンピューターによって実現させる。
【選択図】図1
Description
本発明は、画像処理システムと通信可能なコンピューターに画像処理を実現させるためのコンピュータープログラムに関する。
カメラによって撮像された物体の姿勢を推定する方法として、特許文献1には、物体の画像を含む入力画像の2値マスクを作成し、2値マスクから物体の内側および外側輪郭内にある点としてのシングレットを抽出し、シングレットのセットを連結してデュプレックス行列として表されるメッシュにすることで、物体の姿勢を推定する技術が記載されている。
オブジェクト認識(物体認識:物体検出)は、シーンにおいて関心のあるオブジェクトを検出することと、所定の3次元座標系に対するその姿勢(並進と配向)を特定することとの双方を含む。RGB/輝度画像からの色または輝度情報を用いてオブジェクト認識問題を解決し、検出精度および姿勢特定の精度を向上させるためには、コンピュータービジョンシステムは、普通はオフライントレーニングフェーズの間に、多様なビューポイントから見たオブジェクトの見た目(外観情報)を記憶していることが好ましい。
ただし、オブジェクトのアピアランスを含むトレーニングデータ(テンプレート)を生成することは、コンピュータービジョンおよびオブジェクト認識の分野の事前知識に関する知識を必要とすることから、通常の使用者には扱いにくい作業である。
トレーニングデータ(テンプレート)の生成のために、テクスチャ情報(つまり、テクスチャマップ)を伴った3DCADモデルを入手できる場合には、異なるビューポイント(ビュー)からのオブジェクトのフォトリアリスティックな(写真のような実写感を伴った)レンダリング(2D面への描画)が可能である。生成画像の精度は、与えられた外観情報(テクスチャ情報)の解像度およびシミュレートされた照明に関する要素に依存する。ただし、このような3DCADモデルが普及しているとはいえない。つまり、検出したい実オブジェクトについて、使用者が、このような外観情報を伴う3DCADモデルを常に入手できるとは限らない。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態として実現することが可能である。
(1)本発明の一形態によれば、記憶装置と、表示装置と、を備えた画像処理システムと通信可能なコンピューターのためのコンピュータープログラムが提供される。このコンピュータープログラムは、実物体が撮像されて得られる撮像画像データに基づく前記実物体の画像を前記表示装置に表示させる機能と;前記実物体に対応する3Dモデルを所定のビューに基づいて写像して得られた2Dモデルを前記表示装置に表示させる機能と;前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させる記憶機能と、をコンピューターによって実現させる。この形態のコンピュータープログラムによれば、実物体の表面の見えの情報である外観情報を有さない3Dモデルに、撮像画像データによって取得された外観情報を対応付けることができる。外観情報を対応付けられた3Dモデルを参照することで、使用者は、外観情報を有さないCADモデルなどと比較して、より実物の実物体に近いモデルを入手でき、使用者の利便性が向上する。
(2)上記形態のコンピュータープログラムにおいて、さらに;前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示されるように前記ビューを調整するためのユーザーインターフェース機能を、コンピューターに実現させてもよい。この形態のコンピュータープログラムによれば、実物体と2Dモデルとが一致した状態を初期姿勢として、外観情報と2Dモデルとの対応付けを開始でき、外観情報と3Dモデルとの対応付けの精度を向上させることができる。
(3)上記形態のコンピュータープログラムにおいて、前記撮像画像データは前記実物体の静止画像を表してもよい。この形態のコンピュータープログラムによれば、容量の少ないデータに基づいて、外観情報と3Dモデルとの対応付けを実行できる。
(4)上記形態のコンピュータープログラムにおいて、さらに;前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記ビューを改善する改善機能を、コンピューターに実現させ、前記記憶機能は、前記実物体の外観情報と、改善された前記ビューに基づいて得られた前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させてもよい。この形態のコンピュータープログラムによれば、改善機能によって実物体の3Dモデルとの対応付けの精度が向上する。
(5)上記形態のコンピュータープログラムにおいて、さらに;前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記撮像画像データに少なくとも基づいて前記実物体の姿勢を追跡する追跡機能と;前記追跡された姿勢に対応した前記ビューに基づいて前記3Dモデルから前記2Dモデルを得る機能と;コンピューターに実現させ;前記記憶機能は、前記姿勢を追跡することで得られた複数の前記姿勢のそれぞれについて、前記前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させてもよい。この形態のコンピュータープログラムによれば、実物体の姿勢の追跡の進行具合をリアルタイムで使用者に認識させることができ、使用者の利便性が向上する。
(6)上記形態のコンピュータープログラムにおいて、前記コンピューターは、さらに、撮像部を有し;前記コンピュータープログラムは、さらに;前記撮像部を用いて、前記実物体が撮像された前記撮像画像データを取得する機能を、コンピューターによって実現させてもよい。この形態のコンピュータープログラムによれば、撮像部が実物体を撮像できれば、複雑な装置を必要とせずに、3Dモデルの姿勢と実物体の外観情報とを対応付けられる。
(7)上記形態のコンピュータープログラムにおいて、前記撮像部は、前記撮像画像データとして、前記実物体に対する前記撮像部の位置を変化させつつ取得した映像シーケンスを取得し;前記コンピュータープログラムは、さらに;前記映像シーケンスの中から、前記3Dモデルのビューに対応する姿勢を有する実物体を表す一の画像フレームが選択された場合に、前記ビューを改善することで前記実物体の姿勢を導出する導出機能と;前記一の画像フレームの前後方向の各画像フレームについて、前記実物体の前記姿勢を追跡する追跡機能と;をコンピューターに実現させ;前記記憶機能は、前記姿勢を追跡することで得られた複数の前記姿勢のそれぞれについて、前記前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させてもよい。この形態のコンピュータープログラムによれば、写像エラーを最小化することで、実物体の外観情報と3Dモデルとの対応付けの精度をより向上させることができる。
本発明は、コンピュータープログラム以外の種々の形態で実現することも可能である。例えば、情報処理装置、画像表示装置、情報処理装置および画像表示装置の制御方法、情報処理システム、コンピュータープログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号等の形態で実現できる。
本明細書では、以下の項目に沿って順番に説明する。
A.第1実施形態:
A−1.画像処理システムの構成:
A−2.マーカーを用いないデータ作成:
A−2−1.オンラインにおけるデータ作成:
A−2−2.オフラインにおけるデータ作成:
B.第2実施形態:
B−1.画像処理システムの構成:
B−2.マーカーに基づくデータ作成:
C.変形例:
A.第1実施形態:
A−1.画像処理システムの構成:
A−2.マーカーを用いないデータ作成:
A−2−1.オンラインにおけるデータ作成:
A−2−2.オフラインにおけるデータ作成:
B.第2実施形態:
B−1.画像処理システムの構成:
B−2.マーカーに基づくデータ作成:
C.変形例:
A.第1実施形態:
A−1.画像処理システムの構成:
図1は、本実施形態における画像処理システムSYSの概略構成図である。画像処理システムSYSは、対象となる実物体OB1を撮像して、撮像した実物体OB1の撮像画像データと、予め記憶された実物体OB1の3Dモデルのデータと、を対応付けた新たな対応付けデータを作成する。
A−1.画像処理システムの構成:
図1は、本実施形態における画像処理システムSYSの概略構成図である。画像処理システムSYSは、対象となる実物体OB1を撮像して、撮像した実物体OB1の撮像画像データと、予め記憶された実物体OB1の3Dモデルのデータと、を対応付けた新たな対応付けデータを作成する。
画像処理システムSYSは、本体部100と、撮像部40と、表示部20と、操作部30とを備えている。本体部100は、表示部20と、操作部30と、撮像部40とに電気的に接続している。本体部100は、表示部20と操作部30と撮像部40とに制御信号を送ることで、これらを制御する。本体部100が実行する制御の詳細については、後述する。
撮像部40は、本体部100から送信される制御信号に基づき、外景を撮像する。本実施形態では、撮像部40は、特定の軸を中心とする円状のレールRLに沿って移動できるように形成されている。撮像部40は、アクチュエーター41(図2で図示)によって、制御信号に基づきレールRLに沿って移動する。本実施形態では、特定の軸上に実物体OB1が配置されるため、撮像部40は、360度回転して実物体OB1を撮像できる。なお、実物体OB1は、請求項における実物体に相当する。
表示部20は、画像を表示可能なディスプレイである。表示部20は、本体部100から送信される制御信号に基づき、画像を表示する。図1に示す例では、表示部20は、撮像部40が撮像した撮像画像を表示している。
操作部30は、使用者の操作を受け付けるユーザーインターフェースである。図1に示すように、操作部30は、キーボードKBと、マウスMSとを有している。キーボードKBは、押下されることで決定の有無を判定する複数のボタンを有している。キーボードKBは、押下したボタンに対応する制御信号を本体部100に送信する。マウスMSは、位置の変化、および、押下されることで決定の有無を判定する2つのボタンを有している。マウスMSは、位置の変化および決定の有無に対応する制御信号を本体部100へと送信する。
図2は、画像処理システムSYSの機能的な構成を示すブロック図である。図2に示すように、本体部100は、CPU110と、記憶部120と、ROMと、RAMと、通信部130と、インターフェース140と、電源150とを備えている。記憶部120は、各種データを記憶し、ハードディスクドライブなどによって構成されている。記憶部120は、3Dモデル記憶部121と、作成データ記憶部122と、撮像画像データベース123(撮像画像DB123)とを有している。
3Dモデル記憶部121は、実物体OB1の形状・構造に対応する3Dモデルとして、CAD(computer-aided design)によって作成された3Dモデル(3DCADモデル)を記憶している。作成データ記憶部122は、CPU110が作成したデータを記憶する。作成データ記憶部122に記憶されるデータの詳細については後述するが、作成データ記憶部122は、3Dモデルの所定のビューに対応する2次元モデルデータと、撮像部40によって撮像された実物体OB1の外観情報と、当該所定のビューと、を対応付けた対応付けデータを記憶する。撮像画像データベース123は、撮像部40によって撮像された実物体OB1の撮像画像を記憶する。撮像画像データベース123が記憶する撮像画像は、ある特定の位置から撮像した実物体OB1の1つの撮像フレームや実物体OB1を撮像した動画などである。
CPU110は、ROMから各種プログラムを読み出し、RAMに展開することで、各種プログラムを実行する。CPU110は、画像設定部111と、データ作成部112と、対応付け部113とを有している。画像設定部111は、表示部20に表示させる画像を設定する。例えば、画像設定部111は、撮像部40によって撮像された実物体OB1の画像と、3Dモデル記憶部121に記憶された実物体OB1の3Dモデルから得られる2Dモデルの輪郭と、を表示部20に表示させる。データ作成部112は、3Dモデル記憶部121に記憶された実物体OB1の3Dモデルから得られる2Dモデルデータと、撮像部40によって撮像された実物体OB1の画像データ(外観情報)と、を対応付けた対応付けデータを作成する。データ作成部112は、作成した対応付けデータを作成データ記憶部122に記憶させる。なお、データ作成部112が作成するデータの詳細については、後述する。
画像設定部111は、撮像部40の撮像画像を表示部20に表示させる。また、画像設定部111は、3Dモデルを所定のビューポイントに基づいて仮想平面に写像して得られる2Dモデルを表示部20に表示させる。撮像部40によって実物体OB1が撮像された場合に、使用者から所定のコマンドを受け取ったタイミングで、対応付け部113は、撮像された実物体OB1の輪郭と、当該2次元モデルの輪郭と、を対応付けることで、撮像された実物体OB1の姿勢を推定する。なお、対応付け部113が実行する実物体OB1の姿勢の推定の詳細については後述する。対応付け部113が実物体OB1の姿勢を推定すると、画像設定部111は、推定された姿勢を用いて3Dモデルを新たに写像して得られる2次元モデルを表示する。このとき、表示部20に表示される実物体OB1と新たな2次元モデルとは、より高い精度で互いに重畳することとなる。
電源150は、画像処理システムSYSの各部に電力を供給する。電源150としては、例えば二次電池を用いることができる。インターフェース140は、本体部100に対して、コンテンツの供給元となる種々の外部機器OAを接続するためのインターフェースである。外部機器OAとしては、例えば、パーソナルコンピューター(PC)や携帯電話端末、ゲーム端末等、がある。インターフェース140としては、例えば、USBインターフェース、マイクロUSBインターフェース、メモリーカード用インターフェース等、を用いることができる。データ作成部112は、インターフェース140を介して、実物体OB1の撮像画像データを取得することもできる。
通信部130は、無線LANやブルートゥース(登録商標)といった所定の無線通信規格に則って、例えば、コンテンツサーバー、テレビ、パーソナルコンピューターといった他の機器との間で無線通信を行なう。データ作成部112は、通信部130を介して、他のサーバーから実物体OB1の撮像画像データを取得することもできる。
A−2.マーカーを用いないデータ作成:
データ作成部112は、撮像部40によって撮像された実物体OB1の撮像画像データと、3Dモデル記憶部121に記憶された実物体OB1の3Dモデルに基づくデータと、を対応付けるために、マーカーに基づくデータ作成と、マーカーを用いないデータ作成とを適用できる。ここでは、マーカーを用いないデータ作成について説明し、第2実施形態においてマーカーに基づくデータ作成を説明する。
データ作成部112は、撮像部40によって撮像された実物体OB1の撮像画像データと、3Dモデル記憶部121に記憶された実物体OB1の3Dモデルに基づくデータと、を対応付けるために、マーカーに基づくデータ作成と、マーカーを用いないデータ作成とを適用できる。ここでは、マーカーを用いないデータ作成について説明し、第2実施形態においてマーカーに基づくデータ作成を説明する。
A−2−1.オンラインにおけるデータ作成:
図3は、オンラインにおけるマーカーを用いないデータ作成であるオンライン作成処理のフローチャートである。マーカーを用いないデータ作成では、撮像部40によってオブジェクトを撮像しながら「2Dモデルデータ」に外観情報を与えるオンライン作成処理と、予め用意された実物体OB1の撮像画像データを用いて「2Dモデルデータ」に外観情報を与えるオフライン作成処理と、の2つのデータ作成処理がある。ここでは、オンライン作成処理について説明し、オフライン作成処理については、後述する。
図3は、オンラインにおけるマーカーを用いないデータ作成であるオンライン作成処理のフローチャートである。マーカーを用いないデータ作成では、撮像部40によってオブジェクトを撮像しながら「2Dモデルデータ」に外観情報を与えるオンライン作成処理と、予め用意された実物体OB1の撮像画像データを用いて「2Dモデルデータ」に外観情報を与えるオフライン作成処理と、の2つのデータ作成処理がある。ここでは、オンライン作成処理について説明し、オフライン作成処理については、後述する。
「姿勢の初期化」
オンライン作成処理では、初めに、CPU110は映像シーケンスの取得を開始する(ステップS11)。映像シーケンスの取得では、CPU110は、使用者に撮像部40を用いて、実物体OB1を撮像するように促す。画像設定部111は、実物体OB1の画像を表示部20に表示する。また同時に、画像設定部111は、所定のビューに基づいて3次元モデルを仮想平面に写像することで得られる2次元モデルを表示部20に表示する。この結果、表示部20には、撮像部40に撮像された実物体OB1と、写像された2次元モデルとが互いに重なって表示されるが、通常、この段階では、実物体OB1の画像輪郭と、2次元モデルの輪郭とは、一致していない。次に、対応付け部113は、姿勢の初期化を実行する(ステップS13)。
オンライン作成処理では、初めに、CPU110は映像シーケンスの取得を開始する(ステップS11)。映像シーケンスの取得では、CPU110は、使用者に撮像部40を用いて、実物体OB1を撮像するように促す。画像設定部111は、実物体OB1の画像を表示部20に表示する。また同時に、画像設定部111は、所定のビューに基づいて3次元モデルを仮想平面に写像することで得られる2次元モデルを表示部20に表示する。この結果、表示部20には、撮像部40に撮像された実物体OB1と、写像された2次元モデルとが互いに重なって表示されるが、通常、この段階では、実物体OB1の画像輪郭と、2次元モデルの輪郭とは、一致していない。次に、対応付け部113は、姿勢の初期化を実行する(ステップS13)。
図4は、2次元モデルの輪郭OL1および撮像部40の撮像画像が表示部20に表示された表示画像IM1の説明図である。図4に示すように、撮像部40によって撮像されて表示部20に表示された実物体OB1の画像と、表示部20に表示された2次元モデルの輪郭OL1とは一致していない。そのため、姿勢の初期化の処理において、画像設定部111は、実物体OB1の画像輪郭と、2次元モデルの輪郭とが、大まかに一致するように、使用者に、撮像部40を移動するように促す。そして、実物体OB1の画像輪郭と、2次元モデルの輪郭と、が大よそ一致した場合に、操作部30に対して所定のコマンドを入力するように使用者に促す。なお、図4および図5以降でも示す座標軸AX1は、実物体OB1に固定される座標軸であり、撮像部40に対する実物体OB1の姿勢の変化に応じて、変化する。
操作部30が当該所定のコマンドを受け付け場合に、対応付け部113は、2次元モデルの輪郭に含まれる2Dモデル点に対応する画像点をサーチする。なお、ここで2次元モデルの輪郭に含まれる2Dモデル点は、2Dモデルを表す輪郭線に沿って万遍なく分布するように事前に選択されていればよい。また、当該2Dモデル点に対応する画像点のサーチは、例えば、CPU110が、それぞれの2Dモデル点を中心とした隣接近傍範囲内(例えば3×3の画素マトリクス)に属する複数の画像点の中から、当該2Dモデル点の輝度グラディエントに近い輝度グラディエントを有する画像点を選択することにより実施することができる。CPU110による2つのグラディエントの比較は、2つのベクトルの内積に基づくことで得られる。
そして、対応付け部111は、当該ビューおよび当該デプスマップに基づいて当該2Dモデル点を逆変換して得られる3Dモデル点と、当該2Dモデル点に対応する対応する画像点と、に基づいて、仮想平面(この場合は撮像部40の撮像面に相当する平面)上で写像エラーが最小化されるように、ビューパラメーターに含まれる剛体変換行列で表わされる姿勢を最適化する。姿勢を最適化、すなわち改善することは、例えば、ガウス・ニュートン法による繰り返し計算を行うことを伴う。当該姿勢が最適化(改善)されると、表示部20上で、画像輪郭と2Dモデルの輪郭とは、より高精度で一致する。以上の処理を、「姿勢の初期化」ともよぶ。なお、2つの輪郭が一致する場合のビューによって表される姿勢は、撮像部40に対する実物体OB1の姿勢にほぼ一致している。また、この姿勢に対応づけて、撮像画像における実物体OB1の画像情報を外観情報として記憶する。本実施形態に係る外観情報は、当該姿勢で撮像部40に撮像された実物体OB1の外部表面のテクスチャ情報(エッジ、模様、または色彩などの見えの情報)を含んでいる。なお、2Dモデル点に対応する画像点のサーチは、検出されたエッジの比較を利用するが、エッジ検出については、公知の技術を適用可能であり、他の実施形態では、エッジ検出以外の方法(例えばコーナー検出)によって、写像された2Dモデル点に対応する画像点のサーチが行われてもよい。また、上記姿勢の初期化において姿勢が改善された場合には、CPU110は、表示部を介して、姿勢の改善が終了したことを表す情報を使用者に提示してもよい。例えば、CPU110は、表示部20上に表示されている2Dモデルの色を変えることで、姿勢の改善の終了を使用者に伝えてもよい。
「姿勢の追跡」
「姿勢の初期化」が終了すると、CPU110は、実物体OB1の姿勢の追跡処理を開始する(ステップS15)。本実施形態に係る姿勢の追跡処理は、撮像部40が取得した撮像画像に現れる実物体OB1上の特徴要素(特徴点)を追跡することに基づく。姿勢の追跡処理の準備ができたら、CPU110は、使用者に、実物体OB1に対して撮像部40を動かすように促す。撮像部40が相対的に動かされている間、撮像部40に対する実物体OB1の姿勢はCPU110によって追跡されることとなる。また、CPU110は、追跡により更新された実物体OB1の姿勢と同じ姿勢を用いて、3次元モデルを仮想平面に写像する。このため、使用者が実物体OB1を撮像しながら撮像部40を動かしても、表示部20上で画像輪郭と2次元モデルの輪郭とはほぼ一致し続ける。
「姿勢の初期化」が終了すると、CPU110は、実物体OB1の姿勢の追跡処理を開始する(ステップS15)。本実施形態に係る姿勢の追跡処理は、撮像部40が取得した撮像画像に現れる実物体OB1上の特徴要素(特徴点)を追跡することに基づく。姿勢の追跡処理の準備ができたら、CPU110は、使用者に、実物体OB1に対して撮像部40を動かすように促す。撮像部40が相対的に動かされている間、撮像部40に対する実物体OB1の姿勢はCPU110によって追跡されることとなる。また、CPU110は、追跡により更新された実物体OB1の姿勢と同じ姿勢を用いて、3次元モデルを仮想平面に写像する。このため、使用者が実物体OB1を撮像しながら撮像部40を動かしても、表示部20上で画像輪郭と2次元モデルの輪郭とはほぼ一致し続ける。
CPU110は、撮像部40と実物体OB1との間の空間関係(撮像部40に対する姿勢)が所定の空間関係となる場合に、当該空間関係での実物体OB1の画像情報を外観情報として取得する。そして、取得した外観情報を、当該空間関係(姿勢)と、当該姿勢での「2次元モデルデータ」と、に関連付けて記憶する。「2次元モデルデータ」は、2次元モデルの輪郭(輪郭線)を表す画像、および当該輪郭を表す「輪郭特徴情報」の少なくとも一方を含む。「輪郭特徴情報」とは、輪郭に含まれる2Dモデル点の位置、および当該位置での輝度グラディエントを含む。
図7は、使用者に、上記所定の空間関係で実物体OB1を撮像することを促す表示画像IM4を示している。当該空間関係は、図7において、表示画像IM4に含まれる複数のドットDTで表現されている。ドットDTは、図8に示す半球の表面上に分布している。この半球の座標系のXYZ軸は、オブジェクト座標系で表わされていて、その原点が実物体OB1に相当する。
表示画像IM4おけるドットDTは、3つの色に変化する。青色の青ドットDTbは、当該ドットDTbで表わされる空間関係では、まだ実物体OB1の外観情報が得られていない状態を表す。緑色の緑ドットDTgは、当該ドットDTgで表わされる空間関係で、外観情報が得られたことを表す。黄色の黄ドットDTyは、当該ドットDTyで表わされる空間関係ではさらに多くの外観情報を取得すべきことを表している。すなわち、全てのドットDTが青ドットDTbから緑ドットDTbに変化すると、所定の空間関係の全てに亘って、実物体OB1の外観情報が取得し終わったことを使用者に伝えることができる。なお、本実施形態では、「位置」とは、「向き」の概念を含み、例えば、撮像部40の座標値が変化していなくても、撮像部40の光軸の向きが変化している状態は、撮像部40の位置が変化した状態とも呼ぶ。
上記所定の空間関係のうち、撮像部40と実物体OB1との間の距離を使用者に把握させる目的で、図6に示すような表示画像IM3を表示してもよい。図6に示すように、表示画像IM3には、図5に示す表示画像IM2と比較して、さらに、メーターMT1が表示部20に表示されている。メーターMT1は、撮像部40と実物体OB1との間の距離(以下、オブジェクト距離と表記する)を示す画像である。メーターMT1は、閾値上限THUと、閾値下限THLと、オブジェクト距離OBD(ハッチング領域)とを含んでいる。閾値上限THUは、予め設定された閾値の範囲の上限を示す。閾値下限THLは、予め設定された閾値の範囲の下限を示す。オブジェクト距離OBDは、データ作成部112が特定した空間関係に含まれるオブジェクト距離を示す。オブジェクト距離OBDが一定の範囲を示しているのは、データ作成部112によって特定された距離に幅があるためである。
以上のような処理によって作成されたテンプレートデータを用いれば、HMDを用いて、実物体OB1を検出して、実物体OB1に対してARオブジェクトをレンダリングする場合に、HMD上のカメラを用いて、実物体OB1の姿勢を高精度に初期検出または初期推定することができる空間関係が多様になる。
「姿勢追跡の停止」
姿勢の追跡の間に、撮像部40が取得する撮像画像において、実物体OB1の特徴要素が消失した場合、または動きブラーが生じた場合には、追跡された姿勢がドリフトし始めることがある。そのような場合には、姿勢の追跡を停止してもよい。そして、追跡を停止した姿勢にて、再度、姿勢の初期化を行うことが好ましい。そうすれば、外観情報を取得した際の姿勢と、2次元モデルを得るために3次元モデルを写像した際の姿勢とが、サンプリングされるべき複数の姿勢(空間関係)に亘って、高い精度で一致し続ける。
姿勢の追跡の間に、撮像部40が取得する撮像画像において、実物体OB1の特徴要素が消失した場合、または動きブラーが生じた場合には、追跡された姿勢がドリフトし始めることがある。そのような場合には、姿勢の追跡を停止してもよい。そして、追跡を停止した姿勢にて、再度、姿勢の初期化を行うことが好ましい。そうすれば、外観情報を取得した際の姿勢と、2次元モデルを得るために3次元モデルを写像した際の姿勢とが、サンプリングされるべき複数の姿勢(空間関係)に亘って、高い精度で一致し続ける。
そこで、データ作成部112は、図3のステップS15の処理を実行すると、姿勢を追跡している途中で姿勢のドリフトを検出したか否かを判定する(ステップS17)。当該判定は、使用者による観測に基づく使用者からの入力、または追跡に基づくCPU110による分析によって決定することができる。データ作成部112がドリフトを検出したと判定した場合には(ステップS17:YES)、正しい実物体OB1の姿勢を特定できないおそれがあるため、姿勢の追跡を停止し(ステップS19)、ステップS13に戻り、再度、姿勢の初期化を行う。
ステップS17の処理において、データ作成部112は、ドリフトを検出していないと判定した場合には(ステップS17:NO)、実物体OB1の十分な外観情報を取得できたか否かを判定する(ステップS21)。本実施形態では、データ作成部112は、図7の半球画像IMhb1を構成するドットDTの全てが緑ドットDTgに変化した場合に、実物体OB1の十分な外観情報を取得できたと判定する。
図3のステップS21の処理において、データ作成部112は、オブジェクトOB2の十分な外観情報を取得できていないと判定した場合には(ステップS21:NO)、引き続き、ステップS25以降の処理を繰り返す。ステップS21の処理において、データ作成部112は、オブジェクトOB2の十分な外観情報を取得できたと判定した場合には(ステップS21:YES)、実物体OB1の姿勢の追跡を終了し、空間関係(姿勢)と、その空間関係でのオブジェクトOB2の外観情報と、2次元モデルデータと、を対応付けた対応付けデータ(テンプレートまたはトレーニングデータとも呼ぶ)を作成し(ステップS23)、オンライン作成処理を終了する。データ作成部112は、作成した対応付けデータ(テンプレートデータとも呼ぶ)を作成データ記憶部122に記憶させる。
以上説明したように、本実施形態の画像処理システムSYSでは、データ作成部112は、操作部30が受け付けた操作に応じて、表示部20に表示された実物体OB1の画像輪郭IMOB2と、2次元モデルの輪郭OL1とをほぼ重畳させる。データ作成部112は、その際の撮像部40と実物体OB1との間の空間関係と、その空間関係で撮像部40によって撮像されたオブジェクトOB2の外観情報と、2次元モデルデータと、を対応付けた対応付けデータを作成する。データ作成部112は、作成した対応付けデータを、作成データ記憶部122に記憶させる。そのため、本実施形態の画像処理システムSYSによれば、オブジェクトの外部表面の見えの情報である外観情報(テクスチャ情報)を有さない3Dモデル(例えば3DCADモデル)から得られるテンプレートに、撮像画像データによって取得された外観情報を与えることができる。この対応付けにより、テンプレートは、3次元モデルから得られる特徴情報(例えば輪郭情報)に加えて、撮像画像から得られるテクスチャ情報(表面の外観情報)を有する。HMDが、実物体OB1を検出し、そしてその姿勢を推定する際に、表面の外観情報を有するテンプレートを参照することで、外観情報を有さないテンプレートと比較して、実物体OB1の初期姿勢の検出精度が向上し得る。また、本実施形態の画像処理システムSYSでは、撮像部40が実物体OB1を撮像できれば、データ作成部112がテンプレート(対応付けデータ)を作成でき、複雑な装置を必要とせずに外観情報を有するテンプレート(対応付けデータ)を作成できる。
A−2−2.オフラインにおけるデータ作成:
オフラインに係るデータ作成の処理に関しては、その「姿勢の追跡」がオンラインの場合の処理のそれとは異なる。
オフラインに係るデータ作成の処理に関しては、その「姿勢の追跡」がオンラインの場合の処理のそれとは異なる。
図9は、オフライン作成処理のフローを表す説明図である。オフライン作成処理では、初めに、CPU110が、映像シーケンスの取得を実行する(ステップS31)。実行される映像シーケンスの取得では、使用者に、事前に実物体OB1を撮像させる。このとき、撮像部40に対する実物体OB1の姿勢が、図7または図8のドットで表わされるすべての空間関係に対応するように撮像部40が相対移動されることが好ましい。撮像部40の撮像によって、CPU110は、実物体OB1の映像シーケンスを記録する。CPU110は、映像シーケンスを構成する画像フレームの中から、所定のビューで表わされる姿勢に近い姿勢を有する実物体OB1が撮像されている画像フレームを選択する。選択の方法は、CPU110が行う画像処理によって自動で行われてもよいし、使用者に選択させてもよい。そして、選択された当該画像フレームにおける実物体OB1の姿勢を推定する。姿勢を推定する方法は、オンラインにおけるデータ作成に係る処理において説明した方法と同じでよい。
次に、CPU110は、基準画像フレームの取得を実行する(ステップS33)。選択された上記画像フレームを基準として、その時間軸の前後両方向に、各画像フレームにおいて撮像されている実物体OB1の姿勢を追跡していく(ステップS35)。このとき、基準とされた上記画像フレームに対して、バンドル調整を局所的又は全体的に適用することによって、各画像フレームに関して、実物体OB1の姿勢の推定を改善する。そして、所定のタイミングで、実物体OB1の外観情報を取得し、記録する。そして、取得した外観情報を、当該姿勢、および当該姿勢で3次元モデルを写像することで得られる2次元モデルの「2次元モデルデータ」に対応付けたトレーニングデータを作成して(ステップS37)、それらをテンプレートとして記憶し、オンライン作成処理を終了する。
以上説明したように、本実施形態の画像処理システムSYSでは、データ作成部112は、オフライン作成処理における対応付けデータを作成する際に、オブジェクトOB2の撮像画像データとして、予め実物体OB1を撮像した際に記録された映像シーケンスを用いる。そのため、オフライン作成処理では、データ作成部112が、オブジェクトOB2の姿勢を推定する際に、バンドル調整を適用した画像フレームを用いるため、姿勢の推定を改善できる。データ作成部112は、これらの画像フレームを用いることで、ドリフトの発生の問題を部分的に解消できる。
B.第2実施形態:
第2実施形態では、撮像部40がオブジェクトに加えて、撮像部40の撮像範囲に予め設定されたマーカーが存在する場合に、マーカーに設定された座標軸を基準として、実物体OB1の姿勢の推定および追跡が実行される。
第2実施形態では、撮像部40がオブジェクトに加えて、撮像部40の撮像範囲に予め設定されたマーカーが存在する場合に、マーカーに設定された座標軸を基準として、実物体OB1の姿勢の推定および追跡が実行される。
B−1.画像処理システムの構成:
図10は、第2実施形態における画像処理システムSYSaの機能的な構成を示すブロック図である。第2実施形態の画像処理システムSYSaは、第1実施形態の画像処理システムSYSと比較して、記憶部120aがマーカー画像記憶部124を有すること、および、CPU110aの対応付け部113aが実行する処理が異なること、が異なる。そのため、第2実施形態では、第1実施形態の画像処理システムSYSと同じ構成についての説明を省略する。
図10は、第2実施形態における画像処理システムSYSaの機能的な構成を示すブロック図である。第2実施形態の画像処理システムSYSaは、第1実施形態の画像処理システムSYSと比較して、記憶部120aがマーカー画像記憶部124を有すること、および、CPU110aの対応付け部113aが実行する処理が異なること、が異なる。そのため、第2実施形態では、第1実施形態の画像処理システムSYSと同じ構成についての説明を省略する。
記憶部120aが有するマーカー画像記憶部124は、予め設定されたマーカーモデルを記憶している。マーカーモデルは、平面マーカーを表すが、そのマーカー座標系は、直交する3軸(X軸、Y軸、Z軸)で表わされている。
B−2.マーカーに基づくデータ作成:
「姿勢の初期化」
図11は、第2実施形態におけるマーカーに基づく処理のフローの説明図である。第1実施形態と同じ方法で、CPU110aは、使用者から所定のコマンドを受けとった場合に、映像シーケンスの取得を開始し(ステップS41)、映像シーケンスの各画像フレームについて実物体OB1の姿勢を導出する(ステップS43)。実物体の姿勢の推定は、例えば、第1実施形態で説明したような方法で、使用者に実物体の画像輪郭と、実物体に対応する3Dモデルからえら得た2Dモデルの輪郭とを、一致させ、その後、CPU110aが、互いに対応する画像点と2Dモデル点との間の写像エラーを最小化するようなビューパラメーターの導出(最適化)を行うことでよい(図12)。
「姿勢の初期化」
図11は、第2実施形態におけるマーカーに基づく処理のフローの説明図である。第1実施形態と同じ方法で、CPU110aは、使用者から所定のコマンドを受けとった場合に、映像シーケンスの取得を開始し(ステップS41)、映像シーケンスの各画像フレームについて実物体OB1の姿勢を導出する(ステップS43)。実物体の姿勢の推定は、例えば、第1実施形態で説明したような方法で、使用者に実物体の画像輪郭と、実物体に対応する3Dモデルからえら得た2Dモデルの輪郭とを、一致させ、その後、CPU110aが、互いに対応する画像点と2Dモデル点との間の写像エラーを最小化するようなビューパラメーターの導出(最適化)を行うことでよい(図12)。
CPU110aは、導出された上記姿勢について信頼スコアを計算し、UIを介して使用者に報知してもよい。このスコアに基づいて、使用者は、その姿勢を受け入れることもできるし、ステップS43の処理をやり直すこともできる。第1実施形態で説明したマーカーレスに基づく方法とは異なり、推定されたこの姿勢は、トレーニングデータ(テンプレート)に含まれない。
使用者は、実物体OB1の回りで撮像部を相対移動させ続け、さまざまな確度からの映像シーケンスを収集し、記録し続ける。この間、CPU110aは実物体の姿勢を追跡し記録し続ける(ステップS45)。十分な画像が収集されたら、使用者からのコマンドに応じて、CPU110aは、PGE toolの機能として提供される多視点改善アルゴリズム(AutoFit)をコール(起動)し、以下のような処理を行う。まず、CPU110aは、映像シーケンスに含まれる各画像フレームについて、撮像部40に対する平面マーカーのそれぞれの姿勢を求める。本実施形態では、平面マーカーの姿勢は、ホモグラフィー行列を用いる方法によって導出される。一般に、平面マーカーの3次元姿勢を精度よく求めることは、任意の3次元物体の3次元姿勢を精度よく求めることよりも容易である。そして、追跡された実物体OB1のそれぞれの姿勢と、それぞれ同じ画像フレームに含まれる平面マーカーの姿勢と、を用いて、平面マーカーと実オブジェクトとの間の正確な姿勢を推定する(この姿勢をTmoとも表記する。ここで、添え字oはオブジェクト座標系を示し、添え字mはマーカー座標系を示し、Tは、両座標系間の変換行列を表す)(ステップS47)。以上のステップS4からステップS47までが、第1実施形態の姿勢の初期化に対応する。
以降、使用者は、実物体OB1に対して撮像部40をいかに相対移動させても、平面マーカーの姿勢と、平面マーカーと実物体OB1との間の姿勢Tmoと、に基づいて、より精度よく実物体OB1の姿勢を追跡することができる(ステップS49)。そして、第1実施形態で説明したような方法で、所定の姿勢に基づいて3Dモデルを仮想平面に写像することで得られる2Dモデルを当該映像シーケンスに重ねて表示し、使用者にマウスなどを操作させることで、実物体の画像輪郭と2Dモデルの輪郭とを一致させる。そして、実物体の画像輪郭と2Dモデルの輪郭とがほぼ一致する場合に、CPU110は、その姿勢での外観情報と、その姿勢での「2次元モデルデータ」とを対応づけて記憶する。実物体の画像輪郭と2Dモデルの輪郭とが一致したことのCPU110aによる判定は、互いに対応する画像点と2Dモデル点との間の写像エラーを最小化するようなビューパラメーターの導出(最適化)が終了することに基づいてもよいし、このような最適化が利用できないときには目視に基づく使用者からの指示に基づいてもよい。そして、第1実施形態の場合と同様に、図7および図8のドットDTで表わされる姿勢のすべてに亘って、実物体OB1の姿勢と、その姿勢での外観情報と、その姿勢での「2次元モデルデータ」と、を対応づけて記憶する(図13)。所定数の姿勢について対応付けデータが記憶された場合には(ステップS51:YES)、それらをまとめて、対応付けデータ(トレーニングデータ)として記憶し(ステップS53)、マーカーに基づく処理が終了する。所定数の姿勢について対応付けデータが記憶されていない場合には(ステップS51:NO)、処理がステップS49に戻るとともに、CPU110aは使用者に撮像部40を相対移動させ続けることを促す。なお、第1実施形態において説明したように、ここでいう「2次元モデルデータ」は、2次元モデルが輪郭で合された画像、または当該輪郭を表す「輪郭特徴情報」の少なくとも一つを含む。
C.変形例:
なお、この発明は上記実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば、次のような変形も可能である。
なお、この発明は上記実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば、次のような変形も可能である。
C−1.変形例1:
第1実施形態において、オンラインにおけるデータ作成では、実物体OB1の形状に対応した3Dモデルを、所定のビュー(姿勢)に基づいて仮想平面に写像することで得られた2Dモデルに対して、実物体OB1の撮像画像が重なるように、使用者に撮像部40を相対移動させた。このような方法に代えて、以下のような方法が採用されてもよい。
第1実施形態において、オンラインにおけるデータ作成では、実物体OB1の形状に対応した3Dモデルを、所定のビュー(姿勢)に基づいて仮想平面に写像することで得られた2Dモデルに対して、実物体OB1の撮像画像が重なるように、使用者に撮像部40を相対移動させた。このような方法に代えて、以下のような方法が採用されてもよい。
まず、使用者に、実物体OB1に対して任意の姿勢で、撮像部40を用いて実物体OB1の1つの静止画像を撮像させる。そして、CPU110は、当該撮像された実物体OB1を表示部20に表示する。CPU110は、実物体OB1の形状に対応する3Dモデルを、所定の(デフォルトの)ビューに基づいて仮想平面に写像することで得られる2Dモデルに基づく輪郭を表示部20に表示する。この結果、実物体OB1と2Dモデルの輪郭とは、重なって表示されることとなるが、普通、この段階では、実物体OB1の画像輪郭と、2Dモデルの輪郭とは、一致していない。
CPU110は、使用者に、実物体OB1の画像輪郭と、2Dモデルの輪郭と、が一致するように、3Dモデルを写像しているビューを調整するように促す。具体的には、使用者に、マウスやタッチパッドなどのインターフェースを用いて、ビューに含まれる3軸回りの回転および3軸に沿った並進を更新させる。CPU110は、更新された回転および並進を含む新しいビューに基づいて、3次元モデルを仮想平面に写像して得られる2次元モデルを表示部20に表示する。CPU110は、表示部20に所定のテキストを表示することによって、使用者に、上記マウス等の操作を介して、表示部20に表示されている実物体OB1の画像輪郭と、2次元モデルの輪郭とを一致させるように促す。また、CPU110は、使用者に、実物体OB1の画像輪郭と、2次元モデルの輪郭と、が一致したタイミングを、所定のインターフェースを介して、CPU110に通知するよう促す。CPU110は、当該通知を受け取った時点での上記3つの回転および3つの並進を、実物体OB1の姿勢を表す初期姿勢として、静止画における画像点と、写像された2Dモデル点と、の間の写像エラーを最小化させるアルゴリズムを起動し、実物体OB1について推定された姿勢を改善する。姿勢が改善されると、表示部20上において、実物体OB1の画像輪郭と、2Dモデルの輪郭とは、より高精度に一致することとなる。この場合に、CPU110は、表示部を介して、姿勢の改善が終了したことを表す情報を使用者に提示してもよい。例えば、CPU110は、表示部20上に表示されている2Dモデルの色を変えることで、姿勢の改善が終了したことを使用者に伝えてもよい。
そして、CPU110は、実物体OB1の外観情報と、当該姿勢に対応する「2次元モデルデータ」とを、互いに関連付けて、記憶部に記憶する。本変形例によれば、撮像部40と実物体OB1との間の一つの空間関係についてのみ、実物体OB1の外観情報がテンプレートに付加される。このような処理によって作成されたテンプレートデータを用いる場合でも、HMDが、実物体OB1を検出して、実物体OB1に対応するようにARオブジェクトをレンダリングする場合に、HMDが、HMD上のカメラを用いて、実物体OB1の姿勢を高精度に初期推定することができる。
C−2.変形例2:
第1実施形態および第2実施形態では、対応付けデータを作成する情報処理システムとして、画像処理システムSYSが用いられたが、対応付けデータを作成するシステムについては、種々変形可能である。例えば、撮像部40を有する頭部装着型表示装置(HMD)であってもよい。また、第1実施形態では、撮像部40は、1つであったが、複数の撮像部40によって実物体OB1,OB2が撮像されてもよい。撮像部40によるオブジェクトOB2の撮像方法として、撮像部40が位置を変化させずに、撮像部40の位置を固定した上でオブジェクトOB2の位置が変化してもよい。例えば、オブジェクトOB2が回転可能な回転台の上に配置されて、位置が固定された撮像部40によってオブジェクトOB2が撮像されてもよい。また、撮像部40およびオブジェクトOB2の両方が位置を変化させてもよい。
第1実施形態および第2実施形態では、対応付けデータを作成する情報処理システムとして、画像処理システムSYSが用いられたが、対応付けデータを作成するシステムについては、種々変形可能である。例えば、撮像部40を有する頭部装着型表示装置(HMD)であってもよい。また、第1実施形態では、撮像部40は、1つであったが、複数の撮像部40によって実物体OB1,OB2が撮像されてもよい。撮像部40によるオブジェクトOB2の撮像方法として、撮像部40が位置を変化させずに、撮像部40の位置を固定した上でオブジェクトOB2の位置が変化してもよい。例えば、オブジェクトOB2が回転可能な回転台の上に配置されて、位置が固定された撮像部40によってオブジェクトOB2が撮像されてもよい。また、撮像部40およびオブジェクトOB2の両方が位置を変化させてもよい。
第1実施形態では、撮像部40がオブジェクトOB2を撮像すると共に、データ作成部112は、撮像されたオブジェクトOB2の姿勢と、3Dモデル記憶部121に記憶された3Dモデルとの姿勢を撮像と並行して得られる映像シーケンスを用いて最適化したが、必ずしもそのような映像シーケンスを用いて実行される必要はない。撮像部40によって一連のビデオシーケンスが取得され、記憶部によって記憶された後に、データ作成部112は、姿勢の一致の最適化を実行してもよい。また、データ作成部112は、必ずしもオブジェクトOB2の全周から撮像されたビデオシーケンスを必要としない。例えば、特定の1つの視点から撮像されたオブジェクトOB2の画像IMOB2があれば、データ作成部112は、特定の1つの視点から見た対応付けデータを作成することもできる。
本明細書における撮像部40によって取得される実物体の外観情報とは、3Dモデル記憶部121に記憶された3Dモデルに含まれない情報を少なくとも1つを含むデータである。外観情報として、オブジェクトの外部表面のテクスチャ情報(模様、色彩、ざらつき感や質感)を一例として挙げたが、これらの情報に限られない。
本発明は、上記実施形態や変形例に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態、変形例中の技術的特徴は、上述の課題の一部または全部を解決するために、あるいは、上述の効果の一部または全部を達成するために、適宜、差し替えや、組み合わせを行なうことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
SYS,SYSa…画像処理システム、20…表示部、30…操作部、40…撮像部、41…アクチュエーター、100…本体部、110,110a…CPU、111…画像設定部、112…データ作成部、113,113a…対応付け部、120,120a…記憶部、121…3Dモデル記憶部、122…作成データ記憶部、123…撮像画像DB、124…マーカー画像記憶部、130…通信部、140…インターフェース、150…電源、AX1,AX2,AX3,AX4…座標軸、CF,CF1,CF2,CF3,CFm…輪郭特徴要素、CS,CS1,CS2,CS3,CS4,CS5,CS6,CS7,CS8,CS9,CS10…矢印、DT…ドット、DTb…青ドット、DTg…緑ドット、DTy…黄ドット、FC1…領域、IM1,IM2,IM3,IM4,IM5,IM6…表示画像、IMMK…マーカー画像、IMGOB,IMOB2,IMOB3…オブジェクトの画像、IMhb1,IMhb2,IMhb3…半球画像、KB…キーボード、IMG…画像、LAN…無線、MS…マウス、MT1,MT2…メーター、OA…外部機器、OB1,OB2,OB3…オブジェクト、OBD…オブジェクト距離、OL1,OL2…レンダリングモデルの輪郭、RL…レール、THL…閾値下限、THU…閾値上限、PM1,PM2,PM3,PM4,PM5…2Dモデル点、PMn…2Dモデル点のセット
Claims (7)
- 記憶装置と、表示装置と、を備えた画像処理システムと通信可能なコンピューターのためのコンピュータープログラムであって、
実物体が撮像されて得られる撮像画像データに基づく前記実物体の画像を前記表示装置に表示させる機能と、
前記実物体に対応する3Dモデルを所定のビューに基づいて写像して得られた2Dモデルを前記表示装置に表示させる機能と、
前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させる記憶機能と、をコンピューターによって実現させるためのコンピュータープログラム。 - 請求項1に記載のコンピュータープログラムであって、さらに
前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示されるように前記ビューを調整するためのユーザーインターフェース機能を、コンピューターに実現させる、
コンピュータープログラム。 - 請求項2に記載のコンピュータープログラムであって、
前記撮像画像データは前記実物体の静止画像を表す、
コンピュータープログラム。 - 請求項1または2に記載のコンピュータープログラムであって、さらに、
前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記ビューを改善する改善機能を、コンピューターに実現させ、
前記記憶機能は、前記実物体の外観情報と、改善された前記ビューに基づいて得られた前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させる、
コンピュータープログラム。 - 請求項1に記載のコンピュータープログラムであって、さらに、
前記表示装置によって前記実物体と前記2Dモデルとがほぼ一致して表示された後で、前記撮像画像データに少なくとも基づいて前記実物体の姿勢を追跡する追跡機能と、
前記追跡された姿勢に対応した前記ビューに基づいて前記3Dモデルから前記2Dモデルを得る機能と、
をコンピューターに実現させ、
前記記憶機能は、前記姿勢を追跡することで得られた複数の前記姿勢のそれぞれについて、前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させる、
コンピュータープログラム。 - 請求項1に記載のコンピュータープログラムであって、
前記コンピューターは、さらに、撮像部を有し、
前記コンピュータープログラムは、さらに、
前記撮像部を用いて、前記実物体が撮像された前記撮像画像データを取得する機能を、コンピューターによって実現させるコンピュータープログラム。 - 請求項6に記載のコンピュータープログラムであって、
前記撮像部は、前記撮像画像データとして、前記実物体に対する前記撮像部の位置を変化させつつ取得した映像シーケンスを取得し、
前記コンピュータープログラムは、さらに、
前記映像シーケンスの中から、前記3Dモデルのビューに対応する姿勢を有する前記実物体を表す一の画像フレームが選択された場合に、前記ビューを改善することで前記実物体の姿勢を導出する導出機能と、
前記一の画像フレームの前後方向の各画像フレームについて、前記実物体の前記姿勢を追跡する追跡機能と、
をコンピューターに実現させ、
前記記憶機能は、前記姿勢を追跡することで得られた複数の前記姿勢のそれぞれについて、前記前記実物体の外観情報と、前記2Dモデルのデータと、を対応付けて前記記憶装置に記憶させる、
コンピュータープログラム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016075092A JP2017187882A (ja) | 2016-04-04 | 2016-04-04 | 画像処理に用いられるコンピュータープログラム |
| US15/451,752 US10672143B2 (en) | 2016-04-04 | 2017-03-07 | Image processing method for generating training data |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016075092A JP2017187882A (ja) | 2016-04-04 | 2016-04-04 | 画像処理に用いられるコンピュータープログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2017187882A true JP2017187882A (ja) | 2017-10-12 |
Family
ID=59958921
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016075092A Pending JP2017187882A (ja) | 2016-04-04 | 2016-04-04 | 画像処理に用いられるコンピュータープログラム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US10672143B2 (ja) |
| JP (1) | JP2017187882A (ja) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019204258A (ja) * | 2018-05-23 | 2019-11-28 | 株式会社パスコ | 学習用データ生成装置 |
| JP2019219820A (ja) * | 2018-06-18 | 2019-12-26 | チームラボ株式会社 | 映像表示システム,映像表示方法,及びコンピュータプログラム |
| JP2020098575A (ja) * | 2018-12-13 | 2020-06-25 | 富士通株式会社 | 画像処理装置、画像処理方法、及び画像処理プログラム |
| JP2020194482A (ja) * | 2019-05-30 | 2020-12-03 | 富士通株式会社 | 表示制御方法、表示制御プログラムおよび情報処理装置 |
| JP2021028107A (ja) * | 2019-08-09 | 2021-02-25 | 倉敷紡績株式会社 | コネクタの向きの探索方法、コネクタの接続方法、ロボットハンド、制御装置、撮像装置、およびコネクタ接続システム |
| JP2022176681A (ja) * | 2021-05-17 | 2022-11-30 | 東亜建設工業株式会社 | 画像データの取得方法および取得システム |
| JP2023129406A (ja) * | 2022-03-04 | 2023-09-14 | 株式会社バンダイ | 情報処理装置、画像処理装置、及び、コンピュータプログラム |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018081410A (ja) * | 2016-11-15 | 2018-05-24 | セイコーエプソン株式会社 | コンピュータープログラム |
| JP7320352B2 (ja) * | 2016-12-28 | 2023-08-03 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元モデル送信方法、三次元モデル受信方法、三次元モデル送信装置及び三次元モデル受信装置 |
| US10748344B2 (en) * | 2018-09-12 | 2020-08-18 | Seiko Epson Corporation | Methods and devices for user interaction in augmented reality |
| KR102770795B1 (ko) * | 2019-09-09 | 2025-02-21 | 삼성전자주식회사 | 3d 렌더링 방법 및 장치 |
| JP2021141533A (ja) | 2020-03-09 | 2021-09-16 | キヤノン株式会社 | 姿勢調整システムおよび姿勢調整方法、画像処理装置およびその制御方法、ならびにプログラム |
| EP4241240A1 (en) * | 2020-12-18 | 2023-09-13 | Siemens Aktiengesellschaft | Multi-dimensional object pose estimation and refinement |
| JP2023145192A (ja) * | 2022-03-28 | 2023-10-11 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及び情報処理プログラム |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6116640A (en) | 1997-04-01 | 2000-09-12 | Fuji Electric Co., Ltd. | Apparatus for detecting occupant's posture |
| DE102006005044B4 (de) | 2006-02-03 | 2011-01-27 | Metaio Gmbh | Verfahren und System zur Bestimmung eines Datenmodells zur Überlagerung mit einem realen Objekt in einem Verfahren zur Objektverfolgung |
| EP2048599B1 (en) | 2007-10-11 | 2009-12-16 | MVTec Software GmbH | System and method for 3D object recognition |
| EP2201495B1 (en) | 2007-10-12 | 2013-03-27 | MVTec Software GmbH | Computer vision cad models |
| WO2011002938A1 (en) | 2009-07-01 | 2011-01-06 | Honda Motor Co, Ltd. | Object recognition with 3d models |
| ES2399636T3 (es) * | 2009-07-29 | 2013-04-02 | Metaio Gmbh | Método para determinar la postura de una cámara con respecto a por lo menos un objeto real |
| US8817071B2 (en) | 2009-11-17 | 2014-08-26 | Seiko Epson Corporation | Context constrained novel view interpolation |
| JP4677536B1 (ja) * | 2009-11-20 | 2011-04-27 | 株式会社三次元メディア | 3次元物体認識装置及び3次元物体認識方法 |
| EP3851069B1 (en) * | 2010-06-29 | 2023-01-18 | 3Shape A/S | 2d image arrangement |
| US8578299B2 (en) | 2010-10-08 | 2013-11-05 | Industrial Technology Research Institute | Method and computing device in a system for motion detection |
| CN103582893B (zh) | 2011-06-08 | 2017-10-13 | 英派尔科技开发有限公司 | 用于增强现实表示的二维图像获取 |
| US9087408B2 (en) | 2011-08-16 | 2015-07-21 | Google Inc. | Systems and methods for generating depthmaps |
| US8467596B2 (en) | 2011-08-30 | 2013-06-18 | Seiko Epson Corporation | Method and apparatus for object pose estimation |
| US9002098B1 (en) | 2012-01-25 | 2015-04-07 | Hrl Laboratories, Llc | Robotic visual perception system |
| US9569675B2 (en) | 2012-07-27 | 2017-02-14 | Nissan Motor Co., Ltd. | Three-dimensional object detection device, and three-dimensional object detection method |
| US9031317B2 (en) | 2012-09-18 | 2015-05-12 | Seiko Epson Corporation | Method and apparatus for improved training of object detecting system |
| US20140098100A1 (en) | 2012-10-05 | 2014-04-10 | Qualcomm Incorporated | Multiview synthesis and processing systems and methods |
| WO2016012041A1 (en) | 2014-07-23 | 2016-01-28 | Metaio Gmbh | Method and system for presenting at least part of an image of a real object in a view of a real environment, and method and system for selecting a subset of a plurality of images |
| US9875427B2 (en) | 2015-07-28 | 2018-01-23 | GM Global Technology Operations LLC | Method for object localization and pose estimation for an object of interest |
| US10169917B2 (en) | 2015-08-20 | 2019-01-01 | Microsoft Technology Licensing, Llc | Augmented reality |
| US10373380B2 (en) | 2016-02-18 | 2019-08-06 | Intel Corporation | 3-dimensional scene analysis for augmented reality operations |
| EP3343502B1 (en) | 2016-12-28 | 2019-02-20 | Dassault Systèmes | Depth sensor noise |
| US10572720B2 (en) | 2017-03-01 | 2020-02-25 | Sony Corporation | Virtual reality-based apparatus and method to generate a three dimensional (3D) human face model using image and depth data |
-
2016
- 2016-04-04 JP JP2016075092A patent/JP2017187882A/ja active Pending
-
2017
- 2017-03-07 US US15/451,752 patent/US10672143B2/en active Active
Cited By (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7042690B2 (ja) | 2018-05-23 | 2022-03-28 | 株式会社パスコ | 学習用データ生成装置 |
| JP2019204258A (ja) * | 2018-05-23 | 2019-11-28 | 株式会社パスコ | 学習用データ生成装置 |
| US11720166B2 (en) | 2018-06-18 | 2023-08-08 | Teamlab Inc. | Video display system, video display method, and computer program |
| JP2019219820A (ja) * | 2018-06-18 | 2019-12-26 | チームラボ株式会社 | 映像表示システム,映像表示方法,及びコンピュータプログラム |
| CN112292656A (zh) * | 2018-06-18 | 2021-01-29 | 提姆拉博株式会社 | 影像显示系统、影像显示方法及计算机程序 |
| WO2019244409A1 (ja) * | 2018-06-18 | 2019-12-26 | チームラボ株式会社 | 映像表示システム,映像表示方法,及びコンピュータプログラム |
| JP7174397B2 (ja) | 2018-06-18 | 2022-11-17 | チームラボ株式会社 | 映像表示システム,映像表示方法,及びコンピュータプログラム |
| CN112292656B (zh) * | 2018-06-18 | 2024-02-20 | 提姆拉博株式会社 | 影像显示系统、影像显示方法及记录计算机程序的计算机能读取的记录介质 |
| JP2020098575A (ja) * | 2018-12-13 | 2020-06-25 | 富士通株式会社 | 画像処理装置、画像処理方法、及び画像処理プログラム |
| JP2020194482A (ja) * | 2019-05-30 | 2020-12-03 | 富士通株式会社 | 表示制御方法、表示制御プログラムおよび情報処理装置 |
| JP7265143B2 (ja) | 2019-05-30 | 2023-04-26 | 富士通株式会社 | 表示制御方法、表示制御プログラムおよび情報処理装置 |
| JP2021028107A (ja) * | 2019-08-09 | 2021-02-25 | 倉敷紡績株式会社 | コネクタの向きの探索方法、コネクタの接続方法、ロボットハンド、制御装置、撮像装置、およびコネクタ接続システム |
| JP7281500B2 (ja) | 2021-05-17 | 2023-05-25 | 東亜建設工業株式会社 | 画像データの取得方法および取得システム |
| JP2022176681A (ja) * | 2021-05-17 | 2022-11-30 | 東亜建設工業株式会社 | 画像データの取得方法および取得システム |
| JP2023129406A (ja) * | 2022-03-04 | 2023-09-14 | 株式会社バンダイ | 情報処理装置、画像処理装置、及び、コンピュータプログラム |
| JP7834688B2 (ja) | 2022-03-04 | 2026-03-24 | 株式会社バンダイ | 情報処理装置、及び、コンピュータプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| US20170287165A1 (en) | 2017-10-05 |
| US10672143B2 (en) | 2020-06-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2017187882A (ja) | 画像処理に用いられるコンピュータープログラム | |
| US10402657B2 (en) | Methods and systems for training an object detection algorithm | |
| US10410089B2 (en) | Training assistance using synthetic images | |
| US12254565B2 (en) | Visualization of post-treatment outcomes for medical treatment | |
| CN112348958B (zh) | 关键帧图像的采集方法、装置、系统和三维重建方法 | |
| JP5093053B2 (ja) | 電子カメラ | |
| US11403781B2 (en) | Methods and systems for intra-capture camera calibration | |
| CN110264509A (zh) | 确定图像捕捉设备的位姿的方法、装置及其存储介质 | |
| CN112509117A (zh) | 手部三维模型的重建方法、装置、电子设备及存储介质 | |
| JP2017182274A (ja) | 情報処理装置およびコンピュータープログラム | |
| CN113657357B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
| CN111179341B (zh) | 一种增强现实设备与移动机器人的配准方法 | |
| JPWO2016151691A1 (ja) | 画像処理装置、画像処理システム、画像処理方法及びプログラム | |
| JP4938748B2 (ja) | 画像認識装置及びプログラム | |
| CN113129451B (zh) | 基于双目视觉定位的全息三维影像空间定量投影方法 | |
| WO2019164502A1 (en) | Methods, devices and computer program products for generating 3d models | |
| JP2006004158A (ja) | 画像処理プログラム、画像処理方法、画像処理装置及び記録媒体 | |
| CN111897422A (zh) | 一种虚实物体实时融合的实物交互方法与系统 | |
| CN120014714B (zh) | 一种手部姿态识别方法、头戴式显示设备和存储介质 | |
| CN114140536A (zh) | 位姿数据处理方法、装置、电子设备及存储介质 | |
| JP2002032743A (ja) | 3次元画像生成システムおよび3次元画像生成方法、並びにプログラム提供媒体 | |
| JP6341540B2 (ja) | 情報端末装置、方法及びプログラム | |
| CN119295706A (zh) | 一种光学透视标定的方法、系统、电子设备及存储介质 | |
| Chamzas et al. | 3D augmented reality tangible user interface using commodity hardware | |
| CN113407033A (zh) | 一种基于vr的人体关键点数据扩充的方法 |