(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022059405
(43)【公開日】2022-04-13
(54)【発明の名称】トラッキング装置
(51)【国際特許分類】
G06T 7/246 20170101AFI20220406BHJP
H04N 7/18 20060101ALI20220406BHJP
【FI】
G06T7/246
H04N7/18 G
H04N7/18 K
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2020167136
(22)【出願日】2020-10-01
(71)【出願人】
【識別番号】500063228
【氏名又は名称】田中 成典
(71)【出願人】
【識別番号】517305894
【氏名又は名称】姜 文渊
(71)【出願人】
【識別番号】502235692
【氏名又は名称】中村 健二
(71)【出願人】
【識別番号】517305883
【氏名又は名称】山本 雄平
(71)【出願人】
【識別番号】519113745
【氏名又は名称】Intelligent Style株式会社
(74)【代理人】
【識別番号】100092956
【弁理士】
【氏名又は名称】古谷 栄男
(74)【代理人】
【識別番号】100101018
【弁理士】
【氏名又は名称】松下 正
(72)【発明者】
【氏名】田中 成典
(72)【発明者】
【氏名】姜 文渊
(72)【発明者】
【氏名】中村 健二
(72)【発明者】
【氏名】山本 雄平
(72)【発明者】
【氏名】田中 ちひろ
(72)【発明者】
【氏名】肖 智▲威▼
【テーマコード(参考)】
5C054
5L096
【Fターム(参考)】
5C054CA04
5C054CC02
5C054EA01
5C054EA05
5C054EA07
5C054FC01
5C054FC03
5C054FC07
5C054FC12
5C054FC13
5C054FC14
5C054GB01
5C054HA31
5L096AA06
5L096CA04
5L096CA24
5L096EA35
5L096FA02
5L096FA69
5L096GA08
5L096GA17
5L096HA04
5L096HA05
5L096JA11
(57)【要約】
【課題】 スポーツ選手などの動体を正確にトラッキングできるトラッキング装置を提供する。
【解決手段】 対象特徴点抽出手段14は、動画中の対象フレーム画像FTの探索枠内において、画像の特徴点(対象特徴点)を抽出する。参照特徴点取得手段12は、既に移動体枠の設定と特徴点の抽出がなされた参照フレームFSについて、記録された特徴点(参照特徴点)を取得する。対応形成手段16は、各参照特徴点の周囲画素と、各対象特徴点の周囲画素の類似性を判断し、各参照特徴点と各対象特徴点とを対応づける。移動線算出手段18は、上記の対応する参照特徴点と対象特徴点を結ぶ移動線を算出する。なお、参照特徴点を開始点、対象特徴点を終了点とする。移動算出手段20は、この移動線に基づいて移動量を算出する。移動枠設定手段26は、当該算出した移動量に基づいて、参照フレームの移動体枠を移動させ、対象フレームの移動体枠を設定する。このようにして、トラッキングを行うことができる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
移動物を撮像した動画像における移動物の動きを追跡するトラッキング装置であって、
移動物を撮像した動画像の対象フレーム画像を取得し、当該対象フレームより前の参照フレームの移動物枠に基づいて設定された探索枠において、移動物の特徴点を抽出する対象特徴点抽出手段と、
前記参照フレームの前記移動物枠内における特徴点を取得する参照特徴点取得手段と、
前記参照特徴点の周囲画素と、前記対象特徴点の周囲画素に基づいて、各参照特徴点と各対象特徴点を対応づける対応形成手段と、
参照フレームにおける特徴点を開始点とし、対象フレームにおける対応する特徴点を終了点とする移動線を、特徴点ごとに算出する移動線算出手段と、
前記移動線に基づいて、移動体の移動量を算出する移動算出手段と、
前記参照フレームの移動物枠を基準とし、前記算出された移動量に基づいて、前記対象フレームの移動物枠を設定する移動物枠設定手段と、
を備えたトラッキング装置。
【請求項2】
移動物を撮像した動画像における移動物の動きを追跡するトラッキング装置を、コンピュータによって実現するためのトラッキングプログラムであって、コンピュータを、
移動物を撮像した動画像の対象フレーム画像を取得し、前記参照フレームの移動物枠に基づいて設定された探索枠において、移動物の特徴点を抽出する対象特徴点抽出手段と、
前記参照フレームの前記移動物枠内における特徴点を取得する参照特徴点取得手段と、
前記参照特徴点の周囲画素と、前記対象特徴点の周囲画素に基づいて、各参照特徴点と各対象特徴点を対応づける対応形成手段と、
参照フレームにおける特徴点を開始点とし、対象フレームにおける対応する特徴点を終了点とする移動線を、特徴点ごとに算出する移動線算出手段と、
前記移動線に基づいて、移動体の移動量を算出する移動算出手段と、
前記参照フレームの移動物枠を基準とし、前記算出された移動量に基づいて、前記対象フレームの移動物枠を設定する移動物枠設定手段として機能させるためのトラッキングプログラム。
【請求項3】
請求項1の装置または請求項2のプログラムにおいて、
前記移動算出手段は、前記各移動線の開始点を同一点としたとき、終了点の位置が所定範囲から外れる移動線を除き、終了点の位置が所定範囲内にある移動線に基づいて、移動体の移動量を算出することを特徴とする装置またはプログラム。
【請求項4】
請求項1~3の装置またはプログラムにおいて、
前記移動算出手段は、前記各移動線の開始点を同一点としたときの各終了点の重心位置を中心として所定半径内に終了点が入る移動線に基づいて、移動体の移動量を算出することを特徴とする装置またはプログラム。
【請求項5】
請求項4の装置またはプログラムにおいて、
前記移動物枠設定手段は、前記参照フレームの移動物枠を、前記算出された移動量にしたがって動かした位置に前記対象フレームの移動物枠を設定することを特徴とする装置またはプログラム。
【請求項6】
請求項1~5のいずれかの装置またはプログラムにおいて、
前記移動物枠設定手段は、設定された移動物枠の画面上の位置に基づいて、移動物枠の大きさを修正することを特徴とする装置またはプログラム。
【請求項7】
請求項1~6のいずれかの装置またはプログラムにおいて、
前記移動物枠設定手段は、前記算出した移動量に基づいて、複数の候補移動物枠を生成し、これら候補移動物枠のうち、最も多くの特徴点を含むものを移動物物枠として設定することを特徴とする装置またはプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、動体をトラッキングするためのトラッキング装置に関する。
【背景技術】
【0002】
動体をカメラなどで撮像し、トラッキングする装置が用いられている。たとえば、特許文献1のように、動画の各フレームごとに人物を特定して人物枠を生成し、当該人物枠の移動を追跡することで追跡を行う手法が提案されている。人物の特定には、YOLOなどのアルゴリズムが用いられている。
【0003】
図19に、YOLOを用いて、動画の一フレームにおいて人物を検出した例を示す。図における四角枠が、検出された人物枠2である。この処理をフレームごとに繰り返し、人物の移動をトラッキングすることができる。
【0004】
なお、検出された人物枠は、前フレームにおける人物枠から最も近いものと対応づけることで、人物のトラッキングを行うようにしている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のような従来技術では、次のような問題があった。画像中から人物などの動体を正確に認識するためには、動体がある程度大きく撮像されていなければならなかった。このため、
図19に示すように、認識されない動体4があったり、動体6とは異なる位置に動体枠8が認識されたりすることがあった。
【0007】
動体枠が正確に設定できないと、動体のトラッキングもうまくいかないので、このような事態を避ける必要があった。
【0008】
この発明は、上記のような問題点を解決して、動体を正確にトラッキングできるトラッキング装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
この発明の独立して適用可能な特徴を以下に列挙する。
【0010】
(1)(2)この発明に係るトラッキング装置は、移動物を撮像した動画像における移動物の動きを追跡するトラッキング装置であって、移動物を撮像した動画像の対象フレーム画像を取得し、当該対象フレームより前の参照フレームの移動物枠に基づいて設定された探索枠において、移動物の特徴点を抽出する対象特徴点抽出手段と、前記参照フレームの前記移動物枠内における特徴点を取得する参照特徴点取得手段と、前記参照特徴点の周囲画素と、前記対象特徴点の周囲画素に基づいて、各参照特徴点と各対象特徴点を対応づける対応形成手段と、参照フレームにおける特徴点を開始点とし、対象フレームにおける対応する特徴点を終了点とする移動線を、特徴点ごとに算出する移動線算出手段と、前記移動線に基づいて、移動体の移動量を算出する移動算出手段と、前記参照フレームの移動物枠を基準とし、前記算出された移動量に基づいて、前記対象フレームの移動物枠を設定する移動物枠設定手段とを備えている。
【0011】
移動物枠をフレームごとに移動させて追跡するようにしているので、確実に移動物を追跡することができる。
【0012】
(3)この発明に係るトラッキング装置は、移動算出手段が、前記各移動線の開始点を同一点としたとき、終了点の位置が所定範囲から外れる移動線を除き、終了点の位置が所定範囲内にある移動線に基づいて、移動体の移動量を算出することを特徴としている。
【0013】
したがって、移動物の姿勢変化などにより画像上の形状が変化しても、精度よくトラッキングを行うことができる。
【0014】
(4)この発明に係るトラッキング装置は、移動算出手段が、各移動線の開始点を同一点としたときの各終了点の重心位置を中心として所定半径内に終了点が入る移動線に基づいて、移動体の移動量を算出することを特徴としている。
【0015】
したがって、移動物の姿勢変化などにより画像上の形状が変化しても、精度よくトラッキングを行うことができる。また、その処理が容易である。
【0016】
(5)この発明に係るトラッキング装置は、移動物枠設定手段が、参照フレームの移動物枠を、前記算出された移動量にしたがって動かした位置に前記対象フレームの移動物枠を設定することを特徴としている。
【0017】
したがって、正確にトラッキングを行うことができる。
【0018】
(6)この発明に係るトラッキング装置は、移動物枠設定手段が、設定された移動物枠の画面上の位置に基づいて、移動物枠の大きさを修正することを特徴としている。
【0019】
したがって、カメラからの距離に応じた撮像画像の大きさに対応して移動物枠を設定することができる。
【0020】
(7)この発明に係るトラッキング装置は、移動物枠設定手段は、前記算出した移動量に基づいて、複数の候補移動物枠を生成し、これら候補移動物枠のうち、最も多くの特徴点を含むものを移動物枠として設定することを特徴としている。
【0021】
したがって、より正確に移動物枠を設定して、トラッキングを行うことができる。
【0022】
この発明において、「参照特徴点取得手段」は、実施形態においては、ステップS10がこれに対応する。
【0023】
「対象特徴点抽出手段」は、実施形態においては、ステップS9がこれに対応する。
【0024】
「対応形成手段」は、実施形態においては、ステップS105がこれに対応する。
【0025】
「移動線算出手段」は、実施形態においては、ステップS11がこれに対応する。
【0026】
「移動物枠設定手段」は、実施形態においては、ステップS14がこれに対応する。
【0027】
「プログラム」とは、CPUにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム、オペレーティングシステムと協働して機能を発揮するプログラム等を含む概念である。
【図面の簡単な説明】
【0028】
【
図1】一実施形態によるトラッキング装置の機能構成である。
【
図2】トラッキング装置のハードウエア構成である。
【
図3】トラッキング・プログラムのフローチャートである。
【
図4】トラッキング・プログラムのフローチャートである。
【
図6】人物枠60a、60bを設定した状態を示す図である。
【
図7】選手の画像に対して設定された特徴点P1、P2・・・を示す図である。
【
図8】BRISK特徴量の算出方法を示す図である。
【
図9】対象フレームに設定された探索枠61bを示す図である。
【
図10】参照フレームの特徴点と、対象フレームの特徴点を示す図である。
【
図11】移動線の選択処理を説明するための図である。
【
図12】選択された移動線と、平均移動線を示す図である。
【
図13】対象フレームに設定された選手枠62bを示す図である。
【
図14】参照フレームの選手枠と、対象フレームの選手枠を示す図である。
【
図15】第2の実施形態によるトラッキング装置の機能構成である。
【
図16】トラッキングプログラムのフローチャートである。
【
図17】トラッキングプログラムのフローチャートである。
【発明を実施するための形態】
【0029】
1.第1の実施形態
1.1機能構成
図1に、この発明の一実施形態によるトラッキング装置の機能構成を示す。対象特徴点抽出手段14は、動画中の対象フレーム画像FTの探索枠内において、画像の特徴点(対象特徴点)を抽出する。この探索枠は、対象フレーム画像FTより前の参照フレーム画像の移動体の位置を示す移動体枠に基づいて設定されたものである(たとえば、移動体枠の2倍の大きさの枠とする)。
【0030】
参照特徴点取得手段12は、既に移動体枠の設定と特徴点の抽出がなされた参照フレームFSについて、記録された特徴点(参照特徴点)を取得する。すなわち、記録されている移動体枠内の特徴点を取得する。
【0031】
対応形成手段16は、各参照特徴点の周囲画素と、各対象特徴点の周囲画素の類似性を判断し、各参照特徴点と各対象特徴点とを対応づける。これにより、参照フレームの移動体の参照特徴点と、対象フレームの移動体の対象特徴点とが対応づけられる。
【0032】
移動線算出手段18は、上記の対応する参照特徴点と対象特徴点を結ぶ移動線を算出する。なお、参照特徴点を開始点、対象特徴点を終了点とする。
【0033】
移動線抽出手段22は、全規格移動線の開始点を同一点としたとき、終了点の位置が所定範囲から外れる移動線を除いて、終了点の位置が所定範囲内にある移動線を抽出する。移動量算出手段24は、これら移動線の平均線を算出し、当該平均線に基づいて、移動体の移動量を算出する。この実施形態では、移動線抽出手段22と移動量算出手段24によって、移動算出手段20が構成されている。
【0034】
移動枠設定手段26は、当該算出した移動量に基づいて、参照フレームの移動体枠を移動させ、対象フレームの移動体枠を設定する。
【0035】
以上の処理が終了すると、対象フレームを参照フレームとし、対象フレームの次のフレームを新たな対象フレームとして、上記の処理を繰り返す。これにより、移動体枠の動きとして移動体をトラッキングすることができる。
【0036】
この実施形態では、参照フレームの移動体枠を移動させて、対象フレームの移動体枠を設定しているので、確実に移動体をとらえることができる。
【0037】
1.2ハードウエア構成
図2に、トラッキング装置のハードウエア構成を示す。CPU30には、メモリ32、ディスプレイ34、通信回路36、SSD38、DVD-ROM40、入出力インターフェイス42、マウス/キーボード44が接続されている。通信回路36は、インターネットに接続するための回路である。
【0038】
SSD38には、オペレーティングシステム50、トラッキングプログラム52、動画データ54が記録される。トラッキングプログラム52は、オペレーティングシステム50と協働してその機能を発揮するものである。これらプログラムは、DVD-ROM56に記録されていたものを、DVD-ROMドライブ40を介して、SSD38にインストールしたものである。
【0039】
SSD38には、解析対象である動画データ54も記録される。この動画データ54は、カメラ(図示せず)によって撮像されて可搬性記録媒体58に記録されたものを、入出力インターフェイス42を介して、SSD38に取り込んだものである。なお、インターネットなどを介して、カメラから直接取り込むようにしてもよい。
【0040】
1.3トラッキング処理
図3、
図4に、トラッキングプログラム52のフローチャートを示す。CPU30は、動画データ54の開始フレームをSSD38から取得する。なお、ここでは、サッカーグラウンド全体を、固定カメラによって撮像した動画データ54を例として説明する。
【0041】
CPU30は、動画データから背景を削除し、選手のみの画像とする(ステップS1)。
図5aが撮像画像であり、
図5bが背景を削除した画像である。動画データに対して、背景差分法にて背景を取り除くことができる。なお、背景画像は、選手のいない状態であらかじめ撮像しておいてもよいが、動画の全フレームを解析して背景画像を生成するようにしてもよい。
【0042】
次に、CPU30は、選手のみとした動画データの開始フレームを取得する。開始フレームは、必ずしも先頭フレームである必要はなく、個々の選手が判別しやすい適切なフレームを開始フレームとすればよい。この実施形態では、操作者が動画データを再生し、ディスプレイ34にて確認しながら、開始フレームを選択するようにしている。
【0043】
CPU30は、選択された開始フレームをディスプレイ34に表示する(ステップS1)。
図5bに、開始フレームの例を示す。操作者はディスプレイ34に表示された開始フレームの画像に対し、マウス44を操作して、各選手に対し長方形の人物枠を設定する。
図6に、競技中のすべての選手に対して人物枠60a、60b・・・を設定した状態を示す。
【0044】
操作者は、マウス44を操作して人物枠の大きさを変え、概ね、選手を外包するように設定する。なお、この実施形態では、人物枠の大きさは変えられるが、縦横比は固定(たとえば、縦2:横1)にしている。
【0045】
次に、CPU30は、人物枠中の選手の画像について、画像としての特徴点を抽出する(ステップS3)。画像としての特徴点としては、コーナーやエッジなどである。この実施形態では、FAST手法によって特徴点を抽出するようにしている。FAST手法では、対象とする画素を中心とする円(半径、数画素程度)の円周上の画素(16画素程度)の輝度を取得する。円周上のすべて(所定個以上)の画素の輝度が、対象画素の輝度よりも明るければ(暗ければ)、当該対象画素を特徴点とする。輝度だけでなく、色情報を用いるようにしてもよい。
【0046】
このような特徴点は、選手が移動したとしても特定可能であるから、選手のトラッキングに好ましいものである。
図7に示すように、選手に対して多くの特徴点P1、P2・・・が抽出されることになる。
【0047】
さらに、CPU30は、抽出した各特徴点について特徴量を算出する。特徴量は、各特徴点を特徴付けて区別するためのものであり、たとえば、特徴点の周囲の画像によって特徴付ける。選手が移動したとしても、特徴点の周囲の画像は変化しないので、複数の特徴点を区別することができる。
【0048】
特徴点ごとに周囲の画像を記録し、当該周囲の画像に基づいて特徴点を区別するようにしてもよい。しかし、これでは処理が冗長であるので、この実施形態では、BRISK特徴量を用いている。
【0049】
BRISK特徴量は、
図8に示すように対象画素TPの周囲の複数の画素RPによって算出される。あらかじめ定めた2の画素FIRST、SECONDのペア(第1点と第2点)を512ペア作成する。1番目のペアPAIR1から順に、第1点FIRSTの輝度が、第2点SECONDよりも大きければ「1」そうでなければ「0」とする。各ペアについて「1」または「0」を算出する。このようにして、512ビットの特徴量(所定ビットするの特徴量を用いることができる)を得ることができる。
【0050】
このような特徴量は、特徴点の周囲の画像の特徴を表しており、当該特徴量によって各特徴点を区別して特徴付けることができる。
【0051】
なお、選手の姿勢の変化により、同じ特徴点であっても上記の特徴量が変化してしまうことになる。そこで、BRISK特徴量では、
図8の画素RPの全体の濃度勾配の方向(たとえば、全体として右上15度の方向に濃度が上がっている)を算出し、この濃度勾配の方向が所定角度(たとえば0度)になるように画像を回転して、向きをそろえて上記の特徴量を算出するようにしている。
【0052】
以上のようにして、各選手の各特徴点について特徴量(512ビットのBRISK特徴量)が算出される。
【0053】
続いて、CPU30は、開始フレームを参照フレームとして、上記人物枠とともにSSD38に記録する(ステップS3)。さらに、CPU30は、次のフレーム(選手画像のみとしたもの)を取得し、これを対象フレームとする(ステップS4)。
【0054】
図9に対象フレームの例を示す。CPU30は、この参照フレームにおいて選手を検出し、人物枠60を各選手に設定する(ステップS6~S14)。この実施形態では、1フレームの間に選手が移動できる範囲は限られているとの前提で、参照フレームの選手枠60の所定範囲内において、対象フレームから同一の選手を探し出してトラッキングするようにしている。
【0055】
たとえば、
図6の参照フレームの人物枠60bについての処理を以下に説明する。CPU30は、まずこの人物枠60bの中心点を変えずに(参照フレームと対象フレームは同じ座標位置にあるとする)、枠を所定倍(この実施形態では2倍)にして探索枠61bを生成する。生成した探索枠61bを、対象フレームに設定する。探索枠61bの設定された対象フレームを、
図9に示す。
【0056】
図9の対象フレームに示すように、
図6の参照フレームから選手の位置は動いているが、探索枠61bが余裕を持って大きく形成されているので、選手がこの探索枠61bの中に収まっている。したがって、探索枠の大きさは、1フレームの間に選手が最大速度でいずれかの方向に移動した場合であっても、対象フレームにて選手が探索枠に入る程度の大きさであることが好ましい。
【0057】
CPU30は、この探索枠61b内の特徴点を抽出と特徴量の算出を行う(ステップS9)。特徴点の抽出・特徴量の算出は、ステップS3と同じように、FASTアルゴリズムとBRISKアルゴリズムを用いて行う。これにより、特徴点の座標と、特徴点を特徴付ける512ビットの特徴量が、特徴点ごとに算出される。
【0058】
図10に、参照フレームにおける選手の特徴点P1~Pnと、対象フレームにおける選手の特徴点T1~Tnを、同一の座標上に重ねて示す。図から明らかなように、1フレームの間に、右上に選手が移動している。
【0059】
次に、CPU30は、SSD38に記録されている参照フレームにおける特徴点(参照特徴点)P1~Pnを取得する(ステップS10)。さらに、参照フレームにおける特徴点(参照特徴点)P1~Pnのそれぞれに対応する対象フレームの特徴点(対象特徴点)T1~Tnを見いだす(ステップS105)。この対応付けには、各特徴点のBRISK特徴量を用い、所定のしきい値以下の相違度(たとえばハミング距離を用いる)を持ち、もっとも近いBRISK特徴量を持つ参照特徴点と対象特徴点を対応づける。
【0060】
なお、選手の姿態や位置によって(あるいは他の選手が一部はいっているなど)、必ずしもすべての参照特徴点に合致する対象特徴点が見いだされるわけではない。たとえば、参照フレームにおいては撮像されていた特徴点が、姿態の変化により隠れてしまい対象フレームにおいては撮像されない場合などである。このような場合には、所定のしきい値以下の相違度を持つ対象特徴点がないものとして処理を行う。
【0061】
続いてCPU30は、対応付けられた参照特徴点と対象特徴点について、参照特徴点を始点とし、対象特徴点を終点とする移動線Mを算出する(ステップS11)。
図10においては、参照特徴点P1と対象特徴点T1を結ぶ移動線M1と、参照特徴点P2と対象特徴点T2を結ぶ移動線M2が示されている。
【0062】
このようにして算出した移動線の平均値(中央値、最頻値などその他の代表する値を用いてもよい)を選手の移動量として把握することができる。したがって、参照フレームにおける人物枠60bを、この移動量によって移動し、人物枠61bを設定することができる。この処理を繰り返すことで、順次、選手の移動をトラッキングすることができる。
【0063】
ただし、上記で算出した移動線の平均値によって移動量を把握すると、手の先など選手全体の動きとは異なる動きをする特徴点のために、移動量に誤差を生じる可能性がある。そこで、この実施形態では、次のようにして、移動量の誤差を低減するようにしている。
【0064】
CPU30は、
図11Aに示す各移動線M1~Mnの始点を、
図11Bに示すように一点に合致させる。さらに、
図11Cに示すように、この移動線M1~Mnの終点EP1~EPnの重心Gを算出し、当該重心Gから所定距離以上離れている終点EPk、EPm、EPqを持つ移動線(特異な移動線)を削除する(ステップS12)。重心Gから離れている終点は、選手全体の動きではなく姿態など局所的な動きを反映している可能性が高いからである。なお、ヒストグラム、統計的手法など他の手法によって特異な移動線を削除するようにしてもよい。
【0065】
CPU30は、削除した移動線を除いて、残りの移動線(選択された移動線)を元の位置に戻す。この状態を
図12Aに示す。続いて、
図12Bに示すように、選択された移動線の平均(X軸方向平均移動距離とY軸方向平均移動距離)を算出し、X軸、Y軸方向の移動距離を算出する(ステップS13)。
【0066】
次に、CPU30は、算出した移動距離に基づいて、
図13に示すように、対象フレームにおける人物枠62bを設定する。人物枠62bの設定は以下のようにして行う。
【0067】
図14に示すように、参照フレームの人物枠60bを上記算出した移動距離に基づいて移動させ、対象フレームの人物枠62bとする。次に、対象フレームの人物枠62bの底辺の中央点PGの、画面全体における座標位置を取得する。すなわち、
図13の画面における、中央点PGのY座標位置を取得する。
【0068】
さらに、取得したY座標位置に応じて人物枠62bの大きさ(中央点PGは動かさず、縦横比は維持したままとする)を変更する。これは、画面の上方向(カメラから遠い位置)になると、相対的に人物が小さく撮像されるからである。この実施形態では、Y座標に応じて人物枠の大きさを予め定めておき、これを用いるようにしている。
【0069】
Y座標に応じた人物枠の大きさは、たとえば、
図6の画面において、最も大きい人物枠60aおよびその底辺中央点PGのY座標と、最も小さい人物枠60nおよびその底辺中央点PGのY座標とに基づいて、Y座標に応じた人物枠の大きさを比例配分するように、予め算出式を記録しておくようにすればよい。
【0070】
なお、上記のようにして最終的に決定された対象フレームの人物枠の画面上の座標(たとえば、左上の点の座標、右下の点の座標)が記録される。また、この人物枠の中に含まれる特徴点の座標、特徴量が、当該人物枠に対応づけて記録される。
【0071】
以上のようにして、参照フレームの人物枠60bから対象フレームの人物枠62bへの移動として選手の動きをトラッキングすることができる。上記の処理を全ての人物枠について行い、各選手についての参照フレームの人物枠と対象フレームの人物枠を設定し、全ての選手のトラッキングを行う。
【0072】
続いて、CPU30は、上記処理を行った対象フレームを新たな参照フレームとする(ステップS16)。さらに、CPU30は、次のフレームを取得し、これを新たな対象フレームとする(ステップS6)。
【0073】
以下上記と同様の処理を行って、新たな対象フレームについて人物枠の設定を行う。このようにして、新たな対象フレームについても人物枠が設定され、選手のトラッキングが行われる。
【0074】
CPU30は、この処理を全てのフレームについて繰り返し、人物枠によって選手のトラッキングを行う。たとえば、各フレームの人物枠の所定座標(重心座標や底辺の中心座標など)の動きを、選手IDとともに順次記録し、各選手をトラッキングすることができる。
【0075】
1.4その他
(1)上記実施形態では、サッカーフィールド内の選手を移動物としてトラッキングするようにしている。ラグビー、テニス、バスケットボールなどその他の選手の動きを移動物としてトラッキングするようにしてもよい。
【0076】
また、選手ではなく、コーチや審判などの動きもトラッキングするようにしてもよい。すなわち、移動する人物全般のトラッキングを行うことができる。
【0077】
さらに、人物ではなく、自動車、電車、飛行機など移動物をトラッキングするようにしてもよい。
【0078】
(2)上記実施形態では、移動線を選択し、選択された移動線に基づいて移動方向、移動距離を算出するようにしている。しかし、移動線を選択せず、全ての移動線を用いて移動方向、移動距離を算出するようにしてもよい。
【0079】
(3)上記実施形態では、1台のPCによってトラッキング装置を構成した。しかし、これをサーバ装置として構築してもよい。この場合には、端末装置から動画データをサーバ装置に送信し、トラッキングの結果(各選手の人物枠の移動)を端末装置に返信するようにすればよい。
【0080】
また、端末装置において動画データの背景差分を求め、
図5bのような動画データをサーバ装置に送信するようにしてもよい。
【0081】
(4)上記実施形態では、X軸移動距離、Y軸移動距離によって移動量を決定している。しかし、移動方向と当該移動方向における移動距離によって移動量を決定するようにしてもよい。
【0082】
(5)上記実施形態では、開始フレームの人物枠の設定を操作者が行うようにしている。しかし、これをYOLOなどのアルゴリズムによって、自動的に設定するようにしてもよい。また、自動的に設定された人物枠を、操作者が確認し修正するようにしてもよい。
【0083】
(6)上記実施形態では、特徴点の抽出にFAST手法を用いているが、OpenCVなど他の特徴点抽出手法を用いてもよい。また、各選手にマーカーをつけてもらい、撮像されたマーカーを特徴点として認識するようにしてもよい。
【0084】
(7)上記実施形態では、特徴量の算出にBRISK手法を用いているが、A-KAZE、SIFT、SURF、HOGなど他の特徴量算出手法を用いてもよい。
【0085】
(8)上記実施形態では、全フレームの画像に基づいて背景画像を生成するようにしている。すなわち、選手以外の背景を表す画像は、全フレーム中のほとんどのフレームを占めている。したがって、画素ごとに、全フレーム中で最も多く出現するデータを当該画素のデータとすれば、背景画像を得ることができる。
【0086】
しかし、背景画像も変化する可能性がある。たとえば、天候の変化や、太陽の位置による建物の影の変化などである。したがって、上記背景画像の抽出を全フレームに基づいて行うのではなく、所定時間(1時間ごとなど)間隔にて行うようにしてもよい。
【0087】
また、深層学習済のモデル(たとえばCycleGANアルゴリズムなど)などによって、撮像した画像から建物や人物の影を削除した上で、背景差分によって人物のみの画像を得るようにしてもよい。
【0088】
(9)上記実施形態では、人物枠を矩形としているが、その他の形状を用いてもよい。たとえば、移動物を内包する楕円形や、人物の外形を形取った形状としてもよい。
【0089】
(10)上記変形例は、その本質に反しない限り、他の実施形態においても適用することができる。
【0090】
2.第2の実施形態
2.1機能構成
図15に、第2の実施形態によるトラッキング装置の機能構成を示す。対象特徴点抽出手段14は、動画中の対象フレーム画像FTの探索枠内において、画像の特徴点(対象特徴点)を抽出する。この探索枠は、対象フレーム画像FTより前の参照フレーム画像の移動体の位置を示す移動体枠に基づいて設定されたものである(たとえば、移動体枠の2倍の大きさの枠とする)。
【0091】
参照特徴点取得手段12は、既に移動体枠の設定と特徴点の抽出がなされた参照フレームFSについて、記録された特徴点(参照特徴点)を取得する。すなわち、記録されている移動体枠内の特徴点を取得する。
【0092】
対応形成手段16は、各参照特徴点の周囲画素と、各対象特徴点の周囲画素の類似性を判断し、各参照特徴点と各対象特徴点とを対応づける。これにより、参照フレームの移動体の参照特徴点と、対象フレームの移動体の対象特徴点とが対応づけられる。
【0093】
移動線算出手段18は、上記の対応する参照特徴点と対象特徴点を結ぶ移動線を算出する。なお、参照特徴点を開始点、対象特徴点を終了点とする。
【0094】
移動算出手段20は、前記移動線に基づいて、移動体の移動量(X軸方向移動量、Y軸方向移動量)を算出する。
【0095】
候補移動枠設定手段25は、当該算出した移動量に基づいて、複数の候補移動体枠を生成する。たとえば、算出した移動量が、X軸方向移動量Xm、Y軸方向移動量Ymであれば、この位置を中心としてその周囲に位置をずらせて複数個の候補移動体枠を生成する。
【0096】
移動枠選択手段27は、これら候補移動体枠のうち、対象フレームの特徴点を最も多く含むものを最終的な移動体枠として決定する。
【0097】
以上の処理が終了すると、対象フレームを参照フレームとし、対象フレームの次のフレームを新たな対象フレームとして、上記の処理を繰り返す。これにより、移動体枠の動きとして移動体をトラッキングすることができる。
【0098】
この実施形態では、参照フレームの移動体枠を移動させ、さらに特徴点によって補正を行って対象フレームの移動体枠を設定しているので、確実に移動体をとらえることができる。
【0099】
2.2ハードウエア構成
ハードウエア構成は、第1の実施形態と同じである(
図2参照)。
【0100】
2.3トラッキング処理
図16、
図17に、トラッキングプログラム52のフローチャートを示す。ステップS1~S13までは、第1の実施形態と同様である。第1の実施形態では、ステップS13にて算出したX軸移動量Xm、Y軸移動量Ymに基づいて、対象フレームの人物枠62bを設定している。
【0101】
この実施形態では、ステップS13にて算出したX軸移動量Xm、Y軸移動量Ymに基づいて、
図18のような候補人物枠621~629を設定する(ステップS141)。なお、図において破線で示す人物枠は、参照フレームにおける人物枠60bである。この人物枠60bに対して、Xm、Ym移動した候補人物枠621、2Xm、Ym移動した候補人物枠622、Xm、2Ym移動した候補人物枠623、0、Ym移動した候補人物枠624、・・・、0、0移動した(すなわち移動しない)候補人物枠629が設定されている。
【0102】
CPU30は、これら候補人物枠621~629のうち、対象フレームの特徴点が最も多く含まれるものを人物枠として選択する(ステップS142)。選手の特徴点を最も多く含むものが、選手の位置を示す人物枠として適切だからである。
【0103】
図18の場合であれば、候補人物枠623が最も多くの特徴点を含むので、これが人物枠として選択されることになる。
【0104】
CPU30は、上記のようにして設定した人物枠の底辺の中央点PGの、画面全体における座標位置を取得する。すなわち、
図13の画面における、中央点PGのY座標位置を取得する。さらに、取得したY座標位置に応じて人物枠の大きさ(縦横比は維持したままとする)を変更する。
【0105】
以上のようにして、参照フレームの人物枠60bから対象フレームの人物枠62bへの移動として選手の動きをトラッキングすることができる。上記の処理を全ての人物枠について行い、各選手についての参照フレームの人物枠と対象フレームの人物枠を設定し、全ての選手のトラッキングを行う。
【0106】
続いて、CPU30は、上記処理を行った対象フレームを新たな参照フレームとする(ステップS16)。さらに、CPU30は、次のフレームを取得し、これを新たな対象フレームとする(ステップS6)。
【0107】
以下上記と同様の処理を行って、新たな対象フレームについて人物枠の設定を行う。このようにして、新たな対象フレームについても人物枠が設定され、選手のトラッキングが行われる。
【0108】
CPU30は、この処理を全てのフレームについて繰り返し、人物枠によって選手のトラッキングを行う。たとえば、各フレームの人物枠の所定座標(重心座標や底辺の中心座標など)の動きを、選手IDとともに順次記録し、各選手をトラッキングすることができる。
【0109】
2.4その他
(1)上記実施形態では、サッカーフィールド内の選手を移動物としてトラッキングするようにしている。ラグビー、テニス、バスケットボールなどその他の選手の動きを移動物としてトラッキングするようにしてもよい。
【0110】
また、選手ではなくく、コーチや審判などの動きもトラッキングするようにしてもよい。すなわち、移動する人物全般のトラッキングを行うことができる。
【0111】
さらに、人物ではなく、自動車、電車、飛行機など移動物をトラッキングするようにしてもよい。
【0112】
(2)上記実施形態では、移動線を選択し、選択された移動線に基づいて移動方向、移動距離を算出するようにしている。しかし、移動線を選択せず、全ての移動線を用いて移動方向、移動距離を算出するようにしてもよい。
【0113】
(3)上記実施形態では、1台のPCによってトラッキング装置を構成した。しかし、これをサーバ装置として構築してもよい。この場合には、端末装置から動画データをサーバ装置に送信し、トラッキングの結果(各選手の人物枠の移動)を端末装置に返信するようにすればよい。
【0114】
また、端末装置において動画データの背景差分を求め、
図5bのような動画データをサーバ装置に送信するようにしてもよい。
【0115】
(4)上記実施形態では、X軸移動距離、Y軸移動距離によって移動量を決定している。しかし、移動方向と当該移動方向における移動距離によって移動量を決定するようにしてもよい。
【0116】
(5)上記実施形態では、開始フレームの人物枠の設定を操作者が行うようにしている。しかし、これをYOLOなどのアルゴリズムによって、自動的に設定するようにしてもよい。また、自動的に設定された人物枠を、操作者が確認し修正するようにしてもよい。
【0117】
(6)上記実施形態では、特徴点の抽出にFAST手法を用いているが、OpenCVなど他の特徴点抽出手法を用いてもよい。また、各選手に物理的なマーカーをつけてもらい、撮像されたマーカーを特徴点として認識するようにしてもよい。
【0118】
(7)上記実施形態では、特徴量の算出にBRISK手法を用いているが、A-KAZE、SIFT、SURF、HOGなど他の特徴量算出手法を用いてもよい。
【0119】
(8)上記実施形態では、候補人物枠を9個生成しているが、より多い候補人物枠、より少ない候補人物枠を生成するようにしてもよい。また、数画素ずつずらすなど、より細かく候補人物枠を設定するようにしてもよい。
【0120】
(9)上記実施形態では、全フレームの画像に基づいて背景画像を生成するようにしている。すなわち、選手以外の背景を表す画像は、全フレーム中のほとんどのフレームを占めている。したがって、画素ごとに、全フレーム中で最も多く出現するデータを当該画素のデータとすれば、背景画像を得ることができる。
【0121】
しかし、背景画像も変化する可能性がある。たとえば、天候の変化や、太陽の位置による建物の影の変化などである。したがって、上記背景画像の抽出を全フレームに基づいて行うのではなく、所定時間(1時間ごとなど)間隔にて行うようにしてもよい。
【0122】
また、深層学習済のモデル(たとえばCycleGANアルゴリズムなど)などによって、撮像した画像から建物や人物の影を削除した上で、背景差分によって人物のみの画像を得るようにしてもよい。
【0123】
(10)上記実施形態では、人物枠を矩形としているが、その他の形状を用いてもよい。たとえば、移動物を内包する楕円形や、人物の外形を形取った形状としてもよい。
【0124】
(11)上記変形例は、その本質に反しない限り、他の実施形態においても適用することができる。