(57)【要約】  情報処理装置（１００）は、第一のセンサにより取得された第一の距離画像から、被写体を構成する第一の点群を抽出する。情報処理装置（１００）は、第二のセンサにより取得された第二の距離画像から、被写体を構成する第二の点群を抽出する。情報処理装置（１００）は、第一の点群を第一の並進座標だけ並進させた第一の並進点群を生成する。情報処理装置（１００）は、第二の点群を第二の並進座標だけ並進させた第二の並進点群を生成する。情報処理装置（１００）は、第一の並進点群と、第二の並進点群とに基づき、回転パラメータおよび並進パラメータを算出する。
2019087404.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、
前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出し、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、
前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成し、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、
前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する
処理を実行することを特徴とする算出方法。
【請求項２】
前記第一の並進点群を生成する処理は、前記第一の点群の平均座標を前記第一の並進座標として算出し、前記第二の並進点群を生成する処理は、前記第二の点群の平均座標を前記第二の並進座標として算出することを特徴とする請求項１に記載の算出方法。
【請求項３】
前記第一の距離画像および前記第二の距離画像からエッジノイズを除去する処理を更に実行し、前記第一の点群を抽出する処理は、エッジノイズの除去された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、前記第二の点群を抽出する処理は、エッジノイズの除去された第二の距離画像から、前記被写体を構成する第二の点群を抽出することを特徴とする請求項１または２に記載の算出方法。
【請求項４】
前記第一の点群を抽出する処理は、前記第一のセンサにより異なる時刻において取得された複数の第一の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第一の点群とし、前記第二の点群を抽出する処理は、前記第二のセンサにより異なる時刻において取得された複数の第二の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第二の点群とすることを特徴とする請求項１に記載の算出方法。
【請求項５】
前記回転パラメータおよび前記並進パラメータは、前記第一のセンサで新たに取得された新たな第一の距離画像から抽出された、新たな第一の点群に対して適用されるとともに、前記第二のセンサにより新たに取得された新たな第二の距離画像から抽出された、新たな第二の点群に対して適用され、
前記回転パラメータおよび前記並進パラメータが適用された前記新たな第一の点群と前記新たな第二の点群は、３次元空間における被写体を構成することを特徴とする請求項１に記載の算出方法。
【請求項６】
コンピュータに、
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、
前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出し、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、
前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成し、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、
前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する
処理を実行することを特徴とする算出プログラム。
【請求項７】
前記第一の並進点群を生成する処理は、前記第一の点群の平均座標を前記第一の並進座標として算出し、前記第二の並進点群を生成する処理は、前記第二の点群の平均座標を前記第二の並進座標として算出することを特徴とする請求項６に記載の算出プログラム。
【請求項８】
前記第一の距離画像および前記第二の距離画像からエッジノイズを除去する処理を更に実行し、前記第一の点群を抽出する処理は、エッジノイズの除去された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、前記第二の点群を抽出する処理は、エッジノイズの除去された第二の距離画像から、前記被写体を構成する第二の点群を抽出することを特徴とする請求項６または７に記載の算出プログラム。
【請求項９】
前記第一の点群を抽出する処理は、前記第一のセンサにより異なる時刻において取得された複数の第一の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第一の点群とし、前記第二の点群を抽出する処理は、前記第二のセンサにより異なる時刻において取得された複数の第二の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第二の点群とすることを特徴とする請求項６に記載の算出プログラム。
【請求項１０】
前記回転パラメータおよび前記並進パラメータは、前記第一のセンサで新たに取得された新たな第一の距離画像から抽出された、新たな第一の点群に対して適用されるとともに、前記第二のセンサにより新たに取得された新たな第二の距離画像から抽出された、新たな第二の点群に対して適用され、
前記回転パラメータおよび前記並進パラメータが適用された前記新たな第一の点群と前記新たな第二の点群は、３次元空間における被写体を構成することを特徴とする請求項６に記載の算出プログラム。
【請求項１１】
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出する抽出部と、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成する並進部と、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する位置合わせ部と
を有することを特徴とする情報処理装置。
【請求項１２】
前記並進部は、前記第一の点群の平均座標を前記第一の並進座標として算出し、前記第二の点群の平均座標を前記第二の並進座標として算出することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記第一の距離画像および前記第二の距離画像からエッジノイズを除去するノイズ除去部を更に有し、前記抽出部は、エッジノイズの除去された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、エッジノイズの除去された第二の距離画像から、前記被写体を構成する第二の点群を抽出することを特徴とする請求項１１または１２に記載の情報処理装置。
【請求項１４】
前記抽出部は、前記第一のセンサにより異なる時刻において取得された複数の第一の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第一の点群とし、前記第二のセンサにより異なる時刻において取得された複数の第二の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第二の点群とすることを特徴とする請求項１１に記載の情報処理装置。
【請求項１５】
前記回転パラメータおよび前記並進パラメータは、前記第一のセンサで新たに取得された新たな第一の距離画像から抽出された、新たな第一の点群に対して適用されるとともに、前記第二のセンサにより新たに取得された新たな第二の距離画像から抽出された、新たな第二の点群に対して適用され、
前記回転パラメータおよび前記並進パラメータが適用された前記新たな第一の点群と前記新たな第二の点群は、３次元空間における被写体を構成することを特徴とする請求項１１に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、算出方法等に関する。
【背景技術】
【０００２】
レーザセンサ等の距離測定装置を用いて、被写体の３次元点群を検出し、被写体の姿勢等を認識する技術がある。以下の説明では、被写体の３次元点群を検出するレーザセンサを単に「センサ」と表記する。【０００３】
１台のセンサを用いると、センサ側（一方向）から見た被写体の３次元点群を得ることができるが、センサの反対側から見た被写体の３次元点群を得ることができないため、被写体の姿勢等の認識精度が悪くなる場合があった。このため、複数のセンサを用い、複数の方向から見た被写体の３次元点群を得ることで、被写体の姿勢等の認識精度を向上させている。【０００４】
ここで、複数のセンサを用いて被写体の３次元点群を検出する場合には、各センサから検出した各３次元点群を位置合わせして、一つの３次元点群に統合する処理を行う。以下の説明では、各センサから検出した各３次元点群を位置合わせして、一つの３次元点群に統合する処理を「キャリブレーション」と表記する。【０００５】
キャリブレーションに関する従来技術として、ＩＣＰ（Iterative  Closest  Point）を用いた従来装置がある。この従来装置は、第１の３次元点群を並進、回転させつつ、第１の３次元点群の近傍点と、固定した第２の３次元点群の近傍点との距離が最小となる値を探索することで、第１の３次元点群と第２の３次元点群とを位置合わせするための、並進値、回転角を特定する。【０００６】
図３４および図３５は、ＩＣＰを用いる従来装置の処理手順の一例を示すフローチャートである。図３４および図３５に示す並進値（ＸＳ，ＹＳ，ＺＳ）は、第１の３次元点群に対応する並進値である。たとえば、ＸＳはｘ軸の並進値を示し、ＹＳはｙ軸の並進値を示し、ＺＳはｚ軸の並進値を示す。回転角（ＸＲ，ＹＲ，ＺＲ）は、第１の３次元点群に対応する回転角である。たとえば、ＸＲはｘ軸まわりの回転角（ロール）を示し、ＹＲはｙ軸まわりの回転角（ピッチ）を示し、ＺＲはｚ軸まわりの回転角（ヨー）を示す。【０００７】
図３４に示すように、従来装置は、ＸＳに並進Ｘ開始座標を設定する（ステップＳ１０）。従来装置は、ＸＳが並進Ｘ終了座標未満であるか否かを判定する（ステップＳ１１）。従来装置は、ＸＳが並進Ｘ終了座標未満でない場合には（ステップＳ１１，Ｎｏ）、結果を出力する（ステップＳ１２）。たとえば、ステップＳ１２において、従来装置は、結果として、第１の３次元点群の近傍点と、第２の３次元点群の近傍点との距離が最小となる、第１の３次元点群の並進値（ＸＳ、ＹＳ、ＺＳ）と、回転値（ＸＲ，ＹＲ，ＺＲ）とを出力する。なお、第２の３次元点群の並進値および回転値は、全てゼロとなる。【０００８】
従来装置は、ＸＳが並進Ｘ終了座標未満である場合には（ステップＳ１１，Ｙｅｓ）、ＹＳに並進Ｙ開始座標を設定する（ステップＳ１３）。従来装置は、ＹＳが並進Ｙ終了座標未満であるか否かを判定する（ステップＳ１４）。従来装置は、ＹＳが並進Ｙ終了座標未満でない場合には（ステップＳ１４，Ｎｏ）、ＸＳに座標増分を加算した値によって、ＸＳを更新し（ステップＳ１５）、ステップＳ１１に移行する。【０００９】
従来装置は、ＹＳが並進Ｙ座標終了座標未満である場合には（ステップＳ１４，Ｙｅｓ）、ＺＳに並進Ｚ開始座標を設定する（ステップＳ１６）。従来装置は、ＺＳが並進Ｚ終了座標未満であるか否かを判定する（ステップＳ１７）。従来装置は、ＺＳが並進Ｚ終了座標未満でない場合には（ステップＳ１７，Ｎｏ）、ＹＳに座標増分を加算した値によって、ＹＳを更新し（ステップＳ１８）、ステップＳ１４に移行する。【００１０】
従来装置は、ＺＳが並進Ｚ終了座標未満である場合には（ステップＳ１７，Ｙｅｓ）、第１の３次元点群をＸＳ、ＹＳ、ＺＳで並進させ（ステップＳ１９）、図３５のステップＳ２０に移行する。【００１１】
従来装置は、ＸＲに回転Ｘ開始角度を設定する（ステップＳ２０）。従来装置は、ＸＲが回転Ｘ終了角度未満であるか否かを判定する（ステップＳ２１）。従来装置は、ＸＲが回転Ｘ終了角度未満でない場合には（ステップＳ２１，Ｎｏ）、ＺＳに座標増分を加算した値によって、ＺＳを更新し（ステップＳ２２）、図３４のステップＳ１７に移行する。【００１２】
従来装置は、ＸＲが回転Ｘ終了角度未満である場合には（ステップＳ２１，Ｙｅｓ）、ＹＲに回転Ｙ開始角度を設定する（ステップＳ２３）。従来装置は、ＹＲが回転Ｙ終了角度未満であるか否かを判定する（ステップＳ２４）。従来装置は、ＹＲが回転Ｙ終了角度未満でない場合には（ステップＳ２４，Ｎｏ）、ＸＲに角度増分を加算した値によって、ＸＲを更新し（ステップＳ２５）、ステップＳ２１に移行する。【００１３】
従来装置は、ＹＲが回転Ｙ終了角度未満である場合には（ステップＳ２４，Ｙｅｓ）、ＺＲに回転Ｚ開始角度を設定する（ステップＳ２６）。従来装置は、ＺＲが回転Ｚ終了角度未満であるか否かを判定する（ステップＳ２７）。従来装置は、ＺＲが回転Ｚ終了角度未満でない場合には（ステップＳ２７，Ｎｏ）、ＹＲに角度増分を加算した値によって、ＹＲを更新し（ステップＳ２８）、ステップＳ２４に移行する。【００１４】
従来装置は、ＺＲが回転Ｚ終了角度未満である場合には（ステップＳ２７，Ｙｅｓ）、第１の３次元点群をＸＲ、ＹＲ、ＺＲで回転させる（ステップＳ２９）。従来装置は、並進、回転処理後の第１の３次元点群と、第２の３次元点群との近傍点間の距離を算出する（ステップＳ３０）。従来装置は、ＺＲに角度増分を加算した値によって、ＺＲを更新し（ステップＳ３１）、ステップＳ２７に移行する。【００１５】
なお、ＩＣＰに基づく従来技術には、３次元点群のうち、３次元形状モデルの幾何特徴上の点を選択し、選択した点について、図３４および図３５で示した処理を行うことで、処理量を軽減するものもある。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２０１１−１７５４７７号公報
【特許文献２】特開２０１３−５８１０６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
しかしながら、上述した従来技術では、位置合わせのための並進パラメータ算出の処理負荷を軽減することができないという問題がある。【００１８】
なお、上述した従来技術では、３次元形状モデルの幾何特徴上の点を選択することで、位置合わせを行う対象の数を少なくすることができるものの、並進および回転させながら各点群の位置合わせを行うので、処理負荷が大きい。【００１９】
１つの側面では、本発明は、位置合わせのための並進パラメータ算出の処理負荷を軽減することができる算出方法、算出プログラムおよび情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００２０】
第１の案では、コンピュータは、次の処理を実行する。コンピュータは、被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、被写体を構成する第一の点群を抽出する。コンピュータは、複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、被写体を構成する第二の点群を抽出する。コンピュータは、第一のセンサの位置を被写体の位置に並進させる第一の並進座標と、第一の点群とに基づき、第一の点群を第一の並進座標だけ並進させた第一の並進点群を生成する。コンピュータは、第二のセンサの位置を被写体の位置に並進させる第二の並進座標と、第二の点群とに基づき、第二の点群を第二の並進座標だけ並進させた第二の並進点群を生成する。コンピュータは、第二の並進点群と、第二の並進点群とに基づき、第一の点群と第二の点群との回転方向の位置合わせのための回転パラメータを算出する。コンピュータは、第一の並進座標と、第二の並進座標とに基づき、第一の点群と第二の点群との並進方向の位置合わせのための並進パラメータを算出する。
【発明の効果】
【００２１】
位置合わせのための並進パラメータ算出の処理負荷を軽減することができる。
【図面の簡単な説明】
【００２２】
【図１】図１は、本実施例１に係るシステムの構成を示す図である。
【図２】図２は、本実施例１に係るセンサの設置状況の一例を示す図である。
【図３】図３は、センサ１０ａが測定した第一背景フレームの一例を示す図である。
【図４】図４は、センサ１０ａが測定した第一距離画像フレームの一例を示す図である。
【図５】図５は、センサ１０ｂが測定した第二背景フレームおよび第二距離画像フレームの一例を示す図である。
【図６】図６は、本実施例１に係る情報処理装置の処理の一例を説明するための図（１）である。
【図７】図７は、本実施例１に係る情報処理装置の処理の一例を説明するための図（２）である。
【図８】図８は、本実施例１に係る情報処理装置の構成を示す機能ブロック図である。
【図９】図９は、本実施例１に係るバッファのデータ構造の一例を示す図である。
【図１０】図１０は、本実施例１に係る点群テーブルのデータ構造の一例を示す図である。
【図１１】図１１は、点群の座標情報の一例を説明するための図である。
【図１２】図１２は、本実施例１に係るパラメータのデータ構造の一例を示す図である。
【図１３】図１３は、本実施例１に係る抽出部の処理を説明するための図である。
【図１４】図１４は、点群１０Ａの一例を示す図である。
【図１５】図１５は、点群１０Ｂの一例を示す図である。
【図１６】図１６は、点群１０Ａを並進させる処理を説明するための図である。
【図１７】図１７は、点群１０Ｂを並進させる処理を説明するための図である。
【図１８】図１８は、並進前の点群と並進後の点群とを説明するための図である。
【図１９】図１９は、本実施例１に係る位置合わせ部の処理を説明するための図である。
【図２０】図２０は、回転方向の位置合わせ完了前と完了後の点群の一例を示す図である。
【図２１】図２１は、本実施例１に係る情報処理装置の処理手順を示すフローチャートである。
【図２２】図２２は、採点装置の構成を示す機能ブロック図である。
【図２３】図２３は、採点画面の一例を示す図である。
【図２４】図２４は、採点装置の位置合わせ部の処理手順を示すフローチャートである。
【図２５】図２５は、本実施例２に係る情報処理装置の構成を示す機能ブロック図である。
【図２６】図２６は、本実施例２に係るノイズ除去部の処理を説明するための図である。
【図２７】図２７は、エッジノイズ除去前後の点群１０Ａの一例を示す図である。
【図２８】図２８は、エッジノイズ除去前後の点群１０Ｂの一例を示す図である。
【図２９】図２９は、競技を行う選手の姿勢の特徴の一例を説明するための図である。
【図３０】図３０は、実施例３に係る情報処理装置の処理を説明するための図である。
【図３１】図３１は、本実施例３に係る情報処理装置の構成を示す機能ブロック図である。
【図３２】図３２は、本実施例３に係る情報処理装置の処理手順を示すフローチャートである。
【図３３】図３３は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【図３４】図３４は、ＩＣＰを用いる従来装置の処理手順の一例を示すフローチャート（１）である。
【図３５】図３５は、ＩＣＰを用いる従来装置の処理手順の一例を示すフローチャート（２）である。
【発明を実施するための形態】
【００２３】
以下に、本願の開示する算出方法、算出プログラムおよび情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００２４】
図１は、本実施例１に係るシステムの構成を示す図である。図１に示すように、センサ１０ａおよびセンサ１０ｂが、被写体１の前後に配置されている。センサ１０ａ及びセンサ１０ｂは、情報処理装置１００に接続される。本実施例１では一例として、被写体１を人物として説明するが、立体物であれば、人物以外を被写体１として用いてもよい。【００２５】
センサ１０ａは、被写体１を構成する点群とセンサ１０ａとの距離を測定する測定装置である。以下の説明では、ｔｎ時刻において、センサ１０ａが測定した被写体１を構成する点群とセンサ１０ａとの距離の情報を「第一距離画像フレーム」と表記する。センサ１０ａは、所定時刻毎に、上記の距離を測定する処理を繰り返し実行し、第一距離画像フレームを、情報処理装置１００に出力する。【００２６】
センサ１０ａは、被写体１が存在しない間に測定した被写体１の距離情報を含まない第一距離画像フレームを、情報処理装置１００に出力する。被写体１の距離情報を含まない第一距離画像フレームを「第一背景フレーム」と表記する。【００２７】
センサ１０ｂは、被写体１を構成する点群とセンサ１０ｂとの距離を測定する測定装置である。以下の説明では、ｔｎ時刻において、センサ１０ｂが測定した被写体１を構成する点群とセンサ１０ｂとの距離の情報を、第二距離画像フレームと表記する。センサ１０ａは、所定時刻毎に、上記の距離を測定する処理を繰り返し実行し、第二距離画像フレームを、情報処理装置１００に出力する。【００２８】
センサ１０ｂは、被写体１が存在しない間に測定した被写体１の距離情報を含まない第二距離画像フレームを、情報処理装置１００に出力する。被写体１の距離情報を含まない第二距離画像フレームを「第二背景フレーム」と表記する。【００２９】
図２は、本実施例１に係るセンサの設置状況の一例を示す図である。図２に示す例では、被写体１の進行方向を矢印１ａに示す方向とする。センサ１０ａは被写体１の進行方向に配置される。センサ１０ｂは被写体１の進行方向とは逆方向に配置される。【００３０】
図３は、センサ１０ａが測定した第一背景フレームの一例を示す図である。図３では一例として、第一背景フレーム１１ａと、カメラ（センサ１０ａと同じ方向を撮影するカメラ）で撮影された可視画像１２ａとを対応づけて示す。第一背景フレーム１１ａにおいて、暗い領域ほど、センサ１０ａからの距離が大きいことを示す。【００３１】
図４は、センサ１０ａが測定した第一距離画像フレームの一例を示す図である。図４では一例として、第一距離画像フレーム２１ａと、カメラ（センサ１０ａと同じ方向を撮影するカメラ）で撮影された可視画像２２ａとを対応づけて示す。第一距離画像フレームにおいて、暗い領域ほど、センサ１０ａからの距離が大きいことを示す。【００３２】
図５は、センサ１０ｂが測定した第二背景フレームおよび第二距離画像フレームの一例を示す図である。図５に示すように、第二背景フレーム１１ｂおよび第二距離画像フレーム２１ｂにおいて、暗い領域ほど、センサ１０ｂからの距離が大きいことを示す。【００３３】
図１の説明に戻る。情報処理装置１００は、センサ１０ａが測定する被写体１の点群の位置と、センサ１０ｂが測定する被写体１の点群の位置との位置合わせを行う装置である。図６および図７は、本実施例１に係る情報処理装置の処理の一例を説明するための図である。【００３４】
図６の説明を行う。情報処理装置１００は、センサ１０ａが測定した第一距離画像フレームを基にして、被写体１の平均座標１Ａを算出する。情報処理装置１００は、センサ１０ｂが測定した第二距離画像フレームを基にして、被写体１の平均座標１Ｂを算出する。なお、センサ１０ａの原点座標を原点座標１５ａとし、センサ１０ｂの原点座標を原点座標１５ｂとする。【００３５】
図７の説明に移行する。情報処理装置１００は、原点座標１５ａを平均座標１Ａに移動させ、かつ、原点座標１５ｂを平均座標１Ｂに移動させることで、並進方向の位置合わせを完了する。原点座標１５ａを平均座標１Ａに移動させることは、センサ１０ａが測定した被写体１の点群の座標を、平均座標１Ａ分逆に並進することに対応する。原点座標１５ｂを平均座標１Ｂに移動させることは、センサ１０ｂが測定した被写体１の点群の座標を、平均座標１Ｂ分に並進することに対応する。【００３６】
図６、図７で説明したように、情報処理装置１００は、並進方向の位置合わせを行う処理を１回のみ行う。このため、情報処理装置１００は、従来装置と比較して、位置合わせのための並進パラメータ算出の処理負荷を軽減することができる。たとえば、従来装置は、図３４のステップＳ１０〜Ｓ２２で説明したように、ｘ軸方向の並進値、ｙ軸方向の並進値、ｚ軸方向の並進値を変化させながら、総当たりの検索を行うため、並進パラメータ算出の処理負荷が大きい。【００３７】
情報処理装置１００は、並進パラメータを算出した後は、回転角を変化させつつ、各点群の近傍点の距離が最小となる角度パラメータを算出する。【００３８】
図８は、本実施例１に係る情報処理装置の構成を示す機能ブロック図である。図８に示すように、情報処理装置１００は、インタフェース部１１０と、入力部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを有する。【００３９】
インタフェース部１１０は、センサ１０ａおよびセンサ１０ｂから情報を受信する通信装置である。インタフェース部１１０は、センサ１０ａから第一背景フレームを受信し、センサ１０ｂから第二背景フレームを受信する。インタフェース部１１０は、センサ１０ａから時系列で第一距離画像フレームを受信する。インタフェース部１１０は、センサ１０ｂから時系列で第二距離画像フレームを受信する。インタフェース部１１０は、第一背景フレーム、第二背景フレーム、各第一距離画像フレーム、各第二距離画像フレームを、制御部１５０に出力する。【００４０】
また、インタフェース部１１０は、後述する採点装置に接続される。【００４１】
入力部１２０は、各種の情報を情報処理装置１００に入力するための入力装置である。たとえば、入力部１２０は、キーボードやマウス、タッチパネル等に対応する。【００４２】
表示部１３０は、制御部１５０から出力される各種の情報を表示する表示装置である。たとえば、表示部１３０は、液晶ディスプレイ、タッチパネル等に対応する。【００４３】
記憶部１４０は、バッファ１４０ａ、点群テーブル１４０ｂ、パラメータ１４０ｃを有する。記憶部１４０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。【００４４】
バッファ１４０ａは、センサ１０ａから受信する第一背景フレーム、時刻毎の複数の第一距離画像フレームを格納する。また、バッファ１４０ａは、センサ１０ｂから受信する第二背景フレーム、時刻毎の複数の第二距離画像フレームを格納する。【００４５】
図９は、本実施例１に係るバッファのデータ構造の一例を示す図である。図９に示すように、このバッファ１４０ａは、テーブル１４１ａと、テーブル１４１ｂと、第一背景フレーム１１ａと、第二背景フレーム１１ｂとを有する。【００４６】
テーブル１４１ａは、センサ１０ａから受信する各第一距離画像フレームを格納するテーブルである。図９に示すように、テーブル１４１ａは、時刻と第一距離画像フレームとを対応づける。【００４７】
テーブル１４１ｂは、センサ１０ｂから受信する各第二距離画像フレームを格納するテーブルである。図９に示すように、テーブル１４１ｂは、時刻と第二距離画像フレームとを対応づける。【００４８】
第一背景フレーム１１ａは、被写体１不在時に、センサ１０ａにより測定された第一距離画像フレームである。第二背景フレーム１１ｂは、被写体１不在時に、センサ１０ｂにより測定された第二距離画像フレームである。【００４９】
点群テーブル１４０ｂは、センサ１０ａにより測定された被写体１上の点群の座標と、センサ１０ｂにより測定された被写体１上の点群の座標とを格納するテーブルである。図１０は、本実施例１に係る点群テーブルのデータ構造の一例を示す図である。図１０に示すように、この点群テーブル１４０ｂは、テーブル１４２ａと、テーブル１４２ｂとを有する。【００５０】
テーブル１４２ａは、センサ１０ａにより測定された被写体１上の点群の座標を保持するテーブルである。以下の説明では、センサ１０ａにより測定された被写体１上の点群を、点群１０Ａと表記する。図１０に示すように、テーブル１４２ａは、時刻と、点群１０Ａの座標情報とを対応づける。時刻は、該当する点群１０Ａを測定した時刻を示すものである。点群１０Ａの座標情報は、点群１０Ａに含まれる各点の３次元座標を示すものである。【００５１】
テーブル１４２ｂは、センサ１０ｂにより測定された被写体１上の点群の座標を保持するテーブルである。以下の説明では、センサ１０ｂにより測定された被写体１上の点群を、点群１０Ｂと表記する。図１０に示すように、テーブル１４２ｂは、時刻と、点群１０Ｂの座標情報とを対応づける。時刻は、該当する点群１０Ｂを測定した時刻を示すものである。点群１０Ｂの座標情報は、点群１０Ｂに含まれる各点の３次元座標を示すものである。【００５２】
図１１は、点群の座標情報の一例を説明するための図である。図１１では一例として、点群１０Ａの座標情報の一例について説明する。点群１０Ｂの座標情報のデータ構造は、点群１０Ａの座標情報のデータ構造と同様であるため、説明を省略する。また、図１１に示す点群１０Ａの座標は、ある時刻に対応する点群１０Ａの座標を示す。他の時刻に対応する点群１０Ａの座標に関する説明は省略する。【００５３】
図１１に示すように、点群１０Ａの座標は、点識別情報と、座標情報とを対応づける。点識別情報は、点群１０Ａに含まれる点を一意に識別する情報である。座標は、点群の３次元座標を示すものである。【００５４】
図８の説明に戻る。パラメータ１４０ｃは、点群１０Ａおよび点群１０Ｂの位置合わせの結果となる並進パラメータと、回転パラメータとを有する。図１２は、本実施例１に係るパラメータのデータ構造の一例を示す図である。図１２に示すように、このパラメータ１４０ｃは、テーブル１４３ａと、テーブル１４３ｂとを有する。【００５５】
テーブル１４３ａは、センサ１０ａの並進パラメータと、回転パラメータとを保持するテーブルである。センサ１０ａの並進パラメータは、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離を含む。センサ１０ａの回転パラメータは、Ｘ回転角度、Ｙ回転角度、Ｚ回転角度を有する。【００５６】
テーブル１４３ｂは、センサ１０ｂの並進パラメータと、回転パラメータとを保持するテーブルである。センサ１０ｂの並進パラメータは、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離を含む。センサ１０ｂの回転パラメータは、Ｘ回転角度、Ｙ回転角度、Ｚ回転角度を有する。【００５７】
たとえば、点群１０Ａの座標を、テーブル１４３ａの並進パラメータおよび回転パラメータで補正し、点群１０Ｂの座標を、テーブル１４３ｂの並進パラメータおよび回転パラメータで補正することで、点群１０Ａ、１０Ｂの座標が一致する。【００５８】
制御部１５０は、取得部１５０ａと、抽出部１５０ｂと、並進部１５０ｃと、位置合わせ部１５０ｄと、出力部１５０ｅとを有する。制御部１５０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などによって実現できる。また、制御部１５０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。【００５９】
取得部１５０ａは、センサ１０ａ，１０ｂから情報を取得する処理部である。たとえば、取得部１５０ａは、センサ１０ａから取得する時系列の第一距離画像フレームを、バッファ１４０ａのテーブル１４１ａに格納する。取得部１５０ａは、センサ１０ａから取得する第一背景フレーム１１ａをバッファ１４０ａに格納する。取得部１５０ａは、センサ１０ｂから取得する時系列の第二距離画像フレームを、バッファ１４０ａのテーブル１４１ｂに格納する。取得部１５０ａは、センサ１０ｂから取得する第二背景フレーム１１ｂをバッファ１４０ａに格納する。【００６０】
抽出部１５０ｂは、バッファ１４０ａに格納された第一距離画像フレームおよび第二距離画像フレームから、被写体に対応する点群１０Ａ、点群１０Ｂを抽出する処理部である。抽出部１５０ｂは、点群１０Ａ、点群１０Ｂの情報を、点群テーブル１４０ｂに格納する。【００６１】
抽出部１５０ｂが、点群１０Ａを抽出する処理の一例について説明する。図１３は、本実施例１に係る抽出部の処理を説明するための図である。抽出部１５０ｂは、バッファ１４０ａのテーブル１４１ａから、時刻ｔｎの第一距離画像フレーム２１ａを取得する。抽出部１５０ｂは、バッファ１４０ａから、第一背景フレーム１１ａを取得する。抽出部１５０ｂは、第一距離画像フレーム２１ａと第一背景フレーム１１ａとの差分から第一差分フレーム３１ａを生成する。第一差分フレーム３１ａには、被写体１の領域３２ａが残る。【００６２】
抽出部１５０ｂは、第一差分フレーム３１ａから、図１４に示すような点群１０Ａを抽出する。図１４は、点群１０Ａの一例を示す図である。たとえば、抽出部１５０ｂは、第一差分フレーム３１ａの領域３２ａ上の点の距離情報と、センサ１０ａのパラメータとを基にして、点の３次元座標を算出する。抽出部１５０ｂは、領域３２ａの各点について、上記処理を繰り返し実行することで、被写体１を構成する点群の３次元座標を算出し、点群１０Ａを抽出する。抽出部１５０ｂは、時刻ｔｎの点群１０Ａの座標情報を、テーブル１４２ａに格納する。抽出部１５０ｂは、他の時刻の点群１０Ａの座標情報も同様にして抽出し、テーブル１４２ａに格納する。【００６３】
抽出部１５０ｂが、点群１０Ｂを抽出する処理の一例について説明する。抽出部１５０ｂは、バッファ１４０ａのテーブル１４１ｂから、時刻ｔｎの第二距離画像フレーム２１ｂを取得する。抽出部１５０ｂは、バッファ１４０ａから、第二背景フレーム１１ｂを取得する。抽出部１５０ｂは、第二距離画像フレーム２１ｂと第二背景フレーム１１ｂとの差分から第二差分フレーム３１ｂを生成する。第二差分フレーム３１ｂには、被写体１の領域３２ｂが残る。第二差分フレーム３１ｂ、領域３２ｂの図示を省略する。【００６４】
抽出部１５０ｂは、第一差分フレーム３１ａから、図１５に示すような点群１０Ｂを抽出する。図１５は、点群１０Ｂの一例を示す図である。たとえば、抽出部１５０ｂは、第二差分フレーム３１ｂの領域３２ｂ上の点の距離情報と、センサ１０ｂのパラメータとを基にして、点の３次元座標を算出する。抽出部１５０ｂは、領域３２ｂの各点について、上記処理を繰り返し実行することで、被写体１を構成する点群の３次元座標を算出し、点群１０Ｂを抽出する。抽出部１５０ｂは、時刻ｔｎの点群１０Ｂの座標情報を、テーブル１４２ｂに格納する。抽出部１５０ｂは、他の時刻の点群１０Ｂの座標情報も同様にして抽出し、テーブル１４２ｂに格納する。【００６５】
図８の説明に戻る。並進部１５０ｃは、センサ１０ａの原点座標を点群１０Ａの平均座標１Ａに移動させ、かつ、センサ１０ｂの原点座標を点群１０Ｂの平均座標１Ｂに移動させることで、並進方向の位置合わせを行う処理部である。並進部１５０ｃは、センサ１０ａに対応する並進パラメータを、テーブル１４３ａに格納する。並進部１５０ｃは、センサ１０ｂに対する並進パラメータを、テーブル１４３ｂに格納する。【００６６】
図１６は、点群１０Ａを並進させる処理を説明するための図である。図１６において、センサ１０ａの原点座標を原点座標１５ａとする。並進部１５０ｃは、テーブル１４２ａから、時刻ｔｎの点群１０Ａの座標情報を取得し、点群１０Ａの平均座標１Ａを算出する（ステップＳ１０）。【００６７】
続いて、並進部１５０ｃは、平均座標１Ａをセンサ１０ａの原点座標１５ａに移動させる（ステップＳ１１）。ここで、平均座標１Ａを、原点座標１５ａ方向に並進（移動）させる際の並進パラメータには、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離が含まれる。Ｘ並進距離は、ｘ軸方向の並進値を示す。Ｙ並進距離は、ｙ軸方向の並進値を示す。Ｚ並進距離は、ｚ軸方向の並進値を示す。たとえば、平均座標１Ａをセンサ１０ａの原点座標１５ａに移動させる際のＸ並進距離、Ｙ並進距離、Ｚ並進距離を、ＸＳａ、ＹＳａ、ＺＳａとする。並進部１５０ｃは、センサ１０ａに関する並進パラメータを、テーブル１４３ａに格納する。【００６８】
図１７は、点群１０Ｂを並進させる処理を説明するための図である。図１７において、センサ１０ｂの原点座標を原点座標１５ｂとする。並進部１５０ｃは、テーブル１４２ｂから、時刻ｔｎの点群１０Ｂの座標情報を取得し、点群１０Ｂの平均座標１Ｂを算出する（ステップＳ２０）。【００６９】
続いて、並進部１５０ｃは、平均座標１Ｂをセンサ１０ｂの原点座標１５ｂに移動させる（ステップＳ２１）。ここで、平均座標１Ｂを、原点座標１５ｂ方向に並進（移動）させる際の並進パラメータには、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離が含まれる。たとえば、平均座標１Ｂをセンサ１０ｂの原点座標１５ｂに移動させる際のＸ並進距離、Ｙ並進距離、Ｚ並進距離を、ＸＳｂ、ＹＳｂ、ＺＳｂとする。並進部１５０ｃは、センサ１０ｂに関する並進パラメータを、テーブル１４３ｂに格納する。【００７０】
並進部１５０ｃは、図１６のステップＳ１１で説明したように、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離だけ並進させた点群１０Ａの情報を位置合わせ部１５０ｄに出力する。並進部１５０ｃは、図１７のステップＳ２１で説明したように、Ｘ並進距離、Ｙ並進距離、Ｚ並進距離だけ並進させた点群１０Ｂの情報を位置合わせ部１５０ｄに出力する。【００７１】
図１８は、並進前の点群と並進後の点群とを説明するための図である。図１８のステップＳ３０では、並進前は、点群１０Ａおよび点群１０Ｂの並進方向が一致していない。ステップＳ３１に示すように、並進部１５０ｃが、点群１０Ａを原点座標１５ａに移動させ、点群１０Ｂを原点座標１５ｂに移動させることで、点群１０Ａ、点群１０Ｂの並進方向の位置合わせを完了させる。図１８において、矢印１ａは、センサ１０ａからみた、被写体１の向き（移動方向）である。矢印１ｂは、センサ１０ｂからみた、被写体１の向き（移動方向）である。【００７２】
位置合わせ部１５０ｄは、点群１０Ａと点群１０Ｂとを位置合わせのための回転パラメータを算出する処理部である。回転パラメータには、Ｘ回転角度、Ｙ回転角度、Ｚ回転角度が含まれる。たとえば、Ｘ回転角度は、ｘ軸まわりの回転角度（ロール）を示す。Ｙ回転角度は、ｙ軸まわりの回転角度（ピッチ）を示す。Ｚ回転角度は、ｚ軸まわりの回転角度（ヨー）を示す。なお、点群１０Ａおよび点群１０Ｂの並進方向の位置合わせは、並進部１５０ｃにより、完了しているものとする。【００７３】
位置合わせ部１５０ｄは、点群１０Ｂの回転を固定し、点群１０Ａを回転させながら、点群Ａと点群１０Ｂとの近傍点の距離が最小となる回転パラメータを求めることで、回転方向の位置合わせを行う。【００７４】
図１９は、本実施例１に係る位置合わせ部の処理を説明するための図である。図１９において、点群１０Ａに含まれる点を、点５０ａ，５１ａ，５２ａとする。点群１０Ｂに含まれる点を、点５０ｂ，５１ｂ，５２ｂとする。点５０ａの近傍点は、点５０ｂとなる。点５１ａの近傍点は、点５１ｂとなる。点５２ａの近傍点は、点５２ｂとなる。位置合わせ部１５０ｄは、近傍点となる点の組の距離を、点の組毎に合計した合計距離を算出する。【００７５】
図１９に示す例では、点５０ａと点５０ｂとの距離、点５１ａと点５１ｂとの距離、点５２ａと点５２ｂとの距離を合計した値が、合計距離となる。位置合わせ部１５０ｄは、回転パラメータを変化させながら、回転パラメータに対応する合計距離を算出する処理を繰り返し実行する。位置合わせ部１５０ｄは、合計距離が最小となる回転パラメータを求めることで、回転方向の位置合わせを行う。【００７６】
図２０は、回転方向の位置合わせ完了前と完了後の点群の一例を示す図である。ステップ４０において、点群１０Ａと点群１０Ｂは並進方向の位置合わせが完了しているが、回転方向の位置合わせが完了していない。ステップＳ４１において、位置合わせ部１５０ｄは、合計距離が最小となる回転パラメータにあわせて、点群１０Ａを回転させることで、点群１０Ａと点群１０Ｂとの位置合わせが完了する。【００７７】
位置合わせ部１５０ｄは、合計距離が最小となる回転パラメータ（センサ１０ａの回転パラメータ）を、テーブル１４３ａに格納する。また、位置合わせ部１５０ｄは、センサ１０ｂの回転パラメータを、テーブル１４３ｂに格納する。なお、点群１０Ｂの回転は固定したまま、位置合わせを行っているため、センサ１０ｂの回転パラメータ（Ｘ回転角度、Ｙ回転角度、Ｚ回転角度）は「０」となる。【００７８】
ところで、位置合わせ部１５０ｄは、並進部１５０ｃの代わりに並進パラメータを求めてもよい。たとえば、位置合わせ部１５０ｄは、並進前の点群１０Ａの平均座標１Ａと、センサ１０ａの原点座標１５ａとの差分を求めることで、センサ１０ａの並進パラメータを算出する。位置合わせ部１５０ｄは、並進前の点群１０Ｂの平均座標１Ｂと、センサ１０ｂの原点座標１５ｂとの差分を求めることで、センサ１０ｂの並進パラメータを算出する。【００７９】
出力部１５０ｅは、パラメータ１４０ｃを、採点装置に出力する処理部である。【００８０】
次に、本実施例１に係る情報処理装置１００の処理手順の一例について説明する。図２１は、本実施例１に係る情報処理装置の処理手順を示すフローチャートである。図２１に示すように、情報処理装置１００の取得部１５０ａは、センサ１０ａおよびセンサ１０ｂから、第一距離画像フレーム、第二距離画像フレームを取得する（ステップＳ１０１）。【００８１】
情報処理装置１００の抽出部１５０ｂは、被写体に対応する点群１０Ａ、１０Ｂを抽出する（ステップＳ１０２）。情報処理装置１００の並進部１５０ｃは、点群１０Ａの３次元座標の平均座標を算出する（ステップＳ１０３）。並進部１５０ｃは、点群１０Ａを平均座標分逆に並進させる（ステップＳ１０４）。【００８２】
並進部１５０ｃは、点群１０Ｂの３次元座標の平均座標を算出する（ステップＳ１０５）。並進部１５０ｃは、点群１０Ｂを平均座標分逆に並進させる（ステップＳ１０６）。【００８３】
情報処理装置１００の位置合わせ部１５０ｄは、ＸＲに回転Ｘ開始角度を設定する（ステップＳ１０７）。位置合わせ部１５０ｄは、ＸＲが回転Ｘ終了角度未満であるか否かを判定する（ステップＳ１０８）。位置合わせ部１５０ｄは、ＸＲが回転Ｘ終了角度未満でない場合には（ステップＳ１０８，Ｎｏ）、点群１０Ａ，１０Ｂの並進パラメータと回転パラメータとをパラメータ１４０ｃに格納する（ステップＳ１０９）。【００８４】
位置合わせ部１５０ｄは、ＸＲが回転Ｘ終了角度未満である場合には（ステップＳ１０８，Ｙｅｓ）、ＹＲに回転Ｙ開始角度を設定する（ステップＳ１１０）。位置合わせ部１５０ｄは、ＹＲが回転Ｙ終了角度未満であるか否かを判定する（ステップＳ１１１）。位置合わせ部１５０ｄは、ＹＲが回転Ｙ終了角度未満でない場合には（ステップＳ１１１，Ｎｏ）、ＸＲに角度増分を加算した値によって、ＸＲを更新し（ステップＳ１１２）、ステップＳ１０８に移行する。【００８５】
位置合わせ部１５０ｄは、ＹＲが回転Ｙ終了角度未満である場合には（ステップＳ１１１，Ｙｅｓ）、ＺＲに回転Ｚ開始角度を設定する（ステップＳ１１３）。位置合わせ部１５０ｄは、ＺＲが回転Ｚ終了角度未満であるか否かを判定する（ステップＳ１１４）。位置合わせ部１５０ｄは、ＺＲが回転Ｚ終了角度未満でない場合には（ステップＳ１１４，Ｎｏ）、ＹＲに角度増分を加算した値によって、ＹＲを更新し（ステップＳ１１５）、ステップＳ１１１に移行する。【００８６】
位置合わせ部１５０ｄは、ＺＲが回転Ｚ終了角度未満である場合には（ステップＳ１１４，Ｙｅｓ）、点群１０ＡをＸＲ、ＹＲ、ＺＲで回転させる（ステップＳ１１６）。位置合わせ部１５０ｄは、並進、回転処理後の点群１０Ａと、並進処理後の点群１０Ｂとの近傍点間の合計値を算出する（ステップＳ１１７）。位置合わせ部１５０ｄは、ＺＲに角度増分を加算した値によって、ＺＲを更新し（ステップＳ１１８）、ステップＳ１１４に移行する。【００８７】
次に、本実施例１に係る情報処理装置１００の効果について説明する。情報処理装置１００は、点群１０Ａの平均座標１Ａを、センサ１０ａの原点座標１５ａに並進させ、点群１０Ｂの平均座標１Ｂを、センサ１０ｂの原点座標１５ｂに並進させることで、点群１０Ａ，１０Ｂの並進方向の位置合わせを完了させる。情報処理装置１００は、並進方向の位置合わせを完了させた後に、点群１０Ｂの回転を固定し、点群１０Ａを回転させつつ、各点群１０Ａ，１０Ｂの近傍点の合計距離が最小となる回転パラメータを算出する。【００８８】
上記のように、情報処理装置１００は、並進方向の位置合わせを行う処理を１回のみ行ため、情報処理装置１００は、従来装置と比較して、位置合わせのための並進パラメータ算出の処理負荷を軽減することができる。【００８９】
情報処理装置１００は、点群１０Ａの平均座標１Ａ、点群１０Ｂの平均座標１Ｂを算出し、並進方向の位置合わせを行う。平均座標を算出する処理は、処理負荷が少ないため、処理負荷を軽減することができる。【００９０】
続いて、本実施例１に示した情報処理装置１００が算出したパラメータ１４０ｃを用いて、体操を行う選手の演技を採点する採点装置の一例について説明する。ここでは、採点装置について説明を行うが、採点装置に限らず、複数のセンサを用いて被写体のセンシングを行う装置であれば、情報処理装置１００が算出したパラメータ１４０ｃを利用することが可能である。【００９１】
図２２は、採点装置の構成を示す機能ブロック図である。図２２に示すように、この採点装置２００は、センサ１０ａ、センサ１０ｂ、表示装置２５０に接続される。センサ１０ａ、センサ１０ｂは、図１に示したセンサ１０ａ、センサ１０ｂに対応する。図２２に示すセンサ１０ｂ，１０ｂの設置状況と、図１に示したセンサ１０ａ，１０ｂの設置状況とは同一であるものとする。設置状況は、センサ１０ａ，１０ｂの設置位置、センサの方向を示す。【００９２】
表示装置２５０は、採点装置から出力される情報を表示する表示装置である。表示装置２５０は、たとえば、液晶ディスプレイ、タッチパネル等に対応する。【００９３】
採点装置２００は、記憶部２０１、取得部２０２、位置合わせ部２０３、認識部２０４、出力部２０５を有する。【００９４】
記憶部２０１は、パラメータ１４０ｃを有する。記憶部２０１は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。パラメータ１４０ｃは、図８で説明したパラメータ１４０ｃに対応する情報である。【００９５】
取得部２０２は、センサ１０ａから第一距離画像フレームを取得し、センサ１０ｂから第二距離画像フレームを取得する。取得部２０２は、第一距離画像フレームと第一背景フレームとを基にして、第一距離画像フレームに含まれる被写体６を構成する第一点群を抽出する。取得部２０２は、第二距離画像フレームと第二背景フレームとを基にして、第二距離画像フレームに含まれる被写体６を構成する第二点群を抽出する。取得部２０２は、第一点群の座標情報と、第二点群の座標情報とを、位置合わせ部２０３に出力する。【００９６】
位置合わせ部２０３は、パラメータ１４０ｃを基にして、第一点群と第二点群との位置合わせを行う処理部である。位置合わせ部２０３は、第一点群に含まれる各点の座標を、テーブル１４３ａに格納された並進パラメータ、回転パラメータに基づいて位置合わせする。位置合わせ部２０３は、第二点群に含まれる各点の座標を、テーブル１４３ｂに格納された並進パラメータ、回転パラメータに基づいて位置合わせする。位置合わせ部２０３は、位置合わせした第一点群および第二点群の情報を、認識部２０４に出力する。【００９７】
認識部４０４は、位置合わせされた第一点群および第二点群を組み合わせて、被写体６の骨格を認識する処理部である。認識部４０４は、時刻毎に被写体６の骨格の位置を検出し、骨格の位置の推移と採点基準を定義したテーブル（図示略）とを比較して、被写体６の演技を採点する。認識部４０４は、採点結果の情報を、出力部２０５に出力する。たとえば、採点結果の情報には、Ｄ（Difficulty）スコア、Ｅ（Execution）スコアが含まれる。【００９８】
出力部２０５は、採点結果の情報を基にして、採点画面情報を生成する処理部である。出力部２０５は、採点画面情報を、表示装置２５０に出力して表示させる。図２３は、採点画面の一例を示す図である。図２３に示すように、採点画面情報６５には、領域６５ａ，６５ｂ，６５ｃが含まれる。【００９９】
領域６５ａは、Ｄスコア、Ｅスコア等の採点結果を表示する領域である。領域６５ｂは、カメラ等により撮影された被写体６の映像を表示する領域である。領域６５ｃは、位置合わせされた第一点群および第二点群から推定される骨格の情報を基にして推定される３Ｄモデルを表示する領域である。【０１００】
続いて、採点装置２００の位置合わせ部２０３の処理手順の一例について説明する。図２４は、採点装置の位置合わせ部の処理手順を示すフローチャートである。図２４に示す例では、第一点群の位置合わせを行う場合について説明するが、第二点群も第一点群と同様にして位置合わせが行われる。【０１０１】
図２４に示すように、採点装置２００の位置合わせ部２０３は、第一点群をＸ並進距離分、並進させる（ステップＳ２０１）。位置合わせ部２０３は、第一点群をＹ並進距離分、並進させる（ステップＳ２０２）。位置合わせ部２０３は、第一点群をＺ並進距離分、並進させる（ステップＳ２０３）。【０１０２】
位置合わせ部２０３は、Ｘ軸を中心に、第一点群をＸ回転角度分、回転させる（ステップＳ２０４）。位置合わせ部２０３は、Ｙ軸を中心に、第一点群をＹ回転角度分、回転させる（ステップＳ２０５）。位置合わせ部２０３は、Ｚ軸を中心に、第一点群をＺ回転角度分、回転させる（ステップＳ２０６）。【０１０３】
上記のように、採点装置２００は、情報処理装置１００により生成されるパラメータ１４０ｃを基にして、センサ１０ａ，１０ｂにより測定される点群の位置合わせを行うことで、被写体全体の点群を正確に特定でき、採点精度を向上させることができる。
【実施例２】
【０１０４】
次に、本実施例２に係る情報処理装置について説明する。本実施例２に係る情報処理装置は、実施例１と同様にして、センサ１０ａおよびセンサ１０ｂに接続される。【０１０５】
図２５は、本実施例２に係る情報処理装置の構成を示す機能ブロック図である。図２５に示すように、この情報処理装置３００は、インタフェース部３１０と、入力部３２０と、表示部３３０と、記憶部３４０と、制御部３５０とを有する。【０１０６】
インタフェース部３１０、入力部３２０、表示部３３０に関する説明は、図８に示したインタフェース部１１０、入力部１２０、表示部１３０に関する説明と同様である。【０１０７】
記憶部３４０は、バッファ３４０ａ、点群テーブル３４０ｂ、パラメータ３４０ｃを有する。記憶部３４０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。【０１０８】
バッファ３４０ａ、点群テーブル３４０ｂ、パラメータ３４０ｃに関する説明は、図８に示したバッファ１４０ａ、点群テーブル１４０ｂ、パラメータ１４０ｃに関する説明と同様である。【０１０９】
制御部３５０は、取得部３５０ａ、抽出部３５０ｂ、ノイズ除去部３５５、並進部３５０ｃ、位置合わせ部３５０ｄ、出力部３５０ｅを有する。制御部３５０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部３５０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。【０１１０】
取得部３５０ａは、センサ１０ａ，１０ｂから情報を取得する処理部である。取得部３５０ａは、取得した情報をバッファ３４０ａに格納する。取得部３５０ａに関するその他の説明は、図８に示した取得部１５０ａに関する説明と同様である。【０１１１】
抽出部３５０ｂは、バッファ３４０ａに格納された第一距離画像フレームおよび第二距離画像フレームから、被写体に対応する点群１０Ａ、点群１０Ｂを抽出する処理部である。抽出部３５０ｂは、点群１０Ａ、点群１０Ｂの情報を、点群テーブル３４０ｂに格納する。抽出部３５０ｂに関するその他の説明は、図８に示した抽出部１５０ｂに関する説明と同様である。【０１１２】
ノイズ除去部３５５は、点群１０Ａおよび点群１０Ｂに含まれるエッジノイズを除去する処理部である。図２６は、本実施例２に係るノイズ除去部の処理を説明するための図である。図２６では、点群１０Ａ，１０Ｂを上から見た様子を示す。たとえば、点群１０Ａには、センサ１０ａの反対側に、エッジノイズ７ａが含まれている。点群１０Ｂには、センサ１０ｂの反対側に、エッジノイズ７ｂが含まれている。【０１１３】
ノイズ除去部３５５は、点群１０Ａから、エッジノイズ７ａを除去し、エッジノイズ７ａに対応する点の情報を、点群テーブル３４０ｂから除去する。ノイズ除去部３５５は、点群１０Ｂから、エッジノイズ７ｂを除去し、エッジノイズ７ｂに対応する点の情報を、点群テーブル３４０ｂから除去する。【０１１４】
ノイズ除去部３５５は、点群１０Ａに含まれるエッジノイズ７ａを特定する処理の一例について説明する。ノイズ除去部３５５は、点群１０Ａに含まれる点を選択し、選択した点と、選択した点に最も近い点との距離を算出する。ノイズ除去部３５５は、算出した距離が閾値以上である場合には、選択した点を、エッジノイズ７ａに含まれる点であると判定する。ノイズ除去部３５５は、点群１０Ａに含まれる他の点についても同様の処理を行い、エッジノイズ７ａを判定する。【０１１５】
図２７は、エッジノイズ除去前後の点群１０Ａの一例を示す図である。図２７において、エッジノイズ除去前のステップＳ５０では、点群１０Ａにエッジノイズ７ａが含まれている。ステップＳ５１では、点群１０Ａから、エッジノイズ７ａが除去されている。【０１１６】
ノイズ除去部３５５は、点群１０Ｂに含まれるエッジノイズ７ｂを特定する処理の一例について説明する。ノイズ除去部３５５は、点群１０Ｂに含まれる点を選択し、選択した点と、選択した点に最も近い点との距離を算出する。ノイズ除去部３５５は、算出した距離が閾値以上である場合には、選択した点を、エッジノイズ７ｂに含まれる点である判定する。ノイズ除去部３５５は、点群１０Ｂに含まれる他の点についても同様の処理を行い、エッジノイズ７ｂを判定する。【０１１７】
図２８は、エッジノイズ除去前後の点群１０Ｂの一例を示す図である。図２８において、エッジノイズ除去前のステップＳ６０では、点群１０Ｂにエッジノイズ７ｂが含まれている。ステップＳ６１では、点群１０Ｂから、エッジノイズ７ｂが除去されている。【０１１８】
並進部３５０ｃは、センサ１０ａの原点座標を点群１０Ａの平均座標１Ａに移動させ、かつ、センサ１０ｂの原点座標を点群１０Ｂの平均座標１Ｂに移動させることで、並進方向の位置合わせを行う処理部である。並進部３５０ｃに関するその他の説明は、図８に示した並進部１５０ｃに関する説明と同様である。【０１１９】
位置合わせ部３５０ｄは、点群１０Ａと点群１０Ｂとを位置合わせのための回転パラメータを算出する処理部である。位置合わせ部３５０ｄに関するその他の説明は、図８に示した位置合わせ部１５０ｄに関する説明と同様である。【０１２０】
出力部３５０ｅは、パラメータ３４０ｃを、採点装置に出力する処理部である。【０１２１】
次に、本実施例２に係る情報処理装置３００の効果について説明する。情報処理装置３００は、点群１０Ａからエッジノイズ７ａを除去し、点群１０Ｂからエッジノイズ７ｂを除去する。これにより、点群１０Ａと点群１０Ｂとの位置合わせをより正確に実行することができる。たとえば、点群１０Ａと点群１０Ｂとの位置が合うように回転させる場合に、エッジノイズ７ａ，７ｂが除去されていないと、適切な近傍点を選択できず、合計距離が最小となる回転パラメータを精度よく特定できない。情報処理装置３００が、エッジノイズ７ａ，７ｂを除去することで、たとえば、点群１０Ａを１８０°回転させた状態でも、エッジノイズ７ａのある点と、点群１０Ｂのある点との距離を、近傍点の距離として算出してしまうことを抑止できる。【０１２２】
なお、ノイズ除去部３５５がノイズを除去する処理は、上記のものに限定されるものではない。たとえば、ノイズ除去部３５５は、第一背景フレームから、サイズが所定サイズ以上となる第一領域を抽出する。ノイズ除去部３５５は、第一差分フレームの非背景の点の領域から、第一領域からの距離が所定距離未満となる点群を特定し、特定した点群を、近接する距離値が近い点同士をグルーピングする。ノイズ除去部３５５は、グルーピングした各グループのうち、グループに含まれる点を含む領域が閾値未満である点を、エッジノイズとして除去する。【０１２３】
ノイズ除去部３５５は、第二背景フレームから、サイズが所定サイズ以上となる第二領域を抽出する。ノイズ除去部３５５は、第二差分フレームの非背景の点の領域から、第二領域からの距離が所定距離未満となる点群を特定し、特定した点群を、近接する距離値が近い点同士をグルーピングする。ノイズ除去部３５５は、グルーピングした各グループのうち、グループに含まれる点を含む領域が閾値未満である点を、エッジノイズとして除去する。
【実施例３】
【０１２４】
図２９は、競技を行う選手の姿勢の特徴の一例を説明するための図である。たとえば、体操演技の跳馬や床では、選手７が宙を飛んでいる間、直立の姿勢で足を閉じて両腕を胴体に付けた姿勢になる場合がある。このような状態で被写体（選手７）を検出すると、円筒に近い形状となり、方向７Ａ、方向７Ｂの違いが少ない。また、円筒（選手７）の長辺方向の中心軸を中心として何度回転させても半径方向の違いは少ないため、位置合わせが完了したか否かを判定することが難しい。たとえば、情報処理装置１００，３００が、選手７を被写体とした場合の点群１０Ａと点群１０Ｂとの位置合わせを行った場合において、点群全体として、位置合わせが完了していない状態になりやすくなる。【０１２５】
本実施例３に係る情報処理装置は、選手が跳躍を開始してから着地するまでの複数の距離画像フレームを選択し、複数の距離画像フレームに含まれる点群を組み合わせた点群を用いる。【０１２６】
図３０は、実施例３に係る情報処理装置の処理を説明するための図である。図３０の上段は、各時刻における選手７を横から見た状態を示す。図３０の下段は、各時刻における選手７を上から見た状態を示す。たとえば、時刻ｔ１において選手７は跳躍を開始し、時刻ｔ２，ｔ３において選手７は跳んでいる途中であり、時刻ｔ４において選手は着地している。【０１２７】
たとえば、情報処理装置は、時刻ｔ１，ｔ２，ｔ３の第一距離画像フレームから抽出した各点群をまとめて点群１０Ａとする。情報処理装置は、時刻ｔ１，ｔ２，ｔ３の第二距離画像フレームから抽出した各点群をまとめて点群１０Ｂとする。このように、各時刻の点群をまとめることで、回転による半径方向に違いを出すことができるので、情報処理装置は、各点群をまとめた点群１０Ａおよび点群１０Ｂとの位置合わせを精度よく行うことができる。【０１２８】
ここでは、３つの距離画像フレームから抽出した各点群をまとめる場合について説明したが、これに限定されるものではない。たとえば、まとめる対象の点群のうち、回転による半径方向の違いが大きいものが含まれている場合には、２つの距離画像フレームから抽出した各点群をまとめて利用してもよい。【０１２９】
次に、本実施例３に係る情報処理装置の構成について説明する。なお、本実施例３に係る情報処理装置は、実施例１と同様にして、センサ１０ａおよびセンサ１０ｂに接続される。【０１３０】
図３１は、本実施例３に係る情報処理装置の構成を示す機能ブロック図である。図３１に示すように、この情報処理装置４００は、インタフェース部４１０と、入力部４２０と、表示部４３０と、記憶部４４０と、制御部４５０とを有する。【０１３１】
インタフェース部４１０、入力部４２０、表示部４３０に関する説明は、図８に示したインタフェース部１１０、入力部１２０、表示部１３０に関する説明と同様である。【０１３２】
記憶部４４０は、バッファ４４０ａ、点群テーブル４４０ｂ、パラメータ４４０ｃを有する。記憶部４４０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。【０１３３】
バッファ４４０ａ、点群テーブル４４０ｂ、パラメータ４４０ｃに関する説明は、図８に示したバッファ１４０ａ、点群テーブル１４０ｂ、パラメータ１４０ｃに関する説明と同様である。【０１３４】
制御部４５０は、取得部４５０ａ、抽出部４５０ｂ、並進部４５０ａ、位置合わせ部４５０ｄ、出力部４５０ｅを有する。制御部４５０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部４５０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。【０１３５】
取得部４５０ａは、センサ１０ａ，１０ｂから情報を取得する処理部である。取得部４５０ａは、取得した情報をバッファ４４０ａに格納する。取得部４５０ａに関するその他の説明は、図８に示した取得部１５０ａに関する説明と同様である。【０１３６】
抽出部４５０ｂは、バッファ４４０ａに格納された第一距離画像フレームおよび第二距離画像フレームから、点群１０Ａ、点群１０Ｂを抽出する処理部である。抽出部４５０ｂは、点群１０Ａ、点群１０Ｂの情報を、点群テーブル４４０ｂに格納する。【０１３７】
抽出部４５０ｂが、点群１０Ａを抽出する処理の一例について説明する。抽出部４５０ｂは、バッファ１４０ａのテーブル１４１ａから、時刻ｔｎ、ｔｎ＋１、ｔｎ＋２の第一距離画像フレームを取得する。抽出部４５０ｂは、バッファ４４０ａから、第一背景フレーム１１ａを取得する。抽出部４５０ｂは、時刻ｔｎの第一距離画像フレームと第一背景フレーム１１ａとの差分から時刻ｔｎの第一差分フレームを生成する。時刻ｔｎの第一差分フレームを基にして、時刻ｔｎの被写体の点群を抽出する。【０１３８】
抽出部４５０ｂは、同様にして、時刻ｔｎ＋１の第一距離画像フレームから時刻ｔｎ＋１の被写体の点群を抽出し、時刻ｔｎ＋２の第一距離画像フレームから時刻ｔｎ＋２の被写体の点群を抽出する。抽出部４５０ｂは、時刻ｔｎ、ｔｎ＋１、ｔｎ＋２の各点群を統合することで、点群１０Ａを抽出する。たとえば、抽出部４５０ｂは、抽出した点群１０Ａを、時刻ｔｎの点群として、テーブル１４２ａに格納する。【０１３９】
抽出部４５０ｂが、点群１０Ｂを抽出する処理の一例について説明する。抽出部４５０ｂは、バッファ４４０ａのテーブル１４１ｂから、時刻ｔｎ、ｔｎ＋１、ｔｎ＋２の第二距離画像フレームを取得する。抽出部４５０ｂは、バッファ４４０ａから、第二背景フレーム１１ａを取得する。抽出部４５０ｂは、時刻ｔｎの第二距離画像フレームと第二背景フレーム１１ａとの差分から時刻ｔｎの第二差分フレームを生成する。時刻ｔｎの第二差分フレームを基にして、時刻ｔｎの被写体の点群を抽出する。【０１４０】
抽出部４５０ｂは、同様にして、時刻ｔｎ＋１の第二距離画像フレームから時刻ｔｎ＋１の被写体の点群を抽出し、時刻ｔｎ＋２の第二距離画像フレームから時刻ｔｎ＋２の被写体の点群を抽出する。抽出部４５０ｂは、時刻ｔｎ、ｔｎ＋１、ｔｎ＋２の各点群を統合することで、点群１０Ｂを抽出する。たとえば、抽出部４５０ｂは、抽出した点群１０Ｂを、時刻ｔｎの点群として、テーブル１４２ｂに格納する。【０１４１】
上記の時刻ｔｎ、ｔｎ＋１、ｔｎ＋２は、どのように設定してもよい。たとえば、選手７の踏切開始のタイミングを、時刻ｔｎとして、情報処理装置４００に入力してもよい。また、体操に限らず、各種演技、競技の開始タイミングを、時刻ｔｎとして、情報処理装置４００に入力してもよい。また、複数の距離画像フレームを選択する時刻を時刻ｔｎ、ｔｎ＋１、ｔｎ＋２としたが、これに限られるものではなく、ｔｎ、ｔｎ＋α、ｔｎ＋βであってもよい。α、βは、適宜設定される値である。【０１４２】
並進部４５０ｃは、センサ１０ａの原点座標を点群１０Ａの平均座標１Ａに移動させ、かつ、センサ１０ｂの原点座標を点群１０Ｂの平均座標１Ｂに移動させることで、並進方向の位置合わせを行う処理部である。並進部４５０ｃに関するその他の説明は、図８に示した並進部１５０ｃに関する説明と同様である。【０１４３】
位置合わせ部４５０ｄは、点群１０Ａと点群１０Ｂとを位置合わせのための回転パラメータを算出する処理部である。位置合わせ部４５０ｄに関するその他の説明は、図８に示した位置合わせ部１５０ｄに関する説明と同様である。【０１４４】
出力部４５０ｅは、パラメータ４４０ｃを、採点装置に出力する処理部である。【０１４５】
次に、本実施例３に係る情報処理装置４００の処理手順の一例について説明する。図３２は、本実施例３に係る情報処理装置の処理手順を示すフローチャートである。図３２に示すように、情報処理装置４００の取得部４５０ａは、センサ１０ａおよびセンサ１０ｂから複数の第一距離画像フレーム、第二距離画像フレームを取得する（ステップＳ３０１）。【０１４６】
情報処理装置４００の抽出部４５０ｂは、第一背景フレームと各第一距離画像フレームとの差分フレームを算出し、各差分フレームに含まれる各点群を統合して点群１０Ａを生成する（ステップＳ３０２）。情報処理装置４００の並進部４５０ｃは、点群１０Ａの３次元座標の平均座標を算出する（ステップＳ３０３）。並進部４５０ｃは、点群１０Ａを平均座標分逆に並進させる（ステップＳ３０４）。【０１４７】
抽出部４５０ｂは、第二背景フレームと各第二距離画像フレームとの差分フレームを算出し、各差分フレームに含まれる各点群を統合して点群１０Ｂを生成する（ステップＳ３０５）。並進部４５０ｃは、点群１０Ｂの３次元座標の平均座標を算出する（ステップＳ３０６）。並進部４５０ｃは、点群１０Ｂを平均座標分逆に並進させる（ステップＳ３０７）。【０１４８】
情報処理装置４００の位置合わせ部４５０ｄは、位置合わせ処理を実行する（ステップＳ３０８）。たとえば、ステップＳ３０８に示す位置合わせ処理は、図２１に示したステップＳ１０７以降の処理に対応する。【０１４９】
次に、本実施例３に係る情報処理装置４００の効果について説明する。情報処理装置４００は、時刻ｔ１，ｔ２，ｔ３の第一距離画像フレームから抽出した各点群をまとめて点群１０Ａとする。情報処理装置４００は、時刻ｔ１，ｔ２，ｔ３の第二距離画像フレームから抽出した各点群をまとめて点群１０Ｂとする。このように、各時刻の点群をまとめることで、回転による半径方向に違いを出すことができるので、情報処理装置４００は、各点群をまとめた点群１０Ａおよび点群１０Ｂとの位置合わせを精度よく行うことができる。【０１５０】
次に、上記実施例に示した情報処理装置１００，３００，４００と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図３３は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。【０１５１】
図３３に示すように、コンピュータ５００は、各種演算処理を実行するＣＰＵ５０１と、ユーザからのデータの入力を受け付ける入力装置５０２と、ディスプレイ５０３とを有する。また、コンピュータ５００は、記憶媒体からプログラム等を読み取る読み取り装置５０４と、有線または無線ネットワークを介して収録機器等との間でデータの授受を行うインタフェース装置５０５とを有する。また、コンピュータ５００は、各種情報を一時記憶するＲＡＭ５０６と、ハードディスク装置５０７とを有する。そして、各装置５０１〜５０７は、バス５０８に接続される。【０１５２】
ハードディスク装置５０７は、抽出プログラム５０７ａ、ノイズ除去プログラム５０７ｂ、並進プログラム５０７ｃ、位置合わせプログラム５０７ｄを有する。ＣＰＵ５０１は、各プログラム５０７ａ〜５０７ｄを読み出してＲＡＭ５０６に展開する。【０１５３】
抽出プログラム５０７ａは、抽出プロセス５０６ａとして機能する。ノイズ除去プログラム５０７ｂは、ノイズ除去プロセス５０６ｂとして機能する。並進プログラム５０７ｃは、並進プロセス５０６ｃとして機能する。位置合わせプログラム５０７ｄは、位置合わせプロセス５０６ｄとして機能する。【０１５４】
抽出プロセス５０６ａの処理は、抽出部１５０ｂ，３５０ｂ，４５０ｂの処理に対応する。ノイズ除去プロセス５０６ｂは、ノイズ除去部３５５の処理に対応する。並進プロセス５０６ｃの処理は、並進部１５０ｃ，３５０ｃ，４５０ｃの処理に対応する。位置合わせプロセス５０６ｄは、位置合わせ部１５０ｄ，３５０ｄ，４５０ｄの処理に対応する。【０１５５】
なお、各プログラム５０７ａ〜５０７ｄについては、必ずしも最初からハードディスク装置５０７に記憶させておかなくても良い。たとえば、コンピュータ５００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ５００が各プログラム５０７ａ〜５０７ｄを読み出して実行するようにしても良い。
【符号の説明】
【０１５６】
１００，３００，４００    情報処理装置
１４０，３４０，４４０    記憶部
１４０ａ，３４０ａ，４４０ａ    バッファ
１４０ｂ，３４０ｂ，４４０ｂ    点群テーブル
１４０ｃ，３４０ｃ，４４０ｃ    パラメータ
１５０，３５０，４５０    制御部
１５０ａ，３５０ａ，４５０ａ    取得部
１５０ｂ，３５０ｂ，４５０ｂ    抽出部
１５０ｃ，３５０ｃ，４５０ｃ    並進部
１５０ｄ，３５０ｄ，４５０ｄ    位置合わせ部
１５０ｅ，３５０ｅ，４５０ｅ    出力部
３５５    ノイズ除去部
【図１】
2019087404.tif 000003
【図２】
2019087404.tif 000004
【図３】
2019087404.tif 000005
【図４】
2019087404.tif 000006
【図５】
2019087404.tif 000007
【図６】
2019087404.tif 000008
【図７】
2019087404.tif 000009
【図８】
2019087404.tif 000010
【図９】
2019087404.tif 000011
【図１０】
2019087404.tif 000012
【図１１】
2019087404.tif 000013
【図１２】
2019087404.tif 000014
【図１３】
2019087404.tif 000015
【図１４】
2019087404.tif 000016
【図１５】
2019087404.tif 000017
【図１６】
2019087404.tif 000018
【図１７】
2019087404.tif 000019
【図１８】
2019087404.tif 000020
【図１９】
2019087404.tif 000021
【図２０】
2019087404.tif 000022
【図２１】
2019087404.tif 000023
【図２２】
2019087404.tif 000024
【図２３】
2019087404.tif 000025
【図２４】
2019087404.tif 000026
【図２５】
2019087404.tif 000027
【図２６】
2019087404.tif 000028
【図２７】
2019087404.tif 000029
【図２８】
2019087404.tif 000030
【図２９】
2019087404.tif 000031
【図３０】
2019087404.tif 000032
【図３１】
2019087404.tif 000033
【図３２】
2019087404.tif 000034
【図３３】
2019087404.tif 000035
【図３４】
2019087404.tif 000036
【図３５】
2019087404.tif 000037
【手続補正書】
【提出日】令和2年3月31日(2020.3.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータが実行する算出方法であって、
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、
前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出し、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、
前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成し、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、
前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する
処理を実行することを特徴とする算出方法。
【請求項２】
前記第一の並進点群を生成する処理は、前記第一の点群の平均座標を前記第一の並進座標として算出し、前記第二の並進点群を生成する処理は、前記第二の点群の平均座標を前記第二の並進座標として算出することを特徴とする請求項１に記載の算出方法。
【請求項３】
前記第一の距離画像および前記第二の距離画像からエッジノイズを除去する処理を更に実行し、前記第一の点群を抽出する処理は、エッジノイズの除去された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、前記第二の点群を抽出する処理は、エッジノイズの除去された第二の距離画像から、前記被写体を構成する第二の点群を抽出することを特徴とする請求項１または２に記載の算出方法。
【請求項４】
前記第一の点群を抽出する処理は、前記第一のセンサにより異なる時刻において取得された複数の第一の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第一の点群とし、前記第二の点群を抽出する処理は、前記第二のセンサにより異なる時刻において取得された複数の第二の距離画像から前記被写体を構成する点群それぞれ抽出し、抽出した各点群を前記第二の点群とすることを特徴とする請求項１に記載の算出方法。
【請求項５】
前記回転パラメータおよび前記並進パラメータは、前記第一のセンサで新たに取得された新たな第一の距離画像から抽出された、新たな第一の点群に対して適用されるとともに、前記第二のセンサにより新たに取得された新たな第二の距離画像から抽出された、新たな第二の点群に対して適用され、
前記回転パラメータおよび前記並進パラメータが適用された前記新たな第一の点群と前記新たな第二の点群は、３次元空間における被写体を構成することを特徴とする請求項１に記載の算出方法。
【請求項６】
コンピュータに、
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、
前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出し、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、
前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成し、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、
前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する
処理を実行することを特徴とする算出プログラム。
【請求項７】
被写体までの距離をセンシングする複数のセンサのうち、第一のセンサにより取得された第一の距離画像から、前記被写体を構成する第一の点群を抽出し、前記複数のセンサのうち、第二のセンサにより取得された第二の距離画像から、前記被写体を構成する第二の点群を抽出する抽出部と、
前記第一のセンサの位置を前記被写体の位置に並進させる第一の並進座標と、前記第一の点群とに基づき、前記第一の点群を前記第一の並進座標だけ並進させた第一の並進点群を生成し、前記第二のセンサの位置を前記被写体の位置に並進させる第二の並進座標と、前記第二の点群とに基づき、前記第二の点群を前記第二の並進座標だけ並進させた第二の並進点群を生成する並進部と、
前記第二の並進点群と、前記第二の並進点群とに基づき、前記第一の点群と前記第二の点群との回転方向の位置合わせのための回転パラメータを算出し、前記第一の並進座標と、前記第二の並進座標とに基づき、前記第一の点群と前記第二の点群との並進方向の位置合わせのための並進パラメータを算出する位置合わせ部と
を有することを特徴とする情報処理装置。
【国際調査報告】
2019087404.tif 000038
2019087404.tif 000039