(57)【要約】  ユーザの頭部上に配置されるように構成されたセンサ群を使用する頭部姿勢トラッキング手法の実施例が提示される。前述のセンサ群は、シーン内の特徴の３次元位置を識別するために使用される深度センサ装置、及び少なくとも１つの他のタイプのセンサを含む。センサ群におけるセンサそれぞれによって出力されたデータは周期的に入力され、データが入力される都度、それは変換行列を計算するために使用され、最初のセンサ・データが入力された際に確立された先行して求められた頭部姿勢の位置及び向きに変換行列が適用されると、現在の頭部姿勢の位置及び向きが識別される。上記変換行列を、次いで、先行して求められた頭部姿勢の位置及び向きに適用して、現在の頭部姿勢の位置及び向きを識別する。
2015513662.tif 000002
【特許請求の範囲】
【請求項１】
頭部姿勢トラッキングのためのシステムであって、
ユーザの頭部上に配置されるように構成されたセンサ群であって、前記センサ群は、前記センサ群によって検知されたシーン内の特徴の３次元位置を識別するために使用される深度センサ装置、及び少なくとも１つの他のタイプのセンサを備えるセンサ群と、
コンピューティング装置と、
前記コンピュータ装置によって実行されるプログラム・モジュールを備えるコンピュータ・プログラムとを備え、前記コンピューティング装置は、
前記センサ群における各センサによって出力されるデータを周期的に入力し、
データが前記センサの１つ又は複数から入力される都度、前記入力されたデータを使用して変換行列を計算し、最初のセンサ・データが入力された際に確立された、先行して求められた頭部姿勢の位置及び向きに前記変換行列が適用されると、現在の頭部姿勢の位置及び向きを識別し、
前記変換行列を、前記先行して求められた頭部姿勢の位置及び向きに適用して、前記現在の頭部姿勢の位置及び向きを識別する
よう、前記コンピュータ・プログラムの前記プログラム・モジュールによって指示されるシステム。
【請求項２】
頭部姿勢トラッキングのためのシステムであって、
ユーザの頭部上に配置されるように構成されたセンサ群であって、前記センサ群は、前記センサ群によって検知されたシーン内の点の３次元位置を識別するために使用される深度センサ装置、及びカラー・ビデオ・カメラを備え、前記深度センサ装置及び前記カラー・ビデオ・カメラは、深度フレーム及びカラー画像フレームの形式で同時シ―ン・データを周期的に生成するように同期化され、同時に生成された深度フレームにおける対応する３次元シーン位置に各カラー画像フレームにおける各画素をマッピングするように校正されるセンサ群と、
コンピューティング装置と、
前記コンピュータ装置によって実行されるプログラム・モジュールを備えるコンピュータ・プログラムとを備え、前記コンピューティング装置は、
同時に生成された深度フレーム及びカラー画像フレームを入力し、
最初の後に入力された、同時に生成された深度フレーム及びカラー画像フレーム対毎に、最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴を識別し、前記識別された一致特徴と、前記最後に入力されたカラー画像フレーム、及び前記最後に入力されたカラー画像フレームの直前に生成された前記カラー画像フレームにおける前記一致特徴の対応する３次元位置とを使用して最初の変換行列を推定し、前記変換行列は、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
最初のカラー画像フレームから、前記最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する先行して計算された変換行列、及び、前記最後に入力されたカラー画像フレームへの、直前のカラー画像フレームからの点の平行移動及び回転を規定する最初の変換行列を累算することにより、最初の入力カラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する最後の変換行列を推定し、
前記最初の入力カラー画像フレームに表されたシーンにおける先行して求められた頭部姿勢の位置及び向きに、前記最後の変換行列を適用して、前記最後に入力されたカラー画像フレームに表された前記シーンにおける現在の頭部姿勢の位置及び向きを識別するよう、前記コンピュータ・プログラムの前記プログラム・モジュールによって指示されるシステム。
【請求項３】
請求項２記載のシステムであって、前記一致特徴を識別するためのプログラム・モジュールは、オプティカル・フロー手法を使用して、前記最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致点を識別するためのサブモジュールを備えるシステム。
【請求項４】
請求項３記載のシステムであって、前記変換行列を推定するためのプログラム・モジュールを実行する前に実行される深度補正プログラム・モジュールを更に備え、前記深度補正プログラム・モジュールは、
識別された各一致点周りのウィンドウを規定するためのサブモジュールと、
各ウィンドウ内の、前記カメラに対する最近点を識別するためのサブモジュールと、
前記ウィンドウに関連付けられた先行して識別された一致点の代わりに一致点として各ウィンドウ内の前記識別された最近点を指定するためのサブモジュールと
を備えるシステム。
【請求項５】
請求項３記載のシステムであって、前記変換行列を推定するためのプログラム・モジュールを実行する前に実行される一致点アウトライア指定解除プログラム・モジュールを更に備え、前記一致点アウトライア指定解除プログラム・モジュールは、所定の最小レベルを下回る一致品質レベルを有する識別された一致点対それぞれを一致点として指定解除する手順を含むシステム。
【請求項６】
請求項３記載のシステムであって、前記変換行列を推定するためのプログラム・モジュールを実行した後、及び前記最後の変換行列を推定するためのプログラム・モジュールを実行する前に実行される一致点アウトライア指定解除プログラム・モジュールを更に備え、前記一致点アウトライア指定解除プログラム・モジュールは、
(ａ）前記最後に入力されたカラー画像フレームにおいて識別された一致点に、最後に推定された変換行列を適用して、前記最後に入力されたカラー画像フレームにおける一致点に対応する、前記最後に入力されたカラー画像フレームの直前に生成された前記カラー画像フレーム内の一致点を確かめるためのサブモジュールと、
（ｂ）前記最後に入力されたカラー画像フレームの直前に生成された前記カラー画像フレームにおける先行して識別された一致点毎に、前記最後に入力されたカラー画像フレームの直前に生成された前記カラー画像フレーム内の前記先行して識別された一致点に対応する、前記最後に入力されたカラー画像フレーム内の前記一致点に、前記最後に推定された変換行列を適用することによって確かめられた一致点の座標と、前記先行して識別された一致点の座標との間の差尺度を計算するためのサブモジュールと、
（ｃ）残りの一致点対の差尺度の平均を計算し、前記計算された平均が所定の最小レベルを超えるか否かを判定するためのサブモジュールと、
（ｄ）前記計算された平均が所定の最小レベルを超える場合、
大きさにより、前記差尺度を順序付けし、最大のものから始め、大きさの降順に前記差尺度の所定の割合を識別し、
前記識別された差尺度の１つに関連付けられた一致点対それぞれの、前記最後に入力されたカラー画像フレームの直前に生成された前記カラー画像フレーム内の前記先行して識別された一致点、及び前記最後に入力されたカラー画像フレーム内のその対応する一致点を、一致点として指定解除し、
残りの一致点を用いて前記変換行列を再推定する
ためのサブモジュールと、
（ｅ）所定の最大数の変換行列再推定反復に達したかを判定するサブモジュールと、
（ｆ）前記所定の最大数の変換行列再推定反復に達していない場合は常に、前記サブモジュール（ａ）乃至（ｆ）の実行を反復するためのサブモジュールと
を備えるシステム。
【請求項７】
請求項３記載のシステムであって、前記最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴を識別するためのプログラム・モジュールを実行する前に実行されるキーフレーム・プログラム・モジュールを更に備え、前記キーフレーム・プログラム・モジュールは、
新たなキーフレームを確立するかを判定するためのサブモジュールと、
新たなキーフレームを確立すると判定された場合には、前記最後に入力されたカラー画像フレームを記録し、前記記録されたフレームをキーフレームとして指定するためのサブモジュールと
を備えるシステム。
【請求項８】
請求項７記載のシステムであって、新たなキーフレームを確立するかを判定するためのサブモジュールは、前記最後に入力されたカラー画像フレームが前記最初の入力カラー画像フレームである場合に、かつ、前記最後に入力されたカラー・フレームが表すのが、前記先行して確立されたキーフレームにおいて表されたシーンの所定の部分よりも小さい場合に、新たなキーフレームを確立すると判定する手順を含むシステム。
【請求項９】
請求項７記載のシステムであって、前記キーフレーム・プログラム・モジュールは、更に、
新たなキーフレームを確立しないと判定された場合に、キーフレーム・マッチングを行うか否かを判定するためのサブモジュールと、
キーフレーム・マッチングを行うと判定された場合に、又は、新たなキーフレームが確立された場合に、
前記最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像フレーム内に表されたシーンの少なくとも所定の部分を表す記録されたキーフレームとの間のキーフレーム一致点を識別し、
前記最後に入力されたカラー画像フレーム、及び少なくとも、前記最後に入力されたカラー画像フレームにおいて表されたシーンの所定の部分を表す記録されたキーフレームにおけるキーフレーム一致特徴の前記識別されたキーフレーム一致点及び対応する３次元位置を用いて第２の変換行列を推定し、前記第２の変換行列は、少なくとも、前記最後に入力された画像フレーム内に表されたシーンの所定の部分を表す記録されたキーフレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す記録されたキーフレームへの、前記最初の入力カラー画像フレームからの点の平行移動及び回転を規定する先行して計算されたキーフレーム変換行列、及び前記第２の変換行列を使用して第３の変換行列を推定し、前記第３の変換行列は、少なくとも、前記最初の入力カラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
前記最後に入力されたカラー画像フレームが、新たに確立されたキーフレームである場合に、前記最初の入力カラー画像フレームから、前記新たに確立されたキーフレームへの点の平行移動及び回転を規定するキーフレーム変換行列として前記第３の変換行列を指定し、
最後に入力されたフレームの直前に入力されたカラー画像フレームへの、前記最初に入力されたカラー画像フレームからの点の平行移動及び回転を規定する最後の変換行列、及び前記最後に入力されたカラー画像フレームへの、その直前のフレームからの点の平行移動及び回転を規定する最初の変換行列を累算することにより、前記最初の入力カラー画像フレームから前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する第４の変換行列を推定し、
前記第３の変換行列及び前記第４の変換行列を合併させて、前記最初の入力カラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成し、
前記最後に入力されたカラー画像フレームの前記最後の変換行列となるよう、前記結合変換行列を指定するためのサブモジュールとを備えるシステム。
【請求項１０】
請求項９記載のシステムであって、
前記キーフレーム一致点を識別するためのサブモジュールを実行した後に、かつ、前記第２の変換行列を推定するためのサブモジュールを実行する前に実行される深度補正サブモジュールであって、前記深度補正サブモジュールは、識別されたキーフレーム一致点それぞれの周りにウィンドウを規定するためのサブモジュールと、各ウィンドウ内の、前記カメラへの最近点を識別するためのサブモジュールと、前記ウィンドウに関連付けられた、先行して識別されたキーフレーム一致点の代わりに、キーフレーム一致点として各ウィンドウ内の前記識別された最近点を指定するためのサブモジュールとを備える深度補正サブモジュールと、
深度を補正するためのサブモジュールを実行した後に、かつ、前記第２の変換行列を推定するためのサブモジュールを実行する前に実行されるキーフレーム一致点アウトライア指定解除サブモジュールであって、前記キーフレーム一致点アウトライア指定解除サブモジュールは、所定の最小レベルを下回る一致品質レベルを有する識別されたキーフレーム一致点の対それぞれを、キーフレーム一致点として指定解除する手順を備えるキーフレーム一致点アウトライア指定解除サブモジュールと、
前記第２の変換行列を推定するためのサブモジュールを実行した後に、かつ、前記第３の変換行列を推定するためのサブモジュールを実行する前に実行される第２のキーフレーム一致点アウトライア指定解除サブモジュールとを備え、前記第２のキーフレーム一致点アウトライア指定解除サブモジュールは、
（ａ）前記最後に入力されたカラー画像フレームにおいて識別された前記キーフレーム一致点に前記第２の変換行列を適用して、前記最後に入力されたカラー画像フレーム内のキーフレーム一致点に対応する、少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す、前記記録されたキーフレーム内のキーフレーム一致点を確かめるためのサブモジュールと、
（ｂ）少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す、前記記録されたキーフレーム内の先行して識別されたキーフレーム一致点毎に、少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す、前記記録されたキーフレーム内の前記先行して識別されたキーフレーム一致点に対応する、前記最後に入力されたカラー画像フレーム内の前記キーフレーム一致点に前記第２の変換行列を適用することによって確かめられたキーフレーム一致点の座標と、先行して識別されたキーフレーム一致点の座標との間の差尺度を計算するためのサブモジュールと、
（ｃ）残りのキーフレーム一致点対の差尺度の平均を計算し、前記計算された平均が所定の最小レベルを超えるか否かを判定するためのサブモジュールと、
（ｄ）前記計算された平均が所定の最小レベルを超える場合に、
大きさにより、前記差尺度を順序付けし、最大のものから始め、大きさの降順に前記差尺度の所定の割合を識別し、
識別された差尺度の１つに関連付けられたキーフレーム一致点対それぞれの、少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す、前記記録されたキーフレーム内の前記先行して識別されたキーフレーム一致点、及び前記最後に入力されたカラー画像フレーム内のその対応するキーフレーム一致点をキーフレーム一致点として指定解除し、
残りのキーフレーム一致点を用いて前記第２の変換行列を再推定する
ためのサブモジュールと、
（ｅ）所定の最大数の変換行列再推定反復に達したかを判定するためのサブモジュールと、
（ｆ）前記所定の最大数の変換行列再推定反復に達していない場合に、前記サブモジュール（ａ）乃至（ｆ）の実行を反復するためのサブモジュールと
を備えるシステム。
【請求項１１】
請求項９記載のシステムであって、前記キーフレーム・マッチングが行われるか否かを判定するサブモジュールは、
キーフレーム・マッチングが最後に行われてから所定数のフレームが入力されているかを判定する手順と、
キーフレーム・マッチングが最後に行われてから所定数のフレームが入力されていないと判定された場合に、キーフレーム・マッチングが行われる時点でないと指示する手順と、
キーフレーム・マッチングが最後に行われてから所定数のフレームが入力されていると判定された場合に、キーフレーム・マッチングが行われる時点であると指示する手順と
を含むシステム。
【請求項１２】
頭部姿勢トラッキングのためのシステムであって、
ユーザの頭部上に配置されるように構成されたセンサ群であって、前記センサ群は、前記センサ群によって検知されたシーン内の点の３次元位置を識別するために使用される深度センサ装置と、カラー・ビデオ・カメラと、３軸周りの角速度、及び前記３軸に沿った線加速度を測定する慣性センサ一式とを備え、前記深度センサ装置及び前記カラー・ビデオ・カメラは、深度フレーム及びカラー画像フレームの形式で同時シーン・データを周期的に生成するように同期化され、同時に生成された深度フレーム内の対応する３次元シーン位置に各カラー画像フレーム内の各画素をマッピングするように校正され、前記慣性センサは、前記深度フレーム及び前記カラー画像フレームが供給されるレート以上のレートで角速度及び線形加速度データのフレームを提供するセンサ群と、
コンピューティング装置と、
前記コンピュータ装置によって実行されるプログラム・モジュールを備えるコンピュータ・プログラムと
を備え、前記コンピューティング装置は、
生成された慣性センサ・フレームそれぞれを入力し、
最初の後に入力された慣性センサ・フレーム毎に、
最後に入力された慣性センサ・フレームを使用して現在の慣性センサ・ベースの変換行列を推定し、前記変換行列は、直前の入力慣性センサ・フレームから、前記最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定し、
前記最後に入力された慣性センサ・フレームの直前に入力された慣性センサ・フレームへの、最初の慣性センサ・フレームからの点の平行移動及び回転を規定する先行して計算された変換行列、及び前記直前の入力慣性センサ・フレームから、前記最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する現在の慣性センサ・ベースの変換行列を累算することにより、最初の入力慣性センサ・フレームから、前記最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する最後の慣性センサ・ベースの変換行列を推定し、
新たなカラー・ビデオ・フレーム及び深度フレームが生成されているかを判定し、
新たなカラー・ビデオ・フレーム及び深度フレームが生成されていない場合に、現在の頭部姿勢の位置及び向きを識別するために、最後の慣性センサ・ベースの変換行列を、最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに適用し、
新たなカラー・ビデオ・フレーム及び深度フレームが生成されている場合に、
前記新たなカラー画像フレーム及び前記深度フレームを入力し、
前記最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴を識別し、
前記最後に入力されたカラー画像フレーム、及び前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームにおける一致特徴の対応する３次元位置、及び識別された一致特徴を使用して現在の画像ベースの変換行列を推定し、前記画像ベースの変換行列は、前記最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
前記最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの、最初の慣性センサ・フレームからの点の平行移動及び回転を規定する先行して計算された変換行列、及び直前のカラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する現在の変換行列を累算することにより、前記最初の入力慣性センサ・フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する最後の画像ベースの変換行列を推定し、
前記最後の画像ベースの変換行列、及び前記最後の慣性センサ・ベースの変換行列を、前記最初の入力慣性センサ・フレームから、前記最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成するよう合併させ、
前記結合変換行列を、現在の頭部姿勢の位置及び向きを識別するために、前記最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに対して適用するよう、前記コンピュータ・プログラムの前記プログラム・モジュールによって指示されるシステム。
【請求項１３】
請求項１２記載のシステムであって、前記新たなカラー画像フレーム及び深度フレームを入力するためのプログラム・モジュールを実行した後に、かつ、前記最後に入力されたカラー画像フレームと、前記最後に入力されたカラー画像の直前に生成されたカラー画像フレームとの間の一致特徴を識別するためのプログラム・モジュールを実行する前に実行されるキーフレーム・プログラム・モジュールを更に備え、前記キーフレーム・プログラム・モジュールは、
新たなキーフレームを確立するかを判定するためのサブモジュールと、
新たなキーフレームを確立するかが判定される場合に、前記最後に入力されたカラー画像フレームを記録し、前記記録されたフレームをキーフレームとして指定するためのサブモジュールと
を備えるシステム。
【請求項１４】
請求項１３記載のシステムであって、前記新たなキーフレームを確立するかを判定するためのサブモジュールは、前記最後に入力されたカラー画像フレームが前記最初の入力カラー画像フレームである場合に、かつ、前記最後に入力されたカラー・フレームが表すのが、前記先行して確立されたキーフレームにおいて表されたシーンの所定の部分よりも小さい場合に、新たなキーフレームを確立すると判定する手順を含むシステム。
【請求項１５】
請求項１３記載のシステムであって、前記キーフレーム・プログラム・モジュールは、更に、
新たなキーフレームを確立しないと判定された場合に、キーフレーム・マッチングを行うかを判定するためのサブモジュールと、
キーフレーム・マッチングを行うと判定された場合に、又は新たなキーフレームが確立された場合に、
前記最後に入力されたカラー画像フレームと、少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す記録されたキーフレームとを識別し、
前記最後に入力されたカラー画像フレーム、及び少なくとも、前記最後に入力されたカラー画像フレームにおいて表されたシーンの所定の部分を表す記録されたキーフレームにおけるキ―フレーム一致特徴の対応する３次元位置、及び前記識別されたキーフレーム一致点を用いて第２の変換行列を推定し、前記第２の変換行列は、少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す記録されたキーフレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
少なくとも、前記最後に入力されたカラー画像フレームに表されたシーンの所定の部分を表す記録されたキーフレームへの、前記最初の入力カラー画像フレームからの点の平行移動及び回転を規定する先行して計算されたキーフレーム変換行列、及び前記第２の変換行列を使用して第３の変換行列を推定し、前記第３の変換行列は、前記最初の入力カラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定し、
前記最後に入力されたカラー画像フレームが、新たに確立されたキーフレームである場合に、前記最初の入力カラー画像フレームから、前記新たに確立されたキーフレームへの点の平行移動及び回転を規定するキーフレーム変換行列として前記第３の変換行列を指定し、
最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの、最初の慣性センサ・フレームからの点の平行移動及び回転を規定する先行して計算された変換行列、及び直前のカラー画像フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する現在の画像ベースの変換行列を累算することにより、最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する第４の変換行列を推定し、
前記第３の変換行列及び前記第４の変換行列を合併させて、前記最初の入力慣性センサ・フレームから、前記最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する単一の結合画像ベースの変換行列を生成し、
前記結合画像ベースの変換行列を前記最後の画像ベースの変換行列となるように指示するためのサブモジュールと
を備えるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
頭部姿勢トラッキングには通常、空間内の人の頭部の位置及び向きを周期的に求めることが関係する。
【背景技術】
【０００２】
空間内の人の頭部の位置は通常、空間の予め確立されたワールド座標系によって表される３Ｄ位置として規定される。前述の位置は例えば、頭部の重心（すなわち、人の頭部の推定中心）と関連付けることが可能である。しかし、代替的には、人の頭部に関連付けられた容易に確かめることができる別の点を規定することも可能である。頭部姿勢の向きは通常、頭部の重心（又は規定された頭部の他の点）においてその共通の原点を有する３つの直交軸を中心とした回転（ピッチ、ロール、ヨー）によって規定される。通常、ピッチは頭部の上下移動であり、ヨーは頭部の左右移動であり、ロールは頭部の側方移動である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
頭部姿勢は、種々のアプリケーションにおいて使用される。例えば、頭部姿勢は、拡張現実アプリケーションのコンテキストにおいて追跡される。拡張現実アプリケーションでは、ユーザは、ディスプレイ上にレンダリングされた仮想オブジェクト、及び現実世界をともに視ることが可能であるように少なくとも１つの半透明ディスプレイを備えたゴーグル又は同様な装置を身に着ける。仮想オブジェクトは、現実環境の一部であるかのようにみえる必要がある。環境の一部であるかのように仮想オブジェクトがみえることを確実にするための技術的構成部分の１つには、頭部姿勢トラッキングがある。ユーザが自分の頭部を移動させると、（ユーザの頭部とともに移動する）ディスプレイ上にレンダリングされた仮想オブジェクトは、実環境に対して静止状態にみえる必要がある。
【０００４】
正確な頭部姿勢トラッキングを実現する試みの１つには、例えば、壁又は天井の既知の位置に既知のパターンを有するマーカを配置することにより、実環境の計装を行うことが関係する。（ユーザの頭部上、又は空間内の別の箇所上に搭載された）通常のビデオ・カメラによって捕捉された画像が次いで、画像内のマーカの位置に基づいてユーザの頭部姿勢を計算するためのコンピュータ・ビジョン技術を使用して処理される。別の試みには、ユーザの頭部姿勢を確かめるための、（ヘルメット上、又はゴーグル対内などの）ユーザの頭部上に搭載された慣性センサ（例えば、ジャイロスコープ、加速度計、及びコンパス）の使用が関係する。更に、環境を計装する必要なしで頭部姿勢推定を得るために従来の１つ又は複数のビデオ・カメラと慣性センサが組み合わせられる頭部姿勢トラッキング手法が提案されている。
【課題を解決するための手段】
【０００５】
本明細書及び特許請求の範囲に記載された頭部姿勢トラッキング手法の実施例には、一般に、空間内の人の頭部の位置及び向きを周期的に求めることも関係する。一般的な例示的実施例の１つでは、これは、ユーザの頭部上に配置されるよう構成されたセンサ群を使用して実現される。前述のセンサ群は効果的には、センサ群によって検知されたシーン内の点の３次元位置を識別するために使用される深度センサ装置、及び少なくとも１つの他のタイプのセンサを含む。コンピューティング装置は、頭部姿勢トラッキング・コンピュータ・プログラムを実行させるために使用される。コンピュータ・プログラムは、センサ群内の各センサによって出力されたデータを周期的に入力するためのモジュールを含む。これは更に、センサの１つ又は複数からデータが入力される都度、変換行列を計算するために、入力されたデータを使用するためのモジュールを含む。最初のセンサ・データが入力された際に確立された、先行して求められた頭部姿勢の位置及び向きに適用されると、前述の変換行列は、現在の頭部姿勢の位置及び向きを識別する。
【０００６】
特に、一実施例では、上述の他のタイプのセンサは、カラー・ビデオ・カメラである。深度センサ装置及びカラー・ビデオ・カメラは、深度フレーム及びカラー画像フレームそれぞれの形式で、同時のシーン・データを周期的に生成するように同期化される。更に、深度センサ装置及びカラー・ビデオ・カメラは、（可能な場合、）同時生成された深度フレームにおける対応する３次元シーン位置に各カラー画像フレーム内の各画素をマッピングするよう校正される。その場合、前述のコンピュータ・プログラムには、同時に生成された深度フレーム及びカラー画像フレームそれぞれを最初に入力する工程が関係する。（最初の入力フレーム対後に）入力された前述のフレーム対毎に、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間で、一致特徴が識別される。次いで、最初の変換行列が、識別された一致特徴、及び、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴の対応する３次元位置を使用して推定される。前述の変換行列は、一フレ―ムから別のフレームへの、特に、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームから、最後に入力されたカラー画像フレームへの、点の平行移動及び回転を規定する。次いで、最初の入力カラー画像フレームから、最後に入力されたカラー画像フレームへの、点の平行移動及び回転を規定する最後の変換行列が推定される。このことは、最初のカラー画像フレームから、最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する先行して計算された変換行列、及び、直近のカラー画像フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する最初の変換行列を累算することによって実現される。現在の頭部姿勢の位置及び向きを識別するために、最初の入力カラー画像フレームにおいて表すシーン内の先行して求められた頭部姿勢の位置及び向きに、最後の変換行列が次いで適用される。
【０００７】
更に別の実施例では、上述の他のタイプのセンサは、上述のように構成されたカラー・ビデオ・カメラを含むのみならず、３つの軸を中心とした角速度、及び３つの軸に沿った線加速度を測定する慣性センサ一式も含む。慣性センサは、深度フレーム及びカラー画像フレームが提供されるレート以上のレートで１フレーム分の角速度及び線加速度データを提供する。この場合、上述のコンピュータ・プログラムには、生成された慣性センサ・フレームそれぞれを最初に入力する工程が関係する。次いで、（最初の入力慣性センサ・フレームの後に）入力された慣性センサ・フレーム毎に、現在の慣性センサ・ベースの変換行列が、最後に入力された慣性センサ・フレームを使用して推定される。前述の慣性センサ・ベースの変換行列は、直前の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び移動を規定する。最初の慣性センサ・フレームから、最後に入力された慣性センサ・フレームの直前に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する先行して計算された変換行列、及び、直前の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する現在の慣性センサ・ベースの変換行列を累算することにより、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する最後の慣性センサ・ベースの変換行列が次いで、推定される。次いで、新たなカラー・ビデオ及び深度フレームが生成されているかが判定される。否定の場合、現在の頭部姿勢の位置及び向きを識別するために、最後の慣性センサ・ベースの変換行列が、最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに適用される。しかし、新たなカラー・ビデオ及び深度フレームは、生成されている場合、入力され、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴が識別される。次いで、画像ベースの変換行列が、識別された一致特徴、及び、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の、一致特徴の対応する３次元位置を使用して推定される。前述の画像ベースの変換行列は、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する。最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する最後の画像ベースの変換行列は次いで、最初の慣性センサ・フレームから、最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する先行して計算された変換行列、及び
直前のカラー画像フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する現在の画像ベースの変換行列を累算することによって推定される。最後の画像ベースの変換行列、及び最後の慣性センサ・ベースの変換行列を、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成するよう合併させる。前述の結合変換行列は次いで、現在の頭部姿勢の位置及び向きを識別するために、最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに適用される。
【０００８】
本概要は、詳細な説明において以下に更に説明された、単純化された形式での概念の選択肢を紹介するために提供する。本概要は、特許請求の範囲に記載の主題の主要な構成又は必須の構成を識別することを意図するものでなく、特許請求の範囲に記載の主題の範囲の規定を助けるものとして使用されることを意図するものでもない。
【０００９】
本開示の特定の構成、局面、及び利点は、以下の明細書、特許請求の範囲、及び図面に関連して、よりよく理解されるであろう。
【図面の簡単な説明】
【００１０】
【図１】本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例を実現する頭部姿勢トラッキング・システムを図示する概略図である。
【図２】本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例を実現するうえで使用される種々のフレーム及び座標手法を表す概略図である。
【図３】通常のカラー・ビデオ・カメラとともに深度センサ装置を使用する、図１の例示的な頭部姿勢トラッキング・システムを図示する概略図である。
【図４Ａ】図３に図示する深度センサ装置及びカラー・ビデオ・カメラによって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図４Ｂ】図３に図示する深度センサ装置及びカラー・ビデオ・カメラによって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図４Ｃ】図３に図示する深度センサ装置及びカラー・ビデオ・カメラによって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図４Ｄ】図３に図示する深度センサ装置及びカラー・ビデオ・カメラによって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図５】キーフレーム・マッチングを行うか否かを判定するための処理の一実現形態を概説するフロー図である。
【図６】通常のカラー・ビデオ・カメラ及び慣性センサ一式とともに深度センサ装置を使用する、図１の例示的な頭部姿勢トラッキング・システムを図示した概説図である。
【図７Ａ】図６に描く深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサ一式によって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図７Ｂ】図６に描く深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサ一式によって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図７Ｃ】図６に描く深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサ一式によって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図７Ｄ】図６に描く深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサ一式によって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図７Ｅ】図６に描く深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサ一式によって出力されるデータを使用した頭部トラッキング処理の一実施例を概説するフロー図である。
【図８】本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例を実現する例示的なシステムを構成する汎用コンピューティング装置を図示した図である。
【発明を実施するための形態】
【実施例】
【００１１】
頭部姿勢トラッキング手法の実施例の以下の詳細な説明では、その一部を構成し、上記手法を実施し得る特定の実施例を例証によって示す添付図面を参照する。他の実施例を利用し得、構造的変更を、上記手法の範囲から逸脱しない限り、行い得る。
【００１２】
１．０  頭部姿勢トラッキング
一般に、本明細書及び特許請求の範囲に記載された頭部姿勢トラッキング手法の実施例は、空間内の人の頭部の位置及び向きを周期的に追跡する。図１に示す概括的な一実現形態では、これには、ユーザの頭部上に配置されるように構成されたセンサ群１００を使用するシステムが関係する。前述の頭部装着センサ群１００は、上記センサ群によって検知されたシーン内の特徴の３次元位置を識別するために使用される深度センサ装置１０２、及び他の少なくとも１つのタイプのセンサ１０４を含む。更に、前述の例示的な頭部姿勢トラッキング・システムは、センサ・モジュール１１０及び変換行列モジュール１１２を含むプログラム・モジュールを有するコンピュータ・プログラム１０８を実行させる（本明細書において後述する、コンピューティング環境の部分において記載されたものなどの）コンピューティング装置１０６を有する。一般に、センサ・モジュールは、センサ群におけるセンサそれぞれによって出力されたデータを周期的に入力し、変換行列モジュールは、データがセンサの１つ又は複数から入力される都度、入力データを使用して変換行列を計算する。最初のセンサ・データが入力された際に確立された、先行して求められた頭部姿勢の位置及び向きに適用されると、変換行列は、現在の頭部姿勢の位置及び向きを識別するために使用することが可能である。
【００１３】
種々のセンサ手法が、本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例によって使用される。上述のように、前述の手法はそれぞれ、空間内の位置と装置との間の距離を識別するために使用される（、通常、特定のタイプのプロジェクタ及び受信器を含む）深度センサ装置を含む。例示的な一実施例では、深度センサ装置が、通常のカラー・ビデオ・カメラとともに使用される。別の例示的な一実施例では、深度センサ装置が、通常のカラー・ビデオ・カメラ及び慣性センサ一式とともに使用される。更に、前述の手法はそれぞれ、種々のセンサによって出力されるセンサ信号を処理するための、上述したようなコンピューティング装置を含む。後続部分では、上述した例示的な実現形態がそれぞれ、更に詳細に説明され、実現処理もそれぞれについて説明される。
【００１４】
しかし、まず、頭部姿勢トラッキングでは、ワールド・フレーム（フレーム「Ｗ」）における頭部座標フレーム（フレーム「Ｈ」）又はセンサ・フレーム（フレーム「Ｓ」）の位置（ＴＷＨ又はＴＷＳ）及び向き（ＲＷＨ又はＲＷＳ）が推定される。センサ・フレームは、カラー・カメラ・フレーム（フレーム「Ｃ」）２０２、及び深度センサ装置受信器フレーム（フレーム「ＤＣ」）２０４を表し、含まれる場合、慣性センサ・フレーム（フレーム「Ｉ」）２０６も表す。前述のセンサ・フレームは、頭部フレームと同じになるように変換され、追跡の最初に、変換されたセンサ・フレームにワールド・フレーム２００が重なるとみなす。特に、３つのセンサ・フレームそれぞれは３つの軸を有する。３つのセンサ・フレーム間の相対変換は経時的に変わらない。そういうものとして、相対変換はオフラインで、予め校正される。実用的には、最初の時点でのカラー・カメラのセンサ・フレームがワールド・フレームとして使用され、深度センサ受信器フレーム及び慣性センサ・フレームは、一致するよう変換される。上記フレームは図２において示すように規定され、ワールド・フレーム２００の座標はＸＷ、ＹＷ、ＺＷとして表し、カラー・カメラ・フレーム２０２の座標はＸＣ、ＹＣ、ＺＣとして表し、深度センサ受信器フレーム２０４の座標はＸＤＣ、ＹＤＣ、ＺＤＣとして表し、慣性センサ・フレーム２０６の座標はＸＩ、ＹＩ、ＺＩとして表す。矢印ＴＩ及びＴＤＣは、深度センサ受信器フレーム及び慣性センサ・フレームに関連付けられた上記相対変換を表し、点線Ｏは、カラー・カメラ・フレームと、ワールド・フレームとの間の対応関係を示す。
【００１５】
上記フレーム及び座標に加えて、以下の表記及び定義が、本明細書の以下に続く部分で使用される。
ｐ１：「フレーム１内の点ｐの座標」
ｐ２：「フレーム２内の点ｐの座標」
Ｒ１２：「フレーム１からフレーム２への回転」又は「フレーム１に表されたフレーム２」
Ｔ１２：「フレーム１に表された、フレーム２の原点への、フレーム１の原点からの平行移動」
ｐ１＝Ｒ１２ｐ２＋Ｔ１２：「フレーム２からフレーム１への点ｐの座標の変換」
一般に、使用される規則は、上付き文字は、点がどのフレーム中にあるかを示す一方、下付き文字は変換の順序などの他の情報を示すというものである。
１．１  カラー・ビデオ・カメラ及び深度センサ装置を使用した例示的なシステム実現形態及び処理
上述したように、例示的な一システム実現形態は一般に、図３に示すように、深度センサ装置３０２と通常のカラー・ビデオ・カメラ３０４とを含む頭部装着センサ３００、及びコンピュータ３０６を使用する。
【００１６】
各種深度センサ装置を使用することが可能である。例として、しかし、限定でなく、深度センサ装置は、赤外線ビデオ・カメラの形態の赤外線プロジェクタ及び赤外線受信器であり得る。赤外線プロジェクタ及び赤外線カメラは、赤外線プロジェクタが赤外光を環境に放出し、赤外線カメラが環境内の表面及び物体からの赤外光反射を捕捉して、通常の態様で作動する。反射赤外光は次いで、通常の態様で環境内の点又は特徴、及び受信器からの距離を計算するために使用される。カラー・ビデオ・カメラについては、これは、何れかの適切な（ＲＧＢ（赤／緑／青）ビデオ・カメラとしても知られている）可視光ビデオ・カメラであり得る。
【００１７】
深度センサ装置及びカラー・ビデオ・カメラは、ユーザにより、自分の頭部上に装着される（例えば、ヘルメット上に構築され、ゴーグル又はめがねの対に内蔵され、又はその両方である）ように構成される。固定の空間関係が深度センサ装置とカラー・ビデオ・カメラとの間に維持される。更に、深度センサ装置及びカラー・ビデオ・カメラの向き及び位置が、ユーザの頭部の向き及び位置を模倣するものとする。更に、深度センサ装置及びカラー・ビデオ・カメラは、同期化されたカラー画像系列及び深度画像系列を提供するよう構成される。
【００１８】
追跡する前に、カラー・カメラ及び深度カメラは、それらの間の変換を得るために互いに対して校正される。これは、通常の手法を使用して実現される。校正の結果を使用して、カラー画像内の画素は、可能な場合、対応する深度画像内の画素にマッピングすることが可能である。一実現形態では、姿勢トラッキングは、オプティカル・フロー・トラッカをカラー画像系列に適用することによって行われる。深度情報は変換の算出において使用される。しかし、単にオプティカル・フロー・トラッキングに基づいた頭部姿勢推定は最終的にはドリフトにつながり得る。したがって、一実現形態では、１つ又は複数のキーフレームが記録され、トラッキング結果は、上記結果を前述のキーフレームと比較することによって補正される。
【００１９】
特に、図４Ａ乃至図４Ｄを参照すれば、本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例の一実現形態では、深度センサ装置及びカラー・ビデオ・カメラによって捕捉された画像データはフレーム単位で捕捉される。捕捉されたフレームそれぞれは今度は、上記コンピュータに入力される。よって、処理は、最後に捕捉されたカラー・ビデオ・フレーム及び深度フレームを入力することによって始まる（処理動作４００）。次いで、新たなキーフレームを確立するかを判定する（処理動作４０２）。一バージョンでは、最初の入力フレームがキーフレームとして確立される。前述の最初のキーフレームは、処理の持続時間中に確立される唯一のキーフレームであり得る。あるいは、新たなキーフレームは周期的に確立することが可能である。例えば、最後に入力されたカラー・フレームが描くのが、先行して確立されたキーフレームにおいて描かれるシーンの所定の部分（例えば、４０％）よりも少ない場合である。よって、周囲のシーンの視覚的特徴のパノラマが経時的に構築されるようにキーフレームの集まりを記録することが可能である。１つ又は複数のキーフレームを確立する目的は以下に、更に詳細に説明する。
【００２０】
新たなキーフレームを確立しないと判定された都度、キーフレーム・マッチングを行うか否かが判定される（処理動作４０４）。オプティカル・フロー・トラッキングは、連続するフレームにおける特徴点を追跡する。連続するフレーム間で計算される変換は最終的にはドリフト効果を生成し得る。一実現形態では、前述のドリフト効果は、絶対参照を使用することによって補正される。前述の絶対参照を作成するやり方の１つには、連続するフレームが処理されるにつれて、最初の入力カラー画像フレームまで、１つ又は複数のキーフレーム及びその変換行列を記憶することがある。現在のフレームが、キーフレームにおいても捕捉されたシーンの一部分（例えば、５０％）を描く場合は常に、以下に説明するようにドリフトを補正することが可能である。前述の態様でキーフレーム・マッチングを使用することは更に、時間的トラッキング障害からの回復を可能にするという利点を有する。しかし、以下に説明する理由で、キーフレーム・マッチングは、新たなカラー画像フレーム入力毎に行わないことがあり得る。最後に入力されたカラー画像フレームについてキーフレーム・マッチングを行わない場合は常に、最初に入力されたフレームの後に入力された新たなフレーム毎に、上記オプティカル・フロー手法が、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴を識別するために使用される（処理動作４０６）。何れかの適切な通常のオプティカル・フロー手法をこの目的で使用することが可能であるが、一実現形態では、リアルタイムの実行を可能にするために、計算量上、効率的であるべきである。３０Ｈｚ程度のカメラ・フレーム・レートを仮定すれば、オプティカル・フロー・トラッカは、通常速度の動きについて効率的に先行フレームと現在フレームとの間の点の一致を見つけることが可能である。見つかった一致点の数は、トラッカ内のパラメータ設定及び環境に依存する。点以外の画像特徴は時には、オプティカル・フロー手順においてマッチングされる。本明細書記載の説明は、一致点を表すが、一致点の代わりに、又は一致点に加えて、他の一致特徴を使用することが可能である。
【００２１】
次に、処理動作４２０では、現在の変換行列が、オプティカル・フロー情報、及び先行して入力された深度フレームを使用して推定される。前述の変換行列は、直前に生成されたフレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する。オプティカル・フロー手法は、２つのフレームにおける一致点の２Ｄ画像座標を識別する。しかし、尺度の不明確さが存在し、精度を保証することは難しい。２つのカラー画像フレームに対応する深度画像が作用するのはここである。深度画像は、シーンの３Ｄ情報を提供し、よって、一致点の３Ｄ位置を、カラー・カメラ・フレーム毎に見つけることが可能である。２つ以上の一致点の組の３Ｄ座標があれば、標準手法を使用して、上記変換行列を推定することが可能である。
【００２２】
しかし、対応する深度画像から、カラー画像内の特定の点の深度値を確かめることは、一致点が多くの場合、隅の点であるということが理由で難しいことがあり得る。よって、一致点が３Ｄの隅である可能性が存在している。この場合において、深度マップ上のこの点の投影は、エッジ上に、又は真空領域内に収まり得る。これは、不明確さをもたらす。２つの一致点について、一方が、より近い表面上で見つかり得る一方で、他方が、更に遠くの表面上で見つかり得、又は、無効の深度値を何れか一方が有し得る。これは、有用な一致の数を削減する。前述の課題に対処するために、（動作の任意的な特性を示すために、破線のボックス内に図４Ｃに示す）一実現形態では、変換行列を計算する前に、深度補正モジュールが使用される。特に、前述のモジュールには、直接マッピングされた一致点周りに、小さいサーチ・ウィンドウ（例えば、３×３画素）を規定することが関係する（処理動作４０８）。各ウィンドウ内のカメラに最も近い点が次いで、識別され、精緻化された一致点として規定される（処理動作４１０）。次いで、前述の精緻化された一致点を用いて、処理動作４２０において変換行列を計算することが可能である。より近い表面を選ぶことにより、上記不明確さが避けられる。
【００２３】
オプティカル・フロー・トラッキング中、一致点アウトライアが導入される可能性が高くなる。アウトライアの数は、通常、使用されるマッチング・アルゴリズムによって識別されるように、より低い一致品質を有する一致を削除することによって削減することが可能である。特に、（図４Ｃにおいて、動作の任意的な性質を示すために破線ボックス内に示す）一実現形態では、変換行列を計算する前に、一致点の先行して選択されていない対が選択される（処理動作４１２）。選択された一致点を識別するために使用されるマッチング・アルゴリズムによって識別されるような一致品質レベルが所定の最小レベル（例えば、１ミリメートル）を下回るかが、次いで、処理動作４１４において判定される。肯定の場合、選択された一致点が一致点として指定解除される（処理動作４１６）。選択された一致点が指定解除されると、又は、選択された点の一致品質レベルが所定の最小レベルを下回らない場合、選択されていない残りの一致点が存在しているかが判定される（処理動作４１８）。存在している場合、一致点の対全てが考慮されるまで、処理動作４１２乃至４１８が必要に応じて反復される。
【００２４】
上記手順はアウトライア一致点の数を削減するが、多くの場合、残りのアウトライアのせいで、高い性能が保証されなくなる。よって、その一致品質が所定の最小レベル未満であることによって示されるように劣悪な一致品質を有する一致を削除した後、少なくとも、残りのアウトライアのうちの最上位のものを更に除去するよう使用することが可能である。特に、（動作の任意的な特性を示すために破線ボックスで図４Ｄに示す）一実現形態では、最後の推定された変換行列（ＲＡＢ，ＴＡＢ）（ここで、Ａは、現在のフレームの点Ｂの組における点にそれぞれ一致する、先行フレームにおける点の組を表す）が、組Ｂにおける点を変換するために使用される（処理動作４２２）。変換された点それぞれの結果として生じる点座標は次いで、差尺度を確立するために組Ａにおけるその対応する点と比較される（処理動作４２４）。次いで、一致点対の差尺度の平均が計算され、この平均が所定の最小レベル（例えば、１ミリメートル）を超えたかが処理動作４２６において判定される。平均が、所定の最小レベルを超える場合、差尺度が大きさによって順序付けされ、最大から始め、大きさの降順で、差尺度の所定の割合（例えば、１０％）が識別される（処理動作４２８）。組Ｂにおける一致点、及び、識別された差尺度の１つに関連付けられた一致対それぞれの組Ａにおけるその対応する一致点は次いで、一致点対として指定解除される（処理動作４３０）。次いで、変換行列が、残りの一致点対を使用して再推定される（処理動作４３２）。次いで、所定の最大数（例えば、３）の変換行列再推定反復に達したかが判定される（処理動作４３４）。否定の場合、処理動作４２２乃至４３４が、適宜、反復される。これは、先行して計算された平均が所定の最小レベルを超えない状態になるか、又は、所定の最大数の変換行列再推定反復に達したことが判定されるまで続く。
【００２５】
次に、最初に入力されたカラー画像フレームから、最後に入力されたフレーム直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する最後の変換行列、及び、直前のフレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する現在の変換行列を累算することにより、最初の入力カラー画像フレームから最後の入力フレームへの点の平行移動及び回転を規定する最後の変換行列が推定される（処理動作４３８）。更に、上記変換行列は、通常の手法を使用して最後の変換行列を形成するよう累算される。
【００２６】
しかし、処理動作４０２では、新たなキーフレームを確立すると判定された場合、カラー・カメラの最後に入力されたフレームが記録され、現在のキーフレームとして指定される（処理動作４３６）。更に、キーフレーム・マッチングを行うか否かについての決定に関しては、現在のフレームとキーフレームとの間では両方がシーンの同じ部分を表す場合でも、かなりの動きが存在し得るので、（通常の高速化ロバスト特徴（ＳＵＲＦ）マッチング手順を使用して求めることが可能なものなどの）強い特徴が、高精度な結果を実現するためにマッチングにおいて通常必要である。残念ながら、前述の強力な特徴検出器及び記述器は通常、計算量的に高価である。よって、一バージョンでは、キーフレーム・マッチングは、数（例えば、１５）フレームおきにのみ行う。ドリフトがかなり大きくなるのは、変換誤差がいくつかのフレームについて累積された後に過ぎないので、これは意味がある。上記に鑑みて、図５は、キーフレーム・マッチングを行うか否かを判定する１つのやり方を概説する。まず、キーフレーム・マッチング手順が最後に行われてから、所定数のフレームが入力されているかが判定される（処理動作５００）。所定数のフレームが入力されていない場合、新たなキーフレーム・マッチングを行う時点でないと指示される（処理動作５０２）。しかし、所定数のフレームが入力されている場合、キーフレーム・マッチング手順を行う時点であると判断される（処理動作５０４）。
【００２７】
上記に鑑み、かつ、図４をもう一度、参照するに、キーフレーム・マッチングを行うと処理動作４０４で判定されるか、又は、最後に入力されたカラー画像フレームが現在のキーフレームとして指定されている場合、（識別されたキーフレームとして以降表す、）少なくとも、最後に入力されたフレームにおいて表すシーンの所定の部分を表すキーフレームと、最後に入力されたカラー画像フレームとの間の一致点が識別される（処理動作４４０）。上述したように、一実現形態では、通常のＳＵＲＦマッチング手順がこの目的で使用される。処理動作４０８乃至４１０、及び処理動作４１２乃至４１８において上述した任意的な一致点精緻化及びアウトライア除去動作は、ここでも、識別されたキーフレームと、最後に入力されたフレームとの間の一致点位置を精緻化するために実現することが可能である。
【００２８】
最後に入力された色画像フレームと、識別されたキーフレームとの間の一致点が識別されると、処理動作４４２において、現在の変換行列（すなわち、（Ｒｔ，ｋ，Ｔｔ，ｋ））を推定するために、対応する深度フレームからの３Ｄ位置データとともに使用される。この変換行列は、識別されたキーフレーム（すなわち、ｋ）から、最後に入力されたフレーム（すなわち、ｔ）への点の平行移動及び回転を規定する。連続するフレーム間の変換行列が処理動作４２０において推定された態様と同様にこの変換行列推定が実現される。更に、処理動作４２２乃至４３４において上述した任意の反復的アウトライア除去動作はここでも、推定された変換の精度を潜在的に増加させるために実現することが可能である。次いで、最初の入力カラー画像フレームから、最後に入力されたフレームへの点の平行移動及び回転を規定するキーフレーム一致変換行列は、識別されたキーフレームと最後に入力されたフレームとの間で得られる変換行列と、最初の入力カラー画像フレーム入力（すなわち、フレーム１）から識別されたキーフレームへの点の平行移動及び回転を規定する先行して計算されたキーフレーム変換行列（すなわち、（Ｒ１，ｔ，Ｔ１，ｔ））を使用して推定される（処理動作４４４）。一実現形態では、これは、識別されたキーフレームと、最後に入力されたフレームとの間で推定された変換行列と、最初のフレームと、識別されたキーフレームとの間の先行して計算された変換行列とを乗算することによって実現される。最後に入力されたカラー画像フレームが現在のフレームとして指定されている場合、このフレームと関連付けられたキーフレーム一致変換行列が次いで、上記フレームのキーフレーム変換行列として指定される（処理動作４４５）。このことにより、次のキーフレームが作成される際にキーフレーム一致変換行列を計算するうえで使用するために最初の入力カラー画像フレームから現在のキーフレームへの点の平行移動及び回転を規定する予め計算されたキーフレーム変換行列が確立されている。更に、最後に入力されたフレーム直前に入力されたカラー画像フレームへの、最初に入力されたカラー画像フレームからの点の平行移動及び回転を規定する最後の変換行列、及び直前のフレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する現在の変換行列を累算することにより、最初の入力カラー画像フレームから最後に入力されたフレームへの点の平行移動及び回転を規定する変換行列が推定される（処理動作４４６）。上述のように、オプティカル・フロー・トラッキングの場合、最初のフレームから始めて、各フレームから、次のフレームへ推定される変換（すなわち、（Ｒ１２，Ｔ１２），（Ｒ２３，Ｔ２３），……，（Ｒｋ−１，ｋ，Ｔｋ−１，ｋ））は、通常の手法を使用して、最初のフレーム・キーフレーム（フレーム１）から直近のフレーム（すなわち、フレームｋ）への変換行列を生成するよう累算することができるために、このことは可能である。
【００２９】
処理のこの時点で、オプティカル・フロー・トラッキング及びキーフレーム・マッチングに基づく、最初の入力カラー画像フレームから、最後に入力されたフレームへの点の平行移動及び回転を規定する別個の変換行列が存在している。前述の変換行列を、単一の結合変換行列を生成するよう合併させる（処理動作４４８）。
【００３０】
一実現形態では、２つの変換行列推定間の重み付けされた補間が、潜在的に更に好適な変換を得るために行われる。一致点の３Ｄ位置は深度画像を介して分かるので、３Ｄ情報を使用して変換推定誤差メトリックを規定することが可能である。より具体的には、座標フレーム１（Ｆ１）から、画像１（Ｉ１）を考慮する。更に、座標フレーム２（Ｆ２）から、画像２（Ｉ２）を考慮する。先行して推定された変換行列（Ｒ１２，Ｔ１２）は、Ｆ１からＦ２への回転及び平行移動を表す。Ｆ２からのＩ２における画像点は、（Ｒ１２，Ｔ１２）を適用することにより、Ｆ１に変換される。（その時点におけるカメラの光学中心である）Ｆ１の原点が次いで、変換された点それぞれと結ばれる。３Ｄ空間内の結ばれた線上のＩ１に点が存在している場合、前述の２つの点間の距離が算出される。上記誤差メトリックはその場合、（線上にＩ１の点が存在しているものである）算出に関係した点全てにわたる算出された距離の平均である。計算の量を削減するために、一実現形態では、画像は、上記変換手順に先行して、同程度（例えば、５０％）までダウンサンプリングされる。更に、考慮されない、変換後、Ｉ１に表すシーン外の一部の点が存在する。
【００３１】
（以降、誤差として表す）変換推定誤差メトリックが計算されると、現在のフレームについて計算された２つの変換行列間の補間が行われる。一実現形態では、これは、四元数空間内の線形補間を使用することによって行われる。
【００３２】
より具体的には、上記重みは式
【００３３】
【数１】
2015513662.tif 000003
を用いて算出され、ここで、aは定数である（例えば、１００００）である。結果として生じる重み値を次いで、使用される前に正規化して、現在のフレームについて計算された２つの変換行列間で補間する。一実現形態では、この補間は以下の通りに実現される。ｐ１及びｑ１は、第１の変換行列の位置及び向き（四元数による）を表しているとする。ｐ２及びｑ２は、第２の変換行列の位置及び向き（四元数による）を表しているとする。ｗ１は第１の変換行列に対応する誤差を表し、ｗ２は第２の変換行列に対応する誤差を表しているとする。ａ１＝ｗ１／（ｗ１＋ｗ２）であり、ａ２＝ｗ２／（ｗ１＋ｗ２）であるとする。補間された位置及び四元数はその場合、ｐ＝ａ１＊ｐ１＋ａ２＊ｐ２、ｑ＝ａ１＊ｑ１＋ａ２＊ｑ２である。２つの四元数間の角度が小さい場合、四元数で表される向きの上記線形補間は好適に機能する。角度がより大きい場合には、球面線形補間を使用することが可能である。
【００３４】
もう一度、図４Ｂを参照すれば、単一の結合変換行列は、生成されると、最後の変換行列として指定される（処理動作４５０）。次いで、最後の変換行列を、（処理動作４３８で生成されたものであっても、処理動作４５０で生成されたものであっても、）最初の入力カラー画像フレームにおいて表されたシーン内の先行して求められた頭部姿勢の位置及び向きに適用して、最後に入力されたカラー画像フレームにおいて表されたシーンにおける現在の頭部姿勢の位置及び向きを識別する（処理動作４５２）。現在の頭部姿勢及び変換行列を、次いで、拡張現実アプリケーションにおける現在のフレームにおける仮想オブジェクトの位置を計算する工程を含む種々の他のタスクに使用することが可能である。
【００３５】
次いで、新たなカラー・ビデオ及び深度フレームが入力されているか否かが判定される（処理動作４５４）。肯定の場合、処理動作４００乃至４５４が、必要に応じて、反復される。このことは、新たなフレームが捕捉され、コンピュータに入力される限り、続く。
【００３６】
２  カラー・ビデオ・カメラ、深度センサ装置、及び慣性センサを使用した例示的なシステム実現形態及び処理
上述するように、別の例示的なシステム実現形態は一般に、図６に示すように、コンピュータ６０８とともに、深度センサ装置６０２、通常のカラー・ビデオ・カメラ６０４、及び慣性センサ一式６０６を含む頭部装着センサ６００を使用する。ここではもう一度、上述した赤外線プロジェクタ及び赤外線カメラ装置などの各種深度センサ装置を使用することが可能である。慣性センサに関し、一般に、これは、加速度計及びジャイロスコープの組み合わせを使用して速度、向き、及び重力を測定するセンサ群を含む。一実現形態では、ジャイロスコープ及び加速度計（センサが１つの微細なチップに一体化されることを可能にする３軸ＭＥＭジャイロスコープ及び３軸ＭＥＭ加速度計）を含む通常の慣性測定装置が使用される。ジャイロスコープが３軸周りの角速度を測定する一方、加速度計は３軸に沿った線形加速度を測定する。
【００３７】
深度センサ装置、カラー・ビデオ・カメラ、及び慣性センサは、ユーザにより、自分の頭部上に装着される（例えば、ヘルメット上に構築され、ゴーグル又はめがねの対に内蔵され、又はその両方である）ように構成される。前述のセンサ間で、固定の空間関係が維持され、前述のセンサは共通の座標系原点を共有する。更に、前述のセンサの向き及び位置が、ユーザの頭部の向き及び位置を模倣すると仮定される。ここでも、もう一度、深度センサ装置及びカラー・ビデオ・カメラは、同期化されたカラー画像系列及び深度画像系列を提供するよう構成される。
【００３８】
慣性センサの追加は、特に、環境が、視覚的に豊かなテクスチャを有していない場合に利点を有する。特に、カメラ及び慣性センサは、補完的な特性を有する。例えば、カメラは、より低いフレーム・レートを有し、処理において、より多くの計算量を必要とするが、視覚的に豊富な環境では、慣性センサに対して、ずっと精度の高い測定を提供することが可能である。これに対し、慣性センサは、非常に高いフレーム・レートに達することが可能であり、処理は効率がずっと高く、視覚的特徴が弱い期間を、例示的なシステムが解決することに寄与し得る。更に、ジャイロスコープ及び加速度計に基づいたトラッキングは、数秒間でかなりのドリフトにつながるが、カメラを使用して、ランドマークを記録し、ドリフトを補正することが可能である。
【００３９】
一実現形態では、姿勢トラッキングは、慣性センサからの測定を使用して、かつ、利用可能な場合、カラー画像及び深度画像からの視覚的測定と組み合わせて行われる。ここでも、視覚的測定に関し、オプティカル・フロー・トラッカがカラー画像系列に適用される。深度情報は変換の算出において使用される。しかし、単にオプティカル・フロー・トラッキングに基づいた頭部姿勢推定は最終的にはドリフトにつながり得る。したがって、一実現形態では、１つ又は複数のキーフレームが記録され、トラッキング結果は、上記結果を前述のキーフレームと比較することによって補正される。
【００４０】
特に、図７Ａ乃至図７Ｅを参照すれば、本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例の一実現形態では、深度センサ装置及びカラー・ビデオ・カメラによって捕捉された画像データはフレーム単位で捕捉される。更に、慣性センサによって捕捉された慣性データは、周期的に、上記画像データに少なくとも等しく、かつ、通常、上記画像データよりも速いレートで捕捉される。便宜上、同時に捕捉された慣性センサ示度の各組は、慣性センサのフレームとして表す。捕捉された画像フレーム及び慣性センサ・フレームそれぞれは今度は、上記コンピュータに入力される。処理は、入ってくるフレームを監視することで始まる（処理動作７００）。（最初のものに後続する）新たな慣性センサ・フレームが入力されているかが周期的に判定される（処理動作７０２）。否定の場合、監視が続く。新たな慣性センサ・フレームが入力されている場合、現在の慣性センサ・ベースの変換行列が推定される（処理動作７０４）。前述の慣性センサ・ベースの変換行列は、直前の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び移動を規定し、通常の手法を使用して推定される。慣性センサ・ベースの変換行列は、次いで、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する最後の慣性センサ・ベースの変換行列を推定するために使用される（処理動作７０６）。このことは、最初の慣性センサ・フレームから、最後に入力された慣性センサ・フレームの直前に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列、及び直前の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する現在の慣性センサ・ベースの変換行列を、通常の手法を使用して累算することによって実現される。次いで、新たなカラー・ビデオ及び深度フレームも生成されているかが判定される（処理動作７０８）。否定の場合、最後の慣性センサ・ベースの変換行列を、最初の入力慣性センサ・フレームに関連付けられた、先行して求められた頭部姿勢の位置及び向きに適用して、現在の頭部姿勢の位置及び向きを識別する（処理動作７１０）。現在の頭部姿勢及び最後の慣性センサ・ベースの変換行列を、次いで、拡張現実アプリケーションにおける現在のフレームにおける仮想オブジェクトの位置の計算を含む種々の他のタスクに使用することが可能である。
【００４１】
しかし、新たなカラー・ビデオ及び深度フレームも生成されていると処理動作７０８で判定された場合、これらは図４Ａ乃至図４Ｄに関して説明したものと同様に処理される。より具体的には、新たなカラー・ビデオ及び深度フレームが入力され（処理動作７１２）、新たなキーフレームを確立するかが判定される（処理動作７１４）。一バージョンでは、最初のフレームの入力がキーフレームとして確立される。前述の最初のキーフレームは、処理の持続時間中に確立される唯一のキーフレームであり得る。あるいは、新たなキーフレームは周期的に確立することが可能である。例えば、最後に入力されたカラー・フレームが描くのが、先行して確立されたキーフレームにおいて描くシーンの所定の部分（例えば、４０％）よりも少ない場合である。よって、周囲のシーンの視覚的特徴のパノラマが経時的に構築されるようにキーフレームの集まりを記録することが可能である。１つ又は複数のキーフレームを確立する目的は以下に、更に詳細に説明する。
【００４２】
新たなキーフレームを確立しないと判定された場合は必ず、次いで、キーフレーム・マッチングを行うか否かが判定される（処理動作７１６）。オプティカル・フロー・トラッキングは、連続するフレームにおける特徴点を追跡する。連続するフレーム間で計算される変換は最終的にはドリフト効果をもたらし得る。一実現形態では、前述のドリフト効果は、絶対参照を使用することによって補正される。前述の絶対参照を作成するやり方の１つには、連続するフレームが処理されるにつれて、最初の入力カラー画像フレームまで、１つ又は複数のキーフレーム及びその変換行列を記憶することがある。現在のフレームが、キーフレームにおいても捕捉されたシーンの一部分（例えば、５０％）を描く場合は必ず、以下に説明するようにドリフトを補正することが可能である。前述の態様でキーフレーム・マッチングを使用することは更に、時間的トラッキング障害からの回復を可能にするという利点を有する。しかし、以下に説明する理由で、キーフレーム・マッチングは、新たなカラー画像フレーム入力毎に行わないことがあり得る。最後に入力されたカラー画像フレームについてキーフレーム・マッチングを行わない場合はいつでも、最初のものの後の新たなフレームの入力毎に、上記オプティカル・フロー手法が、最後に入力されたカラー画像フレームと、最後に入力されたカラー画像フレームの直前に生成されたカラー画像フレームとの間の一致特徴を識別するために使用される（処理動作７１８）。何れかの適切な通常のオプティカル・フロー手法をこの目的のために使用することが可能であるが、一実現形態では、リアルタイム実行を可能にするために計算量的に効率的であるべきである。３０Ｈｚ程度のカメラ・フレーム・レートを仮定すれば、オプティカル・フロー・トラッカは、通常の速度の動きについて効率的に先行フレームと現在フレームとの間の点の一致を見つけることが可能である。見つかった一致点の数は、トラッカ内のパラメータ設定及び環境に依存する。点以外の画像特徴は時には、オプティカル・フロー手順においてマッチングされる。本明細書記載の説明は、一致点を表すが、一致点の代わりに、又は一致点に加えて、他の一致特徴を使用することが可能である。
【００４３】
次に、処理動作７３２では、現在の変換行列が、オプティカル・フロー情報、及び先行して入力された深度フレームを使用して推定される。前述の変換行列は、直前に生成されたフレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する。上述のように、オプティカル・フロー手法は、２つのフレームにおける一致点の２Ｄ画像座標を識別する。しかし、尺度の不明確さが存在し、精度を保証することは難しい。２つのカラー画像フレームに対応する深度画像が作用するのはここである。深度画像は、シーンの３Ｄ情報を提供し、よって、一致点の３Ｄ位置を、カラー・カメラ・フレーム毎に見つけることが可能である。２つ以上の一致点の組の３Ｄ座標があれば、標準手法を使用して、上記変換行列を推定することが可能である。
【００４４】
更に、上述したように、対応する深度画像から、カラー画像内の特定の点の深度値を確かめることは、一致点が多くの場合、隅の点であるということが理由で難しいことがあり得る。よって、一致点が３Ｄの隅である可能性が存在している。この場合において、深度マップ上のこの点の投影は、エッジ上に、又は空白領域内に収まり得る。これは、不明確さをもたらす。２つの一致点について、一方が、より近い表面上で見つかり得る一方で、他方が、更に遠くの表面上で見つかり得、又は、無効の深度値を何れか一方が有し得る。これは、有用な一致の数を削減する。前述の課題に対処するために、（動作の任意的な特性を示すために、破線のボックス内に図７Ｄに示す）一実現形態では、変換行列を計算する前に、深度補正モジュールが使用される。より具体的には、このモジュールには、直接マッピングされた一致点周りに小さいサーチ・ウィンドウ（例えば、３×３画素）を規定することが関係する（処理動作７２０）。各ウィンドウ内のカメラに最も近い点が次いで、識別され、精緻化された一致点として指定される（処理動作７２２）。次いで、前述の精緻化された一致点を用いて、処理動作７３２において変換行列を計算することが可能である。より近い表面を選ぶことにより、上記不明確さが避けられる。
【００４５】
更に、オプティカル・フロー・トラッキング中、一致点アウトライアが導入される可能性が高くなる。アウトライアの数は、通常、使用されるマッチング・アルゴリズムによって識別されるように、より低い一致品質を有する一致を削除することによって削減することが可能である。特に、（図７Ｄにおいて、動作の任意的な性質を示すために破線ボックス内に示す）一実現形態では、変換行列を計算する前に、一致点の先行して選択されていない対が選択される（処理動作７２４）。次いで、選択された一致点を識別するために使用されるマッチング・アルゴリズムによって識別されるような一致品質レベルが所定の最小レベル（例えば、１ミリメートル）を下回るかが、処理動作７２６において判定される。肯定の場合、選択された一致点が一致点として指定解除される（処理動作７２８）。選択された一致点が指定解除されると、又は、選択された点の一致品質レベルが所定の最小レベルを下回らない場合、選択されていない残りの一致点が存在しているかが判定される（処理動作７３０）。存在している場合、一致点の対全てが考慮されるまで、処理動作７２４乃至７３０が必要に応じて反復される。
【００４６】
上述したように、上記手順はアウトライア一致点の数を削減するが、多くの場合、残りのアウトライアのせいで、高い性能が保証されなくなる。よって、その一致品質が所定の最小レベル未満であることによって示されるように劣悪な一致品質を有する一致を削除した後、少なくとも、残りのアウトライアのうちの最上位のものを更に除去するために、反復的手法を使用することが可能である。特に、（動作の任意的な特性を示すために破線ボックスで図７Ｅに示す）一実現形態では、最後に推定された変換行列（ＲＡＢ，ＴＡＢ）（ここで、Ａは、現在のフレームの点Ｂの組における点にそれぞれ一致する、先行フレームにおける点の組を表す）が、組Ｂにおける点を変換するために使用される（処理動作７３４）。変換された点それぞれの結果として生じる点座標は次いで、差尺度を確立するために組Ａにおけるその対応する点と比較される（処理動作７３６）。次いで、一致点対の差尺度の平均が計算され、この平均が所定の最小レベル（例えば、１ミリメートル）を超えたかが処理動作７３８において判定される。平均が、所定の最小レベルを超える場合、差尺度が大きさによって順序付けされ、最大から始め、大きさの降順で、差尺度の所定の割合（例えば、１０％）が識別される（処理動作７４０）。組Ｂにおける一致点、及び、識別された差尺度の１つに関連付けられた一致対それぞれの組Ａにおけるその対応する一致点は次いで、一致点対として指定解除される（処理動作７４２）。次いで、変換行列が、残りの一致点対を使用して再推定される（処理動作７４４）。次いで、所定の最大数（例えば、３）の変換行列再推定反復に達したかが判定される（処理動作７４６）。否定の場合、処理動作７３４乃至７４６が、適宜、反復される。これは、先行して計算された平均が所定の最小レベルを超えない状態になるか、又は、所定の最大数の変換行列再推定反復に達したことが判定されるまで続く。
【００４７】
次に、最初の慣性センサ・フレームから、最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する単一の結合変換行列、及び最後に入力されたカラー画像フレームへの、直前のカラー画像フレームからの点の平行移動及び回転を規定する現在の変換行列を累算することにより、最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する変換行列が推定される（処理動作７５０）。更に、上記変換行列は、通常の手法を使用して前述の変換行列を形成するよう累算される。
【００４８】
しかし、処理動作７１４では、新たなキーフレームを確立すると判定された場合、カラー・カメラの最後に入力されたフレームが記録され、現在のキーフレームとして指定される（処理動作７４８）。更に、キーフレーム・マッチングを行うか否かについての決定に関しては、現在のフレームとキーフレームとの間では両方がシーンの同じ部分を表す場合でも、かなりの動きが存在し得るので、（通常の高速化ロバスト特徴（ＳＵＲＦ）マッチング手順を使用して求めることが可能なものなどの）強い特徴が、高精度な結果を実現するためにマッチングにおいて通常必要である。残念ながら、前述の強力な特徴検出器及び記述器は通常、計算量的に高価である。よって、一バージョンでは。キーフレーム・マッチングは、上述したように、数（例えば、１５）フレームおきについてのみ行う。ドリフトがかなり大きくなるのは、変換誤差がいくつかのフレームについて累積された後に過ぎないので、これは意味がある。上記に鑑みて、図５は、キーフレーム・マッチングを行うか否かを判定する１つのやり方を概説する。まず、キーフレーム・マッチング手順が最後に行われてから、所定数のフレームが入力されているかが判定される（処理動作５００）。所定数のフレームが入力されていない場合、新たなキーフレーム・マッチングのための時点でないと指示される（処理動作５０２）。しかし、所定数のフレームが入力されている場合、キーフレーム・マッチング手順を行うための時点であると判断される（処理動作５０４）。
【００４９】
上記に鑑み、かつ、図７Ｂをもう一度、参照するに、キーフレーム・マッチングを行うと処理動作７１６で判定されるか、又は、最後に入力されたカラー画像フレームが現在のキーフレームとして指定されている場合、（識別されたキーフレームとして以降表す、）少なくとも、最後に入力されたフレームにおいて表すシーンの所定の部分を表すキーフレームと、最後に入力されたカラー画像フレームとの間の一致点が識別される（処理動作７５２）。上述したように、一実現形態では、通常のＳＵＲＦマッチング手順がこの目的で使用される。処理動作７２０乃至７２２、及び処理動作７２４乃至７３０において上述した任意的な一致点精緻化及びアウトライア除去動作は、ここでも、識別されたキーフレームと、最後に入力されたフレームとの間の一致点位置を精緻化するために実現することが可能である。
【００５０】
最後に入力された色画像フレームと、識別されたキーフレームとの間の一致点が識別されると、処理動作７５４において、現在の変換行列（すなわち、（Ｒｔ，ｋ，Ｔｔ，ｋ））を推定するために、対応する深度フレームからの３Ｄ位置データとともに使用される。この変換行列は、識別されたキーフレーム（すなわち、ｋ）から、最後に入力されたフレーム（すなわち、ｔ）への点の平行移動及び回転を規定する。連続するフレーム間の変換行列が処理動作７３２において推定されたのと同様にこの変換行列推定が実現される。更に、処理動作７３４乃至７４６において上述した任意の反復的アウトライア除去動作はここでも、推定された変換の精度を潜在的に増加させるために実現することが可能である。次いで、最初の入力カラー画像フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定するキーフレーム一致変換行列は、識別されたキーフレームと最後に入力されたフレームとの間で得られる現在の変換行列を使用して推定され、先行して計算されたキーフレーム変換行列（すなわち、（Ｒｔ，ｋ，Ｔｔ，ｋ））は、最初の入力カラー画像フレーム（すなわち、フレーム１）から識別されたキーフレームへの点の平行移動及び回転を規定する（処理動作７５６）。一実現形態では、このことは、識別されたキーフレームと、最後に入力されたフレームとの間で推定された変換行列、及び最初のフレームと、識別されたキーフレームとの間の先行して計算された変換行列を乗算することによって実現される。最後に入力されたカラー画像フレームが現在のフレームとして指定されている場合、このフレームと関連付けられたキーフレーム一致変換行列が次いで、上記フレームのキーフレーム変換行列として指定される（処理動作７５７）。これにより、次のキーフレームが作成される際にキーフレーム一致変換行列を計算するうえで使用するために、最初の入力カラー画像フレームから、現在のキーフレームへの点の平行移動及び回転を規定する予め計算されたキーフレーム変換行列が確立されている。更に、最初の慣性センサ・フレームから、最後に入力されたカラー画像フレームの直前に入力されたカラー画像フレームへの点の平行移動及び回転を規定する単一の結合変換行列、及び最後に入力されたカラー画像フレームへの、直前のカラー画像フレームからの点の平行移動及び回転を規定する現在の変換行列を累算することにより、最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する変換行列が推定される（処理動作７５８）。上述のように、オプティカル・フロー・トラッキングの場合、最初から始めて、各フレームから、次のフレームへ推定される変換（すなわち、（Ｒ１２，Ｔ１２），（Ｒ２３，Ｔ２３），……，（Ｒｋ−１，ｋ，Ｔｋ−１，ｋ））は、通常の手法を使用して、最初のフレーム・キーフレーム（フレーム１）から直近のフレーム（すなわち、フレームｋ）への変換行列を生成するよう累算することができるために、このことは可能である。
【００５１】
処理のこの時点で、慣性データ及びオプティカル・フロー・トラッキング、又は慣性データ、オプティカル・フロー・トラッキング、及びキーフレーム・マッチングに基づく、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する別個の変換行列が存在している。最初のケースでは、オプティカル・フロー・トラッキングに基づいて、最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する変換行列、及び、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する最後の慣性センサ・ベースの変換行列を、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成するよう合併させる（処理動作７６０）。後のケースでは、オプティカル・フロー・トラッキング及びキーフレーム・マッチングに基づいて、最初の入力慣性センサ・フレームから、最後に入力されたカラー画像フレームへの点の平行移動及び回転を規定する変換行列、及び、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する最後の慣性センサ・ベースの変換行列を、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成するよう合併させる（処理動作７６２）。
【００５２】
一実現形態では、再帰的ベイジアン・フレームワーク及び拡張カルマン・フィルタ（ＥＫＦ）を使用して変換行列を合併させる。特に、前述の種類の合併及び状態推定の課題に対応するための慣用されている一方で強力なツールが、再帰的ベイジアン・フィルタである。別々のソースからの測定を１つの一様なフレームワークに合併させ、確立された処理モデル及び観察モデルを介して、隠れ状態を推定することが可能である。自然に別々のセンサの別々のフレーム・レートに対応することが可能である。
【００５３】
再帰的ベイジアン・フィルタは、システムのモデリング及びシステム出力を介して、システムの隠れ状態変数の事後確率分布関数（ＰＤＦ）を推定するために使用される。状態ベクトルｘ（ここで、ｘが観察可能でないことがあり得る）を備えた特定のシステムの場合、その処理は、
ｘｋ＝ｆ（ｘｋ−１，ｕｋ，ｖｋ−１）
としてモデリングすることが可能であり、ここで、ｕｋはシステムに対する入力であり、ｖｋはプロセス・ノイズである。この式は、入力ｕｋの影響による、状態変数の時間発展を表す。
【００５４】
同時に、システムの測定可能な出力は、測定式
ｚｋ＝ｈ（ｘｋ，ｅｋ）
を使用した状態変数に関連付けることが可能であり、ここで、ｚｋは観察ベクトルであり、ｅｋは測定ノイズである。
【００５５】
その考えというのは、ｚ１：ｋが与えられた下でｘｋの事後分布を推定することである。再帰的解法は、ベイズの定理を適用し、
【００５６】
【数２】
2015513662.tif 000004
をもたらすことによって得ることが可能であることがよく知られている。
【００５７】
上記式における多次元積分は、いくつかの特別なケース以外は全て、解析的に解くことが可能でない。一般的なケースは、プロセス方程式及び測定方程式が線形であり、プロセス・ノイズ及び測定ノイズはゼロ平均ガウス分布
ｘｋ＝Ａｘｋ−１＋Ｂｕｋ＋ｖｋ−１
ｚｋ＝Ｈｘｋ＋ｅｋ
ｐ（ｗ）〜Ｎ（０，Ｑ）
ｐ（ｖ）〜Ｎ（０，Ｒ）
を使用してモデリングすることが可能である場合であり、ここで、Ｑはプロセス・ノイズの共分散であり、Ｒは測定ノイズの共分散である。
【００５８】
この場合、密度は全て、ガウシアンとなり、平均及び共分散のみを伝播させることで十分である。これにより、有名なカルマン・フィルタがもたらされる。
【００５９】
時間更新：
【００６０】
【数３】
2015513662.tif 000005
測定更新：
【００６１】
【数４】
2015513662.tif 000006
モデルが非線形の場合、偏導関数を算出することにより、局所で線形化することが可能である。これにより、拡張カルマン・フィルタ（ＥＫＦ）
【００６２】
【数５】
2015513662.tif 000007
がもたらされる。
【００６３】
時間更新：
【００６４】
【数６】
2015513662.tif 000008
測定更新：
【００６５】
【数７】
2015513662.tif 000009
上記が与えられた下で、システム・モデルを定義することが可能である。特に、状態変数は、頭部の位置及び向きを含むべきである。更に、線形速度及び加速度、並びに回転速度が含まれるので、一定の線形加速度及び回転速度を仮定することが可能である。センサ・バイアスを更に、慣性センサのわずかに変動するバイアスに対応するために含める。以下では、慣性センサが、共通の座標フレーム原点を有する加速度計（ａ）及びジャイロスコープ（ｇ）であると仮定する。よって、一実現形態では、
【００６６】
【数８】
2015513662.tif 000010
であり、ここで、
【００６７】
【数９】
2015513662.tif 000011
は、フレーム「Ｗ」において表されるヘッド位置である。
【００６８】
【数１０】
2015513662.tif 000012
及び
【００６９】
【数１１】
2015513662.tif 000013
は頭部線速度及び加速度それぞれである。
【００７０】
【数１２】
2015513662.tif 000014
は、フレーム「Ｗ」において四元数を使用して表される頭部の向きである。
【００７１】
【数１３】
2015513662.tif 000015
は、フレーム「Ｉ」において表される頭部角速度である。バイアス
【００７２】
【数１４】
2015513662.tif 000016
は、更に、慣性センサ座標フレームにある。四元数は向きを表すために使用される。トラッキング空間において連続的であるからである。
【００７３】
次に、処理は
【００７４】
【数１５】
2015513662.tif 000017
の通り、モデリングされる。
【００７５】
演算は、
【００７６】
【数１６】
2015513662.tif 000018
として定義される。
【００７７】
観察方程式については、慣性センサ・データ、並びに、カラー画像データ及び深度画像データに対応する必要がある。慣性センサ（すなわち、ジャイロスコープ及び加速度計）の場合、観察方程式は、
【００７８】
【数１７】
2015513662.tif 000019
である。
【００７９】
しかし、画像データをどのようにして使用するかに関し、種々のオプションが存在している。一実現形態では、観察方程式を線形化するために、変換推定が測定値として使用される。（利用可能な場合、）キーフレーム・マッチング及びオプティカル・フロー・トラッキングからの推定を、
【００８０】
【数１８】
2015513662.tif 000020
のように含める。
【００８１】
ここで、
【００８２】
【数１９】
2015513662.tif 000021
は、ｋ−ｓにおけるカメラ座標フレームにおける、オプティカル・フロー・パイプラインから得られた現在の時間ステップｋへの時間ステップｋ−ｓからの回転を表す四元数である。ｑＩＣは、フレーム「Ｉ」からフレーム「Ｃ」への既知の回転である。
【００８３】
【数２０】
2015513662.tif 000022
は、ｋ−ｓにおけるカメラ座標フレームにおける、オプティカル・フロー・パイプラインから得られたステップｋへの時間ステップｋ−ｓからの平行移動である。
【００８４】
【数２１】
2015513662.tif 000023
は、キーフレーム・パイプラインから得られた、現在の時間ステップｋへの時間ステップｋ−ｔからの回転を表す四元数である。時間ステップｔは、キーフレームが記録されたフレームである。
【００８５】
【数２２】
2015513662.tif 000024
は、キーフレーム・パイプラインからの平行移動である。キーフレーム一致変換行列が存在せず、慣性データ及びオプティカル・フロー・トラッキングに基づく行列のみが存在する場合、キーフレーム一致変換行列の補間重みはゼロにセットされる。
【００８６】
Ｑパラメータ及びＲパラメータが調節された場合、ＥＫＦはより効果的に実行される。上述の通り、Ｑはプロセス・ノイズの共分散であり、Ｒは測定ノイズの共分散である。一般に、Ｑが小さいほど処理の精度が高くなり、Ｒが小さいほど測定の精度が高くなる。Ｒはオフラインで測定することが可能である一方、Ｑは、事前知識、又は移動の仮定のみに基づいて調整することが可能である。
【００８７】
単一の結合変換行列は、生成されると、現在の頭部姿勢の位置及び向きを識別するために、最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに適用される（処理動作７６４）。現在の頭部姿勢及び変換行列を、次いで、拡張現実アプリケーションにおける現在のフレームにおける仮想オブジェクトの位置の計算を含む種々の他のタスクに使用することが可能である。
【００８８】
上記処理は次いで、新たな慣性センサ・フレーム、カラー・ビデオ・フレーム、及び深度フレームが捕捉され、コンピューティング装置に入力される限り、反復される。
【００８９】
２．０  例示的な頭部姿勢トラッキング・アプリケーション
上述のように、上記態様でユーザの頭部姿勢を追跡することは、拡張現実を含む種々のアプリケーションにおいて有用である。拡張現実アプリケーションでは、高精度かつロバストな頭部姿勢トラッキング・システムが、仮想オブジェクトの安定した表示を確実にするために必要である。ユーザの頭部姿勢を追跡するための上記頭部装着センサに加え、前述の拡張実現アプリケーションは更に、頭部搭載型ディスプレイ（ＨＭＤ）を含む。例えば、一実現形態では、ＨＭＤは、ユーザの眼の一方の手前に搭載された単一の半透明ガラス・ディスプレイの形態をとる。
【００９０】
３．０  例示的な動作環境
本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例は、数多くのタイプの汎用の、又は特殊用途向のコンピューティング・システム環境内若しくは構成内で動作可能である。図８は、本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の種々の実施例及び構成要素を実現し得る、汎用コンピュータ・システムの単純化された例を示す。図８中に断続線又は破線で表すボックスは何れも、単純化されたコンピューティング装置の代替的な実施例を表し、後述する上記別の実施例の何れか又は全てを、本明細書及び特許請求の範囲を通して記載された他の代替的な実施例と組み合わせて使用し得る。
【００９１】
例えば、図８は、単純化されたコンピューティング装置１０を示す概略システム図を示す。前述のコンピューティング装置は通常、限定列挙でないが、パソコン、サーバ・コンピュータ、ハンドヘルド・コンピューティング装置、ラップトップ又はモバイル・コンピュータ、携帯電話機及びＰＤＡなどの通信装置、マルチプロセッサ・システム、マイクロプロセッサベースのシステム、セット・トップ・ボックス、プログラマブル家電機器、ネットワークＰＣ、ミニコンピュータ、汎用コンピュータ、オーディオ又はビデオ・メディア・プレイヤ等を含む少なくとも一部の最小限のコンピューティング機能を有する装置において存在し得る。
【００９２】
本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法の実施例を装置が実現することを可能にするために、装置は、基本コンピューティング動作を可能にするために十分なコンピューティング機能及びシステム・メモリを有するべきである。特に、図８に示すように、コンピューティング機能は一般に、１つ又は複数の処理装置１２によって示され、更に、１つ又は複数のＧＰＵ１４を含み得、一方又は両方がシステム・メモリ１６と通信する。一般的なコンピューティング装置の処理装置１２は、ＤＳＰ、ＶＬＩＷなどの専用マイクロプロセッサ、若しくは他のマイクロコントローラであり得、又は、マルチコアＣＰＵ内の専用ＧＰＵベースのコアを含む１つ又は複数の処理コアを有する通常のＣＰＵであり得る。
【００９３】
更に、図８の単純化されたコンピューティング装置は更に、例えば通信インタフェース１８などの他の構成部分も含み得る。図８の単純化されたコンピューティング装置は更に、１つ又は複数の通常のコンピュータ入力装置２０（例えば、ポインティング・デバイス、オーディオ入力装置、ビデオ入力装置、ハプティック入力装置、有線又は無線のデータ伝送を受信するための装置等）を含み得る。図８の単純化されたコンピューティング装置は更に、例えば１つ又は複数の通常の表示装置２４及び他のコンピュータ出力装置２２（例えば、オーディオ出力装置、ビデオ出力装置、有線又は無線のデータ伝送を伝送するための装置等）などの他の任意的な構成部分も含み得る。汎用コンピュータ用の通常の通信インタフェース１８、入力装置２０、出力装置２２、及び記憶装置２６は当業者によく知られており、ここで詳細に説明しない。
【００９４】
図８の単純化されたコンピューティング装置は更に、種々のコンピュータ読み取り可能な媒体を含み得る。コンピュータ読み取り可能な媒体は、記憶装置２６を介してコンピュータ１０によってアクセス可能な何れかの利用可能な媒体であり得、コンピュータ読み取り可能な命令又はコンピュータ実行可能な命令、データ構造、プログラム・モジュール、又は他のデータなどの情報の記憶のために、着脱可能であり（２８）、かつ／又は着脱可能でない（３０）揮発性及び不揮発性の媒体を含む。例として、かつ、限定列挙でないが、コンピュータ読み取り可能な媒体はコンピュータ記憶媒体及び通信媒体を含み得る。コンピュータ記憶媒体は、限定列挙でないが、ＤＶＤ、ＣＤ、フロッピー（登録商標）・ディスク、テープ・ドライブ、ハード・ドライブ、光学ドライブ、ソリッド・ステート・メモリ装置、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリ又は他のメモリ技術、磁気カセット、磁気テープ、磁気ディスク記憶装置、若しくは他の磁気記憶装置、又は、所望の情報を記憶するために使用することが可能であり、１つ又は複数のコンピューティング装置によってアクセスすることが可能な何れかの他の装置を含む。
【００９５】
コンピュータ読み取り可能な命令又はコンピュータ実行可能な命令、データ構造、プログラム・モジュール等などの情報の保持は、更に、１つ又は複数の変調データ信号若しくは搬送波を符号化するための種々の上記通信媒体の何れか、又は他の伝送機構の通信プロトコルを使用することによって実現することが可能であり、何れかの有線又は無線の情報配信機構を含む。「変調データ信号」又は「搬送波」の語は一般に、信号内の情報を符号化するような態様でその特性の１つ又は複数が設定又は変更された信号を表す。例えば、通信媒体は、１つ又は複数の変調データ信号を搬送する有線ネットワーク又は直接有線接続などの有線媒体、並びに、１つ又は複数の変調データ信号又は搬送波を送信し、かつ／又は受信するための、音響、ＲＦ、赤外線、レーザ、及び他の無線媒体などの無線媒体を含む。上記の何れかの組み合わせも、通信媒体の範囲内に含まれるべきである。
【００９６】
更に、本明細書及び特許請求の範囲記載の種々の頭部姿勢トラッキング手法の実施例の一部又は全部を実施するソフトウェア、プログラム、及び／又はコンピュータ・プログラム・プロダクトは、コンピュータ実行可能な命令又は他のデータ構造の形態における通信媒体、及びコンピュータ又はマシン読み取り可能な媒体若しくは記憶装置の何れかの組み合わせにより、記憶し、受信し、送信し、又は読み取り得る。
【００９７】
最後に、本明細書及び特許請求の範囲記載の頭部姿勢トラッキング手法は、コンピューティング装置によって実行されている、プログラム・モジュールなどのコンピュータ実行可能な命令の一般的なコンテキストにおいて更に説明し得る。一般に、プログラム・モジュールは、特定のタスクを行い、又は特定の抽象データ・タイプを実現するルーチン、プログラム、オブジェクト、構成部分、及びデータ構造等を含む。本明細書及び特許請求の範囲記載の実施例は更に、タスクが１つ又は複数の遠隔処理装置によって行われる分散コンピューティング環境において、又は、１つ若しくは複数の通信ネットワークを介して連結された１つ又は複数の装置のクラウド内で実施し得る。分散コンピューティング環境では、プログラム・モジュールは、媒体記憶装置を含む局所及び遠隔のコンピュータ記憶媒体に配置し得る。更に、上記命令は、プロセッサを含んでいてもいなくてもよいハードウェア論理回路として部分的に、又は全体を実現し得る。
【００９８】
４．０  他の実施例
更に別の例示的なハードウェア・システム実現形態では、深度センサ装置が慣性センサ一式とともに使用されるが、カラー・カメラは存在しない。前述の実現形態は、最初の入力深度フレームから、最後に入力された深度フレームへの点の平行移動及び回転を規定する変換行列を計算するための反復最近点（ＩＣＰ）手順及び深度センサを使用する。その場合、前述の深度フレームベースの変換行列が、カラー・ビデオ・カメラ、深度センサ、及び慣性センサを使用した上述の例示的なシステムにおいてカラー画像フレームを使用して推定された上述の最後の画像ベースの変換行列にとって代わることになる。よって、深度フレームベースの変換行列を、最後の慣性センサ・ベースの変換行列と合併させて、最初の入力慣性センサ・フレームから、最後に入力された慣性センサ・フレームへの点の平行移動及び回転を規定する単一の結合変換行列を生成し、次いで、結合変換行列を、最初の入力慣性センサ・フレームに関連付けられた先行して求められた頭部姿勢の位置及び向きに適用して、現在の頭部姿勢の位置及び向きを識別する。
【００９９】
更に、本明細書及び特許請求の範囲を通じて、上記実施例の何れか又は全部を、何れの所望の組み合わせでも使用して、更なる混合実施例を形成し得る。更に、本願の主題は、構造的な特徴及び／又は方法論的な動作に特有の文言で記載しているが、特許請求の範囲記載の本願の主題は、記載された特定の特徴又は動作に必ずしも制限されない。むしろ、上記特定の特徴及び動作は、本特許請求の範囲記載の発明を実現する例示的な形態として開示している。
【図１】
2015513662.tif 000025
【図２】
2015513662.tif 000026
【図３】
2015513662.tif 000027
【図４Ａ】
2015513662.tif 000028
【図４Ｂ】
2015513662.tif 000029
【図４Ｃ】
2015513662.tif 000030
【図４Ｄ】
2015513662.tif 000031
【図５】
2015513662.tif 000032
【図６】
2015513662.tif 000033
【図７Ａ】
2015513662.tif 000034
【図７Ｂ】
2015513662.tif 000035
【図７Ｃ】
2015513662.tif 000036
【図７Ｄ】
2015513662.tif 000037
【図７Ｅ】
2015513662.tif 000038
【図８】
2015513662.tif 000039
【国際調査報告】
2015513662.tif 000040
2015513662.tif 000041
2015513662.tif 000042
2015513662.tif 000043
2015513662.tif 000044
2015513662.tif 000045