JP6384856B2 - 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法 - Google Patents

予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法 Download PDF

Info

Publication number
JP6384856B2
JP6384856B2 JP2014141911A JP2014141911A JP6384856B2 JP 6384856 B2 JP6384856 B2 JP 6384856B2 JP 2014141911 A JP2014141911 A JP 2014141911A JP 2014141911 A JP2014141911 A JP 2014141911A JP 6384856 B2 JP6384856 B2 JP 6384856B2
Authority
JP
Japan
Prior art keywords
time
posture
camera
predicted
frame
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
JP2014141911A
Other languages
English (en)
Other versions
JP2016019199A (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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2014141911A priority Critical patent/JP6384856B2/ja
Publication of JP2016019199A publication Critical patent/JP2016019199A/ja
Application granted granted Critical
Publication of JP6384856B2 publication Critical patent/JP6384856B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Closed-Circuit Television Systems (AREA)

Description

本発明は、AR(Augmented Reality:仮想現実感)オブジェクトを、ディスプレイに描画する技術に関する。
ARは、現実空間の映像に、文字やCG(Computer Graphics)のような仮想的なオブジェクトを重畳的に表示する技術である。具体的には、現実空間に設定された座標系に対するカメラ姿勢を推定する技術を用いる。カメラ姿勢の検知精度が不十分な場合、ARオブジェクト自体が現実空間から離れて表示されるような、画像破綻が生じる。例えば、現実に映る机の上にCGキャラクタが載ったように表示しようとする際に、そのCGキャラクタが机の上から浮いたように見える場合がある。
ARアプリケーションを実行する情報装置は、現実空間のプレビュー画像を撮影するカメラと、少なくともオブジェクトを表示するディスプレイとを要する。情報装置としては、例えば頭部に搭載するHMD(ヘッド・マウント・ディスプレイ)であってもよい。HMDは、ユーザの視線方向を撮影するカメラモジュールと、ユーザの視線の前に投影されるディスプレイを有する。また、カメラモジュールとディスプレイとを備えたスマートフォンやタブレットのような端末であってもよい。勿論、外部に接続された市販のWebカメラや固定型ディスプレイを用いる装置であってもよい。
ここで、ARアプリケーションを実行する情報装置によれば、以下の2種類のフレームワークがある。
「ビデオシースルー型」:重畳対象がカメラによって撮影されたプレビュー画像
「光学式シースルー型」:重畳対象が実空間そのもの
「ビデオシースルー型」によれば、カメラのプレビュー画像が、重畳的に表示するオブジェクトの背景画像として用いられる。そのために、背景画像とオブジェクトとの位置合わせが必要となる。これは、一般に、ユーザの視界を完全に覆う没入型HMD(Head Mounted Display)や、カメラとディスプレイとが表裏に配置されたスマートフォンやタブレットに適する。
「光学式シースルー型」によれば、装着者がHMDスクリーンを通して観察する実空間に、オブジェクトのみを重畳的に表示する。カメラのプレビュー画像は、カメラ姿勢の算出のみに用いられる。算出されたカメラ姿勢を用いて、オブジェクトのみが、実空間の位置に合わせて表示される。これは、一般に、ユーザの視界の一部に仮想スクリーンを表示する光学式シースルー型HMDに適する。また、HMDの装着具合に応じてオブジェクトの重畳位置を補正する操作は、HMDのキャリブレーションと称される。
図1は、ビデオシースルー型のARシステムにおける第1のフレームワークの説明図である。
図1によれば、横軸の経過時間に応じて、カメラによってキャプチャされたフレームが、周期的(例えば30fps(frame per sec))に入力されている。
(S11)カメラによって、フレーム[1]がキャプチャされたとする。
(S12)フレーム[1]に対するカメラ姿勢の計算に、一定時間を要する。
(S13)カメラ姿勢の計算が終了した時点で、背景画像としてのフレーム[1]と、カメラ姿勢に基づいて射影変換したオブジェクト<1>とを同時に、ディスプレイに重畳的に表示する(例えば非特許文献1参照)。
図2は、ビデオシースルー型のARシステムにおける第2のフレームワークの説明図である。
図2によれば、図1と同様に、カメラによってキャプチャされたフレームが、周期的に入力されている。
(S21)カメラによって、フレーム[1]がキャプチャされたとする。そのフレーム[1]は直ぐにそのまま、重畳するオブジェクトの背景画像として、ディスプレイに表示される。
(S22)フレーム[1]に対するカメラ姿勢の計算に、一定時間を要する。
(S23)カメラ姿勢の計算が終了した際に、カメラ姿勢に基づいて射影変換したオブジェクト<1>を、その時点で表示されている背景画像に重畳的に表示する。この時点で、ディスプレイに表示されているプレビュー画像のフレームは、例えば[3]以降に進行している場合がある。
図3は、光学式シースルー型のARシステムにおけるフレームワークの説明図である。
図3によれば、図2と同じ動作であるが、カメラによってキャプチャされたフレームは、カメラ姿勢を計算するためだけに使用される。従って、プレビュー画像をディスプレイに表示することはない。これは、ユーザが光学式シースルー型HMDを装着していることを想定しており、その視線の先には、ディスプレイ(仮想スクリーン)を透過した現実空間が見える(例えば非特許文献2参照)。一方で、カメラ姿勢に基づいて射影変換したオブジェクト<1>のみが、ディスプレイに表示される。
他の従来技術として、磁気センサを用いてカメラ姿勢を算出する技術もある(例えば非特許文献3参照)。この技術によれば、図1のフレームワークに磁気センサ取得のシーケンスが追加される。磁気センサの取得時刻と、カメラの取得時刻との時間差を測定することで、磁気センサから得られたカメラ姿勢からプレビュー画像取得時のカメラ姿勢を予測する。
Hyung-Seok Jang, Jae-Yun Jeong, Young-Hyun Kim, Yeo-Jin Yoon, Sung-Jea Ko, "Augmented reality with high frame rate for low computational power devices," 19th IEEE International Conference on Consumer Electronics, pp.274-275, 2011. Makibuchi, N., Kato, H., Yoneyama, A., "Vision-based robust calibration for optical see-through head-mounted displays", 20th IEEE International Conference on Image Processing, pp. 2177-2181, 2013. Jacobs, Marco C., and Mark A. Livingston. "Managing latency in complex augmented reality systems." Proceedings of the 1997 symposium on Interactive 3D graphics. ACM, 1997. "IS-600 Mark 2 Precision Motion Trackers"、[online]、「平成26年7月8日検索]、インターネット<URL:http://www.mindflux.com.au/products/isense/is600plus.pdf> FiatLux、「トラッキングセンサ Ascension社製 3D Guidance」、[online]、「平成26年7月8日検索]、インターネット<http://www.fiatlux.co.jp/product/virtual/3DGuidance/3dguidance-index.html> "ART"、[online]、「平成26年7月8日検索]、インターネット<http://www.ar-tracking.com/>
図1及び非特許文献1、3に記載の技術によれば、カメラ姿勢の計算処理が終了する時点まで、フレームの表示を待機する。これは、プレビュー画像とオブジェクトとの間で位置ズレが生じないものの、カメラによるフレームの入力時点と、ディスプレイによるフレームの表示時点との間で、表示遅延が生じる。
図2に記載の技術によれば、図1と異なって、カメラ姿勢の計算処理が終了する時点まで、プレビュー画像の表示を待機しない。これは、カメラによるフレームの入力時点と、ディスプレイによるフレームの表示時点との間で、表示遅延が生じないものの、プレビュー画像とオブジェクトとの間で時間的な位置ズレが生じる。
図3及び非特許文献2に記載の技術によれば、現実空間とオブジェクトとの間で時間的な位置ズレが生じる。これは、カメラ姿勢の計算に基づくフレームがキャプチャされた入力時点が、既に過去のものとなっている。その過去のフレームから計算したカメラ姿勢は、その時点の現実空間とは既に位置ズレが生じている。
ビデオシースルー型のフレームワークによれば、プレビュー画像とオブジェクトとの位置合わせを優先して、図1の方式が採用するのが一般的である。しかしながら、現実空間に対して、そのディスプレイに映るプレビュー画像は、既に時間的な位置ズレが生じている。そのため、没入型HMDを装着したユーザの行動を困難にする恐れがある。また、図2及び図3の方式を採用した場合、現実空間に対して、オブジェクトが時間的な位置ズレを生じているので、それを視認するユーザにとって違和感がある。
そこで、本発明は、現実空間に対してオブジェクトの時間的な位置ズレができる限り小さくなるように、実時間に合わせて描画することができる情報装置、プログラム及び方法を提供することを目的とする。
本願の発明者らは、カメラによって連続的にキャプチャされた複数のフレームについて、過去のフレームの取得時刻とそのフレームについて計算されたカメラ姿勢とを用いて、短時間将来に映るフレームのカメラ姿勢を予測することもできる。予測カメラ姿勢を用いてオブジェクトを射影変換(投影)することによって、そのオブジェクト(以下「予測オブジェクト」と称する)は、短時間将来に生じる現実空間に対して、できる限り位置ズレを小さくすることができる。しかしながら、本願の発明者らは、できる限り短時間将来であって、何秒先のカメラ姿勢を予測するべきかが難しいと考えた。
本発明によれば、カメラと、ディスプレイと、カメラによってキャプチャされたフレームをバッファするフレームバッファと、ディスプレイにオブジェクトを描画する描画制御手段とを有する情報装置において、
バックバッファを備えた描画制御手段から、フロントバッファを備えたディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
描画制御手段からフレーム取得命令が発生した時刻t1に、フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する現カメラ姿勢算出手段と、
時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する予測カメラ姿勢算出手段と、
予測カメラ姿勢によってオブジェクトを射影変換した予測オブジェクトを、描画制御手段へ出力する予測オブジェクト生成手段と
を有することを特徴とする。
本発明によれば、カメラ及びディスプレイを有する情報装置に搭載されたコンピュータを機能させるプログラムであって、カメラによってキャプチャされたフレームをバッファするフレームバッファと、ディスプレイにオブジェクトを描画する描画制御手段として機能させるプログラムにおいて、
バックバッファを備えた描画制御手段から、フロントバッファを備えたディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
描画制御手段からフレーム取得命令が発生した時刻t1に、フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する現カメラ姿勢算出手段と、
時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する予測カメラ姿勢算出手段と、
予測カメラ姿勢によってオブジェクトを射影変換した予測オブジェクトを、描画制御手段へ出力する予測オブジェクト生成手段と
してコンピュータを機能させることを特徴とする。
本発明によれば、カメラと、ディスプレイと、カメラによってキャプチャされたフレームをバッファするフレームバッファと、ディスプレイにオブジェクトを描画する描画制御部とを有する情報装置の描画制御方法において、
情報装置は、
バックバッファを備えた描画制御部から、フロントバッファを備えたディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
描画制御部からフレーム取得命令が発生した時刻t1に、フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する第1のステップと、
時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する第2のステップと、
予測カメラ姿勢によってオブジェクトを射影変換した予測オブジェクトを、描画制御部へ出力する第3ステップと
を実行することを特徴とする。
本発明の情報装置、プログラム及び方法によれば、現実空間に対してオブジェクトの時間的な位置ズレができる限り小さくなるように、実時間に合わせて描画することができる。
ビデオシースルー型のARシステムにおける第1のフレームワークの説明図である。 ビデオシースルー型のARシステムにおける第2のフレームワークの説明図である。 光学式シースルー型のARシステムにおけるフレームワークの説明図である。 本発明における情報装置の機能構成図である。 本発明におけるシングルバッファリングのフレームワークの説明図である。 本発明におけるダブルバッファリング(垂直同期無し)のフレームワークの説明図である。 本発明におけるダブルバッファリング(垂直同期有り)のフレームワークの説明図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
図4は、本発明における情報装置の機能構成図である。
図4によれば、情報装置1は、カメラ101と、ディスプレイ102とを有する。情報装置1は、例えばユーザの頭部に装着されるHMD(Head Mounted Display)であって、カメラ101は、人の視線方向に固定されている。そのカメラは、そのユーザの注視対象の映像を撮影することができる。以下では、情報装置1はHMDであるとして説明するが、勿論、カメラ101を搭載したスマートフォンやタブレットのような端末であってもよい。また、ディスプレイ102は、パーソナルコンピュータやテレビの外部のディスプレイ、プロジェクタ、又はホログラムディスプレイであってもよい。
また、情報装置1は、描画制御部11と、フレームバッファ12と、現カメラ姿勢算出部13と、予測カメラ姿勢算出部14と、予測オブジェクト生成部15とを有する。これら機能構成部は、情報装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、情報装置における描画制御方法としても理解できる。
[描画制御部11]
描画制御部11は、ディスプレイ102に描画する画像を制御する。例えば光学式シースルー型HMDの場合、ユーザの視線の先には、ディスプレイ102を透過した現実空間が見える。この場合、描画制御部11は、予測オブジェクト生成部15から出力されたARオブジェクトのみを描画する。尚、情報装置1がHMDである場合、描画制御部11は、ビデオシースルー型又は光学式シースルー型のいずれのフレームワークであってもよい。描画制御部11は、以下の3つの描画方式のいずれであってもよい。
(方式1)シングルバッファリング (後述する図5参照)
(方式2)ダブルバッファリング+垂直同期無し(後述する図6参照)
(方式3)ダブルバッファリング+垂直同期有り(後述する図7参照)
[フレームバッファ12]
フレームバッファ12は、カメラ101によってキャプチャされたフレームを連続的にバッファする。フレームバッファ12は、フレームを描画制御部11へ出力すると共に、現カメラ姿勢算出部13から参照される。
[現カメラ姿勢算出部13]
現カメラ姿勢算出部13は、描画制御部11から「フレーム取得命令」が発生した時刻t1に、フレームバッファからバッファ時間Δt1前となる時刻t0のフレームに対して、「現カメラ姿勢」を算出する。
Δt1=フレーム取得命令の発生時刻t1−フレームのキャプチャ時刻t0
一般的に、デジタルカメラ(Webカメラ)モジュールのプレビュー画像処理について、フレーム取得命令時に取得されるフレームは、短時間であっても過去のフレームとなる。Δt1は、カメラの製品特性としての固定値であってもよい。勿論、高精度なデジタル時計を撮影することによって、Δt1を予め計測して記憶したものであってもよい。
カメラ姿勢は、カメラの内部パラメータと、実空間に設置した「マーカ」とから検出するものであってもよい。マーカの特徴画像は、情報装置内に予め記憶されており、既知の点を少なくとも4つ以上有し、カメラフレーム内との対応を計算できるものであればよい。また、点ではなく線分を用いたものや、事前に特徴を学習した自然画像を用いたものであってもよい。最小4組の点対応からカメラ姿勢を計算する処理については、ARシステムでは一般的なものである。尚、カメラ姿勢の具体例については、後述する。また、光学式シースルー型HMDを用いる場合は、マーカから推定したカメラ姿勢にHMDのキャリブレーションデータを適用する必要がある(例えば非特許文献2参照)。
[予測カメラ姿勢算出部14]
予測カメラ姿勢算出部14は、時刻t1からの経過時間である姿勢予測遅延時間Δt2を取得し、時刻t0のフレームに対する現カメラ姿勢から、少なくとも「バッファ時間Δt1+姿勢予測遅延時間Δt2」後に予測される予測カメラ姿勢を算出する。算出された予測カメラ姿勢は、予測オブジェクト生成部15へ出力される。
姿勢予測遅延時間Δt2は、姿勢予測演算開始時刻をt2として、フレーム取得命令の発生時刻t1からの経過時間を、以下の式によって算出する。
Δt2=姿勢予測演算開始時刻t2−フレーム取得命令の発生時刻t1
尚、カメラキャプチャスレッドのフレームレートfcによれば、姿勢予測遅延時間Δt2は、カメラ姿勢の計算に要した時間Δtwを用いて、以下の範囲となる。
Δtw ≦ Δt2 < 1/fc+Δtw
本発明によれば、更に、予測カメラ姿勢の計算に要した「姿勢予測描画時間Δt3」を考慮することも好ましい。この場合、予測カメラ姿勢算出部14は、現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する。
姿勢予測描画時間Δt3は、例えば以下のいずれであってもよい。
(1)1ステップ前のカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間
(2)過去複数ステップのカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間の平均時間
カメラ姿勢の予測アルゴリズムとして、様々な方式がある。例えば、過去2フレームのカメラ姿勢を利用する線形予測や、過去3フレームのカメラ姿勢を利用する2次予測であってもよいし、過去3フレーム以上を利用する直線回帰であってもよい。また、手ブレのような微細な運動を補正するために市販カメラで用いられる運動予測モデルを使用したものであってもよい。
あくまで、本発明によれば、予測カメラ姿勢を、「いつの時刻」のもので予測するか、が重要であって、予測アルゴリズムについては何ら限定するものではない。
[予測オブジェクト生成部15]
予測オブジェクト生成部15は、予測カメラ姿勢によってオブジェクトを射影変換した予測オブジェクトを、描画制御部11へ出力する。
「オブジェクト」は、例えばCGキャラクタのようなものであって、情報装置内で予め記憶されたものであってもよい。例えば、カメラによってキャプチャされたフレーム内に、所定「マーカ」が映っているとする。このとき、現カメラ姿勢算出部13は、そのマーカに基づくカメラ姿勢を算出する。また、予測カメラ姿勢算出部14は、そのカメラ姿勢から予測カメラ姿勢を算出する。そして、予測オブジェクト生成部15は、その予測カメラ姿勢に基づいて「オブジェクト」を射影変換し、描画制御部11へ出力する。
<(方式1)シングルバッファリング>
図5は、本発明におけるシングルバッファリングのフレームワークの説明図である。
「シングルバッファリング」とは、ディスプレイ102のフロントバッファ(描画サーフェイス)に直接的に描画する方式である。図5によれば、姿勢予測描画時間Δt3は、予め設定された、又は、姿勢予測演算開始時に決定されたものである。予測カメラ姿勢は、現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後のカメラ姿勢が予測される。
姿勢予測描画時間Δt3=
予測カメラ姿勢の算出時間Δt4+予測オブジェクトの生成時間Δt5
尚、Δt4について、1ステップ前のカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間を用いてもよいし、過去数ステップのカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間の平均時間を用いてもよい。
また、予測オブジェクトの生成時間Δt5について、描画開始時の時刻をディスプレイに表示すると同時に、別のカメラを用いてディスプレイの表示内容を撮影しておき、表示完了時の時刻と描画開始時の時刻との差分によって検出したものであってもよい。但し、この別のカメラは、取得されたフレームと実時間との同期がとれている必要がある。
<(方式2)ダブルバッファリング+垂直同期無し>
図6は、本発明におけるダブルバッファリング(垂直同期無し)のフレームワークの説明図である。
「ダブルバッファリング」とは、ディスプレイのフロントバッファと同じメモリ領域を有するバックバッファを有し、バックバッファに描画した後、一度にフロントバッファへ転送する方式である。図5によれば、姿勢予測描画時間Δt3は、予め設定された、又は姿勢予測演算開始時に決定されたものである。予測カメラ姿勢は、現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後のカメラ姿勢が予測される。
姿勢予測描画時間Δt3=
予測カメラ姿勢の算出時間Δt4+予測オブジェクトの生成時間Δt5
+バックバッファからフロントバッファへの転送時間Δt6
尚、Δt4について、1ステップ前のカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間を用いてもよいし、過去数ステップのカメラ姿勢の予測計算とオブジェクトの描画処理に要した時間の平均時間を用いてもよい。
また、Δt5+Δt6については、描画開始時の時刻をディスプレイに表示すると同時に、別のカメラを用いてディスプレイの表示内容を撮影しておき、表示完了時の時刻と描画開始時の時刻との差分によって検出したものであってもよい。但し、この別のカメラは、取得されたフレームと実時間との同期がとれている必要がある。
<(方式3)ダブルバッファリング+垂直同期有り>
図7は、本発明におけるダブルバッファリング(垂直同期有り)のフレームワークの説明図である。
「垂直同期(Vertical Synchronization:V-sync)」とは、バックバッファからフロントバッファへ転送するタイミングを、ディスプレイのリフレッシュレートと同期させることをいう。これよって、画像のちらつきを抑えて、カクカク感を無くし、滑らかに描画することができる。但し、垂直同期をオンにすることによって、リフレッシュレートに応じた遅延が生じることとなる。
fc[Hz]:カメラによってキャプチャされるフレームレート
fd[Hz]:垂直同期のリフレッシュレート
そのために、前述した「垂直同期無し」の場合、ディスプレイの表示更新が完了する前に、次のフレームが描画制御部(例えばGPU(Graphic Processor Unit))から出力される。そのために、複数のフレームが混じり合った画面が表示される「ティアリング」という現象が発生する。
図7によれば、予測カメラ姿勢の算出可能時間Δt4以上であって、予測カメラ姿勢の計算の開始から次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3が決定される。そして、現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する。
姿勢予測描画時間Δt3=
予測カメラ姿勢の算出時間Δt4
+予測オブジェクトの生成(バックバッファへの描画)時間Δt5
+(垂直同期待ち+バックバッファからフロントバッファへの転送)時間Δt6
尚、姿勢予測描画時間Δt3は、結果として1/fd(リフレッシュレート)となる。
Δt3=1/fd
また、予測カメラ姿勢算出手段は、姿勢予測描画時間Δt3として、ディスプレイのリフレッシュレートの逆数の定数倍(≧1)を設定することも好ましい。予測カメラ姿勢の算出時間Δt4が、1/fdに収まらない場合があるためである。
Δt3=α/fd
where ((α-1))/fd ≦ Δt4 < α/fd (α=1,2,3・・・)
<カメラ姿勢の算出方法>
情報装置1が所定「マーカ」を予め記憶しており、カメラによってキャプチャされたフレーム内に、その「マーカ」が映っているとする。両者のマーカを比較することによって、カメラ姿勢を算出することができる。この場合、カメラ姿勢は、例えば平面射影変換行列である。以下の2つの処理ステップが実行される。
(ステップ1)点対応計算処理
(ステップ2)平面射影変換行列計算処理
[(ステップ1)点対応計算処理]
点対応計算処理は、カメラによってキャプチャされたフレーム画像から局所特徴量を抽出し、マーカ画像の特徴点pとフレーム画像の特徴点p'との間の点対応P={(p, p')}を計算する。
局所特徴点の抽出アルゴリズムとしては、例えばSIFT(Scale-Invariant Feature Transform)やSURF(Speeded Up Robust Features)、ORB(Oriented FAST and Rotated BRIEF)が用いられる。これらの局所特徴点は、以下の要素によって記述される。
座標p=(x,y)、方向θ、局所特徴ベクトルf
尚、点対応を検出する画像間では、その特徴ベクトルについて同じ次元数である。
例えば、SIFTの場合、1枚の画像からは128次元の特徴点集合が抽出される。SIFTとは、スケールスペースを用いて特徴的な局所領域を解析し、そのスケール変化及び回転に不変となる特徴ベクトルを記述する技術である。一方で、SURFの場合、SIFTよりも高速処理が可能であって、1枚の画像から64次元の特徴点集合が抽出される。また、ORBは、バイナリコードによる特徴記述としてBRIEF(Binary Robust Independent Elementary Features)を用いて、1つのコンテンツから256ビットのバイナリ特徴ベクトルの集合を抽出する。特に、ORBによれば、SIFTやSURFと比較して、同等以上の精度を保持すると共に、数百倍の高速化を実現することができる。
次に、マーカ画像の特徴点集合とフレーム画像の特徴点集合とをマッチングし、局所特徴点を点対応させる。マーカ画像の特徴点pに対して、フレーム画像の特徴点p'を対応付ける。2つの特徴点p'とpとの間の距離が短いほど、類似度が高い。
また、点対応計算処理は、点対応計算の精度や処理速度を向上させるために、以下の方法を用いることも好ましい。
(1)局所特徴点間の距離に基づいて点対応をソートし、距離が所定閾値以下の点対応のみを用いる。
(2)局所特徴点間の距離に基づいて点対応をソートし、距離が1番目に近いものと2番目に近いものを探索し、それらの距離の比(2番目との距離に対する1番目との距離)が所定閾値以下のものを用いる。
(3)その他、計算コストに優れるバイナリ特徴量や、SSD(Sum of Squared Difference)、正規化相互相関(NCC)等も用いることもできる。
そして、点対応計算処理は、マーカ画像とフレーム画像との間における特徴点の点対応を、平面射影変換行列計算処理へ出力する。
[(ステップ2)平面面射影変換行列計算処理]
平面射影変換行列計算処理は、点対応毎に、マーカ画像とフレーム画像との間の平面射影変換行列を計算する。
平面射影変換行列計算処理は、具体的は、点対応P={(p, p')}集合から、例えばRANSAC(RAndom SAmple Consensus)のようなロバスト推定アルゴリズムを用いて、フレーム画像をマーカ画像へ変換する平面射影変換行列を算出する。これによって、誤った点対応を除去することができる。変換行列は、好ましくは「Homography行列」であって、最低4組の点対応が必要である。4組全ての点対応が、inlierでなければ正解のHomography行列が得られない。
算出されたHomography行列を用いてフレーム画像の特徴点集合を射影し、マーカ画像の特徴点とのユークリッド距離が所定閾値以下の対応組を正(inlier)として判定し、それ以外を否(outlier)として判定する。正(inlier)と判定された対応組数が所定閾値以上である場合、当該マーカ画像が検出されたと判定し、そのHomography行列を採用する。逆に、正(inlier)と判定された対応組数が所定閾値よりも少ない場合、未検出と判定し、そのHomography行列を除去する。
平面射影変換行列であるHomography行列Hは、以下のように表される。これは、フレーム画像の特徴点p'=(x1,y1)と、マーカ画像の特徴点p=(x2,y2)との関係を表す。
Figure 0006384856
Homography行列の算出には、マーカ画像の特徴点集合とフレーム画像の特徴点集合とが用いられる。Homography行列Hの未知パラメータ数は、8個(h0〜h7、h8=1)であり、一組の対応点は2個の制約式を与える。従って、この行列Hは、4組以上の対応点があれば、最小二乗法によって算出することができる。このようなカメラ姿勢を推定する技術は、ARシステムでは一般的なものである。
そして、Homography行列Hを用いて、フレーム画像の特徴点を射影した際に、以下のように判定する。
(1)マーカ画像の特徴点に対して所定閾値以下の近くに射影されれば、inlierと判定する。
(2)逆に、所定閾値よりも遠くに射影されれば、outlierと判定する。
この処理を複数回実行した後、inlierの数が所定閾値以上となったHomography行列Hのみを採用する。
このような処理を、マーカ画像とフレーム画像とについて繰り返す。フレーム画像に映るマーカ画像として検出される毎に、その平面射影変換行列Hが出力される。
<センサを用いたカメラ姿勢>
前述したカメラ姿勢は、マーカ画像及びフレーム画像から算出されたものであるが、超音波センサ(例えば非特許文献4参照)や、磁気センサ(例えば非特許文献5参照)、赤外線センサ(例えば非特許文献6参照)から算出されたものであってもよい。 これらのセンサを使用する際は、HMDの筐体及び重畳対象のオブジェクトに各種センサを装着した上で、HMDとオブジェクトとの間の相対姿勢を算出するためのトランスミッタや赤外カメラを環境側に設置する必要がある。
尚、前述したマーカ画像を利用する方法や、各種センサを利用する方法のいずれについても、カメラ姿勢は対象のオブジェクトに対するHMDの相対姿勢として定義され、射影変換行列により表現される。本発明は、カメラ姿勢の計算方法を何ら限定するものではない。
以上、詳細に説明したように、本発明の情報装置、プログラム及び方法によれば、現実空間に対してオブジェクトの時間的な位置ズレができる限り小さくなるように、実時間に合わせて描画することができる。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 情報装置
101 カメラ
102 ディスプレイ
11 描画制御部
12 フレームバッファ
13 現カメラ姿勢算出部
14 予測カメラ姿勢算出部
15 予測オブジェクト生成部

Claims (3)

  1. カメラと、ディスプレイと、前記カメラによってキャプチャされたフレームをバッファするフレームバッファと、前記ディスプレイにオブジェクトを描画する描画制御手段とを有する情報装置において、
    バックバッファを備えた前記描画制御手段から、フロントバッファを備えた前記ディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
    前記描画制御手段からフレーム取得命令が発生した時刻t1に、前記フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する現カメラ姿勢算出手段と、
    時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つ前記ディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する予測カメラ姿勢算出手段と、
    前記予測カメラ姿勢によって前記オブジェクトを射影変換した予測オブジェクトを、前記描画制御手段へ出力する予測オブジェクト生成手段と
    を有することを特徴とする情報装置。
  2. カメラ及びディスプレイを有する情報装置に搭載されたコンピュータを機能させるプログラムであって、前記カメラによってキャプチャされたフレームをバッファするフレームバッファと、前記ディスプレイにオブジェクトを描画する描画制御手段として機能させるプログラムにおいて、
    バックバッファを備えた前記描画制御手段から、フロントバッファを備えた前記ディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
    前記描画制御手段からフレーム取得命令が発生した時刻t1に、前記フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する現カメラ姿勢算出手段と、
    時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つ前記ディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する予測カメラ姿勢算出手段と、
    前記予測カメラ姿勢によって前記オブジェクトを射影変換した予測オブジェクトを、前記描画制御手段へ出力する予測オブジェクト生成手段と
    してコンピュータを機能させることを特徴とするプログラム。
  3. カメラと、ディスプレイと、前記カメラによってキャプチャされたフレームをバッファするフレームバッファと、前記ディスプレイにオブジェクトを描画する描画制御部とを有する情報装置の描画制御方法において、
    前記情報装置は、
    バックバッファを備えた前記描画制御から、フロントバッファを備えた前記ディスプレイへ、表示レートの周期タイミングで垂直同期させて転送するものであり、
    前記描画制御部からフレーム取得命令が発生した時刻t1に、前記フレームバッファからバッファ時間Δt1前となる時刻t0に撮影されたフレームに対して、現カメラ姿勢を算出する第1のステップと、
    時刻t1後の姿勢予測遅延時間Δt2を取得し、予測カメラ姿勢の計算を開始してから次の周期タイミングでの転送終了までの姿勢予測描画時間Δt3を、予測カメラ姿勢の算出可能時間以上であって且つ前記ディスプレイのリフレッシュレートの逆数の定数倍(≧1)に設定し、時刻t0のフレームに対する現カメラ姿勢から、「バッファ時間Δt1+姿勢予測遅延時間Δt2+姿勢予測描画時間Δt3」後に予測される予測カメラ姿勢を算出する第2のステップと、
    前記予測カメラ姿勢によって前記オブジェクトを射影変換した予測オブジェクトを、前記描画制御部へ出力する第3ステップと
    を実行することを特徴とする情報装置の描画制御方法。
JP2014141911A 2014-07-10 2014-07-10 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法 Active JP6384856B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014141911A JP6384856B2 (ja) 2014-07-10 2014-07-10 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014141911A JP6384856B2 (ja) 2014-07-10 2014-07-10 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法

Publications (2)

Publication Number Publication Date
JP2016019199A JP2016019199A (ja) 2016-02-01
JP6384856B2 true JP6384856B2 (ja) 2018-09-05

Family

ID=55234103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014141911A Active JP6384856B2 (ja) 2014-07-10 2014-07-10 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法

Country Status (1)

Country Link
JP (1) JP6384856B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020083318A1 (zh) * 2018-10-23 2020-04-30 中兴通讯股份有限公司 平视显示系统、显示方法和汽车

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10089725B2 (en) * 2016-02-09 2018-10-02 Google Llc Electronic display stabilization at a graphics processing unit
KR101953578B1 (ko) * 2017-10-19 2019-03-04 서울과학기술대학교 산학협력단 클라우드 기반의 가상현실 서비스를 위한 콘텐츠 가공 방법 및 장치
KR101953567B1 (ko) * 2017-11-03 2019-03-04 서울과학기술대학교 산학협력단 가상현실 서비스를 위한 콘텐츠 후처리 방법
KR102103430B1 (ko) * 2018-11-08 2020-04-22 서울과학기술대학교 산학협력단 클라우드에 기반한 가상현실 서비스의 레이턴시 측정방법 및 시스템
CN110351528A (zh) * 2019-07-30 2019-10-18 四川博文讯通科技有限公司 一种基于ar化实景聚合的指挥平台
JPWO2021106136A1 (ja) * 2019-11-28 2021-06-03

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3745117B2 (ja) * 1998-05-08 2006-02-15 キヤノン株式会社 画像処理装置及び画像処理方法
JP2002159019A (ja) * 2000-11-16 2002-05-31 Canon Inc 表示制御装置、撮影位置推測装置、表示システム、撮影システム、画像位置決め方法、撮影位置推測方法、及び処理プログラムを記録した記録媒体
JP2012002952A (ja) * 2010-06-15 2012-01-05 Panasonic Corp 画像表示制御装置及び画像表示制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020083318A1 (zh) * 2018-10-23 2020-04-30 中兴通讯股份有限公司 平视显示系统、显示方法和汽车

Also Published As

Publication number Publication date
JP2016019199A (ja) 2016-02-01

Similar Documents

Publication Publication Date Title
JP6384856B2 (ja) 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法
Kellnhofer et al. Gaze360: Physically unconstrained gaze estimation in the wild
KR101950641B1 (ko) 향상된 안구 추적을 위한 장면 분석
US9947141B2 (en) Method of image processing for an augmented reality application
CN108229284B (zh) 视线追踪及训练方法和装置、系统、电子设备和存储介质
EP3195595B1 (en) Technologies for adjusting a perspective of a captured image for display
TWI540461B (zh) 手勢輸入的方法及系統
KR20220009393A (ko) 이미지 기반 로컬화
WO2019011249A1 (zh) 一种图像中物体姿态的确定方法、装置、设备及存储介质
Sugano et al. Appearance-based gaze estimation with online calibration from mouse operations
JP2017523487A (ja) 適応ホモグラフィ写像に基づく視線追跡
JP2008194146A (ja) 視線検出装置及びその方法
US11159645B2 (en) Adaptive backchannel synchronization for virtual, augmented, or mixed reality (xR) applications in edge cloud architectures
JP2011008687A (ja) 画像処理装置
KR102450236B1 (ko) 전자 장치, 그 제어 방법 및 컴퓨터 판독가능 기록 매체
US10600202B2 (en) Information processing device and method, and program
US20210256733A1 (en) Resolving region-of-interest (roi) overlaps for distributed simultaneous localization and mapping (slam) in edge cloud architectures
CN107977082A (zh) 一种用于呈现ar信息的方法及系统
JP2019144830A (ja) 複数の認識エンジンを用いて人物の行動を認識するプログラム、装置及び方法
US20180020203A1 (en) Information processing apparatus, method for panoramic image display, and non-transitory computer-readable storage medium
Yi et al. EgoLocate: Real-time motion capture, localization, and mapping with sparse body-mounted sensors
Uddin et al. Unsupervised deep event stereo for depth estimation
KR101273634B1 (ko) 모바일 기기를 이용하는 증강현실 환경에서 복수 객체 추적방법 및 이를 이용한 시스템
JP2016151612A (ja) プロジェクションマッピング装置、遅延補償装置、遅延補償方法および遅延補償プログラム
Li et al. A low-cost head and eye tracking system for realistic eye movements in virtual avatars

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170817

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180301

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180801

R150 Certificate of patent or registration of utility model

Ref document number: 6384856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150