(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-01-23
(45)【発行日】2023-01-31
(54)【発明の名称】画像解析システム、画像解析方法およびプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20230124BHJP
【FI】
G06T7/00 350B
G06T7/00 P
(21)【出願番号】P 2021189703
(22)【出願日】2021-11-22
【審査請求日】2021-11-22
(73)【特許権者】
【識別番号】518439860
【氏名又は名称】株式会社ALBERT
(73)【特許権者】
【識別番号】310021766
【氏名又は名称】株式会社ソニー・インタラクティブエンタテインメント
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】水船 公輔
(72)【発明者】
【氏名】亀岡 慎平
(72)【発明者】
【氏名】佐藤 祥悟
【審査官】伊知地 和之
(56)【参考文献】
【文献】米国特許出願公開第2008/0193016(US,A1)
【文献】米国特許出願公開第2009/0249387(US,A1)
【文献】米国特許出願公開第2020/0314458(US,A1)
【文献】米国特許出願公開第2020/0186897(US,A1)
【文献】特開2005-189832(JP,A)
【文献】特開2011-223287(JP,A)
【文献】特表2021-521525(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
G06T 1/00
G06T 3/00 - 3/60
G06T 5/00 - 5/50
G06T 7/00 - 7/90
H04N 5/222 - 5/257
H04N 7/18
CSDB(日本国特許庁)
(57)【特許請求の範囲】
【請求項1】
動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出する情報抽出部と、
前記抽出された付属情報から正解データを生成する正解生成部と、
動画コンテンツを構成する複数の画像のそれぞれの一部が入力されると判定結果を出力する機械学習モデルを、前記入力領域と前記正解データとを含む教師データを用い
て学習させる学習部と、
を含む画像解析システム。
【請求項2】
請求項1に記載の画像解析システムにおいて、
前記学習部は、前記生成された正解データと、当該正解データが抽出されるタイミングより前のタイミングの画像から抽出された入力領域と、を含む教師データを用いて機械学習モデルを学習させる、
画像解析システム。
【請求項3】
請求項1または2に記載の画像解析システムにおいて、
前記情報抽出部は、前記複数の画像のそれぞれの一部である入力領域と異なる領域に基づいて前記付属情報を抽出する、
画像解析システム。
【請求項4】
請求項3に記載の画像解析システムにおいて、
前記正解生成部は、前記付属情報の変化に基づいて前記正解データを生成する、
画像解析システム。
【請求項5】
請求項1または2に記載の画像解析システムにおいて、
前記情報抽出部は、前記動画コンテンツに含まれる音声を示す情報を、前記付属情報として抽出する、
画像解析システム。
【請求項6】
動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出するステップと、
前記抽出された付属情報から正解データを生成するステップと、
動画コンテンツを構成する複数の画像のそれぞれの一部が入力されると判定結果を出力する機械学習モデルを、前記入力領域と前記正解データとを含む教師データを用い
て学習させるステップと、
を含む画像解析方法。
【請求項7】
動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出する情報抽出部、
前記抽出された付属情報から正解データを生成する正解生成部、および、
動画コンテンツを構成する複数の画像のそれぞれの一部が入力されると判定結果を出力する機械学習モデルを、前記入力領域と前記正解データとを含む教師データを用い
て学習させる学習部、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像解析システム、画像解析方法およびプログラムに関する。
【背景技術】
【0002】
例えばゲームなどの動画を編集するために、その動画において重要なイベントを人の目視などの手法で見つけている。
【0003】
非特許文献1には、アテンションマップを用いた教師なし学習により、音声の発生源を動画上にマッピングする技術が開示されている。非特許文献2には、視線トラッキングされた注視点情報を用いて教師なしセグメンテーションを行うことが開示されている。
【先行技術文献】
【非特許文献】
【0004】
【文献】"Learning to Localize Sound Source in Visual Scenes", Arda Senocak, Tae-Hyun Oh, Junsik Kim, Ming-Hsuan Yang, In So Kweon; Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018, pp. 4358-4366
【文献】"Learning Unsupervised Video Object Segmentation Through Visual Attention", Wenguan Wang, Hongmei Song, Shuyang Zhao, Jianbing Shen, Sanyuan Zhao, Steven C. H. Hoi, Haibin Ling; Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, pp. 3064-3074
【発明の概要】
【発明が解決しようとする課題】
【0005】
発明者らはそのイベントの特徴を検出するために機械学習モデルを用いることを検討している。機械学習をするためには、動画そのものとその動画におけるイベント情報とを含む教師データをあらかじめ作成する必要があるが、この教師データを作成する負担が大きかった。
【0006】
本発明は上記課題を鑑みてなされたものであって、その目的は、機械学習モデルを用いて動画中のイベントに関する特徴を検出することをより容易に実現する技術を提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明にかかる画像解析システムは、動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出する情報抽出部と、前記抽出された付属情報から正解データを生成する正解生成部と、前記入力領域と前記正解データとを含む教師データを用いて機械学習モデルを学習させる学習部と、を含む。
【0008】
また、本発明にかかる画像解析方法は、動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出するステップと、前記抽出された付属情報から正解データを生成するステップと、前記入力領域と前記正解データとを含む教師データを用いて機械学習モデルを学習させるステップと、を含む。
【0009】
また、本発明にかかるプログラムは、動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出する情報抽出部、前記抽出された付属情報から正解データを生成する正解生成部、および、前記入力領域と前記正解データとを含む教師データを用いて機械学習モデルを学習させる学習部、としてコンピュータを機能させる。
【0010】
本発明によれば、機械学習モデルを用いて動画中のイベントに関する特徴をより容易に検出することができる。
【0011】
本発明の一形態では、前記学習部は、前記生成された正解データと、当該正解データが抽出されるタイミングより前のタイミングの画像から抽出された入力領域と、を含む教師データを用いて機械学習モデルを学習させてよい。
【0012】
本発明の一形態では、前記情報抽出部は、前記複数の画像のそれぞれの一部である入力領域と異なる領域に基づいて前記付属情報を抽出してよい。
【0013】
本発明の一形態では、前記正解生成部は、前記付属情報の変化に基づいて前記正解データを生成してよい。
【0014】
本発明の一形態では、前記情報抽出部は、前記動画コンテンツに含まれる音声を示す情報を、前記付属情報として抽出してよい。
【図面の簡単な説明】
【0015】
【
図1】本発明の実施形態にかかる画像分析システムのハードウェア構成を示す図である。
【
図2】画像分析システムが実現する機能を示すブロック図である。
【
図3】機械学習モデルを学習させる処理の一例を示すフロー図である。
【
図4】動画コンテンツの一例を概略的に説明する図である。
【
図8】検索部57による動画コンテンツの検索に関する処理を示すフロー図である。
【発明を実施するための形態】
【0016】
以下では、本発明の実施形態について図面に基づいて説明する。出現する構成要素のうち同一機能を有するものには同じ符号を付し、その説明を省略する。
【0017】
本実施形態では、ゲームのプレイ時にディスプレイに出力される画像を含む動画コンテンツを解析するシステムについて説明する。動画コンテンツは音声を含んでもよい。以下では予め録画され記憶装置などに格納される動画コンテンツを用いた場合の例について説明する。
【0018】
図1は、本発明の実施形態にかかる画像分析システムのハードウェア構成の一例を示す図である。画像分析システムは、情報処理装置1を含む。情報処理装置1はパーソナルコンピュータやサーバコンピュータなどのコンピュータである。
図1には情報処理装置1のみが図示されているが、情報処理装置1として複数のコンピュータが配置されてもよい。
【0019】
情報処理装置1は、プロセッサ11、ストレージ12、通信インタフェース13、入出力インタフェース14、表示コントローラ15を含む。
【0020】
プロセッサ11は、ストレージ12に格納されているプログラムの実行命令に従って動作する。またプロセッサ11は通信インタフェース13、入出力インタフェース14、表示コントローラ15を制御する。プロセッサ11の数は、1つであってもよいし、複数であってもよい。なお、上記プログラムの実行命令は、インターネット等を介して提供されるものであってもよいし、フラッシュメモリまたは光メディア(例えばDVD-ROM)のようなコンピュータで読み取り可能な記憶媒体に格納されて提供されるものであってもよい。
【0021】
ストレージ12は、DRAMやフラッシュメモリのようなメモリ素子、およびハードディスクドライブのような外部記憶装置によって構成されている。ストレージ12は、上記プログラムの実行命令を格納する。また、ストレージ12は、プロセッサ11や通信インタフェース13等から入力される情報や演算結果を格納する。
【0022】
通信インタフェース13は他の装置と通信するネットワークインタフェースコントローラであり、有線LAN、無線LANまたは近距離無線通信を構成する集積回路と、通信端子またはアンテナとを含む。通信インタフェース13は、ネットワークを介して他の装置と通信する機能を有する。通信インタフェース13は、プロセッサ11の制御に基づいて、他の装置から受信した情報をプロセッサ11やストレージ12に入力し、他の装置に情報を送信する。
【0023】
入出力インタフェース14は、入力デバイスからデータを取得し、出力デバイスに対してデータを出力する入出力コントローラ(例えばUSB-IF)により構成される。入力デバイスは、例えば、キーボード、マウス、タッチパネル、タッチパッド、マイク、カメラのうち少なくとも一部を含む。出力デバイスは、例えばスピーカを含む。入出力インタフェース14は、プロセッサ11の制御に基づいて、例えば入力デバイスからユーザの操作に基づく入力データを取得し、その入力データをプロセッサ11やストレージ12に入力する。
【0024】
表示コントローラ15は、表示出力デバイスをコントロールするグラフィックスコントローラである。表示コントローラ15は、GPU(Graphic Processing Unit)を含んでよい。表示コントローラ15は、表示出力デバイスに表示データを出力する。表示出力デバイスは情報処理装置1の内部または外部にあるディスプレイ装置である。
【0025】
以下では画像解析システムが実現する機能および処理を説明する。
図2は、音画像分析システムが実現する機能を示すブロック図である。画像解析システムは機能的に、情報抽出部51、正解生成部52、アイコン抽出部53、全体学習モデル54、学習制御部55、検索部57を含む。これらの機能は、主に、プロセッサ11がストレージ12に記憶される各部に対応するプログラムの命令を実行し、通信インタフェース13や表示コントローラ15を制御することにより実現される。全体学習モデル54は機械学習モデルの一種であり、画像特徴生成部61と、イベント予測部66とを含む。画像特徴生成部61はエンコーダ62、マップ生成部63、トークン生成部64を含み、イベント予測部66は、第1予測器67と第2予測器68とを含む。
【0026】
情報抽出部51は、動画コンテンツから、その動画コンテンツを構成する複数の画像のそれぞれの一部である対象領域70(
図5参照)と、その対象領域70と異なる情報である付属情報と、対象領域70の内にあるオブジェクトの種類を示すアイコン領域とを抽出する。本実施形態では、対象領域70にあるオブジェクトの数は2であり、抽出されるアイコン領域の数も2である。ここで、情報抽出部51は、動画コンテンツに含まれる複数の画像のそれぞれから、対象領域を抽出する。複数の画像の数(フレームの数)は、例えば動画コンテンツの期間と毎秒フレーム数とから求められる。なお、情報抽出部51はアイコン領域を抽出せずに、例えば文字列のような、オブジェクトの種類を示す他の情報を抽出してもよい。付属情報は、動画コンテンツを構成する複数の画像のそれぞれの一部の領域かつ入力領域と異なる領域に基づいて抽出されてよい。また付属情報は、動画コンテンツに含まれる音声を示す情報であってもよい。
【0027】
正解生成部52は、抽出された付属情報から正解データを生成する。正解データは、その付属情報が示すイベントの有無、または、イベントの種類を示す情報であってよい。
【0028】
アイコン抽出部53は、アイコン領域から、オブジェクトの種類を示す特徴量を生成する。より具体的には、アイコン抽出部53は、アイコン領域から入力領域にある2つのオブジェクトの特徴をそれぞれ示す第1特徴ベクトル、第2特徴ベクトルを特徴量として生成する。アイコン抽出部53は、予め学習された小規模な機械学習モデルを含んでいる。この小規模な機械学習モデルは、畳み込みニューラルネットワークを含み、2つのアイコン領域の画像が入力され、それぞれ第1特徴ベクトル、第2特徴ベクトルを出力する。アイコン抽出部53の機械学習モデルは、異なるオブジェクトに対して出力されるベクトル間の距離が長くなるように、距離学習的な手法により学習されてよい。またアイコン抽出部53の機械学習モデルは、アイコン領域からオブジェクトを分類する分類器を含んでもよい。この場合はあらかじめオブジェクトごとにランダムかつ互いに距離の十分大きいベクトルを割り当て、分類器の出力により決定されるオブジェクトに割り当てられたベクトルが第1特徴ベクトルまたは第2特徴ベクトルとして出力されてよい。
【0029】
学習制御部55は、対象領域70と正解データとを含む教師データを用いて全体学習モデル54を学習させる。その学習において、全体学習モデル54は、動画コンテンツに含まれる学習単位期間(例えば1~2s)の画像を含むクリップから、イベントの発生を示す情報を出力する。全体学習モデル54には、1つのクリップに含まれる複数の画像から抽出される対象領域70が入力され、それに対して、全体学習モデル54のイベント予測部66はイベント予測結果としてイベントの発生を示す情報を出力する。ここで、クリップは複数のフレーム群に分割され、そのフレーム群が全体学習モデル54により処理される。1つのフレーム群は、クリップに含まれる画像のうち連続するk個(kは所定の範囲の整数であり詳細は後述する)のフレームの画像からなる。
【0030】
全体学習モデル54に含まれる画像特徴生成部61は、クリップから生成される複数のフレーム群のそれぞれについて、第1のオブジェクトおよび第2のオブジェクトの特徴を示す第1トークンおよび第2トークンを出力する。より具体的には、複数のフレーム群のそれぞれについて、画像特徴生成部61には、そのフレーム群に含まれる複数の画像のそれぞれから抽出された対象領域70の画像が入力され、画像特徴生成部61は、対象領域70におけるそれぞれ第1のオブジェクトおよび第2のオブジェクトの特徴を示す第1トークンおよび第2トークンを出力する。画像特徴生成部61に含まれるエンコーダ62、マップ生成部63、トークン生成部64の詳細については後述する。
【0031】
あるクリップについて、全体学習モデル54に含まれるイベント予測部66は、複数のフレーム群のそれぞれについて出力された第1トークンおよび第2トークンに基づいて、第1のオブジェクトに生じるイベントの有無または種類を示す第1イベント情報と、第2のオブジェクトに生じるイベントの有無または種類を示す第2イベント情報と、を出力する。イベント予測部66に含まれる第1予測器67と第2予測器68との詳細については後述する。
【0032】
検索部57は、学習済の全体学習モデル54に含まれる画像特徴生成部61を用いて、検索対象となる動画コンテンツから、クエリとして入力されるクエリ動画に類似する動画コンテンツを検索する。クエリ動画は、動画コンテンツから検出したい状況を過不足なく含む動画であり、クエリとなる動画コンテンツの一部であってよい。また、検索部57は、インデックス作成処理と、作成されたインデックスを用いてクエリ動画に類似する動画を検索する検索処理とを行う。
【0033】
インデックス作成処理においては、検索部57は、検索対象となる動画コンテンツから複数のフレーム群を生成し、複数のフレーム群のそれぞれについて、そのフレーム群に含まれる画像のそれぞれの対象領域70を学習済の画像特徴生成部61に入力することで得られるトークンを、その動画コンテンツにおけるそのフレーム群の時間的位置を示す情報と関連づけてストレージ12に記憶させる。
【0034】
検索処理においては、検索部57は、クエリとして入力されるクエリ動画から複数のフレーム群を生成する。次に検索部57は、複数のフレーム群のそれぞれについて、学習済の画像特徴生成部61にそのフレーム群に含まれる複数の画像のそれぞれから抽出された対象領域70の画像を入力し、画像特徴生成部61からトークン(テンプレートトークン)を取得する。この処理により得られる複数の時系列のテンプレートトークンと、検索対象となる動画コンテンツについてストレージ12に格納されるトークンとの類似度に基づいて、検索部57はそのクエリ動画に類似するフレーム群を決定し、そのフレーム群に応じた動画コンテンツの区間の位置を示す情報を取得する。検索部57は、その類似する動画コンテンツおよびその類似する区間の位置を示す情報を検索結果として出力する。検索部57は、その動画コンテンツの類似する区間およびその前後を再生してもよい。
【0035】
全体学習モデル54の学習について説明する。
図3は、全体学習モデル54を学習させる処理の一例を示すフロー図である。
図3のフローに示される処理は、動画コンテンツから取り出された複数のクリップのそれぞれについて実行される。動画コンテンツに含まれる複数のクリップの期間(学習単位期間)は一定であり、複数のクリップの間で開始タイミングは異なっている。隣り合うクリップにおいて一部のフレームが重複していてもよいし、重複しなくてもよい。
【0036】
はじめに、情報抽出部51は、学習制御部55により入力される動画コンテンツであって、学習用の動画コンテンツを取得する(ステップS101)。動画コンテンツは、時系列の複数の画像と、時系列の音声データとを含む。より具体的には、情報抽出部51は動画コンテンツからクリップを取得し、さらに、そのクリップのタイミングに応じた期間の音声データまたは画像を取得する。
【0037】
図4は、動画コンテンツの一例を概略的に説明する図である。図中の横方向に並ぶ矩形の領域のそれぞれは、時系列に並ぶ画像(ここではクリップに相当)を示している。動画コンテンツは、例えば、
図4に説明されるように、対戦型格闘ゲームのプレイ動画であり、ゲームのプレイ中における画像と音声とを含んでよい。
図4では、説明上の都合により、隣り合う画像(クリップ)における時間間隔が長くなっているが、実際は、クリップの期間は1~2sでよく、各クリップが30~120フレームの画像を含んでよい。
【0038】
情報抽出部51は、動画コンテンツのクリップに含まれる複数の画像(クリップに含まれる複数のフレームの画像)のそれぞれから、対象領域70およびアイコン領域を抽出する(ステップS102)。対象領域70は、画像解析の対象となる領域であり、アイコン領域は、対象領域70の内にあるオブジェクトの種類を示す領域である。これらの領域の位置は固定されていてよい。
【0039】
図5は、画像の一例を示す図である。
図5に示される画像は、動画コンテンツに含まれる、あるタイミングのフレームにおける画像である。アイコン領域は画像中の第1アイコン領域71および第2アイコン領域72からなり、第1アイコン領域71および第2アイコン領域72はそれぞれ対象領域70に描画される第1オブジェクト81および第2オブジェクト82に対応する。なお、対象領域70内において、ゲームのプレイ状況により、第1オブジェクト81は必ずしも左側に居るとは限らず、第2オブジェクト82が必ずしも右側にいるとは限らない。
【0040】
また画像に含まれる第1付属領域75および第2付属領域76は、それぞれ第1オブジェクト81および第2オブジェクト82に対応する。対象領域70、第1アイコン領域71、第2アイコン領域72、第1付属領域75、第2付属領域76は互いに異なる領域である。第1付属領域75、第2付属領域76は対象領域70とは重複しない。
図5の例では、第1付属領域75、第2付属領域76は、それぞれ第1オブジェクト81、第2オブジェクト82の残り体力を示すHPゲージの画像であり、相手から攻撃を受けるとHPゲージに示される残り体力が減少する。第1付属領域75、第2付属領域76の位置も固定されていてよい。
図5における対象領域70は、第1アイコン領域71、第2アイコン領域72、第1付属領域75、第2付属領域76を含まないが、対象領域70は第1アイコン領域71および第2アイコン領域72を含んでもよいし、さらに第1付属領域75、第2付属領域76を含んでもよいし、画像の全体が対象領域70であってもよい。
【0041】
情報抽出部51は、クリップに含まれる複数の画像から抽出された対象領域70の画像から、画像特徴生成部61に入力する複数のフレーム群の対象画像70を取得する(ステップS103)。フレーム群のそれぞれは、クリップ中に含まれる連続するk枚のフレームからなる。kはあらかじめ定められた整数であり、例えば1以上、かつ、クリップに含まれるフレーム数より小さい数であってよい。kが2以上の場合、情報抽出部51は、クリップに含まれる複数のフレームのうち、スライディングウインドウによって得られるkフレームの画像(フレーム群に含まれるフレームの画像)のそれぞれから抽出された対象領域70の画像を取得してよい。
【0042】
情報抽出部51は、対象領域70およびアイコン領域(第1アイコン領域71および第2アイコン領域72)のほかに、動画コンテンツから付属情報を抽出する(ステップS104)。ここでは、付属情報は、画像中の第1付属領域75、第2付属領域76であってもよいし、対象領域70が抽出された画像を含むクリップのタイミングに応じた期間の音声を示す音声データであってもよい。情報抽出部51は、対象領域70が抽出された画像を含むクリップより数フレーム先(所定時間が経過したタイミング)の画像から、第1付属領域75、第2付属領域76を抽出してよい。
【0043】
正解生成部52は、抽出された付属情報から、正解データとしてイベントを検出する(ステップS105)。正解生成部52の処理は、ルールベースで行われてよい。例えば、正解生成部52は、クリップ内の終端のフレームより所定時間(例えば1~5フレーム)が経過したタイミングにおいて付属情報として抽出された、第1付属領域75、第2付属領域76のそれぞれにおける、所定数だけ前のフレームから色が変化した領域の大きさから残り体力のようなパラメータの数値の変化を取得し、その取得された数値の変化に基づいてオブジェクトごとに正解データとしてのイベントを検出してよい。正解生成部52は、第1付属領域75、第2付属領域76のそれぞれが示す数値を取得し、その取得された数値の前のフレームからの変化に基づいてイベントを検出してもよい。また正解生成部52は、例えば、第1付属領域75、第2付属領域76のそれぞれの画像そのものの変化に基づいてイベントを検出してもよい。正解生成部52が検出する正解データとしてのイベントは、オブジェクトごとのダメージ変化を示すものであってよいし、他の変化であってもよい。
【0044】
また正解生成部52は、クリップに応じた期間(例えばクリップ内の終端のフレームより1から5フレーム後を始めとする所定の期間)の音声データをメルスペクトログラムに変換し、そのメルスペクトログラムを正解データとして取得してもよい。なお、ステップS104,S105の処理は、ステップS102,S103の処理と並行して行われてもよいし、ステップS102の処理の前に行われてもよい。
【0045】
アイコン抽出部53は、アイコン領域からオブジェクトの種類を示す特徴量を抽出する(ステップS106)。アイコン抽出部53は、第1アイコン領域71から第1オブジェクト81の種類を示す第1特徴ベクトルを抽出し、第2アイコン領域72から第2オブジェクト82の種類を示す第2特徴ベクトルを抽出する。なお、アイコン抽出部53は動画コンテンツまたはクリップごとに1回だけアイコン領域を抽出してもよい。
【0046】
対象領域70や第1,第2特徴ベクトルが抽出され、正解データが検出(生成)されると、学習制御部55は、複数のフレーム群に含まれる1または複数の画像から取得された対象領域70の画像および抽出された第1特徴ベクトル,第2特徴ベクトルをクリップごとに全体学習モデル54に入力し、全体学習モデル54の出力と、正解データとに基づいて、全体学習モデル54を学習させる(ステップS107)。
【0047】
ここで、全体学習モデル54についてさらに詳細に説明する。
図6は、全体学習モデル54の構成を説明する図である。これまでに説明したように、全体学習モデル54は、画像特徴生成部61と、イベント予測部66とを含む。画像特徴生成部61およびイベント予測部66は機械学習モデルの一種であり、それらは前述の学習制御部55による学習の対象である。
【0048】
画像特徴生成部61には、クリップから取得されたフレーム群のそれぞれについて、フレーム群に含まれる複数の画像の対象領域70と、オブジェクトに応じたベクトルとが入力される。画像特徴生成部61は、クリップから取得された複数のフレーム群のそれぞれについて、入力されたベクトルに対応し、対象領域70から認識されたオブジェクトのイベントに関する特徴を示すトークンを出力する。
【0049】
オブジェクトに応じたベクトルは、アイコン抽出部53により抽出された第1特徴ベクトルおよび第2特徴ベクトルである。オブジェクトに応じたベクトルは、単にオブジェクトの種類に応じてあらかじめ定められたベクトルであってもよい。この場合、例えば画像内に表示されるオブジェクトの名前に応じて選択されたベクトルが画像特徴生成部61に入力されてよい。
【0050】
画像特徴生成部61は、エンコーダ62と、マップ生成部63と、トークン生成部64とを含む。エンコーダ62には、フレーム群に含まれる複数の画像の対象領域70が入力され、エンコーダ62は画像特徴量配列およびマップソースを出力する。エンコーダ62は、ニューラルネットワークを含む機械学習モデルの一種であり、例えば、ResNet(2+1)Dと呼ばれる畳み込みニューラルネットワークであってよい。
【0051】
マップソースは、アテンションマップの生成に用いられる行列であり、その行列の大きさは、Dk×H×Wである。Dkは第1特徴ベクトルおよび第2特徴ベクトルの要素数であり、H,Wは、アテンションマップの縦横サイズである。マップソースは、縦横に並ぶ(H×W)個の単位領域のそれぞれに配置されるDk次元の内部ベクトルを含むものと考えることができる。Dk,H,Wは例えばそれぞれ64、6、10であり、画像のサイズは例えば180×320である。
【0052】
画像特徴量配列は、アテンションマップとともにトークンの生成に用いられる行列であり、その大きさはDt×H×Wである。Dtは、トークンのベクトルの要素数であり、チャネルの数でもある。Dtは例えば256である。アテンションマップは、画像における当該オブジェクトに関する領域を示すマップであり、アテンションマップの数はオブジェクトの数と同じである。
図6の例では、第1のマップおよび第2のマップの2つのアテンションマップが生成される。
【0053】
マップソースが出力されると、マップ生成部63は、画像特徴生成部61に入力されたオブジェクトの特徴を示すベクトルと、マップソースとに基づいて、アテンションマップを生成する。より具体的には、マップ生成部63は、アテンションマップを構成する単位領域(H×W個)のそれぞれについて、マップソースの内部ベクトルと第1特徴ベクトルとの内積(類似度)を求め、求められた内積をSoftmax関数に入力して得られた値(重み)を取得することにより、第1のアテンションマップを生成する。マップ生成部63は、アテンションマップを構成する単位領域のそれぞれについて、マップソースの内部ベクトルと第2特徴ベクトルとの内積を求め、求められた内積をSoftmax関数に入力して得られた値(重み)を取得することにより、第2のアテンションマップを生成する。
【0054】
アテンションマップが生成されると、トークン生成部64は、生成されたアテンションマップと画像特徴量配列とに基づいて、トークンを生成する。トークンはオブジェクトのイベントに関する特徴を示し、その数はオブジェクトの数と同じである。この処理においては、アテンションマップを用いて画像特徴量配列の空間的に注目すべき領域を限定するものである。トークン生成部64は、さらに画像特徴量配列が含む複数のチャネルのうち、注目すべきチャンネルを限定する。
図6の例では、第1のオブジェクトの特徴を示す第1トークンと、第2のオブジェクトの特徴を示す第2トークンとからなる2つのトークンが生成される。第1トークンおよび第2トークンは1次元のベクトルであり、その要素数はDtである。
【0055】
トークン生成部64は、より具体的には、画像特徴量配列のDt個のチャネルのそれぞれについて、そのチャネルのH×Wの要素のそれぞれの値に、アテンションマップの対応する位置の重みをかけた値の空間方向(H×W)の総和を、Dt次元の中間ベクトルの要素の値として算出する。そしてトークン生成部64は中間ベクトルと、チャネル重みベクトルとの要素積を、Dt次元のトークンのベクトルの値として算出する。第1トークンの生成における要素の算出では、アテンションマップのうち第1のマップが用いられ、第2トークンの生成における要素の算出では、アテンションマップのうち第2のマップが用いられる。
【0056】
チャネル重みベクトルは、第1トークンの生成の際に用いられる第1チャネル重みベクトルと、第2トークンの生成の際に用いられる第2チャネル重みベクトルとを含む。第1チャネル重みベクトル、第2チャネル重みベクトルはともにDt次元のベクトルであり、それぞれ、オブジェクトの特徴を示す第1特徴ベクトルおよび第2特徴ベクトルに基づいて生成される。各要素があらかじめ定められた値(例えばランダム値)を有するDt×Dkのパラメータ行列との内積(線形写像)によりDt次元のチャネル重みベクトルが生成されてもよい。またDtとDkとが同じ値である場合には、第1特徴ベクトルおよび第2特徴ベクトルがそのまま第1チャネル重みベクトルおよび第2チャネル重みベクトルになってもよい。
【0057】
ここで、トークン生成部64は、アテンションマップの各領域の位置に応じた値を有する配列と、トークンの生成に用いたアテンションマップとに基づいて、PEベクトルを生成する。PEベクトルは、トークンとともにイベント予測部66(第1予測器67,第2予測器68)に入力される。トークンとPEベクトルとのセットが入力される第1予測器67,第2予測器68はLSTM(Long Short Term Memory)モデルを有する。なお、第1予測器67,第2予測器68はTransformerモデルを有してもよい。
【0058】
PEベクトルは、以下に示すPositional Encodingの処理により生成される。はじめに、トークン生成部64は、アテンションマップと同じ縦横サイズを有し、左上側の要素に[-1,-1]、右下側の要素に[1,1]を有するグリッドの配列(大きさ2×H×W)を生成する。グリッドの要素は2次元ベクトルである。次にトークン生成部64は、グリッドの各要素[u,v]に対して、以下のベクトルを算出する。
【0059】
【0060】
ここで、Lはハイパーパラメータであり、例えばL=10としている。すると、この例では、算出されるベクトルの次元Fは4×10=40である。トークン生成部64は、算出されたベクトルをグリッド状に並べたF×H×Wの配列を生成する。トークン生成部64は、配列のうち算出されたベクトルの各要素に対応するH×Wの要素のそれぞれの値に、アテンションマップの対応する位置の重みをかけた値の空間方向(H×W)の総和をとることで、4×L次元のベクトルを得る。これがPEベクトルである。
【0061】
本実施形態では、画像特徴生成部61がアテンションマップを用いてトークンを生成している。一方、教師データには、アテンションマップを生成するためのオブジェクトの明示的な位置情報は存在しない。マップ生成部63が、オブジェクトに応じてマップソースからアテンションマップを生成する構成を含み、その構成を含む全体学習モデル54の学習によってイベント発生予測に重要な部位にアテンションマップが注目するようになるからである。この構成により、複数のオブジェクトが存在するような場合であっても、そのオブジェクトの位置を明示的に指定せずにアテンションマップを利用することが可能になる。オブジェクトごとのアテンションマップを用いることで、例えばオブジェクトの位置が左右反転しうるような状況であっても、複数のオブジェクトが存在する動画から特定のオブジェクトに着目した特徴をより容易に検出することができる。
【0062】
動画コンテンツのクリップから取得された複数のフレーム群のそれぞれについてトークンが生成されると、イベント予測部66は、それらのトークンに基づいて、オブジェクトのそれぞれについて生じるイベントの有無または種類を示すイベント情報を出力する。イベント情報は、第1のオブジェクトに生じるイベントの有無または種類を示す第1イベント情報と、第2のオブジェクトに生じるイベントの有無または種類を示す第2イベント情報と、を含む。第1予測器67は第1イベント情報を出力し、第2予測器68は第2イベント情報を出力する。なお、第1トークンおよび第2トークンに基づいて、第1イベント情報が生成される。第2イベント情報も第1トークンおよび第2トークンに基づいて生成される。
【0063】
図7は、イベント予測部66の処理を説明する図である。イベント予測部66は、複数のフレーム群のそれぞれについて画像特徴生成部61から出力された第1トークンおよび第2トークンから、第1予測器67に入力する第1連結情報と、第2予測器68に入力する第2連結情報とを生成する。第1連結情報は、第1トークンの要素と第2トークンの要素とが並ぶベクトルであってよく、第2連結情報は、第1連結情報における第1トークンの要素と第2トークンの要素とが交換された情報であってよい。例えば、第1連結情報は、順に並ぶ第1トークンの要素の後ろに、順に並ぶ第2トークンの要素が付加されたものであってよく、第2連結情報は、順に並ぶ第2トークンの要素の後ろに、順に並ぶ第1トークンの要素が付加されたものであってよい。さらにいえば、上記の並べられる第1トークンの要素の直後に、その第1トークンとともに生成されたPEベクトルの要素が配置され、その並べられる第2トークンの要素の直後にその第1トークンとともに生成されたPEベクトルの要素が配置されてよい。
【0064】
なお、1つのクリップについて時系列の複数の第1連結情報および複数の第2連結情報が生成され、複数の第1連結情報が一度に第1予測器67に入力され、複数の第2連結情報が一度に第2予測器68に入力されてよい。
【0065】
第1予測器67および第2予測器68のそれぞれは機械学習モデルの一種であり、いわゆるTransformerモデルまたはRNNを含んでよい。第1予測器67は時系列の複数の第1連結情報に基づいて発生するイベントを示す第1イベント情報をラベルとして出力し、第2予測器68は時系列の複数の第2連結情報に基づいて発生するイベントを示す第2イベント情報をラベルとして出力する。第1イベント情報、第2イベント情報は、それぞれ第1オブジェクト、第2オブジェクトにイベントが生じる可能性を示す予測スコアであって良い。時系列の第1連結情報、第2連結情報により、第1予測器67および第2予測器68が状況の時間変化に基づいてイベントを予測できる。
【0066】
ここで、第1予測器67および第2予測器68は同じ内部構成を有し、学習パラメータが共通である。第1連結情報と第2連結情報とのデータの特徴から、内部構成および学習パラメータが同じであっても正常に学習させることができる。同一の予測器が、情報の連結順序に応じて予測対象となるオブジェクトを切り替える(例えば、常に連結された前側の情報に対応するオブジェクトのイベントを予測する)構成にすることで、第1、第2オブジェクトに関する情報の形式が同じになるよう学習される。これにより、学習によって、トークン内にオブジェクト固有の情報を持たなくなり、アテンションマップがオブジェクトの識別を担い、トークンが(オブジェクトに依存しない)イベントに関する情報を保持する、という役割分担をすることが期待される。
【0067】
学習制御部55は、イベント予測部66の出力と、正解生成部52により生成された正解データとに基づいて、全体学習モデル54に含まれる機械学習モデル(エンコーダ62、第1予測器67、第2予測器68)の学習パラメータを調整する。学習パラメータは例えばニューラルネットワークにおける重みであり、その調整においては、いわゆるバックプロパゲーションが用いられてよい。
【0068】
本実施形態では、機械学習モデルの学習のための正解データは人出で作成されるものではなく、同じ動画コンテンツに含まれる情報から主にルールベースで生成される。これにより、学習データの作成が容易になり、機械学習モデルを用いて動画中のイベントに関する特徴をより容易に検出することができる。またゲームのプレイ動画のような動画コンテンツにおいて、画像中の特定の領域や音声の変化はイベントと関連する蓋然性が高い。これらの情報から正解データを生成することで、正解データの一定の質を確保することもできる。
【0069】
イベント予測部66は、これまでに説明したものでなくてもよく、例えば入力されたトークンに基づいて音声のメルスペクトログラムを予測する機械学習モデルであってもよい。この場合には、全体学習モデル54は、クリップから取得されるフレーム群およびオブジェクトの特徴を示すベクトルと、正解生成部52が正解データとして取得したメルスペクトログラムとを含む学習データに基づいて学習されてよい。
【0070】
またオブジェクトの種類が少ない場合には、オブジェクトの特徴を示す特徴量が用いられなくてもよい。より具体的には、情報抽出部51は、アイコン領域の抽出や、ステップS105の処理は行われず、また画像特徴生成部61に特徴量が入力されなくてよい。この場合、画像特徴生成部61の構成はアテンションマップを用いる公知の構成を用いてよい。このような構成、または、全体学習モデル54がトークンを出力せず、直接的にイベントを予測する構成であっても、本実施形態に示される学習手法により、正解データを明示的に生成することなく学習できる。
【0071】
次に、学習済の機械学習モデルの利用方法について説明する。
図8は、検索部57による動画コンテンツの検索に関する処理を示すフロー図である。
図8において、ステップS301からS304の処理は、インデックス作成処理であり、ステップS306からS310の処理は、検索処理である。インデックス作成処理は、検索対象となる動画コンテンツから、その動画コンテンツに含まれるフレーム群についてのトークンを抽出し、動画コンテンツ中のフレーム群を示す情報(例えば動画コンテンツ中のそのフレーム群に対応する区間を示す情報)とトークンとを関連付けてストレージ12に格納する処理である。検索処理は、ストレージ12に格納されたトークンと、学習済の画像特徴生成部61とを用いて、クエリ動画についてテンプレートトークンを取得し、その取得されたテンプレートトークンとストレージ中のトークンとの類似度に基づいて、類似する動画コンテンツとその動画コンテンツ中の区間を検出する処理である。
【0072】
はじめに、情報抽出部51は、検索対象となる動画コンテンツから複数のフレーム群を生成し、フレーム群に含まれる1または複数の画像の対象領域70およびアイコン領域を抽出する(ステップS301)。フレーム群は、これまでに説明されたものと同様である。次に、アイコン抽出部53は、アイコン領域からオブジェクトの種類を示す特徴量を抽出する(ステップS302)。ステップS301,S302の処理の詳細は、
図3のステップS102,S103,S106の処理と同様である。なお、付属情報の抽出および付属情報に基づく正解データの生成は行われない。
【0073】
そして、学習済の画像特徴生成部61には、複数のフレーム群に含まれる画像の対象領域70および特徴量が入力され、画像特徴生成部61は、その入力された複数の対象領域70および特徴量に対してトークンを出力する(ステップS303)。検索部57は、フレーム群のそれぞれについて出力されたトークンを、動画コンテンツ中の抽出の対象となった画像を含むフレーム群を示す情報(例えばフレーム群の先頭の時間的位置)と関連付けてストレージ12に格納する(ステップS304)。ステップS301からS304の処理は、動画コンテンツに含まれるフレーム群のそれぞれに対して行われてよく、さらに、複数の動画コンテンツのそれぞれについて行われてよい。
【0074】
動画コンテンツに含まれるフレーム群について出力されたトークンがストレージ12に格納されたのちに、検索部57はクエリ動画から複数のフレーム群を取得する(ステップS306)。そして情報抽出部51は、クエリとなるフレーム群に含まれる画像のそれぞれから対象領域70およびアイコン領域を抽出する(ステップS307)。またアイコン抽出部53は、アイコン領域からオブジェクトの種類を示す特徴量を抽出する(ステップS308)。対象領域70およびアイコン領域の抽出の手法は
図3のステップS102,S103と同じであり、特徴量を抽出する手法はステップS105と同じである。
【0075】
そして、フレーム群ごとに、学習済の画像特徴生成部61には、クエリとなるフレーム群に含まれる画像の対象領域70および特徴量が入力され、画像特徴生成部61は、その入力されたフレーム群についてトークン(テンプレートトークン)を出力する(ステップS309)。
【0076】
検索部57は、ストレージ12に格納されたトークンと、出力されたテンプレートトークンとの類似度に基づいて、クエリ動画に類似する、検索対象となる動画コンテンツを取得する(ステップS310)。より具体的には、検索部57は、クエリ動画からの複数のテンプレートトークンと、検索対象となる動画コンテンツ中のフレーム群に関連付けて記憶された複数のトークンとの類似度を算出し、その類似度に基づくスコアを算出する。そして、検索部57はそのスコアが閾値より大きいフレーム群(類似するフレーム群)を示す情報に基づいて、そのフレーム群を含む動画コンテンツおよびその動画コンテンツ中の位置を取得する。
【0077】
また検索部57は、取得された動画コンテンツの区間を示す情報を出力する。出力される情報は、単位動画の時間的位置を示す情報であってもよいし、動画コンテンツのその単位動画の前後を含む動画データの出力であってもよい。
【0078】
本実施形態では、動画コンテンツから生成される正解データとしてのイベントを用いて全体学習モデル54を学習させているが、学習済の機械学習モデルのうち一部だけを学習後の検索に用いている。言い換えると、学習済の全体学習モデル54の一部である画像特徴生成部61から出力されるトークンを用いて類似する動画コンテンツ中のタイミングを検出している。これは、これまでに説明した学習手法により、トークンが動画コンテンツにおけるイベントに関する情報を含むことにより可能になっている。このような手法により、動画コンテンツの各場面における状況を自動的に識別することも可能となる。
【符号の説明】
【0079】
1 情報処理装置、11 プロセッサ、12 ストレージ、13 通信インタフェース、14 入出力インタフェース、15 表示コントローラ、51 情報抽出部、52 正解生成部、53 アイコン抽出部、54 全体学習モデル、55 学習制御部、57 検索部、61 画像特徴生成部、62 エンコーダ、63 マップ生成部、64 トークン生成部、66 イベント予測部、67 第1予測器、68 第2予測器、70 対象領域、71 第1アイコン領域、72 第2アイコン領域、75 第1付属領域、76 第2付属領域、81 第1オブジェクト、82 第2オブジェクト。
【要約】
【課題】機械学習モデルを用いて動画中のイベントに関する特徴をより容易に検出すること。
【解決手段】画像解析システムは、動画コンテンツから、当該動画コンテンツを構成する複数の画像のそれぞれの一部である入力領域と、前記入力領域と異なる情報である付属情報とを抽出し、前記抽出された付属情報から正解データを生成し、前記入力領域と前記正解データとを含む教師データを用いて機械学習モデルを学習させる。
【選択図】
図3