(57)【要約】      （修正有）【課題】簡易かつ高精度にスイング動作を解析することができるスイング解析装置を提供する。【解決手段】ゴルファー７によるゴルフクラブのスイング動作を解析するためのスイング解析装置１が提供される。スイング解析装置は、取得部と、導出部とを備える。取得部は、スイング動作を距離画像センサ２により撮影した深度画像を取得する。導出部は、深度画像に基づいて、スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出する。【選択図】図１
2017074350.tif 000002
【特許請求の範囲】
【請求項１】
ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析装置であって、
前記スイング動作を距離画像センサにより撮影した深度画像を取得する取得部と、
前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出する導出部と
を備える、
スイング解析装置。
【請求項２】
前記取得部は、前記距離画像センサから二次元画像をさらに取得し、
前記導出部は、前記二次元画像に基づいて、前記所定の部位の二次元座標を特定するとともに、前記深度画像に基づいて、前記所定の部位の奥行きを特定することにより、前記所定の部位の三次元座標を導出する、
請求項１に記載のスイング解析装置。
【請求項３】
前記導出部は、第１時刻での前記二次元画像上において、前記第１時刻よりも前の第２時刻での前記所定の部位の二次元座標を基準に探索範囲を設定し、前記探索範囲内で、前記所定の部位の二次元座標を探索する、
請求項２に記載のスイング解析装置。
【請求項４】
前記所定の部位は、前記ゴルフクラブのグリップである、
請求項１から３のいずれかに記載のスイング解析装置。
【請求項５】
前記所定の部位は、前記ゴルフクラブのグリップであり、
前記導出部は、前記二次元画像に基づいて、前記ゴルフクラブのシャフトの二次元座標を特定し、前記シャフトの二次元座標に基づいて、前記グリップの二次元座標を特定する、
請求項２又は３に記載のスイング解析装置。
【請求項６】
前記所定の部位は、前記ゴルフクラブのグリップであり、
前記取得部は、前記距離画像センサから二次元画像をさらに取得し、
前記導出部は、前記二次元画像に基づいて、前記ゴルフクラブのシャフトの二次元座標を特定し、前記深度画像に基づいて、前記シャフトの二次元座標での奥行きを特定することにより、前記シャフトの三次元座標を導出し、前記シャフトの三次元座標の分布傾向に基づいて、前記グリップの三次元座標を特定する、
請求項１に記載のスイング解析装置。
【請求項７】
前記二次元画像及び前記深度画像は、前記スイング動作を前記距離画像センサにより前記ゴルファーの前方から撮影した情報であり、
前記導出部は、アドレス付近での前記二次元画像に基づいて、前記シャフトの二次元座標を特定し、前記シャフトの二次元座標に基づいて、前記グリップの三次元座標を特定する、
請求項５又は６に記載の解析装置。
【請求項８】
前記導出部は、前記スイング動作のフェーズに応じて閾値を自動又は固定の間で切り替えつつ、前記二次元画像を二値化する、
請求項２，３，５〜７のいずれに記載の解析装置。
【請求項９】
前記導出部は、前記スイング動作中のトップ付近のフェーズでは、前記ゴルファーの頭の位置を基準として、前記探索範囲の設定位置を制限する、
請求項３に記載の解析装置。
【請求項１０】
前記取得部は、前記距離画像センサから時系列の二次元画像をさらに取得し、
前記導出部は、第１時刻での前記二次元画像から前記ゴルフクラブのグリップの位置が抽出できない場合には、前記第１時刻の直後の第２時刻での前記二次元画像から前記ゴルフクラブのシャフトの位置を特定し、当該シャフトの位置に基づいて当該第２時刻における前記グリップの位置を特定する、
請求項１に記載の解析装置。
【請求項１１】
前記所定の部位は、前記ゴルファーの肩である、
請求項１に記載のスイング解析装置。
【請求項１２】
前記取得部は、人体の骨組みを表すスケルトンデータをさらに取得し、
前記導出部は、前記深度画像及び前記スケルトンデータに基づいて、前記肩の三次元座標を導出する、
請求項１１に記載のスイング解析装置。
【請求項１３】
前記導出部は、中央部分を強調し、周辺部分を抑制する凸部抽出フィルタにより、前記深度画像をフィルタリングすることで、前記肩の三次元座標を導出する、
請求項１１又は１２に記載のスイング解析装置。
【請求項１４】
前記導出部は、前記深度画像に対し凸形状の画像テンプレートを用いてテンプレートマッチングを施すことで、前記肩の三次元座標を導出する、
請求項１１又は１２に記載のスイング解析装置。
【請求項１５】
前記導出部は、１つのコーナー付近を強調し、他のコーナー付近を抑制する肩シルエットフィルタにより、前記深度画像をフィルタリングすることで、前記ゴルファーの肩の三次元座標を導出する、
請求項１１から１４のいずれかに記載のスイング解析装置。
【請求項１６】
前記導出部は、アドレスからテイクバック腕水平までの少なくとも一部の区間において、前記スケルトンデータに基づいて、前記肩の三次元座標を導出する、
請求項１２に記載のスイング解析装置。
【請求項１７】
前記導出部は、テイクバック腕水平からダウンスイング腕水平までの少なくとも一部の区間において、前記凸部抽出フィルタによるフィルタリングを行うことで、前記肩の三次元座標を導出する、
請求項１３に記載のスイング解析装置。
【請求項１８】
前記導出部は、テイクバック腕水平からダウンスイング腕水平までの少なくとも一部の区間において、前記凸形状の画像テンプレートによるテンプレートマッチングを行うことで、前記肩の三次元座標を導出する、
請求項１４に記載のスイング解析装置。
【請求項１９】
前記導出部は、アドレスからテイクバック腕水平まで及びダウンスイング腕水平からフィニッシュまでの少なくとも一部の区間において、前記肩シルエットフィルタによるフィルタリングを行うことで、前記肩の三次元座標を導出する、
請求項１５に記載のスイング解析装置。
【請求項２０】
前記導出部は、第１時刻での前記深度画像上において、前記第１時刻又は前記第１時刻よりも前の第２時刻での前記肩の二次元座標を基準に探索範囲を設定し、前記探索範囲内で、前記フィルタリングを行う、
請求項１１から１９のいずれかに記載のスイング解析装置。
【請求項２１】
前記導出部は、予め定められた係数を有する所定の重回帰式に前記所定の部位の三次元座標を代入することによりキャリブレーションを行う、
請求項１から２０のいずれかに記載のスイング解析装置。
【請求項２２】
前記取得部は、前記スイング動作を複数の前記距離画像センサにより少なくとも第１方向及び第２方向から撮影した前記深度画像を取得する、
請求項１から２１のいずれかに記載のスイング解析装置。
【請求項２３】
前記取得部は、少なくとも前記第１方向からの前記深度画像に基づく人体の骨組みを表すスケルトンデータをさらに取得し、
前記導出部は、前記第１方向からの前記スケルトンデータを前記第２方向からの前記スケルトンデータに変換し、前記第２方向からの前記スケルトンデータに基づいて、前記所定の部位の位置情報を導出する、
請求項２２に記載のスイング解析装置。
【請求項２４】
前記第１方向は、前記ゴルファーの正面に向かう方向であり、前記第２方向は、前記ゴルファーの側面に向かう方向である、
請求項２２又は２３に記載のスイング解析装置。
【請求項２５】
前記取得部は、前記深度画像に基づく人体の骨組みを表すスケルトンデータをさらに取得し、
前記導出部は、前記スケルトンデータに基づいて、前記所定の部位に含まれる第１部位の位置情報を導出する、
請求項１から２４のいずれかに記載のスイング解析装置。
【請求項２６】
前記取得部は、人体のシルエットを表すシルエットデータをさらに取得し、
前記導出部は、前記スケルトンデータ及び前記シルエットデータに基づいて、前記所定の部位に含まれる前記第１部位とは異なる第２部位の位置情報を導出する、
請求項２５に記載のスイング解析装置。
【請求項２７】
前記導出部は、前記深度画像において深度情報が得られていない領域の情報に基づいて、前記シルエットデータにおいて特定される前記シルエットの領域を拡張する、
請求項１から２６のいずれかに記載のスイング解析装置。
【請求項２８】
前記導出部は、トップのタイミングにおける前記ゴルファーの右側面側からの前記深度画像において、手前側に突出している箇所を前記ゴルファーの左肘として導出する、
請求項１から２７のいずれかに記載のスイング解析装置。
【請求項２９】
所定のタイミングにおける前記所定の部位の位置情報及び前記三次元ベクトルの少なくとも一方に基づいて算出される指標値を、予め定められている正解データと比較することにより、前記スイング動作の良否を判定する判定部
をさらに備える、
請求項１から２８のいずれかに記載のスイング解析装置。
【請求項３０】
ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析方法であって、
前記スイング動作を距離画像センサにより撮影した深度画像を取得するステップと、
前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出するステップと
を備える、
スイング解析方法。
【請求項３１】
ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析プログラムであって、
前記スイング動作を距離画像センサにより撮影した深度画像を取得するステップと、
前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出するステップと
をコンピュータに実行させる、
スイング解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析装置、方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、ゴルファーによるゴルフクラブのスイング動作をカメラで撮影し、得られた画像に基づいてスイング動作を解析する装置が公知である（特許文献１，２等）。解析の結果は、ゴルファーに適したゴルフクラブのフィッティングや、ゴルファーのフォームの改善、ゴルフ用品の開発等、様々な用途で利用される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２１５３４９号公報
【特許文献２】特開２００４−３１３４７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以上のようなスイング動作の解析においては、しばしば、画像に写るゴルフクラブのグリップやヘッド、ゴルファーの関節等、注目部位の挙動を三次元的に特定することが行われる。特許文献１，２は、複数台のカメラにより複数の方向からスイング動作を撮影し、三角測量法やＤＬＴ法等に基づいて注目部位の三次元座標を導出することを開示している。しかしながら、複数の方向にカメラを配置しなくてはならないことは、設備を大型化させ、スイング解析を行うためのスペースの確保を困難にさせ得る。また、このような三次元計測は、解析の精度や計算負荷等の点からして、少なからず改善の余地がある。
【０００５】
本発明は、簡易かつ高精度にスイング動作を解析することができるスイング解析装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１観点に係るスイング解析装置は、ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析装置であって、取得部と、導出部とを備える。前記取得部は、前記スイング動作を距離画像センサにより撮影した深度画像を取得する。前記導出部は、前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出する。
【０００７】
本発明の第２観点に係るスイング解析装置は、第１観点に係るスイング解析装置であって、前記取得部は、前記距離画像センサから二次元画像をさらに取得する。前記導出部は、前記二次元画像に基づいて、前記所定の部位の二次元座標を特定するとともに、前記深度画像に基づいて、前記所定の部位の奥行きを特定することにより、前記所定の部位の三次元座標を導出する。
【０００８】
本発明の第３観点に係るスイング解析装置は、第２観点に係るスイング解析装置であって、前記導出部は、第１時刻での前記二次元画像上において、前記第１時刻よりも前の第２時刻での前記所定の部位の二次元座標を基準に探索範囲を設定し、前記探索範囲内で、前記所定の部位の二次元座標を探索する。
【０００９】
本発明の第４観点に係るスイング解析装置は、第１観点から第３観点のいずれかに係るスイング解析装置であって、前記所定の部位は、前記ゴルフクラブのグリップである。
【００１０】
本発明の第５観点に係るスイング解析装置は、第２観点又は第３観点に係るスイング解析装置であって、前記所定の部位は、前記ゴルフクラブのグリップである。前記導出部は、前記二次元画像に基づいて、前記ゴルフクラブのシャフトの二次元座標を特定し、前記シャフトの二次元座標に基づいて、前記グリップの二次元座標を特定する。
【００１１】
本発明の第６観点に係るスイング解析装置は、第１観点に係るスイング解析装置であって、前記所定の部位は、前記ゴルフクラブのグリップである。前記取得部は、前記距離画像センサから二次元画像をさらに取得する。前記導出部は、前記二次元画像に基づいて、前記ゴルフクラブのシャフトの二次元座標を特定し、前記深度画像に基づいて、前記シャフトの二次元座標での奥行きを特定することにより、前記シャフトの三次元座標を導出し、前記シャフトの三次元座標の分布傾向に基づいて、前記グリップの三次元座標を特定する。
【００１２】
本発明の第７観点に係るスイング解析装置は、第５観点又は第６観点に係るスイング解析装置であって、前記二次元画像及び前記深度画像は、前記スイング動作を前記距離画像センサにより前記ゴルファーの前方から撮影した情報である。前記導出部は、アドレス付近での前記二次元画像に基づいて、前記シャフトの二次元座標を特定し、前記シャフトの二次元座標に基づいて、前記グリップの三次元座標を特定する。
【００１３】
本発明の第８観点に係るスイング解析装置は、第２，３，５〜７観点のいずれに係るスイング解析装置であって、前記導出部は、前記スイング動作のフェーズに応じて閾値を自動又は固定の間で切り替えつつ、前記二次元画像を二値化する。
【００１４】
本発明の第９観点に係るスイング解析装置は、第３観点に係るスイング解析装置であって、前記導出部は、前記スイング動作中のトップ付近のフェーズでは、前記ゴルファーの頭の位置を基準として、前記探索範囲の設定位置を制限する。
【００１５】
本発明の第１０観点に係るスイング解析装置は、第１観点に係るスイング解析装置であって、前記取得部は、前記距離画像センサから時系列の二次元画像をさらに取得する。前記導出部は、第１時刻での前記二次元画像から前記ゴルフクラブのグリップの位置が抽出できない場合には、前記第１時刻の直後の第２時刻での前記二次元画像から前記ゴルフクラブのシャフトの位置を特定し、当該シャフトの位置に基づいて当該第２時刻における前記グリップの位置を特定する。
【００１６】
本発明の第１１観点に係るスイング解析装置は、第１観点に係るスイング解析装置であって、前記所定の部位は、前記ゴルファーの肩である。
【００１７】
本発明の第１２観点に係るスイング解析装置は、第１１観点に係るスイング解析装置であって、前記取得部は、人体の骨組みを表すスケルトンデータをさらに取得し、前記導出部は、前記深度画像及び前記スケルトンデータに基づいて、前記肩の三次元座標を導出する。
【００１８】
本発明の第１３観点に係るスイング解析装置は、第１１観点又は第１２観点に係るスイング解析装置であって、前記導出部は、中央部分を強調し、周辺部分を抑制する凸部抽出フィルタにより、前記深度画像をフィルタリングすることで、前記肩の三次元座標を導出する。
【００１９】
本発明の第１４観点に係るスイング解析装置は、第１１観点又は第１２観点に係るスイング解析装置であって、前記導出部は、前記深度画像に対し凸形状の画像テンプレートを用いてテンプレートマッチングを施すことで、前記肩の三次元座標を導出する。
【００２０】
本発明の第１５観点に係るスイング解析装置は、第１１観点から第１４観点のいずれかに係るスイング解析装置であって、前記導出部は、１つのコーナー付近を強調し、他のコーナー付近を抑制する肩シルエットフィルタにより、前記深度画像をフィルタリングすることで、前記ゴルファーの肩の三次元座標を導出する。
【００２１】
本発明の第１６観点に係るスイング解析装置は、第１２観点に係るスイング解析装置であって、前記導出部は、アドレスからテイクバック腕水平までの少なくとも一部の区間において、前記スケルトンデータに基づいて、前記肩の三次元座標を導出する。
【００２２】
本発明の第１７観点に係るスイング解析装置は、第１３観点に係るスイング解析装置であって、前記導出部は、テイクバック腕水平からダウンスイング腕水平までの少なくとも一部の区間において、前記凸部抽出フィルタによるフィルタリングを行うことで、前記肩の三次元座標を導出する。
【００２３】
本発明の第１８観点に係るスイング解析装置は、第１４観点に係るスイング解析装置であって、前記導出部は、テイクバック腕水平からダウンスイング腕水平までの少なくとも一部の区間において、前記凸形状の画像テンプレートによるテンプレートマッチングを行うことで、前記肩の三次元座標を導出する。
【００２４】
本発明の第１９観点に係るスイング解析装置は、第１５観点に係るスイング解析装置であって、前記導出部は、アドレスからテイクバック腕水平まで及びダウンスイング腕水平からフィニッシュまでの少なくとも一部の区間において、前記肩シルエットフィルタによるフィルタリングを行うことで、前記肩の三次元座標を導出する。
【００２５】
本発明の第２０観点に係るスイング解析装置は、第１１観点から第１９観点のいずれかに係るスイング解析装置であって、前記導出部は、第１時刻での前記深度画像上において、前記第１時刻又は前記第１時刻よりも前の第２時刻での前記肩の二次元座標を基準に探索範囲を設定し、前記探索範囲内で、前記フィルタリングを行う。
【００２６】
本発明の第２１観点に係るスイング解析装置は、第１観点から第２０観点のいずれかに係るスイング解析装置であって、前記導出部は、予め定められた係数を有する所定の重回帰式に前記所定の部位の三次元座標を代入することによりキャリブレーションを行う。
【００２７】
本発明の第２２観点に係るスイング解析装置は、第１観点から第２１観点のいずれかに係るスイング解析装置であって、前記取得部は、前記スイング動作を複数の前記距離画像センサにより少なくとも第１方向及び第２方向から撮影した前記深度画像を取得する。
【００２８】
本発明の第２３観点に係るスイング解析装置は、第２２観点に係るスイング解析装置であって、前記取得部は、少なくとも前記第１方向からの前記深度画像に基づく人体の骨組みを表すスケルトンデータをさらに取得する。前記導出部は、前記第１方向からの前記スケルトンデータを前記第２方向からの前記スケルトンデータに変換し、前記第２方向からの前記スケルトンデータに基づいて、前記所定の部位の位置情報を導出する。
【００２９】
本発明の第２４観点に係るスイング解析装置は、第２２観点又は第２３観点に係るスイング解析装置であって、前記第１方向は、前記ゴルファーの正面に向かう方向であり、前記第２方向は、前記ゴルファーの側面に向かう方向である。
【００３０】
本発明の第２５観点に係るスイング解析装置は、第１観点から第２４観点のいずれかに係るスイング解析装置であって、前記取得部は、前記深度画像に基づく人体の骨組みを表すスケルトンデータをさらに取得する。前記導出部は、前記スケルトンデータに基づいて、前記所定の部位に含まれる第１部位の位置情報を導出する。
【００３１】
本発明の第２６観点に係るスイング解析装置は、第２５観点に係るスイング解析装置であって、前記取得部は、人体のシルエットを表すシルエットデータをさらに取得する。前記導出部は、前記スケルトンデータ及び前記シルエットデータに基づいて、前記所定の部位に含まれる前記第１部位とは異なる第２部位の位置情報を導出する。
【００３２】
本発明の第２７観点に係るスイング解析装置は、第１観点から第２６観点のいずれかに係るスイング解析装置であって、前記導出部は、前記深度画像において深度情報が得られていない領域の情報に基づいて、前記シルエットデータにおいて特定される前記シルエットの領域を拡張する。
【００３３】
本発明の第２８観点に係るスイング解析装置は、第１観点から第２７観点のいずれかに係るスイング解析装置であって、前記導出部は、トップのタイミングにおける前記ゴルファーの右側面側からの前記深度画像において、手前側に突出している箇所を前記ゴルファーの左肘として導出する。
【００３４】
本発明の第２９観点に係るスイング解析装置は、第１観点から第２８観点のいずれかに係るスイング解析装置であって、判定部をさらに備える。前記判定部は、所定のタイミングにおける前記所定の部位の位置情報及び前記三次元ベクトルの少なくとも一方に基づいて算出される指標値を、予め定められている正解データと比較することにより、前記スイング動作の良否を判定する。
【００３５】
本発明の第３０観点に係るスイング解析方法は、ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析方法であって、前記スイング動作を距離画像センサにより撮影した深度画像を取得するステップと、前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出するステップとを備える。
【００３６】
本発明の第３１観点に係るスイング解析プログラムは、ゴルファーによるゴルフクラブのスイング動作を解析するためのスイング解析プログラムであって、前記スイング動作を距離画像センサにより撮影した深度画像を取得するステップと、前記深度画像に基づいて、前記スイング動作中の前記ゴルフクラブ又は前記ゴルファーの所定の部位の位置情報、或いは、前記スイング動作中の前記ゴルフクラブのシャフトの向きを表す三次元ベクトルを導出するステップとをコンピュータに実行させる。
【発明の効果】
【００３７】
本発明によれば、ゴルファーによるゴルフクラブのスイング動作を距離画像センサにより撮影した深度画像が取得され、これに基づいて、スイング動作中のゴルフクラブ又はゴルファーの所定の部位の位置情報、或いはスイング動作中のゴルフクラブのシャフトの向きを表す三次元ベクトルが導出される。その結果、複数台のカメラを用いた異なる方向からの撮影は、必ずしも必要とされない。従って、簡易かつ高精度にスイング動作を解析することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の第１実施形態に係るスイング解析装置を含むスイング解析システムの全体構成を示す図。
【図２】第１実施形態に係るスイング解析システムの機能ブロック図。
【図３】グリップ挙動導出処理の全体の流れを示すフローチャート。
【図４】（Ａ）アドレス状態を示す図。（Ｂ）トップ状態を示す図。（Ｃ）インパクト状態を示す図。（Ｄ）フィニッシュ状態を示す図。
【図５】ＩＲフレームからグリップ端の二次元座標を直接抽出する処理の流れを示すフローチャート。
【図６】グリップ端及びシャフトの像を示すＩＲフレームの図。
【図７】グリップ端の像の補完を説明する図。
【図８】深度フレームからグリップ端の奥行きを直接特定する処理の流れを示すフローチャート。
【図９】グリップ端の位置を示す深度フレームの図。
【図１０】グリップ端の近傍の深度フレームの図。
【図１１】人体の像を考慮したグリップ端の奥行きの補正の効果を示すグラフ。
【図１２】例外処理の流れを示すフローチャート。
【図１３】シャフトの慣性主軸の位置を示す深度フレームの図。
【図１４】慣性主軸上の点のｂ点からの距離と奥行きとの関係をプロットしたグラフ。
【図１５】慣性主軸上のａ点及びｃ点の位置を示す深度フレームの図。
【図１６】グリップの下部の奥行きに基づいて、グリップ端の三次元座標を推定する処理の流れを示すフローチャート。
【図１７】テスト被写体の例を示す図。
【図１８】補正処理の流れを示すフローチャート。
【図１９】主成分分析によるグリップ端の三次元座標の特定の方法を説明する図。
【図２０】補正処理の結果を示す図。
【図２１】左肩挙動導出処理の全体の流れを示すフローチャート。
【図２２】左肩挙動導出処理により導出された左肩の三次元座標を示すグラフ。
【図２３】凸部抽出フィルタの例を示す図。
【図２４】トップのタイミングにおける深度フレームを示す図。
【図２５】凸部抽出フィルタ適用後の深度フレームを示す図。
【図２６】深度フレームの二値化画像を示す図。
【図２７】収縮後の二値化画像を示す図。
【図２８】凸部抽出フィルタが適用されたマスキング後の深度フレームを示す図。
【図２９】凸部抽出フィルタの適用範囲の例を示す図。
【図３０】凸部抽出フィルタの適用範囲の別の例を示す図。
【図３１】左肩シルエットフィルタの例を示す図。
【図３２】深度フレームの二値化画像を示す図。
【図３３】左肩シルエットフィルタ適用後の二値化画像を示す図。
【図３４】左肩シルエットフィルタの適用範囲の例を示す図。
【図３５】左肩シルエットフィルタの適用範囲の別の例を示す図。
【図３６】左肩シルエットフィルタの適用範囲のさらに別の例を示す図。
【図３７】腕水平フレームの検出に用いられる矩形領域を示す図。
【図３８】シャフト方向導出処理の全体の流れを示すフローチャート。
【図３９】シャフトの三次元ベクトルの各軸成分のグラフ表示例を示す図。
【図４０】シャフトの三次元ベクトルの三次元的なグラフ表示例を示す図。
【図４１Ａ】実際のグリップ端が探索範囲外にあるときのＩＲフレームを示す図。
【図４１Ｂ】ＩＲフレーム上での探索範囲を設定するための限界ラインを示す図。
【図４１Ｃ】テイクバック腕水平時の人物領域画像上での頭の頂点を示す図。
【図４２】図３の実施形態に係るグリップ端の三次元座標を導出する処理を示すフローチャート。
【図４３】変形例に係るグリップ端の三次元座標を導出する処理を示すフローチャート。
【図４４】凸形状テンプレートの例を示す図。
【図４５】Ｋｉｎｅｃｔ（登録商標）ｖ２を用いた変形例に係るテンプレートマッチングにより抽出された左肩の位置を示す図。
【図４６】左肩抽出のためのアルゴリズムの切り替えを説明する概念図。
【図４７】本発明の第２実施形態に係るスイング解析装置を含むスイング解析システムの全体構成を示す平面図。
【図４８】第２実施形態に係るスイング解析システムの機能ブロック図。
【図４９】位置導出処理の流れを示すフローチャート。
【図５０】様々なチェックポイントでのゴルファーの正面図。
【図５１】様々なチェックポイントでのゴルファーの右側面図。
【図５２】アドレス時の正面シルエットデータに正面スケルトンデータを重ねた画像を示す図。
【図５３】アドレスから少し進んだタイミングでの正面シルエットデータに正面スケルトンデータを重ねた画像を示す図。
【図５４Ａ】アドレス時の右側面シルエットデータの画像を示す図。
【図５４Ｂ】図５４Ａの画像において、左足及び右足のシルエットが補完された画像を示す図。
【図５５】トップ時の右側面シルエットデータの画像を示す図。
【図５６】テイクバック腕水平時の正面シルエットデータの画像を示す図。
【発明を実施するための形態】
【００３９】
以下、図面を参照しつつ、本発明のいくつかの実施形態に係るスイング解析装置、方法及びプログラムについて説明する。
【００４０】
＜１．第１実施形態＞
＜１−１．スイング解析システムの概要＞
図１及び図２に、本発明の第１実施形態に係るスイング解析装置１を含むスイング解析システム１００の全体構成図を示す。スイング解析システム１００は、ゴルファー７によるゴルフクラブ５のスイング動作を動画として撮影し、当該動画に基づいて当該ゴルフスイングを解析するためのシステムである。以上の撮影は、距離画像センサ２により行われる。スイング解析装置１は、距離画像センサ２とともにスイング解析システム１００を構成し、距離画像センサ２により得られた画像データを画像処理することで、ゴルフスイングを解析する。スイング解析装置１による解析の結果は、ゴルファー７に適したゴルフクラブ５のフィッティングや、ゴルファー７のフォームの改善、ゴルフ用品の開発等、様々な用途で利用される。
【００４１】
本実施形態では、スイング動作中のゴルフクラブ５のグリップ５１の挙動と、ゴルファー７の左肩７１の挙動とが解析される。より具体的には、スイング動作中のグリップ５１及び左肩７１の三次元座標が導出される。また、本実施形態では、スイング動作中のゴルフクラブ５のシャフト５２の向きが解析される。
【００４２】
＜１−２．各部の詳細＞
以下、スイング解析システム１００の各部の詳細について説明する。
【００４３】
＜１−２−１．距離画像センサ＞
距離画像センサ２は、ゴルファー７がゴルフクラブ５を試打する様子を二次元画像として撮影するとともに、被写体までの距離を測定する測距機能を有するカメラである。従って、距離画像センサ２は、二次元画像とともに、深度画像を出力することができる。なお、ここでいう二次元画像とは、撮影空間の像をカメラの光軸に直交する平面内へ投影した画像である。また、深度画像とは、カメラの光軸方向の被写体の奥行きのデータを、二次元画像と略同じ撮像範囲内の画素に割り当てた画像である。
【００４４】
本実施形態で使用される距離画像センサ２は、二次元画像を赤外線画像（以下、ＩＲ画像という）として撮影する。また、深度画像は、赤外線を用いたタイムオブフライト方式やドットパターン投影方式等の方法により得られる。従って、図１に示すように、距離画像センサ２は、赤外線を前方に向けて発光するＩＲ発光部２１と、ＩＲ発光部２１から照射され、被写体に反射して戻ってきた赤外線を受光するＩＲ受光部２２とを有する。ＩＲ受光部２２は、光学系及び撮像素子等を有するカメラである。ドットパターン投影方式では、ＩＲ発光部２１から照射された赤外線のドットパターンをＩＲ受光部２２で読み取り、距離画像センサ２内部での画像処理によりドットパターンを検出し、これに基づいて奥行きが計算される。本実施形態では、ＩＲ発光部２１及びＩＲ受光部２２は、同じ筐体２０内に収容され、筐体２０の前方に配置されている。また、本実施形態に係る距離画像センサ２では、奥行きを計測可能な有効距離が定められており、深度画像には、奥行きの値が得られない画素が含まれ得る。
【００４５】
距離画像センサ２には、距離画像センサ２の動作全体を制御するＣＰＵ２３の他、撮影された画像データを少なくとも一時的に記憶するメモリ２４が内蔵されている。距離画像センサ２の動作を制御する制御プログラムは、メモリ２４内に格納されている。また、距離画像センサ２には、通信部２５も内蔵されており、当該通信部２５は、撮影された画像データを、有線又は無線の通信線１７を介して、スイング解析装置１等の外部のデバイスへと出力することができる。本実施形態では、ＣＰＵ２３及びメモリ２４も、ＩＲ発光部２１及びＩＲ受光部２２とともに、筐体２０内に収納されている。なお、スイング解析装置１への画像データの受け渡しは、必ずしも通信部２５を介して行う必要はない。例えば、メモリ２４が着脱式であれば、これを筐体２０内から取り外し、スイング解析装置１のリーダー（後述する通信部１５に対応）に挿入する等して、スイング解析装置１で画像データを読み出すことができる。
【００４６】
本実施形態では、以上のとおり、距離画像センサ２により赤外線撮影が行われ、撮影されたＩＲ画像に基づいて、グリップ５１の軌道が追跡される。従って、この追跡が容易となるように、グリップ５１（より正確には、グリップ端５１ａ）には、赤外線を効率的に反射する反射シートがマーカーとして貼付される。また、後述するとおり、本実施形態では、撮影角度によりグリップ端５１ａが見えない場合には、ゴルフクラブ５のシャフト５２の位置に基づいて、グリップ端５１ａの位置が特定されるとともに、シャフト５２の向きも特定される。従って、シャフト５２にも、同様の赤外線の反射シートがマーカーとして貼付される。本実施形態では、距離画像センサ２は、ゴルファー７を正面側から撮影すべく、ゴルファー７の前方に設置される。
【００４７】
＜１−２−２．スイング解析装置＞
図２に示すとおり、スイング解析装置１は、ＣＤ−ＲＯＭ等のコンピュータで読み取り可能な記録媒体３０に格納されたスイング解析プログラム３を、当該記録媒体３０から汎用のパーソナルコンピュータにインストールすることにより製造される。スイング解析プログラム３は、距離画像センサ２から送られてくる画像データに基づいてゴルフスイングを解析するためのソフトウェアであり、スイング解析装置１に後述する動作を実行させる。
【００４８】
スイング解析装置１は、表示部１１、入力部１２、記憶部１３、制御部１４及び通信部１５を備える。これらの部１１〜１５は、互いにバス線１６を介して接続されており、相互に通信可能である。表示部１１は、液晶ディスプレイ等で構成することができ、ゴルフスイングの解析の結果等をユーザに対し表示する。なお、ここでいうユーザとは、ゴルファー７自身やそのインストラクター、ゴルフ用品の開発者等、ゴルフスイングの解析の結果を必要とする者の総称である。入力部１２は、マウス、キーボード、タッチパネル等で構成することができ、スイング解析装置１に対するユーザからの操作を受け付ける。
【００４９】
記憶部１３は、ハードディスク等で構成することができる。記憶部１３内には、スイング解析プログラム３が格納されている他、距離画像センサ２から送られてくる画像データが保存される。制御部１４は、ＣＰＵ、ＲＯＭおよびＲＡＭ等から構成することができる。制御部１４は、記憶部１３内のスイング解析プログラム３を読み出して実行することにより、仮想的に取得部１４ａ、位置導出部１４ｂ及び向き導出部１４ｃとして動作する。各部１４ａ〜１４ｃの動作の詳細については、後述する。通信部１５は、距離画像センサ２等の外部のデバイスから通信線１７を介してデータを受信する通信インターフェースとして機能する。
【００５０】
＜１−３．スイング解析方法＞
以下、スイング解析システム１００により実行されるゴルフスイングの解析方法について説明する。本解析方法では、まず、ゴルファー７にゴルフクラブ５を試打させ、その様子を距離画像センサ２により撮影する。距離画像センサ２により撮影されたＩＲ画像及び深度画像の画像データは、距離画像センサ２からスイング解析装置１に送られる。既に述べたとおり、本実施形態では、スイング解析装置１により、スイング動作中のゴルフクラブ５のグリップ５１の挙動及びゴルファー７の左肩７１の挙動と、スイング動作中のゴルフクラブ５のシャフト５２の向きとが解析される。以下では、まず、グリップ５１の挙動を導出する処理（以下、グリップ挙動導出処理）について説明した後、ゴルファー７の左肩７１の挙動を導出する処理（以下、左肩挙動導出処理）について説明する。その後、ゴルフクラブ５のシャフト５２の向きを導出する処理（以下、シャフト方向導出処理）について説明する。
【００５１】
＜１−３−１．グリップ挙動導出処理＞
グリップ挙動導出処理では、距離画像センサ２により撮影されたＩＲ画像及び深度画像の画像データに基づいて、スイング動作中のグリップ端５１ａの軌道を表す三次元座標が導出される。解析の対象となる画像データは、動画である。従って、以下、解析の対象となるＩＲ画像及び深度画像を、それぞれＩＲフレーム、深度フレームということがあり、単にフレームということもある。スイング動作中の各タイミングでの三次元座標は、主としてそのタイミングでのＩＲフレーム及び深度フレームに基づいて導出される。
【００５２】
図３は、グリップ挙動導出処理の全体の流れを示すフローチャートである。グリップ挙動導出処理では、まず、取得部１４ａが、距離画像センサ２から取得され、記憶部１３に格納されている画像データを読み出し、メモリに展開する。そして、位置導出部１４ｂが、これらの画像データのうち、解析の対象となるフレームを決定する（ステップＳ１）。本実施形態では、スイング動作中のアドレスからインパクトのやや後までの期間が解析の対象とされる。従って、ステップＳ１では、アドレス及びインパクトのタイミングが決定され、この間のフレーム及びインパクト後の数フレームが解析の対象として決定される。また、ここでは、後の処理に備えて、トップのタイミングも決定される。アドレス、トップ及びインパクトのタイミングは、例えばグリップ５１に取り付けられた慣性センサからの出力データに基づいて判定することもできるし、画像データ自体から画像処理により判定することもできる。このようなアドレス、トップ及びインパクトのタイミングの決定方法としては、様々なものが知られているため、ここでは詳細な説明を省略する。
【００５３】
なお、ゴルフクラブのスイング動作は、一般に、アドレス、トップ、インパクト、フィニッシュの順に進む。アドレスとは、図４（Ａ）に示すとおり、ゴルフクラブ５のヘッドをボール近くに配置した初期の状態を意味し、トップとは、図４（Ｂ）に示すとおり、アドレスからゴルフクラブ５をテイクバックし、最もヘッドが振り上げられた状態を意味する。インパクトとは、図４（Ｃ）に示すとおり、トップからゴルフクラブ５が振り下ろされ、ヘッドがボールと衝突した瞬間の状態を意味し、フィニッシュとは、図４（Ｄ）に示すとおり、インパクト後、ゴルフクラブ５を前方へ振り抜いた状態を意味する。
【００５４】
ステップＳ１により解析の対象となる期間が決定されると、位置導出部１４ｂにより、アドレス付近でのグリップ端５１ａの三次元座標が導出される（ステップＳ２）。本実施形態では、ゴルファー７の前方から画像データが撮影されるため、アドレス付近では、ゴルファー７の手元に隠れ、グリップ端５１ａがフレームに写らない。そのため、ステップＳ２では、ＩＲフレームに写るシャフト５２の位置から、グリップ端５１ａの位置が推定される。
【００５５】
具体的には、ステップＳ２での解析の対象となるのは、初期の期間のフレーム、例えば、アドレス付近の３枚のフレームである。上述したとおり、シャフト５２には赤外線を効率的に反射させるマーカーが取り付けられているため、ＩＲフレーム上には、当該マーカーの像が明確に表れる。位置導出部１４ｂは、各ＩＲフレームを適切な閾値を用いて２値化することで、各ＩＲフレームをシャフト５２のマーカーの像とその他の領域とに分割し、シャフト５２の二次元座標を特定する。なお、当該閾値は、予め設定されている値であってもよいし、判別分析法等によりＩＲフレームから算出される値であってもよい。続いて、位置導出部１４ｂは、同じタイミングでの深度フレームから、ここで特定された二次元座標に対応する奥行きの値を特定する。これにより、シャフト５２の三次元座標が導出される。ところで、シャフト５２に取付けられているマーカーの長さ及びマーカーの中心（例えば、幾何学上の重心）からグリップ端５１ａまでの距離は既知であり、これらの値は予め記憶部１３に記憶されている。従って、位置導出部１４ｂは、これらの長さ及び距離と、ＩＲフレームに写るシャフト５２のマーカーの長さ及びマーカーの中心の三次元座標とに基づいて、アドレス付近でのグリップ端５１ａの三次元座標を導出する。
【００５６】
ステップＳ２が終了すると、ステップＳ３〜Ｓ７により、初期の期間後のグリップ端５１ａの三次元座標が特定される。ステップＳ３〜Ｓ７は、ステップＳ２の初期の期間のフレームを除く、ステップＳ１で決定された解析の期間に含まれる各フレームに対し、時間軸に沿って順に繰り返し実行される。
【００５７】
具体的には、まず、ステップＳ３において、位置導出部１４ｂは、ＩＲフレームに写るグリップ端５１ａの像を抽出することで、ＩＲフレームから直接グリップ端５１ａの二次元座標を特定する。そして、この二次元座標の特定に成功した場合には（ステップＳ４において、「ＹＥＳ」）、位置導出部１４ｂは、深度フレームから、当該二次元座標に対応する奥行きの値を直接特定する（ステップＳ５）。これにより、グリップ端５１ａの三次元座標が導出される。一方、ステップＳ３で、二次元座標の特定に失敗した場合には（ステップＳ４において、「ＮＯ」）、位置導出部１４ｂは、別の方法でグリップ端５１ａの三次元座標を導出するための例外処理を実行する（ステップＳ６）。同様に、ステップＳ５で、奥行きの値の特定に失敗した場合にも、（ステップＳ７において、「ＮＯ」）、位置導出部１４ｂは、同様の例外処理を実行する。ステップＳ３，Ｓ５，Ｓ６の処理の詳細は、後述する。
【００５８】
ステップＳ１で決定された解析の対象となる期間についての以上の処理が終了すると、スイング動作中のグリップ端５１ａの三次元座標が導出されたことになる。位置導出部１４ｂは、これらのグリップ端５１ａの三次元座標に対し、後述するステップＳ８のキャリブレーションを実行する。また、これらのキャリブレーション後の値は、依然として一定程度の誤差を含み得る。特に、ＩＲフレームにグリップ端５１ａの像が写らず、後述する様々な方法でグリップ端５１ａの三次元座標の推定が行われた場合には、誤差が顕著に表れることがある。そこで、位置導出部１４ｂは、これらのキャリブレーション後の三次元座標を補正処理により補正する（ステップＳ９）。この補正処理の詳細については、後述する。
【００５９】
以上の処理により、スイング動作中のグリップ端５１ａの三次元座標が高精度に導出される。これらのグリップ端５１ａの三次元座標は、記憶部１３内に格納され、ユーザの命令に応じて、適宜、表示部１１上に表示される。例えば、スイング動作中のグリップ端５１ａの軌道をグラフィック表示することも可能である。また、記憶部１３内に格納されたこれらのグリップ端５１ａの三次元座標は、他のプログラムにより読み出され、さらなるゴルフスイングの解析にも利用され得る。
【００６０】
＜１−３−１−１．ステップＳ３の詳細＞
以下、図５を参照しつつ、ステップＳ３の詳細を説明する。ステップＳ３は、ＩＲフレームに写るグリップ端５１ａの像を抽出することで、ＩＲフレームから直接グリップ端５１ａの二次元座標を特定する処理である。上述したとおり、ステップＳ３は、ステップＳ２の解析の対象となる初期の期間後の各フレームについて繰り返し実行される。従って、以下のステップＳ３の説明においては、初期の期間後の特定の時刻（以下、対象時刻という）での特定のフレーム（以下、対象フレームという）に対する処理の流れを説明する。なお、対象フレームには、ＩＲフレーム及び深度フレームが含まれ、それぞれを対象ＩＲフレーム及び対象深度フレームと呼ぶ。
【００６１】
まず、位置導出部１４ｂは、以降の計算負荷を下げるために、対象フレーム上において対象フレームの画像サイズよりも小さい探索範囲Ｒ１を設定する（ステップＳ２１）。具体的には、対象時刻の直前の所定の枚数（例えば、３枚）のフレームにおけるグリップ端５１ａの二次元座標から、対象時刻でのグリップ端５１ａの二次元座標が推定される。この推定は、例えば、直前の所定の枚数のフレームのグリップ端５１ａのフレーム間のベクトルの向きに基づいて行うことができる。そして、当該推定された二次元座標の周辺に、例えば、当該二次元座標を中心とする所定のサイズ（例えば、５０ピクセル×５０ピクセル）の探索範囲Ｒ１が設定される。
【００６２】
続くステップＳ２２〜Ｓ２４では、位置導出部１４ｂは、探索範囲Ｒ１内において、グリップ端５１ａ及びシャフト５２に貼付されたマーカーを表す領域をその他の領域から分離するための対象ＩＲフレームの二値化を行う。そのために、まず、ステップＳ２２において、二値化のための閾値が設定される。当該閾値は、公知の様々な方法で算出することができるが、本実施形態では、判別分析法により算出される。或いは、当該閾値は、予め設定されている値であってもよい。続いて、ステップＳ２３において、当該閾値の適否が判断され、適切であると判断された場合にはステップＳ２４に進む。ステップＳ２４では、当該閾値を用いて探索範囲Ｒ１内での対象ＩＲフレームの二値化が行われる。なお、このとき、「１」領域（マーカーに対応する領域）の穴抜けを防ぐため、膨張処理及び縮小処理を行うことが好ましい。図６には、参考として、対象ＩＲフレームの例が示される。図６には、グリップ端５１ａに加え、シャフト５２に貼付されたマーカーの像が写っている。一方、ステップＳ２３において、閾値が不適切であると判断された場合には、ステップＳ３は終了し、その後、上述のステップＳ４を経てステップＳ６の例外処理へと進む。なお、本実施形態に係るステップＳ２３では、対象ＩＲフレーム内の探索範囲Ｒ１内において、上記閾値が、輝度のとり得る範囲を０〜１に正規化した場合において０．１より大きい場合に、「適切」、そうでない場合に、「不適切」と判断される。また、これに加えて、上記閾値以上となる輝度の最頻度が所定値（例えば、２ピクセル）以上である場合に、「適切」、そうでない場合に、「不適切」と判断することもできる。
【００６３】
続いて、ステップＳ２５では、位置導出部１４ｂは、グリップ端５１ａが対象ＩＲフレーム内の探索範囲Ｒ１内に写っていない、又は探索範囲Ｒ１からはみ出している（探索範囲Ｒ１の外枠に重なっている）か否かを判断する。そして、グリップ端５１ａが探索範囲Ｒ１内に写っており、かつ、はみ出していない（以下、条件１）と判断される場合には、探索範囲Ｒ１が適切であるとして、ステップＳ２６に進む。一方、条件１が満たされないと判断される場合には、探索範囲Ｒ１が不適切であるとして、ステップＳ２０に進み、探索範囲Ｒ１の再設定が行われる。ステップＳ２０では、前回の探索範囲Ｒ１よりも所定量だけ大きな探索範囲Ｒ１が設定され、その後、ステップＳ２２以降が繰り返される。なお、はみ出していると判定された場合には、はみ出している方向にのみ所定量（例えば、１０ピクセル）だけ拡大することができる。なお、図５からは明らかではないが、本実施形態では、ステップＳ２０の繰り返しの回数には上限が設けられており、上限回数繰り返してもグリップ端５１ａが探索範囲Ｒ１内に写らない場合には、強制的にステップＳ３が終了する。また、上限回数繰り返してもはみ出している場合には、強制的にステップＳ２６に進む。
【００６４】
ステップＳ２６では、位置導出部１４ｂは、探索範囲Ｒ１内にシャフト５２のマーカーの像が含まれる場合には、これを除去する。具体的には、探索範囲Ｒ１の外枠の所定の３辺を調べ、「１」領域が存在していた場合には、これを「０」に置き換える。これにより、探索範囲Ｒ１内の「１」領域は、グリップ端５１ａにのみ対応する領域となる。なお、アドレスからインパクトのやや後までの区間においては、グリップ５１の左側にシャフトがくることが考えにくいため、所定の３辺としては、上下の辺と、グリップ５１の右側の辺が設定される。
【００６５】
続くステップＳ２７では、位置導出部１４ｂは、ラベリング処理を行い、探索範囲Ｒ１内のグリップ端５１ａの像が複数の領域に分離していないか否かを判断する。図７（Ａ）に示すように、対象ＩＲフレーム内では、特にダウンスイング中において、モーションブラーによりグリップ端５１ａの像が長細く写ることがある。そして、これを以上の方法で二値化すると、図７（Ｂ）に示すように、グリップ端５１ａを表す「１」領域が複数の領域に分離し得る。そこで、位置導出部１４ｂは、探索範囲Ｒ１内のグリップ端５１ａの像が複数の領域に分離していると判断される場合には、図７（Ｃ）に示すように、それらを結合する（ステップＳ２８）。具体的には、複数の「１」領域のより近い端点どうしが「１」の線で連結され、内側の穴が「１」で補完される。
【００６６】
ステップＳ２９では、位置導出部１４ｂは、探索範囲Ｒ１内の「１」領域の中心を算出する。「１」領域の中心は、様々な方法で算出することが可能であるが、例えば、幾何学上の重心として算出することができる。そして、当該中心の二次元座標が、グリップ端５１ａの二次元座標として特定される。
【００６７】
＜１−３−１−２．ステップＳ５の詳細＞
次に、図８を参照しつつ、ステップＳ５の詳細を説明する。ステップＳ５は、ステップＳ３で抽出に成功したグリップ端５１ａの奥行きの値を、深度フレームから直接特定する処理である。上述したとおり、ステップＳ５は、ステップＳ３と同様、ステップＳ２の解析の対象となる初期の期間後の各フレームについて繰り返し実行される。従って、以下でのステップＳ５の説明においては、ステップＳ３のときと同様に、対象フレームに対する処理の流れを説明する。
【００６８】
まず、ステップＳ３１において、位置導出部１４ｂは、対象深度フレームから、ステップＳ３で特定されたグリップ端５１ａの二次元座標に対応する位置での奥行きの値を抽出する。図９は、ステップＳ３で特定されたグリップ端５１ａの二次元座標の位置を対象深度フレーム上にプロットした図である。
【００６９】
続くステップＳ３２では、位置導出部１４ｂは、ステップＳ３１で抽出した奥行きの値の適否を判断する。そして、適切であると判断された場合には、グリップ端５１ａの奥行きの値の特定に成功したと判断し、ステップＳ３３以降に進む。一方、ステップＳ３２において、ステップＳ３１で抽出した奥行きの値が不適切であると判断された場合には、グリップ端５１ａの奥行きの値の特定に失敗したと判断し、ステップＳ５を終了させる。なお、本実施形態に係るステップＳ３２では、ステップＳ３１で抽出した奥行きの値が所定の範囲内、例えば、２０００ｍｍ〜３５００ｍｍの範囲内にある場合には「適切」、そうでない場合に「不適切」と判断される。また、そもそもデータが欠落しており、ステップＳ３１において奥行きの値が抽出されなかった場合にも、「不適切」と判断される。
【００７０】
ステップＳ３３では、位置導出部１４ｂは、対象ＩＲフレームから、シャフト５２の中心の二次元座標を特定し、対象深度フレームから、当該二次元座標に対応する位置での奥行きの値を抽出する。これにより、シャフト５２の中心の三次元座標が導出される。具体的には、ステップＳ２４と同様の方法で対象ＩＲフレームを二値化し、ここから既に抽出されているグリップ端５１ａの像を除去することにより、対象ＩＲフレーム上においてシャフト５２のマーカーの像を表す「１」領域が抽出される。そして、当該「１」領域の中心（例えば、幾何学上の重心）の二次元座標が、シャフト５２の中心の二次元座標として特定される。なお、簡単のため、図８等からは省略されているが、ここでシャフト５２の中心の三次元座標の導出に失敗した場合には、ステップＳ５は強制終了し、ステップＳ７を経てステップＳ６の例外処理へ進むものとする。
【００７１】
続くステップＳ３４では、位置導出部１４ｂは、グリップ端５１ａの二次元座標及びシャフト５２の中心の二次元座標に基づいて、対象ＩＲフレーム上でのシャフト５２の角度を算出する。この値は、後述するステップＳ３５で使用される。
【００７２】
続くステップＳ３５〜Ｓ３７では、位置導出部１４ｂは、グリップ端５１ａの奥行きの値を取り直すべきか否かを判断する。グリップ端５１ａの奥行きの値を取り直す条件は、
以下の３つである。
（１）シャフト５２の角度が所定の範囲内（例えば、ゴルファーの正面から見て１１時よりも前）である（ステップＳ３５）。
（２）１つ前のフレームと対象フレームとのグリップ端５１ａの奥行きの値の差が所定値（例えば、５０ｍｍ）以上である（ステップＳ３６）。
（３）ステップＳ６の例外処理によらず、深度フレームからグリップ端５１ａの奥行きの値を直接抽出できたフレームが所定枚数（例えば、３枚）以上続いている（ステップＳ３７）。
【００７３】
ステップＳ３５〜Ｓ３７の条件のいずれかを満たさない場合には、ステップＳ３１で特定されたグリップ端５１ａの奥行きの値が確定し、ステップＳ５が終了する。一方、ステップＳ３５〜Ｓ３７の条件を全て満たす場合には、位置導出部１４ｂは、ステップＳ３１で特定されたグリップ端５１ａの奥行きの値が、グリップ端５１ａではなく人体の奥行きの値であると判断し、グリップ端５１ａの奥行きの値の取り直しを行う（ステップＳ３８）。
【００７４】
具体的には、ステップＳ３８では、対象深度フレームにおいて、グリップ端５１ａの二次元座標を中心に所定のサイズ(例えば、１０ピクセル×１０ピクセル)の探索範囲Ｒ２を設定する（図１０参照）。また、位置導出部１４ｂは、ステップＳ３１で特定されたグリップ端５１ａの奥行きの値から所定値（例えば、５０ｍｍ）を引き（手前側に移動）、対象深度フレームに基づいて、探索範囲Ｒ２内で当該引いた値よりも奥にあるものは全て人体であると判断する。そして、探索範囲Ｒ２内で人体の像を除いた領域（グリップ端５１ａ及び指の像と考えられる）内の全ての点に対応する奥行きの値を特定し、その最大値（最深値）をグリップ端５１ａの奥行きの値とする。図１１は、ステップＳ３８による奥行の値の補正の前後を示すグラフである。左側のグラフは、ステップＳ３１の値をプロットしたグラフであり、右側のグラフでは、このうちの太枠の丸で囲んだ２点の位置が補正されている。
【００７５】
＜１−３−１−３．ステップＳ６（例外処理）の詳細＞
以下、図１２を参照しつつ、ステップＳ６の例外処理について説明する。例外処理は、ステップＳ３，Ｓ５においてグリップ端５１ａの三次元座標の導出に失敗した場合に、別の方法でグリップ端５１ａの三次元座標を導出するための処理である。
【００７６】
まず、ステップＳ４１では、位置導出部１４ｂは、対象ＩＲフレームからシャフト５２のマーカーの像を抽出する。具体的には、ステップＳ２４と同様の方法で対象ＩＲフレームを二値化し、ここから適宜グリップ端５１ａの像を除去することにより、対象ＩＲフレーム上におけるシャフト５２のマーカーの像が抽出される。ここでシャフト５２の像が抽出された場合には、ステップＳ４２に進み、抽出できなかった場合には、ステップＳ４８に進む。
【００７７】
ステップＳ４２では、位置導出部１４ｂは、ステップＳ４１で抽出されたシャフト５２のマーカーの像の領域に含まれる全ての点の二次元座標を特定する。また、位置導出部１４ｂは、対象深度フレームから、ここで特定された二次元座標に対応する奥行きの値を特定する。これにより、シャフト５２のマーカーの三次元座標が導出される。
【００７８】
続いて、位置導出部１４ｂは、シャフト５２のマーカーの二次元座標に基づいて、グリップ端５１ａの二次元座標を推定する（ステップＳ４３）。具体的には、当該グリップ端５１ａの二次元座標は、記憶部１３内に格納されている、シャフト５２のマーカーの長さ及びマーカーの中心からグリップ端５１ａまでの距離を参照することにより、対象ＩＲフレームに写るシャフト５２のマーカーの長さ及びマーカーの中心の二次元座標に基づいて特定される。
【００７９】
続くステップＳ４４では、位置導出部１４ｂは、ステップＳ４２で抽出したシャフト５２の奥行きの値の適否を判断し、適切であると判断される場合には、ステップＳ４５に進む。一方、ステップＳ４４において、ステップＳ４２で抽出した奥行きの値が不適切であると判断された場合には、ステップＳ４６へと進む。なお、本実施形態に係るステップＳ４４では、以下の２つの条件を満たす場合に「適切」、少なくとも一方を満たさない場合に「不適切」と判断される。なお、（２）の条件は、ステップＳ４１においてシャフト５２のマーカーの像を正しく抽出できているか、すなわち、脚等のデータを抽出していないかをチェックするための条件である。
（１）シャフト５２の中心の奥行きの値が所定の範囲内（例えば、１０００ｍｍ〜３５００ｍｍ）にある。
（２）対象深度フレーム上において、シャフト５２のマーカーの像に対応する領域内の全ての点のうち、奥行きの値が「０」（奥行きの値が得られなかった場合の画素値）の割合が所定値（例えば、４割）以下である。
【００８０】
ステップＳ４５では、位置導出部１４ｂは、シャフト５２のマーカーの三次元座標から、グリップ端５１ａの三次元座標を推定する。本実施形態では、まず、対象ＩＲフレーム上において、シャフト５２のマーカーの像からシャフト５２の慣性主軸Ａ１を抽出し、対象深度フレームから慣性主軸Ａ１上の各点の奥行きの値を取得する（図１３参照）。さらに、これらの奥行きの値から外れ値を除外する。外れ値は、所定の範囲外（例えば、１０００ｍｍ以下、又は、３５００ｍｍ以上）の値であるか、基準値から大きく乖離した値（例えば、３００ｍｍ以上異なる値）である。当該基準値は、例えば、シャフト５２の角度が９時より前はａ−ｂ線上の点の奥行きの最小値、シャフト５２の角度が９時以降はａ−ｂ線上の点の奥行きの最大値として設定され得る。なお、ａ点は、対象ＩＲフレーム内において、グリップ端５１ａに最も近い慣性主軸Ａ１上の点（外れ値は除く）であり、ｂ点は、対象ＩＲフレーム内において、グリップ端５１ａから最も遠い慣性主軸Ａ１上の点（外れ値は除く）である（図１３参照）。続いて、対象ＩＲフレーム内において、ｂ点から慣性主軸Ａ１上の各点（外れ値は除く）との距離を算出する。そして、慣性主軸Ａ１上の各点（外れ値は除く）についてのｂ点からの距離と奥行きとを、距離−奥行き平面内にプロットし（図１４参照）、距離と奥行きとの関係を表す一次近似式を導出する。続いて、対象ＩＲフレーム内におけるｂ点からグリップ端５１ａまでの距離を算出し、この距離を上記一次近似式に代入することにより、グリップ端５１ａの奥行きを算出する。これにより、グリップ端５１ａの三次元座標が導出される。ステップＳ４５が終了すると、例外処理は終了する。
【００８１】
なお、慣性主軸Ａ１とは、以下に示す方法で特定される。すなわち、まず、シャフト５２のマーカーの像と同じ二次モーメントを有する楕円を定義する。そして、当該楕円の長軸の長さをＬとし、当該楕円の長軸とｘ軸（対象フレームの横軸）との為す角θを特定する。また、シャフト５２のマーカーの重心の座標（ｘ1，ｙ1）を導出する。このとき、慣性主軸Ａ１の始点（ｘs，ｙs）及び終点（ｘe，ｙe）の座標は、以下のとおりとなる。
ｘs＝ｘ1−Ｌ・ｃｏｓθ／２
ｙs＝ｙ1−Ｌ・ｓｉｎθ／２
ｘe＝ｘ1＋Ｌ・ｃｏｓθ／２
ｙe＝ｘ1＋Ｌ・ｃｏｓθ／２
【００８２】
以下のＳ４７では、グリップ端５１ａに代えて、グリップ５１の下部の点の奥行きの値に基づいて、グリップ端５１ａの三次元座標が推定される。ステップＳ４７の前に実行されるステップＳ４６は、ステップＳ４７の推定のアルゴリズムが効果的に機能する対象フレームを選別するためのステップである。具体的には、ステップＳ４６において以下の２つの条件を満たすと判断された場合には、ステップＳ４７へと進み、少なくとも一方を満たさないと判断された場合には、ステップＳ４８へ進む。
（１）対象フレームがアドレス又はトップ近傍のフレーム（例えば、前後５枚のフレーム）である。
（２）ａ−ｃ線上において、外れ値以外の奥行きを有する点が１点以上存在する。
【００８３】
なお、ｃ点とは、対象ＩＲフレーム内において、ａ点とグリップ端５１ａとを結んだ線上において、ａ点からグリップ端５１ａの方向に所定の距離（例えば、２０ピクセル）だけ離れた点である。また、（２）の外れ値とは、所定の範囲外（例えば、１０００ｍｍ以下、又は、３５００ｍｍ以上）の値であるか、基準値から大きく乖離した値（例えば、１５０ｍｍ以上異なる値）である。当該基準値も、ステップＳ４５での説明と同様に設定することができる。
【００８４】
ステップＳ４７の詳細は、図１６に示される。すなわち、まず、ステップＳ４７１として、位置導出部１４ｂは、ａ−ｃ線上の点の分布を表す１次近似式を導出する。具体的には、対象ＩＲフレーム内において、グリップ端５１ａから最も遠いａ−ｃ線上の点（外れ値は除く）を基準点とし、当該基準点からａ−ｃ線上の各点（外れ値は除く）との距離を算出する。そして、ａ−ｃ線上の各点（外れ値は除く）についての上記基準点からの距離と、奥行きとの関係を表す一次近似式を導出する。
【００８５】
続いて、ステップＳ４７２では、位置導出部１４ｂは、ステップＳ４７１で算出された１次近似式の傾きが０になっていないか否かを判断し、０でない場合には、ステップＳ４７３に進む。ステップＳ４７３では、位置導出部１４ｂは、対象ＩＲフレーム内における上記基準点からグリップ端５１ａまでの距離を算出し、この距離を上記一次近似式に代入することにより、グリップ端５１ａの奥行きを算出する。これにより、グリップ端５１ａの三次元座標が導出される。ステップＳ４７３が終了すると、例外処理は終了する。
【００８６】
一方、ステップＳ４７２で１次近似式の傾きが０になっていると判断された場合には、位置導出部１４ｂは、直前の３フレームにおけるグリップ端５１ａの動きのシーケンスから、対象時刻での奥行きを推定する（ステップＳ４７４）。例えば、以下の式に従って、対象時刻での奥行きＤを決定することができる。ただし、Ｄ1〜Ｄ3は、それぞれ１つ前〜３つ前のフレームの奥行きＤである。これにより、グリップ端５１ａの三次元座標が導出される。ステップ４７４が終了すると、例外処理は終了する。
Ｄ＝２（Ｄ1−Ｄ2）−（Ｄ2−Ｄ3）＋Ｄ1
【００８７】
図１２に戻って、ステップＳ４８では、位置導出部１４ｂは、グリップ端５１ａの抽出を５フレーム連続で失敗していないか否かを判断する。５フレーム連続で失敗していないと判断された場合には、ステップＳ４９に進み、直前の３フレームにおけるグリップ端５１ａの動きのシーケンスから、対象時刻でのグリップ端５１ａの位置を推定する。より具体的には、グリップ端５１ａの二次元座標が特定されている場合には、ステップＳ４７４と同様に奥行きのみが推定され、グリップ端５１ａの二次元座標が特定されていない場合には、グリップ端５１ａの三次元座標が推定される。一方、ステップＳ４８において、失敗の連続回数が５フレーム以上であると判断された場合には、位置導出部１４ｂは、対象フレームのグリップ端５１ａの位置を決定せずに、例外処理を終了する。なお、ステップＳ４９においては、グリップ端５１ａの二次元座標が特定されており、かつ、対象フレーム内でのグリップ端５１ａの二次元座標と、直前のフレームにおけるグリップ端５１ａの二次元座標との距離が小さい（例えば、５ピクセル以下）場合には、直前のフレームの奥行きの値をそのまま対象フレームの奥行きの値として使用することもできる。
【００８８】
＜１−３−１−４．キャリブレーション＞
以下、以上の処理により導出されたグリップ端５１ａの三次元座標のキャリブレーションについて説明する。本キャリブレーションは、以上の処理により導出されたグリップ端５１ａの三次元座標を、以下の重回帰式に代入することにより行われる。
【数１】
2017074350.tif 000003
【００８９】
以上の重回帰式中のｘ，ｙ，Ｚは、キャリブレーション前のグリップ端５１ａの三次元座標であり、Ｘ，Ｙ，Ｚ'は、キャリブレーション後のグリップ端５１ａの三次元座標である。なお、Ｚ，Ｚ'が奥行きである。また、係数ａ1〜ｃ1，ａ2〜ｆ2，ａ3〜ｆ3は、実験により予め定められた値である。以下、係数ａ1〜ｃ1，ａ2〜ｆ2，ａ3〜ｆ3の決定方法について説明する。
【００９０】
まず、キャリブレーション後の三次元座標を規定するための三次元座標系であるＸ−Ｙ−Ｚ'座標系を定義する。そして、距離画像センサ２の前に様々なテスト被写体を配置してこれを撮影する。次に、位置導出部１４ｂにより、上述したステップＳ３，Ｓ５（Ｓ２９，Ｓ３１）と同様の処理により、各テスト被写体の三次元座標（ｘ，ｙ，Ｚ）を算出する。また、各テスト被写体の実際の位置を測定して、三次元座標（Ｘ，Ｙ，Ｚ）として表し、これらの値をスイング解析装置１に入力する。これにより、位置導出部１４ｂは、様々なテスト被写体の三次元座標（ｘ，ｙ，Ｚ）及び三次元座標（Ｘ，Ｙ，Ｚ）を取得したことになる。そこで、続けて、位置導出部１４ｂは、これらのデータをサンプルデータとして、（ｘ，ｙ，Ｚ）と（Ｘ，Ｙ，Ｚ'）との関係を表す重回帰式を導出する。なお、数１の重回帰式は、非線形モデルであるが、線形モデルで表すこともできるし、Ｘ，Ｙ，Ｚ'の説明変数は、ｘ，ｙ，Ｚを適宜組み合わせて任意に設定することができる。
【００９１】
Ｘ−Ｙ−Ｚ'座標系は、例えば、ボールを原点として、奥行きを表す距離画像センサ２の光軸方向をＺ'軸とし、鉛直上下方向をＹ軸とし、水平方向をＸ軸として設定することができる。また、テスト被写体としては様々なものを使用し得るが、図１７に示すような格子状に赤外線を効率的に反射するマーカーを張った板を用意し（格子の交点や格子で囲まれた四角形の領域の中心等がテスト被写体として機能し得る）、これをＺ'軸方向の様々な位置に配置して撮影することで、効率的に重回帰分析を実行することができる。
【００９２】
＜１−３−１−５．補正処理＞
以下、図１８を参照しつつ、ステップＳ９の補正処理について説明する。本補正処理は、以上の処理により導出されたグリップ端５１ａの三次元座標を補正する処理である。既に述べたとおり、ＩＲフレームにグリップ端５１ａの像が写らず、シャフト５２の位置等に基づいてグリップ端５１ａの三次元座標の推定が行われたフレームについては、誤差が顕著に表れることがある。このような誤差は、特にアドレス付近で生じやすいため、本実施形態では、アドレス付近でのフレームを対象として、本補正処理に係る以下のステップＳ５３〜Ｓ５７が実行される。しかしながら、アドレス付近に限らず、任意の期間のフレームを対象として、ステップＳ５３〜Ｓ５７を実行することも可能である。なお、本実施形態では、ステップＳ８のキャリブレーション後の三次元座標が補正の対象となるが、キャリブレーション前の三次元座標を補正してもよい。
【００９３】
まず、ステップＳ５１として、位置導出部１４ｂは、最初にＩＲフレーム上においてグリップ端５１ａが抽出できたフレーム（ステップＳ７において、最初に「ＹＥＳ」となったフレーム。以下、最後のフレームという）を特定する。
【００９４】
続くステップＳ５２では、位置導出部１４ｂは、上記の最後のフレームまでのフレームのうち、ＩＲフレーム上においてグリップ端５１ａが抽出できなかったフレーム（ステップＳ４又はＳ７において、「ＮＯ」となったフレーム）であり、かつ、シャフト５２が抽出されているフレーム（以下、補正対象フレーム）を全て特定する。なお、補正対象フレームには、ＩＲフレーム及び深度フレームが含まれ、それぞれを補正対象ＩＲフレーム及び補正対象深度フレームと呼ぶ。
【００９５】
続くステップＳ５３〜Ｓ５７は、各補正対象フレームに対し繰り返し実行される。具体的には、ステップＳ５３では、位置導出部１４ｂは、補正対象ＩＲフレームからシャフト５２のマーカーの像を抽出する。具体的な方法は、ステップＳ４１と同様であり、ステップＳ４１の結果を適宜流用することができる。
【００９６】
続くステップＳ５４では、位置導出部１４ｂは、ステップＳ５３で抽出されたシャフト５２のマーカーの像の領域に含まれる全ての点の二次元座標を特定する。また、位置導出部１４ｂは、補正対象深度フレームから、ここで特定された二次元座標に対応する奥行きの値を特定する。これにより、シャフト５２のマーカーの三次元座標が導出される。これらの処理も、ステップＳ４２の結果を流用することができる。
【００９７】
続くステップＳ５５では、位置導出部１４ｂは、ステップＳ５３で抽出された全ての点のうち、奥行きの値が適切な点（以下、対象点という）を全て特定する。なお、奥行きの値が適切であるか否かは、例えば、奥行きの値が所定の範囲内（例えば、１０００ｍｍ〜３５００ｍｍ）にあるか否かに応じて判断される。
【００９８】
続くステップＳ５６では、位置導出部１４ｂは、全ての対象点の三次元座標（Ｘ，Ｙ，Ｚ'）に対して主成分分析を行い、第１主成分を導出する。具体的には、全ての対象点の三次元座標（Ｘ，Ｙ，Ｚ'）の共分散行列Σを算出する。続いて、共分散行列Σの固有方程式を解き、３つの固有値λ1、λ2，λ3及びそれぞれに対応する固有ベクトルω1，ω2，ω3を算出する（λ1≧λ2≧λ3とする）。そして、最大の固有値λ1に対応する固有ベクトルω1（第１主成分）を特定する。
【００９９】
続くステップＳ５７では、第１主成分ω1に沿ってシャフト５２が伸びているものと仮定して、グリップ端５１ａの三次元座標が特定される（図１９参照）。具体的には、位置導出部１４ｂは、Ｘ−Ｙ−Ｚ'座標系内での、シャフト５２のマーカーの中心からグリップ端５１ａまでの三次元距離Ｌを算出する。この距離Ｌは、記憶部１３内に格納されている、シャフト５２のマーカーの長さ及びマーカーの中心からグリップ端５１ａまでの距離の値を参照することにより算出される。そして、第１主成分ω1に沿った直線（すなわち、シャフト５２を表す直線）上において、シャフト５２のマーカーの中心から距離Ｌだけ離れた点の三次元座標（Ｘ，Ｙ，Ｚ'）を特定し、グリップ端５１ａの三次元座標とする。
【０１００】
全ての補正対象フレームに対する以上ステップＳ５３〜Ｓ５７が終了すると、補正処理は終了する。図２０は、実際の補正処理の結果を表す図である。図２０中の「補正前」のグラフは、ステップＳ１〜Ｓ８により導出されたグリップ端５１ａのＺ'値（奥行き）であり、「補正後」のグラフは、本補正処理後のグリップ端５１ａのＺ'値（奥行き）である。また、「真値」は、多数の赤外線カメラにより様々な角度から撮影された画像に基づいてマーカーの三次元座標を高精度に読み取ることのできる三次元動作解析システム（実際にはインターリハ社製のＶＩＣＯＮが使用されたが、勿論、他の三次元動作解析システムも利用可能である）により計測されたグリップ端５１ａの位置である。図２０からは、本補正処理により、グリップ端５１ａの奥行きの座標を真値に近づけることができることが分かる。
【０１０１】
＜１−３−２．左肩挙動導出処理＞
以下、左肩挙動導出処理について説明する。左肩挙動導出処理では、距離画像センサ２により撮影された深度画像に基づいて、スイング動作中のゴルファー７の左肩７１の軌道を表す三次元座標が導出される。グリップ挙動導出処理の場合と同様、解析の対象となる画像データは、動画である。従って、ここでも、解析の対象となる深度画像を、深度フレームという。スイング動作中の各タイミングでの三次元座標は、主としてそのタイミングでの深度フレームに基づいて導出される。
【０１０２】
図２１は、左肩挙動導出処理の全体の流れを示すフローチャートである。左肩挙動導出処理では、まず、取得部１４ａが、距離画像センサ２から取得され、記憶部１３に格納されているスイング動作中の各タイミングでの深度フレームを読み出し、メモリに展開する。そして、取得部１４ａは、これらの深度フレームから、各タイミングでのスケルトンデータを取得する（ステップＳ６１）。スケルトンデータとは、人体の主要な関節の位置（三次元座標）を表すデータである。深度フレームからスケルトンデータを導出する方法は、様々なものが公知であるため、ここでは詳細な説明を省略する。また、距離画像センサであるＫｉｎｅｃｔ（登録商標）(ｖ１であっても、ｖ２であってもよい。以下同様。)には、深度画像からスケルトンデータを読み出すためのライブラリが提供されており、本実施形態では、当該ライブラリを用いて、スケルトンデータが取得される。なお、距離画像センサ２のＣＰＵ２３が、深度フレームからスケルトンデータを導出するようにしてもよい。この場合には、取得部１４ａは、単に距離画像センサ２から送られてきたスケルトンデータを読み出すだけでよい。
【０１０３】
スケルトンデータには、左肩７１の三次元座標が含まれるため、ステップＳ６１は、左肩７１の挙動を導出するステップであると言える。しかしながら、Ｋｉｎｅｃｔ由来のスケルトンデータにより特定される左肩７１の位置は、使用の目的にもよるが、必ずしもスンイグ動作中の全区間で十分な精度を保つとは限らない。そのため、本実施形態では、後述する凸部抽出フィルタ及び左肩シルエットフィルタによっても左肩７１の三次元座標が導出され、これらが適宜切り替えられる。これにより、様々な区間において、左肩７１の三次元座標を高精度に導出することができるようになっている。なお、使用の目的にもよるが、スケルトンデータのみから左肩７１の位置を特定することもできるし、凸部抽出フィルタのみ又は左肩シルエットフィルタのみから左肩７１の位置を特定することもできる。すなわち、これら３つの方法は、使用の目的に応じて、単独で用いることもできるし、任意のものを適宜組み合わせて用いることもできる。
【０１０４】
続いて、ステップＳ６２では、位置導出部１４ｂは、取得部１４ａにより取得された以上の深度フレームのうち、解析の対象となるフレームを決定する（ステップＳ６２）。本実施形態では、スイング動作中のアドレスからフィニッシュまでの期間が解析の対象とされる。従って、ステップＳ６２では、アドレス及びフィニッシュのタイミングが決定され、この間の深度フレームが以後のステップＳ６３〜６９に係る解析の対象として決定される。アドレス及びフィニッシュのタイミングは、例えばグリップ５１に取り付けられた慣性センサからの出力データに基づいて判定することもできるし、画像データ自体から画像処理により判定することもできる。このようなアドレス及びフィニッシュのタイミングの決定方法は、様々なものが知られているため、ここでは詳細な説明を省略する。
【０１０５】
続くステップＳ６３では、位置導出部１４ｂは、各深度フレームの画像サイズを縮小する。圧縮のアルゴリズムは、様々なものを利用することができ、例えば、バイキュービックやニアレストネイバー等を使用することができる。この圧縮処理により、以下の計算負荷を低減することができる。また、縮小後の画像サイズが一定値となるような圧縮を行えば、後述される各種フィルタを画像サイズに応じて生成する必要がなくなり、処理が効率化される。
【０１０６】
続くステップＳ６４では、位置導出部１４ｂは、各深度フレームを二値化する。この二値化は、深度フレームにおいて人物を写す領域（例えば、奥行きが２２００ｍｍ〜２８００ｍｍの範囲）で奥行きのデータが存在している画素値を「１」、それ以外を「０」とすることにより行われる。この二値化画像は、距離画像センサ２の有効距離の範囲内に存在する被写体（主として、ゴルファー７及びゴルフクラブ５）のシルエットを抽出した画像である。この二値化画像の用途は、後述する。
【０１０７】
続くステップＳ６５では、位置導出部１４ｂは、凸部抽出フィルタを用いて、各深度フレームから左肩７１の三次元座標を導出する。また、ステップＳ６６では、位置導出部１４ｂは、左肩シルエットフィルタを用いて、各深度フレームから左肩７１の三次元座標を導出する。これらのフィルタを用いた左肩７１の抽出処理の詳細は、後述される。
【０１０８】
以上、３つの方法（スケルトンデータ、凸部抽出フィルタ及び左肩シルエットフィルタによる方法）により左肩７１の三次元座標が導出されると、位置導出部１４ｂは、３つの方法を切り替えるタイミングを導出する（ステップＳ６７）。本発明者らは、鋭意検討の結果、スイング動作中、アドレスからテイクバック腕水平までの区間では、スケルトンデータによる方法の精度が特に高く、テイクバック腕水平からダウンスイング腕水平まで区間では、凸部抽出フィルタによる方法の精度が特に高く、ダウンスイング腕水平からフィニッシュまでの区間では、左肩シルエットフィルタによる方法の精度が特に高いことを発見した。これは、Ｋｉｎｅｃｔ（登録商標）由来のスケルトンデータでは、肩の捻転運動が十分に考慮されないため、テイクバック腕水平以後に左肩７１が回転を始めると、精度が低下し得るためと予想される。すなわち、Ｋｉｎｅｃｔ（登録商標）のスケルトンモデルでは、両肩と腰（両股関節）とが剛体としてモデリングされているため、肩のみ又は腰のみの回転が評価されない。従って、肩のみが回転するテイクバック腕水平以降では、スケルトンデータの信頼性が落ち易いため、本実施形態に係る切替が有効となる。また、ゴルファー７を正面から撮影する場合、テイクバック腕水平からダウンスイング腕水平までの区間においては、左肩７１がゴルファー７の全体のシルエットの内部に存在することとなる。そうすると、詳細は後述されるが、凸部抽出フィルタは、深度フレーム内の凸部を強調するフィルタであるため、凸部抽出フィルタによる方法により、左肩７１を正確に検出することができる。一方、ゴルファー７を正面から撮影する場合、ダウンスイング腕水平からフィニッシュまでの区間においては、左肩７１がゴルファー７の全体のシルエットの輪郭付近に存在することとなる。そうすると、詳細は後述されるが、左肩７１の輪郭を強調するための左肩シルエットフィルタによる方法により、左肩７１を正確に検出することができる。なお、同様の理由により、左肩シルエットフィルタは、アドレスからテイクバック腕水平の区間においても、好適に使用することができる。
【０１０９】
以上より、本実施形態では、切り替えのタイミングとして、テイクバック腕水平及びダウンスイング腕水平のタイミングが導出される。これらの腕水平のタイミングの決定方法の詳細については、後述する。なお、テイクバック腕水平とは、テイクバック中に左腕が水平になるタイミングのことを言い、ダウンスイング腕水平とは、ダウンスイング中に左腕が水平になるタイミングのことを言う。
【０１１０】
腕水平のタイミングが導出されると、位置導出部１４ｂは、３つの方法による左肩７１の三次元座標を時間軸に沿って切り替えながら、三次元空間内でのスイング動作中の左肩７１の軌道を導出する（ステップＳ６８）。具体的には、アドレスからテイクバック腕水平までの区間でのスケルトンデータ由来の左肩７１の三次元座標と、テイクバック腕水平からダウンスイング腕水平までの区間での凸部抽出フィルタ由来の左肩７１の三次元座標と、ダウンスイング腕水平からフィニッシュまでの区間での左肩シルエットフィルタ由来の左肩７１の三次元座標とが連結され、アドレスからフィニッシュまでのｘ−ｙ−Ｚ座標系内での左肩７１の軌道が導出される。また、その後、ステップＳ８と同様の方法で、左肩７１の軌道のキャリブレーションが行われる（ステップＳ６９）。図２２は、キャリブレーション後の左肩７１の軌道の一例である。
【０１１１】
以上の処理により、スイング動作中の左肩７１の三次元座標が高精度に導出される。この左肩７１の三次元座標は、記憶部１３内に格納され、ユーザの命令に応じて、適宜、表示部１１上に表示される。例えば、スイング動作中の左肩７１の軌道をグラフィック表示することも可能である。また、記憶部１３内に格納されたこれらの左肩７１の三次元座標は、他のプログラムにより読み出され、さらなるゴルフスイングの解析にも利用され得る。
【０１１２】
＜１−３−２−１．凸部抽出フィルタによる左肩抽出＞
以下、凸部抽出フィルタによる左肩７１の抽出方法について説明する。凸部抽出フィルタとは、当該フィルタが適用される領域内において、中央部分を強調し、周辺部分を抑制するフィルタである。すなわち、凸部抽出フィルタは、深度フレーム内に写る、中央が突出している凸部を強調するフィルタであり、例えば、図２３のようなフィルタである。図２３内の各四角形は、画素を表しており、各四角形内の数値は、当該四角形に対応する画素の画素値に掛け合わされる係数である。そして、フィルタ内の各画素について、当該画素の画素値と対応する係数とを乗算し、それらの乗算値を足し合わせた値が、フィルタ適用後の中央の画素の画素値となる。
【０１１３】
図２４は、トップのタイミングにおける深度フレームである。この深度フレーム全体に図２３の凸部抽出フィルタを適用すると、図２５に示す画像となる。そして、図２５の深度フレーム内では、ゴルファー７の輪郭と背景とのギャップが大きいために、凸形状の左肩７１だけでなく、ゴルファー７の輪郭も強調されてしまっている。その結果、左肩７１が埋もれてしまっており、正しく左肩７１の位置を抽出できない虞が生じている。そこで、本実施形態では、このような問題に対処するため、ステップＳ６４で導出された二値化画像が使用される。なお、図２４及び図２５を含め、以後の図に示される深度フレームにおいては、ゴルファーの像が鏡面に写っている。
【０１１４】
図２６は、ステップＳ６４を経た二値化画像であり、「１」の領域は、主としてゴルファー７のシルエットを示しており、背景領域は、「０」の領域となっている。本実施形態では、位置導出部１４ｂは、ゴルファー７の輪郭を除去するため、この二値化画像を所定量だけ収縮する。収縮後の二値化画像を、図２７に示す。そして、位置導出部１４ｂは、当該収縮後の二値化画像をマスク画像として、凸部抽出フィルタ適用後の深度フレーム（図２５参照）をマスキングする。このマスキング後のフレームを、図２８に示す。図２８に示すとおり、このマスキングにより、凸部抽出フィルタ適用後の深度フレームからゴルファー７の輪郭が除去され、左肩７１が容易に抽出可能となる。図２８では、参考のため、左肩７１の位置を強調表示している。位置導出部１４ｂは、マスキング後のフレームにおいて、最大の画素値を有する画素の二次元座標を特定し、左肩７１の二次元座標とする。さらに、位置導出部１４ｂは、当初の深度フレームから当該左肩７１の二次元座標での奥行きのデータを抽出することで、左肩７１の三次元座標を導出する。
【０１１５】
なお、精度を向上し、及び／又は計算負荷を下げるために、凸部抽出フィルタの適用範囲を深度フレーム全体とするのではなく、一部の範囲内とすることもできる。例えば、同じ又は直前のフレーム上において特定された左肩７１の二次元座標を含む適当なサイズの領域を、凸部抽出フィルタの適用範囲とすることができる。なお、アドレスからテイクバック腕水平の区間及びダウンスイング腕水平からフィニッシュまでの区間では、同じフレームのスケルトンデータに含まれる左肩７１の二次元座標を中心とする所定のサイズの領域を、凸部抽出フィルタの適用範囲Ｒ３（図２９参照）として設定することが好ましい。また、テイクバック腕水平のタイミングでは、１つ前のフレームのスケルトンデータに含まれる左肩７１の二次元座標を中心とする所定のサイズの領域を、凸部抽出フィルタの適用範囲Ｒ３（図２９参照）として設定することが好ましい。さらに、テイクバック腕水平の直後からダウンスイング腕水平までの区間では、１つ前のフレームにおいて凸部抽出フィルタを用いて特定された左肩７１の二次元座標を右寄りの位置に含む所定のサイズの領域を、凸部抽出フィルタの適用範囲Ｒ４（図３０参照）とすることが好ましい。なお、適用範囲Ｒ４として、左肩７１を基準に左に延びた矩形領域が設定されるのは、右側（手先側）においてフィルタの応答値が非常に大きくなる部分があり、これを避けるためである。
【０１１６】
＜１−３−２−２．左肩シルエットフィルタによる左肩抽出＞
以下、左肩シルエットフィルタによる左肩７１の抽出方法について説明する。左肩シルエットフィルタとは、当該フィルタが適用される領域内において、右下部分を強調し、左下、左上及び右上部分を抑制するフィルタである。すなわち、左肩シルエットフィルタは、深度フレーム内に写る、右下が突出している凸部を強調するフィルタであり、例えば、図３１のようなフィルタである。凸部抽出フィルタと同様、図３１内の各四角形は、画素を表しており、各四角形内の数値は、当該四角形に対応する画素の画素値に掛け合わされる係数である。そして、フィルタ内の各画素について、当該画素の画素値と対応する係数とを乗算し、それらの乗算値を足し合わせた値が、フィルタ適用後の中央の画素の画素値となる。
【０１１７】
位置導出部１４ｂは、ステップＳ６４で導出された二値化画像に、左肩シルエットフィルタを適用する。図３２は、ステップＳ６４で導出された二値化画像であり、図３３は、この二値化画像に図３１の左肩シルエットフィルタを適用した画像を示している。そして、位置導出部１４ｂは、左肩シルエットフィルタの適用後のフレームにおいて、最大の画素値を有する画素の二次元座標を特定し、左肩７１の二次元座標とする。さらに、位置導出部１４ｂは、当初の深度フレームから当該左肩７１の二次元座標での奥行きのデータを抽出することで、左肩７１の三次元座標を導出する。なお、図３３では、参考のため、左肩７１の位置を強調表示している。
【０１１８】
なお、精度を向上し、及び／又は計算負荷を下げるために、左肩シルエットフィルタの適用範囲を深度フレーム全体とするのではなく、一部の範囲内とすることもできる。例えば、同じ又は直前のフレーム上において特定された左肩７１の二次元座標を含む適当なサイズの領域を、左肩シルエットフィルタの適用範囲とすることができる。なお、アドレスからテイクバック腕水平の区間では、同じフレームのスケルトンデータに含まれる左肩７１の二次元座標を右下の端点とする所定のサイズの領域を、左肩シルエットフィルタの適用範囲Ｒ５（図３４参照）として設定することが好ましい。また、ダウンスイング腕水平のタイミングでは、１つ前のフレームにおいて設定された上述のＲ４の領域の左上の端点を右下の端点とする所定のサイズの領域を、左肩シルエットフィルタの適用範囲Ｒ６（図３５参照）として設定することが好ましい。さらに、ダウンスイング腕水平の直後からフィニッシュまでの区間では、１つ前のフレームにおいて左肩シルエットフィルタを用いて特定された左肩７１の二次元座標を中心とする所定のサイズの領域を、左肩シルエットフィルタの適用範囲Ｒ７（図３６参照）とすることが好ましい。
【０１１９】
＜１−３−２−３．腕水平のタイミングの決定方法＞
以下、本実施形態に係るテイクバック腕水平及びダウンスイング腕水平のタイミングの決定方法について説明する。
【０１２０】
まず、図３７に示すように、位置導出部１４ｂは、アドレス時のスケルトンデータから、右肩の二次元座標を取得する。そして、右肩の二次元座標を基準として、ｘ軸正方向に所定の距離（例えば、３０ピクセル）進み、ｙ軸正方向に所定の距離（例えば、１５ピクセル）進んだ点Ａの二次元座標を特定する。なお、ｘ軸正方向とは、水平方向に沿って、ゴルファー７の左手側から右手側に進む方向である。また、ｙ軸正方向とは、鉛直方向に沿って、上から下に向かう方向である。続いて、位置導出部１４ｂは、Ａ点からｘ軸正方向に所定の距離（例えば、１１５ピクセル）の範囲を占め、ｙ軸正方向に所定の距離（例
えば、３０ピクセル）の範囲を占める矩形領域Ｒ８を形成する。
【０１２１】
その後、位置導出部１４ｂは、アドレスからフィニッシュまでの区間に含まれる各深度フレームについて、当該深度フレーム上の上述の矩形領域Ｒ８内において奥行きのデータが存在している画素数をカウントする。そして、当該画素数が所定数（例えば、４００ピクセル）以上となる（以下、腕水平条件）深度フレームを全て特定する。このとき、通常、アドレスからフィニッシュまでの区間において、腕水平条件を満たす深度フレームが、時間軸に沿って大きく２つのグループに分けて出現する。従って、位置導出部１４ｂは、これらの２つのグループを特定した後、前半のグループの中からテイクバック腕水平のフレームを特定するとともに、後半のグループからダウンスイング腕水平のフレームを特定する。１のグループに腕水平条件を満たす深度フレームが複数枚出現した場合には、例えば、先頭のフレームを腕水平フレームとすることができる。なお、アドレスからフィニッシュまでの区間において、腕水平条件を満たす深度フレームが大きく２つのグループに分けて出現しなかった場合には、適当なエラー処理を行う。
【０１２２】
＜１−３−３．シャフト方向導出処理＞
以下、シャフト方向導出処理について説明する。シャフト方向導出処理では、距離画像センサ２により撮影された深度画像に基づいて、スイング動作中のシャフト５２の向きを表す三次元ベクトルが導出される。グリップ挙動導出処理の場合と同様、解析の対象となる画像データは、動画である。従って、ここでも解析の対象となるＩＲ画像及び深度画像を、ＩＲフレーム及び深度フレームという。
【０１２３】
図３８は、シャフト方向導出処理の全体の流れを示すフローチャートである。まず、ステップＳ７０では、取得部１４ａが、距離画像センサ２から取得され、記憶部１３に格納
されているＩＲフレーム及び深度フレームを読み出し、メモリに展開する。そして、向き導出部１４ｃは、これらの画像データのうち、解析の対象となるフレームを決定する。本実施形態では、スイング動作中のアドレスからインパクトのやや後までの期間が解析の対象とされる。詳細は、ステップＳ１と同様である。
【０１２４】
続くステップＳ７１〜Ｓ７７は、解析の対象となる期間に含まれる各フレームについて繰り返し実行される。従って、以下の説明においては、グリップ挙動導出処理のときと同様に、シャフト５２の向きを導出しようとしている時刻(以下、対象時刻)でのＩＲフレーム及び深度フレームを、それぞれ対象ＩＲフレーム及び対象深度フレームと呼ぶ。また、各々のフレーム、或いはこれらをまとめて、対象フレームと呼ぶことがある。
【０１２５】
続くステップＳ７１において、向き導出部１４ｃは、対象ＩＲフレームからシャフト５２のマーカーの像を抽出する。具体的な処理は、ステップＳ４１と同様である。そして、ここでシャフト５２の像が抽出された場合には、ステップＳ７２に進み、抽出できなかった場合には、次のフレームの処理に移る。
【０１２６】
ステップＳ７２では、向き導出部１４ｃは、ステップＳ７１で抽出されたシャフト５２のマーカーの像の領域に含まれる全ての点の二次元座標を特定する。また、向き導出部１４ｃは、対象深度フレームから、ここで二次元座標が特定された全ての点の奥行きの値を特定する。ただし、ここで特定された奥行きの値が適切でないと判断される点は、以下の解析から除去することができる。奥行きの値が適切か否かは、例えば、奥行きの値が所定の範囲内（例えば、１０００ｍｍ〜３５００ｍｍ）にあるか否かに応じて判断される。以上より、シャフト５２に含まれる点の三次元座標が導出される。そして、シャフト５２の
三次元座標が所定個数以上（本実施形態では、１点以上）導出された場合には、ステップＳ７３に進み、導出されなかった場合には、次のフレームの処理に移る。
【０１２７】
ステップＳ７３では、向き導出部１４ｃは、ステップＳ７２で導出されたシャフト５２に含まれる全ての点の三次元座標から、シャフト５２を代表する点、本実施形態では、重心の三次元座標を算出する。重心の各軸方向の位置は、ステップＳ７２で導出された全ての点の当該軸方向の座標値の平均値として算出することができる。
【０１２８】
続くステップＳ７４では、向き導出部１４ｃは、上述のステップＳ３〜Ｓ７において対象時刻におけるグリップ端５１ａの三次元座標が導出できているか否かを判断し、抽出できている場合には、ステップＳ７５に進み、導出できていない場合にはステップＳ７６に進む。なお、本ステップの実行時点において対象フレームに対して上述のステップＳ３〜Ｓ７が未実行であれば、本ステップにおいて実行し、グリップ端５１ａの三次元座標の導出を試みればよい。
【０１２９】
ステップＳ７５では、向き導出部１４ｃは、グリップ端５１ａの三次元座標と、シャフト５２の重心の三次元座標とに基づいて、シャフト５２の向きを表す三次元ベクトルを導出する。シャフト５２の向きは、グリップ端５１ａからシャフト５２の重心に向かう方向、或いはその逆として導出することができる。
【０１３０】
一方、ステップＳ７６では、向き導出部１４ｃは、ステップＳ７２においてシャフト５２の三次元座標が所定個数以上（例えば、２点以上）導出されたか否かを判断し、導出されていた場合には、ステップＳ７７に進み、導出されていなかった場合には、次のフレームの処理に移る。ステップＳ７７では、ステップＳ７２で導出されたシャフト５２に含まれる全ての点の三次元座標に対して、主成分分析を行う。そして、最大の固有値に対応する固有ベクトル（第１主成分）を、シャフトの５２の向きを表す三次元ベクトルとする。
【０１３１】
解析の対象となる全ての時刻に対する以上のステップＳ７１〜Ｓ７７が完了すると、処理はステップＳ７８に進む。ステップＳ７８では、シャフト５２の向きが未だ導出されていない時刻のシャフト５２の向きを表す三次元ベクトルを、前後の時刻のシャフト５２の向きから計算する。例えば、前後の時刻のシャフト５２の向きを表す三次元ベクトルの平均とすることができる。
【０１３２】
以上より、解析の対象となる全ての時刻に対するシャフト５２の向きが、三次元的に導出される。このようなシャフト５２の向きは、例えば、図３９に示すように各軸毎にグラフ表示することができるし、図４０に示すように、三次元的にグラフ表示することもできる。図４０の例では、シャフト５２を表す直線に重ねて、グリップ端５１ａの位置やシャフト５２の重心の位置が〇や×の記号で示されている。
【０１３３】
＜１−４．変形例＞
以上、本発明のいくつかの実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。例えば、以下の変更が可能である。
【０１３４】
＜１−４−１＞
第１実施形態に係るグリップ挙動導出処理では、ＩＲ画像が用いられたが、ＩＲ画像に代えてカラー画像を用いることもできる。この場合、距離画像センサには、可視光を受光する可視光受光部（例えば、ＲＧＢカメラ）を搭載すればよい。
【０１３５】
＜１−４−２＞
深度画像及び／又はスケルトンデータを用いた分析の対象となる部位は、グリップ５１や左肩７１に限られない。例えば、シャフト、ヘッド、右肩、左腕、右腕等の挙動（三次元座標）を特定することができる。また、このとき、適宜、分析の対象となる部位にマーカーを貼付しておくことができる。
【０１３６】
＜１−４−３＞
腕水平のタイミングの決定方法は、上述したものに限られない。例えば、腕に直線状の赤外線反射テープを貼付しておき、ＩＲ画像から当該反射テープの像を抽出し、当該像が水平となるタイミングを検出してもよい。
【０１３７】
＜１−４−４＞
ステップＳ５６，Ｓ５７，Ｓ７７における主成分分析を用いる処理に代えて、最小二乗法を用いる処理を実行することができる。具体的には、シャフト５２の三次元座標の分布から最小二乗法により回帰直線を導出し、これをシャフト５２の延びる軸と判断する。そして、この軸の延長線上においてグリップ端５１ａの位置を探索することができる。
【０１３８】
＜１−４−５＞
ステップＳ２２では、グリップ端５１ａの像を抽出するための二値化のための閾値は、判別分析法により自動的に算出された。しかしながら、当該閾値は、例えば、最大輝度値（限界値）に０〜１の所定の係数を掛けた固定値、例えば、最大輝度値の０．１倍の値とすることができる。この場合、ステップＳ２３は省略することができる。
【０１３９】
対象ＩＲフレーム上においてグリップ端５１ａのマークとシャフト５２のマークとの間隔が狭くなると、グリップ端５１ａの探索範囲Ｒ１内にシャフト５２のマークが写り込んでしまう。この場合において、グリップ端５１ａのマークよりもシャフト５２のマークの方が輝度値が高いと、判別分析法を用いて二値化を行うと、グリップ端５１ａの像が消えてしまう虞がある。従って、たとえグリップ端５１ａのマークの輝度値が低かったとしてもこれを抽出できるよう、二値化のための閾値を最大輝度値の所定の割合の値に設定することが好ましい。なお、本変形例に係る固定値である閾値は、探索範囲Ｒ１内にシャフト５２のマークが写り込み易い所定のフェーズにおいてのみ用いられることが好ましい。すなわち、本変形例に係る閾値と、判別分析法等により自動的に設定される閾値とは、スイング動作中のフェーズに応じて適宜切り替えられることが好ましい。このようなフェーズとしては、シャフト８時（テイクバック中であって、正面視においてシャフト５２が時計の８時を指す時刻）からテイクバック腕水平までの区間、又はその一部の区間が挙げられる。なお、この区間は、正面に配置されるカメラから見て、グリップ端５１ａが遠ざかったり、ゴルファーの手の陰に入り易い区間である。
【０１４０】
＜１−４−６＞
第１実施形態に係るステップＳ２１では、直前の所定の枚数のフレームにおけるグリップ端５１ａの移動方向（ベクトルの向き）に基づいて、グリップ端５１ａの探索範囲Ｒ１が設定された。しかしながら、グリップ端５１ａがゴルファーの身体に隠れる等して対象ＩＲフレームに写りにくいフェーズにおいては、グリップ端５１ａの正確な位置特定が難しくなる場合がある。すなわち、以上のようなフェーズにおいては、グリップ端５１ａの位置がシャフト５２の像から推定されがちであり、特にこのような事態が続くと、探索範囲Ｒ１が実際のグリップ端５１ａの動きを無視して進んでしまうことがある。そして、このような場合に、特に図４１Ａに示すように、探索範囲Ｒ１内にシャフト５２の像が入り込んでしまうと、グリップ端５１ａの位置の検出の精度が低下し得る。そこで、このような所定のフェーズにおいては、探索範囲Ｒ１を所定の限界ラインを越えないように設定することが好ましい。
【０１４１】
以上のようなフェーズの例としては、トップ付近が挙げられる。トップ付近では、グリップ端５１ａが対象ＩＲフレームに写らない可能性が高く、また、グリップ端５１ａの動きは停止又はほぼ停止した状態となる。そして、トップ付近では、探索範囲Ｒ１の設定位置を制限する限界ラインを、ゴルファーの頭（より詳細には、例えば、頭の頂点）の位置に設定することが好ましい（図４１Ｂ参照）。トップ付近では、グリップ端５１ａがゴルファーの頭よりも正面視において右側に進むことは通常ないからである。この場合、グリップ端５１ａの位置の推定値は、正面視において限界ラインよりも右側に進まない。
【０１４２】
なお、ゴルファーの頭の位置は、ＩＲフレーム及び／又は深度フレームを画像処理することにより抽出してもよいし、スケルトンデータに基づいて決定してもよい。ゴルファーの頭の位置は、人物領域画像から抽出することができ、例えば、人物領域画像の最上点を、頭の位置と設定することができる。人物領域画像とは、主として人物が写る領域のみを示す画像であり、深度フレームから導出することもできるし、ＩＲフレームから導出することもできる。このような人物領域画像を導出する方法としては、様々なものが公知であるため、ここでは詳細な説明を省略する。また、距離画像センサであるＫｉｎｅｃｔ（登録商標）には、深度画像から人物領域画像を読み出すためのライブラリが提供されており、取得部１４ａは、当該ライブラリを用いて人物領域画像を取得可能である。なお、距離画像センサ２のＣＰＵ２３が、深度フレームから人物領域画像を導出するようにしてもよい。この場合には、取得部１４ａは、単に距離画像センサ２から送られてきた人物領域画像を読み出すだけでよい。
【０１４３】
また、ゴルファーの頭の位置を抽出する基準となる画像は、グリップ端５１ａの位置を抽出しようとしているタイミングの画像としてもよいし、所定のタイミングでの画像とすることもできる。好ましくは、テイクバック腕水平時の画像とすることができる。図４１Ｃは、テイクバック腕水平時の人物領域画像を示している。このように、頭付近に手等の他の部位が来る可能性の低いタイミングでの画像を用いることで、頭の位置の抽出の精度を向上させることができる。なお、テイクバック腕水平のタイミングの決定方法は、３−２−３に示したとおりである。
【０１４４】
＜１−４−７＞
第１実施形態では、図３に示すとおり、まず対象ＩＲフレーム及び対象深度フレームからグリップ端５１ａの三次元座標を直接導出するよう試み（ステップＳ３，Ｓ５）、失敗した場合には、対象ＩＲフレームからシャフト５２を抽出し、抽出されたシャフト５２の位置に基づいてグリップ端５１ａの三次元座標を導出するように構成されている（例外処理Ｓ６）。言い換えると、第１実施形態の処理に含まれるグリップ端５１ａの三次元座標を導出する処理は、図４２で示すような、ステップＳ１０１〜Ｓ１０４を含む処理として表現することができる。
【０１４５】
しかしながら、グリップ端５１ａの三次元座標を導出する処理は、図４３のように構成することもできる。すなわち、まず、前の時刻でＩＲフレームからグリップ端５１ａが抽出できたか否かを判定する（ステップＳ２０１）。そして、ステップＳ２０１で抽出できたと判定された場合には、対象ＩＲフレーム及び対象深度フレームからグリップ端５１ａの三次元座標の導出を試みる（ステップＳ１０１）。これ以降のステップは、図４２の場合と同様である。一方、Ｓ２０１で抽出できなかったと判定された場合には、ステップＳ１０１を実行することなく、すなわち、対象ＩＲフレーム及び対象深度フレームからグリップ端５１ａの三次元座標の導出を試みることなく、対象ＩＲフレームからのシャフト５２の抽出を行う（ステップＳ１０３）。そして、抽出されたシャフト５２の位置に基づいてグリップ端５１ａの三次元座標を導出する（ステップＳ１０４）。
【０１４６】
図４３に係る処理は、図４２に係る処理に比べ、以下の点でより優れている。すなわち、前の時刻でＩＲフレームからグリップ端５１ａが抽出できておらず、シャフト５２の位置からグリップ端５１ａの位置を推定した場合には、当該位置が一定以上の誤差を含む可能性がある。そして、このような誤差を含むグリップ端５１ａの位置の情報を用いて、次のフレームに対しステップＳ１０１において探索範囲Ｒ１が設定されると、上記の誤差が蓄積してゆく虞がある。従って、前のフレームでＩＲフレームからグリップ端５１ａが抽出できなかった場合には、探索範囲Ｒ１内でグリップ端５１ａを探索するのではなく、先にシャフト５２の位置を特定する。そして、シャフト５２の位置に基づいてグリップ端５１ａの位置を特定するようにすれば、誤差の蓄積を防ぐことができる。
【０１４７】
本変形例に係るステップＳ１０３，Ｓ１０４の処理は、上述した例外処理Ｓ６と同様に処理することもできるし、変更することも可能である。例えば、上述した例外処理Ｓ６と同様の方法でシャフト５２の二次元座標に基づいてグリップ端５１ａの二次元座標を導出した後、当該グリップ端５１ａの二次元座標を基準として、対象ＩＲフレームに探索範囲Ｒ１を設定してもよい。そして、ステップＳ３と同様に当該探索範囲Ｒ１内でさらにグリップ端５１ａを探索し、その後もステップＳ３〜Ｓ７と同様にグリップ端５１ａの三次元座標を導出することができる。
【０１４８】
＜１−４−８＞
第１実施形態に係るステップＳ６５では、凸部抽出フィルタを用いて左肩抽出を行った。しかしながら、これに代えて、凸形状テンプレートを用いたテンプレートマッチングにより、左肩の位置を特定することもできる。この凸形状テンプレートを用いたテンプレートマッチングによる方法は、テイクバック腕水平からダウンスイング腕水平まで区間において、特に左肩抽出の精度を高めることができる。
【０１４９】
図４４は、凸形状テンプレートの一例である。同図に示すように、凸形状テンプレートは、中央が最も小さく、中央から周辺に向かうにつれて徐々に大きくなるような画素値を有する画像のテンプレートである（中央が最も大きく、中央から周辺に向かうにつれて徐々に小さくなるような画素値を有する画像とすることもできる）。すなわち、このテンプレートを用いてテンプレートマッチングを行えば、中央が突出しており、周辺に向かうにつれて反対側に突出している被写体を捉えた画像を容易に抽出することができる。テンプレートマッチングの処理方法としては様々公知であるが、簡単に説明しておくと、以下の
とおりである。すなわち、深度フレーム内の上述したフィルタの適用範囲内で、凸形状テンプレートを上下に少しずつ（例えば、一画素ずつ）ずらしながら、凸形状テンプレートとこれに重なる深度フレームの部分画像との類似度を計算してゆく。類似度とは、例えば、ＳＡＤ（各画素値の差の絶対値の合計）である。そして、深度フレーム内において類似度が最も高い（ＳＡＤであれば、最小となる）領域が、左肩の位置として特定される。
【０１５０】
ところで、上述したとおり、距離画像センサとして汎用のものに、Ｋｉｎｅｃｔ（登録商標）ｖ１及びｖ２がある。本変形例に係るテンプレートマッチングは、Ｋｉｎｅｃｔ（登録商標）ｖ２から出力される深度フレームのような比較的高画質の画像から左肩を抽出する場合に、特に有用である。本変形例に係るテンプレートマッチングは、第１実施形態に係る凸部抽出フィルタを用いた場合に比べ、左肩以外の凹凸、例えば、衣服の凹凸のような細かな凹凸に応答しにくい性質を有するからである。従って、左肩以外の細かな凹凸に応答することによる誤差がより確実に防止される。なお、図４５は、Ｋｉｎｅｃｔ（登録商標）ｖ２から出力された深度フレームに対し、本変形例に係るテンプレートマッチングにより抽出された左肩の位置を示す図である。同図からは、左肩の位置が正しく検出されていることが分かる。
【０１５１】
＜１−４−９＞
第１実施形態では、スケルトンデータからの左肩抽出、凸部抽出フィルタによる左肩抽出及び左肩シルエットフィルタによる左肩抽出が、解析の全期間に対して行われた。しかしながら、演算時間の短縮のためには、各々による左肩の位置が最終的に使用される区間に対してのみ、これらの左肩抽出を行うことが好ましい。図４６は、かかる処理の一例である。
【０１５２】
図４６では、まず、位置導出部１４ｂが、アドレス、シャフト８時、トップ、インパクトの時間を特定する。そして、アドレスからインパクトに向かう順に、左肩７１の位置を導出してゆく。アドレスからテイクバック腕水平に達するまでは、スケルトンデータから左肩７１の位置を導出する。具体的には、アドレスからシャフト８時に達するまでは、スケルトンデータから左肩７１の位置を導出する。シャフト８時のタイミングは、シャフト方向導出処理により導出されるシャフト５２の向きから決定することができる。シャフト８時以降は、現在時刻の深度フレームの矩形領域R8内において奥行きのデータが存在している画素数をカウントし、所定数（例えば、４００ピクセル）以下であればスケルトンデータに基づいて左肩７１の位置を決定する。一方、所定数より多ければ、現在時刻をテイクバック腕水平の時刻に決定する。
【０１５３】
テイクバック腕水平からダウンスイング腕水平に達するまでは、凸部抽出フィルタに基づいて左肩７１を導出する。具体的には、テイクバック腕水平からトップに達するまでは、凸部抽出フィルタに基づいて左肩７１を導出する。トップ以降は、現在時刻の深度フレームの矩形領域Ｒ８内において奥行きのデータが存在している画素数をカウントし、所定数（例えば、４００ピクセル）以下であれば凸部抽出フィルタに基づいて左肩７１の位置を決定する。一方、所定数より多ければ、現在時刻をダウンスイング腕水平の時刻に決定する。その後、ダウンスイング腕水平からインパクトまでは、左肩シルエットフィルタに基づいて左肩７１を導出してゆく。また、凸部抽出フィルタを用いた処理に代えて、変形例１−４−８のテンプレートマッチングを実行してもよい。
【０１５４】
＜２．第２実施形態＞
＜２−１．スイング解析システムの概要＞
以下、第２実施形態に係るスイング解析装置２０１を含むスイング解析システム２００について説明する。図４７は、スイング解析システム２００の平面図である。スイング解析システム２００も、ゴルファー７によるゴルフクラブ５のスイング動作を捉えた動画に基づいて、ゴルフスイングを解析するためのシステムであり、第２実施形態でも、当該動画は、距離画像センサ２により撮影される。しかしながら、第１実施形態とは異なり、第２実施形態では、複数の距離画像センサ２が使用され、複数の方向からスイング動作が撮影される。ここでは、図４７に示すとおり、２つの距離画像センサ２Ｆ，２Ｓが使用される例が説明されるが、勿論、３つ以上の距離画像センサを用いることも可能である。これにより、スイング動作を多方向から正確に捉えることができる。
【０１５５】
また、第２実施形態では、距離画像センサ２から出力される深度画像及び二次元画像、並びに深度画像に基づくスケルトンデータに加え、後述する人体のシルエットを表すシルエットデータが解析される。そして、このような様々な種類の情報を、それぞれの利点を活かしつつ適宜組み合わせることにより、スイング解析の精度が向上する。
【０１５６】
本実施形態では、第１実施形態と同様に、グリップ挙動導出処理、左肩挙動導出処理及びシャフト方向導出処理が実行され、これにより、グリップ端５１ａ及び左肩７１の三次元座標、並びにシャフト５２の向きを表す三次元ベクトルが導出される。そして、本実施形態では、第１実施形態と同様のこれらの情報の他、左肩７１以外のゴルファー７の身体の様々な部位の位置情報に基づいて、スイング動作の良否が判定される。
【０１５７】
以下、簡単のため、第１実施形態との共通点については説明を省略しつつ、主として第２実施形態に特有の特徴について説明する。なお、第１実施形態との共通する要素については、同じ参照符号が付される。
【０１５８】
＜２−２．各部の詳細＞
以下、図４８を参照しつつ、スイング解析システム２００の各部の詳細について説明する。
【０１５９】
＜２−２−１．距離画像センサ＞
距離画像センサ２Ｆ，２Ｓは、図４８に示されるとおり、既に説明した距離画像センサ２と同様の構成を有する。距離画像センサ２Ｆは、第１実施形態に係る距離画像センサ２と同様に、ゴルファー７を正面側から撮影すべく、ゴルファー７の前方に設置される。一方、距離画像センサ２Ｓは、ゴルファー７を右側面側から撮影すべく、ゴルファー７の右方に設置される。
【０１６０】
また、第２実施形態でも、距離画像センサ２Ｆ，２ＳによりＩＲ画像が撮影されるため、グリップ５１及びシャフト５２には、赤外線の反射シートがマーカーとして貼付される。
【０１６１】
＜２−２−２．スイング解析装置＞
次に、スイング解析装置２０１について説明する。スイング解析装置２０１は、図４８に示されるとおり、第１実施形態に係るスイング解析装置１と同様のハードウェア構成を有する。しかしながら、第１実施形態と異なる処理が実行されるため、記憶部１３内にはスイング解析プログラム３に代えて、スイング解析プログラム２０３がインストールされている。また、これにより、制御部１４は、取得部１４ａ、第１位置導出部１４ｂ及び向き導出部１４ｃとして動作する他、第２位置導出部１４ｄ及び判定部１４ｅとしても動作する。各部１４ｄ，１４ｅの動作の詳細については、後述する。なお、本実施形態においては、第２位置導出部１４ｄとの区別のため、位置導出部１４ｂを第１位置導出部１４ｂと呼ぶ。
【０１６２】
なお、スイング解析装置２０１は、１台のコンピュータから構成することもできるし、複数台のコンピュータから構成することもできる。特に、距離画像センサ２Ｆ，２Ｓの各々に対し、コンピュータを接続する構成とすることもできる。
【０１６３】
＜２−３．スイング解析方法＞
以下、スイング解析システム２００により実行されるゴルフスイングの解析方法について説明する。本解析方法でも、まず、ゴルファー７にゴルフクラブ５を試打させ、その様子を距離画像センサ２Ｆ，２Ｓにより撮影する。距離画像センサ２Ｆ，２Ｓにより撮影されたＩＲフレーム及び深度フレームの画像データは、距離画像センサ２Ｆ，２Ｓからスイング解析装置２０１に送られる。その後、グリップ挙動導出処理、左肩挙動導出処理、及びシャフト方向導出処理が実行される。また、記憶部１３内の距離画像センサ２Ｆ，２Ｓからの２系列の画像データ（実際には、各センサから深度フレーム及びＩＲフレームの２系列の画像データが導出されるため、４系列と言うこともできる）は、取得部１４ａにより同期が取られる。同期は、様々な方法により実現可能であり、例えば、画像処理により各系統の画像データ内に同じ特徴が現れるタイミングを検出することにより実現することもできるし、距離画像センサ２Ｆ，２Ｓによる撮影を同時にトリガーする別途の装置を利用することもできる。その後、位置導出処理が実行される。位置導出処理では、所定のタイミング（以下、チェックポイント）における左肩７１以外のゴルファー７の身体の所定の部位の位置情報が導出される。さらにその後、良否判定処理が実行される。良否判定処理では、グリップ端５１ａの位置情報、左肩７１を含むゴルファー７の身体の所定の部位の位置情報、並びにシャフト５２の向きを表す三次元ベクトルに基づいて、スイング動作の良否が判定される。また、位置導出処理の中では、後述するステップＳ２０２のキャリブレーションが行われる。以下では、位置導出処理について説明した後、このキャリブレーションに必要なパラメータを設定する処理（キャリブレーションパラメータ設定処理）について説明し、最後に、良否判定処理について説明する。
【０１６４】
＜２−３−１．位置導出処理＞
位置導出処理は、上記のとおり、チェックポイントにおける左肩７１以外のゴルファー７の身体の所定の部位の位置情報を導出する処理である。図４９は、位置導出処理の流れを示すフローチャートである。
【０１６５】
まず、ステップＳ２０１において、取得部１４ａが、記憶部１３内に格納されている画像データを読み出し、メモリに展開する。そして、第２位置導出部１４ｄが、これらの画像データのうち、解析の対象となるチェックポイントのフレームを決定する。本実施形態に係るチェックポイントは、アドレス、テイクバックシャフト８時、テイクバックシャフト９時、テイクバック腕水平、トップ、ダウンスイング腕水平、ダウンスイングシャフト９時、及びインパクトの８つのタイミングである（図５０及び図５１参照）。これらのチェックポイントは、スイング動作中にこの順番で現れる。図５０及び図５１は、それぞれこれらのチェックポイントでのゴルファー７の正面図及び右側面図である。テイクバックシャフト８時及びテイクバックシャフト９時は、それぞれゴルファー７を正面から見て、テイクバック中にシャフト５２が概ね時計の８時及び９時の方向を指すタイミングである。ダウンスイングシャフト９時は、ゴルファー７を正面から見て、ダウンスイング中にシャフト５２が概ね時計の９時の方向を指すタイミングである。
【０１６６】
これらのチェックポイントのフレームは、様々な方法で決定することができる。アドレス、テイクバック腕水平、トップ、ダウンスイング腕水平、インパクトでのフレームは、例えば、既に説明したとおりの方法で決定することができる。テイクバックシャフト８時のフレームは、例えば、アドレスからテイクバック腕水平までの区間で、ゴルファー７の正面から撮影されたＩＲフレーム（以下、正面ＩＲフレーム）上でグリップ端５１ａが右足先よりも右側になったフレームを画像処理により特定し、これより１〜３フレーム戻したフレームとして導出することができる。なお、以下では、正面ＩＲフレームと同様に、ゴルファー７の正面からから撮影された深度フレームを、正面深度フレームと呼び、ゴルファー７の右側面から撮影されたＩＲフレームを、右側面ＩＲフレームと呼び、ゴルファー７の右側面から撮影された深度フレームを、右側面深度フレームと呼ぶ。また、ゴルファー７の正面から撮影されたフレームを正面フレームと呼び、ゴルファー７の右側面から撮影されたフレームを、右側面フレームと呼ぶ。
【０１６７】
テイクバックシャフト９時のフレームは、例えば、テイクバックシャフト８時からテイクバック腕水平の区間で、ゴルファー７の正面から見てシャフト５２の角度が９０°（水平）になったフレームとして導出することができる。ダウンスイングシャフト９時のフレームは、例えば、ダウンスイング腕水平からインパクトまでの区間で、ゴルファー７の正面から見てシャフト５２の角度が９０°（水平）になったフレームとして導出することができる。このとき、シャフト５２の角度は、シャフト方向導出処理により導出されるシャフト５２の向きを表す三次元ベクトル又は（ＩＲフレーム由来の）二次元ベクトルを用いて特定することができる。
【０１６８】
続くステップＳ２０２〜Ｓ２０５では、チェックポイントにおけるゴルファー７の身体の様々な部位の位置情報が導出される。ここでは主として、位置情報は、第１平面及び／又は第２平面内での位置情報として導出される。第１平面とは、距離画像センサ２Ｆの光軸に直交する平面、すなわち、ゴルファー７の腹から背に向かう方向に直交する平面である。第２平面とは、距離画像センサ２Ｓの光軸に直交する平面、すなわち、飛球線方向に直交する平面である。また、ここでは、位置情報は、既に算出されているグリップ端５１ａの三次元座標、左肩７１の三次元座標及びシャフト５２の向きを表す三次元ベクトル、スケルトンデータ、並びにシルエットデータの中から適宜必要なものを用いて算出される。スケルトンデータについては既に述べたが、シルエットデータについては後述する。
【０１６９】
まず、ステップＳ２０２では、取得部１４ａが、記憶部１３内に格納されているスイング動作中の各チェックポイントでの正面深度フレームを読み出し、メモリに展開する。そして、取得部１４ａは、これらの正面深度フレームから、各チェックポイントでのスケルトンデータを取得する。スケルトンデータの取得の態様は、第１実施形態と同様である。そして、第２位置導出部１４ｄが、正面深度フレームに基づく正面側から見た各チェックポイントでのスケルトンデータを、右側面側から見たスケルトンデータに変換する。これは、以下の問題に対処するためである。すなわち、正面から撮影した深度フレームに基づくスケルトンデータ（より正確には、スケルトンデータに含まれる関節等の注目点の位置情報）は信頼性が高いが、側面から撮影した深度フレームに基づくスケルトンデータは信頼性が低い場合がある。そのため、以下では、右側面深度フレームに基づくスケルトンデータの代わりに、正面深度フレームに基づくスケルトンデータ（以下、正面スケルトンデータ）を変換したスケルトンデータが用いられる。以下、特に断らない限り、右側面スケルトンデータと言うときには、正面スケルトンデータからの変換後のスケルトンデータを意味する。また、ステップＳ２０２では、第２位置導出部１４ｄは、右側面スケルトンデータに含まれる関節等の注目点の三次元座標を、第２平面内での二次元座標に変換する。
【０１７０】
スケルトンデータの変換は、予め記憶部１３内に記憶されているキャリブレーションパラメータに基づいて行われる。スケルトンデータの変換とは、ある三次元空間における三次元座標を、別の定義により設定される三次元空間での三次元座標に変換することを意味する。従って、変換前後の三次元空間の相対的な関係が既知であれば、かかる変換が可能になる。この相対的な関係を示すパラメータが、ここで用いられるキャリブレーションパラメータであり、後述するキャリブレーションパラメータ設定処理の中で設定される。
【０１７１】
続くステップＳ２０３では、第２位置導出部１４ｄが、グリップ挙動導出処理、左肩導出処理及びシャフト方向導出処理により導出された正面側から見たグリップ５１の三次元座標、左肩７１の三次元座標及びシャフト５２の向きを表す三次元ベクトルを、それぞれ右側面側から見たデータに変換する。本実施形態では、後述するとおり、右側面側から見た画像データに基づいて、スイング解析が実行されるためである。以下では、特に断らない限り、右側面側から見た画像データの解析について説明している箇所では、ステップＳ２０３による変換後のグリップ端５１ａの位置情報、左肩７１の位置情報及びシャフト５２の向きが、解析の対象とされる。
【０１７２】
ところで、本実施形態では、グリップ挙動導出処理及びシャフト方向導出処理により導出されたグリップ端５１ａの位置情報及びシャフト５２の向きは、正面からの画像データに基づいて算出されるため、ステップＳ２０３での変換後の位置情報及びシャフト５２の向きは、誤差が大きくなることがある。このような場合には、グリップ端５１ａの位置情報及びシャフト５２の向きを、右側面からの画像（シルエットデータ、深度フレーム及びＩＲフレームを含む）に基づいて、画像処理により再導出することができる。また、左肩挙動導出処理により導出された左肩７１の位置情報をステップＳ２０３により変換したデータについても、誤差が大きくなることがある。このような場合には、左肩７１の位置情報を、右側面からの画像（シルエットデータ、深度フレーム及びＩＲフレームを含む）に基づいて、画像処理により再導出することができる。
【０１７３】
続くステップＳ２０４，Ｓ２０５では、ステップＳ２０１で決定された各チェックポイントにおける所定の部位の位置情報が導出される。ここで導出される位置情報は、良否判定処理の中でスイング動作の良否の判定に用いられる。
【０１７４】
上記のとおり、ステップＳ２０４，Ｓ２０５は、各チェックポイントでの所定の部位の位置情報を導出するステップである。このうち、ステップＳ２０４では、第１平面内での所定の部位の位置情報が導出され、ステップＳ２０５では、第２平面内での所定の部位の位置情報が導出される。本実施形態では、位置情報が導出される部位は、チェックポイントごとに異なる。本実施形態に係るチェックポイントごとの位置情報が導出される部位については、以下にまとめて説明する。ステップＳ２０５が終了すると、位置導出処理が終了する。
【０１７５】
＜２−３−１−１．アドレス＞
第２位置導出部１４ｄは、スケルトンデータから、アドレス時の第１平面内でのゴルファー７の右肩、肩中心、臍、右足首及び左足首の位置情報を導出する。このとき、アドレス時の正面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１７６】
また、第２位置導出部１４ｄは、シルエットデータから、アドレス時の第１平面内での左足幅基準位置、右足幅基準位置、臍左位置、臍右位置及び左足踵の位置情報を導出する。ここでの左足幅基準位置及び右足幅基準位置からは、アドレス時のスタンスの幅を特定することができる。ここでの臍左位置及び臍右位置からは、アドレス時の腰の幅を特定することができる。
【０１７７】
ここで、シルエットデータとは、各フレーム上でのゴルファー７のシルエットを示すデータであり、取得部１４ａにより取得される。より具体的には、取得部１４ａは、記憶部１３内に格納されている深度フレームを読み出し、メモリに展開する。そして、取得部１４ａは、これらの深度フレームからシルエットデータを取得する。すなわち、ゴルファー７は、距離画像センサ２Ｆ，２Ｓの撮像範囲において比較的手前側に存在するため、深度フレームから浅い深度を表す画素値を有する領域を抽出することにより、人体のシルエットを導出することができる。そのため、より正確には、ここでいうシルエットには、ゴルフクラブ５等のシルエットも含まれる。なお、距離画像センサであるＫｉｎｅｃｔ（登録商標）には、深度画像からシルエットデータを読み出すためのライブラリが提供されており、本実施形態では、当該ライブラリを用いて、シルエットデータが取得される。また、シルエットデータは、距離画像センサ２Ｆ，２ＳのＣＰＵ２３が、深度フレームから導出するようにしてもよい。この場合には、取得部１４ａは、単に距離画像センサ２から送られてきたシルエットデータを読み出すだけでよい。また、シルエットデータは、深度フレームではなく、ＩＲフレームを画像処理することにより導出することもできる。
【０１７８】
なお、Ｋｉｎｅｃｔ（登録商標）のライブラリを用いて直接的に抽出されるシルエットデータは、通常、２値化されていない。その場合、取得部１４ａは、当該シルエットデータを、ゴルファー７（より正確には、ゴルフクラブ５も含まれる）のシルエットのみを１、その他を０と表すように２値化することができる。また、取得部１４ａは、シルエットデータに対し膨張及び収縮を繰り返すことで、シルエットに分類されている小さなエリアを消去し、より正確なシルエットを取得することができる。また、取得部１４ａは、ラベリング処理を行うことによっても、シルエットに分類されている小さなエリアを消去することもできる。以下では、このように加工されたシルエットデータも、同様にシルエットデータと呼ぶ。以上のシルエットデータは、正面深度フレーム及び右側面深度フレームのそれぞれから同様の方法で、正面シルエットデータ及び右側面シルエットデータとして導出される。
【０１７９】
左足幅基準位置、右足幅基準位置、臍左位置、臍右位置及び左足踵の位置情報の導出方法の説明に戻る。これらの位置情報は、第２位置導出部１４ｄにより、正面シルエットデータを画像処理することにより導出される。図５２は、アドレス時の正面シルエットデータに正面スケルトンデータを重ねた画像である。本実施形態では、図５２に示されるとおり、正面シルエットデータの画像上において、シルエットの部分を囲む矩形枠Ｌ１が設定される。枠Ｌ１の左右の境界は、シルエットから所定の間隔をあけるように設定される。また、枠Ｌ１の上方の境界は、シルエットに含まれる最上点に一致し、下方の境界は、直線状のシャフト５２のシルエットを除いたシルエットの下端に一致する。続いて、正面シルエットデータの画像上において、左右方向に左足首から枠Ｌ１の右端まで広がり、上下方向に左足首から枠Ｌ１の下端まで広がる枠Ｌ２が設定される。さらに、正面シルエットデータの画像上において、左右方向に右足首から枠Ｌ１の左端まで広がり、上下方向に右足首から枠Ｌ１の下端まで広がる枠Ｌ３が設定される。そして、枠Ｌ２内で左足首から最も遠いシルエット内の点の左右方向の位置が、左足幅基準位置として特定され、枠Ｌ３内で右足首から最も遠いシルエット内の点の左右方向の位置が、右足幅基準位置として特定される。
【０１８０】
また、図５２に示されるとおり、アドレス時の正面シルエットデータの画像上において、臍を通る水平な直線上においてシルエット内の左端点が、臍右位置として特定される。また、同直線上においてシルエット内の右端点が、臍左位置として特定される。
【０１８１】
左足踵の位置情報は、アドレスから少し進んだ（例えば、１フレーム進んだ）タイミングでの正面シルエットデータの画像から導出される。図５３は、当該タイミングでの正面シルエットデータに正面スケルトンデータを重ねた画像である。本実施形態では、図５３に示されるとおり、正面シルエットデータの画像上において、上記と同様の矩形枠Ｌ１が設定される。続いて、正面シルエットデータの画像上において、左右方向に左足首から枠Ｌ１の中央まで広がり、上下方向に左足首から枠Ｌ１の下端まで広がる枠Ｌ４が設定される。そして、枠Ｌ４内で左足首から最も遠いシルエット内の点が、左足踵の位置として特定される。
【０１８２】
次に、第２位置導出部１４ｄは、スケルトンデータから、アドレス時の第２平面内でのゴルファー７の右肩、首、腰、左膝、右膝、右足首及び右肘の位置情報を導出する。このとき、アドレス時の右側面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１８３】
また、第２位置導出部１４ｄは、シルエットデータから、アドレス時の第２平面内での左足先、右足先、左膝頭及び右膝頭の位置情報を導出する。ここで、左足及び右足については、地面からの赤外線データの反射波等がノイズとなり、深度フレームにおいて深度情報が取得されないことがある。この場合、深度フレームに基づくシルエットデータには、左足及び右足のシルエットが現れない。本実施形態では、このような場合に対処すべく、上述のシルエットデータにおいて特定されるシルエットの領域を拡張する、言い換えると、当該シルエットの領域に左足及び右足に対応する領域を補完する処理が行われる。具体的には、第２位置導出部１４ｄは、アドレス時の右側面深度フレーム上で深度情報が欠落している領域の情報に基づいて、左足及び右足に対応する領域を導出する。図５４Ａは、アドレス時の右側面深度フレームに基づく右側面シルエットデータの画像である。本実施形態では、第２位置導出部１４ｄは、この右側面シルエットデータの画像上において、右足首を基準として右足首周辺に所定のサイズの枠Ｌ５を設定する。そして、この枠Ｌ５内で、深度情報が０となっている領域を、左足及び右足に対応する領域として抽出する。図５４Ｂは、左足及び右足のシルエットが補完された画像である。第２位置導出部１４ｄは、右足首を基準として右足首周辺に所定のサイズの枠Ｌ６を設定し、枠Ｌ６内における左足のシルエットの右端点を左足先の位置として特定する。同様に、第２位置導出部１４ｄは、右足首を基準として右足首周辺に所定のサイズの枠Ｌ７を設定し、枠Ｌ７内における右足のシルエットの右端点を右足先の位置として特定する。
【０１８４】
左膝頭及び右膝頭の位置情報は、正面深度フレーム上で左膝及び右膝の位置を深度方向にオフセットすることで左膝頭及び右膝頭の位置を決定し、これらをステップＳ２０２と同じ方法で右側面側から見た位置に変換し、変換後の左膝頭及び右膝頭の位置をシルエットの輪郭方向にオフセットした点の位置情報として特定される。
【０１８５】
＜２−３−１−２．テイクバックシャフト８時＞
第２位置導出部１４ｄは、スケルトンデータから、テイクバックシャフト８時の第１平面内でのゴルファー７の右肩及び臍の位置情報を導出する。このとき、テイクバックシャフト８時の正面スケルトンデータに含まれるこれらの部位の２次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１８６】
＜２−３−１−３．テイクバックシャフト９時＞
本実施形態では、テイクバックシャフト９時のタイミングでは、ゴルファー７の部位の位置情報は特定されない。しかしながら、後述するとおり、テイクバックシャフト９時のグリップ端５１ａの位置情報に基づいて、テイクバックシャフト９時のタイミングでのスイング動作の良否が判断される。
【０１８７】
＜２−３−１−４．テイクバック腕水平＞
第２位置導出部１４ｄは、スケルトンデータから、テイクバック腕水平時の第２平面内でのゴルファー７の首及び腰の位置情報を導出する。このとき、テイクバック腕水平時の右側面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１８８】
＜２−３−１−５．トップ＞
第２位置導出部１４ｄは、スケルトンデータから、トップ時の第１平面内でのゴルファー７の頭、臍、左膝及び右膝の位置情報を導出する。このとき、トップ時の正面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１８９】
また、第２位置導出部１４ｄは、シルエットデータから、トップ時の第１平面内での臍右位置の位置情報を導出する。ここでの臍右位置の導出方法は、アドレス時の正面シルエットデータの画像に代えて、インパクト時の正面シルエットデータの画像を用いる点を除き、アドレス時と同様である。
【０１９０】
次に、第２位置導出部１４ｄは、スケルトンデータから、トップ時の第２平面内でのゴルファー７の左膝、右膝、首及び腰の位置情報を導出する。このとき、トップ時の右側面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１９１】
また、第２位置導出部１４ｄは、シルエットデータから、トップ時の第２平面内でのゴルファー７の左肩７１、左膝頭、右膝頭、左肘及び右肘の位置情報を導出する。左肩７１の位置情報の導出には、既に導出されている左肩７１の二次元座標が使用される。図５５は、トップ時の右側面シルエットデータの画像である。具体的には、本実施形態では、図５５に示すとおり、トップ時の右側面シルエットデータの画像上において、既に抽出されている左肩７１の位置を、左方向に向かってシルエットの輪郭に重なるように移動させ、当該移動後の位置を新たな左肩の位置とする。
【０１９２】
また、右膝頭の位置情報は、アドレス時と同様の方法で導出される。一方、左膝頭の位置情報は、以下の方法で導出される。まず、右側面シルエットデータの画像上において、既に抽出されている左膝の位置を基準としてその周辺に所定サイズの枠Ｌ１０（図５５参照）が設定される。続いて、枠Ｌ１０内に含まれるシルエットの輪郭の曲率が算出され、曲率が最大となっている点が新たな左膝頭の位置として特定される。
【０１９３】
右肘の位置情報も、シルエットの曲率に基づいて導出される。より具体的には、右側面シルエットデータの画像上において、グリップ端５１ａの位置を基準としてその周辺に所定サイズの枠Ｌ１１（図５５参照）が設定される。続いて、枠Ｌ１１内に含まれるシルエットの輪郭の曲率が算出され、曲率が最大となっている点が新たな右肘の位置として特定される。
【０１９４】
左肘の位置情報は、以下の方法で導出される。まず、再抽出された左肩７１の位置とグリップ端５１ａとの中点を仮左肘とする。次に、仮左肘の位置を基準としてその周辺に所定サイズの枠Ｌ１２（図５５参照）を設定し、右側面深度フレームに基づいて、枠Ｌ１２内で左肩７１よりも深度の浅い点、言い換えると、距離画像センサ２Ｆを基準として手前側に突出している点を、左肘の位置として特定する。
【０１９５】
＜２−３−１−６．ダウンスイング腕水平＞
第２位置導出部１４ｄは、スケルトンデータから、ダウンスイング腕水平時の第１平面内でのゴルファー７の左膝の位置情報を導出する。このとき、ダウンスイング腕水平時の正面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１９６】
次に、第２位置導出部１４ｄは、スケルトンデータから、ダウンスイング腕水平時の第２平面内でのゴルファー７の首及び腰の位置情報を導出する。このとき、ダウンスイング腕水平時の右側面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１９７】
＜２−３−１−７．ダウンスイングシャフト９時＞
第２位置導出部１４ｄは、シルエットデータから、ダウンスイングシャフト９時の第１平面内での手の位置情報を導出する。本実施形態では、手の位置は、ダウンスイングシャフト９時の正面シルエットデータの画像上において、グリップ端５１ａからシャフト５２の延びる方向に沿ってヘッド側に所定の長さだけ移動した位置として特定される。
【０１９８】
＜２−３−１−８．インパクト＞
第２位置導出部１４ｄは、スケルトンデータから、インパクト時の第１平面内でのゴルファー７の頭、肩中心、右肩、左肘及び臍の位置情報を導出する。このとき、インパクト時の正面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０１９９】
また、第２位置導出部１４ｄは、シルエットデータから、インパクト時の第１平面内での臍左位置及び臍右位置の位置情報を導出する。ここでの臍左位置及び臍右位置からは、インパクト時の腰の幅を特定することができる。また、ここでの臍左位置及び臍右位置の導出方法は、アドレス時の正面シルエットデータの画像に代えて、インパクト時の正面シルエットデータの画像を用いる点を除き、アドレス時と同様である。なお、インパクト時の正面シルエットデータの画像上においては、腕が臍左位置に重なってしまう傾向にあるため、臍左位置を特定するときには、インパクトから所定の時間溯った（例えば、２フレーム前の）画像上で同様の処理を行うことが好ましい。
【０２００】
次に、第２位置導出部１４ｄは、スケルトンデータから、インパクト時の第２平面内でのゴルファー７の首、腰、右膝及び右足首の位置情報を導出する。このとき、インパクト時の右側面スケルトンデータに含まれるこれらの部位の二次元座標が抽出され、当該二次元座標がそのままこれらの部位の位置情報とされる。
【０２０１】
＜２−３−２．キャリブレーションパラメータ設定処理＞
次に、キャリブレーションパラメータ設定処理について説明する。まず、ゴルファー７が立つ位置の近傍に、スタンド等を介して赤外線を反射する１又は複数のマークを配置する。このマークは、距離画像センサ２Ｆ，２Ｓの両方から撮影可能な位置に配置される。そして、このマークを距離画像センサ２Ｆ，２Ｓにより撮影し、このマークの三次元座標を取得する。ここで、距離画像センサ２Ｆにより撮影されたマークの三次元座標を（ＦＸｉ，ＦＹｉ，ＦＺｉ）と表し、距離画像センサ２Ｓにより撮影された同じ位置のマークの三次元座標を（ＳＸｉ，ＳＹｉ，ＳＺｉ）と表す。ただし、ｉ＝１，２,・・・，ｎ（ｎ≧２）である。ここでは、マークを移動させる等して、ｎ組のデータセット（ＦＸｉ，ＦＹｉ，ＦＺｉ，ＳＸｉ，ＳＹｉ，ＳＺｉ）を用意する。
【０２０２】
このとき、距離画像センサ２Ｆの三次元座標を、距離画像センサ２Ｓの三次元座標へと変換するための変換係数ａ〜ｌは、以下の式を満たす。
【数２】
2017074350.tif 000004
【０２０３】
以上の式に、ｎ組のデータセット（ＦＸｉ，ＦＹｉ，ＦＺｉ，ＳＸｉ，ＳＹｉ，ＳＺｉ）を代入することにより、変換係数ａ〜ｌが算出される。この変換係数ａ〜ｌが、キャリブレーションパラメータである。なお、キャリブレーションパラメータは、他の方法でも当然に算出可能である。
【０２０４】
＜２−３−３．良否判定処理＞
次に、スイング動作の良否の判定を行う良否判定処理について説明する。良否判定処理は、判定部１４ｅにより実行される。
【０２０５】
良否判定処理は、ゴルファー７の様々な部位（左肩７１を含む）の位置情報、グリップ端５１ａの位置情報、及びシャフト５２の向きの情報に基づいて、実行される。具体的には、判定部１４ｅは、これらの情報に基づいて、スイング動作の良否の判定を行うための指標値を算出する。指標値としては、様々なものがあり、チェックポイントごとに設定されている。本実施形態では、例えば、以下のような指標値が算出される。以下は、正面の解析を行うための指標値と、右側面の解析を行うための指標値とに分けて列挙している。
【０２０６】
（アドレス時の指標値−正面）
ボール位置（原点）に対する左足踵の位置、肩幅に対するスタンスの広さ、上半身のバランス、下半身のバランス
なお、肩幅に対するスタンスの広さは、右肩、左肩、左足幅基準位置及び右足幅基準位置の位置情報から、上半身のバランスは、左肩、右肩、左足幅基準位置及び右足幅基準位置の位置情報から、下半身のバランスは、臍左位置、臍右位置、左足幅基準位置及び右足幅基準位置の位置情報から導出することができる。
【０２０７】
（アドレス時の指標値−右側面）
バランスポイントラインに対する右肩の位置、バランスポイントラインに対する右膝の位置、スパインアングル
なお、右肩の位置は、右肩及び右足先の位置情報から、右膝の位置は、右膝頭及び右足先の位置情報から、スパインアングルは、首及び腰の位置から導出することができる。なお、バランスポイントラインとは、右側面フレーム上において右足先の位置から縦方向に引いたラインのことである。
【０２０８】
（テイクバックシャフト８時の指標値−正面）
グリップ端５１ａの向き（臍に向かっているか）、理想シャフトラインとの角度差、アドレスからの右肩移動量
なお、グリップ端５１ａの向きは、グリップ端５１ａの位置情報、シャフト５２ａの向き及びアドレス時の臍の位置情報から、理想シャフトラインとの角度差は、シャフト５２の角度及び所定の理想角度から、アドレスからの右肩移動量は、右肩の位置情報及びアドレス時の右肩の位置情報から導出することができる。
【０２０９】
（テイクバックシャフト９時の指標値−正面）
アドレス時の基準軸に対するグリップ端５１ａの位置
なお、本指標値は、グリップ端５１ａの位置情報、並びにアドレス時の右肩及び肩中心から導出することができる。
【０２１０】
（テイクバック腕水平の指標値−正面）
リストコックの角度、両肘の高さの差、アドレスからの左肩移動量
なお、リストコックの角度は、シャフト５２の向きから、アドレスからの左肩移動量は、テイクバック腕水平及びアドレス時の左肩の位置情報から導出することができる。
【０２１１】
両肘の高さの差は、例えば、以下のとおり導出することができる。図５６は、テイクバック腕水平時の正面シルエットデータの画像を示している。ここでは、まず、上述した枠Ｌ１の他、グリップ端５１ａ及び左肩７１の位置を基準として図５６に示すような枠Ｌ８，Ｌ９が設定される。次に、テイクバック腕水平時の正面シルエットデータの画像上において、図５６に示す２つの参照点が特定され、これらの参照点間の幅が指標値として導出される。そして、当該指標値が所定値よりも大きい場合には、テイクバック腕水平時の正面シルエットデータの画像上において、参照点を結ぶ線分が特定される。続いて、テイクバック腕水平時の正面深度フレームから、当該線分上の深度情報が導出される。そして、枠Ｌ８内に含まれる当該線分上の点の深度情報に基づく深度と、枠Ｌ９内に含まれる当該線分上の点の深度情報に基づく深度との差が指標値として導出され、当該指標値の大小に応じて、左肘と右肘のどちらが高いかが判定される。
【０２１２】
（テイクバック腕水平の指標値−右側面）
アドレスを基準とするスパインアングル
なお、スパインアングルは、首及び腰の位置情報、並びにアドレス時のスパインアングルから導出することができる。
【０２１３】
（トップの指標値−正面）
オーバースイング、上半身の反り、アドレスからの左右移動量、アドレスを基準とする右膝の位置、アドレスを基準とする頭の位置、アドレスを基準とする左肩の位置
なお、オーバースイングは、シャフト５２の角度から、上半身の反りは、頭及び臍の位置情報から、左右移動量は、臍右位置及び臍位置の位置情報並びにアドレス時の右足幅基準位置及び臍の位置情報から、右膝の位置は、右膝の位置情報及びアドレス時の右足幅基準位置の位置情報から、頭の位置は、頭の位置及びアドレス時の右足幅基準位置の位置から、上記左肩の位置は、左肩の位置情報並びにアドレス時の左肩及び肩中心の位置情報から導出することができる。
【０２１４】
（トップの指標値−右側面）
アドレスからの右膝の移動量、アドレスからの左膝の移動量、アドレスを基準とする手首の位置、両肘の高さ、アドレスを基準とするスパインアングル
なお、右膝の移動量は、右膝頭及びアドレス時の右膝頭の位置情報から、左膝の移動量は、左膝頭及びアドレス時の左膝頭の位置情報から、手首の位置は、首及びグリップ端５１ａの位置情報並びにアドレス時の右肘及びボール（原点）の位置情報から、両肘の高さは、左肘及び右肘の位置情報から、スパインアングルは、首及び腰の位置情報並びにアドレス時のスパインアングルから導出することができる。
【０２１５】
（ダウンスイング腕水平の指標値−正面）
リストコックの角度、アドレス時の左足幅基準位置に対する左膝の位置
なお、リストコックの角度は、シャフト５２の向きから、左膝の位置は、左膝の位置情報及びアドレス時の左足幅基準位置の位置情報から導出することができる。
【０２１６】
（ダウンスイング腕水平の指標値−右側面）
アドレスを基準とするスパインアングル
なお、スパインアングルは、首及び腰の位置情報、並びにアドレス時のスパインアングルから導出することができる。
【０２１７】
（ダウンスイングシャフト９時の指標値−正面）
リストコックの角度の変化、アドレス時の基準軸に対するグリップ端５１ａの位置
なお、リストコックの角度の変化は、シャフト５２の向き、左肩の位置情報及びグリップ端５１ａの位置情報、並びにダウンスイング腕水平時のシャフト５２の向きから、グリップ端５１ａの位置は、グリップ端５１ａの位置情報並びにアドレス時の右肩及び肩中心の位置情報から導出することができる。
【０２１８】
（インパクトの指標値−正面）
左右移動量、上下移動量、頭の位置、肩の回転量、スパインの傾き、左肘の引け、アドレス時の基準軸に対するグリップ端５１ａの位置
なお、左右移動量は、臍の位置情報並びにアドレス時の左肩、右肩及び肩中心の位置情報から、上下移動量は、アドレス時及びインパクト時の臍の位置情報から、頭の位置は、頭の位置情報並びにアドレス時の左肩及び肩中心の位置情報から、肩の回転量は、左肩及び右肩の位置情報並びにアドレス時の左肩及び右肩の位置情報から、スパインの傾きは、臍及び肩中心の位置情報から、左肘の引けは、左肘、左肩及びグリップ端５１ａの位置情報から、グリップ端５１ａの位置は、グリップ端５１ａの位置情報並びにアドレス時の左肩及び肩中心の位置情報から導出することができる。
【０２１９】
（インパクトの指標値−右側面）
アドレスを基準とするスパインアングル、アドレスを基準とする膝の角度
なお、スパインアングルは、首及び腰の位置情報、並びにアドレス時のスパインアングルから、膝の角度は、腰、右膝及び右足首の位置情報、並びにアドレス時の腰、右膝及び右足首の位置情報から導出することができる。
【０２２０】
本実施形態では、以上のような指標値の正解データ（スイング動作が良好と判定されるときの指標値の範囲）が、記憶部１３内に予め設定されている。判定部１２ｅは、この正解データと、算出された指標値とを比較することにより、各指標値についてスイング動作の良否を判定する。また、各指標値についての判定結果にポイントを付与しこれを加算する等して、スイング動作の良否を総合評価することもできる。判定結果は、適宜、表示部１１上に表示される。例えば、報告書の形式で、各指標値についての判定結果の一覧及び総合評価を表示することができる。
【符号の説明】
【０２２１】
１  スイング解析装置
２  距離画像センサ
３  スイング解析プログラム
５  ゴルフクラブ
７  ゴルファー
１４ａ  取得部
１４ｂ  位置導出部（導出部）
１４ｃ  向き導出部（導出部）
５１  グリップ
５２  シャフト
７１  左肩
１００  スイング解析システム
【図１】
2017074350.tif 000005
【図２】
2017074350.tif 000006
【図３】
2017074350.tif 000007
【図４】
2017074350.tif 000008
【図５】
2017074350.tif 000009
【図６】
2017074350.tif 000010
【図７】
2017074350.tif 000011
【図８】
2017074350.tif 000012
【図９】
2017074350.tif 000013
【図１０】
2017074350.tif 000014
【図１１】
2017074350.tif 000015
【図１２】
2017074350.tif 000016
【図１３】
2017074350.tif 000017
【図１４】
2017074350.tif 000018
【図１５】
2017074350.tif 000019
【図１６】
2017074350.tif 000020
【図１７】
2017074350.tif 000021
【図１８】
2017074350.tif 000022
【図１９】
2017074350.tif 000023
【図２０】
2017074350.tif 000024
【図２１】
2017074350.tif 000025
【図２２】
2017074350.tif 000026
【図２３】
2017074350.tif 000027
【図２４】
2017074350.tif 000028
【図２５】
2017074350.tif 000029
【図２６】
2017074350.tif 000030
【図２７】
2017074350.tif 000031
【図２８】
2017074350.tif 000032
【図２９】
2017074350.tif 000033
【図３０】
2017074350.tif 000034
【図３１】
2017074350.tif 000035
【図３２】
2017074350.tif 000036
【図３３】
2017074350.tif 000037
【図３４】
2017074350.tif 000038
【図３５】
2017074350.tif 000039
【図３６】
2017074350.tif 000040
【図３７】
2017074350.tif 000041
【図３８】
2017074350.tif 000042
【図３９】
2017074350.tif 000043
【図４０】
2017074350.tif 000044
【図４１Ａ】
2017074350.tif 000045
【図４１Ｂ】
2017074350.tif 000046
【図４１Ｃ】
2017074350.tif 000047
【図４２】
2017074350.tif 000048
【図４３】
2017074350.tif 000049
【図４４】
2017074350.tif 000050
【図４５】
2017074350.tif 000051
【図４６】
2017074350.tif 000052
【図４７】
2017074350.tif 000053
【図４８】
2017074350.tif 000054
【図４９】
2017074350.tif 000055
【図５０】
2017074350.tif 000056
【図５１】
2017074350.tif 000057
【図５２】
2017074350.tif 000058
【図５３】
2017074350.tif 000059
【図５４Ａ】
2017074350.tif 000060
【図５４Ｂ】
2017074350.tif 000061
【図５５】
2017074350.tif 000062
【図５６】
2017074350.tif 000063