以下、図面と共に本発明に係る映像表示システムの実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
まず、図1から図5を参照して、本実施形態に係る映像表示システム100について説明する。図1は、映像表示システム100のブロック図を示す。映像表示システム100は、例えばユーザに装着されるHMD等によって実現され、実空間(ワールド座標系)に対応付けられたCG(コンピュータグラフィックス)による仮想物体を表示する。映像表示システム100は、ハーフミラーを用いて実空間の実物体と仮想物体とをユーザに視認させる光学シースルー方式を採用している。映像表示システム100は、実空間の映像に仮想物体を融合してユーザに視認させるビデオシースルー方式を採用してもよい。以下では、映像表示システム100がMR技術に用いられるHMDであることを例に説明する。
図2は、映像表示システム100を使った作業で用いられる各種部材を示している。映像表示システム100は、実空間に配置された実物体である作業対象物121の配置に対応してディスプレイ140に仮想物体を表示することでユーザの作業を支援する。「配置」は、所定の3次元座標軸上の座標及び3次元座標軸の各軸周りの回転(3次元座標上の向き)によって規定される6自由度の状態を意味する。具体的には、映像表示システム100は、ユーザの目線と同様の撮像方向等で撮像を行う。映像表示システム100は、撮像を行った画像に仮想物体を重畳して表示する。ユーザは、この表示を見ることで、実空間に配置された作業対象物121に応じた、現実にはない仮想物体を見ることができる。仮想物体としては、実空間の作業対象物121を示すものが含まれていてもよい。
映像表示システム100は、3次元座標である仮想空間(スクリーン座標系)を用いて仮想物体の表示を行う。映像表示システム100は、仮想空間上の予め設定された位置に仮想物体を配置しておき、仮想空間と実空間との対応関係を算出する。仮想物体の仮想空間上の配置を表示配置という。以下の説明では、仮想空間において仮想物体の位置を示す座標軸を仮想座標軸αという。映像表示システム100は、実空間での撮像位置及び撮像方向に対応する仮想空間上での位置及び方向から見た画像を仮想物体の表示とする。即ち、仮想的なユーザの視線から、仮想空間上の仮想物体を見た画像を表示する。上記の仮想物体の表示は、従来のMR技術を用いて実施することができる。
本実施形態では、作業対象物121は、10m以上の長尺形状の鋼材である。映像表示システム100は、実空間に配置された鋼材(作業対象物121)に対して、当該鋼材を示す仮想物体201と当該鋼材に溶接する予定の鉄板を示す仮想物体202とを表示する。具体的には、映像表示システム100は、ユーザに対して、仮想物体201が実空間に配置された作業対象物121に重なって視認されるように表示し、仮想物体202が溶接されるべき位置に配置されていると視認されるように表示する。これによって、映像表示システム100は、ユーザが鋼材に鉄板を溶接する作業を支援できる。図3は、ユーザが移動して作業をする場所(以下、「作業位置」という)に移動する前の映像表示システム100の表示と周辺環境とを示している。図4は、ユーザが移動した後、かつ、仮想物体の表示配置を修正する前の映像表示システム100の表示と周辺環境とを示している。
映像表示システム100は、ユーザの移動を検出して、ユーザの移動に応じた視線の変化にあわせるように当該移動に応じて表示を変化させる。映像表示システム100では、ユーザの移動量に応じて移動検出の誤差が蓄積し、作業対象物121に対応して仮想物体201,202の表示配置がずれる(即ち、実空間と仮想空間との対応付けがずれる)。映像表示システム100は、作業対象物121に対して実空間に配置された、基準マーカ122と、指標部材123と、第2サブマーカ127とによって、作業対象物121に対する仮想物体201,202の表示配置を修正する。図5は、ユーザが作動位置に移動して第2サブマーカ127を配置した後、かつ、仮想物体の表示配置を修正する前の映像表示システム100の表示を示している。
基準マーカ122は、作業対象物121に対して取り付け可能であり、作業を行う前に作業対象物121に対して決められた位置に配置される。本実施形態では、基準マーカ122は、作業対象物121の面121a上に設けられている。基準マーカ122は、後述する撮像装置101によって撮像されることで、映像表示システム100が、画像認識によって実空間における基準マーカ122の3次元配置を識別可能な特徴を有する図形等(例えば、2次元コード)を有している。基準マーカ122は、映像表示システム100が実空間における基準マーカ122の3次元配置を識別可能であれば、この形態に限定されない。
指標部材123は、作業対象物121及び基準マーカ122に対して予め決められた位置に配置されている。本実施形態では、指標部材123は、長尺形状を有しており、作業対象物121の面121a上で、作業対象物121の長手方向に沿って配置されている。指標部材123は、実空間において基準マーカ122に対して予め決められた位置に配置された複数の指標124を含んでいる。複数の指標124は、複数の第1サブマーカ125と複数のサブ指標126を含んでいる。
本実施形態では、指標部材123は巻き尺である。複数の指標124は、矩形形状を有しており、基準マーカ122が示す基準点Mから延在する直線上に10cmごとに付されている。複数の第1サブマーカ125は、基準マーカ122が示す基準点Mから延在する直線上に1mごとに付されている。このように第1サブマーカ125は、所定の間隔(例えば、等間隔)で指標部材123に設けられる。サブ指標126は、第1サブマーカ125以外の指標124である。したがって、複数のサブ指標126は、隣り合う第1サブマーカ125の間に、10cmごとに付されている。このようにサブ指標126は、第1サブマーカ125の間隔より狭い所定の間隔(例えば、等間隔)で指標部材123に設けられる。
第1サブマーカ125は、画像認識によって実空間における第1サブマーカ125の3次元配置を識別可能な特徴を有する図形等を有している。また、全ての第1サブマーカ125は、同一の図形等であってもよい。本実施形態では、第1サブマーカ125は、赤色で示され、サブ指標126は黒色で示されている。指標部材123は、同一間隔で第1サブマーカ125及びサブ指標126が付された紐であってもよい。第1サブマーカ125及びサブ指標126としては、通常の巻き尺に設けられているメモリ表示を用いることができる。即ち、指標部材123として、通常の巻き尺を用いることができる。作業対象物121に、レーザー、チョーク等で第1サブマーカ125及びサブ指標126が記されていてもよい。プロジェクションマッピングによって、作業対象物121上に第1サブマーカ125及びサブ指標126が表示されてもよい。
第2サブマーカ127は、画像認識によって実空間における第2サブマーカ127の3次元配置を識別可能な特徴を有する図形等(例えば、2次元コード)を有している。また、第2サブマーカ127は、第1サブマーカ125よりも画像認識されやすい特徴を有しており(第2サブマーカ127よりも特徴点が多い)、作業対象物121及び基準マーカ122に対して移動可能である。第2サブマーカ127は、映像表示システム100が実空間における第2サブマーカ127の3次元配置を識別可能であれば、この形態に限定されない。映像表示システム100は、第2サブマーカ127の3次元配置を識別すると、予め記憶している情報から第2サブマーカ127の3次元配置に応じた特定の位置(以下、「指示点A」という)に、後述する第2仮想位置を対応付けている。
本実施形態では、作業者であるユーザが、第2サブマーカ127を作業位置まで運び、作業位置に最も近い指標124の位置に配置する。この際、第2サブマーカ127の指示点Aが、ユーザ(撮像装置101)に最も近い指標124の位置に配置される。第2サブマーカ127は、サブ指標126に対する位置決めを容易に行えるように、サブ指標126に合わせるための表示記載(例えば、矢印の表示記載)が行われていてもよい。第2サブマーカ127がサブ指標126に配置される場合、第2サブマーカ127はいずれの第1サブマーカ125よりも撮像装置101に近い。
映像表示システム100は、図1に示されているように、撮像装置101、撮像装置101の移動を検出する移動検出部102、データ格納部103、表示部104、操作部105、及び表示制御部150を備えている。映像表示システム100のうち、少なくとも撮像装置101、移動検出部102、及び表示部104は、ユーザに装着可能である。
撮像装置101は、実空間を撮像し、撮像した画像を逐次、表示制御部150へ送信する。本実施形態では、ユーザの頭に固定され、ユーザの頭の動きに合わせて撮像装置101の位置及び姿勢が変動する。撮像装置101の位置は、撮像装置101の座標位置である。撮像装置101の姿勢は、3次元座標の各軸周りの回転(3次元座標上の向き)である。撮像装置101は、深度カメラ、及びRGBカメラ等の複数のカメラから構成されている。
データ格納部103は、仮想物体201,202の表示に必要な各種情報(CGデータ)を予め格納している。例えば、データ格納部103は、仮想空間における仮想座標軸αに予め対応付けられた、仮想物体201,202の表示配置と、複数の第1仮想位置131と、複数の第2仮想位置132との情報を含む配置情報を予め格納している。具体的には、データ格納部103は、仮想物体201,202の表示配置、複数の第1仮想位置131、及び複数の第2仮想位置132の仮想座標軸α上の座標を格納している。仮想座標軸αを実空間に対応付けることで、実空間での撮像装置101の位置及び姿勢に対応する仮想物体201,202の表示配置、複数の第1仮想位置131、及び複数の第2仮想位置132が決定される。複数の第1仮想位置131及び複数の第2仮想位置132は、仮想物体201,202の表示配置の修正(即ち、実空間と仮想空間との対応付けの修正)に用いられる。
データ格納部103は、予め定められた、実空間に配置された基準マーカ122と、仮想座標軸αとの配置関係も予め格納している。本実施形態では、基準マーカ122の実空間上の基準点Mの位置と、仮想座標軸αの原点Nとが対応付けられている。すなわち、実空間における基準マーカ122の配置と、仮想座標軸αの原点Nとが対応付けられている。
仮想座標軸αの原点Nと複数の第1仮想位置131との相対位置関係は、基準マーカ122の基準点Mと複数の第1サブマーカ125との相対位置関係に対応している。例えば、それらの相対位置関係は、同じものとなる。本実施形態では、複数の第1仮想位置131は、仮想座標軸αの原点Nから直線上に実空間の1mに相当する距離ごとに位置する。仮想座標軸αの原点Nと複数の第2仮想位置132との相対位置関係は、基準マーカ122の基準点Mと複数のサブ指標126との相対位置関係に対応している。例えば、それらの相対位置関係は、同じものとなる。
複数の第2仮想位置132は、複数の第1仮想位置131の間隔よりも狭い間隔で仮想座標軸αに対応付けられている。本実施形態では、複数の第2仮想位置132は、隣り合う第1仮想位置131の間に、実空間の10cmに相当する距離ごとに位置する。第2仮想位置132の数は、第1仮想位置131の数よりも多い。なお、上記の仮想空間に係る情報の形式は、従来のMR技術で用いられるものを用いることができる。
表示部104は、図3から図5に示されているように、撮像装置101の位置及び姿勢に応じて、仮想物体201,202を含む仮想映像をディスプレイ140に表示する。表示部104は、データ格納部103に格納されている仮想物体201,202の表示配置等の配置情報と、仮想座標軸αと撮像装置101の位置及び姿勢との関係とから、従前の方法で、仮想物体201,202を上記ディスプレイ140に表示する位置を演算する。表示部104は、仮想物体201,202の表示に必要な各種情報をデータ格納部103から取得する。表示部104による表示は、実空間での撮像位置及び撮像方向に対応する仮想空間上での位置及び方向から見た画像を、仮想物体の表示とするものである。
本実施形態では、表示部104は、仮想映像として、当該鋼材を示す仮想物体201と、当該鋼材に溶接する予定の鉄板を示す仮想物体202と、第1仮想位置131と、第2仮想位置132を表示する。実空間に対する仮想座標軸αの配置、及び撮像装置101の位置及び姿勢は、表示制御部150で決定される。表示部104は、ユーザが仮想物体201,202を適切に視認できる状態でユーザの頭に固定される。
操作部105は、ユーザによって操作された際に、当該操作に応じた信号を表示制御部150へ逐次送信する。例えば、操作部105は、ユーザの操作に応じて表示制御部150に、仮想物体201,202の表示配置の修正を指示する信号を送信する。
移動検出部102は、撮像装置101の移動を検出し、検出結果を逐次、表示制御部150へ送信する。映像表示システム100は、当該検出結果に基づいて、ユーザの移動に追従した映像を表示する。例えば、移動検出部102は、撮像装置101の移動の方向及び移動の量を示す移動ベクトルを検出する。本実施形態では、移動検出部102は、ユーザの頭に固定された、加速度センサ、ジャイロセンサ、及び方位センサ等を有する慣性計測ユニットによって構成されている。本実施形態では、移動検出部102は、それ自体が移動を検出する。移動検出部102が慣性計測ユニット等の出力信号を表示制御部150へ送信し、表示制御部150が移動を演算してもよい。移動の検出は、従来のMR技術に用いられている方法を用いて実施することができる。
表示制御部150は、撮像装置101で撮像された画像(以下、「撮像画像」という)に基づいて、仮想物体201,202の表示配置を規定する仮想座標軸αと、位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を決定する。これによって、表示部104における仮想物体201,202の表示配置が決定される。表示制御部150は、基準配置設定部151、位置姿勢演算部152、第1位置関係演算部153、第2位置関係演算部154、及び修正部155を有している。
基準配置設定部151は、撮像装置101の撮像画像に基づいて、仮想物体201,202の表示配置を規定する仮想座標軸αを実空間に対応付ける。具体的には、基準配置設定部151は、撮像装置101の撮像画像から基準マーカ122を検出する。基準配置設定部151は、該基準マーカ122の検出結果と、データ格納部103に格納されている情報とから、実空間における基準マーカ122の配置に仮想座標軸αを対応付ける。本実施形態では、データ格納部103に格納されている情報にしたがって、検出された基準マーカ122の予め設定された端部(基準点M)の位置が、仮想座標軸αの原点Nに対応付けられる。また、検出された基準マーカ122の形状等から実空間上の方向が、仮想座標軸αの方向に対応付けられる。これによって、実空間における基準マーカ122の配置に、仮想物体201,202の表示配置、第1仮想位置131、第2仮想位置132が対応付けられる。
位置姿勢演算部152は、撮像装置101の位置及び姿勢を演算する。位置姿勢演算部152は、映像表示システム100の電源がONに切り替わると、撮像装置101の位置及び姿勢の初期状態を設定する。例えば、位置姿勢演算部152は、当該撮像装置101の撮像画像から特徴点を検出し、当該特徴点を実空間上の原点に設定する。位置姿勢演算部152は、当該原点と撮像装置101との相互配置、並びに、加速度センサ及びジャイロセンサ等の出力から、撮像装置101の位置及び姿勢の初期状態を演算する。本実施形態では、基準マーカ122が示す基準点Mを、撮像装置101の位置及び姿勢の初期状態を演算する実空間上の原点として説明する。また、位置姿勢演算部152は、当該画像から、設定した原点に対する撮像装置101の位置及び姿勢を演算する。
位置姿勢演算部152は、移動検出部102で検出された移動と撮像装置101の撮像画像から検出される特徴点の遷移ベクトルとから、撮像装置101の位置及び姿勢を逐次演算する。具体的には、位置姿勢演算部152は、移動後の撮像装置101の位置及び姿勢(即ち、撮像装置101の現時点での位置及び姿勢)を演算する。表示制御部150は、基準マーカ122が撮像画像から検出されない場合、初期状態における仮想座標軸αと撮像装置101の位置及び姿勢との関係、及び位置姿勢演算部152で演算された撮像装置101の位置及び姿勢から、実空間における仮想座標軸αの配置を逐次判断する。
本実施形態では、位置姿勢演算部152は、基準配置設定部151によって検出された基準マーカ122の端部である基準点Mに対する撮像装置101の位置及び姿勢を逐次演算する。位置姿勢演算部152は、移動検出部102の検出結果のみから、撮像装置101の位置及び姿勢を演算してもよい。位置姿勢演算部152は、演算した撮像装置101の位置及び姿勢のデータを、データ格納部103に格納する。位置姿勢演算部152は、演算した当該データを、直接、表示部104へ送信してもよい。位置姿勢演算部152における演算結果の誤差は、ユーザの移動量が増加に応じて蓄積される。位置姿勢演算部152における演算結果の誤差が蓄積されるにしたがって、位置姿勢演算部152で演算された撮像装置101の位置及び姿勢の実空間に対するズレ、及び仮想座標軸αの実空間に対する配置のズレが増加する。その結果、映像表示システム100では、仮想物体201,202の表示配置がずれる。撮像装置101の位置及び姿勢の演算は、従来のMR技術に用いられている方法を用いて実施することができる。
表示制御部150は、第1位置関係演算部153、第2位置関係演算部154、及び修正部155によって、後述するズレ修正処理を行う。表示制御部150は、当該ズレ修正処理によって、ユーザの移動量に応じて蓄積した移動検出の誤差による仮想物体201,202の表示配置のズレを修正する。本実施形態において、表示制御部150は、操作部105の操作に応じて当該修正を行う。例えば、表示制御部150は、ボタンの押下等の操作部105が操作されたタイミングで当該修正を行う。図4及び図5には、作業対象物121に対して仮想物体201,202がずれて表示されている状態が示されている。
第1位置関係演算部153は、実空間における第1サブマーカ125と仮想座標軸αとの関係を導出する。まず、第1位置関係演算部153は、撮像装置101の撮像画像から、実空間に配置された第1サブマーカ125を検出する。本実施形態では、第1位置関係演算部153は、位置姿勢演算部152で演算された撮像装置101の位置及び姿勢と撮像画像とから、仮想座標軸α上における第1サブマーカ125の座標位置を求める。
第1サブマーカ125が検出される撮像画像は、基準マーカ122が検出される撮像画像と異なる。例えば、当該撮像画像は、ユーザが作業を行うために基準マーカ122が設置された位置から移動した位置において撮像された画像である。例えば、第1位置関係演算部153は、撮像装置101の撮像画像から、従前の方法によって閾値以上の赤色成分を有しているピクセルを探索する。第1位置関係演算部153は、当該撮像画像から、周囲のピクセルに対して相対的に赤色成分が高いピクセルを探索してもよい。第1位置関係演算部153は、検出された第1サブマーカ125の数が閾値よりも多い場合、ディスプレイ140等によってユーザにエラーを知らせることとしてもよい。
第1位置関係演算部153は、第1サブマーカ125の検出結果と、撮像装置101が該第1サブマーカ125を撮像した際の撮像装置101の位置及び姿勢とから、第1仮想位置131と、第1サブマーカ125との位置関係を演算する。第1サブマーカ125を撮像した際の撮像装置101の位置及び姿勢は、位置姿勢演算部152で演算される。まず、第1位置関係演算部153は、撮像装置101の位置及び姿勢から、撮像画像から探索された第1サブマーカ125の実空間上の座標位置を求めて、更に当該実空間上の座標から、仮想座標軸α上の座標位置を求める。探索された第1サブマーカ125から、第1サブマーカ125の実空間及び仮想座標軸α上の座標位置の算出は、従来のMR技術に用いられている方法を用いて実施することができる。
続いて、第1位置関係演算部153は、仮想座標軸α上の第1サブマーカ125の座標位置と、該第1サブマーカ125に最も近い第1仮想位置131との位置関係を演算する。第1位置関係演算部153は、第1仮想位置131と第1サブマーカ125との位置関係として、第1サブマーカ125に対する第1仮想位置131の仮想座標軸αにおけるズレ量及びズレ方向を演算する。ここで、演算されるズレ量は、作業対象物121の長手方向におけるズレ量である。即ち、第1サブマーカ125を用いた修正は、作業対象物121の長手方向に対して行われる(それ以外の方向については、修正しない)。但し、第1サブマーカ125を用いた修正を、全ての方向に対して行うこととしてもよい。ズレ量及びズレ方向は、作業対象物121の長手方向における、仮想座標軸α上の第1サブマーカ125の座標位置から、該第1サブマーカ125に最も近い第1仮想位置131への量及び方向である。当該ズレ方向(修正方向)は、仮想座標軸α上の原点(基準マーカ122の座標位置)(P0)と第1サブマーカ125の座標位置(P1n)を結ぶ線と、該第1サブマーカ125の座標位置(P1n)と該第1サブマーカ125に最も近い第1仮想位置131(P2n)とを結ぶ線のなす角θのcos値によって示されるものとしてもよい。例えば、なす角θが90°<θ<180°を満たす場合には、cosθの値の符号はマイナスとなる。この場合、第1仮想位置131が第1サブマーカ125よりもマイナス方向にずれていると判断する。上述したcosθの値の符号に基づくズレ方向の判断は、撮像画像から検出された第1サブマーカ125の各々について行われる。撮像画像から検出された第1サブマーカ125に関して、ズレ方向の判断結果が分かれた場合、判断された数が多い結果を採用する。
第1位置関係演算部153は、画像から探索された複数の第1サブマーカ125をフィルタリングしてもよい。画像から探索された複数の第1サブマーカ125のうち、実際の第1サブマーカ125に対応するものではないと考えられる、第1サブマーカ125を除外することとしてもよい。上述したように仮想座標軸αは、基準マーカ122等が用いられて実空間と対応が取られている。また、ユーザの移動方向は、第1サブマーカ125が並んだ方向に移動する。従って、第1サブマーカ125の仮想座標軸α上の位置座標が並ぶ方向と、第1仮想位置131が並ぶ方向とは、仮に撮像装置101の位置及び姿勢等に誤差が生じたとしても、大きくは異ならないものと考えられる。そこで、例えば、第1位置関係演算部153は、画像から探索された第1サブマーカ125と当該第1サブマーカ125に最も近い第1サブマーカ125とを結ぶ線と、それらの第1サブマーカ125それぞれに最も近い第1仮想位置131それぞれを結ぶ線とのなす角をθとした場合に、cosθの値を計算する。第1位置関係演算部153は、当該cosθの値が1.0〜0.8又は−1.0〜−0.8を満たす第1サブマーカ125のみを抽出する。これにより、誤検出されたデータを除外することができる。
第2位置関係演算部154は、実空間における第2サブマーカ127と仮想座標軸αとの関係を導出する。まず、第2位置関係演算部154は、撮像装置101の撮像画像から、従前の方法で実空間に配置された第2サブマーカ127を検出する。第2サブマーカ127が検出される撮像画像は、第1サブマーカ125が検出された撮像画像及び基準マーカ122が検出された撮像画像とは異なる。例えば、当該撮像画像は、ユーザが作業を行うために移動して第2サブマーカ127を設置した位置において撮像された画像である。本実施形態では、第2位置関係演算部154は、位置姿勢演算部152で演算された撮像装置101の位置及び姿勢と撮像画像から、撮像画像から検出された第2サブマーカ127の実空間上の座標位置を求めて、更に当該実空間上の座標から、仮想座標軸α上の座標位置を求める。検出された第2サブマーカ127から、第2サブマーカ127の実空間及び仮想座標軸α上の座標位置の算出は、従来のMR技術に用いられている方法を用いて実施することができる。
第2位置関係演算部154は、第2サブマーカ127の検出結果と、撮像装置101が該第2サブマーカ127を撮像した際の撮像装置101の位置及び姿勢とから、複数の第2仮想位置132のうちの1つと、第2サブマーカ127との位置関係を演算する。第2サブマーカ127を撮像した際の撮像装置101の位置及び姿勢は、位置姿勢演算部152で演算される。第2位置関係演算部154は、第2サブマーカ127が第1サブマーカ125の位置に配置されていると判断した場合には、第2仮想位置132と第2サブマーカ127との位置関係を演算しない。
具体的には、第2位置関係演算部154は、第2サブマーカ127と、第1位置関係演算部153で演算されたズレ量及びズレ方向において、該第2サブマーカ127に最も近い第2仮想位置132との位置関係を演算する。なお、第1位置関係演算部153で複数のズレ量が演算された場合には、それらの平均値又は中央値等の値が用いられてもよい。具体的には、まず、第2位置関係演算部154は、仮想座標軸α上において、上記のズレ量及びズレ方向を打ち消すように第2サブマーカ127の座標位置を移動する。第2位置関係演算部154は、第2仮想位置132と移動後の第2サブマーカ127との位置関係として、第2サブマーカ127に対する移動後の第2サブマーカ127に最も近い第2仮想位置132の実空間におけるズレ量及びズレ方向を演算する。このときの移動後の第2サブマーカ127に最も近い第2仮想位置132は、第1位置関係演算部153で演算されたズレ方向において、最も近い第2仮想位置132にすることとしてもよい。第2位置関係演算部154は、第2仮想位置132の実空間におけるズレ量及びズレ方向に、撮像装置101の撮像画像から演算された移動後の第2サブマーカ127の座標位置と第2仮想位置132の座標位置との差分を用いる。
修正部155は、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を修正する。本実施形態では、修正部155は、第1位置関係演算部153によって演算された位置関係と、第2位置関係演算部154によって演算された位置関係とから、実空間に対する仮想座標軸αの配置を修正する。具体的には修正部155は、第1位置関係演算部153で演算されたズレ方向及びズレ量、並びに第2位置関係演算部154によって演算されたズレ方向及びズレ量で、撮像装置101の位置及び姿勢を移動させずに、第1仮想位置131、第2仮想位置132、及び仮想物体201,202の表示配置を移動させる。これによって、仮想座標軸α上の撮像装置101の位置及び姿勢に対する仮想座標軸α上の撮像装置101の位置及び姿勢が修正される。
修正部155は、第2位置関係演算部154によって第2サブマーカ127が第1サブマーカ125の位置に配置されていると判断された場合には、第2位置関係演算部154によって演算された位置関係を用いずに、実空間に対する仮想座標軸αの配置を修正する。
修正部155によって上記修正が行われると、表示部104は、データ格納部103に格納されている配置情報と、修正部155によって修正された、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係とに基づいて、従前の方法で、仮想物体201,202をディスプレイ140に表示する。したがって、仮想座標軸αと撮像装置101の位置及び姿勢との関係が修正されると、ディスプレイ140で表示される仮想物体201,202等の配置も修正される。
修正部155は、実空間に対する仮想座標軸αの配置でなく、位置姿勢演算部152で演算された撮像装置101の位置及び姿勢を修正してもよい。具体的には、修正部155は、第1位置関係演算部153で演算されたズレ方向及びズレ量、並びに第2位置関係演算部154によって演算されたズレ方向及びズレ量を打ち消すように、仮想空間における撮像装置101の位置及び姿勢を移動させることとしてもよい。修正部155は、実空間に対する仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との両方を修正してもよい。
本実施形態では、修正部155は、第1位置関係演算部153によって演算された位置関係から、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正した後に、第2位置関係演算部154によって演算された位置関係から、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正する。具体的には、修正部155は、第1位置関係演算部153によって演算された位置関係から上記関係を修正する場合、第1位置関係演算部153で判断されたズレ方向に、実空間に対する仮想座標軸αの配置を修正する。第1位置関係演算部153は、撮像画像から検出された第1サブマーカ125の各々と、当該第1サブマーカ125に対応する各第1仮想位置131との間の距離の合計が最小となるように、実空間に対する仮想座標軸αの配置を修正する。この場合に、第1位置関係演算部153で判断されたズレ方向に、実空間に対する仮想座標軸αの配置を、ズレ量に相当する所定距離ずつずらすことで、上記合計を最小にする。
第1サブマーカ125の各々と、当該第1サブマーカ125に対応する各第1仮想位置131との間のズレが、第1サブマーカ125の間隔の半分未満であれば、第2位置関係演算部154によって演算された位置関係から、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係が適切に修正され得る。即ち、撮像装置101の位置及び姿勢のズレが、第1サブマーカ125の間隔(第2サブマーカの候補の周期)の半分未満(本実施形態では50cm未満)であれば、撮像装置101の位置及び姿勢との関係が適切に修正され得る。撮像装置101の位置及び姿勢のズレが、第1サブマーカ125の間隔(第2サブマーカの候補の周期)の半分以上である場合、映像表示システム100は、ディスプレイ140等を通してユーザにエラーを伝え、第1サブマーカ125の周辺を撮像装置101によって詳細に撮像するように促す。
修正部155は、第2サブマーカ127が有している3次元配置情報から、作業対象物121の長手方向、高さ方向、及び幅方向における仮想物体201,202の表示配置のズレを修正することができる。修正部155は、第2サブマーカ127に基づいて、各方向を軸とする回転を修正してもよい。
修正部155は、第2サブマーカ127に最も近い第2仮想位置132が第2サブマーカ127に対応するサブ指標126の位置となるように、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を修正する。第2サブマーカ127が配置されるサブ指標126の位置は、作業位置に最も近いサブ指標126の位置である。修正部155は、第2位置関係演算部154によって演算された位置関係から上記関係を修正する場合も、第1位置関係演算部153で判断されたズレ方向に、実空間に対する仮想座標軸αの配置を修正する。
本実施形態では、指標124は、作業対象物121の長手方向において、基準マーカ122が示す原点から10cmごとに設けられている。したがって、第2サブマーカ127は、原点から10cmの倍数に対応する位置に配置される。このため、例えば、第2位置関係演算部154によって第2サブマーカ127が、原点から1242cmの位置に配置されていると判断された場合には、第2位置関係演算部154は、第2サブマーカ127が第2仮想位置132から2cmずれていると判断する。この場合、修正部155は、第2位置関係演算部154において第2サブマーカ127が基準マーカ122から1240cmの位置に配置されていると判断されるように、実空間に対する仮想座標軸αの配置を2cm修正する。この結果、第2サブマーカ127に最も近い第2仮想位置132が第2サブマーカ127に対応するサブ指標126の位置となるように修正され、仮想物体201,202も適切な配置でディスプレイ140に表示される。
次に、図6を参照して、映像表示システム100における仮想物体201,202の表示配置を修正する工程について説明する。図6は、仮想物体201,202の表示配置を修正する工程を示すフローチャートである。なお、以下の処理中、撮像装置101、移動検出部102による上述した処理は、順次行われている。
ステップS101において、ユーザが、作業対象物121に、基準マーカ122、指標部材123(第1サブマーカ125及びサブ指標126を含む指標124)を配置する。続いて、工程はステップS102へ進む。
ステップS102において、表示制御部150が、基準マーカ122に応じて、仮想座標軸αを実空間に対応付ける。続いて、工程はステップS103へ進む。
ステップS103において、ユーザが、作業位置へ移動し、第2サブマーカ127を作業位置から最も近い指標124の位置に配置する。続いて、工程はステップS104へ進む。
ステップS104において、ユーザが、操作部105を操作し、仮想物体201,202の表示配置の修正を指示する。続いて、ステップS105へ工程が進む。
ステップS105において、表示制御部150が、第1位置関係演算部153、第2位置関係演算部154、及び修正部155によって、第1サブマーカ125及び第2サブマーカ127の配置に基づいて仮想物体201,202の表示配置の修正処理を行う。
次に、図7を参照して、表示制御部150による仮想物体201,202の表示配置の制御処理について説明する。図7は、表示制御部150によって行われる制御処理を示すフローチャートである。
ステップS111において、表示制御部150は、基準配置設定部151によって、撮像装置101の撮像画像から基準マーカ122を検出する。続いて、表示制御部150は、ステップS112へ処理を進める。
ステップS112において、表示制御部150は、基準配置設定部151によって、該基準マーカ122の検出結果と、データ格納部103に格納されている情報とから、実空間における基準マーカ122の配置に仮想座標軸αを対応付ける。続いて、表示制御部150は、ステップS113へ処理を進める。
ステップS113において、表示制御部150は、位置姿勢演算部152によって、撮像装置101の位置及び姿勢を演算する。演算結果は、データ格納部103に格納される。続いて、表示制御部150は、ステップS114へ処理を進める。
ステップS114において、表示制御部150は、表示部104によって、仮想映像をディスプレイ140に表示する。この際、表示部104は、データ格納部103を参照して、仮想物体201,202を上記ディスプレイ140に表示する位置を演算する。続いて、表示制御部150は、ステップS115へ処理を進める。
ステップS115において、表示制御部150は、操作部105から仮想物体201,202の表示配置の修正指示を受けたか否か判断する。修正指示を受けた場合、表示制御部150は、ステップS116へ処理を進める。修正指示を受けていない場合、表示制御部150は、ステップS117へ処理を進める。
ステップS116において、表示制御部150は、第1位置関係演算部153、第2位置関係演算部154、及び修正部155によって、ズレ修正処理を行う。ズレ修正処理によって、ユーザの移動量に応じて蓄積した移動検出の誤差による仮想物体201,202の表示配置のズレが修正される。表示制御部150は、ズレ修正処理が終了すると、ステップS113へ処理を進める。
ステップS117において、表示制御部150は、制御処理を終了するか判断する。制御処理を終了しない場合は、ステップS113へ処理を進める。制御処理を終了する場合は、処理を終了する。
次に、図8を参照して、表示制御部150によるズレ修正処理について詳細に説明する。図8は、表示制御部150によって行われるズレ修正処理を示すフローチャートである。
ステップS121において、表示制御部150は、第1位置関係演算部153によって、撮像装置101の撮像画像から第1サブマーカ125を検出する。続いて、表示制御部150は、ステップS122へ処理を進める。
ステップS122において、表示制御部150は、第1位置関係演算部153によって、第1仮想位置131と第1サブマーカ125との位置関係を演算する。第1位置関係演算部153は、第1サブマーカ125の検出結果と、撮像装置101が該第1サブマーカ125を撮像した際の撮像装置101の位置及び姿勢とから、複数の第1仮想位置131のうち1つと第1サブマーカ125との位置関係を演算する。続いて、表示制御部150は、ステップS123へ処理を進める。
ステップS123において、表示制御部150は、修正部155によって、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を修正する。ステップS123では、修正部155は、第1位置関係演算部153で演算された位置関係、すなわち、第1仮想位置131と第1サブマーカ125との位置関係から、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正する。続いて、表示制御部150は、ステップS124へ処理を進める。
ステップS124において、表示制御部150は、第2位置関係演算部154によって、撮像装置101の撮像画像から第2サブマーカ127を検出する。続いて、表示制御部150は、ステップS125へ処理を進める。
ステップS125において、表示制御部150は、第2位置関係演算部154によって、第2サブマーカ127が第1サブマーカ125の位置に配置されているか否かを判断する。第2サブマーカ127が第1サブマーカ125の位置に配置されていると判断された場合には、表示制御部150はズレ修正処理を終了する。第2サブマーカ127が第1サブマーカ125の位置に配置されていないと判断された場合には、表示制御部150はステップS126へ処理を進める。
ステップS126において、表示制御部150は、第2位置関係演算部154によって、第2仮想位置132と第2サブマーカ127との位置関係を演算する。第2位置関係演算部154は、第2サブマーカ127の検出結果と、撮像装置101が該第2サブマーカ127を撮像した際の撮像装置101の位置及び姿勢とから、複数の第2仮想位置132のうち1つと第2サブマーカ127との位置関係を演算する。続いて、表示制御部150は、ステップS127へ処理を進める。
ステップS127において、表示制御部150は、修正部155によって、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を修正する。ステップS126では、修正部155は、第2位置関係演算部154で演算された位置関係、すなわち、第2仮想位置132と第2サブマーカ127との位置関係から、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正する。表示制御部150は、ステップS127の処理が終了すると、ズレ修正処理を終了する。
本実施形態では、表示制御部150は、図7で示したように、操作部105の操作に応じた修正指示を受けてズレ修正処理を開始する。しかし、表示制御部150は、ズレ修正処理を行うトリガーは操作部105による修正指示でなくともよい。例えば、表示制御部150は、所定時間毎にズレ修正処理を行うように設定されてもよい。
表示制御部150は、修正指示を受けて開始される処理を、ズレ修正処理におけるステップS121からステップS126のうち、いずれの処理に設定してもよい。例えば、表示制御部150は、第1仮想位置131と第1サブマーカ125との位置関係から仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正した後に、操作部105からの修正指示を受けて、第2仮想位置132と第2サブマーカ127との位置関係から仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正してもよい。
次に、本実施形態に係る映像表示システム100の主な作用及び効果について説明する。
映像表示システム100では、第1位置関係演算部153が、基準マーカ122に対して予め決められた位置に配置された第1サブマーカ125と、仮想座標軸αに予め対応付けられた複数の第1仮想位置131のうちと第1サブマーカ125と最も近い第1仮想位置131との位置関係を演算している。このため、移動検出部102で検出結果から演算された撮像装置101の位置及び姿勢が誤差を含んでいる場合に、基準マーカ122から離れた位置でも、複数の第1仮想位置131の配置に応じて、仮想座標軸αと撮像装置101の位置及び姿勢との関係が修正され、仮想物体201,202の表示配置が修正され得る。具体的には、上述したように第1仮想位置131の間隔の半分程度であれば、撮像装置101の位置及び姿勢に誤差が生じていても、仮想物体201,202の表示配置が修正され得る。第1サブマーカ125は、大まかな位置合わせをするだけであるので、必ずしも厳密な位置を検出する必要はない。例えば、第1サブマーカ125は、基準マーカ122及び第2サブマーカ127と比べて画像認識がしにくい、例えば、特徴点がそれらと比べて少ないものを用いてもよい。従って、本実施形態のような巻き尺のメモリを第1サブマーカ125として用いることができ、簡易かつ適切に位置合わせを行うことができる。
第2位置関係演算部154は、第1サブマーカ125よりも撮像装置101に近い位置に配置された第2サブマーカ127と、仮想座標軸αに予め対応付けられた、第1仮想位置131よりも多い複数の第2仮想位置132との位置関係を演算している。第1サブマーカ125と第1仮想位置131との位置関係が利用されながら、第1サブマーカ125よりも撮像装置101に近い第2サブマーカ127と第2仮想位置132との位置関係が用いられることで、撮像装置101の位置で、仮想物体201,202の実空間に対するズレが更に高精度に修正され得る。すなわち、ユーザの位置で、仮想物体201,202の表示配置が高精度に修正され得る。
修正部155は、第1位置関係演算部153によって演算された位置関係から、仮想座標軸αと位置姿勢演算部152で演算された撮像装置101の位置及び姿勢との関係を修正した後に、第2位置関係演算部154によって演算された位置関係から、上記関係を修正する。このように、第2位置関係演算部154によって演算された位置関係を用いた詳細な修正を行う前に、第1位置関係演算部153によって演算された位置関係で概括的な修正を行う。これにより、処理負荷が低減されながら、修正精度が向上されている。また、ユーザの移動中に概括的な修正を行うことで、ユーザの視覚的な違和感を低減することができる。
第1位置関係演算部153によって演算される位置関係は、仮想空間における第1サブマーカ125と第1仮想位置131とのズレ方向を含む。複数の第2仮想位置132のうちの1つは、第1位置関係演算部153によって演算されるズレ方向において第2サブマーカ127に最も近い第2仮想位置132である。このため、適切に修正を行うことができるズレ量の範囲を向上することができる。
ユーザが操作する操作部105を更に備え、第1位置関係演算部153、第2位置関係演算部154、及び修正部155の少なくとも1つは、操作部105の操作に応じて処理を行う。状況に応じて、必要な処理のみが行うことができるため、処理負荷が低減され得る。
なお、上記実施の形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に(例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
例えば、本発明の一実施の形態における映像表示システムは、本実施形態における処理を行うコンピュータとして機能してもよい。図9は、本発明の一実施の形態に係る映像表示システムのハードウェア構成の一例を示す図である。上述した映像表示システム100は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。また、映像表示システム100は、上記以外にも、撮像装置101、移動検出に用いられるセンサ等のハードウェアも備える。
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。映像表示システム100のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
映像表示システム100における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることで、プロセッサ1001が演算を行い、通信装置1004による通信や、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みを制御することで実現される。
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)で構成されてもよい。例えば、表示部104、基準配置設定部151、位置姿勢演算部152、第1位置関係演算部153、第2位置関係演算部154、及び修正部155などは、プロセッサ1001で実現されてもよい。
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュールやデータを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態で説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、表示部104、基準配置設定部151、位置姿勢演算部152、第1位置関係演算部153、第2位置関係演算部154、及び修正部155は、メモリ1002に格納され、プロセッサ1001で動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001で実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップで実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つで構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本発明の一実施の形態に係る方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD−ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu−ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つで構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及び/又はストレージ1003を含むデータベース、サーバその他の適切な媒体であってもよい。
通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。映像表示システム100は、通信装置1004による外部との通信によってデータ格納部103の内部のデータを書き換えてもよい。
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
また、プロセッサ1001やメモリ1002などの各装置は、情報を通信するためのバス1007で接続される。バス1007は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
また、映像表示システム100は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
以上、本発明について詳細に説明したが、当業者にとっては、本発明が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本発明は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本発明に対して何ら制限的な意味を有するものではない。
例えば、上述した実施形態では、修正部155は、第2位置関係演算部154によって演算された位置関係から上記関係を修正する場合にも、第1位置関係演算部153で判断されたズレ方向に、実空間に対する仮想座標軸αの配置を修正する。しかし、第2位置関係演算部154でもズレ方向を判断し、修正部155が、第2位置関係演算部154によって演算された位置関係から上記関係を修正する場合に第2位置関係演算部154で判断されたズレ方向に、実空間に対する仮想座標軸αの配置を修正してもよい。
修正部155は、第1位置関係演算部153によって第1仮想位置131と第1サブマーカ125との位置関係を演算し、第2位置関係演算部154によって第2仮想位置132と第2サブマーカ127との位置関係を演算した後に、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正してもよい。すなわち、修正部155は、図8におけるステップS123の処理を行わずに、図8におけるステップS126の処理の後に、第1仮想位置131と第1サブマーカ125との位置関係と第2仮想位置132と第2サブマーカ127との位置関係とから、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正してもよい。
この場合、第1位置関係演算部153が、第1仮想位置131と第1サブマーカ125との位置関係として、第1サブマーカ125に対する第1仮想位置131のズレ方向のみを演算するようにしてもよい。また、この場合、表示制御部150は、図6のステップS104における処理がなくとも、ステップS103における第2サブマーカ127の配置をトリガーとして、図7のステップS117におけるズレ修正処理を行ってもよい。
第2サブマーカ127は、第2サブマーカ127の3次元配置を示す情報を有さずに、複数の指標124のうち、いずれの指標124を選択するか示すものであってもよい。この場合、第2位置関係演算部154は、選択された指標124を検出し、当該指標124と第2仮想位置132との位置関係を演算する。
第1位置関係演算部153は、第1サブマーカ125の座標位置を演算しなくてもよい。この場合、修正部155が、撮像装置101の撮像画像において、第1サブマーカ125と第1仮想位置131とが一致するように、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正してもよい。
第2位置関係演算部154は、第2サブマーカ127の座標位置を演算しなくてもよい。この場合、修正部155が、撮像装置101の撮像画像において、第2サブマーカ127と第2仮想位置132とが一致するように、仮想座標軸αと撮像装置101の位置及び姿勢との関係を修正してもよい。
本明細書で説明した各態様/実施形態は、LTE(Long Term Evolution)、LTE−A(LTE-Advanced)、SUPER 3G、IMT−Advanced、4G、5G、FRA(Future Radio Access)、W−CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi−Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
本明細書で説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、または追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:trueまたはfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
本明細書で説明したデータは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
また、本明細書で説明したデータ、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。上述したパラメータに使用する名称はいかなる点においても限定的なものではない。
本明細書で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up)(例えば、テーブル、データベースまたは別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。
本明細書で使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
「含む(include)」、「含んでいる(including)」、およびそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「または(or)」は、排他的論理和ではないことが意図される。
本開示の全体において、文脈から明らかに単数を示したものではなければ、複数のものを含むものとする。