JP6676294B2 - 情報処理装置、情報処理方法、プログラム - Google Patents

情報処理装置、情報処理方法、プログラム Download PDF

Info

Publication number
JP6676294B2
JP6676294B2 JP2015132197A JP2015132197A JP6676294B2 JP 6676294 B2 JP6676294 B2 JP 6676294B2 JP 2015132197 A JP2015132197 A JP 2015132197A JP 2015132197 A JP2015132197 A JP 2015132197A JP 6676294 B2 JP6676294 B2 JP 6676294B2
Authority
JP
Japan
Prior art keywords
interference
image
orientation
information
unit
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.)
Active
Application number
JP2015132197A
Other languages
English (en)
Other versions
JP2017016376A (ja
Inventor
武本 和樹
和樹 武本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015132197A priority Critical patent/JP6676294B2/ja
Priority to EP16175878.4A priority patent/EP3113117A1/en
Priority to KR1020160080518A priority patent/KR102059834B1/ko
Priority to US15/195,118 priority patent/US10410420B2/en
Priority to CN201610517153.2A priority patent/CN106326523B/zh
Publication of JP2017016376A publication Critical patent/JP2017016376A/ja
Priority to JP2020043763A priority patent/JP6983939B2/ja
Application granted granted Critical
Publication of JP6676294B2 publication Critical patent/JP6676294B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection

Description

本発明は、複合現実感システムに関する。
近年、設計・製造分野においてプロトタイプを用いた評価の期間短縮、費用削減が求められている。CAD(コンピュータ支援設計)システムで作成した設計(形状・デザイン)データを用いて、組み立てやすさやメンテナンス性の仮想評価をするための複合現実感(MR:Mixed Reality)システムが導入されている。代表的な評価項目として、工具を目的の部品以外に干渉させずに作業ができるかを、現実の部品が存在しなくても仮想部品のみで評価するというものがある。
このような評価を行うための複合現実感システムでは、体験者が仮想物体(例えば工具)を動かして別の仮想物体(部品)に干渉させたかどうか、または発生した場合は、どこでどのような干渉痕が残ったのかを提示する機能が求められる。
特許文献1では、干渉が発生した位置群をメモリに記録し、メモリ上の位置群を時系列ごとに線分で繋いでいくことで軌跡を表示することを開示している。
特開2006−302035号公報
しかしながら、特許文献1に開示される方法では順次線分を繋ぐだけであり、どの程度の干渉痕が部品に残ったのかを判断することは困難である。
本発明は上記課題に鑑みてなされたものであり、仮想物体と対象物体との干渉について、干渉した部位の形状を示す干渉情報を提示することを目的とする。
上記課題を解決するために、本願発明の情報処理装置は、例えば、現実の空間を撮像した撮像画像を取得する画像取得手段と、複数の仮想物体のモデルデータを記憶する記憶手段と、前記複数の仮想物体それぞれの位置姿勢を取得する位置姿勢取得手段と、前記複数の前記仮想物体の位置姿勢と前記複数の仮想物体のモデルデータとに基づいて、前記仮想物体同士が干渉したかを判定する干渉判定手段と、前記干渉判定手段の結果に基づいて、前記仮想物体同士が干渉する干渉部位の輪郭を干渉情報として記録する干渉情報記録手段と、前記干渉情報記録手段で記録された前記干渉情報を参照して、前記撮像画像と前記複数の仮想物体の画像と前記干渉部位の輪郭を示す画像と過去の干渉部位の輪郭を示す画像とが合成された合成画像を生成する生成手段と、前記生成された合成画像を出力する出力手段とを備える。
本発明によれば、仮想物体と対象物体との干渉について、干渉した部位の形状を示す干渉情報を提示することが可能になる。
第1の実施形態における干渉表示装置の構成を示すブロック図である。 第1の実施形態における仮想物体201、202、現在の干渉部位203、過去の干渉部位206を示す模式図である。 変形例1における干渉部位の表示方法を示す模式図である。 第1の実施形態の干渉表示装置の処理の詳細を示すフローチャートである。 第1の実施形態の干渉情報保持部111の処理の詳細を示すフローチャートである。 変形例2にかかる情報処理装置の処理フローチャートである。 第1の実施形態における情報処理装置のハードウェア構成の例を示す図である。 第1の実施形態の干渉情報のデータセットの例を示す表である。 変形例1の干渉情報保持部111の処理の詳細を示すフローチャートである。 変形例1の仮想空間の画像の描画結果を示す模式図である。
(第1の実施形態)
以下、添付図面を参照して、本発明を適用した好適な実施例に従って詳細に説明する。
図7は、本実施例を実現するためのハードウェアを示すブロック図である。
図7は、本実施形態における情報装置100のハードウェア構成図である。同図において、CPU710は、バス700を介して接続する各デバイスを統括的に制御する。CPU710は、読み出し専用メモリ(ROM)720に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム(OS)をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はROM720に記憶されており、ランダムアクセスメモリ(RAM)730に一時記憶され、CPU710によって適宜実行される。また、入力I/F740は、外部の装置(撮像装置や操作装置など)から情報処理装置101で処理可能な形式で入力信号として入力する。また、出力I/F750は、外部の装置(例えばHMDなどの表示装置)へ処理可能な形式で出力信号として出力する。
図1は本実施形態における情報処理装置の機能構成を示すブロック図である。
本実施形態における情報処理装置100は、HMD301に接続されている。情報処理装置100は、HMD301内の撮像部107から取り込んだ現実空間の画像と仮想空間の画像とを合成し、複合現実感映像としてHMD301内の表示部110に出力する。
撮像部107は、現実空間を撮影し、撮像した画像を情報処理装置100に取り込む。撮影された画像は、合成部109にて仮想物体の画像と合成して表示部110に合成画像として表示する。本実施形態では、撮像部107は、ヘッドマウンテッドディスプレイ301(以下、HMDと称する)に内蔵されているものとする。
表示部110は、合成部109で描画した合成画像を体験者に提示する。本実施形態では、HMD301に内蔵されたディスプレイを用いる。
振動提示部113は、干渉情報通知部112から干渉しているという出力を受けて、体験者(ユーザ)の触覚に干渉したことを知らせる振動を提示する。本実施形態では、振動提示部113としては、偏心おもりを先端に取り付けたモーターを回転させるデバイスを用い、該デバイスを体験者の身体の一部に備えつけておく。しかしながら本発明はこれに限られるものではなく、例えば、指先に設置した電極に微弱な電流を流すなど、触覚を刺激する方法であれば適用可能である。
音提示部115は、干渉情報通知部112から干渉しているという出力を受けて、体験者の聴覚に干渉したことを知らせる音を提示する。本実施形態では、情報処理装置100とは別体のスピーカを用いるものとする。例えば、HMD301にヘッドホンを内蔵させて、該ヘッドホンを用いて音を提示してもよい。また、据え置き型のスピーカを利用しても良い。また、情報処理装置100にスピーカを内蔵しても良い。音の種類は、体験者の聴覚を刺激できるものであればどのような音でもよい。たとえば、所定の波長のビープ音でもよい。
情報処理装置100は、仮想物体データベース101、干渉判定部103、仮想物体描画部104、干渉部位算出部105、位置姿勢取得部108、合成部109、干渉情報保持部111、干渉情報通知部112、を備える。
これらの各機能部は、CPU710が、ROM720に格納されたプログラムをRAM730に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、CPU710を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
仮想物体データベース101は、仮想物体のモデルを保持するデータベースである。仮想物体のモデルは、例えば形状、表示色、初期位置姿勢を含んでいる。本実施形態では、図2(a)に示すような円柱と直方体の2つの形状の仮想物体201、202を例に説明する。
位置姿勢取得部108は、撮像部107から取り込んだ画像(画像取得)に基づいて、現実空間の撮像部107の位置姿勢(即ち、HMD301の位置姿勢)と仮想物体の位置姿勢を推定する。本実施形態では、撮像部107の位置姿勢を体験者の視点位置姿勢とする。撮像部107の位置姿勢の算出は、現実空間に配置されたマーカを撮像した画像に基づいて行われる(撮像部位置姿勢計測)。また、仮想物体の位置姿勢は、例えば、仮想物体に対応する現実物を予め現実空間に配置する。そして、現実物にマーカを貼りつけておき、該マーカを撮像した画像に基づいて現実物の位置姿勢位置姿勢を推定し、該推定された現実物の位置姿勢を該現実物に対応する仮想物体の位置姿勢として推定する。そして、体験者が現実物を動かすことによって、仮想物体の位置姿勢を変更することができる。ただし、本発明では体験者の視点位置姿勢や仮想物体の位置姿勢を取得する方法はこれに限定されない。例えば、現実物に三次元センサを貼りつけまたは内蔵させても用いてもよいし、市販のモーションキャプチャシステムを利用して撮像装置107に対する仮想物体の位置姿勢を計測することも可能である。また、仮想物体に対応する現実物を用意しなくても、予め設定された位置に仮想物を表示し、コントローラ等を用いて仮想物体を移動させてもよい。
干渉判定部103は、仮想物体の位置姿勢および形状に基づいて、複数の仮想物体同士の干渉の有無を判定する。2つの仮想物体同士の干渉判定は、以下の手順で実現する。まず、それぞれの仮想物体から三角形ポリゴンを一つずつ取り出し、その三角形ポリゴン同士が交差しているかどうかを判定する。これを全ての三角形ポリゴンの組み合わせに対して行い、一つでも交差している場合は仮想物体同士が干渉していると判定する。さらに、この処理を全ての仮想物体の組み合わせに対して行う。ただし、本発明における干渉判定部103の実現方法はこれに限るものではない。
干渉部位算出部105は、干渉判定部103で干渉していると判定された仮想物体から、干渉部位を算出する。本実施形態では交差している三角形ポリゴンの集合と、交線の集合とを干渉部位(即ち、干渉した部位の輪郭)として算出する。すなわち、ただし、本発明における干渉部位の表現方法はこれに限るものではない。
干渉情報保持部111は、干渉部位算出部105で算出された干渉情報を保持する(干渉情報記録)。干渉情報の一例を図8に示す。
フレーム番号は、撮像装置107が撮像した画像が更新されるたびに1個カウントアップされる番号である。
干渉対象物は、干渉している仮想物体を特定するモデルの識別情報である。本実施形態では、仮想物体の名称を登録している。時刻は、実際に干渉が発生したと判定した時刻である。
頂点数は、干渉している仮想物体201と仮想物体202が干渉しているポリゴンの交線の端点の数である。
頂点位置は、交線の端点のすべての3次元位置である。この頂点位置を線分として描画すると、図2(b)において仮想物体201と202の干渉部位を表わす円の線203となる。
色と線幅は、干渉情報を仮想物体の画像として描画する場合に使用する描画属性である。なお、描画属性である色と線幅は、干渉したときに生成されることに限定されるものではなく、事前にパラメータを設定しておけばよい。
図8で示す表はフレーム番号ごとに1つのデータセットとして履歴が保持される。なお、本発明は、干渉情報をフレーム番号でデータセットとして区分することに限定されるものではなく、時刻をキーにしてデータセットを作ってもよい。また、干渉対象物の2つの仮想物体の組み合わせごとにデータセットを作ってもよい。
仮想物体描画部104は、干渉情報と仮想物体201、202を描画した画像を生成する。より具体的には、仮想物体データベースに保存されたモデルデータや干渉情報保持部111に保存された干渉情報に基づいて画像を生成する。
まず、仮想空間の画像を生成するための仮想視点の位置姿勢を位置姿勢取得部108から取得する。仮想視点の位置姿勢は、例えば、基準とする世界座標系における撮像部107の位置姿勢情報を入力すればよい。また、仮想物体201と202および干渉情報の3次元頂点位置は、位置姿勢取得部108で取得された位置姿勢に基づいて更新する。更新した仮想物体と干渉情報の3次元頂点は、仮想視点に基づいて設定された投影面に投影される。投影後のポリゴン・線分の描画処理は、一般的な3次元画像生成における描画処理と同じであるため詳細な説明は省略する。本実施形態における、仮想物描画部104で生成された仮想空間の画像を図2(c)に示している。仮想物体201、202およびこれまで蓄積された干渉情報に基づく干渉部位206が描画される(干渉情報画像生成)。本実施形態では、干渉部位の輪郭を描画しているが、輪郭の内部についても特定色を重畳する等して判別しやすくしてもよい。
合成部109は、撮像装置107から取り込んだ現実空間の画像と、仮想物体描画部104で描画された仮想空間の画像とを合成する。合成処理は、実写画像の上に仮想空間の画像を撮像装置107の現実空間の画像の上に描画することにより。すなわち、仮想物体201、202の領域以外の画素は、現実空間画像の画素が表示される合成画像となる。
干渉情報通知部112は、干渉情報保持部111の情報に基づいて、現時点における干渉状態を他の通知手段に通知する。本実施形態では、仮想物体描画部104で仮想物体201、202と干渉情報を視覚的に表示することによって干渉しているか否かを明示的に体験者に提示している。しかし、視覚的な表示のみでは、干渉している場所が撮像装置107の視野外である場合は、干渉していることを体験者が知覚できない。干渉しているか否かを聴覚と触覚で提示すると、視野外で起こった干渉を体験者が知覚することができる。
図2は本実施形態における仮想空間の画像の例を示した模式図である。また、図4は、本実施形態の処理の詳細を示すフローチャートである。
図2および図4を用いて、仮想物体201、202が配置されている状況を例に本実施形態の処理の詳細を説明する。
ステップS801では、仮想物体描画部104は、仮想物体データベース101から仮想物体201、202のデータを読み込む。
ステップS802では、位置姿勢取得部108は、撮像部107で撮影された現実空間の画像を取得する。そして、位置姿勢取得部108は、取得した画像に基づいて撮像部107の位置姿勢情報を算出する。ステップS802以降の処理は、撮像部107から現実空間の画像が更新されるまで処理が一時停止され、更新があった場合に後段の処理を実行する。ただし、本実施形態は、撮像部107の画像更新ごとに処理をすることに限定されるものではなく、例えば、位置姿勢取得部108で新たな位置姿勢が取得されたタイミングで処理を実行する方法でも適用可能である。
ステップS803は、位置姿勢取得部102は、位置姿勢情報を干渉判定部103と仮想物体描画部104に送出する。
ステップS806は、干渉判定部103は、RAM702に格納されている仮想物体201、202を参照し、仮想物体201、202を構成するポリゴンごとに交差しているかどうか判定する。
図2(b)は、体験者が仮想物体202に対応するマーカを移動させ、仮想物体201と仮想物体202が干渉した状況を示している。図2(a)の状態のときは、ステップS811に処理を移し、図2(b)の状態のときにS809に処理を移す。
ステップS809では、干渉部位算出部105が、仮想物体の干渉部位の情報を計算する。
例えば、本実施形態に置いては、図2(b)において、円柱の仮想物体202を移動して直方体の仮想物体201に干渉させた場合、干渉部位の情報として各ポリゴンの交線の集合として干渉部位203が生成される。
ステップS810では、干渉情報保持部111が、仮想物体の組み合わせごとに干渉情報のデータセットを記録する。本実施形態においては、図8に示すような干渉情報を記録する。さらに、このデータセットの記録は、撮像部107で撮影された画像が更新されるたびに実行される。すなわち、図8に示す干渉情報は、仮想物体の組み合わせのデータセットに加えて、撮像部107で画像が更新される度にデータセットが蓄積されるものとする。ステップS810の処理の詳細は後述する。
ステップS811では、仮想物体描画部104が仮想物体と干渉部位を仮想空間の画像として描画する。本実施形態においては、仮想物体201、202は、三角形ポリゴンの情報に基づいて描画される。また、干渉部位は、干渉情報に基づいて2頂点が1つの線分として描画される。また、描画時の線分の色や線幅については、干渉情報を参照して描画される。
図2(c)が仮想物体201、202と干渉部位206を描画した結果を示している。干渉部位206には、過去に蓄積した干渉部位の情報も含まれるため、円柱の仮想物体202をどのように動かして干渉させたかが、タスクのあとで確認できる。
ステップS812では、合成部109は、撮像部107が撮像した現実空間の画像と、仮想空間の画像とを合成して合成画像を生成する。
ステップS813では、まず表示部110は、合成部109で合成された合成画像を表示し、HMD301を装着する体験者に提示する。さらに、振動提示部113と音提示部115は、干渉情報通知部112の情報にしたがって体験者に振動および音を提示する。
ステップS815では、体験者から終了コマンドがキーボードなどの入力装置で送信されたかどうかを判定し、終了コマンドがなければステップS802に処理を移し、終了判定された場合は処理を終了する。
図5は、ステップS810の干渉情報を記録する処理の詳細を示すフローチャートである。
図2(c)のように過去の干渉部位を重ねて表示すると、干渉部位の強調表示が蓄積されて描画性能が低下したり、不要に強調表示されて見難くなるという課題がある。この課題に対して、本実施形態では、あらかじめ体験者が設定した干渉部位のデータセットの個数の閾値を超えた場合は、一番古い干渉部位のデータセットから消去(削除)していく方法で対応する。図5のフローチャートで詳細を説明する。
ステップS901では、干渉情報保持部111は、過去の干渉情報を参照し、データセット数を集計する。集計したデータセット(過去データセット)数が、予め体験者が設定した閾値を超えた場合は、ステップS905に処理を移す。閾値を超えない場合はステップS910に処理を移す。
ステップS905では、干渉情報保持部111は、過去の干渉情報のうち、時刻が一番古いデータセットを検索して消去する。なお、本発明は時刻が一番古いデータセットを消去することに限定されるものではなく、所定の時刻以前のデータセットをすべて消去したり、頂点数の多いデータセットを優先して消去してもよい。
ステップS910では、干渉情報保持部111が干渉部位算出部105で算出した現在の干渉情報を新たなデータセットとして追加する。
以上の処理により、仮想物体201と202が干渉した結果を、過去の干渉部位の情報として現在の視点における仮想空間の画像上で強調表示することにより、タスクを完了したあとに干渉の状況を再確認することができる。さらに、一定のデータセット数を超えないように閾値を設けることで、表示負荷の軽減や干渉部位を見やすく表示することができるようになる。
上記第1の実施形態では、一定のデータセット数を超えないように閾値を設け、超える場合にはメモリから削除する例を示した。しかしながら、メモリから削除は行わずに、表示する画像は含めないようにしてもよい。
(変形例1)
第1の実施形態では、干渉部位として、仮想物体201と202との干渉部位の表現方法として、ポリゴンの交線を繋いで干渉部位206を表現していた。しかし本発明は干渉しているポリゴンの交線を繋いで表示することに限定されるものではなく、別の表現で干渉部位を表現してもよい。
本変形例においては、図3に示すように、干渉部位206の表現として仮想物体の形状そのものを干渉した場所に留めて表示する方法を示す。図3は体験者がHMD301を装着して仮想物体の工具305を仮想物体のドア310に対して近づけるタスクを行う作業を表わした模式図である。
本変形例を実現するための構成は、第1の実施形態の干渉情報保持部111の処理を変更すればよい。
第1の実施形態では干渉情報保持部111は、干渉情報のデータセットの頂点位置として干渉したポリゴンの交線を記録していた。しかし、本変形例では頂点位置として、体験者301が手で動かす仮想物体305の形状を表わすポリゴン情報を記録する。しかし、撮像装置107で撮影する画像が更新されるごとにデータセットを記録し、すべての干渉部位206をドア310上に表示すると、数が多すぎて表示が煩雑になる。本変形例では、表示が煩雑にならないように、データセットの重心位置に基づいて表示を制約する方法を図9のフローチャートを用いて示す。
なお、本発明は仮想物体を表わす形状として三角形ポリゴンに限定されるものではなく、例えばモデルデータをパラメトリックに表現する方法でも適用可能である。
図9のフローチャートは、本変形例における図4のステップS810の処理の詳細を示している。以下、第1の実施形態との差分のみを説明する。
ステップS925では、干渉情報保持部111が、干渉部位算出部105で算出した干渉情報のうち、頂点位置の3次元位置の平均を算出して重心位置とする。データセットに関連付けて記憶する。
ステップS930では、干渉情報保持部111が、過去の干渉情報に対応付けられた重心位置群を参照し、干渉情報保持部111で算出した重心位置と比較する。干渉情報保持部111で算出した重心位置と、過去の重心位置群とを比較して、過去の重心位置群のうち少なくとも1つの重心位置との距離が予め設定した閾値を下回る場合は、干渉情報として追加せずに処理を終了する。すなわち、現在の位置姿勢における工具305がドア310に干渉した場合、過去の干渉情報で重心位置が近いものがあると追加しないようにする。一方、距離の閾値を上回っている場合は、干渉情報としてデータセットを追加する。
以上のように本変形例における干渉表示方法では、干渉部位をよりわかりやすい表現に置き換えることでタスク後の干渉状況の確認を補助することができる。
上記変形例1では、干渉が発生した位置に近い場合は、現在の干渉部位の情報をデータセットに追加しなかったが、データセットには追加し、表示する画像には含めないようにしてもよい。
(変形例2)
変形例1では、干渉が発生したときの仮想物体の重心位置が、過去の干渉情報において、干渉が発生した位置に近い場合は、現在の干渉部位の情報をデータセットに追加しなかった。しかし、本発明は、干渉部位の空間中の位置に基づいて干渉情報を記録するか否かを判断することに限定されるものではない。
本変形例では、位置姿勢取得部108から出力される位置姿勢の信頼度に応じて、干渉情報を記録するか否かを判定する処理について説明する。
撮像画像に映るマーカで仮想物体の位置姿勢を決定する場合において、以下のような状態で位置姿勢計測結果の信頼性が低下する。
(1)マーカが画面上で小さく写っている場合
(2)撮像装置107とマーカの間に遮蔽物が入ってマーカが隠される場合
(3)マーカが撮像装置107の視野外で写らない場合
また、仮想物体の位置姿勢を位置姿勢センサーにより計測する場合であっても、環境ノイズや計測範囲外になるなど、信頼性が低下する状況が考えられる。
上記のように位置姿勢の計測の信頼性が低下した状態で干渉情報を追加しても、タスク後の確認で過去の干渉状況を正しく判断できないため、干渉情報を記録しないようにする方法を示す。
本変形例を実現するための構成は、変形例1の位置姿勢取得部108から干渉情報保持部111に位置姿勢の信頼度の情報を入力するようにし、干渉情報保持部111の処理で信頼度に応じて干渉情報の記録を判断すればよい。
位置姿勢取得部108は、例えば図4のステップS803の位置姿勢更新の処理において、現在の位置姿勢計測結果の信頼度を保存すればよい。信頼度は、例えば、マーカが認識されていれば1、認識されていなければ0、マーカ領域が撮像装置画像上を占める割合が10%を下回った場合は0.5と定義する。
干渉情報保持部111の処理の詳細を図6に示す。なお、変形例1と同じ番号の処理については説明を省略する。
ステップS915では、干渉情報保持部111は、位置合わせ信頼度を取得し(導出)、信頼度が閾値以下の場合はステップS920に処理を移す。信頼度が閾値以上であれば、ステップS910に処理を移す。
ステップS920では、干渉情報保持部111は、仮想物体描画部104に対して、現在位置合わせ信頼度が低いために干渉情報を記録しなかったことを伝えるメッセージを表示するように指示する。
仮想物体描画部104は、ステップS811の仮想物体の描画処理に置いて、仮想物体画像よりも前に、メッセージ250を表示するように変更すればよい。仮想物体描画部104がメッセージ250を表示した画像の模式図を図10に示す。
以上のように本変形例における干渉表示方法では、位置合わせの計測時の信頼度が低い場合は干渉部位記録しないことで正しくない干渉情報を除去し、タスク後の干渉状況の確認を補助することができる。
(変形例3)
第1の実施形態では、仮想物体201と202を円柱と直方体で表現し、仮想物体の位置姿勢をマーカの位置姿勢に割り当てて、体験者が意図的に手で移動させるようにしていた。
しかし、本発明は仮想物体を手で移動させることに限定されるものではなく、体験者の身体の部位の位置姿勢を計測し、その位置姿勢を仮想物体に割り当てる方法でも適用可能である。
例えば、変形例1のドア310に工具305を使って作業をするような状況で、体験者の肘や膝などを位置姿勢センサーで計測して、作業中に工具305だけではなく、体験者の身体の一部が干渉したこと検知して提示してもよい。
本変形例を実現する構成は、位置姿勢取得部108が体験者の膝などの身体の一部の位置姿勢を入力し、干渉判定部103と仮想物体描画部104に出力すればよい。また、仮想物体データベース101には、体験者の身体の部位の形状に応じたモデルデータをあらかじめ記録しておき、干渉判定部103や仮想物体描画部104に出力すればよい。
以上のように、本変形例では、体験者が意図的に手で動かした仮想物体の干渉状況を確認するだけではなく、作業中に意図せずに当たってしまった人体の部位の干渉状況も確認することができる。
(変形例4)
第1の実施形態では、過去の干渉部位を表わす線分の頂点を図8に示すような頂点位置で保持していた。しかし、本発明は、過去の干渉部位を頂点位置として保持することに限定されるものではなく、干渉が発生した時点で、過去の干渉部位を計算で求めてもよい。
本変形例を実現するためには、図8の干渉情報に仮想物体201、202のポリゴン情報と位置姿勢を追加し、仮想空間の画像を生成するたびに過去の干渉情報のデータセットからポリゴンの交線の端点を算出してもよい。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

Claims (12)

  1. 現実の空間を撮像した撮像画像を取得する画像取得手段と、
    複数の仮想物体のモデルデータを記憶する記憶手段と、
    前記複数の仮想物体それぞれの位置姿勢を取得する位置姿勢取得手段と、
    前記複数の前記仮想物体の位置姿勢と前記複数の仮想物体のモデルデータとに基づいて、前記仮想物体同士が干渉したかを判定する干渉判定手段と、
    前記干渉判定手段の結果に基づいて、前記仮想物体同士が干渉する干渉部位の輪郭を干
    渉情報として記録する干渉情報記録手段と、
    前記干渉情報記録手段で記録された前記干渉情報を参照して、前記撮像画像と前記複数
    の仮想物体の画像と前記干渉部位の輪郭を示す画像と過去の干渉部位の輪郭を示す画像と
    が合成された合成画像を生成する生成手段と、
    前記生成された合成画像を出力する出力手段とを備えることを特徴とする情報処理装置。
  2. 更に、
    前記画像を撮像する撮像装置の位置姿勢を計測する撮像部位置姿勢計測手段と、
    前記撮像装置の位置姿勢に基づいて、前記仮想物体の画像および前記干渉部位の輪郭を示す情報を生成する第2の生成手段とを備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記干渉部位は、複数の前記仮想物体が干渉しているときのモデルデータの交線であることを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記成手段は、前記干渉の履歴に含まれるデータの個数が閾値を超える場合は、最も古い過去データから削除する削除手段を備えることを特徴とする請求項に記載の情報処理装置。
  5. 前記成手段は、前記仮想物体の前記画像における仮想物体の位置と前記画像よりも以前に撮像された過去の画像における仮想物体との距離が閾値よりも大きい場合に、前記干渉の履歴に含めることを特徴とする請求項3または4に記載の情報処理装置。
  6. 前記位置は、前記仮想物体のモデルデータの全ての3次元頂点位置の平均を算出した重心位置であることを特徴とする請求項5に記載の情報処理装置。
  7. 更に、前記位置姿勢取得手段が取得する位置姿勢の信頼度を導出する導出手段を備え、
    前記干渉情報記録手段は、前記信頼度が閾値よりも小さい場合には、前記干渉情報を記録しないことを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記干渉判定手段は、更に、前記仮想物体と人体の所定の部位が干渉したかを判定することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記干渉情報記録手段は、干渉が発生したときの画像のフレーム番号、時刻、干渉した仮想物体の識別情報、干渉部位の形状、干渉部位の3次元位置の少なくとも1つの情報を、前記干渉情報として記録することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 前記出力手段は、ヘッドマウンテッドディスプレイに前記合成画像を出力することを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
  11. 現実の空間を撮像した撮像画像を取得する画像取得ステップと、
    数の仮想物体それぞれの位置姿勢を取得する位置姿勢取得ステップと、
    前記複数の前記仮想物体の位置姿勢と前記複数の仮想物体のモデルデータとに基づいて、前記仮想物体同士の干渉を判定する干渉判定ステップと、
    前記干渉判定ステップの結果に基づいて、前記仮想物体同士が干渉する干渉部位の輪郭を干渉情報として記録する干渉情報記録ステップと、
    前記干渉情報記録ステップで記録された前記干渉情報を参照して、前記撮像画像と前記複数の仮想物体の画像と前記干渉部位の輪郭を示す画像と過去の干渉部位の輪郭を示す画像とが合成された合成画像を生成する生成ステップと、
    前記生成された合成画像を出力する出力ステップとを備えることを特徴とする情報処理方法。
  12. コンピュータを、請求項1乃至10のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
JP2015132197A 2015-06-30 2015-06-30 情報処理装置、情報処理方法、プログラム Active JP6676294B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2015132197A JP6676294B2 (ja) 2015-06-30 2015-06-30 情報処理装置、情報処理方法、プログラム
EP16175878.4A EP3113117A1 (en) 2015-06-30 2016-06-23 Information processing apparatus, information processing method, storage medium and program
KR1020160080518A KR102059834B1 (ko) 2015-06-30 2016-06-28 정보 처리장치, 정보 처리방법, 기억매체 및 프로그램
US15/195,118 US10410420B2 (en) 2015-06-30 2016-06-28 Information processing apparatus, information processing method, and storage medium
CN201610517153.2A CN106326523B (zh) 2015-06-30 2016-06-29 信息处理装置和信息处理方法
JP2020043763A JP6983939B2 (ja) 2015-06-30 2020-03-13 情報処理装置、情報処理方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015132197A JP6676294B2 (ja) 2015-06-30 2015-06-30 情報処理装置、情報処理方法、プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020043763A Division JP6983939B2 (ja) 2015-06-30 2020-03-13 情報処理装置、情報処理方法、プログラム

Publications (2)

Publication Number Publication Date
JP2017016376A JP2017016376A (ja) 2017-01-19
JP6676294B2 true JP6676294B2 (ja) 2020-04-08

Family

ID=56235656

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015132197A Active JP6676294B2 (ja) 2015-06-30 2015-06-30 情報処理装置、情報処理方法、プログラム

Country Status (5)

Country Link
US (1) US10410420B2 (ja)
EP (1) EP3113117A1 (ja)
JP (1) JP6676294B2 (ja)
KR (1) KR102059834B1 (ja)
CN (1) CN106326523B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7039216B2 (ja) * 2017-08-30 2022-03-22 キヤノン株式会社 情報処理装置及びその方法、プログラム
DE102017216953A1 (de) * 2017-09-25 2019-03-28 Siemens Healthcare Gmbh Anzeige eines mit einem realen Objekt verknüpften virtuellen Objekts in einer Augmented-Reality-Anzeigevorrichtung
JP7133926B2 (ja) 2018-01-15 2022-09-09 キヤノン株式会社 情報処理装置、システム、情報処理方法
JP2019185475A (ja) * 2018-04-12 2019-10-24 富士通株式会社 特定プログラム、特定方法及び情報処理装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3415416B2 (ja) * 1996-11-22 2003-06-09 株式会社セガ ゲーム装置、画像データの形成方法及び媒体
US6552722B1 (en) * 1998-07-17 2003-04-22 Sensable Technologies, Inc. Systems and methods for sculpting virtual objects in a haptic virtual reality environment
WO2000038117A1 (en) * 1998-12-23 2000-06-29 Washington State University Research Foundation Method and system for a virtual assembly design environment
JP2006215750A (ja) * 2005-02-02 2006-08-17 Canon Inc 画像処理方法、画像処理装置
JP4756899B2 (ja) 2005-04-21 2011-08-24 キヤノン株式会社 情報処理装置、情報処理方法
JP2007004713A (ja) * 2005-06-27 2007-01-11 Canon Inc 画像処理方法、画像処理装置
US7773098B2 (en) * 2005-05-11 2010-08-10 Canon Kabushiki Kaisha Virtual reality presentation apparatus and method
WO2007010596A1 (ja) * 2005-07-19 2007-01-25 Fujitsu Limited 画像判定方法、画像判定装置および画像判定方法をコンピュータに実行させるプログラムを記録した記録媒体
JP4901539B2 (ja) * 2007-03-07 2012-03-21 株式会社東芝 立体映像表示システム
JP5610735B2 (ja) * 2009-09-29 2014-10-22 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理方法、および、情報処理システム
US8550903B2 (en) * 2010-11-15 2013-10-08 Bally Gaming, Inc. System and method for bonus gaming using a mobile device
US9330490B2 (en) * 2011-04-29 2016-05-03 University Health Network Methods and systems for visualization of 3D parametric data during 2D imaging
WO2013089490A1 (ko) 2011-12-15 2013-06-20 한양대학교 산학협력단 디스플레이 장치와 연동하는 촉감 제공 장치 및 방법
KR101874895B1 (ko) * 2012-01-12 2018-07-06 삼성전자 주식회사 증강 현실 제공 방법 및 이를 지원하는 단말기
CN104641399B (zh) 2012-02-23 2018-11-23 查尔斯·D·休斯顿 用于创建环境并用于共享环境中基于位置的体验的系统和方法
CN103472909B (zh) 2012-04-10 2017-04-12 微软技术许可有限责任公司 用于头戴式、增强现实显示器的逼真遮挡
US9552673B2 (en) * 2012-10-17 2017-01-24 Microsoft Technology Licensing, Llc Grasping virtual objects in augmented reality
KR20150112659A (ko) * 2014-03-28 2015-10-07 한국전자통신연구원 단말 이동 방향 결정 및 위치 보정 방법, 그리고 이를 이용한 측위 장치

Also Published As

Publication number Publication date
CN106326523B (zh) 2020-06-30
KR102059834B1 (ko) 2019-12-27
CN106326523A (zh) 2017-01-11
JP2017016376A (ja) 2017-01-19
US10410420B2 (en) 2019-09-10
EP3113117A1 (en) 2017-01-04
KR20170003435A (ko) 2017-01-09
US20170004653A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
JP2019070909A (ja) 情報処理装置、情報処理方法及びプログラム
JP6643170B2 (ja) 作業支援システム及び方法
JP6676294B2 (ja) 情報処理装置、情報処理方法、プログラム
JP5709440B2 (ja) 情報処理装置、情報処理方法
US10453235B2 (en) Image processing apparatus displaying image of virtual object and method of displaying the same
US10614590B2 (en) Apparatus for determination of interference between virtual objects, control method of the apparatus, and storage medium
US20150199850A1 (en) Information processing apparatus and information processing method
JP2011028309A5 (ja)
US10366539B2 (en) Information processing apparatus, information processing method, and storage medium for reporting based on elapse time and positional relationships between 3-D objects
EP3629302B1 (en) Information processing apparatus, information processing method, and storage medium
JP2005227876A (ja) 画像処理方法、画像処理装置
JP2007004713A (ja) 画像処理方法、画像処理装置
JP2017134116A (ja) 情報処理装置、情報処理方法及びプログラム
JP6983939B2 (ja) 情報処理装置、情報処理方法、プログラム
JP4986543B2 (ja) 情報処理方法、情報処理装置
JP7039216B2 (ja) 情報処理装置及びその方法、プログラム
JP7029253B2 (ja) 情報処理装置及びその方法
JP2021166091A (ja) 画像処理装置、画像処理方法、コンピュータプログラム
US20200258193A1 (en) Information processing apparatus, information processing method, and storage medium
JP2006343954A (ja) 画像処理方法、画像処理装置
JP6704698B2 (ja) 情報処理装置、情報処理方法、情報処理システム、及びプログラム
JP7321029B2 (ja) キャリブレーション装置及びその制御方法及びプログラム及び記憶媒体
JP2016058043A (ja) 情報処理装置、情報処理方法、プログラム
JP2019040356A (ja) 画像処理装置、画像処理方法、コンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200312

R151 Written notification of patent or utility model registration

Ref document number: 6676294

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151