(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024072180
(43)【公開日】2024-05-27
(54)【発明の名称】訓練データ生成プログラム、情報処理装置および訓練データ生成方法
(51)【国際特許分類】
G06V 40/20 20220101AFI20240520BHJP
G06T 7/00 20170101ALI20240520BHJP
G06V 10/74 20220101ALI20240520BHJP
G06V 10/774 20220101ALI20240520BHJP
【FI】
G06V40/20
G06T7/00 350B
G06V10/74
G06V10/774
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022182896
(22)【出願日】2022-11-15
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】齊藤 孝広
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096GA59
5L096HA13
5L096JA03
5L096JA11
5L096KA04
(57)【要約】
【課題】訓練データを生成する際に、動画中の所定の行動を行っている開始・終了フレームを、手間をかけず正確に指定する。
【解決手段】情報処理装置1は、所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する。例えば、所定の行動を行っている開始・終了フレームを指定した訓練データの生成に適用できる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、
該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、
該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、
該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する
処理をコンピュータに実行させる訓練データ生成プログラム。
【請求項2】
該生成する処理は、第1の訓練データと第2の訓練データとを示す2つの訓練データに対するそれぞれの前記予め設定された境界フレームから開始し、前記対応関係に基づいて、前記第1の訓練データにおけるフレームと、前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームとを比較し、予め定められた前か後かを示す時間方向のフレームを前記第1の訓練データにおける境界フレームの候補とする第1の処理と、
前記対応関係に基づいて、前記第2の訓練データにおけるフレームと、前記第1の訓練データにおける前記境界フレームの候補に対応する、前記第2の訓練データにおけるフレームとを比較し、前記時間方向のフレームを前記第2の訓練データにおける境界フレームの候補とする第2の処理と、
前記対応関係に基づいて、前記第1の訓練データにおけるフレームが前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームと一致しない場合には、前記第1の処理および前記第2の処理とを繰り返し、
前記第1の訓練データにおけるフレームが前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームと一致する場合には、前記第1の訓練データにおける境界フレームの候補を新たな境界フレームとした前記第1の訓練データを生成し、前記第2の訓練データにおける境界フレームの候補を新たな境界フレームとした前記第2の訓練データを生成する
ことを特徴とする請求項1に記載の訓練データ生成プログラム。
【請求項3】
さらに、新たな境界フレームを設定された訓練データを入力することで、前記所定の行動の発生を判定する機械学習モデルを学習する
ことを特徴とする請求項1に記載の訓練データ生成プログラム。
【請求項4】
前記特徴量ベクトル列は、フレームごとの骨格情報から生成される
ことを特徴とする請求項1に記載の訓練データ生成プログラム。
【請求項5】
所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出する抽出部と、
前記抽出部によって抽出された2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出する第1の算出部と、
前記第1の算出部によって算出された類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出する第2の算出部と、
前記第2の算出部によって算出された対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する生成部と、
を有することを特徴とする情報処理装置。
【請求項6】
所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、
該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、
該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、
該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する
処理をコンピュータが実行する訓練データ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、訓練データ生成プログラムなどに関する。
【背景技術】
【0002】
動画中に所定の行動を行っている開始・終了フレームを指定した訓練データを用いた機械学習により、所定の行動の発生を判定する分類器を生成する技術がある。訓練データとして指定される開始・終了フレームは、例えば、人手によって指定される。
【0003】
開始・終了フレームを指定しなくても、所定の行動(ジェスチャ動作)を検出することが可能なジェスチャ検出装置の技術が開示されている(特許文献1参照)。かかる技術では、ジェスチャ検出装置は、撮像データから操作者の手が存在する手領域を特定し、全体画像から手領域を切り取った手領域画像の特徴量と全体画像の特徴量とに基づいてジェスチャ動作が行われているジェスチャ区間を抽出し、ジェスチャ動作を検出する。
【0004】
また、セグメント数が異なるモーションキャプチャデータに対して、DTW(Dynamic Time Warping)による対応関係に基づき、セグメント数が同一になるようにセグメント境界を修正する技術が開示されている(特許文献2参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2021-072059号公報
【特許文献2】特開2014-215678号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、訓練データを生成する際に、動画中の所定の行動を行っている開始・終了フレームを、手間をかけず正確に指定するのは難しいという問題がある。
【0007】
例えば、訓練データとして開始・終了フレームが人手によって指定される場合には、1フレームごとに開始・終了フレームをチェックすることが必要であるので、手間がかかる。
【0008】
また、開始・終了フレームを指定しないで、所定の行動を検出する技術では、そもそも開始・終了フレームを指定する技術ではない。
【0009】
また、セグメント境界を修正する技術では、セグメント数が同一になるようにセグメント境界を修正するが、開始・終了フレームを正確に指定する技術ではない。
【0010】
なお、動画中の所定の行動を行っている開始・終了フレームを曖昧に指定した訓練データを用いて学習を行うと、適切な分類器が作成できない。例えば、ほとんど同じ特徴量を持った複数のフレームに対して異なる分類ラベルが付与された場合、分類器はこれら複数のフレームを区別するための情報として対象の行動とは全く関係のない些細な違いを採用してしまう。この結果、新規データでは適切な分類ができない分類器が作成されてしまう。つまり、ほとんど同じ特徴量を持つ、換言すれば非常に類似するフレームは同じ分類ラベルが付与されているような訓練データが、適切な分析器を生成するための重要な条件の一つであるといえる。
【0011】
本発明は、1つの側面では、訓練データを生成する際に、動画中の所定の行動を行っている開始・終了フレームを、手間をかけず正確に指定することを目的とする。
【課題を解決するための手段】
【0012】
1つの態様では、訓練データ生成プログラムは、所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する、処理をコンピュータに実行させる。
【発明の効果】
【0013】
1実施態様によれば、訓練データを生成する際に、動画中の所定の行動を行っている境界フレームを、手間をかけず正確に指定できる。
【図面の簡単な説明】
【0014】
【
図1】
図1は、実施例に係る情報処理装置の機能構成を示すブロック図である。
【
図2】
図2は、実施例に係る抽出処理の一例を示す図である。
【
図3】
図3は、実施例に係る類似度行列の一例を示す図である。
【
図4】
図4は、実施例に係る対応関係算出処理の一例を示す図である。
【
図5A】
図5Aは、実施例に係る修正処理の一例を示す図(1)である。
【
図5B】
図5Bは、実施例に係る修正処理の一例を示す図(2)である。
【
図5C】
図5Cは、実施例に係る修正処理の一例を示す図(3)である。
【
図5D】
図5Dは、実施例に係る修正処理の一例を示す図(4)である。
【
図6】
図6は、訓練データが3つの場合の訓練データ生成処理の一例を示す図である。
【
図7】
図7は、実施例に係る訓練データ生成処理のフローチャートの一例を示す図である。
【
図8】
図8は、訓練データ生成プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【0015】
以下に、本願の開示する訓練データ生成プログラム、情報処理装置および訓練データ生成方法の実施例を図面に基づいて詳細に説明する。なお、本発明は、実施例により限定されるものではない。
【0016】
図1は、実施例に係る情報処理装置の機能構成を示すブロック図である。
図1に示す情報処理装置1は、所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量列を抽出し、特徴量列間の類似度を基にDTWによりフレーム間の対応関係を算出する。そして、情報処理装置1は、算出した対応関係に基づいて新たな境界フレームを設定された訓練データを生成する。ここでいう所定の行動とは、例えば、人間の動作を表す行動を意味し、一例として、手を挙げるという動作を表す行動である。ここでいう所定の境界フレームとは、所定の行動の開始フレームや終了フレームを意味する。なお、実施例では、境界フレームを所定の行動の開始・終了フレームであるとして説明する。
【0017】
情報処理装置1は、制御部10と、記憶部20とを有する。制御部10は、抽出部11、類似度算出部12、対応関係算出部13、修正部14および学習部15を有する。記憶部20は、類似度行列21、対応関係情報22および訓練データ23を記憶する。なお、抽出部11は、抽出部の一例である。類似度算出部12は、第1の算出部の一例である。対応関係算出部13は、第2の算出部の一例である。修正部14は、生成部の一例である。学習部15は、学習部の一例である。
【0018】
類似度行列21は、2つの訓練データに含まれるそれぞれのフレーム間の類似度を示す行列である。1つのフレーム間の類似度は、対象の2つのフレームについて、行動に関わる特徴量ベクトルを用いて算出される。特徴量ベクトル間の類似度は、例えばコサイン類似度を用いても良く、いかなる手法によって求められても良い。なお、類似度行列21は、後述する類似度算出部12によって生成される。類似度行列21の一例は、後述する。
【0019】
対応関係情報22は、2つの訓練データに含まれるそれぞれのフレーム間の類似度が所定値以上のフレーム間を関係付けた情報である。なお、対応関係情報22は、後述する対応関係算出部13によって生成される。対応関係情報22の一例は、後述する。
【0020】
訓練データ23は、修正後の訓練データである。すなわち、訓練データ23は、新たな境界フレーム(開始・終了フレーム)を設定された訓練データである。なお、訓練データ23は、修正部14によって生成される。
【0021】
抽出部11は、所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出する。例えば、抽出部11は、修正対象の訓練データであって所定の行動が撮像された2つの訓練データを取得する。そして、抽出部11は、取得された2つの訓練データに対して、ユーザによって設定された開始フレームを中心に前後の所定フレーム数分の特徴量ベクトル列を抽出する。また、抽出部11は、取得された2つの訓練データに対して、ユーザによって設定された終了フレームを中心に前後の所定フレーム数分の特徴量ベクトル列を抽出する。
【0022】
ここでいう特徴量ベクトル列は、所定の行動が手を挙げるという動作を示す行動である場合には、フレームごとの骨格情報から生成される。骨格情報は、例えば、手のひらについてX、Y方向の移動量、腕について回転や捻じれを示す情報を含む。特徴量ベクトル列の各特徴量ベクトルは、骨格情報を示す各要素を特徴量としてベクトル化したものである。特徴量ベクトルの各要素は、正規化される。正規化されるのは、後述する特徴量ベクトル列間の類似度を適切に算出するためである。なお、特徴量ベクトルは、いかなる従来技術を用いて算出されても良い。
【0023】
ここでいう前後の所定フレーム数には、例えば認識結果の許容される時間のズレ以下になるような値が予め与えられる。例えば、この認識結果を不審行動検知に用いるといった応用を想定する場合、不審行動の発生時間を正確にする意義は薄く、不審行動を正確に検知することが重視される。このような場合は、前記所定フレーム数として例えば10秒といった長い時間に相当するフレーム数を設定可能である。また、前後の所定フレーム数は、訓練データに与える行動期間の訓練データの精度に基づいて自動で設定されることも可能である。一例として、行動期間の訓練データの精度が秒の粒度である場合には、このデータには最大±0.5秒の誤差が含まれていると推定されるので前後の所定のフレーム数には、前後0.5秒に相当する分のフレーム数の値が与えられる。
【0024】
類似度算出部12は、2つの特徴量ベクトル列を用いて類似度行列21を算出する。例えば、類似度算出部12は、抽出部11によって抽出された2つの特徴量ベクトル列のベクトル列間の類似度行列21を算出する。
【0025】
ここで、抽出部11が処理する抽出処理の一例を、
図2を参照して説明する。
図2は、実施例に係る抽出処理の一例を示す図である。
図2に示すように、2つの訓練データA,Bが表されている。訓練データA,Bは、一例として、手を挙げるという動作を示す行動を含むデータである。訓練データAは、a1~a10のフレームからなる。訓練データBは、b1~b10のフレームからなる。訓練データAのフレームa6は、対象の行動の開始フレームとして予め設定される。すなわち、訓練データAは、フレームa6を開始フレームに設定された訓練データである。また、訓練データBのフレームb6は、対象の行動の開始フレームとして予め設定される。すなわち、訓練データBは、フレームb6を開始フレームに設定された訓練データである。
【0026】
抽出部11は、訓練データA,Bに対して、予め設定された開始フレームを中心に前後の所定フレーム数分の特徴量ベクトル列を抽出する。ここでは、前後の所定フレーム数は、「5」であるとする。すると、抽出部11は、訓練データAに対して、開始フレームa6を中心に前後の5フレーム分の特徴量ベクトル列を抽出する。また、抽出部11は、訓練データBに対して、監視フレームb6を中心に前後の5フレーム分の特徴量ベクトル列を抽出する。
【0027】
ここで、類似度算出部12によって生成される類似度行列21の一例を、
図3を参照して説明する。
図3は、実施例に係る類似度行列の一例を示す図である。
図3に示すX={x
ij}(i,j=1~10)は、例えば、
図2で示した訓練データA,Bの類似度行列21である。訓練データAは、フレームa
i(i=1~10)で構成される。訓練データBは、フレームb
j(j=1~10)で構成される。一例として、a
1とb
1との類似度は、x
11である。a
1とb
2との類似度は、x
12である。類似度算出部12は、2つの訓練データA,Bに対するそれぞれの特徴量ベクトル列のベクトル列間の10行10列の類似度行列21を算出する。
【0028】
図1に戻って、対応関係算出部13は、類似度行列21を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出する。DTWは、動的時間伸縮法であり、時系列データの要素間の対応関係を算出する手法である。すなわち、対応関係算出部13は、類似度行列21を基に、DTWによってフレーム間の対応関係を算出する。なお、対応関係には、一方のフレームに他方の複数のフレームが対応する場合もある。例えば、対応関係算出部13は、類似度行列21を用いて、DTWにより、対応するフレーム間の類似度(特徴量ベクトル間の類似度)の合計が最も大きくなるような対応関係を算出する。そして、対応関係算出部13は、算出された対応関係を対応関係情報22に保存する。
【0029】
ここで、対応関係算出部13が処理する対応関係算出処理の一例を、
図4を参照して説明する。
図4は、実施例に係る対応関係算出処理の一例を示す図である。なお、
図2で示す訓練データA,Bに対して、対応関係算出処理を実施した場合について説明する。
【0030】
図4には、訓練データAと訓練データBとの、DTWによるフレーム間の対応関係が表されている。すなわち、対応関係算出部13は、類似度行列21を用いて、DTWにより、訓練データA,Bの対応するフレーム間の類似度(特徴量ベクトル間の類似度)の合計が最も大きくなるような対応関係を算出する。対応関係には、例えば、一方の訓練データBにおけるフレームb3に、他方の訓練データAにおけるフレームa2,a3,a4がそれぞれ対応している。
【0031】
なお、フレームb3は、フレームa2,a3,a4よりフレームa9の方がより特徴量ベクトル間の類似度x93が高いかもしれない。しかしながら、フレームb3とフレームa9との対応関係が採用されると、フレームb3に後続するフレームb4については、DTWによりフレームa9に後続するフレームa10からの対応となってしまい、対応するフレーム間の類似度の全体合計が最も大きくならない。そこで、対応関係算出部13は、類似度行列21を用いて、DTWによりフレーム間の類似度の合計が最も大きくなるようなフレーム間の対応を選択する。
【0032】
図1に戻って、修正部14は、フレーム間の対応関係に基づいて、新たな境界フレームを設定された訓練データ23を生成する。すなわち、修正部14は、境界フレームの設定を修正する。例えば、修正部14は、対応関係情報22に基づいて、修正対象の2つの訓練データA,Bに対するそれぞれの境界フレームから以下の処理を開始する。修正部14は、訓練データAにおけるフレームと、訓練データBにおけるフレームに対応する、訓練データAにおけるフレームとを比較し、予め定められた前(早い方)か後(遅い方)かを示す時間方向のフレームを訓練データAにおける境界フレームの候補とする(第1の処理)。また、修正部14は、訓練データBにおけるフレームと、訓練データAにおける境界フレームの候補に対応する、訓練データBにおけるフレームとを比較し、第1の処理で用いられた時間方向と同じ時間方向のフレームを訓練データBにおける境界フレームの候補とする(第2の処理)。そして、修正部14は、訓練データAにおけるフレームが訓練データBにおけるフレームに対応する、訓練データAにおけるフレームと一致するか否かを判定する。そして、修正部14は、一致しないと判定される場合には、第1の処理と第2の処理とを繰り返す。修正部14は、一致すると判定される場合には、訓練データAにおける境界フレームの候補を新たな境界フレームとした訓練データA(23)を生成する。加えて、修正部14は、訓練データBにおける境界フレームの候補を新たな境界フレームとした訓練データB(23)を生成する。
【0033】
これにより、修正部14は、訓練データ23を生成する際に、動画中の所定の行動を行っている境界フレームを、手間をかけず正確に指定できる。言い換えれば、修正部14は、所定の行動について類似度が高い特徴量を持った2つのフレームに対して同じ分類ラベルを付与することができる。この結果、修正部14は、ほとんど同じ特徴量を持った2つのフレームに対して異なる分類ラベルが付与されると、機械学習モデルは2つのフレームを区別するための情報として対象の行動とは全く関係のない些細な違いを採用してしまうことを避けることができる。
【0034】
なお、境界フレームの候補の選択は、例えば、以下の基準でなされても良い。境界フレームが開始フレームである場合には、前(早い方)のフレームを選択するという基準が採用できる。また、境界フレームが終了フレームである場合には、後(遅い方)のフレームを選択するという基準が採用できる。また、対応関係の類似度に基づき、新たな境界フレームの候補を選択するという基準も考えることができる。
【0035】
学習部15は、新たな境界フレームを設定された訓練データ23を機械学習モデルに、入力することで、所定の行動の発生を判定する機械学習モデルを学習する。
【0036】
ここで、修正部14が処理する修正処理の一例を、
図5A~
図5Dを参照して説明する。
図5A~
図5Dは、実施例に係る修正処理の一例を示す図である。なお、
図5A~
図5Dでは、境界フレームが開始フレームの場合を説明する。また、境界フレームの候補の選択は、時間方向として前(早い方)のフレームを選択するという基準が採用されるとする。また、
図5A~
図5Dで示す片側の矢印は、境界フレームの候補を表す。
【0037】
図5Aに示すように、修正部14は、対応関係情報22に基づいて、2つの訓練データA,Bに対するそれぞれの境界フレームa6,b6から処理を開始する。
図5Aでは、予め設定された境界フレームa6の上部、フレームb6の下部に、境界フレームの候補であるとして片側の矢印が付けられている。修正部14は、訓練データAにおけるフレームa6と、訓練データBにおけるフレームb6に対応する、訓練データAにおけるフレームa9とを比較する。そして、修正部14は、前のフレームa6を訓練データAにおける境界フレームの候補とする(第1の処理)。
【0038】
次に、
図5Bでは、フレームa6の上部、フレームb6の下部に境界フレームの候補であるとして片側の矢印が付けられている。
図5Bに示すように、修正部14は、訓練データBにおけるフレームb6と、訓練データAにおける境界フレームの候補a6に対応する、訓練データBにおけるフレームb4とを比較する。そして、修正部14は、前のフレームb4を訓練データBにおける境界フレームの候補とする(第2の処理)。
【0039】
次に、
図5Cでは、フレームa6の上部、フレームb4の下部に境界フレームの候補であるとして片側の矢印が付けられている。
図5Cに示すように、修正部14は、訓練データAにおけるフレームa6が訓練データBにおけるフレームb4に対応する、訓練データAにおけるフレームと一致するか否かを判定する。ここでは、フレームb4に対応する、訓練データAにおけるフレームは、フレームa5,a6の2つ存在する。すなわち、訓練データAにおけるフレームa6が訓練データBにおけるフレームb4に対応するフレームと一致しない。そこで、修正部14は、一致しないと判定される場合には、第1の処理を繰り返す。
【0040】
そして、修正部14は、第1の処理を行う。すなわち、修正部14は、訓練データAにおけるフレームa6と、訓練データBにおけるフレームb4に対応する、訓練データAにおけるフレームとを比較する。フレームb4に対応する、訓練データAにおけるフレームは、フレームa5,a6の2つ存在する。そこで、修正部14は、前のフレームa5を訓練データAにおける境界フレームの候補とする(第1の処理)。
【0041】
次に、
図5Dでは、フレームa5の上部、フレームb4の下部に境界フレームの候補であるとして片側の矢印が付けられている。
図5Dに示すように、修正部14は、訓練データBにおけるフレームb4が訓練データAにおけるフレームa5に対応する、訓練データBにおけるフレームと一致するか否かを判定する。ここでは、フレームb4が、フレームa5に対応するフレームと一致する。そこで、修正部14は、訓練データAにおける境界フレームの候補a5を新たな境界フレームとした訓練データAを生成する。加えて、修正部14は、訓練データBにおける境界フレームの候補b4を新たな境界フレームとした訓練データBを生成する。
【0042】
これにより、修正部14は、訓練データ23を生成する際に、動画中の所定の行動を行っている境界フレームを、手間をかけず正確に指定できる。言い換えれば、修正部14は、所定の行動について類似度が高い特徴量を持った2つのフレームに対して同じ分類ラベルを付与することができる。この結果、修正部14は、ほとんど同じ特徴量を持った2つのフレームに対して異なる分類ラベルが付与されると、機械学習モデルは2つのフレームを区別するための情報として対象の行動とは全く関係のない些細な違いを採用してしまうことを避けることができる。
【0043】
図5A~
図5Dでは、修正部14は、2つの修正対象の訓練データに対して、新たな境界フレームを設定された訓練データ23を生成する場合を説明した。しかしながら、修正部14は、2つの修正対象の訓練データに限定されず、3つ以上の修正対象の訓練データに対して、新たな境界フレームを設定された訓練データ23を生成する場合であっても良い。かかる場合には、類似度算出部12は、修正対象の全ての訓練データの組に対して、2つの特徴量ベクトル列を用いて類似度行列21を算出する。そして、対応関係算出部13は、全ての訓練データの組に対して、類似度行列21を用いたDTWによりフレーム間の対応関係を算出する。そして、修正部14は、全ての訓練データの組に対して、組ごとのフレーム間の対応関係を用いて、新たな境界フレームを設定された訓練データを生成(修正)する。そして、修正部14は、修正対象の訓練データの組がなくなるまで、すなわち、全ての訓練データで境界フレームの修正がなくなるまで、訓練データの組に対して修正処理を繰り返す。そして、修正部14は、修正対象の訓練データの組がなくなると、新たな境界フレームをそれぞれ設定された訓練データ23を生成できる。
【0044】
なお、この実施例では特に対応関係の選別は行っていないが、所定の閾値を設定し、この値以上の類似度を持つ対応関係のみを用いて上記の処理を行っても良い。このような対応関係の選別処理を設ける事で、処理速度の向上が図れると共に、境界フレームの更新処理を必要最小限に抑える事ができる。
【0045】
図6は、訓練データが3つの場合の訓練データ生成処理の一例を示す図である。
図6では、境界フレームが開始フレームの場合を説明する。また、境界フレームの候補の選択は、時間方向として前(早い方)のフレームを選択するという基準が採用されている。
【0046】
図6に示すように、例えば、修正部14は、訓練データBおよび訓練データCの組に対して、当該組のフレーム間の対応関係を用いて、開始フレームの修正を実施する。次に、修正部14は、訓練データAおよび訓練データBの組に対して、修正された開始フレームから、当該組のフレーム間の対応関係を用いて、開始フレームの修正を実施する。さらに、修正部14は、訓練データAおよび訓練データCの組に対して、修正された開始フレームから、当該組のフレーム間の対応関係を用いて、開始フレームの修正を実施する。そして、修正部14は、修正対象の訓練データの組がなくなるまで、修正処理を繰り返す。そして、修正部14は、修正対象の訓練データの組がなくなると、新たな開始フレームをそれぞれ設定された訓練データ23を生成できる。
【0047】
図7は、実施例に係る訓練データ生成処理のフローチャートの一例を示す図である。なお、
図7では、抽出部11が、所定の行動が撮像された複数の修正対象の訓練データを取得したものとする。
【0048】
図7に示すように、抽出部11は、対象のフレーム列を抽出する(ステップS10)。例えば、抽出部11は、所定の行動が撮像された複数の修正対象の訓練データに対して、予め設定された境界フレームを中心に前後の所定フレーム数分の特徴量ベクトル列を抽出する。
【0049】
そして、類似度算出部12は、フレーム列の全組ごとに、類似度行列21を算出する(ステップS20)。例えば、類似度算出部12は、フレーム列の全組ごとに、各組の2つの特徴量ベクトル列のベクトル列間の類似度行列21を算出する。
【0050】
そして、対応関係算出部13は、フレーム列の全組ごとに、フレーム間の対応関係を算出する(ステップS30)。例えば、対応関係算出部13は、フレーム列の全組ごとに、類似度行列21を用いたDTWによりフレーム間の対応関係を算出する。
【0051】
そして、修正部14は、修正処理の対象とするフレーム列の組を選択する(ステップS40)。修正部14は、修正処理の対象とするフレーム列の組を選択できたか否かを判定する(ステップS50)。修正処理の対象とするフレーム列の組を選択できたと判定した場合には(ステップS50;Yes)、修正部14は、選択できたフレーム列の組について修正処理を適用する(ステップS60)。例えば、修正部14は、選択できたフレーム列の組に対するフレーム間の対応関係に基づいて、新たな境界フレームを設定された訓練データ23を生成する。そして、修正部14は、次の組を選択すべく、ステップS40に移行する。
【0052】
一方、修正処理の対象とするフレーム列の組を選択できないと判定した場合には(ステップS50;No)、修正部14は、修正処理を終了する。すなわち、修正部14は、修正処理の対象とするフレーム列の組がなくなると、すなわち、全てのフレーム列で境界フレームの修正がなくなると、新たな境界フレームをそれぞれ設定された訓練データ23を生成できたことになり、修正処理を終了する。
【0053】
[実施例の効果]
上記実施例によれば、情報処理装置1は、所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出する。情報処理装置1は、該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列21を算出する。情報処理装置1は、該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係情報22を算出する。そして、情報処理装置1は、該算出した対応関係情報22に基づいて、新たな境界フレームを設定された訓練データ23を生成する。かかる構成によれば、情報処理装置1は、訓練データ23を生成する際に、動画中の所定の行動を行っている境界フレームを、手間をかけず正確に指定できる。
【0054】
また、上記実施例によれば、情報処理装置1は、第1の訓練データと第2の訓練データとを示す2つの訓練データに対するそれぞれの予め設定された境界フレームから開始し、対応関係情報22に基づいて、第1の訓練データにおけるフレームと、第2の訓練データにおけるフレームに対応する、第1の訓練データにおけるフレームとを比較し、予め定められた前か後かを示す時間方向のフレームを第1の訓練データにおける境界フレームの候補とする第1の処理を実行する。情報処理装置1は、対応関係情報22に基づいて、第2の訓練データにおけるフレームと、第1の訓練データにおける境界フレームの候補に対応する、第2の訓練データにおけるフレームとを比較し、第1の処理と同じ時間方向のフレームを前記第2の訓練データにおける境界フレームの候補とする第2の処理を実行する。情報処理装置1は、対応関係情報22に基づいて、第1の訓練データにおけるフレームが第2の訓練データにおけるフレームに対応する、第1の訓練データにおけるフレームと一致しない場合には、第1の処理および第2の処理とを繰り返す。そして、情報処理装置1は、第1の訓練データにおけるフレームが第2の訓練データにおけるフレームに対応する、第1の訓練データにおけるフレームと一致する場合には、第1の訓練データにおける境界フレームの候補を新たな境界フレームとした第1の訓練データを生成し、第2の訓練データにおける境界フレームの候補を新たな境界フレームとした第2の訓練データを生成する。かかる構成によれば、情報処理装置1は、2つの訓練データの対応するフレーム同士をそれぞれの新たな境界フレームとすることで、適切な訓練データ23を生成できる。
【0055】
また、かかる構成によれば、情報処理装置1は、さらに、新たな境界フレームを設定された訓練データを入力することで、前記所定の行動の発生を判定する機械学習モデルを学習する。かかる構成によれば、情報処理装置1は、適切な機械学習モデルを生成できる。
【0056】
また、情報処理装置1によって抽出される特徴量ベクトル列は、フレームごとの骨格情報から生成される。これにより、情報処理装置1は、フレーム全体の特徴量を抽出する場合と比較して、動画中の所定の行動に特化した特徴量を抽出できるので、動画中の所定の行動を行っている境界フレームを正確に指定できる。
【0057】
[その他]
なお、上記実施例では、図示した情報処理装置1の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、情報処理装置1の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、抽出部11と類似度算出部12とを1つの機能部に統合しても良い。また、記憶部20を情報処理装置1の外部装置としてネットワーク経由で接続するようにしても良い。さらに、制御部10および記憶部20をクラウド上に置き、利用者は端末などからネットワークを介して当該クラウドに接続して、制御部10により実行される処理を利用することも可能である。このようにすることで、本発明の処理をサービスとして提供することができるようになる。
【0058】
また、上記実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、
図1に示した情報処理装置1と同様の機能を実現する訓練データ生成プログラムを実行するコンピュータの一例を説明する。
図8は、訓練データ生成プログラムを実行するコンピュータの一例を示す図である。
【0059】
図8に示すように、コンピュータ200は、各種演算処理を実行するCPU(Central Processing Unit)203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209とを有する。また、コンピュータ200は、記憶媒体からプログラムなどを読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信I/F(Interface)217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD(Hard Disk Drive)205を有する。そして、メモリ201、CPU203、HDD205、表示装置209、ドライブ装置213、入力装置215、通信I/F217は、バス219で接続されている。
【0060】
ドライブ装置213は、例えばリムーバブルディスク211用の装置である。HDD205は、訓練データ生成プログラム205aおよび訓練データ生成処理関連情報205bを記憶する。通信I/F217は、ネットワークと装置内部とのインターフェースを司り、他のコンピュータからのデータの入出力を制御する。通信I/F217には、例えば、モデムやLANアダプタなどを採用することができる。
【0061】
表示装置209は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。表示装置209は、例えば、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイなどを採用することができる。
【0062】
CPU203は、訓練データ生成プログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは情報処理装置1の各機能部に対応する。訓練データ生成処理関連情報205bには、例えば、類似度行列21、対応関係情報22および訓練データ23が含まれる。そして、例えばリムーバブルディスク211が、訓練データ生成プログラム205aなどの各情報を記憶する。
【0063】
なお、訓練データ生成プログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらから訓練データ生成プログラム205aを読み出して実行するようにしても良い。
【0064】
また、上記実施例で説明した情報処理装置1が行う訓練データ生成処理は、例えば、動画を入力して所定行動の発生を判定する分類器を生成する際、所定行動を行っている開始・終了フレームを指定した訓練データの生成に適用することができる。
【0065】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0066】
(付記1)所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、
該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、
該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、
該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する
処理をコンピュータに実行させる訓練データ生成プログラム。
【0067】
(付記2)該生成する処理は、第1の訓練データと第2の訓練データとを示す2つの訓練データに対するそれぞれの前記予め設定された境界フレームから開始し、前記対応関係に基づいて、前記第1の訓練データにおけるフレームと、前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームとを比較し、予め定められた前か後かを示す時間方向のフレームを前記第1の訓練データにおける境界フレームの候補とする第1の処理と、
前記対応関係に基づいて、前記第2の訓練データにおけるフレームと、前記第1の訓練データにおける前記境界フレームの候補に対応する、前記第2の訓練データにおけるフレームとを比較し、前記時間方向のフレームを前記第2の訓練データにおける境界フレームの候補とする第2の処理と、
前記対応関係に基づいて、前記第1の訓練データにおけるフレームが前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームと一致しない場合には、前記第1の処理および前記第2の処理とを繰り返し、
前記第1の訓練データにおけるフレームが前記第2の訓練データにおけるフレームに対応する、前記第1の訓練データにおけるフレームと一致する場合には、前記第1の訓練データにおける境界フレームの候補を新たな境界フレームとした前記第1の訓練データを生成し、前記第2の訓練データにおける境界フレームの候補を新たな境界フレームとした前記第2の訓練データを生成する
ことを特徴とする付記1に記載の訓練データ生成プログラム。
【0068】
(付記3)さらに、新たな境界フレームを設定された訓練データを入力することで、前記所定の行動の発生を判定する機械学習モデルを学習する
ことを特徴とする付記1に記載の訓練データ生成プログラム。
【0069】
(付記4)前記特徴量ベクトル列は、フレームごとの骨格情報から生成される
ことを特徴とする付記1に記載の訓練データ生成プログラム。
【0070】
(付記5)所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出する抽出部と、
前記抽出部によって抽出された2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出する第1の算出部と、
前記第1の算出部によって算出された類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出する第2の算出部と、
前記第2の算出部によって算出された対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する生成部と、
を有することを特徴とする情報処理装置。
【0071】
(付記6)さらに、新たな境界フレームを設定された訓練データを入力することで、前記所定の行動の発生を判定する機械学習モデルを学習する学習部
を有することを特徴とする付記5に記載の情報処理装置。
【0072】
(付記7)所定の行動が撮像された2つの訓練データに対して、予め設定された所定の境界フレームを含む所定フレーム数分の前後フレームの特徴量ベクトル列を抽出し、
該抽出した2つの特徴量ベクトル列を用いて特徴量ベクトル列間の類似度行列を算出し、
該算出した類似度行列を用いたDTW(Dynamic Time Warping)によりフレーム間の対応関係を算出し、
該算出した対応関係に基づいて、新たな境界フレームを設定された訓練データを生成する
処理をコンピュータが実行する訓練データ生成方法。
【符号の説明】
【0073】
1 情報処理装置
10 制御部
11 抽出部
12 類似度算出部
13 対応関係算出部
14 修正部
15 学習部
20 記憶部
21 類似度行列
22 対応関係情報
23 訓練データ