(57)【要約】  画像処理装置は、プロセッサと、前記プロセッサに接続され、画像データベースを記憶する記憶部と、前記プロセッサに接続される表示部とを備え、前記プロセッサは、前記表示部を介して第１のオブジェクトの入力を受け付けると、前記表示部での前記第１のオブジェクトの配置情報を取得し、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクトとの相関関係を示す第１の共起情報を取得し、前記第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力する。
2017104043.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、
前記プロセッサに接続され、画像データベースを記憶する記憶部と、
前記プロセッサに接続される表示部とを備え、
前記プロセッサは、
前記表示部を介して第１のオブジェクトの入力を受け付けると、前記表示部での前記第１のオブジェクトの配置情報を取得し、
前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクトとの相関関係を示す第１の共起情報を取得し、
前記第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力する、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記配置情報は、前記第１のオブジェクトの大きさ及び位置情報を含むことを特徴とする画像処理装置。
【請求項３】
請求項１に記載の画像処理装置において、
前記第１の共起情報は、前記第１のオブジェクトが画像のある領域に存在したときの他のオブジェクトの出現確率を領域ごとに表すものであることを特徴とする画像処理装置。
【請求項４】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記表示部を介して前記第２のオブジェクトの入力を受け付けると、前記表示部での前記第２のオブジェクトの配置情報を取得し、
前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報と前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクト及び前記第２のオブジェクトの双方との相関関係を示す第２の共起情報を取得し、
前記第２の共起情報に基づく第３のオブジェクトの候補を前記表示部へ出力することを特徴とする画像処理装置。
【請求項５】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記表示部を介して前記第２のオブジェクトの入力を受け付けると、前記表示部での前記第２のオブジェクトの配置情報を取得し、
前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第２のオブジェクトとの相関関係を示す第２の共起情報を取得し、
前記第２の共起情報に基づく第３のオブジェクトの候補を前記表示部へ出力することを特徴とする画像処理装置。
【請求項６】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記表示部を介して、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報と前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報とを含む検索クエリを用いた画像検索の指示を受け付けると、前記第１のオブジェクトと前記第２のオブジェクトを含む合成画像を作成し、
前記合成画像を用いて前記検索クエリに類似する画像を前記画像データベースから検索し、検索結果を前記表示部へ表示することを特徴とする画像処理装置。
【請求項７】
請求項６に記載の画像処理装置において、
前記プロセッサは、更に、
前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報を含む第１クエリに類似する画像を前記画像データベースから検索し、前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報を含む第２クエリに類似する画像を前記画像データベースから検索し、
前記合成画像による検索結果と、前記第１クエリによる検索結果と、前記第２クエリによる検索結果とを統合し、統合した結果を前記表示部へ表示することを特徴とする画像処理装置。
【請求項８】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記表示部を介して、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報と前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報とを含む検索クエリを用いた画像検索の指示を受け付けると、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報を含む第１クエリに類似する画像を前記画像データベースから検索し、前記第２のオブジェクトと前記第２のオブジェクトの前記配置情報を含む第２クエリに類似する画像を前記画像データベースから検索し、
前記第１クエリによる検索結果と前記第２クエリによる検索結果を統合し、統合した結果を前記表示部へ表示することを特徴とする画像処理装置。
【請求項９】
請求項８に記載の画像処理装置において、
前記プロセッサは、
前記第１のオブジェクトの大きさ及び前記第２のオブジェクトの大きさに基づいて、前記画像データベースを検索する際に使用する特徴量を前記第１クエリと前記第２クエリとで切り替えることを特徴とする画像処理装置。
【請求項１０】
請求項８に記載の画像処理装置において、
前記プロセッサは、
前記第１のオブジェクト及び前記第２のオブジェクトの入力順序に基づいて、前記第１クエリと前記第２クエリとに重み付けすることを特徴とする画像処理装置。
【請求項１１】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記第１のオブジェクトの前記配置情報が変更されると、前記第１のオブジェクトと前記第１のオブジェクトの前記変更された配置情報とを用いて、前記第１の共起情報を再計算し、
前記再計算された第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力することを特徴とする画像処理装置。
【請求項１２】
請求項１に記載の画像処理装置において、
前記プロセッサは、
前記第１のオブジェクトを用いて前記画像データベースを検索し、
前記検索によって得られた画像の中の前記第１のオブジェクトが前記第１のオブジェクトの前記配置情報と類似するように前記画像を補正し、
前記補正された画像を用いて前記第１の共起情報を取得することを特徴とする画像処理装置。
【請求項１３】
プロセッサと、
前記プロセッサに接続され、少なくともクエリ入力領域を有する画像検索インタフェースを表示する表示部とを備え、
前記プロセッサは、
前記クエリ入力領域に第１のオブジェクトが入力されると、第２のオブジェクトの候補を前記画像検索インタフェースに表示し、
前記第２のオブジェクトが選択されると、前記第２のオブジェクトを前記クエリ入力領域に表示する、画像検索インタフェース表示装置。
【請求項１４】
請求項１３に記載の画像検索インタフェース表示装置において、
前記プロセッサは、
前記クエリ入力領域のある領域の指定を受け取った後に前記第２のオブジェクトの候補を前記画像検索インタフェースに表示するか、又は、
前記クエリ入力領域に第１のオブジェクトが入力された後に前記第２のオブジェクトの候補及び前記第２のオブジェクトの配置の候補を前記画像検索インタフェースに表示する
ことを特徴とする画像検索インタフェース表示装置。
【請求項１５】
プロセッサと、前記プロセッサに接続され、画像データベースを記憶する記憶部と、前記プロセッサに接続される表示部とを備える情報処理装置における画像検索インタフェースの表示方法であって、
前記プロセッサが、前記表示部を介して第１のオブジェクトの入力を受け付けると、前記表示部での前記第１のオブジェクトの配置情報を取得するステップと、
前記プロセッサが、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクトとの相関関係を示す第１の共起情報を取得するステップと、
前記プロセッサが、前記第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力するステップと
を含む画像検索インタフェースの表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像検索インタフェース表示装置、及び画像検索インタフェースの表示方法に関する。
【背景技術】
【０００２】
テレビ映像のデジタルアーカイブ化やインターネット上の動画配信サービスの普及により、大規模な画像データを高速に検索及び分類する必要性が増加している。また、セキュリティ向けに蓄積された監視画像の解析に対する期待が高まっている。これらの膨大な画像に対して人手でテキスト情報を付与することが困難なことから、画像中の特徴量を用いた画像検索技術が求められている。【０００３】
大規模かつ高速な類似画像検索システムが実用化されつつある。例えば、事前に画像特徴量を抽出してデータベースを構築し、クエリ画像に見た目の類似する画像を高速に探し出す技術が提案されている。また、画像中の物体を含む領域を検出する画像処理技術と組み合わせることで、画像中の物体に着目した詳細な類似画像検索が可能となる。【０００４】
本技術分野の背景技術として、特許文献１がある。特許文献１には、「検索したい画像に含まれるオブジェクトの名称をキーワードとして入力し、そのオブジェクトをレイアウト配置したクエリ画像を生成し画像検索する。」と記載されている（要約参照）。【０００５】
特許文献１に記載のシステムは、ユーザが指定した複数のキーワードから物体の画像サンプルを取得し、物体の平均的な大きさ及び位置に従って自動的にレイアウトを作成し、当該レイアウトに従って合成された画像を用いて類似画像検索を行う。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１９７８９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載のシステムにおいては、ユーザが、多数の物体の情報（キーワード）を入力する必要がある。ここで、特許文献１に記載のシステムでは、複数の物体の情報を入力したとしても、複数の物体間の関係性を考慮した検索クエリとならないため、検索精度が低下する可能性がある。【０００８】
そこで、本発明は、複数の物体間の関係性を考慮した検索クエリの作成を支援する技術を提供する。
【課題を解決するための手段】
【０００９】
例えば、上記課題を解決するために、請求の範囲に記載の構成を採用する。本願は上記課題を解決する手段を複数含んでいるが、その一例をあげるならば、プロセッサと、前記プロセッサに接続され、画像データベースを記憶する記憶部と、前記プロセッサに接続される表示部とを備える画像処理装置が提供される。前記プロセッサは、前記表示部を介して第１のオブジェクトの入力を受け付けると、前記表示部での前記第１のオブジェクトの配置情報を取得し、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクトとの相関関係を示す第１の共起情報を取得し、前記第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力する。【００１０】
また、他の例として、プロセッサと、前記プロセッサに接続され、クエリ入力領域を有する画像検索インタフェースを表示する表示部とを備える画像検索インタフェース表示装置が提供される。前記プロセッサは、前記クエリ入力領域に第１のオブジェクトが入力されると、第２のオブジェクトの候補を前記画像検索インタフェースに表示し、前記第２のオブジェクトが選択されると、前記第２のオブジェクトを前記クエリ入力領域に表示する。【００１１】
また、他の例として、プロセッサと、前記プロセッサに接続され、画像データベースを記憶する記憶部と、前記プロセッサに接続される表示部とを備える情報処理装置における画像検索インタフェースの表示方法が提供される。当該画像検索インタフェースの表示方法は、前記プロセッサが、前記表示部を介して第１のオブジェクトの入力を受け付けると、前記表示部での前記第１のオブジェクトの配置情報を取得するステップと、前記プロセッサが、前記第１のオブジェクトと前記第１のオブジェクトの前記配置情報とを用いて、前記画像データベースに基づく前記第１のオブジェクトとの相関関係を示す第１の共起情報を取得するステップと、前記プロセッサが、前記第１の共起情報に基づく第２のオブジェクトの候補を前記表示部へ出力するステップとを含む。
【発明の効果】
【００１２】
本発明によれば、複数の物体間の関係性を考慮した検索クエリの作成を支援することができる。なお、本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、上記した以外の、課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１３】
【図１】実施例１における画像検索システムの構成例を示すブロック図である。
【図２】実施例１における画像検索システムのハードウェア構成例を示すブロック図である。
【図３Ａ】実施例１における画像データベースの構造例を示す図である。
【図３Ｂ】実施例１における画像データベースの構造例を示す図である。
【図４Ａ】実施例１における、画像中の物体の配置情報の第１の例を示す図である。
【図４Ｂ】実施例１における、画像中の物体の配置情報の第２の例を示す図である。
【図５】実施例１における、データベース登録処理のフローチャートの一例である。
【図６】実施例１において、共起情報を用いたクエリ入力支援および画像検索の例を説明する図である。
【図７】実施例１において、共起情報生成の例を説明する図である。
【図８】実施例１における、共起情報を用いたクエリ入力支援および画像検索の処理のフローチャートの一例である。
【図９】実施例１における、共起情報生成の処理のフローチャートの一例である。
【図１０】実施例１において、画像検索の処理のフローチャートの一例である。
【図１１Ａ】実施例１における画像検索インタフェースの一例を示す図である。
【図１１Ｂ】実施例１における画像検索インタフェースの一例を示す図であり、物体の配置を変更したときの画像検索インタフェースを示す。
【図１２】実施例１におけるシステム全体の処理のシーケンス図の一例である。
【図１３】実施例２における、検索結果で得られた画像に対する補正処理を説明するための図である。
【図１４】実施例２における、共起情報生成の処理のフローチャートの一例である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施例について説明する。なお、添付図面は本発明の原理に則った具体的な実施例を示しているが、これらは本発明の理解のためのものであり、決して本発明を限定的に解釈するために用いられるものではない。なお、各図において共通の構成については同一の参照符号が付されている場合がある。
【００１５】
＜実施例の概要＞
以下で説明する画像検索装置は、画像中の物体に着目した類似画像検索を行う装置である。画像検索装置は、新規の登録対象の画像から物体を検出し、検出した物体の特徴量を抽出し、カテゴリを推定する。データベースには、画像と共に、物体の配置情報と特徴量が蓄積される。検索時には、入力された第一クエリ（物体の画像とその配置情報）を条件にして、自動的に画像検索を行う。得られた検索結果から、第一クエリを含む画像に含まれる、他の物体の情報をデータベースから取得し、第一クエリの物体との共起情報を求める。画像における物体の共起性とは、物体Ａと物体Ｂが画像中に同時に存在する確率を表す。以下の例では、画像における物体の共起性は、物体Ａが画像中のある領域Ｘに存在したときの物体Ｂの出現確率を領域ごとに表すものとする。
【００１６】
画像検索装置は、求めた共起情報を用いて、第二クエリ（物体及びその配置情報）の候補をユーザに提示する。ユーザは、提示された候補の中から所望の物体を選択するだけで、検索クエリを詳細化することができる。この繰り返し操作の結果得られた検索クエリは、もっともらしい物体の組み合わせ及びそれらの配置となっているため、画像検索の精度が上がる。
【００１７】
[実施例１]
図１は、実施例１の画像検索システム１００の構成例を示すブロック図である。画像検索システム１００は、物体の共起情報を用いたクエリ入力支援のユーザインタフェースを備える。この構成によれば、画像中の物体に着目した画像検索を効率的に実行することができる。
【００１８】
画像検索システム１００は、例えば、画像記憶装置１０１と、入力装置１０２と、表示装置１０３と、画像検索装置１０４とを含む。画像記憶装置１０１は、静止画データ又は動画データを保存する記憶媒体であり、例えば、コンピュータ内蔵のハードディスクドライブ、又は、ＮＡＳ（Network Attached Storage）もしくはＳＡＮ（Storage Area Network）などのネットワークで接続されたストレージシステムを用いて構成される。また、画像記憶装置１０１は、例えば、カメラから継続的に入力される画像データを一時的に保持するキャッシュメモリであってもよい。
【００１９】
入力装置１０２は、例えば、マウス、キーボード、タッチデバイスなどの、ユーザの操作を画像検索装置１０４に伝えるための入力インタフェースである。表示装置１０３は、例えば、液晶ディスプレイなどの出力インタフェースであり、画像検索装置１０４の検索結果の表示、及び、ユーザとの対話的操作などのために用いられる。
【００２０】
画像検索装置１０４は、検索に必要な情報を抽出し、データベースへの登録処理を行う。登録処理は、画像記憶装置１０１に蓄積された画像から物体領域を検出することと、検出した各領域について画像特徴量の抽出することと、物体のカテゴリを推定することと、これらの情報を画像データベース１０９に登録することとを含む。
【００２１】
また、画像検索装置１０４は、ユーザが入力装置１０２から指定した検索クエリを用いて画像データベース１０９から検索クエリに合致する画像を検索し、検索結果を表示装置１０３に表示するための検索処理を行う。
【００２２】
検索処理において、ユーザはクエリを指定する。クエリは、物体及び物体の配置情報を含む。ユーザは、例えば、表示装置１０３に表示されたキャンバス上に、物体の配置情報を指定し、物体の名称又は画像を入力する。配置情報は、物体の大きさ及び位置情報（以下の例では、座標）を含む。画像検索装置１０４は、画像データベース１０９に蓄積されたデータから、入力された物体の共起情報を生成し、ユーザが次に入力する可能性の高い物体を推定し、表示装置１０３に候補を表示する。ユーザは提示された候補から選択することで、何度も物体の画像及び配置情報を入力することなく、複数の物体を指定した検索クエリを作成することができる。画像検索装置１０４は、作成された検索クエリを用いて画像検索を実行し、検索結果を表示装置１０３に表示する。
【００２３】
画像検索装置１０４は、画像入力部１０５と、物体検出部１０６と、特徴量抽出部１０７と、カテゴリ推定部１０８と、画像データベース１０９と、クエリ入力部１１０と、共起情報生成部１１１と、クエリ候補推定部１１２と、画像検索部１１３とを含む。画像入力部１０５と、物体検出部１０６と、特徴量抽出部１０７と、カテゴリ推定部１０８は、上記の登録処理を実行するための処理モジュールである。クエリ入力部１１０と、共起情報生成部１１１と、クエリ候補推定部１１２と、画像検索部１１３は、上記の検索処理を実行するための処理モジュールである。
【００２４】
画像入力部１０５は、画像記憶装置１０１から、静止画データ又は動画データの入力を受け付け、入力されたデータのデータ形式に応じて、入力されたデータを画像検索装置１０４内部で使用するデータ形式に変換する。例えば、動画データの入力を受け付けた場合、画像入力部１０５は、フレーム（静止画データ形式）に分解する動画デコード処理を行う。
【００２５】
物体検出部１０６は、入力された画像から物体が含まれる部分領域を検出する。物体検出処理は、公知の手法を用いることができる。例えば、物体検出部１０６は、特定のカテゴリの物体にのみ反応する識別器を用いて、画像中をスキャンすることで領域を検出してもよい。また、物体検出部１０６は、局所的な色及び形状の特徴を用いて、領域セグメンテーションを行うことで、任意の物体が含まれる可能性の高い領域の候補を検出してもよい。なお、「物体（オブジェクト）」は、定形のものだけでなく、例えば、「空」、「海」、「森」などの非定形のものも含んでよい。本システムでは、物体検出処理により、例えば一枚の画像から数個〜数十個の物体領域が検出される。検出結果の情報は、例えば、領域の中心の水平座標、垂直座標、領域の幅、高さの４値で表現される。物体検出部１０６は、検出結果の情報を、画像データベース１０９に登録する。
【００２６】
特徴量抽出部１０７は、入力画像全体及び入力画像から検出された物体領域から、画像特徴量を抽出する。画像特徴量は、画像の色、形状、テクスチャなどの特徴を示す画像間で比較可能な値である。画像特徴量は、例えば、固定長のベクトルで表現される。画像特徴量としては、画像間で比較可能な情報であればよく、公知の様々な情報が採用されてよい。特徴量抽出部１０７は、得られた画像特徴量を、画像データベース１０９に登録する。
【００２７】
特徴量抽出部１０７は、例えば、画像データベース１０９に画像特徴量を登録する際に、高速検索を目的として、データのクラスタリング処理を行ってもよい。特徴量抽出部１０７は、例えば、ｋ−ｍｅａｎｓアルゴリズムなどのクラスタリング処理によって、類似度の高い特徴量を有する１以上の登録データからなるクラスタを生成する。類似度は、同種の２つの特徴量間の類似性を示す指標であり、例えば、値域が［０，１］の所定の減少関数に２つの特徴量間の距離を代入することにより得られる。なお、類似度の算出に関しては、公知の様々な手法を採用してもよい。
【００２８】
画像データベース１０９は、例えば、クラスタの代表値（例えばクラスタメンバの平均ベクトル）とクラスタメンバのＩＤを記録する。画像検索装置１０４は、検索時において、例えば、検索クエリの特徴量とクラスタの代表値とを比較し、類似度の高いクラスタに対してのみ、検索クエリと当該クラスタのメンバとの間で特徴量比較を行う。これにより、処理回数を削減し、高速に探索することができる。
【００２９】
カテゴリ推定部１０８は、物体検出部１０６で検出された部分領域のカテゴリ又は物体名称を推定する。カテゴリ推定部１０８は、例えば、機械学習によって生成された画像カテゴリ分類器を備える。カテゴリ推定部１０８は、画像カテゴリ分類器に、特徴量抽出部１０７で抽出された特徴量を入力することにより、カテゴリを出力する。物体検出処理において、特定カテゴリの識別器を用いた場合は、識別器のカテゴリをそのまま用いても良い。カテゴリ推定部１０８は、得られた物体のカテゴリ又は名称を、画像データベース１０９に登録する。
【００３０】
画像データベース１０９は、以上の処理で得られた、画像データ、物体検出結果、物体の画像特徴量、及び物体のカテゴリなどを保持する。画像データベース１０９は、特徴量を保存しているため、後述する共起情報生成部１１１及び画像検索部１１３は、その特徴量を用いた類似画像検索行うことができる。
【００３１】
画像検索装置１０４における類似画像検索は、クエリと特徴量が近い順にデータを並び替えて出力する機能である。画像検索部１１３は、例えば、ベクトル間のユークリッド距離を用いて特徴量を比較する。また、類似画像検索では、条件に一致するデータのみを検索対象とすることができる。例えば、物体の座標を条件として、探索範囲を絞り込むことができる。画像データベース１０９の構造について、詳しくは図３を用いて後述する。
【００３２】
以上が、画像検索装置１０４の登録処理における各部の動作である。次に、画像検索装置１０４の検索処理における各部の動作を説明する。
【００３３】
クエリ入力部１１０は、ユーザが入力装置１０２を介して指定したクエリを受け付ける。画像検索装置１０４では、クエリは、物体の画像及び配置情報（物体の大きさ及び座標）で与えられる。また、画像検索装置１０４の内部に、キーワード又は音声と画像とを関連付けた変換テーブルを保持してもよく、クエリ入力部１１０は、クエリとしてキーワード又は音声を受け付けるように構成されてもよい。さらに、よく使用される物体に関しては、テンプレートとして保持しておき、ユーザインタフェース上でリスト表示されたテンプレートからユーザに選択させるようにしてもよい。
【００３４】
共起情報生成部１１１は、入力された物体と配置情報から、その物体と他の物体との共起情報を生成する。共起情報とは、ある物体Ａが画像中に現れた時に、他の物体Ｂが画像中に出現する確率を表す情報である。画像に関する共起情報は、他の物体Ｂが画像中のどの領域に出現するか可能性が高いか、という空間情報を含む。例えば画像中の座標に関しては、画像を格子状に分割し、物体Ａがある領域に指定されたときに、各領域について物体Ｂが含まれる確率を求める。共起情報には、物体の奥行き及びサイズなどの情報を含めてもよい。共起情報生成部１１１は、画像データベース１０９に蓄積された物体情報を用いて共起情報を生成する。共起情報の生成に関しては図７を用いて詳しく後述する。
【００３５】
クエリ候補推定部１１２は、生成された共起情報を用いて、ユーザが次に入力する可能性の高いクエリの候補を表示装置１０３に表示する。クエリ候補推定部１１２は、ユーザが第一クエリを入力した後に、共起性の高い物体とその位置を、表示装置１０３上のユーザインタフェース上に描画してもよい。別の例として、クエリ候補推定部１１２は、ユーザが第二クエリの場所を指定した後に、その場所に関して共起性の高い物体（例えば、出現確率が高い物体）を、出現確率が高い順にリスト表示してもよい。また、別の例として、クエリ候補推定部１１２は、ユーザが物体名を指定した場合に、その物体の配置の候補を表示するようにしてもよい。
【００３６】
以上のクエリ入力処理を繰り返し行うことで、複数の物体とそれらの配置を条件とする検索クエリが得られる。画像検索部１１３は、この検索クエリに該当する画像を画像データベース１０９から検索する。検索処理の詳細については、図１０の説明として後述する。検索結果は、画像データベース１０９に登録された画像のＩＤと、クエリとの類似度のペアを、類似度が高い順にソートしたリストとして出力される。画像検索部１１３は、以上の検索処理によって得られた検索結果を、表示装置１０３のユーザインタフェース上に表示することにより検索結果をユーザに提示する。
【００３７】
図２は、本実施例の画像検索システム１００のハードウェア構成例を示すブロック図である。画像検索装置１０４は、例えば、一般的な計算機によって実現される。例えば、画像検索装置１０４を構成する計算機は、相互に接続されたプロセッサ２０１及び記憶装置２０２を有してもよい。記憶装置２０２は、任意の種類の記憶媒体によって構成される。例えば、記憶装置２０２は、半導体メモリと、ハードディスクドライブとの組み合わせによって構成されてもよい。入力装置１０２及び表示装置１０３は、プロセッサ２０１に接続され、当該計算機での入出力操作が可能である。
【００３８】
なお、画像入力部１０５、物体検出部１０６、特徴量抽出部１０７、カテゴリ推定部１０８、クエリ入力部１１０、共起情報生成部１１１、クエリ候補推定部１１２、及び画像検索部１１３といった機能モジュールは、例えば、プロセッサ２０１が記憶装置２０２に格納された処理プログラム２０３を実行することによって実現される。言い換えると、上記の各機能モジュールを実現するプログラムが処理プログラム２０３に含まれており、各機能モジュールの処理は、処理プログラム２０３に基づいて、プロセッサ２０１によって実行される。したがって、以下の説明において、図１の機能モジュールを主語として処理内容を説明した場合、プロセッサ２０１を主語とした説明としてもよい。
【００３９】
また、画像データベース１０９のデータは、例えば記憶装置２０２に含まれる。処理負荷分散などを目的として、複数のサーバで構成する場合は、画像データベース１０９と処理プログラム２０３が実行される装置は、ネットワークで接続された物理的に異なるサーバであってもよい。
【００４０】
画像検索装置１０４は、さらに、プロセッサ２０１に接続されたネットワークインターフェース装置（ＮＩＦ）２０４を含む。画像記憶装置１０１は、例えば、ネットワークインターフェース装置２０４を介して画像検索装置１０４に接続された、ＮＡＳ又はＳＡＮであってもよい。なお、別の例として、画像記憶装置１０１は、記憶装置２０２に含まれてもよい。
【００４１】
図３Ａ及び図３Ｂは、本実施例の画像データベース１０９の構成及びデータ例を示す説明図である。なお、本実施形態において、システムが使用する情報は、データ構造に依存せず、どのようなデータ構造で表現されていてもよい。図３Ａ及び図３Ｂはテーブル形式の例を示しているが、例えば、テーブル、リスト、データベース又はキューから適切に選択したデータ構造体が、情報を格納することができる。
【００４２】
画像データベース１０９は、例えば、画像情報を保持する画像テーブル３００と、物体情報を保持する物体テーブル３１０とを含む。図３Ａ及び図３Ｂの各テーブル構成及び各テーブルのフィールド構成は、あくまで一例であり、例えばアプリケーションに応じてテーブル及びフィールドが追加されてもよい。また、同様の情報を保持していれば、テーブル構成を変えてもよい。例えば、画像データベース１０９は、画像テーブル３００と物体テーブル３１０とが結合された一つのテーブルで構成されてもよい。
【００４３】
画像テーブル３００は、例えば、画像ＩＤフィールド３０１、画像データフィールド３０２、及び特徴量フィールド３０３を含む。画像ＩＤフィールド３０１は、各画像データの識別番号を保持する。画像データフィールド３０２は、例えば、検索結果を表示する際に用いられる画像データをバイナリで保持する。特徴量フィールド３０３は、画像から抽出された特徴量を保持する。特徴量は、例えば、固定長のベクトルデータで与えられる。
【００４４】
物体テーブル３１０は、例えば、物体ＩＤフィールド３１１、画像ＩＤフィールド３１２、カテゴリフィールド３１３、水平座標フィールド３１４、垂直座標フィールド３１５、幅フィールド３１６、高さフィールド３１７及び特徴量フィールド３１８を含む。
【００４５】
物体ＩＤフィールド３１１は、画像から検出された物体の識別番号を保持する。画像ＩＤフィールド３１２は、物体の検出元の画像のＩＤを保持する。カテゴリフィールド３１３は、物体のカテゴリ推定結果を保持する。図３Ｂでは、カテゴリを文字列で表現しているが、カテゴリフィールド３１３は、テーブル又はアプリケーション内部で管理する識別番号で保持してもよい。
【００４６】
水平座標フィールド３１４は、物体の中心座標の水平座標を保持し、垂直座標フィールド３１５は、物体の中心座標の垂直座標を保持し、幅フィールド３１６は、物体の幅を保持し、高さフィールド３１７は、物体の高さを保持する。図３Ｂの例では、これらのフィールド３１４〜３１７は、画像サイズで正規化した値を保持している。水平座標及び幅については、検出元の画像の幅を１とした時の割合を表し、垂直座標及び高さについては、検出元の画像の高さを１とした時の割合を表す。
【００４７】
図４Ａ及び図４Ｂは、物体検出部１０６での物体検出の例と正規化された座標を説明するための図である。図４Ａは、画像４００から物体４０１、物体４０２、及び物体４０３が検出された例を示す。図４Ｂは、画像４１０から物体４１１、及び物体４１２が検出された例を示す。例えば、物体４０１は、正規化された中心座標が［０．５，０．３］、幅が０．８、高さが０．４である。
【００４８】
特徴量抽出部１０７は、物体の領域から特徴量を抽出する。特徴量フィールド３１８は、物体の領域から抽出された特徴量を保持する。物体の特徴量は、画像全体の特徴量と異なるアルゴリズムで抽出されたものを用いてもよい。
【００４９】
本実施例の画像検索装置１０４は、登録時に構築された物体情報を用いて共起情報を生成し、共起情報に基づいてユーザのクエリ入力を補助することにより、画像検索を容易に実行することができる。
【００５０】
共起情報の生成に必要な情報を得るために、検索を実行する前に、検索対象の画像データベース１０９への登録処理を実行しておく必要がある。図３Ａ及び図３Ｂで説明した画像データベース１０９の構成例の情報が蓄積されていれば、登録時の手順は任意であっても良いが、例えば、図５の手順を用いることができる。
【００５１】
図５は、データベース登録の処理フローを表す図である。以下、図５の各ステップについて説明する。
【００５２】
画像入力部１０５は、画像記憶装置１０１から画像データを取得し、取得した画像データを必要に応じてシステム内部で利用可能な形式に変換する（Ｓ５０１）。画像入力部１０５は、例えば、動画データの入力を受け付けた場合、動画データをフレーム（静止画データ形式）に分解する動画デコード処理を行う。
【００５３】
特徴量抽出部１０７は、ステップＳ５０１で入力された画像から特徴量を抽出する（Ｓ５０２）。
【００５４】
物体検出部１０６は、ステップＳ５０１で入力された画像から、物体候補領域（以下、単に「物体」という）を検出する（Ｓ５０３）。そして、物体検出部１０６は、検出された物体の中心座標（水平座標及び垂直座標）、幅、及び高さを、それぞれ、画像の幅、高さで正規化する。物体検出は、前述した通り、識別器を用いたラスタスキャンを用いる手法や、領域セグメンテーションを用いる手法が利用できる。
【００５５】
画像検索装置１０４は、ステップＳ５０３で検出された各物体について、ステップＳ５０５からステップＳ５０６の処理を繰り返す（Ｓ５０４〜Ｓ５０７のループ）。特徴量抽出部１０７は、処理対象の物体の領域から画像特徴量を抽出する（Ｓ５０５）。カテゴリ推定部１０８は、ステップ５０５で得られた特徴量を用いて物体のカテゴリを推定する（Ｓ５０６）。例えば、カテゴリの推定には、機械学習によって生成されたカテゴリ分類器を用いることができる。この時、カテゴリ推定部１０８は、どのカテゴリにも該当しない物体を、誤検出と判定して破棄してもよい。
【００５６】
画像検索装置１０４は、上記の処理によって得られた画像と物体の情報を画像データベース１０９に登録する（Ｓ５０８）。この時、特徴量について、高速検索を実現するためのデータクラスタリング処理を実施してもよい。
【００５７】
図６は、共起情報に基づくクエリ入力支援を説明するための図である。図６の６００は、表示装置１０３に表示されるクエリ入力画面の遷移を時系列で表し、図６の６１０は、画像検索装置１０４内部のデータフローを表す。
【００５８】
表示装置１０３には、空のキャンバスが表示されている（６０１）。ユーザは入力装置１０２を用いてキャンバス上にクエリを配置していく。ユーザは、例えば、マウスカーソル６２１を操作することで画像検索装置１０４のクエリ入力部１１０に情報を伝える。図６の例では、まずユーザが第１の物体（Ｏｂｊｅｃｔ＿Ａ）の画像をキャンバスの左上に入力する（６０２）。このとき、クエリ入力部１１０は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）の入力を受付けると、第１の物体（Ｏｂｊｅｃｔ＿Ａ）の配置情報（大きさ及び座標）を取得する。
【００５９】
画像検索装置１０４の共起情報生成部１１１は、キャンバス６０２に入力された第１の物体（Ｏｂｊｅｃｔ＿Ａ）の画像と配置情報を用いて、画像データベース１０９から該当する物体の情報を取得する。なお、前述の通り、クエリの入力方法は、テキスト又は音声によるキーワードであってもよい。このとき画像検索方法は例えば、以下の４つが考えられる。
（１）クエリが画像の場合、画像特徴量で検索
（２）クエリが画像の場合、物体カテゴリを推定し、カテゴリを条件として検索
（３）クエリがキーワードの場合、キーワードをカテゴリの条件として検索
（４）クエリがキーワードの場合、変換テーブルを用いて画像に変換し、画像特徴量で検索
【００６０】
上記の画像検索方法を実現するために、共起情報生成部１１１は、特徴量抽出部１０７及びカテゴリ推定部１０８の機能を用いてもよい。これにより、クエリから画像特徴量を抽出したり、カテゴリを推定することができる。
【００６１】
（１）〜（４）のいずれも検索方法についても、検索結果は同様の形式で得られる。すなわち、上記の検索方法により、共起情報生成部１１１は、図３Ｂの中のある特定の物体（ここでは、Ｏｂｊｅｃｔ＿Ａ）を検索することができる。この検索結果を用いて第１の物体（Ｏｂｊｅｃｔ＿Ａ）が左上に入力された時の、他の物体との共起性を推定する。
【００６２】
図７は、検索結果から共起情報を生成する手順を表す図である。ここでは、共起情報生成部１１１が、第１の物体（Ｏｂｊｅｃｔ＿Ａ）の画像をキャンバスの左上に配置した第一クエリを用いて、画像データベース１０９を検索することを想定する。物体及びその配置情報を含む第一クエリを用いて絞り込み検索を行うと、第一クエリの条件に類似する複数の画像、すなわち、類似の物体が類似の場所に存在する複数の画像が得られる（７０１）。
【００６３】
共起情報生成部１１１は、条件付き検索結果７０１として得られた複数の画像から、これらの画像に含まれる他の物体の配置情報を取得する。そして、共起情報生成部１１１は、取得した他の物体のカテゴリを、カテゴリごとに集計する（７０２）。例えば、共起情報生成部１１１は、画像を複数の領域に分割し、各領域に対して他の物体の出現数をカウントする。この時、複数の領域にまたがって物体が配置されている場合は、その物体の出現数を複数の領域にカウントしてもよい。また、物体の中心座標に近いほど値が大きくなるように重みを付けてカウントしてもよい。
【００６４】
共起情報生成部１１１は、集計した結果を、例えば全体の出現数で割るなどして正規化することで、共起情報のマップ（以下、共起性マップ）を作成する（７０３）。共起性マップは、画像データベース１０９に基づく第１の物体（Ｏｂｊｅｃｔ＿Ａ）と他の物体との相関関係を表すものである。図７の例では、共起情報生成部１１１は、画像を９個の領域に分割し、対象のカテゴリの領域毎に出現数（ここでは、正規化した値）を計算する。図７の例では、物体のカテゴリ（Ｏｂｊｅｃｔ＿Ｂ、Ｏｂｊｅｃｔ＿Ｃ、Ｏｂｊｅｃｔ＿Ｄ）ごとに共起性マップが作成されている。共起性マップは、ある物体に関して、他の物体が画像中のどの領域に出現するかを示す空間情報を含めばよく、図７の形式に限定されない。
【００６５】
クエリ候補推定部１１２は、この共起性マップにおいて、相対的に値の大きいカテゴリ及び位置をクエリ候補（第２の物体の候補）として表示装置１０３に表示する。また、ユーザから第二クエリの場所が指定された後、クエリ候補推定部１１２は、その領域に限定して値の高いカテゴリをクエリ候補として提示してもよい。図７の例では、ユーザが第二クエリにおいて点線の領域７０５を指定したとき、クエリ候補推定部１１２は、共起性マップの対応する領域において値が大きい物体（Ｏｂｊｅｃｔ＿Ｂ、Ｏｂｊｅｃｔ＿Ｃ）を表示装置１０３に表示する（７０４）。
【００６６】
図６の説明に戻り、ユーザが、第二クエリの場所をマウスカーソルによって選択する（６０３）。クエリ候補推定部１１２は、上記の処理によって得られた共起性マップを用いて、該当領域に存在する確率の高い物体のカテゴリをクエリ候補リストとしてポップアップ表示する（６０４）。表示方法は、カテゴリ名でも良いし、画像であってもよい。
【００６７】
ユーザは、ポップアップ表示されたクエリ候補リストに所望の物体があれば、その物体を選択する。クエリ入力部１１０は、選択された物体を第２の物体（Ｏｂｊｅｃｔ＿Ｂ）としてキャンバスに追加する（６０５）。クエリ候補リストに所望の物体が見つからなければ、ユーザは、第一クエリと同様に手動で入力してもよい。また、ユーザは、新たな物体をキャンバスに追加した後に、その物体の配置を調整しても良い。なお、クエリ入力部１１０は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）又は第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の入力の際に、背景の画像の入力を受付けてもよい。この場合、キャンバスには、背景画像が表示される。物体の入力時に背景の合成を行うことで、類似画像検索の精度を上げることができる。
【００６８】
クエリ入力部１１０は、第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の入力を受付けると、第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の配置情報（大きさ及び座標）を取得する。共起情報生成部１１１は、第一クエリ（第１の物体（Ｏｂｊｅｃｔ＿Ａ）及びその配置情報）と第二クエリ（第２の物体（Ｏｂｊｅｃｔ＿Ｂ）及びその配置情報）を用いて、画像データベース１０９に基づく第１の物体及び第２の物体の双方との相関関係を示す第２の共起性マップを取得する。クエリ候補推定部１１２は、第２の共起性マップに基づく第３の物体の候補を表示装置１０３へ出力する。この構成によれば、第３の物体の候補は、第１の物体及び第２の物体の双方と関係があるものとなり、作成される検索クエリの精度が上がる。
【００６９】
なお、上述の例では、第二クエリが入力された場合、第２の共起性マップは、第１の物体及び第２の物体の双方との相関関係を示すものであるが、これに限定されない。例えば、第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の入力を受付けた後、共起情報生成部１１１は、第二クエリ（第２の物体（Ｏｂｊｅｃｔ＿Ｂ）及び配置情報）を用いて、画像データベース１０９に基づく第２の物体との相関関係を示す第２の共起性マップを取得してもよい。この構成によれば、第３の物体の候補としてより多くの物体が提示されることになり、ユーザは多くの候補から適切な第３の物体を選択できる。
【００７０】
上記の操作を繰り返し行うことで、複数の物体とそれらの配置情報を含むキャンバス（検索クエリ）が作成される（６０６）。ここでは、キャンバス６０１に第１の物体（Ｏｂｊｅｃｔ＿Ａ）、第２の物体（Ｏｂｊｅｃｔ＿Ｂ）、第３の物体（Ｏｂｊｅｃｔ＿Ｃ）が配置された検索クエリが得られる。なお、複数のクエリが入力された状態で、次のクエリを推定する場合は、入力済みの全てのクエリを条件として画像検索をしても良いが、条件に一致する画像が十分に見つからず、共起情報を生成出来ない場合がある。そのため、上述したように直前に入力されたクエリのみを使用したり、ユーザが指定したクエリのみを使用してもよい。
【００７１】
画像検索部１１３は、以上で得られたキャンバスを用いて、類似画像検索を実行し、最終的な検索結果を得る（６０７）。類似画像検索の一例として、画像検索部１１３は、キャンバスを複数の物体からなる合成画像と考えて、画像全体の特徴量を抽出し、その特徴量を用いて画像データベース１０９に対して検索を行ってもよい。また、画像検索部１１３は、キャンバス上の各クエリ（物体及び配置情報）で検索した後、それらの検索結果を統合してもよい。
【００７２】
図８は、共起情報に基づくクエリ入力支援を用いた画像検索の処理フローを表す図である。以下、図８の各ステップについて説明する。
【００７３】
クエリ入力部１１０は、ユーザが入力したクエリを受け付ける（Ｓ８０１）。クエリは、物体の画像とその物体の配置を表す情報である。例えば図６の説明で述べたように、クエリは、表示装置１０３に表示されたキャンバスを用いて入力される。
【００７４】
共起情報生成部１１１は、ステップＳ８０１で入力されたクエリの物体の画像から特徴量を抽出し、画像データベース１０９から類似画像を検索する（Ｓ８０２）。この時、共起情報生成部１１１は、ステップＳ８０１で入力された物体及びその物体の配置情報を条件として、検索結果を絞り込む。
【００７５】
共起情報生成部１１１は、ステップＳ８０２で得られた類似画像検索結果から、共起情報を生成する（Ｓ８０３）。共起情報の生成処理フローの詳細は、図９の説明として後述する。
【００７６】
クエリ候補推定部１１２は、ステップＳ８０３で得られた共起情報から、ユーザが次に入力するクエリを推定し、表示装置１０３に表示する（Ｓ８０４）。クエリの推定方法については図７で説明した通りである。
【００７７】
クエリ入力部１１０は、ステップＳ８０４で提示されたクエリ候補からユーザが選択したクエリを受け付ける（Ｓ８０５）。また、クエリ入力部１１０は、ユーザからクエリの画像及び配置の変更指示を受け付け、それに従い、表示装置１０３に表示されるクエリを変更してもよい。また、クエリ入力部１１０は、ユーザが選択又は修正した履歴を記憶装置２０２に蓄積してもよい。クエリ入力部１１０は、蓄積された履歴を、次回の候補提示において利用してもよい。例えば、クエリ入力部１１０は、多数のユーザが選択したクエリ候補を優先的に表示してもよい。
【００７８】
画像検索装置１０４は、ユーザからクエリ入力完了の通知を受けたら（Ｓ８０６：ＹＥＳ）、クエリ入力を終えてステップＳ８０７に移動し、そうでなければ（Ｓ８０６：ＮＯ）、ステップＳ８０１に戻って次のクエリを受け付ける。
【００７９】
画像検索部１１３は、ステップＳ８０１からステップＳ８０５の繰り返しで得られた検索クエリを用いて、画像データベース１０９から類似画像を検索する。画像検索部１１３は、複数の物体画像を合成することで得られる画像を用いて画像テーブル３００に対して検索しても良いし、各物体画像を用いて物体テーブル３１０に対して検索した結果を統合してもよい。詳しい処理フローは図１０の説明として後述する。
【００８０】
画像検索部１１３は、検索結果を表示装置１０３に表示し、検索処理を終了する（Ｓ８８０）。
【００８１】
図９は、画像検索結果から共起情報を生成するための処理フローであり、図８のステップＳ８０３に相当する。以下、図９の各ステップについて説明する。
【００８２】
共起情報生成部１１１は、共起性マップを初期化する（Ｓ９０１）。共起性マップは、図７の７０３で説明したような領域毎の物体の共起性を表すマップである。共起性マップは物体のカテゴリごとに用意する。
【００８３】
共起情報生成部１１１は、図８のステップＳ８０２で得られた各検索結果に関して、ステップＳ９０３からステップ９０７の処理を繰り返す（Ｓ９０２〜Ｓ９０８のループ）。
【００８４】
共起情報生成部１１１は、図８のステップＳ８０２で得られた各検索結果の画像に含まれる物体の画像ＩＤ３１２を物体テーブル３１０から取得する（Ｓ９０３）。
【００８５】
共起情報生成部１１１は、ステップＳ９０３で得られた画像ＩＤ３１２に対応する物体データ（ここでは、物体テーブル３１０のレコード）を画像データベース１０９から取得する（Ｓ９０４）。
【００８６】
共起情報生成部１１１は、ステップＳ９０４で取得された各物体データについて、ステップＳ９０６を繰り返し実行する（Ｓ９０５〜Ｓ９０７のループ）。
【００８７】
共起情報生成部１１１は、物体データから物体のカテゴリと配置情報を取得し、該当カテゴリの共起性マップを配置情報に従って更新する（Ｓ９０６）。更新方法は、図１０の説明として後述するように、例えば、出現場所の１つ以上の領域に対して値を可算していく。
【００８８】
共起情報生成部１１１は、カテゴリ毎の共起性マップを共起情報として出力する（Ｓ９０９）。必要であれば、共起情報生成部１１１は、全体の出現頻度等を用いて、共起性マップ内の値を正規化しても良い。
【００８９】
なお、共起性マップの生成は、画像検索、データ取得、データ集計を多数行う必要があり、計算負荷が高い。そのため、システム要件に応じて、データ取得数を制限したり、生成した共起情報をキャッシュしておいたりしてもよい。
【００９０】
図１０は、入力された複数の物体を用いて画像検索を行うための処理フローであり、図１０のステップＳ８０７に相当する。以下、図１０の各ステップについて説明する。
【００９１】
画像検索部１１３は、ユーザから画像全体を用いた検索を実行する指示を受けたら（Ｓ１００１：ＹＥＳ）、ステップＳ１００２に移動し、そうでなければ（Ｓ１００１：ＮＯ）、ステップＳ１００５に移動する。
【００９２】
画像検索部１１３は、入力された複数のクエリに従って、１枚の画像（合成画像）を生成する（Ｓ１００２）。すなわち、画像検索部１１３は、入力された複数の物体をそれらの配置情報に従って合成し、１枚の画像（合成画像）を生成する。例えば、説明を簡単にするために、図６の６０５の状態で検索の指示を受けたと想定する。この場合、画像検索部１１３は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）及び第２の物体（Ｏｂｊｅｃｔ＿Ｂ）を含む合成画像を作成する。画像検索部１１３は、必要に応じて、背景画像を合成したり、自然に合成されるような画像処理を加えても良い。
【００９３】
画像検索部１１３は、ステップＳ１００２で生成された合成画像から特徴量を抽出し、画像テーブル３００に対して類似画像を検索する（Ｓ１００３）。なお、特徴量は、画像データベース１０９への登録時と同じアルゴリズムで抽出される。
【００９４】
画像検索部１１３は、ユーザから物体ごとの検索を実行する指示を受けたら（Ｓ１００４：ＹＥＳ）、ステップＳ１００５に移動し、そうでなければ（Ｓ１００４：ＮＯ）、ステップＳ１００９に移動する。
【００９５】
画像検索部１１３は、入力された複数のクエリに含まれる各物体に対してステップＳ１００６を実行する（１００５）。
【００９６】
画像検索部１１３は、各物体の画像から特徴量を抽出し、物体テーブル３１０に対して配置情報を条件にした類似画像検索を実行する（１００６）。例えば、説明を簡単にするために、図６の６０５の状態で検索の指示を受けたと想定する。この場合、画像検索部１１３は、第一クエリ（第１の物体（Ｏｂｊｅｃｔ＿Ａ）及びその配置情報）を用いて類似画像検索を実行し、その後、第二クエリ（第２の物体（Ｏｂｊｅｃｔ＿Ｂ）及びその配置情報）を用いて類似画像検索を実行する。このとき、画像検索部１１３は、第一クエリの検索結果と第二クエリの検索結果を統合する。統合方法の一例として、同一画像ＩＤの複数の検索結果の類似度を可算してもよい。
【００９７】
なお、画像検索時の特徴量は、画像データベース１０９への登録時と同じアルゴリズムで抽出する。物体テーブル３１０に対する検索結果は、物体データ（物体テーブル３１０のレコード単位）で得られる。したがって、画像検索部１１３は、物体テーブル３１０の各レコードの画像ＩＤ３１２を元に、画像テーブル３００から画像データを取得する。
【００９８】
なお、検索の際に、物体毎に異なる条件で検索しても良い。例えば、物体毎に特徴量を切り替えて、キャンバス上でサイズの小さい物体に関しては、概形を捉える特徴量を使用し、大きい物体に関しては詳細なテクスチャ特徴を使うようにしても良い。例えば、説明を簡単にするために、図６の６０５の状態で検索の指示を受けたと想定する。この場合、画像検索部１１３は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）の大きさ及び第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の大きさに基づいて、画像データベース１０９を検索する際に使用する特徴量を第一クエリと第二クエリとで切り替えて、類似画像検索を実行してもよい。
【００９９】
また、別の例として、画像検索部１１３は、複数の物体の入力順序に基づいて、それら複数の物体のそれぞれに重み付けし、類似画像検索を実行してもよい。この場合、入力順序が早い物体の検索に対して、より大きな重みを付与してもよい。例えば、説明を簡単にするために、図６の６０５の状態で検索の指示を受けたと想定する。この場合、画像検索部１１３は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）及び第２の物体（Ｏｂｊｅｃｔ＿Ｂ）の入力順序に基づいて、第一クエリと第二クエリとに重み付けしてもよく、例えば、入力順序が早い第一クエリに対してより大きな重みを付与してよい。また、重み付けは入力順序に基づくだけでなく、ユーザがどの物体を重視して検索するかを指定してもよい。
【０１００】
画像検索部１１３は、ステップＳ１００３で得られた検索結果及びステップＳ１００６で得られた検索結果を、画像ＩＤ単位で統合する（Ｓ１００８）。例えば、画像検索部１１３は、同一画像ＩＤの複数の検索結果の類似度を可算して、一つの検索結果に統合してもよい。
【０１０１】
画像検索部１１３は、検索結果を類似度順にソートして表示装置１０３に出力する（Ｓ１００９）。
【０１０２】
図１１Ａは、本実施例の画像検索装置１０４を用いて、画像検索を行うための操作画面（画像検索インタフェース）の構成例を示す図である。操作画面は、例えば、表示装置１０３上でユーザに提示される。ユーザは、例えば入力装置１０２を用いて、画面上に表示されたカーソルを操作することで、画像検索装置１０４に処理の指示を与える。なお、図１１Ａの例は、据え置き型の操作端末であるが、入力と表示が可能なデバイスであれば、様々な形態をとりうる。例えば、スマートフォンやタブレットのように、タッチ操作を用いても良い。また例えば、ヘッドマウント型のディスプレイや、情報表示可能なメガネ型のデバイスを表示装置１０３として用い、音声入力やジェスチャを受け付ける入力装置を使用してもよい。このような、ウェアラブルデバイス、携帯デバイスを用いる場合、据え置き型コンピュータに比べて検索クエリの入力に効率性が求められるため、本実施例のクエリ入力支援が効果的である。
【０１０３】
操作画面は、例えば、クエリ入力領域１１０１、クエリ候補表示領域１１０２、検索ボタン１１０３、検索オプション表示領域１１０４、及び検索結果表示領域１１０５を含む。
【０１０４】
クエリ入力領域１１０１に表示される情報は、例えば、クエリ入力部１１０によって表示装置１０３に出力される。クエリ候補表示領域１１０２に表示される情報は、例えば、クエリ候補推定部１１２によって表示装置１０３に出力される。検索結果表示領域１１０５に表示される情報は、例えば、画像検索部１１３によって表示装置１０３に出力される。
【０１０５】
まず、ユーザは検索の手がかりとなる画像を指定する。操作画面は、例えば、登録画像選択のためのダイアログを表示してもよいし、外部の画像を入力するインタフェースを含んでもよい。また、図１の説明で前述した通り、テキスト又は音声のキーワード入力としてもよい。ユーザは、クエリ入力領域１１０１上のどこに画像を配置するかを指定する。クエリ入力領域１１０１には、指定された位置に入力された画像（ここでは自動車の画像）が表示される。
【０１０６】
共起情報生成部１１１は、入力された画像と配置情報に従って、共起情報を生成する。ユーザがクエリ入力領域１１０１に次のクエリの領域１１００を指定すると、クエリ候補推定部１１２は、生成された共起情報に従い、クエリ候補表示領域１１０２にクエリ候補を表示する。なお、ユーザが次のクエリの領域を指定する前に、共起情報生成部１１１は、物体の候補とその配置情報をクエリ入力領域１１０１にオーバーレイ表示し、ユーザに選択させるようにしてもよい。
【０１０７】
ユーザがクエリ候補表示領域１１０２から物体を選択すると、選択された物体の画像がクエリ入力領域１１０１の領域１１００に表示される。この操作を繰り返し行い、クエリ入力領域１１０１に複数の物体の画像を配置していく。
【０１０８】
なお、クエリ候補表示領域１１０２は、クエリ候補から不要な物体を除去できるようなインタフェースを備えてもよい。これにより、ユーザは、所望のクエリ候補のみを表示しながら、検索クエリを作成することができる。
【０１０９】
全ての物体の入力が終わったら、ユーザは検索ボタン１１０３をクリックする。この時、検索オプション表示領域１１０４から検索オプションを指定して、画像検索部１１３の内部動作を切り替えられるようにしても良い。例えば、検索オプション表示領域１１０４において「画像全体で検索」が選択されると、画像検索部１１３は、合成画像を生成し、類似画像検索を実行する（図１０のステップＳ１００２〜Ｓ１００３）。また、検索オプション表示領域１１０４において「物体毎に検索」が選択されると、画像検索部１１３は、物体毎に配置条件付き類似画像検索を実行し（図１０のステップＳ１００５〜Ｓ１００７）、それらの検索結果を統合する（図１０のステップＳ１００８）。
【０１１０】
画像検索部１１３は、画像データベース１０９に対してクエリ入力領域１１０１で入力された条件に合致する類似画像検索を行う。検索結果は、例えば、類似度順に並び替えられ、同一画像ＩＤを有する検索結果は集約されて、検索結果表示領域１１０５に表示される。検索結果の表示方法として、類似画像を一覧表示するのではなく、例えば、クエリ入力領域１１０１に類似画像を合成表示することにより、クエリを更新するたびに徐々に検索結果が所望の画像に近づいていくようなインタフェースにしてもよい。
【０１１１】
図１１Ｂは、物体の配置を変更したときの操作画面（画像検索インタフェース）を示す。クエリ入力領域１１０１は、配置された物体の配置情報を変更できるインタフェースを備える。例えば、ユーザは、カーソルで物体を指定して、物体の大きさ及び位置の少なくとも一方を変更できる。ここでは、クエリ入力領域１１０１の自動車の位置が変更されたとする。クエリ入力部１１０は、例えば、クエリ入力領域１１０１の自動車の位置が変更されたことを受け取ると、自動車の変更された配置情報を取得する。
【０１１２】
共起情報生成部１１１は、自動車及びその変更された配置情報を用いて、共起情報（共起性マップ）を再計算する。共起情報生成部１１１は、再計算された共起情報に基づくクエリ候補をクエリ候補表示領域１１０２に表示する。図１１Ｂの例では、クエリ入力領域１１０１の自動車の配置の変更によって、クエリ候補表示領域１１０２に表示される複数のクエリ候補の種類及び表示順序が変更されている。この構成によれば、ユーザのクエリの変更に応じて、リアルタイムにクエリ候補を提示することができる。
【０１１３】
図１２は、本実施例の画像検索システム１００の処理の一例を説明するシーケンス図である。図１２は、具体的には上記した画像検索システム１００の画像登録及び画像検索処理における、ユーザ１２００、画像記憶装置１０１、計算機１２０１、及び画像データベース１０９間の処理シーケンスを示す。なお、計算機１２０１は、画像検索装置１０４を実現する計算機である。ユーザ１２００は、例えば、入力装置１０２を介して、計算機１２０１に対する要求及び指示の送信、並びにデータの入力等を行い、表示装置１０３を介して計算機１２０１からの処理結果等の提示を受ける。
【０１１４】
図１２において、Ｓ１２１０は登録処理を、Ｓ１２２０は検索処理を示す。登録処理Ｓ１２１０は、ステップＳ１２１１〜ステップＳ１２１８に示す処理を含む。
【０１１５】
ユーザ１２００が登録要求を出すと（Ｓ１２１１）、計算機１２０１は画像記憶装置１０１に画像データ取得要求を出し（Ｓ１２１２）、画像記憶装置１０１から画像データを取得する（Ｓ１２１３）。以下に述べるステップＳ１２１４〜ステップＳ１２１７の処理は、図５において説明した一連の登録処理に相当する。計算機１２０１は、取得した画像から物体を検出し、物体の領域毎に特徴量を抽出し、カテゴリを推定する（Ｓ１２１４〜Ｓ１２１６）。また、特徴量抽出においては、画像全体の特徴量を抽出する。この結果得られた、画像データ、画像全体の特徴量、物体検出結果（物体の座標情報、幅、高さなど）、物体の特徴量、物体のカテゴリを画像データベース１０９に登録する（Ｓ１２１７）。登録処理が終了すると、計算機１２０１はユーザ１２００に対して登録完了の通知を行う（Ｓ１２１８）。
【０１１６】
検索処理Ｓ１２２０は、ステップＳ１２２１〜ステップＳ１２２９に示す処理を含み、図８において説明した一連の検索処理に相当する。
【０１１７】
ユーザ１２００が、計算機１２０１に対してクエリを入力すると（Ｓ１２２１）、計算機１２０１は、入力されたクエリの条件に従って画像データベース１０９から画像を検索し、検索結果から共起情報を生成する（Ｓ１２２３）。また、計算機１２０１は、生成された共起情報からユーザ１２００が次に入力するクエリを推定し、ユーザ１２００に提示する（Ｓ１２２４〜Ｓ１２２５）。ユーザ１２００は、入力クエリの修正または候補を選択し、計算機１２０１に伝える（Ｓ１２２６）。Ｓ１２２２の一連の処理を繰り返し行うことで、複数の物体が配置された検索クエリが作られる。
【０１１８】
ユーザ１２００が検索要求を出すと、計算機１２０１は入力された検索クエリを用いて画像データベース１０９から類似する画像を検索する（Ｓ１２２７〜Ｓ１２２８）。計算機１２０１は、得られた検索結果を、類似度順に並び替え、検索結果をユーザ１２００に提示する（Ｓ１２２９）。なお、この時、計算機１２０１は、同一画像ＩＤを有する検索結果を集約して、ユーザ１２００に提示してよい。
【０１１９】
本実施例の画像検索装置１０４は、複数の物体を含む画像を検索する際に、ユーザが最初に入力した物体から次に入力する物体を予測し、提示する。より詳細には、複数の物体を含む画像を検索する際に、高い検索精度に結び付く検索クエリの入力である、第１の物体と相関関係がある第２の物体の候補を提案することができる。これにより、ユーザによる検索クエリの入力の効率を高めることができる。
【０１２０】
本実施例の画像検索装置１０４は、空間情報を含む物体の共起性に従って、検索クエリ内で複数の物体を配置することができ、したがって、適切な配置の検索クエリを作ることができる。その結果、検索精度を高めることができる。
【０１２１】
[実施例２]
実施例１で示した共起情報の生成においては、図７の説明で述べたように、配置情報の条件付き検索により、第一クエリが含まれる画像を取得する。そして、共起情報生成部１１１は、取得された画像に含まれる他の画像の出現頻度を領域ごとに集計することで、共起性マップを作成する。しかし、画像データベース１０９に十分に画像が蓄積されていない場合、配置条件に一致する画像が少なく、有用な共起情報を得られない可能性がある。そこで、実施例２では、配置条件による絞り込みを行わず、第一クエリの物体が含まれる画像を検索した後に、位置補正を行うことで多数のサンプルを得る例を説明する。
【０１２２】
図１３は、検索結果の位置補正を表す図である。共起情報生成部１１１は、第一クエリ内の配置情報を条件に使用せずに、画像データベース１０９を検索する。配置情報を条件に付けずに検索すると、第一クエリの第１の物体（Ｏｂｊｅｃｔ＿Ａ）が異なる領域に現れる画像、及び第一クエリの第１の物体（Ｏｂｊｅｃｔ＿Ａ）が異なるサイズで現れる画像が得られる（１３０１）。
【０１２３】
共起情報生成部１１１は、入力された第一クエリの物体の位置及びサイズにあわせて、検索結果の画像を補正する（１３０２）。すなわち、共起情報生成部１１１は、検索（１３０１）によって得られた画像の中の第１の物体（Ｏｂｊｅｃｔ＿Ａ）が第一クエリの配置情報と一致するように画像を補正する。この補正処理には、拡大、縮小、回転、反転、平行移動など、様々な処理が含まれてよい。なお、ここでの補正処理は、検索（１３０１）によって得られた画像の中の第１の物体（Ｏｂｊｅｃｔ＿Ａ）が第一クエリの配置情報と完全に一致するように補正する必要はなく、第１の物体（Ｏｂｊｅｃｔ＿Ａ）が第一クエリの配置情報と類似する程度に補正されればよい。図１３の補正処理の例では、補正後の画像は、第１の物体（Ｏｂｊｅｃｔ＿Ａ）が第一クエリと同じサイズで、かつ同じ位置に配置された画像となる。本実施例では、共起情報生成部１１１が、このような補正を行った後の補正画像を用いて、第一クエリの第１の物体（Ｏｂｊｅｃｔ＿Ａ）と他の物体との共起性マップを作成する。
【０１２４】
図１４は、位置補正を導入した共起情報生成の処理フローである。基本的な処理フローは、図９と同様であるため、同じ処理については図９と同じ符号を付し、説明を省略する。なお、図１４の前に実行する検索処理（図８のＳ８０２）では、配置情報を条件に使用せずに検索が実行される。図１４に示すように、共起情報生成部１１１は、物体データを取得した後、第一クエリの物体のサイズ及び配置の情報を取得し、図８のＳ８０２で得られた画像の各物体の位置を補正する。共起情報生成部１１１は、補正された各物体の位置関係を用いて、共起性マップを更新する（Ｓ９０６）。
【０１２５】
上記の処理によれば、画像データベース１０９に十分に画像が蓄積されていない場合でも、有用な共起情報を得ることができる。特に、図１３の１３０２に示すように、補正処理により各物体の配置情報が変更され得るが、第一クエリの物体と他の物体との共起性は維持されるため、有用な共起情報を得ることができる。結果として、画像検索装置１０４は、第一クエリの物体と相関関係がある第２の物体の候補を提案できる。
【０１２６】
なお、上記の補正処理は、ユーザの指定により実行されてもよいし、画像検索装置１０４によって自動的に実行されてもよい。例えば、画像データベース１０９が所定の蓄積量よりも小さいとき、画像検索装置１０４が、その蓄積量を判定して自動的に補正処理を実行してもよい。また、別の例として、第２の物体の候補として取得できた物体数が所定の数よりも小さいとき、画像検索装置１０４が、その物体数を判定して自動的に補正処理を実行して、再度第２の物体の候補を提示してもよい。
【０１２７】
本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。上記実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることもできる。また、ある実施例の構成に他の実施例の構成を加えることもできる。また、各実施例の構成の一部について、他の構成を追加・削除・置換することもできる。
【０１２８】
上述の例では、画像検索について説明したが、本発明は、動画の検索にも適用できる。例えば、上述の通り、動画データはフレーム（静止画データ形式）の集合で画像データベースに蓄積されている。したがって、画像検索部１１３は、上記で説明した検索クエリに類似する動画像のフレームを検索することにより、動画の検索を実現してもよい。
【０１２９】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)に記憶させることが可能である。非一時的なコンピュータ可読媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１３０】
上記の実施例において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０１３１】
１００      …画像検索システム
１０１      …画像記憶装置
１０２      …入力装置
１０３      …表示装置
１０４      …画像検索装置
１０５      …画像入力部
１０６      …物体検出部
１０７      …特徴量抽出部
１０８      …カテゴリ推定部
１０９      …画像データベース
１１０      …クエリ入力部
１１１      …共起情報生成部
１１２      …クエリ候補推定部
１１３      …画像検索部
２０１      …プロセッサ
２０２      …記憶装置
２０３      …処理プログラム
２０４      …ネットワークインターフェース装置
３００      …画像テーブル
３１０      …物体テーブル
【図１】
2017104043.tif 000003
【図２】
2017104043.tif 000004
【図３Ａ】
2017104043.tif 000005
【図３Ｂ】
2017104043.tif 000006
【図４Ａ】
2017104043.tif 000007
【図４Ｂ】
2017104043.tif 000008
【図５】
2017104043.tif 000009
【図６】
2017104043.tif 000010
【図７】
2017104043.tif 000011
【図８】
2017104043.tif 000012
【図９】
2017104043.tif 000013
【図１０】
2017104043.tif 000014
【図１１Ａ】
2017104043.tif 000015
【図１１Ｂ】
2017104043.tif 000016
【図１２】
2017104043.tif 000017
【図１３】
2017104043.tif 000018
【図１４】
2017104043.tif 000019
【国際調査報告】
2017104043.tif 000020
2017104043.tif 000021
2017104043.tif 000022
2017104043.tif 000023
2017104043.tif 000024
2017104043.tif 000025
2017104043.tif 000026
2017104043.tif 000027