JP7039216B2 - 情報処理装置及びその方法、プログラム - Google Patents

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

Info

Publication number
JP7039216B2
JP7039216B2 JP2017166108A JP2017166108A JP7039216B2 JP 7039216 B2 JP7039216 B2 JP 7039216B2 JP 2017166108 A JP2017166108 A JP 2017166108A JP 2017166108 A JP2017166108 A JP 2017166108A JP 7039216 B2 JP7039216 B2 JP 7039216B2
Authority
JP
Japan
Prior art keywords
reliability
information processing
processing apparatus
event
threshold value
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
JP2017166108A
Other languages
English (en)
Other versions
JP2019045997A (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 JP2017166108A priority Critical patent/JP7039216B2/ja
Publication of JP2019045997A publication Critical patent/JP2019045997A/ja
Application granted granted Critical
Publication of JP7039216B2 publication Critical patent/JP7039216B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、仮想物体を含む画像の表示に関するものである。
近年、設計・製造分野においてプロトタイプを用いた評価の期間短縮、費用削減が求められている。CAD(コンピュータ支援設計)システムで作成した設計(形状・デザイン)データを用いて、組み立てやすさやメンテナンス性の仮想評価をするための複合現実感(MR:Mixed Reality)システムが導入されている。評価項目として、設計データを仮想的なポインタを使って操作し、組み立てやすさを現実の部品が存在しなくても仮想部品のみで評価するというものがある。その他にも、体験者が仮想部品を動かして別の仮想部品に干渉したかどうかを提示して、工具を目的の部品以外に干渉させずに作業できるかを仮想部品のみで評価することも可能である。
特許文献1には、体験者が動かす仮想部品の位置姿勢を決めるマーカの位置姿勢計測結果の信頼度が低い場合には、干渉情報を記録しない方法を開示している。
特開2017-016376号公報
特許文献1の方法では、体験者が動かす仮想部品の位置姿勢を決めるマーカの位置姿勢計測結果の信頼度が閾値未満に下がると即座に干渉の判定などのアクションを停止させてメッセージを表示するようにしている。しかし、アクションを突然止めてしまうと体験者の没入感を低下させてしまう可能性がある。また、メッセージを表示させても体験者の没入感を低下させてしまう恐れがあった。
本発明は、上記課題に鑑みてなされたものであり、体験者が動かす仮想部品の位置姿勢を決めるマーカの位置姿勢計測結果の信頼度が低下しても、体験者の没入感の低下を防ぐことを目的とする。
本発明の1態様によれば、情報処理装置に、現実空間を撮像した撮像画像を取得する画像取得手段と、体験者が使用する指示部の位置姿勢情報を取得する情報取得手段と、前記位置姿勢情報の信頼度を算出する算出手段と、前記指示部の位置姿勢情報に基づいて仮想空間における3次元位置を指定する指定手段と、前記体験者から前記3次元位置に基づくイベントの実行指示を受け付ける受付手段と、前記信頼度が閾値以上かを判断する第一の判断手段と、前記第一の判断手段により前記信頼度が閾値未満と判断された場合に、当該信頼度が閾値未満である状態が開始から閾値時間以内であるかを判断する第二の判断手段と、前記第一の判断手段で前記信頼度が閾値以上と判断されるかまたは前記第二の判断手段で前記信頼度が閾値未満である状態が開始から閾値時間以内であると判断された場合に、前記イベントを実行する実行手段とを備える。
本発明によれば、体験者の没入感の低下を防ぐことができる。
システムの構成例を示すブロック図。 各イベントを説明する図。 情報処理装置の各機能部の動作を示すフローチャート。 システムの構成例を示すブロック図。 情報処理装置の各機能部の動作を示すフローチャート。 システムの構成例を示すブロック図。 情報処理装置の各機能部の動作を示すフローチャート。 システムの構成例を示すブロック図。 特徴点探索範囲を示す図。 特徴点探索範囲を示す図。 情報処理装置の各機能部の動作を示すフローチャート。
以下、図面を参照しながら本発明の好適な実施形態について詳細に説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。
(実施形態1)
図1は、本実施形態に係るシステムの機能構成例を示すブロック図である。図1に示すように、本実施形態に係るシステムは、情報処置装置100と、入力受付部130と、頭部装着型表示装置の一例としてのHMD120で構成されている。また、情報処理装置100は、位置姿勢信頼度判断部101、位置姿勢信頼度算出部102、位置姿勢取得部103、3次元ポイント計算部104、3次元ポイント変更部105を備える。情報処理装置100は、さらに、仮想物体データベース106、3次元ポイント確定部107、イベント実施部108、仮想物体描画部109、合成部110を備える。ここで、情報処理装置100とHMD120とはデータ通信が可能なように接続されている。情報処理装置100とHMD120との間の接続は、有線、無線の何れであっても構わない。
本実施形態における情報処理装置100は、HMD120内の撮像部121から取り込んだ現実空間の画像と仮想空間の画像とを合成し、複合現実感の画像としてHMD120内の表示部122に出力する。
撮像部121は現実空間を撮影し、撮影した画像を情報処理装置100に取り込む。撮影された画像は合成部110にて仮想物体の画像と合成して表示部122に合成画像として表示する。本実施形態では撮像部121はヘッドマウンテッドディスプレイ(以下、HMDと称する)に内蔵されているものとする。
表示部122は合成部110で生成された合成画像を体験者に提示する。本実施形態では、HMD120に内蔵されたディスプレイを用いる。
入力受付部130は体験者が各種の操作入力を行うために操作するユーザインターフェースであり、例えば、確定などを指示するためのボタン群を有する。なお、入力受付部130は後述するような様々な操作指示を情報処理装置に対して入力することができるように構成されていれば、いかなる形態のユーザインターフェースを適用しても構わない。すなわち入力受付部130はマウス、キーボードなどのような装置であってもよいし、体験者や他のユーザのジェスチャーや声を認識することによって、対応する操作指示を入力する装置であってもよい。また、これらの装置の組み合わせによって操作入力を構成してもよい。
位置姿勢取得部103は、撮像部121から画像取得を実行し、取り込んだ画像に基づいて、現実空間の撮像部121の位置姿勢と仮想物体の位置姿勢を推定する。本実施形態では、撮像部121の位置姿勢を体験者の視点位置姿勢とする。撮像部121の位置姿勢の算出は現実空間に配置されたマーカを撮像した画像に基づいて行われる。また、仮想物体の位置姿勢は例えば、仮想物体に対応する現実物体をあらかじめ現実空間に配置する。そして、現実物体にマーカを張り付けておき、マーカを撮像した画像に基づいて現実物体の位置姿勢を推定し、推定された現実物体の位置姿勢を現実物体に対応する仮想物体の位置姿勢として推定する。そして、体験者が現実物体を動かすことによって、仮想物体の位置姿勢を変更することができる。
ただし、本発明では体験者の視点位置姿勢や仮想物体の位置姿勢について情報取得する方法はこれに限定されない。例えば、現実物体に3次元センサを貼り付け、または内蔵させてもよいし、市販のモーションキャプチャシステムを利用して撮像装置に対する仮想物体の位置姿勢を計測することも可能である。また、仮想物体に対応する現実物体を用意しなくても、予め設定された位置に仮想物体を表示し、コントローラなどを用いて仮想物体を移動させてもよい。
3次元ポイント計算部104は複合現実空間における3次元ポインタの位置を計算する。3次元ポインタも仮想物体であり、位置姿勢取得部103で3次元ポインタの位置姿勢が計算される。3次元ポインタは仮想物体を選択し、ポインタを使って仮想物体を移動させることを可能にする。その他にも3次元ポインタを利用して、複合現実空間の二点を指定することで距離計測を実施することなども可能にする。
位置姿勢信頼度算出部102は位置姿勢取得部103における位置姿勢の推定の信頼度を計算する。撮像物体に映るマーカで位置姿勢を推定する場合において、以下の状態で位置姿勢推定結果の信頼性が低下する。
(1)マーカが画面上で小さく映っている場合
(2)撮像部121とマーカの間に遮蔽物が入ってマーカが隠される場合
(3)マーカが撮像部121の視野外で映らない場合
また、仮想物体の位置姿勢を位置姿勢センサにより計測する場合であっても、環境ノイズや計測範囲外になるなど、信頼性が低下する状況が考えられる。そこで、信頼度は例えば、マーカが認識されていれば1、認識されていなければ0、マーカ領域が撮像画像装置画像上を占める割合の10パーセントを下回った場合は0.5と定義する。
位置姿勢信頼度判断部101は位置姿勢信頼度算出部102が算出した信頼度から合否を判定する。例えば、閾値未満であれば、否と判定し、閾値以上であれば合と判定する。
3次元ポイント確定部107は入力受付部130から受け付けた体験者の確定指示を取得し、位置姿勢信頼度判断部101が合と判断している場合は、3次元ポイント位置でのイベントを発行する。反対に否と判断している場合はイベントを発行しない。これにより、ユーザが意図しない3次元ポイント位置でのイベントの実施を防ぐことができる。発行されるイベントはユーザの入力や情報処理装置の設定に応じて切り替えて実施されてもよい。イベントの種類に応じて、否と判断された場合でもイベントを発行してもよい。例えば、位置姿勢信頼度が低いが、ユーザが必ず実行したい場合には強制実行のようなボタンを入力受付部130に用意して、イベントを実行してもよい。その時に3次元ポイント位置は位置姿勢信頼度が低下したときの値でもよい。
イベント実施部108は3次元ポイント確定部107が発行したイベントを実施する。各イベントに関して図2を用いて説明する。体験者200は現実物体230を持ち、現実物体230に対応する仮想物体である3次元ポインタ210を使って、イベント時の3次元ポイント位置を指定する。距離計測の一点目を確定するイベントの場合は、図2(A)に示す。体験者200は3次元ポインタ210で仮想物体220の一点を指定している。その状態で入力受付部130に確定を指示すると図2(B)に示すように確定した一点目に仮想物体240を表示し、その仮想物体240と3次元ポイント位置210を結ぶ線250を仮想物体として表示する。また、一点目の仮想物体240と3次元ポイント位置210の距離を数値260として表示する。
ここで、3次元ポインタ210は仮想物体220の一点でなくても、現実空間における一点を指定してもよい。その他にも、二点目の確定があるまでは常に一点目と3次元ポインタの位置を結ぶ線と数値を動的に変更するイベントも発行される。二点目を決定するイベントを図2(C)に示す。2点目を決定するイベントの場合は一点目240と二点目270を結ぶ線250を表示し、線250の付近にその長さ260を表示させる。それ以外にイベントとして、3次元ポインタを利用した仮想物体の移動がある。仮想物体の移動のためには、3次元ポインタが指している仮想物体を選択するイベントや、選択された仮想物体の移動を3次元のポインタの移動に合わせて移動させるイベントや、移動させた仮想物体の位置を現在のポインタの位置で確定するイベントを利用する。3次元ポインタが指している仮想物体を選択するイベントについて図2(D)に示す。
図2(D)において体験者200は3次元ポインタ210を移動させたい仮想物体220にあてるようにする。3次元ポインタ210が仮想物体220にあたっている状態で色や形状、透明度を変化させてもよい。3次元ポインタ210が仮想物体220にあたっている状態で体験者200が入力受付部130に確定を指示した場合、図2(E)に示すように選択された仮想物体220が3次元ポインタ210に合わせて移動するようになる。
そこで、次に選択された仮想物体の移動を3次元のポインタの移動に合わせて移動させるイベントの場合を、図2(D)、図2(E)に示す。3次元ポインタ210が移動すると図2(D)の位置にあった仮想物体220が図2(E)のように3次元ポインタ210に合わせて移動する。このようにして3次元ポインタ210を用いて仮想物体220を移動させることができる。また、図2(F)では回転を加えていないがポインタを回転がわかるような仮想物体にして、回転させることで仮想物体220を回転させてもよい。その際に回転中心はどこに設定してもよく、3次元ポインタの位置にしてもよいし、仮想物体220の中心にしてもよい。移動させた仮想物体を確定するイベントが発行されるまでは、ずっと本イベントが発行され続ける。
最後に移動させた仮想物体を確定するイベントについて図2(E)、図2(F)に示す。図2(E)に示すように3次元ポインタ210を移動させて仮想物体220の位置を決めたら体験者200は入力受付部130に確定の指示を出す。その結果、図2(F)のように確定の指示を出した時点の3次元ポインタ位置に仮想物体220が移動し、3次元ポインタ210に合わせて仮想物体220が移動することはなく、位置が確定される。以上のイベントを利用して、3次元ポインタを利用して仮想物体を移動させることができる。
最後に、3次元ポインタが指す位置に仮想的な視点を移動させるイベントについて図2(G)、図2(H)に示す。体験者200は現実物体230の位置姿勢を変化させることで仮想物体280の位置姿勢を変化させる。仮想物体280は仮想的な視点の視推台を示す形状をしている。ここで体験者200が入力受付部130に確定を指示すると仮想物体280を仮想的な視点として後述する方法を用いて、仮想物体の描画することで仮想物体の画像を作成して、画像を保存してもよいし、作成した画像をHMDに表示してもよい。もしくは体験者200の装着しているHMDの視推台290から生成された仮想的な画像が、仮想物体280の仮想的な視点から生成した画像と同じになるように仮想物体220を図2(G)から、図2(H)に示すように移動させてもよい。
仮想物体データベース106は仮想物体のモデルを保持するデータベースである。仮想物体のモデルは例えば形状、表示色、初期位置姿勢を含んでいる。前述の3次元ポインタも仮想物体であり、仮想物体データベース106に保持されている。
3次元ポイント変更部105は位置姿勢信頼度判断部101が否と判断した場合は体験者に視覚的に位置姿勢値が正しくない可能性を提示する。そのために、ポインタとして使用している仮想物体の色を判断結果に応じて変更する。これにより、体験者の複合現実感体験を継続しながら、視覚的に体験者に位置姿勢の信頼度が低いこと、イベントを発行できないことを通知することができる。色の変更以外にも仮想物体の透明度、形状を変更してもよい。また、位置姿勢の推定の信頼度に応じて、色や形状などを徐々に変更させてもよい。もしくは仮想物体の付近に補助的な文字を表示して、体験者に通知してもよい。
仮想物体描画部109は仮想物体を描画した画像を生成する。より具体的には仮想物体データベース106に保存されたモデルデータに基づいて画像を生成する。まず、仮想空間の画像を生成するための仮想視点の位置姿勢を位置姿勢取得部103から取得する。仮想視点の位置姿勢は、例えば、基準とする世界座標系における撮像部121の位置姿勢情報を入力すればよい。また、仮想物体の位置は、位置姿勢取得部103で取得された位置姿勢に基づいて更新する。更新した仮想物体は仮想視点に基づいて設定された投影面に投影される。投影後のポリゴン・線分の描画処理は、一般的な3次元画像生成における描画処理と同じであるため詳細な説明は省略する。
合成部110は撮像装置から取り込んだ現実空間の画像と、仮想物体描画部109で描画された仮想空間の画像とを合成する。合成処理は現実空間の画像の上に仮想空間の画像を重ねることにより実施する。すなわち仮想物体の領域以外の画素は現実空間画像の画素が表示される合成画像となる。
次に、本実施形態に係る情報処理装置100が行う処理のフローチャートを示す図3を用いて説明する。
ステップS301では、仮想物体描画部109は仮想物体データベース106から仮想物体のデータを読み込む。
ステップS302では、位置姿勢取得部103は撮像部121で撮影された現実空間の画像を取得する。そして、位置姿勢取得部103は取得した画像に基づいて撮像部121の位置姿勢情報を算出する。ステップS302以降の処理は、撮像部121から現実空間の画像が更新されるまで処理が一時停止され、更新があった場合には後段の処理を実行する。ただし、本実施形態は、撮像部121の画像更新ごとに処理をすることに限定されるものではなく、例えば、位置姿勢取得部103で新たな位置姿勢が取得されたタイミングで処理を実行する方法でも適用可能である。
ステップS303では、位置姿勢取得部103は位置姿勢情報を仮想物体描画部109、3次元ポイント計算部104、位置姿勢信頼度算出部102に送出する。
ステップS304では、位置姿勢信頼度算出部102は3次元ポインタの位置姿勢の信頼度を算出し、位置姿勢信頼度判断部101に送出する。
ステップS305では、位置姿勢信頼度判断部101が合(信頼度が閾値以上)と判断した場合にはステップS306に処理を移す。否(信頼度が閾値未満)と判断した場合にはステップS307に処理を移す。上述したように、3次元ポイント位置確定部107でユーザが強制実行を実施する場合には否と判断された場合でもステップS307に処理を移した後、ステップS306に処理を移してもよい。
ステップS306では、3次元ポイント確定部107が入力受付部130から体験者が確定を指示したか、そして、どのようなイベントを発行したかをチェックする。体験者が確定指示を出した場合には3次元ポイント確定部107がイベント実施部108にイベント情報を送出し、ステップS308に処理を移す。体験者が確定指示を出していない場合にはステップS309に処理を移す。
ステップS307では、3次元ポイント変更部105が3次元ポインタの仮想物体の色を変更する。上述のように色のみではなく、仮想物体の形状や透明度などを変更してもよい。
ステップS308では、イベント実施部108が3次元ポイント確定部107から取得したイベント情報に応じて、イベント処理を実施する。
ステップS309では、仮想物体描画部109が仮想物体を仮想空間の画像として描画する。
ステップS310では、合成部110は撮像部121が撮像した現実空間の画像と仮想空間の画像とを合成して、合成画像を生成する。その後、表示部122は合成部110で背精された合成画像を表示し、HMD120を装着する体験者に提示する。
ステップS311では、体験者から終了を指示されたかどうかを判定し、終了を指示された場合は処理を終了する。終了されていない場合は、ステップ302に処理を移す。
(実施形態2)
上記実施形態1では、位置姿勢の信頼度が閾値未満になった場合には即座に3次元ポインタの仮想物体の色を変更し、体験者へ提示をした。本実施形態では位置姿勢の信頼度の第一の閾値判定をする第一の判断とは異なる条件で判断する第二の判断を追加する。第二の判断は、例えば第二の閾値以上の間、位置姿勢の信頼度が第二の閾値未満になった場合に体験者はイベントを実施できなくする。第二の判断手段を使う場合を実施形態1に追加して示す。
本実施形態に係るシステムについて、図4のブロック図を用いて説明する。図4において、図1と同じ構成要素には同じ参照番号を付けており、その説明は省略する。
位置姿勢信頼度データベース400は位置姿勢信頼度判断部401から送出されてきた3次元ポインタの現実物体の番号と位置姿勢信頼度低下開始時刻と位置姿勢信頼度が低下する前の位置姿勢値をデータベースに保存する。すでに3次元ポインタの現実物体の番号に位置姿勢信頼度低下開始時刻があった場合は、保存を実施しない。また、位置姿勢信頼度判断部401から3次元ポインタの現実物体の番号と位置姿勢信頼度低下開始時刻削除依頼があった際にはデータベースから削除を実施する。
位置姿勢信頼度判断部401は、位置姿勢信頼度算出部102が算出した信頼度が閾値未満であれば、以下を実行する。すなわち、位置姿勢信頼度が閾値未満の3次元ポインタの現実物体の番号と位置姿勢信頼度低下前の位置姿勢値、現在の時刻、現実物体の移動速度を位置姿勢信頼度低下開始時刻として位置姿勢信頼度データベース400に送出する。そのため、位置姿勢信頼度判断部401は位置姿勢信頼度が閾値以上の場合は随時位置姿勢値を更新して保存している。その結果、位置姿勢信頼度低下前の位置姿勢値を保存することと、現実物体の移動速度を算出することが可能である。
同時に位置姿勢信頼度データベース400から位置姿勢信頼度が閾値未満の3次元ポインタの現実物体の番号の位置姿勢信頼度低下前の位置姿勢値と位置姿勢信頼度低下開始時刻を取得する。取得した位置姿勢信頼度低下開始時刻と現在の時刻の差が閾値時間以上の場合には否と判定する。それ以外の場合には合と判定する。これにより、閾値時間以内であれば位置姿勢の信頼度が低い値を使う必要がなくなるため、おおむね正しい3次元ポイント位置を使用することができる。もしくは、移動速度と保存された時刻から計算される移動距離が閾値以内の場合には合と判定する。ここで合と判定された場合は位置姿勢信頼度データベース400から取得した位置姿勢値を3次元ポイント計算部に送出する。信頼度が閾値以上であれば、現実物体の番号と位置姿勢信頼度低下開始時刻削除の依頼を送出し、合と判定する。
次に、本実施形態に係る情報処理装置100が行う処理を、同処理のフローチャートを示す図5を用いて説明する。図5において、図3と同じ処理には同じ参照番号を付けており、その説明は省略する。
ステップS501では、位置姿勢信頼度判断部401が位置姿勢の信頼度が閾値以上と判断した場合に、位置姿勢信頼度データベース400に3次元ポインタの現実物体の番号と位置姿勢信頼度低下開始時間削除依頼を送信する。
ステップS502では、位置姿勢信頼度判断部401が位置姿勢の信頼度が閾値未満と判断した場合に、位置姿勢信頼度データベース400に3次元ポインタの現実物体の番号と位置姿勢信頼度低下開始時刻を送出する。次に、位置姿勢信頼度データベース400が3次元ポインタの現実物体の番号の位置姿勢の信頼度低下開始時間が保存されているかどうかをチェックする。保存されている場合は、ステップS504に処理を移す。保存されていない場合は、ステップS503に処理を移す。
ステップS503では、位置姿勢信頼度データベース400は位置姿勢信頼度判断部401から送出された3次元ポインタの現実物体の番号と位置姿勢の信頼度低下開始時間を保存する。
ステップS504は位置姿勢信頼度判断部401が位置姿勢信頼度データベース400から3次元ポインタの現実物体の番号と位置姿勢信頼度低下開始時刻と位置姿勢信頼度低下前の位置姿勢値を取得する。位置姿勢信頼度低下開始時刻と現在時刻との差が閾値時間以下の場合はステップS505に処理を移す。位置姿勢信頼度低下開始時刻と現在時刻との差が閾値時間以上の場合はステップS307に処理を移す。
ステップS505では、3次元ポイント計算部104が位置姿勢信頼度判断部401から送出されてきた位置姿勢値を利用して、3次元ポイントの位置姿勢を再更新して3次元ポイント確定部107に送出する。
(実施形態3)
上記実施形態1、2では、位置姿勢の信頼度が低下したときには操作を実施させないようにする装置であった。本実施形態では、位置姿勢の信頼度が低下したときには過去の値から計算によって、位置姿勢値を決定する方法について実施形態1、2に追加して示す。本実施形態に係るシステムについて、図6のブロック図を用いて説明する。図6において、図1と同じ構成要素には同じ参照番号を付けており、その説明は省略する。
位置姿勢データベース600は位置姿勢信頼度判断部601から3次元ポインタの現実物体の番号と位置姿勢信頼度が閾値以上のときの3次元ポインタの位置姿勢値とその時刻を受け取って保存する。保存できる量は制限してもよいし、制限しなくてもよい。
位置姿勢信頼度判断部601は位置姿勢信頼度算出部102から送出された位置姿勢の信頼度が閾値以上だった場合は、合と判定する。合と判定した結果、位置姿勢データベース600に3次元ポインタの現実物体の番号と合と判定した3次元ポインタの位置姿勢値と、現在時刻を送出する。位置姿勢の信頼度が閾値未満だった場合は、否と判定し、3次元ポイント予測部602に現在時刻を送出する。
3次元ポイント予測部602は位置姿勢信頼度判断部601から送出されてきた現在時刻と、位置姿勢データベース600から保存されている値を取得する。位置姿勢データベース600には時刻とその時の3次元ポインタの位置姿勢値が登録されている。3次元ポイント予測部602は過去の時刻と3次元ポインタの位置姿勢値から、線形補間により現在時刻の位置姿勢値を計算する。ここで線形補間ではなく、多項式を使った補間やスプライン補間などを用いた補間から現在時刻の3次元ポインタの位置姿勢値を計算してもよい。線形補間の場合は位置姿勢データベース600に保存されているすべての値を使わず、1秒前の情報から使ってもよい。
3次元ポイント確定部603は、入力受付部130から受け付けた体験者の確定指示を取得し、位置姿勢信頼度判断部601が合と判断している場合は、3次元ポイント計算部104が算出した3次元ポイント位置でのイベントを発行する。反対に否と判断している場合は3次元ポイント予測部602が予測した3次元ポイント位置取得をして、イベントを発行する。発行されるイベントはユーザの入力や情報処理装置の設定に応じて切り替えて実施される。イベントの種類に応じて、否と判断された場合でも3次元ポイント計算部104が算出した3次元ポイント位置でのイベントを発行してもよい。
次に、本実施形態に係る情報処理装置100が行う処理を、同処理のフローチャートを示す図7を用いて説明する。図7において、図3と同じ処理には同じ参照番号を付けており、その説明は省略する。
ステップS701では、位置姿勢信頼度判断部601が位置姿勢の信頼度が閾値以上だった場合は合と判断して、ステップS702に処理を移す。位置姿勢の信頼度が閾値未満だった場合は否と判断して、ステップS703に処理を移す。
ステップS702では、位置姿勢信頼度判断部601が合と判断した位置姿勢値とその時刻を位置姿勢データベース600に送出する。位置姿勢データベース600は送出された位置姿勢値とその時刻を保存する。
ステップS703では、3次元ポイント予測部602が位置姿勢信頼度判断部601から位置姿勢値の信頼度が否と判断された時の時刻と、位置姿勢データベース600から位置姿勢値とその時刻を取得する。取得した値から3次元ポインタの位置姿勢値を予測して、3次元ポイント確定部603に送出する。
ステップS704では、3次元ポイント変更部105は位置姿勢信頼度判断部601が否と判断した場合には、3次元ポイントの位置が予測値であることを示す色に変更する。
ステップS705では、3次元ポイント確定部603が入力受付部130から体験者が確定を指示したか、そして、どのようなイベントを発行したかをチェックする。体験者が確定指示を出した場合には3次元ポイント確定部603が取得した3次元ポイントの位置でイベント実施部108にイベント情報を送出し、ステップS308に処理を移す。体験者が確定指示を出していない場合にはステップS309に処理を移す。
(実施形態4)
上記実施形態3では、位置姿勢の信頼度が低下したときには過去の値から予測をして、位置姿勢値を決定していた。本実施形態では、位置姿勢の信頼度が低下したときには付近にある特徴のある場所を予測値として3次元ポインタ位置を決定する方法について実施形態1、2、3に追加して示す。本実施形態に係るシステムについて、図8のブロック図を用いて説明する。図8において、図1、6と同じ構成要素には同じ参照番号を付けており、その説明は省略する。
位置姿勢データベース800は位置姿勢信頼度判断部801から3次元ポインタの現実物体の番号と位置姿勢信頼度が閾値以上のときの3次元ポインタの位置姿勢値とその時刻を受け取って保存する。保存できる量は制限してもよいし、制限しなくてもよい。
位置姿勢信頼度判断部801は位置姿勢信頼度算出部102から送出された位置姿勢の信頼度が閾値以上だった場合は、合と判定する。そして、位置姿勢データベース800に3次元ポインタの現実物体の番号と合と判定した3次元ポインタの位置姿勢値と、現在時刻を送出する。位置姿勢の信頼度が閾値未満だった場合は、否と判定し、3次元ポイント探索部802に現在時刻を送出する。
3次元ポイント探索部802は位置姿勢データベース800から保存されている値を取得する。位置姿勢データベース800には時刻とその時の3次元ポインタの位置姿勢値が保存されている。3次元ポイント探索部802は取得した値のうち最新の時刻の3次元ポインタの位置姿勢値から、閾値範囲内の空間を探索する。
図9にその概要を示す。体験者900は現実物体930を持っている。また、現実物体930に対応する3次元ポインタ910は信頼度が閾値未満となり、ポインタの色が変更された状態である。そして、位置姿勢データベース800に保存されていた最新の時刻の3次元ポインタの位置姿勢940がある。ここから探索範囲950内を探索し、特徴点を見つけることによって、3次元ポインタの位置姿勢を決定する。ここで、探索する空間は立方体の空間にしてもよい。もしくは、位置姿勢データベース800から取得した値から実施形態3に示したように、予測値を用いて探索する空間を決定してもよい。
例えば、図10(A)のように予測値を中心に球状の空間にしてもよい。図10(A)において体験者1000は現実物体1030を持っている。また現実物体1030に対応する3次元ポインタは信頼度が閾値未満となり、最新の時刻の3次元ポインタ位置1060、最新の時刻の次の3次元ポインタ位置1040から予測された3次元ポインタ位置1010にある。予測された3次元ポインタ位置1010から閾値範囲1050を探索することによって、特徴点を発見する。
もしくは、図10(B)のように最新の時刻の3次元ポインタ位置1060と予測された3次元ポインタ位置1010を焦点とした楕円を探索範囲1070としてもよい。また、特徴点は仮想物体のポリゴンの頂点や辺の中心や、面の中心としてよい。その他にも撮像部121で撮像された現実空間の画像から特徴点の検出を行うことによって、現実空間の特徴点を探索してもよい。現実空間の特徴点は、たとえば公知の特徴点検出技術であるFAST(Features From Accelerated Segment Test)が挙げられる。FASTを用いることで特徴点の座標および特徴量の算出が可能となる。
現実空間の特徴点を探索する際には撮像部121とともに、特徴点の3次元位置を取得するための深度センサ付のカメラを用いる。3次元位置を取得するための方法であれば、撮像部121を二つにして対応する特徴点を見つけ、三角測量によって、深度を計測してもよいし、レーザーなどによる深度測定器を用いてもよい。探索の結果、特徴点が複数発見された場合は、例えば、最新の時刻の3次元ポインタの位置姿勢値や予測値にもっとも近い特徴点を3次元ポイント確定部に送出する。反対に、特徴点が発見されなかった場合は、3次元ポイント確定部に3次元ポイント位置無しという情報を送出する。
3次元ポイント確定部803は、入力受付部130から受け付けた体験者の確定指示を取得し、位置姿勢信頼度判断部801が合と判断している場合は、3次元ポイント計算部104が算出した3次元ポイント位置でのイベントを発行する。反対に否と判断している場合は3次元ポイント探索部802が探索して発見した特徴点を3次元ポイント位置としてイベントを発行する。3次元ポイント位置無しの場合はイベントを発行しない。発行されるイベントはユーザの入力や情報処理装置の設定に応じて切り替えて実施される。イベントの種類に応じて、否と判断された場合でも3次元ポイント計算部104が算出した3次元ポイント位置でのイベントを発行してもよい。
次に、本実施形態に係る情報処理装置100が行う処理を、同処理のフローチャートを示す図11を用いて説明する。図11において、図3と同じ処理には同じ参照番号を付けており、その説明は省略する。
ステップS1101では、位置姿勢信頼度判断部801が位置姿勢の信頼度が閾値以上だった場合は合と判断して、ステップS1102に処理を移す。位置姿勢の信頼度が閾値未満だった場合は否と判断して、ステップS1103に処理を移す。
ステップS1102では、位置姿勢信頼度判断部801が合と判断した位置姿勢値とその時刻を位置姿勢データベース800に送出する。位置姿勢データベース800は送出された位置姿勢値とその時刻を保存する。
ステップS1103では、3次元ポイント探索部802が位置姿勢データベース800から保存されている3次元ポインタの位置姿勢値と時刻を取得する。
ステップS1104では、3次元ポイント探索部802が位置姿勢データベース800から取得した最新の時刻の3次元ポインタの位置姿勢値から閾値範囲内の特徴点を探索する。
ステップS1105では、3次元ポイント探索部802がステップS1104で探索した結果、特徴点が発見された場合はS1106に処理を移す。特徴点を発見できなかった場合はS1107に処理を移す。
ステップS1106では、3次元ポイント変更部105が3次元ポインタの色を3次元ポインタの位置が特徴点になっていること示す色に変更する。また、3次元ポイント探索部802が発見した特徴点の3次元位置姿勢値を3次元ポイント確定部803に送出する。
ステップS1107では、3次元ポイント変更部105が3次元ポインタの色をイベントが発行できない状態であることを示す色に変更する。
ステップS1108では、3次元ポイント確定部803が入力受付部130から体験者が確定を指示したか、そして、どのようなイベントを発行したかをチェックする。体験者が確定指示を出した場合には3次元ポイント確定部603が取得した3次元ポイントの位置でイベント実施部108にイベント情報を送出し、ステップS308に処理を移す。体験者が確定指示を出していない場合にはステップS309に処理を移す。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 情報処理装置
101 位置姿勢信頼度判断部
102 位置姿勢信頼度算出部
103 位置姿勢取得部
104 3次元ポイント計算部
105 3次元ポイント変更部
106 仮想物体データベース
107 3次元ポイント確定部
108 イベント実施部
109 仮想物体描画部
110 合成部
120 HMD
121 撮像部
122 表示部
130 入力受付部

Claims (18)

  1. 現実空間を撮像した撮像画像を取得する画像取得手段と、
    体験者が使用する指示部の位置姿勢情報を取得する情報取得手段と、
    前記位置姿勢情報の信頼度を算出する算出手段と、
    前記指示部の位置姿勢情報に基づいて仮想空間における3次元位置を指定する指定手段と、
    前記体験者から前記3次元位置に基づくイベントの実行指示を受け付ける受付手段と、
    前記信頼度が閾値以上かを判断する第一の判断手段と、
    前記第一の判断手段により前記信頼度が閾値未満と判断された場合に、当該信頼度が閾値未満である状態が開始から閾値時間以内であるかを判断する第二の判断手段と、
    前記第一の判断手段で前記信頼度が閾値以上と判断されるかまたは前記第二の判断手段で前記信頼度が閾値未満である状態が開始から閾値時間以内であると判断された場合に、前記イベントを実行する実行手段と
    を有することを特徴とする情報処理装置。
  2. 前記指示部は、前記体験者が操作する現実物体に対応する仮想物体であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記第二の判断手段は、前記体験者が操作する現実物体の移動速度から判断される前記開始からの移動距離が閾値距離以内のときに前記閾値時間以内であると判断することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記イベントの実行指示を受け付けたときにイベントを発行する発行手段を備え、
    前記実行手段は、前記イベントが発行された状態で、前記第一の判断手段で前記信頼度が閾値以上と判断されるかまたは前記第二の判断手段で前記信頼度が閾値未満である状態が開始から閾値時間以内であると判断された場合に、当該イベントを実行する請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記3次元位置を予測する予測手段を備え、
    前記実行手段は、前記イベントが発行された状態で、前記第一の判断手段で閾値未満と判断され、かつ記第二の判断手段で前記信頼度が閾値未満である状態が開始から閾値時間以内であると判断された場合に、前記予測手段で予測された3次元位置を利用してイベントを実行することを特徴とする請求項4に記載の情報処理装置。
  6. 前記予測手段は、前記第一の判断手段で閾値以上と判断された時の前記3次元位置とその時刻を保存する保存手段を備え、前記保存手段で保存された情報から、前記3次元位置を計算によって予測することを特徴とする請求項5に記載の情報処理装置。
  7. 前記予測手段は、前記保存手段で保存された3次元位置を取得する位置取得手段を備え、前記位置取得手段で取得した3次元位置から閾値の範囲内の特徴点を、予測した3次元位置として用いることを特徴とする請求項6に記載の情報処理装置。
  8. 前記特徴点は、仮想物体のポリゴンの頂点であることを特徴とする請求項7に記載の情報処理装置。
  9. 前記特徴点は、仮想物体のポリゴンの辺の中心であることを特徴とする請求項7に記載の情報処理装置。
  10. 前記特徴点は、仮想物体のポリゴンの面の中心であることを特徴とする請求項7に記載の情報処理装置。
  11. 前記特徴点は、前記画像取得手段で取得した現実空間の撮像画像の特徴点であることを特徴とする請求項7に記載の情報処理装置。
  12. 前記第一及び第二の判断手段の判断結果を視覚的に示す提示手段を備えることを特徴とする請求項に記載の情報処理装置。
  13. 前記提示手段は、前記判断結果を視覚的に示す方法として、前記仮想物体の色を変更することを特徴とする請求項12に記載の情報処理装置。
  14. 前記提示手段は、前記判断結果を視覚的に示す方法として、前記仮想物体の透明度を変更することを特徴とする請求項12に記載の情報処理装置。
  15. 前記提示手段は、前記判断結果を視覚的に示す方法として、前記仮想物体の形状を変更することを特徴とする請求項12に記載の情報処理装置。
  16. 前記提示手段は、前記判断結果を視覚的に示す方法として、前記仮想物体に補助的な情報を追加することを特徴とする請求項12に記載の情報処理装置。
  17. 現実空間を撮像した撮像画像を取得する画像取得工程と、
    体験者が使用する指示部の位置姿勢情報を取得する情報取得工程と、
    前記位置姿勢情報の信頼度を算出する算出工程と、
    前記指示部の位置姿勢情報に基づいて仮想空間における3次元位置を指定する指定工程と、
    前記体験者から前記3次元位置に基づくイベントの実行指示を受け付ける受付工程と、
    前記信頼度が閾値以上かを判断する第一の判断工程と、
    前記第一の判断工程で前記信頼度が閾値未満と判断された場合に、当該信頼度が閾値未満である状態が開始から閾値時間以内であるかを判断する第二の判断工程と、
    前記第一の判断工程で前記信頼度が閾値以上と判断されるかまたは前記第二の判断工程で前記信頼度が閾値未満である状態が開始から閾値時間以内であると判断された場合に、前記イベントを実行する実行工程と
    を備えることを特徴とする情報処理方法。
  18. コンピュータを請求項1乃至16のいずれか1項に記載の情報処理装置の各手段として機能させることを特徴とするプログラム。
JP2017166108A 2017-08-30 2017-08-30 情報処理装置及びその方法、プログラム Active JP7039216B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017166108A JP7039216B2 (ja) 2017-08-30 2017-08-30 情報処理装置及びその方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017166108A JP7039216B2 (ja) 2017-08-30 2017-08-30 情報処理装置及びその方法、プログラム

Publications (2)

Publication Number Publication Date
JP2019045997A JP2019045997A (ja) 2019-03-22
JP7039216B2 true JP7039216B2 (ja) 2022-03-22

Family

ID=65812745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017166108A Active JP7039216B2 (ja) 2017-08-30 2017-08-30 情報処理装置及びその方法、プログラム

Country Status (1)

Country Link
JP (1) JP7039216B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240062541A1 (en) * 2021-01-12 2024-02-22 Nec Corporation Detection system, detection method, and recording medium
WO2023195301A1 (ja) * 2022-04-04 2023-10-12 ソニーグループ株式会社 表示制御装置、表示制御方法および表示制御プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005147894A (ja) 2003-11-17 2005-06-09 Canon Inc 計測方法、計測装置
JP2015211363A (ja) 2014-04-28 2015-11-24 富士通株式会社 表示制御装置、表示制御方法および表示制御プログラム
JP2017016376A (ja) 2015-06-30 2017-01-19 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2017142785A (ja) 2016-02-05 2017-08-17 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005147894A (ja) 2003-11-17 2005-06-09 Canon Inc 計測方法、計測装置
JP2015211363A (ja) 2014-04-28 2015-11-24 富士通株式会社 表示制御装置、表示制御方法および表示制御プログラム
JP2017016376A (ja) 2015-06-30 2017-01-19 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2017142785A (ja) 2016-02-05 2017-08-17 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
JP2019045997A (ja) 2019-03-22

Similar Documents

Publication Publication Date Title
JP6598617B2 (ja) 情報処理装置、情報処理方法およびプログラム
US9767563B2 (en) Image processing apparatus and method for obtaining position and orientation of imaging apparatus
JP6643170B2 (ja) 作業支援システム及び方法
JP5248806B2 (ja) 情報処理装置、情報処理方法
JP6618681B2 (ja) 情報処理装置及びその制御方法及びプログラム、並びに、情報処理システム
US20050174361A1 (en) Image processing method and apparatus
JP6978701B2 (ja) 情報処理システム、その制御方法、及びプログラム、並びに、情報処理装置、その制御方法、及びプログラム
EP3629302B1 (en) Information processing apparatus, information processing method, and storage medium
JP2019008623A (ja) 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体
JP2018142230A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP7039216B2 (ja) 情報処理装置及びその方法、プログラム
JP2022058753A (ja) 情報処理装置、情報処理方法及びプログラム
JP2017016376A (ja) 情報処理装置、情報処理方法、プログラム
US20230267667A1 (en) Immersive analysis environment for human motion data
JP2019185475A (ja) 特定プログラム、特定方法及び情報処理装置
JP7451084B2 (ja) 情報処理装置および情報処理方法
JP2018124746A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2021060856A (ja) 画像合成装置、画像合成装置の制御方法およびプログラム
JP2015121892A (ja) 画像処理装置、画像処理方法
WO2023054661A1 (ja) 注視位置分析システム及び注視位置分析方法
JP6741939B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP7116334B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6983939B2 (ja) 情報処理装置、情報処理方法、プログラム
JP7280492B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6482307B2 (ja) 情報処理装置およびその方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220120

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: 20220208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220309

R151 Written notification of patent or utility model registration

Ref document number: 7039216

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151