(57)【要約】  適切に負荷を推定することが困難なメディアデータ認識処理において、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができるメディアデータ処理システムを提供する。第１負荷推定部５は、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する。判定部３１は、その処理負荷の範囲に基づいて、メディアデータ認識処理の実行を許可とするか、不許可とするか、処理負荷を推定するかを判定する。処理負荷を推定すると判定された場合、第２負荷推定部６は、メディアデータの内容に基づいて、メディアデータ認識処理の処理負荷を推定する。そして、判定部３１は、その処理負荷に基づいて、メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する。
2020105091.tif 000002
【特許請求の範囲】
【請求項１】
メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する第１負荷推定部と、
前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定する第２負荷推定部と、
前記第１負荷推定部によって推定された前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、前記第２負荷推定部によって推定された前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する判定部とを備え、
前記第２負荷推定部は、
前記判定部によって、処理負荷を推定すると判定された場合に、前記メディアデータ認識処理の処理負荷を推定する
ことを特徴とするメディアデータ処理システム。
【請求項２】
メディアデータは、画像データであり、
第１負荷推定部は、
前記画像データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数のうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、
第２負荷推定部は、
前記画像データが表わす画像に写っている被写体に関する情報に基づいて、前記メディアデータ認識処理の処理負荷を推定する
請求項１に記載のメディアデータ処理システム。
【請求項３】
メディアデータは、音データであり、
第１負荷推定部は、
前記音データのヘッダ情報が表わしている音の時間長、チャネル数、ビットレートのうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、
第２負荷推定部は、
前記音データにおける所定の音が生じる時間区間の情報に基づいて、前記メディアデータ認識処理の処理負荷を推定する
請求項１に記載のメディアデータ処理システム。
【請求項４】
メディアデータは、動画データであり、
第１負荷推定部は、
前記動画データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数、動画の時間長のうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、
第２負荷推定部は、
前記動画データが表わす動画に写っている被写体に関する情報に基づいて、前記メディアデータ認識処理の処理負荷を推定する
請求項１に記載のメディアデータ処理システム。
【請求項５】
第１負荷推定部は、
メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷を推定するための第１の指標を取得し、当該第１の指標に基づいて、前記メディアデータ認識処理の処理負荷の範囲を推定し、
第２負荷推定部は、
前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定するための第２の指標を取得し、当該第２の指標に基づいて、前記メディアデータ認識処理の処理負荷を推定する
請求項１から請求項４のうちのいずれか１項に記載のメディアデータ処理システム。
【請求項６】
第２負荷推定部は、
第１のアルゴリズムに従って第２の指標を取得し、当該第２の指標に基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、
判定部は、
前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、
前記第２負荷推定部は、
前記判定部によって、処理負荷を推定すると判定された場合に、前記第１のアルゴリズムよりも高い精度で第２の指標を取得可能な第２のアルゴリズムに従って、第２の指標を取得し、当該第２の指標に基づいて、メディアデータ認識処理の処理負荷を推定し、
前記判定部は、
前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する
請求項５に記載のメディアデータ処理システム。
【請求項７】
判定部によって、メディアデータに対するメディアデータ認識処理の実行を許可とすると判定された場合に、前記メディアデータ認識処理を実行する認識処理実行部を備える
請求項１から請求項６のうちのいずれか１項に記載のメディアデータ処理システム。
【請求項８】
メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、
前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、
処理負荷を推定すると判定した場合に、前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定し、
前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する
ことを特徴とするメディアデータ処理方法。
【請求項９】
コンピュータに、
メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する第１負荷推定処理、
前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定する第２負荷推定処理、および、
前記第１負荷推定処理で推定された前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、前記第２負荷推定処理で推定された前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する判定処理を実行させ、
前記判定処理で、処理負荷を推定すると判定された場合に、前記第２負荷推定処理を実行させる
ためのメディアデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メディアデータに対するメディアデータ認識処理の実行を許可するか否かを判定するメディアデータ処理システム、メディアデータ処理方法およびメディアデータ処理プログラムに関する。
【背景技術】
【０００２】
メディアデータとは、画像データ、音データまたは映像データである。ここで、画像データは、静止画を表わすデータであり、映像データは、動画を表わすデータである。従って、映像データを動画データと称することもできる。【０００３】
また、メディアデータ認識処理とは、メディアデータが表わしている人や物を認識する処理である。メディアデータ認識処理の例として、画像データが表わす画像に写っている人が誰であるのかを認識したり、画像データが表わす画像に写っている物が何であるのかを認識したりする処理が挙げられる。また、メディアデータ認識処理の他の例として、音データが表わす音が誰の声であるのかを認識したり、音データが表わす音が何の音であるのかを認識したりする処理が挙げられる。なお、これらの処理は、メディアデータ認識処理の例であり、メディアデータ認識処理は、上記の例に限定されない。以下、メディアデータ認識処理を、単に、認識処理と記す場合がある。【０００４】
また、メディアデータには、そのメディアデータの属性や概要を示すヘッダ情報が付加されている。【０００５】
また、特許文献１には、オペレータからの新たな処理要求に応答してその時点のＣＰＵ（Central Processing Unit ）負荷率を測定し、さらに、その処理要求が実行された場合の予測負荷率を計算し、その要求処理の実行可否を判定する装置が記載されている。【０００６】
また、特許文献２には、サーバの負荷低減効果が高いと考えられる特定のリクエストパターンを選択的に制限する装置が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平３−２８９３９号公報
【特許文献２】特許第４４１１２９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
一般に、処理時間の長い要求（換言すれば、負荷の高い要求）によってリソース（計算資源）が専有されると、他の要求を処理できない。そして、処理できない要求の送信元（例えば、クライアント）に対して、要求に応じた処理の実行を不許可とすることを通知する。この場合、要求処理率が低下することになる。要求処理率とは、要求の発生数に対する、処理が実行された要求の数の割合である。【０００９】
ここで、負荷が高いと推定される要求に対して、その要求に応じた処理の実行を選択的に不許可として、要求処理率を向上させることが考えられる。【００１０】
メディアデータ認識処理では、メディアデータの内容に応じて負荷にばらつきがある。そのため、メディアデータに応じた認識処理の負荷を適切に推定することは困難である。【００１１】
メディアデータのヘッダ情報が表わしている属性値等に基づいて、認識処理の負荷を推定する場合、負荷の推定精度は低い。【００１２】
また、メディアデータの内容に基づいて、認識処理の負荷を推定する場合、負荷の推定精度は高いが、負荷の推定処理のために時間がかかってしまい、応答時間（認識処理を完了するまでの時間）が増加してしまう。【００１３】
メディアデータ認識処理のように、認識処理の負荷を精度よく推定することが困難である場合や、認識処理の負荷を精度よく推定するためには負荷推定処理に時間がかかってしまう場合があるとき、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることが好ましい。【００１４】
また、特許文献１，２には、認識処理の負荷にばらつきのあるメディアデータに対して認識処理を実行することは記載されていない。【００１５】
本発明は、適切に負荷を推定することが困難なメディアデータ認識処理において、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができるメディアデータ処理システム、メディアデータ処理方法およびメディアデータ処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明によるメディアデータ処理システムは、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する第１負荷推定部と、前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定する第２負荷推定部と、前記第１負荷推定部によって推定された前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、前記第２負荷推定部によって推定された前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する判定部とを備え、前記第２負荷推定部が、前記判定部によって、処理負荷を推定すると判定された場合に、前記メディアデータ認識処理の処理負荷を推定することを特徴とする。【００１７】
本発明によるメディアデータ処理方法は、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、処理負荷を推定すると判定した場合に、前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定し、前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定することを特徴とする。【００１８】
本発明によるメディアデータ処理プログラムは、コンピュータに、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する第１負荷推定処理、前記メディアデータの内容に基づいて、前記メディアデータ認識処理の処理負荷を推定する第２負荷推定処理、および、前記第１負荷推定処理で推定された前記処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、前記第２負荷推定処理で推定された前記処理負荷と、前記使用可能な計算資源を示す情報とに基づいて、前記メディアデータに対する前記メディアデータ認識処理の実行を許可とするか、不許可とするかを判定する判定処理を実行させ、前記判定処理で、処理負荷を推定すると判定された場合に、前記第２負荷推定処理を実行させることを特徴とする。
【発明の効果】
【００１９】
本発明によれば、適切に負荷を推定することが困難なメディアデータ認識処理において、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態のメディアデータ処理システムの例を示すブロック図である。
【図２】推定部４に含まれる第１負荷推定部５および第２負荷推定部６をより具体的に示すブロック図である。
【図３】第１負荷モデルの例を示す模式図である。
【図４】推定された処理負荷の範囲の例を示す模式図である。
【図５】第２負荷モデルの例を示す模式図である。
【図６】推定された処理負荷の例を示す模式図である。
【図７】要求処理部７をより具体的に示すブロック図である。
【図８】要求許容数モデルの例を示す模式図である。
【図９】処理状態テーブルの例を示す模式図である。
【図１０】図４に示す処理負荷の範囲が与えられた場合の判定結果を示す説明図である。
【図１１】図６に示す処理負荷が与えられた場合の判定結果を示す説明図である。
【図１２】本発明の実施形態の処理経過の例を示すフローチャートである。
【図１３】本発明の実施形態の処理経過の例を示すフローチャートである。
【図１４】図４に示す画像データ１〜４に対して、本発明の実施形態を適用した場合における判定結果および応答時間を示す説明図である。
【図１５】図４に示す画像データ１〜４に対して、第１段階のみを適用し、ステップＳ４で「許可」または「不許可」のいずれかの判定結果のみを得ると仮定した場合における判定結果および応答時間を示す説明図である。
【図１６】図４に示す画像データ１〜４に対して、第２段階のみを適用し、ステップＳ７で「許可」または「不許可」のいずれかの判定結果を得ると仮定した場合における判定結果および応答時間を示す説明図である。
【図１７】推定部４がクライアントに設けられ、要求処理部７がサーバに設けられる場合のメディアデータ処理システムの構成例を示すブロック図である。
【図１８】第２段階をさらに２つの段階に分ける場合の処理経過の例を示すフローチャートである。
【図１９】第２段階をさらに２つの段階に分ける場合の処理経過の例を示すフローチャートである。
【図２０】本発明の実施形態のメディアデータ処理システムに係るコンピュータの構成例を示す概略ブロック図である。
【図２１】本発明のメディアデータ処理システムの概要を示すブロック図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施形態を図面を参照して説明する。なお、既に述べたように、メディアデータ認識処理を、単に、認識処理と記す場合がある。
【００２２】
図１は、本発明の実施形態のメディアデータ処理システムの例を示すブロック図である。図１では、クライアントサーバシステムのサーバ１がメディアデータ処理システムに該当する場合を例示している。以下の説明では、メディアデータ処理システムを、サーバ１と記す。サーバ１には、クライアント２が通信可能に接続されている。
【００２３】
また、以下の説明では、メディアデータが画像データである場合を例にして説明する。メディアデータが、音データや映像データ（動画データ）である場合については、後述する。前述のように、メディアデータには、そのメディアデータの属性や概要を示すヘッダ情報が付加されている。メディアデータが画像データである場合、画像データのヘッダ情報は、例えば、画像の解像度、画像のチャネル数、画像のピクセル当たりのビット数等の属性値を表わしている。画像の解像度は、画像のサイズと称することもできる。また、画像のチャネル数は、例えば、画像がモノクロ画像である場合には１であり、画像がカラー画像である場合には３である。
【００２４】
クライアント２は、サーバ１に対して、メディアデータ（ここでは、画像データ）と、その画像データに対する認識処理（メディアデータ認識処理）の要求とを送信する。
【００２５】
サーバ（メディアデータ処理システム）１は、通信部３と、推定部４と、要求処理部７とを備える。
【００２６】
通信部３は、クライアント２から、画像データと、その画像データに対する認識処理の要求とを受信する。また、通信部３は、サーバ１において、要求された認識処理の実行を不許可とする旨の判定が行われた場合、クライアント２にその判定結果を送信する。また、通信部３は、要求された認識処理が実行された場合、その認識処理の結果をクライアント２に送信する。
【００２７】
推定部４は、クライアント２が送信した画像データに対する認識処理の処理負荷の範囲や、認識処理の処理負荷を推定する。本実施形態では、認識処理の処理負荷を、認識処理に要する時間で表す。また、認識処理に要する時間を、認識処理時間と記す。
【００２８】
推定部４は、第１負荷推定部５と、第２負荷推定部６とを備える。
【００２９】
第１負荷推定部５は、画像データのヘッダ情報に基づいて、画像データに対する認識処理の処理負荷の範囲を推定する。より具体的には、第１負荷推定部５は、画像データのヘッダ情報に基づいて、認識処理の処理負荷を推定するための第１の指標を取得し、その第１の指標に基づいて、認識処理の処理負荷の範囲を推定する。第１負荷推定部５は、画像データのヘッダ情報が表わしている画像の解像度、画像のチャネル数、画像のピクセル当たりのビット数のうちの少なくともいずれかを、第１の指標としてヘッダ情報から読み込み、その第１の指標に基づいて、認識処理の処理負荷の範囲を推定する。すなわち、第１負荷推定部５は、画像データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数のうちの少なくともいずれかに基づいて、認識処理の処理負荷の範囲を推定する。
【００３０】
第２負荷推定部６は、画像データの内容に基づいて、画像データに対する認識処理の負荷を推定する。より具体的には、第２負荷推定部６は、画像データの内容に基づいて、認識処理の処理負荷を推定するための第２の指標を取得し、その第２の指標に基づいて、認識処理の処理負荷を推定する。第２負荷推定部６は、画像データが表わす画像に写っている被写体に関する情報を、第２の指標として導出し、その第２の指標に基づいて、認識処理の処理負荷を推定する。すなわち、第２負荷推定部６は、画像データが表わす画像に写っている被写体に関する情報に基づいて、認識処理の処理負荷を推定する。以下の説明では、画像に写っている被写体に関する情報が、画像に写っている人の顔の数である場合を例にして説明するが、この例に限定されない。例えば、被写体は、物であってもよい。
【００３１】
要求処理部７は、推定された処理負荷の範囲、または、推定された処理負荷を用いて、要求された認識処理（画像データに対する認識処理）の実行を許可とするか、不許可とするか等を判定する。そして、要求された認識処理の実行を許可すると判定した場合、要求処理部７は、その認識処理を実行する。
【００３２】
図２は、推定部４に含まれる第１負荷推定部５および第２負荷推定部６をより具体的に示すブロック図である。
【００３３】
第１負荷推定部５は、第１の指標取得部１１と、第１推定部１２と、第１中継部１４とを備える。第１推定部１２は、第１負荷モデル１３を予め記憶する。第１負荷モデル１３については後述する。
【００３４】
第２負荷推定部６は、第２の指標取得部２１と、第２推定部２２と、第２中継部２４とを備える。第２推定部２２は、第２負荷モデル２３を予め記憶する。第２負荷モデル２３については後述する。
【００３５】
第１の指標取得部１１は、通信部３（図１参照）から、画像データと、その画像データに対する認識処理の要求とを受け取る。そして、第１の指標取得部１１は、その画像データのヘッダ情報が表わしている画像の解像度、画像のチャネル数、画像のピクセル当たりのビット数のうちの少なくともいずれかを、第１の指標としてそのヘッダ情報から読み込む。以下の説明では、画像の解像度を第１の指標とする場合を例にして説明するが、チャネル数や、ピクセル当たりのビット数を第１の指標とした場合であっても、本実施形態の動作は同様である。
【００３６】
第１推定部１２は、第１の指標取得部１１がヘッダ情報から読み込んだ解像度（第１の指標）と、第１負荷モデル１３とに基づいて、画像データに対する認識処理の処理負荷の範囲を推定する。第１負荷モデル１３は、第１の指標から、認識処理の処理負荷の範囲を導出するためのモデルである。第１負荷モデル１３は、予め、機械学習によって学習され、第１推定部１２に記憶されている。
【００３７】
図３は、第１負荷モデル１３の例を示す模式図である。図３に模式的に示すように、第１負荷モデル１３に基づいて、解像度から、認識処理の処理負荷（認識処理時間）の範囲を推定することができる。解像度が大きくなるほど、認識処理時間の最小値、平均値および最大値それぞれの推定値は増加する。この点は、チャネル数や、ピクセル当たりのビット数を第１の指標として用いる場合も同様である。第１推定部１２は、解像度を第１負荷モデル１３に適用することによって、認識処理の処理負荷（認識処理時間）の範囲を推定する。本実施形態では、第１推定部１２は、解像度と第１負荷モデル１３とに基づいて、認識処理の処理負荷の最小値、平均値および最大値をそれぞれ推定する。その結果、最小値から最大値までの範囲が、処理負荷の範囲として得られる。
【００３８】
図４は、推定された処理負荷の範囲の例を示す模式図である。図４に示す例では、画像データ１，２，３，４がそれぞれ別個に、クライアント２から送信された場合を示している。すなわち、画像データ１〜４が同時にクライアント２から送信されたことを示しているわけではない。また、図４では、推定処理時間（負荷範囲の推定に要する時間）も合わせて図示している。ヘッダ情報から第１の指標（ここでは、解像度）を取得するのに要する時間は、ほとんどかからないので、画像データによらず推定処理時間は０ｍｓとなる。
【００３９】
第１中継部１４は、画像データと、その画像データに対する認識処理の要求と、第１推定部１２によって推定された認識処理の処理負荷（認識処理時間）の範囲とを、要求処理部７が備える判定部３１（後述の図７を参照。）に送る。また、その判定部３１から、処理負荷を推定する旨の指示が送られた場合、第１中継部１４は、その指示（処理負荷を推定する旨の指示）と、画像データと、その画像データに対する認識処理の要求とを第２の指標取得部２１に送る。
【００４０】
第２の指標取得部２１は、その指示（処理負荷を推定する旨の指示）と、画像データと、その画像データに対する認識処理の要求とを受け取ると、画像データの内容（画像データが表わす画像）に基づいて、その画像に写っている人の顔の数を、第２の指標として導出する。画像に写っている人の顔の数を導出する処理は、公知の処理でよい。
【００４１】
第２推定部２２は、第２の指標取得部２１が導出した、画像に写っている人の顔の数（第２の指標）と、第２負荷モデル２３とに基づいて、画像データに対する認識処理の処理負荷を推定する。第２負荷モデル２３は、第２の指標から、認識処理の処理負荷を導出するためのモデルである。第２負荷モデル２３は、予め、機械学習によって学習され、第２推定部２２に記憶されている。
【００４２】
なお、以下の説明では、第２負荷モデル２３に第２の指標を適用することで、認識処理の処理負荷の最小値、平均値および最大値をそれぞれ推定可能である場合を例にして説明する。そして、その平均値を、認識処理の処理負荷の推定値とするものとする。第２の指標と第２負荷モデル２３とに基づいて、処理負荷の最小値および最大値も推定可能である。しかし、本実施形態では、第２推定部２２は、処理負荷の最小値および最大値に関しては推定しなくてよい。
【００４３】
図５は、第２負荷モデル２３の例を示す模式図である。図５に模式的に示すように、第２負荷モデル２３に基づいて、画像に写っている人の顔の数から、認識処理の処理負荷（認識処理時間）を推定することができる。第２推定部２２は、画像に写っている人の顔の数を第２負荷モデル２３に適用することによって、認識処理の処理負荷の平均値を導出し、導出した値を、認識処理の処理負荷とする。
【００４４】
図６は、推定された処理負荷の例を示す模式図である。ここでは、図６に示す例では、便宜的に、第２推定部２２が、図４に示す画像データ１〜４のうち、画像データ２，３に関して、それぞれ、認識処理の処理負荷を推定した場合を示している。また、図６では、推定処理時間も合わせて図示している。第２の指標（本例では、画像に写っている人の顔の数）は、画像に写っている被写体に関する情報であり、第２の指標の導出には時間がかかる。そのため、第２推定部２２が処理負荷を推定する場合の推定処理時間は、第１推定部１２が処理負荷の範囲を推定する場合の推定処理時間に比べて長い（図４、図６を参照）。
【００４５】
第２中継部２４は、画像データと、その画像データに対する認識処理の要求と、第２推定部２２によって推定された認識処理の処理負荷（認識処理時間）とを、要求処理部７が備える判定部３１（後述の図７を参照。）に送る。
【００４６】
図７は、要求処理部７をより具体的に示すブロック図である。要求処理部７は、判定部３１と、認識処理実行部３４とを備える。
【００４７】
判定部３１は、要求許容数モデル３２と、処理状態テーブル３３とを記憶する。判定部３１の動作の説明の前に、要求許容数モデル３２および処理状態テーブル３３について説明する。
【００４８】
要求許容数モデル３２は、認識処理の負荷範囲毎に定められた、同時に認識処理を実行できる要求数、および、認識処理の負荷範囲を考慮しない場合における、同時に認識処理を実行できる要求数を示す情報である。以下、前者を、範囲許容数と記し、後者を全体許容数と記す。
【００４９】
図８は、要求許容数モデル３２の例を示す模式図である。以下の説明では、説明を簡単にするために、認識処理実行部３４が、４つのＣＰＵコアによって、画像データに対する認識処理を実行する場合を例にする。また、認識処理の負荷範囲として、「０〜５００ｍｓ」の範囲と、「５００〜ｍｓ」の範囲とが定められている場合を例にする。図８に示す例では、負荷範囲「０〜５００ｍｓ」に該当する認識処理の要求については、４つまで許容可能であり、負荷範囲「５００〜ｍｓ」に該当する認識処理の要求については、２つまで許容可能であることを示している。また、全体許容数が４つであることを示している。従って、負荷範囲「０〜５００ｍｓ」に該当する認識処理の要求が４つ発生し、負荷範囲「５００〜ｍｓ」に該当する認識処理の要求が２つ発生したとしても、合計６個の要求に対する認識処理を同時に実行できるわけではなく、同時に認識処理を実行できる要求の最大値は４である。
【００５０】
要求許容数モデル３２として定められた値は、固定値である。ただし、図８に示す値は、例示であり、要求許容数モデル３２として定められる値は、図８に示す例に限定されない。
【００５１】
処理状態テーブル３３は、認識処理の負荷範囲毎の認識処理を実行中の要求数、および、それらの要求数の合計値を格納するテーブルである。処理状態テーブル３３は、認識処理実行部３４による認識処理の実行状況によって更新される。
【００５２】
図９は、処理状態テーブル３３の例を示す模式図である。処理状態テーブル３３において、認識処理の負荷範囲は、要求許容数モデル３２と同様に定められる。図９に示す例では、負荷範囲「０〜５００ｍｓ」に該当する認識処理の要求については、１つの要求に対する認識処理を実行中であることを示している。また、負荷範囲「５００〜ｍｓ」に該当する認識処理の要求については、２つの要求に対する認識処理を実行中であることを示している。従って、認識処理を実行中の要求数の合計値は、３となる。
【００５３】
新たに要求が発生した場合、その時点において、処理状態テーブル３３における合計値（図９参照）が全体許容数（図８参照）未満であり、その要求に応じた認識処理の負荷に該当する範囲における要求数が、その範囲の範囲許容数（図８参照）未満であるという条件が満たされる場合に、その要求に応じた認識処理の実行を許可できる。
【００５４】
要求許容数モデル３２および処理状態テーブル３３の組合せは、使用可能な計算資源を示す情報であるということができる。
【００５５】
次に、判定部３１の動作について説明する。なお、以下の説明では、判定部３１は、図８に示す要求許容数モデル３２と、図９に示す処理状態テーブル３３とを記憶しているものとする。
【００５６】
まず、判定部３１が、第１中継部１４から、画像データと、その画像データに対する認識処理の要求と、第１推定部１２によって推定された認識処理の処理負荷（認識処理時間）の範囲とを受け取った場合について、説明する。この場合、判定部３１は、その処理負荷の範囲と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、その画像データに対する認識処理の実行を許可とするか、不許可とするか、または、第２推定部２２によって処理負荷を推定するかを判定する。この動作を、より具体的に説明する。
【００５７】
判定部３１は、第１中継部１４から受け取った処理負荷の範囲と重なる認識処理の負荷範囲を、処理状態テーブル３３（要求許容数モデル３２でもよい。）から選択する。このとき選択される認識処理の負荷範囲は１つとは限らず、複数の負荷範囲が選択されてもよい。
【００５８】
選択された負荷範囲が１つである場合、判定部３１は、その負荷範囲において、画像データに対する認識処理の実行を許可とするか不許可とするかを、要求許容数モデル３２および処理状態テーブル３３に基づいて判定する。選択された負荷範囲が１つである場合、判定結果は、許可または不許可のいずれかである。
【００５９】
例えば、図４に示す画像データ１に応じた処理負荷の範囲（最小値６００、最大値２０００）と重なる認識処理の範囲は、「５００〜ｍｓ」のみである。このとき、処理状態テーブル３３における合計値（図９参照）は全体許容数（図８参照）未満である。しかし、「５００〜ｍｓ」における要求数（図９参照）は、その範囲の範囲許容数（図８参照）に達している。従って、判定部３１は、画像データ１に対する認識処理の実行を不許可と判定する。
【００６０】
また、例えば、図４に示す画像データ４に応じた処理負荷の範囲（最小値１００、最大値３００）と重なる認識処理の範囲は、「０〜５００ｍｓ」のみである。このとき、処理状態テーブル３３における合計値（図９参照）は全体許容数（図８参照）未満である。また、「０〜５００ｍｓ」における要求数（図９参照）は、その範囲の範囲許容数（図８参照）未満である。従って、判定部３１は、画像データ４に対する認識処理の実行を許可と判定する。
【００６１】
選択された負荷範囲が複数存在する場合、判定部３１は、その個々の負荷範囲毎に、画像データに対する認識処理の実行を許可とするか不許可とするかを判定する。個々の負荷範囲毎に得られた判定結果が全て「許可とする」という判定結果である場合、判定部３１は、最終的に、画像データに対する認識処理の実行を許可と判定する。同様に、個々の負荷範囲毎に得られた判定結果が全て「不許可とする」という判定結果である場合、判定部３１は、最終的に、画像データに対する認識処理の実行を不許可と判定する。
【００６２】
また、個々の負荷範囲毎に得られた判定結果の中に、「許可とする」という判定結果と、「不許可とする」という判定結果が含まれている場合、判定部３１は、第２推定部２２によって処理負荷を推定すると判定する。
【００６３】
例えば、図４に示す画像データ２に応じた処理負荷の範囲（最小値２００、最大値１２００）と重なる認識処理の範囲は、「０〜５００ｍｓ」および「５００〜ｍｓ」である。このとき、「０〜５００ｍｓ」に関しては「許可とする」という結果が得られ、「５００〜ｍｓ」に関しては「不許可とする」という結果が得られる。従って、この場合、判定部３１は、第２推定部２２によって処理負荷を推定すると判定する。図４に示す画像データ３に対する判定も同様である。
【００６４】
図１０は、図４に示す処理負荷の範囲が与えられた場合の判定結果を示す説明図である。図１０では、図４に示す表に、判定結果を示す列を加えている。
【００６５】
第２推定部２２によって処理負荷を推定するという判定結果が得られた場合、判定部３１は、処理負荷を推定する旨の指示を第１中継部１４に送る。この結果、第２推定部２２で処理負荷の範囲が推定される。
【００６６】
また、画像データに対する認識処理の実行を不許可と判定した場合、判定部３１は、通信部３（図１参照）を介して、要求に応じた認識処理の実行を不許可とした旨の情報を、クライアント２に送る。すなわち、判定部３１は、要求に応じた認識処理の実行を不許可とした旨の情報を通信部３に送り、通信部３は、その情報をクライアント２に送信する。
【００６７】
また、画像データに対する認識処理の実行を許可と判定した場合、判定部３１は、画像データと、その画像データに対する認識処理の要求を、認識処理実行部３４に送る。
【００６８】
次に、判定部３１が、第２中継部２４から、画像データと、その画像データに対する認識処理の要求と、第２推定部２２によって推定された認識処理の処理負荷（認識処理時間）とを受け取った場合について、説明する。この場合、判定部３１は、その処理負荷と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、その画像データに対する認識処理の実行を許可とするか、不許可とするかを判定する。処理負荷の範囲ではなく、処理負荷が与えられた場合、判定結果は、画像データに対する認識処理の実行を許可とするか、不許可とするかのいずれかである。この動作を、より具体的に説明する。
【００６９】
判定部３１は、第２中継部２４から受け取った処理負荷の値が含まれる認識処理の負荷範囲を、処理状態テーブル３３（要求許容数モデル３２でもよい。）から選択する。このとき選択される認識処理の負荷範囲は１つである。判定部３１は、その負荷範囲において、画像データに対する認識処理の実行を許可とするか不許可とするかを、要求許容数モデル３２および処理状態テーブル３３に基づいて判定する。
【００７０】
例えば、図６に示す画像データ２に応じた処理負荷の値（８００ｍｓ）は、認識処理の負荷範囲「５００〜ｍｓ」に含まれるので、判定部３１は、認識処理の負荷範囲として、「５００〜ｍｓ」を選択する。このとき、処理状態テーブル３３における合計値（図９参照）は全体許容数（図８参照）未満である。しかし、「５００〜ｍｓ」における要求数（図９参照）は、その範囲の範囲許容数（図８参照）に達している。従って、判定部３１は、従って、判定部３１は、画像データ２に対する認識処理の実行を不許可と判定する。
【００７１】
また、例えば、図６に示す画像データ３に応じた処理負荷の値（４００ｍｓ）は、認識処理の負荷範囲「０〜５００ｍｓ」に含まれるので、判定部３１は、認識処理の負荷範囲として、「０〜５００ｍｓ」を選択する。このとき、処理状態テーブル３３における合計値（図９参照）は全体許容数（図８参照）未満である。また、「０〜５００ｍｓ」における要求数（図９参照）は、その範囲の範囲許容数（図８参照）未満である。従って、判定部３１は、画像データ３に対する認識処理の実行を許可と判定する。
【００７２】
図１１は、図６に示す処理負荷が与えられた場合の判定結果を示す説明図である。図１１では、図６に示す表に、判定結果を示す列を加えている。
【００７３】
画像データに対する認識処理の実行を不許可と判定した場合、判定部３１は、通信部３（図１参照）を介して、要求に応じた認識処理の実行を不許可とした旨の情報を、クライアント２に送る。また、画像データに対する認識処理の実行を許可と判定した場合、判定部３１は、画像データと、その画像データに対する認識処理の要求を、認識処理実行部３４に送る。これらの点は、処理負荷の範囲に基づいて判定を行った場合と同様である。
【００７４】
認識処理実行部３４は、画像データに対する認識処理を実行する。すなわち、画像データに対する認識処理の実行を許可すると判定され、判定部３１から画像データと、その画像データに対する認識処理の要求を受け取った場合に、認識処理実行部３４は、その画像データに対する認識処理を実行する。例えば、認識処理実行部３４は、画像データが示す画像に写っている人が誰であるのかを認識する。
【００７５】
認識処理実行部３４は、公知の方法で、認識処理を実行すればよい。この点は、メディアデータが音データや動画データである場合も同様である。
【００７６】
通信部３は、例えば、メディアデータ処理プログラムに従って動作するコンピュータのＣＰＵ、および、そのコンピュータの通信インタフェースによって実現される。例えば、ＣＰＵが、コンピュータのプログラム記憶装置等のプログラム記録媒体からメディアデータ処理プログラムを読み込み、そのプログラムに従って、通信インタフェースを用いて、通信部３として動作すればよい。また、第１の指標取得部１１と、第１推定部１２と、第１中継部１４とを含む第１負荷推定部５、および、第２の指標取得部２１と、第２推定部２２と、第２中継部２４とを含む第２負荷推定部６を備える推定部４、並びに、判定部３１と、認識処理実行部３４とを備える要求処理部７は、例えば、メディアデータ処理プログラムに従って動作するコンピュータのＣＰＵによって実現される。例えば、ＣＰＵが、上記のようにプログラム記録媒体からメディアデータ処理プログラムを読み込み、そのプログラムに従って、上記の推定部４および要求処理部７として動作すればよい。また、認識処理実行部３４は、より具体的には、複数のＣＰＵコアによって実現される。
【００７７】
次に、処理経過について説明する。図１２および図１３は、本発明の実施形態の処理経過の例を示すフローチャートである。既に説明した事項については、詳細な説明を省略する。
【００７８】
まず、サーバ１の通信部３が、クライアント２から、画像データと、その画像データに対する認識処理の要求とを受信する（ステップＳ１）。
【００７９】
次に、第１の指標取得部１１が、第１の指標（本例では、画像の解像度）を、画像データのヘッダ情報から読み込む（ステップＳ２）。
【００８０】
次に、第１推定部１２が、その第１の指標に基づいて、画像データに対する認識処理の処理負荷の範囲を推定する（ステップＳ３）。なお、第１中継部１４は、その処理負荷の範囲を、画像データ等とともに、判定部３１に送る。
【００８１】
次に、判定部３１が、ステップＳ３で推定された処理負荷の範囲と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、画像データに対する認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定する（ステップＳ４）。
【００８２】
ステップＳ４での判定結果が「許可」である場合、認識処理実行部３４が、画像データに対する認識処理を実行する。そして、認識処理実行部３４が、通信部３を介して、認識処理の結果をクライアント２に送る（ステップＳ８、図１３参照）。また、ステップＳ４での判定結果が「許可」である場合、判定部３１は、処理状態テーブル３３を更新する。
【００８３】
ステップＳ４での判定結果が「不許可」である場合、判定部３１が、要求に応じた認識処理の実行を不許可とした旨の情報を、通信部３を介して、クライアント２に送る（ステップＳ９、図１３参照）。
【００８４】
ステップＳ４で「処理負荷を推定する」という判定結果を得た場合、判定部３１は、処理負荷を推定する旨の指示を、第１中継部１４に送り、第１中継部１４は、その指示と、画像データと、その画像データに対する認識処理の要求とを、第２の指標取得部２１に送る。そして、第２の指標取得部２１は、第２の指標（本例では、画像データが表わす画像に写っている人の顔の数）を導出する（ステップＳ５）。
【００８５】
次に、第２推定部２２が、その第２の指標に基づいて、画像データに対する認識処理の処理負荷を推定する（ステップＳ６）。なお、第２中継部２４は、その処理負荷を、画像データ等とともに、判定部３１に送る。
【００８６】
次に、判定部３１が、ステップＳ６で推定された処理負荷と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、画像データに対する認識処理の実行を許可とするか、不許可とするかを判定する（ステップＳ７）。
【００８７】
ステップＳ７での判定結果が「許可」である場合、認識処理実行部３４が、画像データに対する認識処理を実行する。そして、認識処理実行部３４が、通信部３を介して、認識処理の結果をクライアント２に送る（ステップＳ８）。また、ステップＳ７での判定結果が「許可」である場合、判定部３１は、処理状態テーブル３３を更新する。
【００８８】
ステップＳ７での判定結果が「不許可」である場合、判定部３１が、要求に応じた認識処理の実行を不許可とした旨の情報を、通信部３を介して、クライアント２に送る（ステップＳ９）。
【００８９】
ステップＳ８またはステップＳ９で処理を終了する。通信部３が、再度、クライアント２から画像データおよび要求を受信した場合には、ステップＳ１以降の処理を繰り返す。
【００９０】
なお、ステップＳ９において、判定部３１は、不許可とした旨の通知とともに、一定時間後に再度サーバ１に対して画像データに対する認識処理の要求を送信する旨の指示を、通信部３を介して、クライアント２に送ってもよい。この指示を受けたクライアント２は、一定時間後に、再度、画像データと、その画像データに対する認識処理の要求とを、サーバ１に送信すればよい。
【００９１】
本実施形態では、ステップＳ２で第１の指標取得部１１が、画像データのヘッダ情報から第１の指標を読み込み、ステップＳ３で第１推定部１２が、その第１の指標に基づいて、処理負荷の範囲を推定する。ヘッダ情報から第１の指標（ここでは、解像度）を取得するのに要する時間は、ほとんどかからないので、画像データによらず、推定処理時間（ステップＳ２〜Ｓ３の処理時間）は、ほぼ０ｍｓとなる。
【００９２】
そして、ステップＳ４で「許可」と判定された場合には、直ちに、ステップＳ８が実行される。従って、この場合、認識処理の終了までの時間（応答時間）は短くて済む。また、ステップＳ４で「不許可」と判定された場合には、直ちに、ステップＳ９が実行され、クライアント２に不許可の通知が送信されるまでの時間も短くて済む。
【００９３】
ステップＳ４で「処理負荷を推定する」という判定結果を得た場合には、ステップＳ５で第２の指標取得部２１が第２の指標を導出し、ステップＳ６で第２推定部２２が、その第２の指標に基づいて処理負荷を推定する。第２の指標の導出には時間がかかるので、推定処理時間（ステップＳ５〜Ｓ６の処理時間）は、ステップＳ２〜Ｓ３の処理時間に比べて長くなる。そのため、ステップＳ５〜Ｓ７の処理の後にステップＳ８に移行した場合には、応答時間が長くなる。また、ステップＳ５〜Ｓ７の処理の後にステップＳ９に移行した場合には、クライアント２に不許可の通知が送信されるまでの時間も長くなる。
【００９４】
しかし、本発明では、クライアント２からの全ての要求について、ステップＳ５以降の処理を実行するとは限らない。ステップＳ４からステップＳ８に移行した場合には、応答時間は短くて済む。また、ステップＳ４からステップＳ９に移行した場合には、クライアント２に不許可の通知が送信されるまでの時間も短くて済む。
【００９５】
そして、ステップＳ４で「処理負荷を推定する」という判定結果が得られた場合にのみ、ステップＳ５以降の処理を実行する。
【００９６】
また、ステップＳ４で「許可」と判定されなくても、ステップＳ７において「許可」と判定される場合もあるので、要求処理率の低下を抑制することができる。
【００９７】
従って、本実施形態によれば、認識処理の負荷を精度よく推定することが困難である場合や、認識処理の負荷を精度よく推定するためには負荷推定処理に時間がかかってしまう場合があるメディアデータ認識処理において、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができる。
【００９８】
図１４は、図４に示す画像データ１〜４に対して、本実施形態を適用した場合における判定結果および応答時間を示す説明図である。図１４では、ステップＳ２〜Ｓ４の処理（図１２参照。）を第１段階とし、ステップＳ５〜Ｓ７の処理（図１３参照。）を第２段階としている。また、第１段階における推定処理時間をＴ１で表し、第２段階における推定処理時間をＴ２で表している。推定処理時間Ｔ１は、ステップＳ２〜Ｓ３の処理時間であり、推定処理時間Ｔ２は、ステップＳ５〜Ｓ６の処理時間時間である。また、ステップＳ４，Ｓ７における判定処理の時間は、ほぼ０ｍｓであるものとする。ステップＳ４で「処理負荷を推定する」という判定結果を得た場合に、第２段階に進み、ステップＳ７で「許可」または「不許可」の判定結果が得られる。
【００９９】
応答時間は、ステップＳ４，Ｓ７で「許可」と判定された場合における推定処理時間と、ステップＳ８での認識処理に要する時間の和である。従って、判定結果が「許可」となる場合に、応答時間が得られる。ステップ４で「許可」と判定される場合には、推定処理時間Ｔ１と、認識処理に要する時間の和との和が応答時間となる。また、ステップＳ７で「許可」と判定される場合には、推定処理時間Ｔ１と、推定処理時間Ｔ２と、認識処理に要する時間の和との和が応答時間となる。なお、図１４に示す例では、画像データ３に対する認識処理に要する時間を４００ｍｓとし、画像データ４に対する認識処理に要する時間を２００ｍｓとしている。
【０１００】
図１４に示す例では、画像データ１〜４がそれぞれ個別に与えられた場合、画像データ３に対する認識処理の要求、および、画像データ４に対する認識処理の要求に関して、「許可」という判定結果が得られる。従って、要求処理率は５０％となる。また、平均応答時間は、（６００＋２００）／２＝４００ｍｓとなる。
【０１０１】
図１５は、図４に示す画像データ１〜４に対して、第１段階のみを適用し、ステップＳ４で「許可」または「不許可」のいずれかの判定結果のみを得ると仮定した場合における判定結果および応答時間を示す説明図である。ここでは、ステップＳ４で「処理負荷を推定する」という判定結果を得た場合には、その判定結果を「不許可」という判定結果であるとみなすものとする。また、画像データ４に対する認識処理に要する時間等は、図１４に示す場合と同じであるものとする。
【０１０２】
図１５に示す例では、画像データ１〜４がそれぞれ個別に与えられた場合、画像データ４に対する認識処理の要求に関して「許可」という判定結果が得られる。従って、要求処理率は２５％となる。また、平均応答時間は２００ｍｓとなる。
【０１０３】
図１６は、図４に示す画像データ１〜４に対して、第２段階のみを適用し、ステップＳ７で「許可」または「不許可」のいずれかの判定結果を得ると仮定した場合における判定結果および応答時間を示す説明図である。画像データ３に対する認識処理に要する時間や、画像データ４に対する認識処理に要する時間等は、図１４に示す場合と同じであるものとする。
【０１０４】
図１６に示す例では、画像データ１〜４がそれぞれ個別に与えられた場合、画像データ３に対する認識処理の要求、および、画像データ４に対する認識処理の要求に関して、「許可」という判定結果が得られる。従って、要求処理率は５０％となる。また、平均応答時間は、（６００＋４００）／２＝５００ｍｓとなる。
【０１０５】
画像データ１〜４に対して本発明の実施形態を適用した場合（図１４参照）と、画像データ１〜４に対して第１段階のみを適用した場合（図１５参照）とを比較する。第１段階のみを適用した場合には、平均応答時間は、本発明の実施形態を適用した場合に比べて短くなるが、要求処理率が、本発明の実施形態を適用した場合に比べて低下する（図１４、図１５を参照）。
【０１０６】
また、画像データ１〜４に対して本発明の実施形態を適用した場合（図１４参照）と、画像データ１〜４に対して第２段階のみを適用した場合（図１６参照）とを比較する。第２段階のみを適用した場合には、要求処理率は、本発明の実施形態を適用した場合と同等であるが、平均応答時間が、本発明の実施形態を適用した場合に比べて長くなる。
【０１０７】
以上のように、本発明の実施形態によれば、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができる。
【０１０８】
上記の実施形態では、画像の解像度を第１の指標とする場合を例にして説明したが、チャネル数や、ピクセル当たりのビット数を第１の指標としてもよい。
【０１０９】
次に、本発明の実施形態の変形例について説明する。
【０１１０】
上記の実施形態では、メディアデータが画像データである場合を例にして説明した。メディアデータは、音データや映像データ（動作データ）であってもよい。
【０１１１】
メディアデータが音データである場合、音データのヘッダ情報は、例えば、音の時間長、音のチャネル数、ビットレート等の属性値を表わしている。音の時間長は、音データにおける音の収録時間（記録時間）全体であり、その時間長には、無音状態の期間が含まれていてもよい。音のチャネル数は、例えば、音がモノラルである場合には１であり、音がステレオである場合には２である。
【０１１２】
そして、メディアデータが音データである場合、第１負荷推定部５が備える第１の指標取得部１１（図２参照）は、音データのヘッダ情報が表わしている音の時間長、音のチャネル数、ビットレートのうちの少なくともいずれかを、第１の指標としてヘッダ情報から読み込む。そして、第１負荷推定部５が備える第１推定部１２は、その第１の指標と、第１負荷モデル１３とに基づいて、音データに対する認識処理の処理負荷の範囲を推定する。この場合、音データのヘッダ情報から得られる第１の指標から認識処理の処理負荷の範囲を導出するためのモデルを予め機械学習によって生成しておき、そのモデルを、第１負荷モデル１３として第１推定部１２に記憶させておけばよい。また、この場合、第１負荷推定部５は、音データのヘッダ情報が表わしている音の時間長、チャネル数、ビットレートのうちの少なくともいずれかに基づいて、音データに対する認識処理の処理負荷の範囲を推定するということができる。
【０１１３】
また、第２負荷推定部６が備える第２の指標取得部２１（図２参照）は、音データの内容に基づいて、音データにおける所定の音が生じる時間区間の情報を、第２の指標として導出する。所定の音が生じる時間区間の情報の例として、例えば、前述の音の時間長内における、人間の音声が生じている時間区間の長さや、前述の音の時間長内における、物が壊れる音が生じている時間区間の長さ等が挙げられる。ただし、所定の音が生じる時間区間の情報は、上記の例に限定されない。所定の音が生じる時間区間の情報を導出する処理は、公知の処理でよい。そして、第２負荷推定部６が備える第２推定部２２は、その第２の指標と、第２負荷モデル２３とに基づいて、音データに対する認識処理の処理負荷を推定する。この場合、第２の指標から認識処理の処理負荷を導出するためのモデルを予め機械学習によって生成しておき、そのモデルを、第２負荷モデル２３として第２推定部２２に記憶させておけばよい。第２負荷モデル２３は、処理負荷の値とともに、処理負荷の最大値および最小値も導出可能なモデルであってもよい。また、この場合、第２負荷推定部６は、音データにおける所定の音が生じる時間区間の情報に基づいて、音データに対する認識処理の処理負荷を推定するということができる。
【０１１４】
また、要求処理部７が備える認識処理実行部３４（図７参照）は、例えば、音データが表わす音が誰の声であるのかを認識したり、音データが表わす音が何の音であるのかを認識したりする処理を実行する。
【０１１５】
メディアデータが動画データである場合、動画データのヘッダ情報は、例えば、解像度、チャネル数、ピクセル当たりのビット数、動画の時間長等の属性値を表わしている。動画データにおける解像度、チャネル数、ピクセル当たりのビット数は、画像データにおける解像度、チャネル数、ピクセル当たりのビット数と同様である。動画の時間長は、動画データにおける動画の収録時間（記録時間）全体である。
【０１１６】
メディアデータが動画データである場合、第１負荷推定部５が備える第１の指標取得部１１（図２参照）は、動画データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数、動画の時間長のうちの少なくともいずれかを、第１の指標としてヘッダ情報から読み込む。そして、第１負荷推定部５が備える第１推定部１２は、その第１の指標と、第１負荷モデル１３とに基づいて、動画データに対する認識処理の処理負荷の範囲を推定する。この場合、動画データのヘッダ情報から得られる第１の指標から認識処理の処理負荷の範囲を導出するためのモデルを予め機械学習によって生成しておき、そのモデルを、第１負荷モデル１３として第１推定部１２に記憶させておけばよい。また、この場合、第１負荷推定部５は、動画データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数、動画の時間長のうちの少なくともいずれかに基づいて、動画データに対する認識処理の処理負荷の範囲を推定するということができる。
【０１１７】
また、第２負荷推定部６が備える第２の指標取得部２１（図２参照）は、動画データの内容（動画データが表わす動画）に基づいて、その動画に写っている被写体に関する情報を、第２の指標として導出する。動画に写っている被写体に関する情報の例として、例えば、動画に写っている人の顔の数等が挙げられる。ただし、動画に写っている被写体に関する情報は、上記の例に限定されない。動画に写っている被写体に関する情報を導出する処理は、公知の処理でよい。そして、第２負荷推定部６が備える第２推定部２２は、その第２の指標と、第２負荷モデル２３とに基づいて、動画データに対する認識処理の処理負荷を推定する。この場合、第２の指標から認識処理の処理負荷を導出するためのモデルを予め機械学習によって生成しておき、そのモデルを、第２負荷モデル２３として第２推定部２２に記憶させておけばよい。第２負荷モデル２３は、処理負荷の値とともに、処理負荷の最大値および最小値も導出可能なモデルであってもよい。また、この場合、第２負荷推定部６は、動画データが表わす動画に写っている被写体に関する情報に基づいて、動画データに対する認識処理の処理負荷を推定するということができる。
【０１１８】
また、要求処理部７が備える認識処理実行部３４（図７参照）は、例えば、動画データが表わす動画に誰が写っているのか等を認識する処理を実行する。
【０１１９】
また、上記の実施形態では、クライアントサーバシステムのサーバ１がメディアデータ処理システムに該当する場合を例にして説明した。メディアデータ処理システムが備える推定部４がクライアントに設けられ、要求処理部７がサーバに設けられる構成であってもよい。図１７は、そのような構成例を示すブロック図である。
【０１２０】
図１７に示す構成例では、クライアント２は、データ入力部４１と、推定部４と、通信インタフェース４２とを備える。推定部４は、第１負荷推定部５と、第２負荷推定部６とを備える。また、サーバ１は、要求処理部７と、通信インタフェース５１とを備える。
【０１２１】
第１負荷推定部５と、第２負荷推定部６とを備える推定部４は、上記の実施形態における推定部４（図１参照）と同様であり、本変形例における推定部４の構成も、図２に示すように表すことができる。また、要求処理部７も、上記の実施形態における要求処理部７（図１参照）と同様であり、本変形例における要求処理部７の構成も、図７に示すように表すことができる。推定部４および要求処理部７は、上記の実施形態における推定部４および要求処理部７と同様であるので、詳細な説明を省略する。
【０１２２】
データ入力部４１は、メディアデータ（本例では、画像データとする）、および、その画像データに対する認識処理の要求の入力を受け付ける。例えば、データ入力部４１は、画像データおよび認識処理の要求を記録した記録媒体から、その画像データおよび認識処理の要求を読み込むデータ読み込み装置（オプティカルディスクドライブ等の種々のデータ読み込み装置）であってもよい。データ入力部４１は、入力された画像データおよび認識処理の要求を、第１負荷推定部５（より具体的には、第１の指標取得部１１。図２参照。）に送る。
【０１２３】
クライアント２の通信インタフェース４２は、サーバ１と通信する際に用いられる通信インタフェースである。サーバ１の通信インタフェース５１は、クライアント２と通信する際に用いらえる通信インタフェースである。
【０１２４】
第１負荷推定部５の第１中継部１４（図２参照）は、推定された処理負荷の範囲等を、通信インタフェース４２を介して、サーバ１に送信する。また、第２負荷推定部６の第２中継部２４（図２参照）は、推定された処理負荷等を、通信インタフェース４２を介して、サーバ１に送信する。サーバ１は、それらの情報を、通信インタフェース５１を介して受信する。
【０１２５】
また、要求処理部７の判定部３１（図７参照）は、要求に応じた認識処理の実行を不許可とした旨の情報、または、処理負荷を推定する旨の指示を、通信インタフェース５１を介してクライアント２に送信する。また、要求処理部７の認識処理実行部３４（図７参照）は、要求に応じた認識処理の結果を、通信インタフェース５１を介してクライアント２に送信する。クライアント２は、それらの情報を、通信インタフェース４２を介して受信する。
【０１２６】
また、上記の実施形態では、ステップＳ１の後のステップＳ２〜Ｓ４（図１２参照）が第１段階であり、ステップＳ５〜Ｓ７（図１３参照）が第２段階であるということができる。第２段階をさらに複数の段階に分けてもよい。以下、この場合の例について説明する。
【０１２７】
本例では、メディアデータが画像データであり、第２の指標が、画像に写っている人の顔の数であるものとして説明する。本変形例では、第２の指標取得部２１は、２種類のアルゴリズムによって、画像データの内容に基づいて第２の指標を導出する。２種類のアルゴリズムを、それぞれ、第１のアルゴリズム、第２のアルゴリズムと称する。第１のアルゴリズムは、第２のアルゴリズムよりも低い精度で第２の指標（画像に写っている人の顔の数）を導出するが、第２のアルゴリズムよりも高速に第２の指標を導出するアルゴリズムである。第２のアルゴリズムは、第１のアルゴリズムよりも高い精度で第２の指標を導出するが、第１のアルゴリズムよりも低速に第２の指標を導出するアルゴリズムである。
【０１２８】
図１８および図１９は、第２段階をさらに複数の段階（２つの段階）に分ける場合の処理経過の例を示すフローチャートである。なお、ステップＳ１〜４の動作は、上記の実施形態と同様である。また、ステップＳ４において「許可」と判定された場合にステップＳ８に移行する点や、ステップＳ４において「不許可」と判定された場合にステップＳ９に移行する点も、上記の実施形態と同様である。そのため、図１８および図１９に示すフローチャートでは、ステップＳ１〜Ｓ４（図１２参照）の処理の図示を省略している。そして、図１８では、ステップＳ４で「処理負荷を推定する」という判定結果が得られ、第２の指標取得部２１が第２の指標を導出する処理から図示している。
【０１２９】
第２の指標取得部２１は、第１のアルゴリズムに従って、第２の指標（本例では、画像データが表わす画像に写っている人の顔の数）を導出する（ステップＳ２１）。
【０１３０】
次に、第２推定部２２が、その第２の指標に基づいて、画像データに対する認識処理の処理負荷の範囲を推定する（ステップＳ２２）。ステップＳ２２において、第２推定部２２は、例えば、図５に模式的に示す第２負荷モデル２３に第２の指標を適用することによって、認識処理の処理負荷の最小値、平均値および最大値をそれぞれ推定すればよい。その結果、最小値から最大値までの範囲が、処理負荷の範囲として得られる。なお、第２中継部２４は、推定された処理負荷の範囲を、画像データ、および、その画像データに対する認識処理の要求とともに、判定部３１に送る。
【０１３１】
次に、判定部３１が、ステップＳ２２で推定された処理負荷の範囲と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、画像データに対する認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定する（ステップＳ２３）。ステップＳ２３の処理は、ステップＳ４（図１２参照）の処理と同様である。
【０１３２】
ステップＳ２３での判定結果が「許可」である場合、認識処理実行部３４が、画像データに対する認識処理を実行する。そして、認識処理実行部３４が、通信部３を介して、認識処理の結果をクライアント２に送る（ステップＳ８、図１９参照）。また、ステップＳ２３での判定結果が「許可」である場合、判定部３１は、処理状態テーブル３３を更新する。
【０１３３】
ステップＳ２３での判定結果が「不許可」である場合、判定部３１が、要求に応じた認識処理の実行を不許可とした旨の情報を、通信部３を介して、クライアント２に送る（ステップＳ９、図１９参照）。
【０１３４】
ステップＳ２３で「処理負荷を推定する」という判定結果を得た場合、判定部３１は、処理負荷を推定する旨の指示を、第２中継部２４に送り、第２中継部２４は、その指示と、画像データと、その画像データに対する認識処理の要求とを、第２の指標取得部２１に送る。
【０１３５】
すると、第２の指標取得部２１は、第２のアルゴリズムに従って、第２の指標を導出する（ステップＳ２４）。ステップＳ２４の処理時間は、ステップＳ２１の処理時間よりも長い。しかし、ステップＳ２４で導出される第２の指標の精度は、ステップＳ２１で導出される第２の指標の精度よりも高い。
【０１３６】
次に、第２推定部２２が、その第２の指標に基づいて、画像データに対する認識処理の処理負荷を推定する（ステップＳ２５）。なお、第２中継部２４は、その処理負荷を、画像データ、および、その画像データに対する認識処理の要求とともに、判定部３１に送る。
【０１３７】
次に、判定部３１が、ステップＳ２５で推定された処理負荷と、要求許容数モデル３２および処理状態テーブル３３とに基づいて、画像データに対する認識処理の実行を許可とするか、不許可とするかを判定する（ステップＳ２６）。
【０１３８】
ステップＳ２５，Ｓ２６の処理は、図１３に示すステップＳ６，Ｓ７の処理と同様である。
【０１３９】
ステップＳ２６での判定結果が「許可」である場合、認識処理実行部３４が、画像データに対する認識処理を実行する。そして、認識処理実行部３４が、通信部３を介して、認識処理の結果をクライアント２に送る（ステップＳ８、図１９参照）。また、ステップＳ２６での判定結果が「許可」である場合、判定部３１は、処理状態テーブル３３を更新する。
【０１４０】
ステップＳ２６での判定結果が「不許可」である場合、判定部３１が、要求に応じた認識処理の実行を不許可とした旨の情報を、通信部３を介して、クライアント２に送る（ステップＳ９、図１９参照）。
【０１４１】
以上の処理経過において、ステップＳ２１〜Ｓ２３の処理が１つの段階であり、また、ステップＳ２４〜Ｓ２５の処理がさらに別の１つの段階であるということができる。従って、本変形例の処理では、第１段階（図１２に示すステップＳ２〜Ｓ４）と合わせて、３つの段階を含んでいるということができる。このように、本変形例では、３つの段階を含む処理を説明したが、本発明の処理は、さらに多くの段階を含んでいてもよい。
【０１４２】
本変形例においても、応答時間の増加を抑えつつ、要求処理率の低下を抑制できるという効果が得られる。
【０１４３】
図２０は、上記の実施形態のメディアデータ処理システムに係るコンピュータの構成例を示す概略ブロック図である。なお、図１７に示す変形例におけるクライアント２やサーバ１に係るコンピュータの構成も、図２０に示す構成と同様に表される。コンピュータ１００は、ＣＰＵ１００１と、主記憶装置１００２と、補助記憶装置１００３と、インタフェース１００４と、通信インタフェース１００５とを備える。
【０１４４】
上記の実施形態のメディアデータ処理システムは、コンピュータ１０００に実装され、その動作は、プログラムの形式で補助記憶装置１００３に記憶されている。ＣＰＵ１００１は、そのプログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、そのプログラムに従って、上記の実施形態やその変形例で説明した動作を実行する。
【０１４５】
補助記憶装置１００３は、一時的でない有形の媒体の例である。一時的でない有形の媒体の他の例として、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory ）、ＤＶＤ−ＲＯＭ（Digital Versatile Disk Read Only Memory ）、半導体メモリ等が挙げられる。また、プログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００がそのプログラムを主記憶装置１００２に展開し、上記の処理を実行してもよい。
【０１４６】
また、プログラムは、前述の処理の一部を実現するためのものであってもよい。さらに、プログラムは、補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで前述の処理を実現する差分プログラムであってもよい。
【０１４７】
また、各構成要素の一部または全部は、汎用または専用の回路（circuitry ）、プロセッサ等やこれらの組み合わせによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各構成要素の一部または全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【０１４８】
各構成要素の一部または全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１４９】
次に、本発の概要について説明する。図２１は、本発明のメディアデータ処理システムの概要を示すブロック図である。本発明のメディアデータ処理システムは、第１負荷推定部５と、第２負荷推定部６と、判定部３１とを備える。
【０１５０】
第１負荷推定部５は、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷の範囲を推定する。
【０１５１】
第２負荷推定部６は、メディアデータの内容に基づいて、メディアデータ認識処理の処理負荷を推定する。
【０１５２】
判定部３１は、第１負荷推定部５によって推定された処理負荷の範囲と、使用可能な計算資源を示す情報（例えば、要求許容数モデル３２および処理状態テーブル３３）とに基づいて、メディアデータに対するメディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定する。また、判定部３１は、第２負荷推定部６によって推定された処理負荷と、使用可能な計算資源を示す情報とに基づいて、メディアデータに対するメディアデータ認識処理の実行を許可とするか、不許可とするかを判定する。
【０１５３】
第２負荷推定部６は、判定部３１によって、処理負荷を推定すると判定された場合に、メディアデータ認識処理の処理負荷を推定する。
【０１５４】
そのような構成によって、適切に負荷を推定することが困難なメディアデータ認識処理において、応答時間の増加を抑えつつ、要求処理率の低下を抑制できることができる。
【０１５５】
メディアデータが、画像データであり、第１負荷推定部５が、画像データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数のうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、第２負荷推定部６が、画像データが表わす画像に写っている被写体に関する情報に基づいて、メディアデータ認識処理の処理負荷を推定する構成であってもよい。
【０１５６】
メディアデータは、音データであり、第１負荷推定部５が、音データのヘッダ情報が表わしている音の時間長、チャネル数、ビットレートのうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、第２負荷推定部６が、音データにおける所定の音が生じる時間区間の情報に基づいて、メディアデータ認識処理の処理負荷を推定する構成であってもよい。
【０１５７】
メディアデータが、動画データであり、第１負荷推定部５が、動画データのヘッダ情報が表わしている解像度、チャネル数、ピクセル当たりのビット数、動画の時間長のうちの少なくともいずれかに基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、第２負荷推定部６が、動画データが表わす動画に写っている被写体に関する情報に基づいて、メディアデータ認識処理の処理負荷を推定する構成であってもよい。
【０１５８】
第１負荷推定部５が、メディアデータのヘッダ情報に基づいて、メディアデータ認識処理の処理負荷を推定するための第１の指標を取得し、当該第１の指標に基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、第２負荷推定部６が、メディアデータの内容に基づいて、メディアデータ認識処理の処理負荷を推定するための第２の指標を取得し、当該第２の指標に基づいて、メディアデータ認識処理の処理負荷を推定する構成であってもよい。
【０１５９】
第２負荷推定部６が、第１のアルゴリズムに従って第２の指標を取得し、当該第２の指標に基づいて、メディアデータ認識処理の処理負荷の範囲を推定し、判定部３１が、その処理負荷の範囲と、使用可能な計算資源を示す情報とに基づいて、メディアデータに対するメディアデータ認識処理の実行を許可とするか、不許可とするか、または、処理負荷を推定するかを判定し、第２負荷推定部６が、判定部３１によって、処理負荷を推定すると判定された場合に、第１のアルゴリズムよりも高い精度で第２の指標を取得可能な第２のアルゴリズムに従って、第２の指標を取得し、当該第２の指標に基づいて、メディアデータ認識処理の処理負荷を推定し、判定部３１が、その処理負荷と、使用可能な計算資源を示す情報とに基づいて、メディアデータに対するメディアデータ認識処理の実行を許可とするか、不許可とするかを判定する構成であってもよい。
【０１６０】
判定部３１によって、メディアデータに対するメディアデータ認識処理の実行を許可とすると判定された場合に、メディアデータ認識処理を実行する認識処理実行部（例えば、認識処理実行部３４）を備える構成であってもよい。
【０１６１】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用の可能性】
【０１６２】
本発明は、メディアデータに対するメディアデータ認識処理の実行を許可するか否かの判定に好適に適用される。
【符号の説明】
【０１６３】
１  サーバ
２  クライアント
３  通信部
４  推定部
５  第１負荷推定部
６  第２負荷推定部
７  要求処理部
１１  第１の指標取得部
１２  第１推定部
１４  第１中継部
２１  第２の指標取得部
２２  第２推定部
２４  第２中継部
３１  判定部
３４  認識処理実行部
【図１】
2020105091.tif 000003
【図２】
2020105091.tif 000004
【図３】
2020105091.tif 000005
【図４】
2020105091.tif 000006
【図５】
2020105091.tif 000007
【図６】
2020105091.tif 000008
【図７】
2020105091.tif 000009
【図８】
2020105091.tif 000010
【図９】
2020105091.tif 000011
【図１０】
2020105091.tif 000012
【図１１】
2020105091.tif 000013
【図１２】
2020105091.tif 000014
【図１３】
2020105091.tif 000015
【図１４】
2020105091.tif 000016
【図１５】
2020105091.tif 000017
【図１６】
2020105091.tif 000018
【図１７】
2020105091.tif 000019
【図１８】
2020105091.tif 000020
【図１９】
2020105091.tif 000021
【図２０】
2020105091.tif 000022
【図２１】
2020105091.tif 000023
【国際調査報告】
2020105091.tif 000024
2020105091.tif 000025