(57)【要約】【課題】移動する棒体の所定位置の検出を高精度に行う。【解決手段】撮影した映像に含まれる棒体の所定位置を検出する位置検出装置において、時間の経過と共に移動する棒体を撮像する撮像手段と、前記撮像手段により得られる映像からフレーム毎に動き領域を検出する動き領域検出手段と、前記動き領域検出手段により得られる動き領域から前記棒体に対応する直線を検出する直線検出手段と、連続する２つのフレームに対して前記直線検出手段により得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得手段と、前記撮像手段における撮影時のパラメータを取得するパラメータ取得手段と、前記パラメータ取得手段により得られる前記パラメータ及び前記画像座標取得手段により得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得手段とを有する。【選択図】図１
2008171280.tif 000002
【特許請求の範囲】
【請求項１】
撮影した映像に含まれる棒体の所定位置を検出する位置検出装置において、
時間の経過と共に移動する棒体を撮像する撮像手段と、
前記撮像手段により得られる映像からフレーム毎に動き領域を検出する動き領域検出手段と、
前記動き領域検出手段により得られる動き領域から前記棒体に対応する直線を検出する直線検出手段と、
連続する２つのフレームに対して前記直線検出手段により得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得手段と、
前記撮像手段における撮影時のパラメータを取得するパラメータ取得手段と、
前記パラメータ取得手段により得られる前記パラメータ及び前記画像座標取得手段により得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得手段とを有することを特徴とする位置検出装置。
【請求項２】
前記画像座標取得手段は、
前記直線検出手段により得られる直線上の所定方向を画素単位で探索し、画素の輝度情報に基づいて前記所定位置の座標を取得することを特徴とする請求項１に記載の位置検出装置。
【請求項３】
前記画像座標取得手段は、
座標取得対象のフレームに前記所定位置が撮影されていない場合、連続する前後のフレームで検出された前記所定位置の座標に基づいて、前記座標取得対象のフレームの所定位置を補間して座標を取得することを特徴とする請求項１又は２に記載の位置検出装置。
【請求項４】
前記画像座標取得手段は、
前記フレームの画像端まで探索して前記所定位置の座標を取得することを特徴とする請求項１乃至３の何れか１項に記載の位置検出装置。
【請求項５】
前記画像座標取得手段又は三次元座標取得手段により得られる座標に基づいて、前記フレーム毎に得られる所定位置の座標をあるフレーム画像に重畳合成した画面を生成する画面生成手段を有することを特徴とする請求項１乃至４の何れか１項に記載の位置検出装置。
【請求項６】
撮影した映像に含まれる棒体の所定位置を検出する位置検出方法において、
時間の経過と共に移動する棒体を撮像手段により撮像した映像を取得する映像取得ステップと、
前記映像取得ステップにより得られる映像からフレーム毎に動き領域を検出する動き領域検出ステップと、
前記動き領域検出ステップにより得られる動き領域から前記棒体に対応する直線を検出する直線検出ステップと、
連続する２つのフレームに対して前記直線検出ステップにより得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得ステップと、
前記撮像手段における撮影時のパラメータを取得するパラメータ取得ステップと、
前記パラメータ取得ステップにより得られる前記パラメータ及び前記画像座標取得ステップにより得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得ステップとを有することを特徴とする位置検出方法。
【請求項７】
撮影した映像に含まれる棒体の所定位置を検出する位置検出処理をコンピュータに実行させるための位置検出プログラムにおいて、
時間の経過と共に移動する棒体を撮像手段により撮像した映像を取得する映像取得処理と、
前記映像取得処理により得られる映像からフレーム毎に動き領域を検出する動き領域検出処理と、
前記動き領域検出処理により得られる動き領域から前記棒体に対応する直線を検出する直線検出処理と、
連続する２つのフレームに対して前記直線検出処理により得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得処理と、
前記撮像手段における撮影時のパラメータを取得するパラメータ取得ステップと、
前記パラメータ取得ステップにより得られる前記パラメータ及び前記画像座標取得ステップにより得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得処理とをコンピュータに実行させるための位置検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置検出装置、位置検出方法、及び位置検出プログラムに係り、特に移動する棒体の所定位置の検出を高精度に行うための位置検出装置、位置検出方法、及び位置検出プログラムに関する。
【背景技術】
【０００２】
従来より、ユーザがゴルフクラブやテニスラケット、野球バット等の棒体を用いてスイング時のフォームの確認を行うことは、技術を上達させるうえで非常に重要な要素となっている。そこで、従来では、スイング時のフォームを実際に確認するための画像処理技術が知られている（例えば、特許文献１，２等参照。）。
【０００３】
また、ゴルフを例にとれば、ゴルフスイングの分析・映像化に関して上述した特許文献等に示されている技術が実際に練習用途等で製品化されている。
【０００４】
具体的に説明すると、特許文献１に示されている技術は、ボールとクラブヘッドのインパクトの様子を映像化するため、カメラ映像からボールとクラブヘッドを検出して一枚の画像に重畳表示を行っている。また、この特許文献１に示されている技術は、スイング時のフォームとインパクトゾーンの映像を同時に撮影・再生し、ボールの初速、スピン量、打ち出し角、ミート率、飛距離等を算出することができる。
【０００５】
また、特許文献２に示されている技術は、磁気センサーをグリップ部に付けてゴルフシャフトの向き角度を求めることにより、スイングをＣＧ（Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ）で映像化して画面上に表示するものである。
【特許文献１】特開２００３−１１１８８０号公報
【特許文献２】特開２００４−８１６８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した棒体のスイングに関する位置分析システムにおいては、カメラ映像のみから移動するゴルフヘッド等の棒体の所定位置の画像上の座標や３次元座標を検出する手法は存在しなかった。したがって、例えばゴルフヘッドの位置等、時間の経過と共に移動する棒体の所定位置の正確な位置を高精度に取得することができなかった。
【０００７】
本発明は、上述した問題点に鑑みなされたものであり、移動する棒体の所定位置の検出を高精度に行うための位置検出装置、位置検出方法、及び位置検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。
【０００９】
請求項１に記載された発明は、撮影した映像に含まれる棒体の所定位置を検出する位置検出装置において、時間の経過と共に移動する棒体を撮像する撮像手段と、前記撮像手段により得られる映像からフレーム毎に動き領域を検出する動き領域検出手段と、前記動き領域検出手段により得られる動き領域から前記棒体に対応する直線を検出する直線検出手段と、連続する２つのフレームに対して前記直線検出手段により得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得手段と、前記撮像手段における撮影時のパラメータを取得するパラメータ取得手段と、前記パラメータ取得手段により得られる前記パラメータ及び前記画像座標取得手段により得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得手段とを有することを特徴とする。
【００１０】
請求項１記載の発明によれば、移動する棒体の所定位置の検出を高精度に行うことができる。
【００１１】
請求項２に記載された発明は、前記画像座標取得手段は、前記直線検出手段により得られる直線上の所定方向を画素単位で探索し、画素の輝度情報に基づいて前記所定位置の座標を取得することを特徴とする。
【００１２】
請求項２記載の発明によれば、効率的に所定位置の座標を取得することができる。
【００１３】
請求項３に記載された発明は、前記画像座標取得手段は、座標取得対象のフレームに前記所定位置が撮影されていない場合、連続する前後のフレームで検出された前記所定位置の座標に基づいて、前記座標取得対象のフレームの所定位置を補間して座標を取得することを特徴とする。
【００１４】
請求項３記載の発明によれば、所定位置の座標の誤検出を防止することができるため、より高精度な位置検出を実現することができる。
【００１５】
請求項４に記載された発明は、前記画像座標取得手段は、前記フレームの画像端まで探索して前記所定位置の座標を取得することを特徴とする。
【００１６】
請求項４記載の発明によれば、例えば、棒体のある一部分がある物体等により隠れている場合でも、高精度に所定位置の座標を取得することができる。
【００１７】
請求項５に記載された発明は、前記画像座標取得手段又は三次元座標取得手段により得られる座標に基づいて、前記フレーム毎に得られる所定位置の座標をあるフレーム画像に重畳合成した画面を生成する画面生成手段を有することを特徴とする。
【００１８】
請求項５記載の発明によれば、移動する棒体の所定位置の時間の経過に伴う軌跡を高精度に把握することができる。したがって、例えばゴルフスイングにおいて、ゴルフヘッド等の位置を重畳させて表示することで、スイング時のフォームの矯正等を行うことができ、技術を上達することができる。
【００１９】
請求項６に記載された発明は、撮影した映像に含まれる棒体の所定位置を検出する位置検出方法において、時間の経過と共に移動する棒体を撮像手段により撮像した映像を取得する映像取得ステップと、前記映像取得ステップにより得られる映像からフレーム毎に動き領域を検出する動き領域検出ステップと、前記動き領域検出ステップにより得られる動き領域から前記棒体に対応する直線を検出する直線検出ステップと、連続する２つのフレームに対して前記直線検出ステップにより得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得ステップと、前記撮像手段における撮影時のパラメータを取得するパラメータ取得ステップと、前記パラメータ取得ステップにより得られる前記パラメータ及び前記画像座標取得ステップにより得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得ステップとを有することを特徴とする。
【００２０】
請求項６記載の発明によれば、移動する棒体の所定位置の検出を高精度に行うことができる。
【００２１】
請求項７に記載された発明は、撮影した映像に含まれる棒体の所定位置を検出する位置検出処理をコンピュータに実行させるための位置検出プログラムにおいて、時間の経過と共に移動する棒体を撮像手段により撮像した映像を取得する映像取得処理と、前記映像取得処理により得られる映像からフレーム毎に動き領域を検出する動き領域検出処理と、前記動き領域検出処理により得られる動き領域から前記棒体に対応する直線を検出する直線検出処理と、連続する２つのフレームに対して前記直線検出処理により得られるそれぞれの直線に基づいて、前記映像に含まれる前記棒体の所定位置の画像中の座標を取得する画像座標取得処理と、前記撮像手段における撮影時のパラメータを取得するパラメータ取得ステップと、前記パラメータ取得ステップにより得られる前記パラメータ及び前記画像座標取得ステップにより得られる画像座標から前記所定位置の３次元座標を取得する三次元座標取得処理とをコンピュータに実行させる。
【００２２】
請求項７記載の発明によれば、移動する棒体の所定位置の検出を高精度に行うことができる。また、実行プログラムをコンピュータにインストールすることにより、容易に知識メタデータ生成を実現することができる。
【発明の効果】
【００２３】
本発明によれば、移動する棒体の所定位置の検出を高精度に行うことができる。
【発明を実施するための最良の形態】
【００２４】
＜本発明の概要＞
本発明では、時間の経過と共に移動する棒体の所定位置の検出を行うため、棒体の一例としてゴルフクラブを用い、カメラで撮影されたゴルフスイング映像からゴルフヘッド位置を検出する手法に関するものである。また、スイングの内容を分かりやすく視覚化するための画像を生成する。
【００２５】
具体的には、本発明では、撮影映像から検出した動き領域に直線検出アルゴリズムを適用してゴルフシャフトを直線として求め、また撮影された映像中の連続する２フレームについて、それぞれから得られる２つの直線の交点の画像座標及び直線検出に寄与した動き領域の画素の平均画像座標からシャフト端点を探索する方向を決定してシャフト端点を求める。更に、本発明では、２台のカメラから撮影された映像に上述した技術を適用し、ゴルフヘッドの実空間中の３次元位置を計算することにより、カメラ撮影映像からゴルフヘッドの画像上の位置、及び実空間中の位置を検出する。
【００２６】
＜実施の形態＞
次に、上述した特徴を有する本発明における位置検出装置、位置検出方法、及び位置検出プログラムを好適に実施した形態について、図面を用いて説明する。なお、以下の説明では、被験者がスイング等の移動動作に用いる棒状の剛体（棒体）の一例として、ゴルフクラブを用い、ゴルフスイングにおけるゴルフヘッド（所定位置）の軌跡（位置）を検出する実施形態について説明する。
【００２７】
＜位置検出装置：機能構成例＞
まず、本発明における位置検出装置の機能構成例について図を用いて説明する。図１は、本発明における位置検出装置の一構成例を示す図である。
【００２８】
図１に示す位置検出装置１０は、撮像手段１１と、入力手段１２と、出力手段１３と、蓄積手段１４と、動き領域検出手段１５と、直線検出手段１６と、画像座標取得手段１７と、パラメータ取得手段１８と、３次元座標取得手段１９と、画像生成手段２０と、送受信手段２１と、制御手段２２とを有するよう構成されている。
【００２９】
撮像手段１１は、被験者がゴルフクラブをスイングしている映像を取得する。また、撮像手段１１は、取得した映像を動き領域検出手段１５に出力してもよく、また、蓄積手段１４に蓄積しておいてもよい。なお、撮像手段１１は、例えば少なくとも１台からなる高精細カメラや市販のデジタルビデオカメラ等を用い、所定の位置に固定されているものとする。また、複数のカメラで撮影する場合には、それぞれが異なる位置から被験者のスイング動作を撮影する。
【００３０】
なお、本発明においては、１台のカメラで撮影した画像から、所定位置として例えばゴルフヘッド等の画像座標を検出することができ、２台のカメラで撮影した画像から、例えばゴルフヘッド等の３次元座標を検出する。
【００３１】
入力手段１２は、撮像手段１１から得られるスイング時の映像の取得指示や、蓄積手段１４から所定のデータを読み出したり、書き込むための指示、動き領域検出や直線検出、座標検出等における各指示等の入力を受け付ける。なお、入力手段２１は、例えばキーボードやマウス等のポインティングデバイス、マイク等の音声入力インターフェース等からなる。
【００３２】
また、出力手段２２は、入力手段２１により入力された指示内容や、指示内容に基づいて生成された位置検出結果又は撮像手段１１により撮影されたスイング映像等のデータを表示及び／又は音声にて出力する。なお、出力手段２２は、ディスプレイやスピーカ等からなる。
【００３３】
蓄積手段１４は、撮像手段１１により得られる映像や、動き領域検出手段１５により得られる動き検出結果、直線検出手段１６により得られる直線検出結果、画像座標取得手段１７により得られる画像座標、パラメータ取得手段１８により得られるカメラパラメータ、３次元座標取得手段１９により得られる３次元座標、画面生成手段２０により得られる画面等の各処理毎で必要な各種データを蓄積手段１４に出力する。
【００３４】
動き領域検出手段１５は、撮像手段１１から得られる映像や、送受信手段２１により外部装置等から予め取得して蓄積手段１４に蓄積されている検出対象の映像に基づいて、映像中における被験者及び棒体等の物体の動き領域を検出する。なお、動き領域検出の具体的な内容等については後述する。また、動き領域検出手段１５は、検出した動き領域の情報を直線検出手段１６に出力する。なお、動き領域検出手段１５は、検出した動き領域の情報を蓄積手段１４に蓄積させてもよい。
【００３５】
直線検出手段１６は、撮像手段１１により撮影された映像から検出した動き領域に直線検出アルゴリズムを適用して棒状の剛体であるゴルフシャフトを直線として求める。なお、直線検出手段１６における直線の検出方法については後述する。また、直線検出手段１６は、検出した直線に関する情報を画像座標取得手段１７に出力する。なお、直線検出手段１６は、検出した直線に関する情報を蓄積手段１４に蓄積させてもよい。
【００３６】
画像座標取得手段１７は、映像に含まれる連続する２つのフレームについて、それぞれ直線検出手段１６により得られる２つの直線を用いて、その直線の交点の画像座標及び直線検出に寄与した動き領域の画素の平均画像の座標から、シャフトの端点を探索する方向を決定する。
【００３７】
また、画像座標取得手段１７は、シャフトの端点の方向を基準とし、所定位置としてのシャフトの端点（ゴルフヘッド）を求める。なお、画像座標取得手段１７におけるシャフト端点の具体的な取得方法については後述する。また、画像座標取得手段１７は、取得したシャフト端点の座標を３次元座標取得手段１９に出力する。なお、画像座標取得手段１７は、取得したシャフト端点の座標を蓄積手段１４に蓄積させてもよい。
【００３８】
パラメータ取得手段１８は、撮像手段１１により撮影した時のカメラの撮影位置、撮影方向、フォーカス調整等のカメラパラメータを取得する。なお、パラメータ取得手段１８におけるカメラパラメータの具体的な取得方法については後述する。また、パラメータ取得手段１８は、取得したパラメータを３次元座標取得手段１９に出力する。なお、パラメータ取得手段１８は、取得したパラメータを蓄積手段１４に蓄積させてもよい。
【００３９】
３次元座標取得手段１９は、２台のカメラ映像のそれぞれから画像座標取得手段１７により取得されたシャフト端点（ゴルフヘッド）の座標と、カメラパラメータ取得手段１８により取得されたパラメータを用いてゴルフヘッドの実空間中の３次元位置を計算する。これにより、カメラ撮影映像からゴルフヘッドの画像上の位置、及び実空間中の位置を自動的に検出することができる。なお、３次元座標取得手段１９における具体的な３次元座標取得方法については後述する。
【００４０】
また、３次元座標取得手段１９は、取得した３次元座標を画面生成手段２０に出力する。なお、３次元座標取得手段１９は、取得した３次元座標を蓄積手段１４に蓄積させてもよい。
【００４１】
画面生成手段２０は、３次元座標位置の結果等に基づいて、撮像手段１１により撮影された映像に対し、少なくとも１つのフレームから得られるゴルフヘッド座標を点等のマークにより多重合成した画像を生成する。なお、画面生成手段２０により生成される画面としてはこれに限定されるものではなく、例えば複数フレームから得られる各ゴルフヘッド点を時間の経緯と共に連続的に表示する映像等を生成してもよい。また、画面生成手段２０が生成する画面の具体例については後述する。
【００４２】
つまり、被験者等は、画面生成手段２０により生成され、出力手段１２により表示出力されている画像や音声により、位置検出されたゴルフヘッドの位置（軌跡）に基づいて、スイングの状態を確認することができる。なお、画面生成手段２０において生成される画面例については後述する。画像生成手段２０は、生成した画面を出力手段１２等により被験者等に出力する。
【００４３】
送受信手段２１は、通信ネットワークを介して他の外部装置等から被験者のスイング映像等を取得したり、本発明により得られる３次元座標や生成される表示画面等の位置検出結果を外部端末に送信するための通信インターフェースである。
【００４４】
制御手段２２は、位置検出装置１０における各機能構成全体の制御を行う。具体的には、制御手段２２は、入力手段１２により入力されたユーザからの入力情報等に基づいて、動き領域の検出を行ったり、直線検出を行ったり、所定位置の座標を取得したり、カメラパラメータを取得したり、３次元座標を取得したり、各処理における結果の画面を生成して表示したり、上述したそれぞれの処理で生成された情報を蓄積する等の制御を行う。
【００４５】
＜動き領域検出手段１５＞
次に、動き領域検出手段１５における具体的な処理内容について、図を用いて説明する。図２は、ゴルフスイングの撮影映像から、動いている領域を検出する処理内容を説明するための一例の図である。
【００４６】
図２に示す動き検出手順では、例えば検出対象を含む連続する映像フレーム３１のうち、ある映像フレーム３１をｎとすると、まず動き領域検出手段１５は、フレームｎ、フレームｎ−１、フレームｎ＋１の画像をカラーから白黒に変換する。また、動き領域検出手段１５は、白黒変換したフレームｎ及びフレームｎ−１と、フレームｎ及びフレームｎ＋１とのレベル比較を行い、そのレベル差が所定のレベルより大きい領域を仮の動き領域とする。なお、レベル比較とは、例えば画像ブロック毎における輝度レベル等を用いることができる。
【００４７】
ここで、フレームｎとフレームｎ−１の動き領域にはフレームｎ−１の動き領域が含まれ、フレームｎとフレームｎ＋１の動き領域にはフレームｎ＋１の動き領域が含まれるため、この両者の論理積を計算することにより、画像３２に示すような、フレームｎにおける動き領域を得ることができる。
【００４８】
なお、動き領域を取得するために利用されるフレームは、上述したように連続する３フレームを用いてもよく、また所定の間隔を設けたフレーム（例えばフレームｎ−２、フレームｎ、フレームｎ＋２等）を用いてもよい。
【００４９】
＜直線検出手段１６＞
次に、直線検出手段１６における直線検出例について具体的に説明する。図３は、フレームから直線を検出する一例を示す図である。図３に示す画像４１には、フレームｎの動き領域画像に対してハフ変換を行うことで得られた直線が示されている。したがって、図３により、直線の検出の一例として例えばハフ変換を用い、動き領域からの直線を検出し、更に直線検出に寄与した画素とその平均画像座標を取得することができる。
【００５０】
ここで、ハフ変換は、動き領域に含まれる線分を直線方程式として検出することができる。つまり、図２の動き領域には、長短、様々な線分の成分が含まれるが、予め設定した線分の長さ情報等に基づいて、画像中から得られる最も長い線分をゴルフシャフトであるとして、その直線方程式を求める。
【００５１】
また、ハフ変換の計算処理を行う際に、直線検出の決定に寄与した画素の画像座標を直線検出手段１６が有するメモリ等や蓄積手段１４等に一時的に記憶させておき、画像上の全ての画素の計算が終了した時点で、一時的に記憶しておいた画像座標を読み出して、その平均値を計算して平均画像座標を取得する。
【００５２】
＜画像座標取得手段１７＞
次に、画像座標取得手段１７におけるゴルフヘッド（所定位置）の画像座標を取得する具体例について、図を用いて説明する。図４は、画像座標の取得について説明するための一例を示す図である。
【００５３】
図４に示す画像４２は、フレームｎとフレームｎ−１の画像から得られた直線を示しており、１フレーム前で検出した直線と現在のフレームで検出した直線、及びその交点を示している。
【００５４】
ここで、画像座標の検出において、ゴルフヘッドはハフ変換等により求めた直施上に存在し、更に平均画像の座標位置の近くに存在することは推測されるが、このままでは位置を正確に特定することができない。そこで、本発明では、１フレーム前、すなわちフレームｎ−１で求めた直線と、フレームｎで求めた直線を利用する。
【００５５】
つまり、フレームｎの直線とフレームｎ−１の直線は、合成すると図４の画像４２に示すようにある地点で交差する。また、その交点位置は、ゴルフスイングにおけるゴルフクラブの回転軸近傍にあり、ゴルフシャフトの端点は、交点の画像座標位置から上述した平均画像の座標位置に向いた方向に存在する。
【００５６】
したがって、画像座標取得手段１７は、平均画像座標からその方向に向かって画素の輝度レベル等を基準に探索を行い、上述した直線検出に寄与した画素がなくなる位置を、ゴルフシャフトの端点として求め、この端点をゴルフヘッド位置とする。
【００５７】
＜＜ゴルフヘッドが物体等により隠れている場合の処理＞＞
ここで、画像座標取得手段１７における座標取得において、例えば所定位置としてのゴルフヘッドが人や物等の物体の影に隠れている場合には、ゴルフヘッドが撮影されていないため、正確なゴルフヘッド位置を取得することができない。そこで、本発明では、前後のフレームで検出されたゴルフヘッド位置から隠れているゴルフヘッドの位置を補間することができる。ここで、上述の処理について説明する。
【００５８】
図５は、ゴルフヘッドの位置の補間方法の一例について説明するための図である。なお、図５は、フレームｎ−２からフレームｎ＋２におけるゴルフヘッド位置の軌跡を示している。また、図５において、点５１−１〜５１−５は正しいゴルフヘッド位置を示し、点５２はフレームｎ時において、例えば被験者の背後にゴルフヘッドが隠れたことにより生じた誤った座標位置を示している。
【００５９】
ここで、フレームｎ−２とフレームｎ＋２のゴルフヘッド位置を通る直線をｘ軸、それに直交する軸をｙ軸とした２次元座標を考える。ゴルフヘッドの軌跡は、概ね楕円を描くため、フレームｎのヘッド位置のｙ成分がフレームｎ−１とフレームｎ＋１のヘッド位置のｙ成分の平均（図５に示される補助線のｙ成分）より大きければ、フレームｎにおけるゴルフヘッドの位置は正しいと判断することができる。
【００６０】
つまり、図５に示すように、画像座標取得手段１７において取得した座標位置が点５２の位置の場合には、上述した平均値よりもｙ成分の値が小さくなるため、誤った取得位置であることが分かる。
【００６１】
ここで、フレームｎ−２からフレームｎ＋２の区間のゴルフヘッドの軌跡を以下に示す３次方程式で近似的に表す。
ｙ＝ａｘ３＋ｂｘ２＋ｃｘ＋ｄ  ・・・（１）
また、フレームｎ−２、フレームｎ−１、フレームｎ＋１、及びフレームｎ＋２の４つの正しいゴルフヘッド位置（ｘ、ｙ）は分かっているため、これを４元一次連立方程式として上述した（１）式に代入して解くことにより、上述した方程式の係数ａ，ｂ，ｃ，ｄが求まる。
【００６２】
したがって、フレームｎのヘッド位置のｘ成分を、フレームｎ−１とフレームｎ＋１のゴルフヘッド位置のｘ成分の平均値として、上述した方程式に代入すると、ｙ成分も計算することができる。上述した手法により、画像座標取得手段１７はゴルフヘッド位置の誤検出の確認とその補間を行うことができる。
【００６３】
＜＜ゴルフシャフトの一部が隠れている場合の処理＞＞
次に、ゴルフクラブのシャフトの一部がスイング中の被験者の頭部や他の物体等により隠れている場合でも、シャフトがある程度撮影されていれば直線検出は可能である。
【００６４】
ここで、図６は、シャフトが隠れている場合のゴルフヘッドの位置の取得例を説明するための一例の図である。図６に示すように、例えば被験者の頭部６１によりシャフト６２の一部が途中で隠れてしまった場合（図６におけるシャフト６２−１，６２−２）、画像座標取得手段１７は、直線検出に寄与した画素の平均画像の座標位置からシャフト６２の端点に向かって探索を行う。
【００６５】
また、画像座標取得手段１７は、探索を進めると頭部６１で隠れた部分に達した時点で最初の端点となるが、本発明では、更にフレーム画像の端まで探索を進めることにより、画像端に達する直前の端点としてゴルフヘッドの位置を特定することができる。
【００６６】
なお、予めどの程度まで探索を続けるかについては、撮影されているカメラの解像度やレンズ構成等の各種撮影条件により設定しておいてもよい。これにより、探索時間を短縮させることができる。具体的には、例えば直線方向に向かって所定画素分まで処理を続けたり、近似する輝度レベルを有する画素領域がゴルフヘッドの大きさ分存在するか否かを画像処理等により確認するといった処理等を行うことで、ゴルフヘッドの位置を把握してもよい。
【００６７】
＜パラメータ取得手段１８＞
次に、パラメータ取得手段１８における具体的な処理内容について説明する。
【００６８】
撮像手段１１としてのカメラのパラメータを取得する場合には、例えばゴルフスイングを撮影した時のカメラ位置、カメラ方向、カメラのフォーカス調整等を動かすことなく、同じ条件でキャリブレーションパターンを撮影する。
【００６９】
このとき、例えば、従来からあるＴｓａｉやＥａｓｙｃａｌｉｂ等の手法等を利用し、撮影画像からカメラの焦点距離、回転行列、並行移動ベクトル等のカメラパラメータを求めることができる。ここで、カメラパラメータは以下に示す（２）式で定義される。
【００７０】
【数１】
2008171280.tif 000003
ここで、上述した（２）式において、Ａｍはカメラ座標から見た奥行き値を示し、ａは画素のアスペクト比を示し、Ｆはカメラの焦点距離を示し、（Ｃｘ，Ｃｙ）はカメラ光軸と画像面との交点を示し、Ｒｍは世界座標からカメラ座標への回転ベクトルを示し、Ｔｍは世界座標からカメラ座標への平行移動ベクトルを示し、ｍはカメラの識別番号を示している。
【００７１】
ここで、生成した行列、映像座標（Ｕｍ，Ｖｍ）及び世界座標（Ｘ，Ｙ，Ｚ）から以下のような関係式を作成する。
【００７２】
【数２】
2008171280.tif 000004
上述した（３）式において、Ｗｍはカメラと移動物体との距離を示している。
【００７３】
ここで、Ｐｍ＝Ａｍ［Ｒｍ  Ｔｍ］とする。このとき、Ｐｍは以下に示す（４）式で表すことができる。
【００７４】
【数３】
2008171280.tif 000005
このとき、上述したＷｍを消去し、上述した（４）式より（３）式を展開して世界座標（Ｘ，Ｙ，Ｚ）についてまとめると以下に示す（５）式で表すことができる。
【００７５】
【数４】
2008171280.tif 000006
ゴルフヘッドの画像座標（ｕｍ，ｖｍ）は与えられるため、上述した（５）式は世界座標（Ｘ，Ｙ，Ｚ）を未知数とする連立一次方程式となる。また、１つのカメラ映像からは（５）式の方程式が１つ得られるため、２つのカメラ映像からは以下に示す（６）式のような４つの方程式が得られる。
【００７６】
【数５】
2008171280.tif 000007
ここで、（ｕ１，ｖ１）と（ｕ２，ｖ２）は、２台のカメラ（カメラ１、カメラ２）からそれぞれ撮影されたゴルフヘッドの画像座標である。また、上述した（６）式には、未知数３に対して方程式が４つあるため、最小二乗解を求める。つまり、上述した（６）式をＭＸ＝ｂとすると、ゴルフヘッドの３次元位置Ｘの最小二乗解はＸ＝Ｍ＋ｂと求まる。ここで、Ｍ＋は一般化逆行列と呼ばれる行列であり、Ｍ＋＝（ＭＴＭ）−１ＭＴと定義される。
【００７７】
＜３次元座標取得手段１９＞
次に、３次元座標取得手段１９における３次元座標の取得内容について説明する。３次元座標を取得する場合には、２台のカメラで撮影した画像から、ゴルフヘッドの３次元座標を検出する。つまり、ゴルフヘッドの位置画像座標、及び実空間中の位置の３次元座標を検出する。
【００７８】
具体的には、３次元座標取得手段１９は、２台のカメラから撮影された映像に基づいて、上述した各構成による同様の処理を行い、画像座標取得手段１７により得られるゴルフヘッド位置画像座標と、パラメータ取得手段１８により得られるカメラパラメータにより上述したような方程式を構成して、カメラヘッドの実空間中の３次元位置を特定する。
【００７９】
つまり、２台のカメラにより、ゴルフスイングを撮影すると、それぞれのカメラで上述した（３）式が得られる。ここで、２台のカメラをｍ＝１，２とし、上述した手法で得られるゴルフヘッドの画像座標を（ｕ１，ｖ１）、（ｕ２，ｖ２）とすると、（３）式から（Ｘ，Ｙ，Ｚ）を未知数とする方程式が４つ構成される。したがって、これを最小二乗法等により解を計算することにより、ゴルフヘッドの３次元位置を計算することができる。
【００８０】
＜画面生成手段２０＞
次に、画面生成手段２０により生成される表示画面例について図を用いて説明する。図７は、画面生成手段により生成される表示画面の一例を示す図である。図７に示すように、表示画面７０には、被験者７１がゴルフクラブ７２をスイングしたときのゴルフヘッド７３のフレーム毎（単位時間毎）の位置の推移が点７４として示されている。この点７４により被験者等のユーザは、スイング時のゴルフヘッドの移動の軌跡を高精度に把握することができる。なお、点７４の表示は、時間の経過に対応させて点７４が順次増加していくように表示させてもよく、また点間を所定の曲線等で結んだ軌跡を表示させてもよい。
【００８１】
このように、自動的にゴルフヘッドの位置画像座標、及び実空間中の３次元座標を検出し、その検出結果を映像合成やＣＧにより視覚化させることで、高精度にスイングの状態を把握することができる。なお、画面生成手段２０により生成され、表示される画面は、本発明においてはこの限りではなく、例えば動き領域検出結果や、直線検出結果、画像座標、カメラパラメータ、３次元座標等を表示させてもよい。
【００８２】
上述した位置検出装置１０により、移動する棒体の所定位置の検出を高精度に行うことができる。具体的には、例えば１台のカメラで撮影した画像からゴルフヘッドの画像座標を検出し、２台のカメラで撮影した画像からゴルフヘッドの３次元座標を検出することができる。その結果、例えば、カメラとＰＣ等の汎用のコンピュータ等を用いて、自動的にゴルフヘッドの位置画像座標、及び実空間中の３次元座標を検出し、その検出結果を映像合成やＣＧにより視覚化することが可能なシステムを実現することができる。したがって、被験者は、その画像を見て確認しながらスイング時のフォームの矯正等を行うことができ、これにより技術を上達させることができる。
【００８３】
＜実行プログラム＞
ここで、上述した位置検出装置１０は、上述した専用の装置構成等を用いて本発明における位置検出を行うこともできるが、各構成における処理をコンピュータに実行させるための実行プログラムを生成し、例えば汎用のパーソナルコンピュータ、サーバ等にそのプログラムをインストールすることにより、本発明に係る位置検出を実現することができる。
【００８４】
＜ハードウェア構成＞
ここで、本発明における位置検出処理が実行可能なコンピュータのハードウェア構成例について図を用いて説明する。図８は、本発明における位置検出処理が実現可能なハードウェア構成の一例を示す図である。
【００８５】
図８におけるコンピュータ本体には、入力装置８１と、出力装置８２と、ドライブ装置８３と、補助記憶装置８４と、メモリ装置８５と、各種制御を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８６と、ネットワーク接続装置８７とを有するよう構成されており、これらはシステムバスＢで相互に接続されている。
【００８６】
入力装置８１は、ユーザ等が操作するキーボード及びマウス等のポインティングデバイスや音声入力デバイス等を有しており、ユーザ等からのプログラムの実行指示等、各種操作信号、音声信号を入力する。出力装置８２は、本発明における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイやスピーカ等を有し、ＣＰＵ８６が有する制御プログラムにより実行経過や結果等を表示又は音声出力することができる。
【００８７】
ここで、本発明において、コンピュータ本体にインストールされる実行プログラムは、例えばＣＤ−ＲＯＭやＤＶＤ等の記録媒体８８等により提供される。プログラムを記録した記録媒体８８は、ドライブ装置８３にセット可能であり、記録媒体８８に含まれる実行プログラムが、記録媒体８８からドライブ装置８３を介して補助記憶装置８４にインストールされる。
【００８８】
また、ドライブ装置８３は、本発明に係る実行プログラムを記録媒体８８に記録することができる。これにより、その記録媒体８８を用いて、他の複数のコンピュータに容易にインストールすることができ、容易に位置検出処理を実現することができる。
【００８９】
補助記憶装置８４は、ハードディスク等のストレージ手段であり、本発明における実行プログラムや、コンピュータに設けられた制御プログラム等を蓄積し必要に応じて入出力を行うことができる。また、補助記憶装置８４は、上述した動き領域検出結果や、直線検出結果、画像座標、カメラパラメータ、３次元座標、生成される表示画面等を蓄積する蓄積手段として用いることもできる。
【００９０】
メモリ装置８５は、ＣＰＵ８６により補助記憶装置８４から読み出された実行プログラム等を格納する。なお、メモリ装置８５は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等からなる。
【００９１】
ＣＰＵ８６は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等の制御プログラム、及び補助記憶装置８４から読み出されメモリ装置８５に格納されている実行プログラム等に基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して、位置検出における各処理を実現することができる。また、プログラムの実行中に必要な各種情報等は、補助記憶装置８４から取得することができ、また格納することもできる。
【００９２】
ネットワーク接続装置８７は、電話回線やＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ケーブル等の通信ネットワーク等と接続することにより、実行プログラムを通信ネットワークに接続されている他の端末等から取得したり、プログラムを実行することで得られた実行結果又は本発明における実行プログラムを他の端末等に提供することができる。
【００９３】
上述したようなハードウェア構成により、特別な装置構成を必要とせず、低コストで位置検出処理を実現することができる。また、プログラムをインストールすることにより、容易に位置検出処理を実現することができる。
【００９４】
次に、本発明における実行プログラムを用いた処理手順についてフローチャートを用いて説明する。
【００９５】
＜位置検出処理＞
図９は、本発明における位置検出処理手順の一例を示すフローチャートである。図９において、まず撮像手段としてのカメラ等を用いて被験者のスイング映像を取得する（Ｓ０１）。なお、Ｓ０１の処理では、一例として２台のカメラを用いて別々のカメラから被験者のゴルフスイングを撮影し、それぞれの映像を取得するものとする。
【００９６】
次に、Ｓ０１の処理により得られる映像から動き領域の検出を行い（Ｓ０２）、検出した動き領域の情報から上述したようにゴルフシャフトに相当する直線の検出を行う（Ｓ０３）。また、Ｓ０３の処理では、連続する２つの映像フレームにおいてこの直線を求め、この２つの直線の交点画像座標、及び直線検出に寄与した画素の平均画像座標に基づいて、直線上に存在するゴルフヘッドの位置を探索する方向を決定する。
【００９７】
次に、Ｓ０３の処理により得られる直線の方向に基づいて、上述した平均画像座標を出発点として、動き領域画像を探索することにより、ゴルフヘッドの画像座標を取得し（Ｓ０４）、更にカメラパラメータを取得し（Ｓ０５）、Ｓ０４の処理により得られるゴルフヘッドの画像座標と、Ｓ０５の処理により得られるカメラパラメータとからゴルフヘッドの３次元座標を取得する（Ｓ０６）。
【００９８】
次に、Ｓ０４により得られる座標又はＳ０６の処理により得られる座標から被験者に結果を表示するための画面を生成し（Ｓ０７）、生成した画面を被験者等に表示する（Ｓ０８）。なお、表示される画面としては、例えば図７に示すような画像等が表示される。このように、上述した位置検出処理により、移動する棒体の所定位置の検出を高精度に行うことができる。また、検出結果を画面に表示することで、移動する棒体の所定位置の時間の経過に伴う軌跡を高精度に把握することができる。
【００９９】
上述したように本発明によれば、移動する棒体の所定位置の検出を高精度に行うことができる。具体的には、例えば１台のカメラで撮影した画像からゴルフヘッドの画像座標を検出し、２台のカメラで撮影した画像からゴルフヘッドの３次元座標を検出することができる。その結果、カメラとＰＣを用いて、自動的にゴルフヘッドの位置画像座標、及び実空間中の３次元座標を検出し、その検出結果を映像合成やＣＧにより視覚化することが可能なシステムを実現することができる。したがって、被験者は、その画像を見て確認しながらスイング時のフォームの矯正等を行うことができ、これにより技術を上達させることができる。
【０１００】
なお、上述した実施形態では、本発明における棒状の剛体としてゴルフクラブを用いて説明したが、本発明においてはこの限りではなく、例えばテニスラケットや野球バット等を用いてその所定位置（テニスラケットの場合におけるガットの中央、又は野球バットにおける芯等）の位置検出を行い、その移動の軌跡を画像或いは映像として表示してもよい。つまり、略直線状の物体に対する位置検出の分野において広く適用することができる。
【０１０１】
以上本発明の好ましい実施の形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【図面の簡単な説明】
【０１０２】
【図１】本発明における位置検出装置の一構成例を示す図である。
【図２】ゴルフスイングの撮影映像から動いている領域を検出する処理内容を説明するための一例の図である。
【図３】フレームから直線を検出する一例を示す図である。
【図４】画像座標の取得について説明するための一例を示す図である。
【図５】ゴルフヘッドの位置の補間方法の一例について説明するための図である。
【図６】シャフトが隠れている場合のゴルフヘッドの位置の取得例を説明するための一例の図である。
【図７】画面生成手段により生成される表示画面の一例を示す図である。
【図８】本発明における位置検出処理が実現可能なハードウェア構成の一例を示す図である。
【図９】本発明における位置検出処理手順の一例を示すフローチャートである。
【符号の説明】
【０１０３】
１０  位置検出装置
１１  撮像手段
１２  入力手段
１３  出力手段
１４  蓄積手段
１５  動き領域検出手段
１６  直線検出手段
１７  画像座標取得手段
１８  パラメータ取得手段
１９  ３次元座標取得手段
２０  画像生成手段
２１  送受信手段
２２  制御手段
３１  映像フレーム
３２，４１，４２  画像
５１，５２，７４  点
６１  頭部
６２  シャフト
７０  表示画面
７１  被験者
７２  ゴルフクラブ
７３  ゴルフヘッド
８１  入力装置
８２  出力装置
８３  ドライブ装置
８４  補助記憶装置
８５  メモリ装置
８６  ＣＰＵ
８７  ネットワーク接続装置
８８  記録媒体
【図１】
2008171280.tif 000008
【図５】
2008171280.tif 000009
【図６】
2008171280.tif 000010
【図８】
2008171280.tif 000011
【図９】
2008171280.tif 000012
【図２】
2008171280.tif 000013
【図３】
2008171280.tif 000014
【図４】
2008171280.tif 000015
【図７】
2008171280.tif 000016