(57)【要約】【課題】画像認識用のモデルの学習を行うための良質な学習データを効率的に生成する。【解決手段】画像認識用のモデルの学習を行うための学習データの生成方法であって、コンピュータが、前記画像認識の対象が撮影されている動画データを取得する処理と、前記動画データに含まれる各フレームの静止画像の中から２つの静止画像を選ぶ組み合わせ毎に、前記２つの静止画像の相違の程度を表す指標値を求め、前記指標値を元に、前記動画データに含まれる静止画像から冗長な静止画像を取り除くことにより、前記学習データを生成する処理と、を実行する。【選択図】図６
2020135432.tif 000002
【特許請求の範囲】
【請求項１】
画像認識用のモデルの学習を行うための学習データの生成方法であって、
コンピュータが、
前記画像認識の対象が撮影されている動画データを取得する処理と、
前記動画データに含まれる各フレームの静止画像の中から２つの静止画像を選ぶ組み合わせ毎に、前記２つの静止画像の相違の程度を表す指標値を求め、前記指標値を元に、前記動画データに含まれる静止画像から冗長な静止画像を取り除くことにより、前記学習データを生成する処理と、
を実行する、学習データの生成方法。
【請求項２】
請求項１に記載の学習データの生成方法であって、
前記コンピュータが、前記学習データを生成する処理において、前記動画データに含まれる各静止画像の特徴量を求め、前記各組み合わせ毎に、前記組み合わせを成す２つの静止画像の前記特徴量の差分を前記指標値として求める、学習データの生成方法。
【請求項３】
請求項２に記載の学習データの生成方法であって、
前記画像認識用のモデルは、第１のニューラルネットワークモデルであり、
前記コンピュータが、前記学習データを生成する処理において、前記第１のニューラルネットワークモデルと同じ種類の第２のニューラルネットワークモデルに前記動画データに含まれる各静止画像を入力し、前記第２のニューラルネットワークモデル内の中間層からの出力データを用いて前記特徴量を求める、学習データの生成方法。  
【請求項４】
請求項１に記載の学習データの生成方法であって、
前記コンピュータが、前記学習データを生成する処理において、一の静止画像と他の静止画像との前記組み合わせの中に、前記指標値が所定の判定値以下となる組み合わせがある場合に、前記一の静止画像を前記冗長な静止画像として取り除く処理を、前記動画データに含まれる各静止画像を順に前記一の静止画像として繰り返し行うことにより、前記学習データを生成する、学習データの生成方法。
【請求項５】
請求項１に記載の学習データの生成方法であって、
前記コンピュータが、前記学習データを生成する処理において、前記各組み合わせの中から、前記指標値が最小の第１の組み合わせを特定した上で、さらに、前記第１の組み合わせを成す２つの静止画像のうちの一つを含む他の組み合わせの中で前記指標値が最小の第２の組み合わせを特定し、前記第１の組み合わせと前記第２の組み合わせに共通する静止画像を、前記冗長な静止画像として取り除く処理を、前記指標値が所定の判定値以下となる組み合わせがなくなるまで繰り返し行うことにより、前記学習データを生成する、学習データの生成方法。
【請求項６】
請求項１に記載の学習データの生成方法であって、
前記コンピュータが、前記学習データを生成する処理において、前記動画データに含まれる静止画像を時系列順に複数のグループに分け、前記グループ単位に、前記冗長な静止画像を取り除く処理を行うことにより中間データを生成した後に、前記中間データの全体に対してさらに前記冗長な静止画像を取り除く処理を行うことにより、前記学習データを生成する、学習データの生成方法。
【請求項７】
画像認識用のモデルの学習を行うための学習データを生成する学習データ生成装置であって、
前記画像認識の対象が撮影されている動画データを取得する動画データ取得部と、
前記動画データに含まれる各フレームの静止画像の中から２つの静止画像を選ぶ組み合
わせ毎に、前記２つの静止画像の相違の程度を表す指標値を求め、前記指標値を元に、前記動画データに含まれる静止画像から冗長な静止画像を取り除くことにより、前記学習データを生成する学習データ生成部と、
を備える、学習データ生成装置。
【請求項８】
画像認識用のモデルの学習を行うための学習データを生成するコンピュータに、
前記画像認識の対象が撮影されている動画データを取得する手順と、
前記動画データに含まれる各フレームの静止画像の中から２つの静止画像を選ぶ組み合わせ毎に、前記２つの静止画像の相違の程度を表す指標値を求め、前記指標値を元に、前記動画データに含まれる静止画像から冗長な静止画像を取り除くことにより、前記学習データを生成する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習データの生成方法、学習データ生成装置及びプログラムに関する。
【背景技術】
【０００２】
機械学習によって画像認識用のモデルを構築するためには、人や物などの画像認識の対象を撮影した大量の静止画像を学習データとして用意する必要がある。
【０００３】
そしてこのようなモデルを用いた画像認識の精度を向上させるためには、撮影の方向や距離、傾きなどの撮影条件が異なる様々な静止画像を豊富に含む良質な学習データを用いてモデルの学習を行うことが好ましい。
【０００４】
そのためこのような学習データを効率的に生成するための技術が開発されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−０６２５２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一方で、画像認識の対象を動画撮影用カメラで撮影し、動画データから各フレームの静止画像を取り出すことで、静止画像を大量に含む学習データを生成することも行われている。
【０００７】
しかしながらこの場合、学習データに含まれる静止画像は数１０分の１秒毎に撮影されたものである。そのため、生成される学習データには、撮影の向きや距離などの撮影条件がほぼ等しく、冗長な静止画像が大量に含まれ、データ量が増大し、学習に要する時間も長くなる。
【０００８】
逆に、学習データのデータ量を減らそうとして短時間で撮影を行った場合などには、モデルの学習に必要な静止画像が十分に得られない可能性もある。
【０００９】
本発明はこのような課題を鑑みてなされたものであり、画像認識用のモデルの学習を行うための良質な学習データを効率的に生成する学習データの生成方法、学習データ生成装置及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【００１０】
本発明の一実施形態に係る学習データの生成方法は、画像認識用のモデルの学習を行うための学習データの生成方法であって、コンピュータが、前記画像認識の対象が撮影されている動画データを取得する処理と、前記動画データに含まれる各フレームの静止画像の中から２つの静止画像を選ぶ組み合わせ毎に、前記２つの静止画像の相違の程度を表す指標値を求め、前記指標値を元に、前記動画データに含まれる静止画像から冗長な静止画像を取り除くことにより、前記学習データを生成する処理と、を実行する。
【００１１】
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄の記載、及び図面の記載等により明らかにされる。
【発明の効果】
【００１２】
画像認識用のモデルの学習を行うための良質な学習データを効率的に生成することができる。
【図面の簡単な説明】
【００１３】
【図１】情報システムの全体構成図である。
【図２】ユーザ端末のハードウェア構成を示す図である。
【図３】学習データ生成装置のハードウェア構成を示す図である。
【図４】記憶装置を示す図である。
【図５】ニューラルネットワークモデルを示す図である。
【図６】学習データ生成処理の概要を示す図である。
【図７】学習データ生成装置の機能構成を示す図である。
【図８】学習データ生成処理の流れを示すフローチャートである。
【図９】類似画像削除処理の流れを示すフローチャートである。
【図１０】類似画像削除処理を説明するための図である。
【図１１】類似画像削除処理の流れを示すフローチャートである。
【図１２】類似画像削除処理を説明するための図である。
【図１３】類似画像削除処理を説明するための図である。
【図１４】学習データ生成処理の流れを示すフローチャートである。
【図１５】静止画像のグループ分けを説明するための図である。
【発明を実施するための形態】
【００１４】
本明細書および添付図面の記載により、少なくとも以下の事項が明らかとなる。以下、本発明をその一実施形態に即して添付図面を参照しつつ説明する。
【００１５】
[第１実施形態]
＝＝全体構成＝＝
図１に、本発明の一実施形態に係る学習データ生成装置２００及びユーザ端末１００を含む情報システム１０００を示す。学習データ生成装置２００及びユーザ端末１００は、インターネットやＬＡＮ（Local Area Network）、電話網等のネットワーク５００を通じて通信可能に接続されている。
【００１６】
学習データ生成装置２００は、画像認識用のモデル（以下、画像認識モデル６１０、あるいは第１のニューラルネットワークモデル６１０とも記す）の学習を行うための学習データを生成するサーバやパソコン、クラウドコンピュータ等のコンピュータないしは情報処理装置である。
【００１７】
画像認識モデル６１０は、画像に写っている被写体が特定の認識対象であるか否かを画像データから判別するための判別式あるいは関数等の数式を含んで構成される。画像認識モデル６１０の学習が行われると、これらの数式の係数が調整され、画像認識の精度が変化する。
【００１８】
詳細は後述するが、本実施形態に係る学習データ生成装置２００は、図６に示すように、人や物などの画像認識の対象が撮影された動画データ６２０に含まれる各フレームの静止画像６２１の中から冗長な静止画像６３０を取り除くことで、画像認識モデル６１０の学習を行うための学習データ６４０を効率的に生成する。
【００１９】
冗長な静止画像６３０は、例えば動画データ６２０に含まれる静止画像６２１中の互いに類似の静止画像６２１の中から選出される。詳細は後述するが、本実施形態では、各静止画像６２１の特徴量６５０を相互に比較することで動画データ６２０内の静止画像６２
１の類似性（相違の程度）を判定し、冗長な静止画像６３０を特定する。
【００２０】
学習データ生成装置２００は、動画データ６２０を用いて学習データ６４０を生成することにより、大量の学習用画像データを効率よく収集することができ、また動画データ６２０から冗長な静止画像６３０を取り除くことで、学習効率の高い良質の学習データ６４０を生成することができる。このため、認識精度の高い画像認識モデル６１０を効率良く構築することが可能となる。
【００２１】
図１に戻って、ユーザ端末１００は、ユーザが使用するコンピュータであり、例えばスマートフォンや携帯電話機、ノートパソコン、タブレットなどの可搬型の情報処理装置や、各ユーザが職場や自宅等で使用するパソコン等の据え置き型の情報処理装置である。
【００２２】
ユーザがユーザ端末１００を用いて動画データ６２０を学習データ生成装置２００に送信すると、学習データ生成装置２００からユーザ端末１００に学習データ６４０が送信されてくる。そしてユーザは、ユーザ端末１００あるいは不図示のコンピュータを用いて、この学習データ６４０により画像認識モデル６１０の学習を行う。
【００２３】
以下、詳細に説明する。
【００２４】
＝＝ユーザ端末＝＝
まずユーザ端末１００について図２を参照しながら説明する。
【００２５】
ユーザ端末１００のハードウェア構成図の一例を図２に示す。本実施形態に係るユーザ端末１００は、ＣＰＵ（Central Processing Unit）１１０、メモリ１２０、通信装置１
３０、記憶装置１４０、入力装置１５０、出力装置１６０、及び記録媒体読取装置１７０を備えて構成されるスマートフォンやパソコンなどのコンピュータである。
【００２６】
記憶装置１４０は、ユーザ端末１００によって実行あるいは処理されるユーザ端末制御プログラム７１０や動画データ６２０等の各種のデータを格納する。
【００２７】
記憶装置１４０に記憶されているユーザ端末制御プログラム７１０や各種のデータがメモリ１２０に読み出されてＣＰＵ１１０によって実行あるいは処理されることにより、ユーザ端末１００の各種機能が実現される。例えばユーザ端末１００は、動画データ６２０を学習データ生成装置２００に送信する。
【００２８】
ここで、記憶装置１４０は例えばハードディスクやＳＳＤ（Solid State Drive）、フ
ラッシュメモリ等の不揮発性の記憶装置である。
【００２９】
またユーザ端末制御プログラム７１０は、本実施形態に係るユーザ端末１００が有する各種機能を実現するためのプログラムを総称しており、例えば、ユーザ端末１００上で動作するアプリケーションプログラムやＯＳ（Operating System）、種々のライブラリ等を含む。
【００３０】
記録媒体読取装置１７０は、ＳＤカードやＤＶＤ等の記録媒体８００に記録された各種のプログラムやデータを読み取り、記憶装置１４０に格納する。
【００３１】
通信装置１３０は、ネットワーク５００を介して、学習データ生成装置２００や不図示の他のコンピュータと各種プログラムやデータの授受を行う。例えば他のコンピュータに上述したユーザ端末制御プログラム７１０や動画データ６２０を格納しておき、ユーザ端末１００がこのコンピュータからユーザ端末制御プログラム７１０や動画データ６２０を
ダウンロードするようにすることができる。
【００３２】
入力装置１５０は、ユーザによるコマンドやデータの入力を受け付ける装置であり、各種ボタンやスイッチ、キーボード、タッチパネルディスプレイ上でのタッチ位置を検出するタッチセンサ、マイクなどの入力インタフェース、加速度センサ、温度センサ、ＧＰＳ受信機やコンパスなどの位置検出センサ、カメラなどを含む。
【００３３】
また出力装置１６０は、例えばディスプレイなどの表示装置、スピーカ、バイブレータ、照明などの出力ユーザインタフェースである。
【００３４】
＝＝学習データ生成装置＝＝
学習データ生成装置２００は、動画データ６２０から学習データ６４０を生成するコンピュータである。学習データ生成装置２００は、図３に示す様に、ＣＰＵ２１０、メモリ２２０、通信装置２３０、記憶装置２４０、入力装置２５０、出力装置２６０、及び記録媒体読取装置２７０を備えて構成される。これらの学習データ生成装置２００のハードウェア構成は、ユーザ端末１００のハードウェア構成と必ずしも同じではないものの、基本的な構成は共通である。そのため、これらのハードウェア構成についての重複した説明は省略する。
【００３５】
学習データ生成装置２００の記憶装置２４０には、図４に示す様に、学習データ生成装置２００によって実行される学習データ生成装置制御プログラム７２０や、ユーザ端末１００から取得した動画データ６２０、ニューラルネットワークモデル６００（以下、第２のニューラルネットワークモデル６００とも記す）、学習データ６４０、特徴量６５０（ベクトルデータ６５１）等の各種のプログラムやデータが格納される。
【００３６】
記憶装置２４０に記憶されている学習データ生成装置制御プログラム７２０や動画データ６２０等の各種のデータがメモリ２２０に読み出されてＣＰＵ２１０によって実行あるいは処理されることにより、学習データ生成装置２００の各種機能が実現される。
【００３７】
動画データ６２０は、画像認識対象が撮影されたデータである。動画データ６２０の仕様（規格やフレームレート、解像度、画面サイズ等）については、本実施形態では特に制約はなく、どのような仕様の動画データ６２０であっても良い。例えば動画データ６２０は、ユーザ端末１００の動画撮影機能を用いて撮影された動画を記録したデータであっても良いし、不図示の動画撮影用カメラを用いて撮影された動画を記録したデータであっても良い。
【００３８】
ニューラルネットワークモデル６００は、動画データ６２０内の各静止画像６２１の特徴量６５０を取得するために用いられる。本実施形態では、一例としてニューラルネットワークモデル６００の種類はＣＮＮ（Convolution Neural Network）であり、図５に示す様に、中間層からベクトルデータ６５１を特徴量６５０として取り出すことができる。ニューラルネットワークモデル６００は、動画データ６２０内の各静止画像６２１の類似性（相違の程度）に基づいて冗長な静止画像６３０を正しく特定できるように、静止画像６２１が類似している場合には類似したベクトルデータ６５１が出力されるように、予めある程度の学習が行われている。
【００３９】
なお本実施形態では、静止画像６２１の類似性は、比較対象の２つの静止画像６２１の各ベクトルデータ６５１のユークリッド距離を、後述する閾値Ａ（所定の判定値）と比較することにより判定される。具体的には、２つの静止画像６２１の各ベクトルデータ６５１のユークリッド距離が閾値Ａ以下である場合は、これらの静止画像６２１は類似であると判定する。
【００４０】
またニューラルネットワークモデル６００は、中間層からベクトルデータ６５１（特徴量６５０）を取り出すことが可能なモデルであれば、ＲＮＮ（Recurrent Neural Network）など他の種類のモデルでもよい。
【００４１】
ベクトルデータ６５１は、ニューラルネットワークモデル６００を構成する複数の中間層のうちの、どの中間層から出力されるものでも良いが、出力層の直前の中間層ないしは直前付近の中間層から出力されるものの方が、認識対象の特徴がより明確に特徴量６５０として数値化されているため、好ましい。
【００４２】
以上のようにして、動画データ６２０内の各静止画像６２１の類似性を判定し、冗長な静止画像６３０を取り除くことにより学習データ６４０が生成され、図４に示す様に記憶装置２４０に記憶される。
【００４３】
＜機能構成＞
次に学習データ生成装置２００の機能構成図の一例を図７に示す。本実施形態に係る学習データ生成装置２００は、動画データ取得部２０１、及び学習データ生成部２０２の各機能を含む。
【００４４】
これらの各機能は、学習データ生成装置２００のハードウェアによって本実施形態に係る学習データ生成装置制御プログラム７２０が実行されることにより実現される。
【００４５】
動画データ取得部２０１は、画像認識モデル６１０に認識させる人や物等の認識対象が撮影された動画データ６２０を取得する。なお動画データ取得部２０１は、動画データ６２０をユーザ端末１００から取得するだけでなく、動画データ６２０が不図示の他のコンピュータに格納されている場合には、ユーザ端末１００からの指示によってこのコンピュータから動画データ６２０を取得するようにしてもよい。
【００４６】
また上述したように、動画データ６２０の規格やフレームレート等の仕様については特に制約はなく、動画データ取得部２０１は様々な仕様の動画データ６２０を取得することができる。
【００４７】
学習データ生成部２０２は、動画データ６２０に含まれる各フレームの静止画像６２１の中から２つの静止画像６２１を選ぶ組み合わせ毎に、これら２つの静止画像６２１の相違の程度（類似性）を表す指標値を求め、これらの指標値を元に、動画データ６２０に含まれる静止画像６２１から冗長な静止画像６３０を取り除くことにより、学習データ６４０を生成する。
【００４８】
このような態様により、画像認識モデル６１０の学習を行うための良質な学習データ６４０を効率的に生成することができる。
【００４９】
なお学習データ生成部２０２は、上記指標値を求める際に、動画データ６２０に含まれる各静止画像６２１の特徴量６５０（本実施形態ではベクトルデータ６５１）を求め、上記各組み合わせ毎に、組み合わせを成す２つの静止画像６２１のそれぞれの特徴量６５０の差分を、上記指標値として求めるようにしても良い。
【００５０】
このような態様により、特徴量６５０の差分がより小さな２つの静止画像６２１は、お互いに相違の程度がより小さいと判定できるため、これらの静止画像６２１の両方あるいはいずれか一方を冗長な静止画像６３０として特定することが可能となる。これにより、冗長な静止画像６３０をより的確に特定することが可能となる。
【００５１】
なお静止画像６２１の特徴量６５０としては、ニューラルネットワークモデル６００の中間層から取り出すことにより得られるベクトルデータ６５１の他にも、ＨＯＧ特徴量やＥＯＨ特徴量、Ｈａａｒ−ｌｉｋｅ特徴量、ピクセル差分特徴量、あるいはこれらの組み合わせ等、様々な特徴量６５０を採用することができる。これらのいずれの特徴量６５０であっても、特徴量６５０の差分がより小さな２つの静止画像６２１は、お互いに相違の程度がより小さいと判定できる。
【００５２】
また学習データ生成部２０２は、上述したように、動画データ６２０に含まれる各静止画像６２１をＣＮＮ等のニューラルネットワークモデル６００に入力し、ニューラルネットワークモデル６００内の中間層からの出力データを用いて、静止画像６２１の特徴量６５０としてベクトルデータ６５１を求めるようにしているが、このとき、画像認識モデル６１０及びニューラルネットワークモデル６００を同一種類のニューラルネットワーク（本実施形態ではＣＮＮ）にしておくと、画像認識モデル６１０の特性とニューラルネットワークモデル６００の特性が共通になるため、画像認識モデル６１０の特性に合った学習データ６４０を生成することが可能となる。これにより、画像認識モデル６１０の学習をより効率的に行うことが可能となる。
【００５３】
例えばＣＮＮは、同一の物体が画面内で平行移動した位置に写っている２枚の静止画像が入力された場合、中間層から得られるこれらの静止画像の特徴量（ベクトルデータ）はほぼ等しくなる特性を持っているため、これらの物体が同一の物体であると正しく認識できるが、画面内で同一の物体を回転移動させた位置に写っている２枚の静止画像が入力された場合は、特徴量（ベクトルデータ）の差異が大きくなりやすいという特性を持っているため、異なる物体であると誤認識しやすい。
【００５４】
このため、ニューラルネットワークモデル６００から出力されるベクトルデータ６５１がほぼ等しい２枚の静止画像６２１を学習データ６４０に残しても、画像認識モデル６１０はいずれの静止画像６２１からも正しく被写体を認識できてしまい、学習にはあまり寄与しないため、これらの静止画像６２１の少なくとも一方は冗長な静止画像６３０であるとして取り除いた方が好ましい。
【００５５】
逆に、ニューラルネットワークモデル６００から出力されるベクトルデータ６５１の差異が大きな２枚の静止画像６２１（被写体が同一であるにもかかわらず、非同一と誤認識しやすい）を学習データ６４０に残しておくことにより、画像認識モデル６１０に対して、同一の被写体であることを学習させることができるため、好ましい。
【００５６】
なお学習データ生成部６０２は、動画データ６２０内の２つの静止画像６２１の各組み合わせの内、一の静止画像６２１と他の静止画像６２１との組み合わせの中に、２つの静止画像６２１の相違の程度（類似性）を表す指標値が所定の判定値（閾値Ａ）以下となる組み合わせがある場合に、上記一の静止画像６２１を冗長な静止画像６３０として取り除く処理を、動画データ６２０に含まれる各静止画像６２１を順に上記一の静止画像６２１として繰り返し行うことにより、学習データ６４０を生成するようにすると良い。
【００５７】
例えば、図１２に示す様に、５枚の静止画像（Ａ、Ｂ、Ｃ、Ｄ、Ｅ）６２１があり、これらの静止画像６２１から選んだ２枚の静止画像６２１の相違の程度を表す指標値が図１２に示される値である場合に（例えば静止画像ＡとＢの指標値は７０）、最初に静止画像Ａ６２１を一の静止画像６２１として、他の静止画像（Ｂ、Ｃ、Ｄ、Ｅ）６２１との組み合わせの中に、指標値が判定値（例えば１００）以下となる組み合わせがあるか否かを判定する。図１２に示す例の場合、静止画像Ａ６２１と静止画像Ｂ６２１との指標値が７０（１００以下）であるので、静止画像Ａ６２１は取り除かれる。
【００５８】
つぎに、静止画像Ｂ６２１を一の静止画像６２１として、他の静止画像（Ｃ、Ｄ、Ｅ）６２１との組み合わせの中に、指標値が判定値（１００）以下となる組み合わせがあるか否かを判定する。静止画像Ｂ６２１と静止画像Ｃ６２１との指標値が６０であるので、静止画像Ｂ６２１も取り除かれる。
【００５９】
以下、順に静止画像Ｃ、Ｄ、Ｅ６２１を一の静止画像６２１として同様の処理を行う。これにより、静止画像Ｃ６２１は取り除かれるが、静止画像Ｄ、Ｅ６２１は取り除かれずに残る。そのため学習データ生成部６０２は、静止画像Ｄ、Ｅ６２１からなる学習データ６４０を生成する。
【００６０】
このような態様により、冗長な静止画像６３０を含まない学習データ６４０を生成することが可能となる。
【００６１】
図７に戻って、学習データ生成部６０２は、動画データ６２０内の２つの静止画像６２１の各組み合わせの中から、相違の程度を表す指標値が最小の第１の組み合わせを特定した上で、さらに、第１の組み合わせを成す２つの静止画像６２１のうちの一つを含む他の組み合わせの中で指標値が最小となる第２の組み合わせを特定し、第１の組み合わせと第２の組み合わせに共通する静止画像６２１を、冗長な静止画像６３０として取り除く処理を、指標値が所定の判定値以下となる組み合わせがなくなるまで繰り返し行うことにより、学習データ６４０を生成するようにしても良い。
【００６２】
再び図１２の例で説明すると、学習データ生成部６０２は、まず、指標値が最小となる組み合わせ（第１の組み合わせ）として、静止画像Ｂ６２１及び静止画像Ｅ６２１の組み合わせ（指標値４０）を特定する。この組み合わせは、図１３（ａ）に示す、静止画像６２１の各組み合わせの指標値のリストのうち、「α」で示す組み合わせである。
【００６３】
このとき、学習データ生成部６０２は、静止画像Ｂ６２１を含む他の組み合わせと、静止画像Ｅ６２１を含む他の組み合わせと、の中で、指標値が最小となる組み合わせ（第２の組み合わせ）を特定する。図１２に示す例では、静止画像Ｂ６２１を含む他の組み合わせで指標値が最小となるのは、静止画像Ｂ６２１と静止画像Ｃ６２１との組み合わせであり（指標値６０）、静止画像Ｅ６２１を含む他の組み合わせで指標値が最小となるのは、静止画像Ｅ６２１と静止画像Ｃ６２１との組み合わせである（指標値９０）。そのため、学習データ生成部６０２は、第２の組み合わせとして、指標値が最小の静止画像Ｂ６２１と静止画像Ｃ６２１との組み合わせを特定する。この組み合わせは、図１３（ａ）に示す、静止画像６２１の各組み合わせの指標値のリストのうち、「β」で示す組み合わせである。
【００６４】
そして学習データ生成部６０２は、図１３（ａ）において、第１の組み合わせ（α）と第２の組みわせ（β）に共通する静止画像Ｂ６２１を冗長な静止画像６３０として取り除く。
【００６５】
続いて、学習データ生成部６０２は、図１３（ｂ）に示すように、静止画像Ｂ６２１を取り除いた各組み合わせのうち、指標値が最小となる組み合わせ（第１の組み合わせ）として、静止画像Ｃ６２１及び静止画像Ｄ６２１の組み合わせ（指標値５０）を特定する。そして学習データ生成部６０２は、第２の組み合わせとして、静止画像Ｃ６２１及び静止画像Ｅ６２１の組み合わせ（指標値９０）を特定する。
【００６６】
そして学習データ生成部６０２は、第１の組み合わせ（α）と第２の組みわせ（β）に共通する静止画像Ｃ６２１を冗長な静止画像６３０として取り除く。
【００６７】
ここで図１３（ｃ）に示す様に、静止画像Ｂ６２１及び静止画像Ｃ６２１を取り除いた各組み合わせは、いずれの指標値も判定値（１００）よりも大きい。
【００６８】
そのため、学習データ生成部６０２は、静止画像Ａ、Ｄ、Ｅ６２１からなる学習データ６４０を生成する。
【００６９】
このように、動画データ６２０内の静止画像６２１の相違の程度が最小の静止画像６２１を優先的に削除することにより、より適切に、冗長な静止画像６３０を含まない学習データ６４０を生成することができる。
【００７０】
＝＝処理の流れ＝＝
次に、本実施形態に係る情報システム１０００による処理の流れを、図８〜図１５を参照しながら説明する。
【００７１】
まず学習データ生成装置２００は、画像認識の対象が撮影されている動画データ６２０を取得する（S1000）。学習データ生成装置２００は、ユーザ端末１００から動画データ
６２０を取得しても良いし、ユーザ端末１００からの指示により不図示の他のコンピュータから取得しても良い。
【００７２】
そして学習データ生成装置２００は、動画データ６２０から、各フレームの静止画像６２１を抽出する（S1010）。例えば学習データ生成装置２００は、フレームレートが３０fpsの５分間の動画データ６２０から９０００（３０×６０×５）枚の静止画像６２１を抽出する。
【００７３】
つぎに学習データ生成装置２００は、各静止画像６２１をニューラルネットワークモデル６００に入力し、それぞれのベクトルデータ６５１を求める（S1020）。
【００７４】
そして学習データ生成装置２００は、閾値Ａ（上述した所定の判定値）を求める（S1030）。閾値Ａは、動画データ６２０内の静止画像６２１から選んだ２枚の静止画像６２１
の類似性（相違の程度）を判定する際の判定値である。本実施形態では、２枚の静止画像６２１の各ベクトルデータ６５１の差分のノルム（例えば各ベクトルデータ６５１のユークリッド距離）が閾値Ａ以下である場合に、これら２枚の静止画像６２１は類似していると判定される。
【００７５】
なお、閾値Ａは、各静止画像６２１のベクトルデータ６５１を元に決めると良い。例えば学習データ生成装置２００は、各ベクトルデータ６５１のＬ２ノルムの平均値を閾値Ａとして求めると良い。この理由の一つは、ニューラルネットワークモデル６００が静止画像６２１に写っている認識対象をうまく認識できる程、ベクトルデータ６５１すなわち特徴量６５０の大きさ（Ｌ２ノルム）の値が大きくなるからである。
【００７６】
つまり、例えばニューラルネットワークモデル６００の学習が適切になされていれば、認識対象である物体Ｘが静止画像６２１に写っている場合のベクトルデータ６５１は、物体Ｘが静止画像６２１に写っていない場合のベクトルデータ６５１よりも大きな値になるはずだからである（こうなるように学習がなされる）。
【００７７】
なお、閾値Ａの値を大きくすると、類似と判断される静止画像６２１の枚数が増加するため、動画データ６２０から冗長な静止画像６３０として取り除かれる静止画像６２１の枚数が増加し、学習データ６４０のデータ量が減少する。逆に、閾値Ａの値を小さくすると、類似と判断される静止画像６２１の枚数が減少するため、動画データ６２０から冗長
な静止画像６３０として取り除かれる静止画像６２１の枚数が減少し、学習データ６４０のデータ量が増加する。
【００７８】
このため、学習データ６４０に含まれる静止画像の枚数、あるいは冗長な静止画像６３０として取り除く静止画像６２１の枚数に応じて、閾値Ａを調整するとなおよい。このような態様により、学習データ６４０のデータサイズを適切に調整することが可能となる。
【００７９】
つぎに、学習データ生成装置２００は、類似画像削除処理を実行する（S1040）。これ
により動画データ６２０から冗長な静止画像６３０を取り除くことができる。
【００８０】
類似画像削除処理は、図１０に示す様に、動画データ６２０内の２つの静止画像６２１の各組み合わせの内、一の静止画像６２１（図１０において符号iが付された静止画像６
２１）と他の静止画像６２１（図１０において符号j,j+1,…,MAXが付された静止画像６２１）との組み合わせの中に、２つの静止画像６２１の相違の程度を表す指標値が所定の判定値（閾値Ａ）以下となる組み合わせがある場合に、上記一の静止画像６２１を冗長な静止画像６３０として取り除く処理を、動画データ６２０に含まれる各静止画像６２１を順に上記一の静止画像６２１として繰り返し行うことにより、学習データ６４０を生成するようにする処理である。
【００８１】
類似画像削除処理の流れを、図９のフローチャートを参照しながら説明すると、まず学習データ生成装置２００は、制御変数として、i=1、j=i+1を設定する（S2000、S2010）。制御変数iは一の静止画像６２１を示し、制御変数jは他の静止画像６２１を示す。
【００８２】
つぎに学習データ生成装置２００は、i番目の静止画像６２１とj番目の静止画像６２１のそれぞれのベクトルデータ６５１の差分のノルムを算出する（S2020）。具体的には各
ベクトルデータ６５１のユークリッド距離を算出する。
【００８３】
これらのノルム（ユークリッド距離）が閾値Ａ以下である場合には（S2030においてYES）、学習データ生成装置２００は、i番目の静止画像６２１がj番目の静止画像６２１と類似であると判定し、i番目の静止画像６２１を削除する（S2060）。
【００８４】
一方、これらのノルムが閾値Ａ以下でなければ（S2030においてNO）、学習データ生成
装置２００は、制御変数jに1を加えて（S2040）、i番目の静止画像６２１と次のj番目の
静止画像６２１との間で同様の処理を行う（S2020、S2030）。
【００８５】
ただし、S2040において制御変数jに1を加えた結果、jがMAXを超えた場合には、全ての
静止画像６２１との比較を終えたので、学習データ生成装置２００は、iに1を加える（S2070）。
【００８６】
そして学習データ生成装置２００は、iがMAXを超えるまで（S2080）、i番目の静止画像６２１及びj番目の静止画像６２１のユークリッド距離と、閾値Ａと、の比較を行い、ユ
ークリッド距離が閾値Ａよりも小さい場合にi番目の静止画像６２１を削除する処理を繰
り返し行う。
【００８７】
図８に戻って、このようにして学習データ生成装置２００は動画データ６２０から冗長な静止画像６３０を取り除くことで、学習データ６４０を生成する（S1050）。
【００８８】
このような態様によって、画像認識モデル６１０の学習を行うための学習データ６４０を効率的に生成することができる。
【００８９】
なお学習データ生成装置２００は、類似画像削除処理を、図１１のフローチャートに示す様な手順で行うことも可能である。
【００９０】
この場合、学習データ生成装置２００は、動画データ６２０内の２つの静止画像６２１の各組み合わせの中から、相違の程度を表す指標値が最小の第１の組み合わせ（図１３に示したαで示す組み合わせ）を特定した上で、さらに、第１の組み合わせを成す２つの静止画像６２１のうちの一つを含む他の組み合わせの中で指標値が最小となる第２の組み合わせ（図１３に示したβで示す組み合わせ）を特定し、第１の組み合わせ（α）と第２の組み合わせ（β）に共通する静止画像６２１を、冗長な静止画像６３０として取り除く処理を、指標値が所定の判定値以下となる組み合わせがなくなるまで繰り返し行う。
【００９１】
図１１において、学習データ生成装置２００は、まず、動画データ６２０内の静止画像６２１から２枚の静止画像６２１を選ぶ各組み合わせについて、各静止画像６２１のベクトルデータ６５１の差分のノルム（例えば各ベクトルデータ６５１のユークリッド距離）を計算する（S3000）。
【００９２】
そして学習データ生成装置２００は、ノルムが閾値Ａ以下となる組み合わせがない場合には（S3000においてNO）、処理を終了して図８のS1050に進み、学習データを出力する。
【００９３】
一方、S3010においてノルムが閾値Ａ以下となる組み合わせがあった場合には、学習デ
ータ生成装置２００は、それらの組み合わせの中でノルムが最小の組み合わせ（上述した例でαで示した組み合わせ）を特定する（S3020）。
【００９４】
次に学習データ生成装置２００は、この組み合わせ（α）を成す２つの静止画像６２１のうちの一つを含む他の組み合わせのうち、指標値が最小となる組み合わせ（上述したβで示した組み合わせ）を特定する（S3030）。
【００９５】
そして学習データ生成装置２００は、これらの組み合わせ（α、β）に共通する静止画像６２１を冗長な静止画像６３０として削除する（S3040）。
【００９６】
以下、学習データ生成装置２００は、ノルムが閾値Ａ以下となる組み合わせがなくなるまで（S3000においてNO）、S3020〜S3040の処理を繰り返す。
【００９７】
このような態様により、学習データ生成装置２００は、より適切に冗長な静止画像６３０を含まない学習データ６４０を生成することが可能となる。
【００９８】
[第２実施形態]
なお、学習データ生成装置２００は、図１４及び図１５に示すような態様で処理を行っても良い。
【００９９】
本実施形態では、学習データ生成装置２００は、動画データ６２０に含まれる静止画像６２１を時系列順に複数のグループに分け、第１実施形態で説明した冗長な静止画像６３０を取り除く処理をグループ単位に行う。図１５に、動画データ６２０に含まれる静止画像６２１をＮ個のグループに分ける様子を示す。
【０１００】
そして学習データ生成装置２００は、グループ単位に冗長な静止画像６３０を取り除く処理を行うことにより中間データを生成した後に、この中間データの全体に対してさらに第１実施形態で説明した冗長な静止画像６３０を取り除く処理を行う。このようにして学習データ生成装置２００は学習データ６４０を生成する。
【０１０１】
このような態様により、動画データ６２０から２枚の静止画像６２１を選ぶ組み合わせの数を減らすことができるので、学習データ６４０を生成するための処理時間を短縮することが可能となる。
【０１０２】
また各グループ内の静止画像６２１は、撮影されたタイミングが相互に時間的に近いため、類似である可能性が高い。そのため、本実施形態のように、一旦グループ内で各静止画像６２１の類似性を判断することで、効率よく冗長な静止画像６３０を取り除くことが可能となる。
【０１０３】
図１４のフローチャートに沿って本実施形態に係る処理の流れを説明する。
【０１０４】
まず学習データ生成装置２００は、画像認識の対象が撮影されている動画データ６２０を取得する（S4000）。
【０１０５】
そして学習データ生成装置２００は、動画データ６２０から、各フレームの静止画像６２１を抽出し（S4010）、各静止画像６２１をニューラルネットワークモデル６００に入
力し、それぞれのベクトルデータ６５１を求める（S4020）。そして学習データ生成装置
２００は、閾値Ａを求める（S4030）。以上の処理は、第１実施形態と同様である。
【０１０６】
学習データ生成装置２００は、各静止画像６２１を時系列順にＮ個のグループに分割する（S4040）。
【０１０７】
そして学習データ生成装置２００は、グループ単位に類似画像削除処理（冗長な静止画像６３０を取り除く処理）を行うことにより中間データを生成する（S4050）。
【０１０８】
学習データ生成装置２００は、この中間データの全体に対してさらに類似画像削除処理を行う（S4060）。
【０１０９】
そして学習データ生成装置２００は、学習データ６４０を生成する（S4070）。その後
学習データ生成装置２００は、学習データ６４０をユーザ端末１００に送信する。
【０１１０】
このような態様により、学習データ６４０を生成するための処理時間をさらに短縮することが可能となる。
【０１１１】
以上、学習データ６４０の生成方法、学習データ生成装置２００及びプログラムについて説明したが、上述した実施の形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得るとともに、本発明にはその等価物も含まれる。
【０１１２】
例えば上記実施形態では、学習データ生成装置２００が学習データ６４０を生成後、この学習データ６４０をユーザ端末１００に送信する場合を例示したが、画像認識モデル６１０を記憶している不図示のコンピュータに学習データ６４０を送信するようにしても良い。このような態様により、ユーザ端末１００が、画像認識モデル６１０を記憶している不図示のコンピュータに学習データ６４０を送信する手間を省くことができ、画像認識モデル６１０の学習を行う際の作業効率を向上させることが可能となる。
【０１１３】
あるいは、学習データ生成装置２００が画像認識モデル６１０を記憶するようにしておき、学習データ生成装置２００が自ら画像認識モデル６１０の学習を行うようにしても良い。このような態様により、学習データ生成装置２００が学習データ６４０をユーザ端末１００や他のコンピュータに送信することが不要になるので、画像認識モデル６１０の学
習を行う際の作業効率をさらに向上させることが可能となる。
【０１１４】
また上記実施形態では、画像認識モデル６１０とは別に用意したニューラルネットワークモデル６００に、動画データ６２０内の各静止画像６２１を入力してベクトルデータ６５１を取得する場合を説明したが、ニューラルネットワークモデル６００を用いずに、画像認識モデル６１０に動画データ６２０の各静止画像６２１を入力し、画像認識モデル６１０の中間層からベクトルデータ６５１を取得するようにしても良い。
【０１１５】
この場合、学習が未完了の状態の画像認識モデル６１０を用いてベクトルデータ６５１を取得し、このベクトルデータ６５１を用いて動画データ６２０から冗長な静止画像６３０を取り除くことになるが、機械学習に用いられる画像認識モデル６１０は、多くの場合、ある程度の精度で一般的な物体についての画像認識が可能な程度に学習済みの状態で配布されているため、このような画像認識モデル６１０を用いるようにすれば、ニューラルネットワークモデル６００を用いずにベクトルデータ６５１を取得することができる。このような態様により、ニューラルネットワークモデル６００を別途利用する場合に必要となる様々な設定作業等の手間が省けるので、学習データ６４０を作成する際の作業者の負担軽減を図ることが可能となる。
【０１１６】
なお、本実施形態における学習データの生成方法において、コンピュータが、前記学習データを生成する処理において、前記動画データに含まれる各静止画像の特徴量を求め、前記各組み合わせ毎に、前記組み合わせを成す２つの静止画像の前記特徴量の差分を前記指標値として求める、としてもよい。
【０１１７】
これによれば、冗長な静止画像をより的確に特定することが可能となる。
【０１１８】
また、本実施形態における学習データの生成方法において、前記画像認識用のモデルは、第１のニューラルネットワークモデルであり、前記コンピュータが、前記学習データを生成する処理において、前記第１のニューラルネットワークモデルと同じ種類の第２のニューラルネットワークモデルに前記動画データに含まれる各静止画像を入力し、前記第２のニューラルネットワークモデル内の中間層からの出力データを用いて前記特徴量を求める、としてもよい。
【０１１９】
これによれば、モデルの特性に合った学習データを得ることが可能となる。
【０１２０】
また、本実施形態における学習データの生成方法において、前記コンピュータが、前記学習データを生成する処理において、一の静止画像と他の静止画像との前記組み合わせの中に、前記指標値が所定の判定値以下となる組み合わせがある場合に、前記一の静止画像を前記冗長な静止画像として取り除く処理を、前記動画データに含まれる各静止画像を順に前記一の静止画像として繰り返し行うことにより、前記学習データを生成する、としてもよい。
【０１２１】
これによれば、冗長な静止画像を含まない学習データを生成することが可能となる。
【０１２２】
また、本実施形態における学習データの生成方法において、前記コンピュータが、前記学習データを生成する処理において、前記各組み合わせの中から、前記指標値が最小の第１の組み合わせを特定した上で、さらに、前記第１の組み合わせを成す２つの静止画像のうちの一つを含む他の組み合わせの中で前記指標値が最小の第２の組み合わせを特定し、前記第１の組み合わせと前記第２の組み合わせに共通する静止画像を、前記冗長な静止画像として取り除く処理を、前記指標値が所定の判定値以下となる組み合わせがなくなるまで繰り返し行うことにより、前記学習データを生成する、としてもよい。
【０１２３】
これによれば、より適切に、冗長な静止画像を含まない学習データを生成することが可能となる。
【０１２４】
また、本実施形態における学習データの生成方法において、前記コンピュータが、前記学習データを生成する処理において、前記動画データに含まれる静止画像を時系列順に複数のグループに分け、前記グループ単位に、前記冗長な静止画像を取り除く処理を行うことにより中間データを生成した後に、前記中間データの全体に対してさらに前記冗長な静止画像を取り除く処理を行うことにより、前記学習データを生成する、としてもよい。
【０１２５】
これによれば、学習データをより短時間に生成することが可能となる。
【符号の説明】
【０１２６】
１００    ユーザ端末
１１０    ＣＰＵ
１２０    メモリ
１３０    通信装置
１４０    記憶装置
１５０    入力装置
１６０    出力装置
１７０    記録媒体読取装置
２００    学習データ生成装置
２０１    動画データ取得部
２０２    学習データ生成部
２１０    ＣＰＵ
２２０    メモリ
２３０    通信装置
２４０    記憶装置
２５０    入力装置
２６０    出力装置
２７０    記録媒体読取装置
５００    ネットワーク
６００    ニューラルネットワークモデル
６１０    画像認識モデル
６２０    動画データ
６２１    静止画像
６３０    冗長な静止画像
６４０    学習データ
６５０    特徴量
６５１    ベクトルデータ
７１０    ユーザ端末制御プログラム
７２０    学習データ生成装置制御プログラム
８００    記録媒体
１０００  情報システム
【図１】
2020135432.tif 000003
【図２】
2020135432.tif 000004
【図３】
2020135432.tif 000005
【図４】
2020135432.tif 000006
【図５】
2020135432.tif 000007
【図６】
2020135432.tif 000008
【図７】
2020135432.tif 000009
【図８】
2020135432.tif 000010
【図９】
2020135432.tif 000011
【図１０】
2020135432.tif 000012
【図１１】
2020135432.tif 000013
【図１２】
2020135432.tif 000014
【図１３】
2020135432.tif 000015
【図１４】
2020135432.tif 000016
【図１５】
2020135432.tif 000017