(57)【特許請求の範囲】
【請求項１】
処理の対象になるデータの特徴量を抽出する特徴量抽出部と、
前記特徴量と、機械学習によって生成されたデータベースにおいて前記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行する特徴量マッチング部と、
前記マッチングの結果に基づいて、前記データに対して前記処理を実行した場合の結果を予測する結果予測部と、
前記予測された結果に基づいて前記処理の実行を制御する実行制御部と、
前記実行の結果を評価する結果評価部と、
前記評価された結果および前記特徴量に基づいて前記データベースを更新するデータベース更新部と、
を備え、
前記マッチングが成立した場合、前記データベース更新部は、前記特徴量と前記参照特徴量との関係に基づいて、当該参照特徴量に関連付けられた、前記処理の予測される結果に関する情報を更新する、情報処理装置。
【請求項２】
前記実行制御部は、前記予測された結果に基づいて前記処理のセッティングを決定する、請求項１に記載の情報処理装置。
【請求項３】
前記セッティングは、前記処理の方式、または前記処理のパラメータを含む、請求項２に記載の情報処理装置。
【請求項４】
前記実行制御部は、前記予測された結果に基づいて前記処理を実行するか否かを決定する、請求項１に記載の情報処理装置。
【請求項５】
前記マッチングが成立しなかった場合、前記データベース更新部は、前記特徴量を参照特徴量とするデータを前記データベースに追加する、請求項１に記載の情報処理装置。
【請求項６】
前記結果予測部は、前記データを圧縮した場合の圧縮率、圧縮後の前記データの品質、または圧縮前後での前記データの同一性を予測する、請求項１に記載の情報処理装置。
【請求項７】
前記結果予測部は、前記データを暗号化した場合の暗号強度を予測する、請求項１に記載の情報処理装置。
【請求項８】
前記結果予測部は、前記データに対して前記処理を実行した場合の処理時間またはリソース消費量を予測する、請求項１に記載の情報処理装置。
【請求項９】
前記データは、画像を表示させるためのデータを含み、
前記特徴量抽出部は、前記画像の解像度および回転に依存しない特徴量を抽出する、請求項１に記載の情報処理装置。
【請求項１０】
処理の対象になるデータの特徴量を抽出することと、
プロセッサが、前記特徴量と、機械学習によって生成されたデータベースにおいて前記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行することと、
前記マッチングの結果に基づいて、前記データに対して前記処理を実行した場合の結果を予測することと、
予測された結果に基づいて前記処理の実行を制御することと、
前記実行の結果を評価することと、
前記評価された結果および前記特徴量に基づいて前記データベースを更新することと、
を含み、
前記データベースを更新することは、前記マッチングが成立した場合に、前記特徴量と前記参照特徴量との関係に基づいて、当該参照特徴量に関連付けられた、前記処理の予測される結果に関する情報を更新することを含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
近年、ネットワーク技術の進展や端末装置の性能向上などによって、画像や音声などのデータをネットワーク経由で送受信する場面が増加している。ネットワークの転送レートや端末装置の処理能力には限りがあるため、データは適切なサイズに圧縮して送受信されることが多い。例えば、特許文献１には、データが送信される受信装置の数と閾値とを比較した結果に基づいて、各受信装置にデータを送信するための転送レートが基準転送レートを超えない範囲で、より高品質のデータが送信されるように各受信装置のための圧縮データを用意する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１８２２４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、画像や音声などのデータを圧縮する場合、同じ圧縮方式やパラメータ設定であっても、データの内容によって圧縮の効果が大きく異なることが知られている。ここで、圧縮の効果は、例えば圧縮率、圧縮後のデータの品質（画像や音声のノイズ割合など）、圧縮前後でのデータの同一性、圧縮および展開にかかる処理負荷などを含む。従って、データの内容に対して適切な圧縮方式やパラメータを選択することは、効果的な圧縮を実施するために重要である。
【０００５】
しかしながら、圧縮の効果は、多くの場合、データを実際に圧縮しないとわからない。従って、実際のところは、例えば様々な圧縮方式やパラメータで圧縮されたデータを予め用意して保存していたり、必ずしも最適とは限らない圧縮方式やパラメータで圧縮処理を実行したりしていた。この場合、予め圧縮されたデータによって膨大なストレージ容量が占有される、リアルタイムで提供することが求められるデータを適切に処理することが難しい、といった事態が発生する。同様の事態は、例えば暗号化など、データの内容によって効果が異なる他の処理でも発生する。
【０００６】
そこで、本開示では、データの内容によって異なる処理の結果を処理の実行前に予測することによって、適切な処理方式やパラメータなどを容易に選択することを可能にする、新規かつ改良された情報処理装置および情報処理方法を提案する。
【課題を解決するための手段】
【０００７】
本開示によれば、処理の対象になるデータの特徴量を抽出する特徴量抽出部と、上記特徴量と、データベースにおいて上記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行する特徴量マッチング部と、上記マッチングの結果に基づいて、上記データに対して上記処理を実行した場合の結果を予測する結果予測部とを備える情報処理装置が提供される。
【０００８】
また、本開示によれば、処理の対象になるデータの特徴量を抽出することと、プロセッサが、上記特徴量と、データベースにおいて上記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行することと、上記マッチングの結果に基づいて、上記データに対して上記処理を実行した場合の結果を予測することとを含む情報処理方法が提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、データの内容によって異なる処理の結果を処理の実行前に予測することによって、適切な処理方式やパラメータなどを容易に選択することができる。
【００１０】
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１１】
【図１】本開示の一実施形態に係る情報処理装置の概略的な機能構成を示すブロック図である。
【図２】本開示の一実施形態において、既に構築されているデータベースを参照する場合の処理の例を示すフローチャートである。
【図３】本開示の一実施形態において、データベースを新たに構築する場合の処理の例を示すフローチャートである。
【図４】本開示の一実施形態における画像データの特徴量抽出の具体例について説明するための図である。
【図５】本開示の一実施形態における画像データの処理結果の評価の具体例について説明するための図である。
【図６】本開示の一実施形態における画像データの特徴量マッチングの具体例について説明するための図である。
【図７】画像データにおける処理結果の例を示す図である。
【図８】画像データにおける処理結果の例を示す図である。
【図９】画像データの圧縮方式ごとの描画の進行の例を示すグラフである。
【図１０】本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．システム構成
２．処理フロー
３．画像データについての具体例
４．画像データにおける処理結果の例
５．ハードウェア構成
６．補足
【００１４】
（１．システム構成）
図１は、本開示の一実施形態に係る情報処理装置の概略的な機能構成を示すブロック図である。図１を参照すると、情報処理装置１００は、データ取得部１１０と、特徴量抽出部１２０と、特徴量マッチング部１３０と、結果予測部１４０と、実行制御部１５０と、結果評価部１６０と、データベース更新部１７０とを含む。これらの機能構成は、例えば情報処理装置１００が備えるＣＰＵ（Central  Processing  Unit）などのプロセッサがプログラムに従って動作することによって実現される。さらに、情報処理装置１００は、データベース１８０を含む。データベース１８０は、例えば情報処理装置１００が備えるメモリまたはストレージ装置によって実現される。なお、情報処理装置１００のハードウェア構成の例については後述する。
【００１５】
情報処理装置１００は、具体的には、データの処理を実行する各種の装置でありうる。例えば、情報処理装置１００は、クライアントの端末装置に画像や音声などのデータを配信するサーバを構成する。この場合、サーバは、１または複数の情報処理装置によって構成されうる。従って、図示された例における情報処理装置１００の機能は、サーバを構成する複数の情報処理装置に分散して実現されてもよい。なお、サーバがクライアントにデータを配信するための機能構成については、既によく知られている各種の構成を採用することが可能であるため、ここでは詳細な説明は省略する。
【００１６】
また、情報処理装置１００は、クライアントの端末装置であってもよい。例えば端末装置に備えられたカメラで撮影した画像をサーバにアップロードしたり、他の端末装置に転送したりするような場合、端末装置でもデータの圧縮処理が発生する。端末装置では一般的にサーバよりも利用可能なリソースが限られるため、圧縮などのデータの処理を効果的に実施できることは有用でありうる。この場合、例えばデータベース１８０は、必ずしも端末装置の内部に配置されなくてもよい。つまり、端末装置として実現される情報処理装置１００は、データベース１８０を含まず、サーバなどの外部装置に構築されたデータベース１８０を参照してもよい。なお、端末装置がデータを生成、処理または送信するための機能構成についても、既によく知られている各種の構成を採用することが可能であるため、ここでは詳細な説明は省略する。
【００１７】
データ取得部１１０は、処理の対象になるデータを取得する。データは、例えば静止画像データ、動画像データ、音声データ、テキストデータなど、各種のデータを含みうる。データ取得部１１０は、例えば、情報処理装置１００が備える通信装置を介して外部装置から受信されたデータを取得する。また、データ取得部１１０は、入力装置によって入力されたテキストデータや、撮像装置によって生成された撮像画像のデータ、センサによって生成されたセンシングデータなど、情報処理装置１００の内部で生成されたデータを取得してもよい。
【００１８】
特徴量抽出部１２０は、データ取得部１１０によって取得されたデータの特徴量を抽出する。特徴量は、後述するように特徴量同士を比較可能なものであればどのような種類であってもよい。様々な種類（画像、音声、テキストなど）のデータについて特徴量を抽出する技術が既に知られているため、特徴量抽出部１２０はこうした技術を適宜利用することが可能である。特徴量は、例えば特徴空間におけるベクトルとして表現されうる。より具体的には、例えば、画像の色彩ヒストグラムや、特徴点の配置、データのビットパターンなどが、特徴量として抽出されうる。なお、ここで、画像に関して抽出される特徴量は、画像の解像度や回転などには依存しないことが望ましい。また、後述するように、抽出された特徴量はデータベース１８０に格納された参照特徴量と比較されるため、ロバスト性が高いことが望ましい。例えば、複数の種類の特徴量を組み合わせることによって、抽出される特徴量全体としてのロバスト性を高めることができうる。
【００１９】
特徴量マッチング部１３０は、特徴量抽出部１２０によって抽出された特徴量と、データベース１８０において処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行する。参照特徴量は、抽出された特徴量と比較することが可能な所定の特徴量であり、例えば抽出された特徴量と同じ次元を有するベクトルでありうる。特徴量マッチング部１３０は、例えば抽出された特徴量と参照特徴量との間で算出される特徴空間での距離に基づいてマッチングを実行する。この場合、例えば、抽出された特徴量と参照特徴量との間の距離が閾値を下回っていれば、マッチングが成立する。データベース１８０において複数の参照特徴量が定義されている場合、特徴量マッチング部１３０は、抽出された特徴量とそれぞれの参照特徴量とのマッチングを実行する。この場合、抽出された特徴量と複数の参照特徴量との間でマッチングが成立してもよい。
【００２０】
結果予測部１４０は、特徴量マッチング部１３０によって実行されたマッチングの結果に基づいて、データに対して処理を実行した場合の結果を予測する。予測される結果は、処理によって得られる効果、および／または処理にかかるコストを含みうる。より具体的には、例えばデータの圧縮処理が実行される場合、予測される結果は、圧縮率、圧縮後のデータの品質、または圧縮前後でのデータの同一性などを含みうる。また、例えばデータの暗号化処理が実行される場合、予測される結果は、暗号強度などを含みうる。また、処理の種類に関わらず、予測される結果は、処理時間またはリソース消費量などを含みうる。結果予測部１４０は、抽出された特徴量との間でマッチングが成立した参照特徴量についてデータベース１８０を参照し、当該参照特徴量に関連付けられた、処理の予測される結果を読み出す。
【００２１】
実行制御部１５０は、結果予測部１４０によって予測された結果に基づいて、データに対する処理の実行を制御する。データの処理は、実行制御部１５０の制御に従って、処理実行部１５２によって実行される。上記の通り、実行される処理は、例えば圧縮や暗号化など、データの内容によって効果が異なる処理でありうる。ここで、例えば、実行制御部１５０は、予測された結果に基づいて、処理実行部１５２における処理のセッティングを決定する。処理のセッティングは、処理方式および／または処理パラメータを含みうる。また、例えば、実行制御部１５０は、予測された結果に基づいて、処理実行部１５２が処理を実行するか否かを決定してもよい。処理実行部１５２によって処理された（または処理をスキップした）データは、例えば、情報処理装置１００が備える通信装置を介して外部装置に送信されてもよい。あるいは、処理されたデータは、情報処理装置１００が備えるメモリまたはストレージに一時的または永続的に格納されてもよい。
【００２２】
ここで、本実施形態では、データベース１８０において、参照特徴量と、データに対する処理の予測される結果とが関連付けられている。上記の通り、例えば処理実行部１５２によってデータの圧縮処理が実行される場合、予測される結果は、圧縮率（圧縮前後のデータサイズの縮小比率）、圧縮後のデータの品質（画像や音声のノイズ割合など）、圧縮前後でのデータの同一性（例えば画像や音声が、特に観察または聴取可能な特徴について、圧縮前後でどの程度類似しているか）などを含みうる。また、例えば、処理実行部１５２によってデータの暗号化処理が実行される場合、予測される効果は、暗号強度などを含みうる。また、各種の処理に共通して、予測される結果は、処理時間またはリソース消費量などを含みうる。ここで、リソース消費量は、消費電力、またはプロセッサもしくはメモリの使用率（使用量）などを含みうる。
【００２３】
例えば、データベース１８０において、参照特徴量に対して、処理方式および／または処理パラメータごとに複数の予測される結果が関連付けられている場合、結果予測部１４０は、処理方式および／または処理パラメータごとの結果を予測することができる。この場合、実行制御部１５０は、より効率的な処理のセッティング（処理方式および／または処理パラメータなど）を決定することができる。また、データベース１８０において、参照特徴量に対して単一の予測される結果が関連付けられている場合、実行制御部１５０は、処理を実行するか否かを決定することができる。例えば、処理によって得られる効果（圧縮率や暗号化強度など）が処理にかかるコスト（処理時間やリソース消費量など）を見合わないような場合、実行制御部１５０は、処理を実行しないことを決定し、データは処理実行部１５２における処理をスキップする。参照特徴量に対して複数の予測される結果が関連付けられている場合も、どの結果における効果もコストに見合わなければ、処理を実行しないことが決定されてもよい。
【００２４】
このような予測および決定を可能にするために、参照特徴量に関連付けてデータベース１８０に格納される予測される結果の情報は、例えば圧縮率や暗号化強度、処理時間などに関する定量的な情報であってもよい。あるいは、予測される結果の情報は、定性的な情報であってもよい。例えば、ある参照特徴量と処理方式および／または処理パラメータとの組み合わせについて、「当該参照特徴量に対応する特徴量を有するデータに、この処理方式および／または処理パラメータでの処理は適さない」ことを示す情報が格納されていてもよい。
【００２５】
結果評価部１６０は、処理実行部１５２によって実行された処理の結果を評価する。データベース更新部１７０は、結果評価部１６０によって評価されたデータに対する処理の結果、および先に特徴量抽出部１２０によって抽出された当該データの特徴量に基づいて、データベース１８０を更新する。より具体的には、例えば、特徴量マッチング部１３０において、データの特徴量と参照特徴量とのマッチングが成立した場合、データベース更新部１７０は、必要に応じてデータの特徴量と参照特徴量との関係（特徴空間での距離など）に基づいて、当該参照特徴量に関連付けられた、処理の予測される結果に関する情報を更新する。また、例えば、特徴量マッチング部１３０において、データの特徴量と参照特徴量とのマッチングが成立しなかった場合、データベース更新部１７０は、データの特徴量を新たな参照特徴量として、結果評価部１６０によって評価された処理の結果を示す情報に関連付けてデータベース１８０に追加する。
【００２６】
ここで、結果評価部１６０によって評価される処理の結果は、データベース１８０において参照特徴量に関連付けられる、処理の予測される結果を示す情報に対応する。つまり、結果評価部１６０によって評価される処理の結果は、例えば、データの圧縮処理における圧縮率、圧縮後のデータの品質、または圧縮前後でのデータの同一性などを含みうる。また、処理の結果は、データの暗号化処理における暗号強度などを含んでもよい。さらに、処理の結果は、処理時間またはリソース消費量などを含んでもよい。
【００２７】
データベース１８０は、例えば、データの特徴量にかかわらず実行された処理の結果に基づいて生成されたデータを教師データとして用いた機械学習によって生成されうる。より具体的には、例えば、情報処理装置１００において、ある程度の数のデータについて、特徴量抽出部１２０が特徴量を抽出した上で、処理実行部１５２が処理を実行し、結果評価部１６０が処理の効果を測定する。これらの過程で得られるデータの特徴量と処理の効果の組み合わせから、データベース更新部１７０（この場合はデータベース生成部といってもよい）が特徴量ごとの処理効果の傾向を抽出することによって、参照特徴量と、参照特徴量に対応する処理の効果とを特定することが可能になる。なお、データベース１８０に格納された参照特徴量と処理の予測される結果とを関連付ける情報が、データベース更新部１７０によって更新されうることは上述した通りである。
【００２８】
（２．処理フロー）
図２は、本開示の一実施形態において、既に構築されているデータベースを参照する場合の処理の例を示すフローチャートである。
【００２９】
図２を参照すると、まず、データ取得部１１０が、処理の対象になるデータを取得する（Ｓ１０１）。既に説明したように、データ取得部１１０は、情報処理装置１００が備える通信装置を介して外部装置から受信されたデータを取得してもよいし、情報処理装置１００が備える入力装置、撮像装置、またはセンサなどによって生成されたデータを内部的に取得してもよい。次に、特徴量抽出部１２０が、取得されたデータの特徴量を抽出する（Ｓ１０３）。ここで、特徴量抽出部１２０は、例えば、データの種類ごとに異なる特徴量を抽出してもよい。
【００３０】
続いて、特徴量マッチング部１３０が、抽出された特徴量と、データベース１８０において処理の予測される結果に関連付けられた参照特徴量とのマッチングを実行する（Ｓ１０５）。特徴量マッチング部１３０は、マッチングの結果を示す情報を結果予測部１４０に提供する。この情報は、抽出された特徴量が、データベース１８０に格納されたいずれかの参照特徴量に対応するか否かを示しうる。結果予測部１４０は、提供された情報に基づいて、データに対して処理を実行した場合の効果を予測する。
【００３１】
より具体的には、結果予測部１４０は、マッチングが成立した、つまり、データベース１８０において、処理の対象になるデータの特徴量に対応する参照特徴量が発見されたか否かを判定する（Ｓ１０７）。ここで、マッチングが成立した場合（ＹＥＳ）、結果予測部１４０は、データベース１８０において当該参照特徴量に関連付けられた情報を読み出し、この情報に基づいて、処理の対象になるデータに対して処理を実行した場合の結果を予測する（Ｓ１０９）。
【００３２】
この場合、続いて、予測された結果に基づく実行制御部１５０の制御に従って、処理実行部１５２がデータに対する処理を実行する（Ｓ１１１）。上記の通り、例えば、実行制御部１５０は、処理のセッティング、より具体的には処理方式および／または処理パラメータを、結果予測部１４０によって予測されたそれぞれの処理方式および／または処理パラメータでの処理の結果に基づいて決定する。あるいは、実行制御部１５０は、結果予測部１４０によって予測された結果において、処理によって得られる効果が処理に係るコストに見合わない場合には、処理を実行しない（スキップする）ことを決定してもよい。
【００３３】
付加的に、例えばデータベース１８０が更新可能であるような場合、結果評価部１６０が処理実行部１５２によって実行された処理の結果を評価し（Ｓ１１３）、データベース更新部１７０が評価された結果とＳ１０３で抽出されたデータの特徴量とに基づいてデータベース１８０を更新してもよい（Ｓ１１５）。このように、実行された処理の結果に基づいてデータベース１８０を更新することによって、以後の処理が実行される場合の結果予測部１４０による結果の予測精度を向上させることができる。
【００３４】
一方、上記のＳ１０７の判定において、マッチングが成立しなかった場合（ＮＯ）、処理実行部１５２が、データの特徴量に関わらず（予測された結果を参照することなく）、データに対する処理を実行する（Ｓ１１７）。この後、付加的に、例えばデータベース１８０が更新可能であるような場合、上記のＳ１１３およびＳ１１５と同様に、実行された処理の結果が評価され、評価された結果と特徴量とに基づいてデータベース１８０が更新されてもよい。この場合、Ｓ１０３で抽出された特徴量に対応する参照特徴量はデータベース１８０に格納されていないため、データベース更新部１７０は、抽出された特徴量を新たな参照特徴量として、Ｓ１１３で評価された処理の結果を示す情報に関連付けてデータベース１８０に追加する。これによって、以後の処理が実行される場合に、特徴量マッチング部１３０によって対応する参照特徴量を発見できる範囲が広がり、処理結果予測部１４０による結果の予測を適用可能なデータの幅を広げることができる。このようなデータの追加が可能である場合、最初に用意されるデータベース１８０は、必ずしもデータの大半を網羅するような大きなサイズである必要はない。
【００３５】
図３は、本開示の一実施形態において、データベースを新たに構築する場合の処理の例を示すフローチャートである。本実施形態では、例えば外部で生成されたデータベース１８０を情報処理装置１００のストレージに読み込むことによって処理結果予測部１４０による効果の予測を可能にすることができるが、情報処理装置１００自身が、データに対して実行された処理の結果に基づいてデータベース１８０を生成してもよい。図３に示されるのは、専らデータベース１８０を生成する段階における情報処理装置１００の処理の例である。ある程度処理の結果が蓄積され、データベース１８０に基づく処理結果の予測が可能になった後は、上記の図２に示した処理のように、処理結果の予測と並行してデータベース１８０を逐次更新することができる。
【００３６】
図３を参照すると、まず、データ取得部１１０が、処理の対象になるデータを取得する（Ｓ１０１）。次に、特徴量抽出部１２０が、取得されたデータの特徴量を抽出する（Ｓ１０３）。ここまでは上記の図２の処理と同様である。
【００３７】
続いて、処理実行部１５２が、データの特徴量に関わらず（予測された結果を参照することなく）、データに対する処理を実行する（Ｓ１１７）。さらに、結果評価部１６０が処理実行部１５２によって実行された処理の結果を評価し（Ｓ１１３）、データベース更新部１７０が評価された結果とＳ１０３で抽出されたデータの特徴量とに基づいてデータベース１８０に新たなデータを追加する（Ｓ１１９）。蓄積されたデータが所定の数に到達すると（Ｓ１２１のＹＥＳ）、データベース更新部１７０が蓄積されたデータを教師データとして用いた機械学習の処理を実行し、参照特徴量と処理予測される結果とを関連付けたデータベース１８０を構築する（Ｓ１２３）。
【００３８】
（３．画像データについての具体例）
図４は、本開示の一実施形態における画像データの特徴量抽出の具体例について説明するための図である。図示された例では、画像データ１００１に対する特徴量抽出部１２０の処理が、特徴点抽出処理１２０１と、ヒストグラム処理１２０３とを含む。この結果、特徴量として、特徴点情報１００３と、色彩情報１００５とが抽出される。ここで、特徴点抽出処理１２０１は、例えばＳＵＲＦ（Speeded  Up  Robust  Features）に基づいて実行される。
【００３９】
図５は、本開示の一実施形態における画像データの処理結果の評価の具体例について説明するための図である。図示された例では、画像データ１００１が、処理実行部１５２に含まれるＷｅｂＰエンコーダ１５２１によって圧縮処理される。この結果、圧縮画像データ１００７が得られる。さらに、図示された例では、圧縮画像データ１００７について、結果評価部１６０が、サイズ比較処理１６０１、および画像類似度比較処理１６０３によって処理の結果を評価する。この結果、処理の結果の評価指標として、圧縮率１００９と、圧縮品質１０１１とが得られる。ここで、画像類似度比較処理１６０３は、例えばＳＳＩＭ（Structural  Similarity）に基づいて実行されうる。なお、ＳＳＩＭに基づく処理については、例えば“Image  quality  assessment：From  error  visibility  to  structural  similarity”，IEEE  Transactions  on  Image  Processing，vol.13，no.4，pp.600-612，Apr.2004などに記載されている。
【００４０】
図６は、本開示の一実施形態における画像データの特徴量マッチングの具体例について説明するための図である。図示された例では、対象の画像データから抽出された特徴量＃Ｘと、データベース１８０で圧縮処理結果の評価指標に関連付けられている参照特徴量＃Ｙとがマッチングされる。データベース１８０には、参照特徴量＃１〜参照特徴量＃ｎと評価指標＃１〜評価指標＃ｎとをそれぞれ関連付けるデータが含まれる。ここで、特徴量および参照特徴量は、例えば上記で図４を参照して説明した特徴点情報１００３や色彩情報１００５に対応しうる。また、評価指標は、例えば上記で図５を参照して説明した圧縮率１００９や圧縮品質１０１１に対応しうる。
【００４１】
図示された例において、特徴量マッチング部１３０は、Brute-Forceマッチング１３０１、およびBhattacharyya距離算出処理１３０３の結果に基づいて、特徴量＃Ｘと参照特徴量＃Ｙとの類似度評価１３０５を実行する。ここで、Brute-Forceマッチング１３０１は、特徴空間における特徴量間の距離の計算のために利用される手法の一例である。また、Bhattacharyya距離算出処理１３０３は、色彩ヒストグラムの距離の計算のために利用される手法の一例である。類似度評価１３０５において、特徴量＃Ｘと参照特徴量＃Ｙとが類似している（マッチングが成立する）と評価された場合、結果予測部１４０によって、データベース１８０から参照特徴量＃Ｙに関連付けられた評価指標＃Ｙの情報を取得するためのクエリ発行処理１４０１が実行される。
【００４２】
（４．画像データにおける処理結果の例）
下記の表１には、２つのサンプル画像について、ＷｅｂＰエンコーダを用いて圧縮処理を実行した場合の、エンコーダの処理パラメータ（圧縮方法またはフィルタの強度を示すパラメータ）と圧縮処理結果の評価指標（圧縮率、ＰＳＮＲ、ＳＳＩＭ）との関係が示されている。なお、ＰＳＮＲ（Peak  Signal-to-Noise  Ratio）は、ＳＳＩＭと同様に、圧縮前後の画像の類似度（同一性）の指標である。図７および図８に、サンプル１，２のパラメータ＝８０の場合（Ａ）およびパラメータ＝０の場合（Ｂ）の圧縮後の画像を例として示す。
【００４３】
【表１】
0006274067.tif 000002
【００４４】
これらの例に示されるように、画像の圧縮処理では、パラメータの設定に応じて、圧縮率と画像類似度がトレードオフの関係で変化する。より具体的には、パラメータの値が大きい場合、圧縮率が低いが、画像類似度が高い。一方、パラメータの値が小さい場合、圧縮率は高いが、画像類似度が低い。これらの圧縮効果の関係は、全体的な傾向としてはどのような画像にも共通しうるが、実際にどの程度圧縮率や画像類似度が変化するかは、上記のサンプル１，２の例にも示されるように、画像の内容によって異なる。従って、それぞれのパラメータ設定に対する圧縮率や画像類似度といった効果を、結果予測部１４０の機能によって事前に予測できることは有用でありうる。
【００４５】
図９は、あるサンプル画像について、プログレッシブＪＰＥＧ、ＷｅｂＰ、およびＪＰＥＧ（ベースライン）のそれぞれの方式で圧縮した場合の描画の進行を示すグラフである。図９を参照すると、プログレッシブＪＰＥＧ、ＷｅｂＰのいずれも、通常のＪＰＥＧに比べて短い時間で描画が進行する。さらにプログレッシブＪＰＥＧとＷｅｂＰとを比較すると、プログレッシブＪＰＥＧは描画の初期の進行が速いのに対し、ＷｅｂＰは描画の中盤以降の進行が安定して速く、描画が完了するのもＷｅｂＰの方が若干速いことがわかる。従って、図示された例では、おおまかな画像（歪みやノイズが残っていてもよい）を早く表示させたい場合にはプログレッシブＪＰＥＧが適し、画像全体を少しでも早く表示させたい場合にはＷｅｂＰが適するともいえる。
【００４６】
ただし、図９に示されたようなそれぞれの圧縮方式における描画の進行や、それぞれの圧縮方式に係る処理時間や消費電力などのコストは、画像の内容によって異なりうる。例えば、現在Ｗｅｂ上にある画像の多くはＪＰＥＧ（ベースライン）であるが、これらの画像をプログレッシブＪＰＥＧに変換するか、ＷｅｂＰに変換するか、または変換せずにＪＰＥＧ（ベースライン）のまま提供するかは、変換の処理コストと、それぞれの圧縮方式の場合の描画時間との関係によって判断されうる。そのような判断をする場合に、結果予測部１４０の機能によって、実際に変換を実施する前にそれぞれの圧縮方式の効果を予測できることは有用でありうる。
【００４７】
下記の表２は、ＪＰＥＧ  ＸＲとＷｅｂＰについて、エンコードおよびデコードの所要時間を示す。なお、％の値は、ＰＮＧを１００％とした場合に、短縮される時間の割合を示す（つまり、「７５％」は、ＰＮＧの場合の処理時間の７５％分だけ短縮されることを示す）。−の値は、ＰＮＧよりも処理時間が延長されることを示す。
【００４８】
【表２】
0006274067.tif 000003
【００４９】
表に示されるように、ＪＰＥＧ  ＸＲとＷｅｂＰとでは、概してＷｅｂＰの方が高速である。また、非可逆圧縮（Lossy）の方が、可逆圧縮（Lossless）よりも高速である。なお、表には示されていないが、ＷｅｂＰは、ＪＰＥＧは、エンコードで５〜１０倍、デコードで約１．３倍高速である。ただし、例えばＷｅｂＰの非可逆圧縮の場合のエンコード時間に示されるように、圧縮の効果は画像の内容によって異なる。また、表には示されていないが、それぞれの圧縮方式、および非可逆圧縮または可逆圧縮の場合で、圧縮後のデータサイズや、処理時間や消費電力などのコストが、画像の内容によって異なる。従って、圧縮方式やそれぞれのパラメータ（非可逆圧縮か可逆圧縮か、など）を選択する場合に、結果予測部１４０の機能によって、実際に変換を実施する前にそれぞれの圧縮方式の効果を予測できることは有用でありうる。
【００５０】
例えば、上述のような本開示の一実施形態は、ウェブブラウザの画像表示に応用することができる。この場合、情報処理装置１００は、例えばプロキシサーバを構成する。この場合、サーバでは、クライアント側で画像を表示するブラウザを搭載するプラットフォーム（ハードウェアやオペレーティングシステム）の使用状況に適するように、画像を圧縮などすることが必要になる。この例では、例えば、クライアント側からの画像を含むウェブページのリクエストに、プラットフォームの使用状況を示す情報が添付される。
【００５１】
一方、プロキシサーバ（情報処理装置１００）では、提供する画像の特徴量が抽出され、該抽出された特徴量のマッチングによって画像の圧縮処理の結果が予測されている。プロキシサーバは、予測された圧縮処理の結果に基づいて、圧縮率や圧縮品質などがクライアントにおけるプラットフォームの使用状況に適合するように、圧縮処理の方式および／または処理パラメータを決定することができる。より具体的には、例えば、クライアントの端末装置が狭い帯域のネットワーク環境で動作している場合、圧縮率がより高い処理方式および／または処理パラメータを選択することによって、画像の表示に生じる遅延を最小化し、ユーザ体験を向上させることができる。
【００５２】
以上、本開示の一実施形態について、構成および効果の具体的な例を説明した。なお、本開示の実施形態は説明された例には限られず、本明細書の内容に基づいて当業者に明らかな範囲で、様々な変形例が可能である。
【００５３】
（５．ハードウェア構成）
次に、図１０を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図１０は、本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。図示された情報処理装置９００は、上記の実施形態における情報処理装置１００に対応しうる。
【００５４】
情報処理装置９００は、ＣＰＵ（Central  Processing  unit）９０１、ＲＯＭ（Read  Only  Memory）９０３、およびＲＡＭ（Random  Access  Memory）９０５を含む。また、情報処理装置９００は、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３、通信装置９２５を含んでもよい。さらに、情報処理装置９００は、必要に応じて、撮像装置９３３、およびセンサ９３５を含んでもよい。情報処理装置９００は、ＣＰＵ９０１に代えて、またはこれとともに、ＤＳＰ（Digital  Signal  Processor）、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、またはＦＰＧＡ（Field-Programmable  Gate  Array）などの処理回路を有してもよい。
【００５５】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理装置９００内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータなどを記憶する。ＲＡＭ９０５は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。ＣＰＵ９０１、ＲＯＭ９０３、およびＲＡＭ９０５は、ＣＰＵバスなどの内部バスにより構成されるホストバス９０７により相互に接続されている。さらに、ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Peripheral  Component  Interconnect/Interface）バスなどの外部バス９１１に接続されている。
【００５６】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置９００の操作に対応した携帯電話などの外部接続機器９２９であってもよい。入力装置９１５は、ユーザが入力した情報に基づいて入力信号を生成してＣＰＵ９０１に出力する入力制御回路を含む。ユーザは、この入力装置９１５を操作することによって、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりする。
【００５７】
出力装置９１７は、取得した情報をユーザに対して視覚や聴覚、触覚などの感覚を用いて通知することが可能な装置で構成される。出力装置９１７は、例えば、ＬＣＤ（Liquid  Crystal  Display）または有機ＥＬ（Electro-Luminescence）ディスプレイなどの表示装置、スピーカまたはヘッドフォンなどの音声出力装置、もしくはバイブレータなどでありうる。出力装置９１７は、情報処理装置９００の処理により得られた結果を、テキストもしくは画像などの映像、音声もしくは音響などの音声、またはバイブレーションなどとして出力する。
【００５８】
ストレージ装置９１９は、情報処理装置９００の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Hard  Disk  Drive）などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。ストレージ装置９１９は、例えばＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
【００５９】
ドライブ９２１は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体９２７のためのリーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録を書き込む。
【００６０】
接続ポート９２３は、機器を情報処理装置９００に接続するためのポートである。接続ポート９２３は、例えば、ＵＳＢ（Universal  Serial  Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small  Computer  System  Interface）ポートなどでありうる。また、接続ポート９２３は、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（登録商標）（High-Definition  Multimedia  Interface）ポートなどであってもよい。接続ポート９２３に外部接続機器９２９を接続することで、情報処理装置９００と外部接続機器９２９との間で各種のデータが交換されうる。
【００６１】
通信装置９２５は、例えば、通信ネットワーク９３１に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置９２５は、例えば、ＬＡＮ（Local  Area  Network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ、またはＷＵＳＢ（Wireless  USB）用の通信カードなどでありうる。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Asymmetric  Digital  Subscriber  Line）用のルータ、または、各種通信用のモデムなどであってもよい。通信装置９２５は、例えば、インターネットや他の通信機器との間で、ＴＣＰ／ＩＰなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置９２５に接続される通信ネットワーク９３１は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信などを含みうる。
【００６２】
撮像装置９３３は、例えば、ＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）またはＣＣＤ（Charge  Coupled  Device）などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置９３３は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
【００６３】
センサ９３５は、例えば、加速度センサ、角速度センサ、地磁気センサ、照度センサ、温度センサ、気圧センサ、または音センサ（マイクロフォン）などの各種のセンサである。センサ９３５は、例えば情報処理装置９００の筐体の姿勢など、情報処理装置９００自体の状態に関する情報や、情報処理装置９００の周辺の明るさや騒音など、情報処理装置９００の周辺環境に関する情報を取得する。また、センサ９３５は、ＧＰＳ（Global  Positioning  System）信号を受信して装置の緯度、経度および高度を測定するＧＰＳ受信機を含んでもよい。
【００６４】
以上、情報処理装置９００のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
【００６５】
（６．補足）
本開示の実施形態は、例えば、上記で説明したような情報処理装置、１または複数の情報処理装置を含むシステム、情報処理装置またはシステムで実行される情報処理方法、情報処理装置を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
【００６６】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【００６７】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【００６８】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）処理の対象になるデータの特徴量を抽出する特徴量抽出部と、
前記特徴量と、データベースにおいて前記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行する特徴量マッチング部と、
前記マッチングの結果に基づいて、前記データに対して前記処理を実行した場合の結果を予測する結果予測部と
を備える情報処理装置。
（２）前記予測された結果に基づいて前記処理の実行を制御する実行制御部をさらに備える、前記（１）に記載の情報処理装置。
（３）前記実行制御部は、前記予測された結果に基づいて前記処理のセッティングを決定する、前記（２）に記載の情報処理装置。
（４）前記セッティングは、前記処理の方式、または前記処理のパラメータを含む、前記（３）に記載の情報処理装置。
（５）前記実行制御部は、前記予測された結果に基づいて前記処理を実行するか否かを決定する、前記（２）〜（４）のいずれか１項に記載の情報処理装置。
（６）前記実行の結果を評価する結果評価部と、
前記評価された結果および前記特徴量に基づいて前記データベースを更新するデータベース更新部と
をさらに備える、前記（２）〜（５）のいずれか１項に記載の情報処理装置。
（７）前記マッチングが成立しなかった場合、前記データベース更新部は、前記特徴量を参照特徴量とするデータを前記データベースに追加する、前記（６）に記載の情報処理装置。
（８）前記結果予測部は、前記データを圧縮した場合の圧縮率、圧縮後の前記データの品質、または圧縮前後での前記データの同一性を予測する、前記（１）〜（７）のいずれか１項に記載の情報処理装置。
（９）前記結果予測部は、前記データを暗号化した場合の暗号強度を予測する、前記（１）〜（８）のいずれか１項に記載の情報処理装置。
（１０）前記結果予測部は、前記データに対して前記処理を実行した場合の処理時間またはリソース消費量を予測する、前記（１）〜（９）のいずれか１項に記載の情報処理装置。
（１１）前記データは、画像を表示させるためのデータを含み、
前記特徴量抽出部は、前記画像の解像度および回転に依存しない特徴量を抽出する、前記（１）〜（１０）のいずれか１項に記載の情報処理装置。
（１２）処理の対象になるデータの特徴量を抽出することと、
プロセッサが、前記特徴量と、データベースにおいて前記処理の予測される結果に関連付けられた１または複数の参照特徴量とのマッチングを実行することと、
前記マッチングの結果に基づいて、前記データに対して前記処理を実行した場合の結果を予測することと
を含む情報処理方法。
【符号の説明】
【００６９】
１００    情報処理装置
１１０    データ取得部
１２０    特徴量抽出部
１３０    特徴量マッチング部
１４０    結果予測部
１５０    実行制御部
１６０    結果評価部
１７０    データベース更新部
１８０    データベース
【図１】
0006274067.tif 000004
【図２】
0006274067.tif 000005
【図３】
0006274067.tif 000006
【図４】
0006274067.tif 000007
【図５】
0006274067.tif 000008
【図６】
0006274067.tif 000009
【図７】
0006274067.tif 000010
【図８】
0006274067.tif 000011
【図９】
0006274067.tif 000012
【図１０】
0006274067.tif 000013