(57)【要約】      （修正有）【課題】画像中の任意の部分領域に着目した、自由度の高い類似画像検索技術を実現する。【解決手段】画像検索装置は、画像と、画像の一部分である第１領域に含まれる第１画像特徴量とを記憶する記憶部と、クエリ画像から、クエリ画像特徴量を抽出する抽出部と、クエリ画像特徴量に最も近い第１画像特徴量を検索し、一次検索結果として出力する検索部と、一次検索結果を含む第１領域の位置または大きさを変更した領域である第２領域を生成し、第２領域に含まれる第２画像特徴量を抽出する補正部と、第一次検索結果または前記第２画像特徴量のうち、クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、二次検索結果を含む領域を出力する出力部と、を有する。【選択図】図６
2015230578.tif 000002
【特許請求の範囲】
【請求項１】
画像と、前記画像の一部分である第１領域に含まれる第１画像特徴量とを記憶する記憶部と、
クエリ画像から、クエリ画像特徴量を抽出する抽出部と、
前記クエリ画像特徴量に最も近い前記第１画像特徴量を検索し、一次検索結果として出力する検索部と、
前記一次検索結果を含む前記第１領域の位置または大きさを変更した領域である第２領域を生成し、前記第２領域に含まれる第２画像特徴量を抽出する補正部と、
前記第一次検索結果または前記第２画像特徴量のうち、前記クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、前記二次検索結果を含む領域を出力する出力部と、を有することを特徴とする画像検索装置。
【請求項２】
請求項１の画像検索装置において、
前記補正部は、
前記第１画像特徴量を含む前記第１領域を取得する画像取得部と、
前記第１領域を一部分とする前記画像に対し、画像特徴量を抽出するための事前処理を行う第１処理部と、
前記第２領域を生成し、前記第２画像特徴量を抽出する第２処理部と、を有することを特徴とする画像検索装置。
【請求項３】
請求項２の画像検索装置において、
前記第１処理部は、前記画像のうち、一つの前記第１領域から生成される前記第２領域を全て包含する最小限の大きさの領域の周辺に対して事前処理を行うことを特徴とする画像検索装置。
【請求項４】
請求項２の画像検索装置において、
前記抽出部は、前記画像から前記第１画像特徴量を抽出し、
前記記憶部は、前記第１画像特徴量を抽出する際に生成された中間データを、さらに記憶することを特徴とする画像検索装置。
【請求項５】
請求項４の画像検索装置において、
前記中間データには、データの位置を管理するインデックス情報が付与されていることを特徴とする画像検索装置。
【請求項６】
画像と、前記画像の一部分である第１領域に含まれる第１画像特徴量とを記憶装置に記憶する第１ステップと、
クエリ画像から、クエリ画像特徴量を抽出する第２ステップと、
前記クエリ画像特徴量に最も近い前記第１画像特徴量を検索し、一次検索結果として出力する第３ステップと、
前記一次検索結果を含む前記第１領域の、位置または大きさを変更した領域である第２領域を生成し、前記第２領域に含まれる第２画像特徴量を抽出する第４ステップと、
前記第一次検索結果または前記第２画像特徴量のうち、前記クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、前記二次検索結果を含む領域を出力する第５ステップと、を有することを特徴とする画像検索方法。
【請求項７】
請求項６の画像検索方法において、
前記第４ステップは、
前記記憶装置から、前記第１画像特徴量を含む前記第１領域を取得する第５ステップと、
前記第１領域を一部分とする前記画像に対し、画像特徴量を抽出するための事前処理を行う第６ステップと、
前記第２領域を生成し、前記第２画像特徴量を抽出する第７ステップと、を含むことを特徴とする画像検索方法。
【請求項８】
請求項７の画像検索方法において、
前記第６ステップは、前記画像のうち、一つの前記第１領域から生成される前記第２領域を全て包含する最小限の大きさの領域に対して事前処理を行うことを特徴とする画像検索方法。
【請求項９】
請求項７の画像検索方法において、
前記画像から前記第１画像特徴量を抽出する第８ステップをさらに有し、
前記第１ステップでは、前記第１画像特徴量を抽出する際に生成された中間データを、さらに前記記憶装置に記憶することを特徴とする画像検索方法。
【請求項１０】
請求項９の画像検索方法において、
前記中間データにはデータの位置を管理するインデックス情報が付与されていることを特徴とする画像検索方法。
【請求項１１】
情報処理端末と、情報処理サーバがネットワークを介して接続されたシステムであって、
前記情報処理サーバは、
画像と、前記画像の一部分である第１領域に含まれる第１画像特徴量とを記憶する記憶部と、
クエリ画像から、クエリ画像特徴量を抽出する抽出部と、
前記クエリ画像特徴量に最も近い前記第１画像特徴量を検索し、一次検索結果として出力する検索部と、
前記一次検索結果を含む前記第１領域の位置または大きさを変更した領域である第２領域を生成し、前記第２領域に含まれる第２画像特徴量を抽出する補正部と、
前記第一次検索結果または前記第２画像特徴量のうち、前記クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、前記二次検索結果を含む領域を前記情報処理端末に出力する出力部と、を有することを特徴とする検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を対象とした画像検索装置、画像検索方法および検索システムに関する。
【背景技術】
【０００２】
近年、ネットワークのブロードバンド化、各種記憶装置の大規模化により、大規模な画像・映像を蓄積、管理し、それらを配信するサービスを実施することが可能となった。
このような大規模コンテンツを扱うシステムで重要となるのが検索技術である。検索技術として一般的なのは、画像・映像コンテンツや関連する付けられたテキスト情報に対する検索技術である。たとえば文書情報の検索技術では、１つ、ないしは、複数個のキーワードをクエリとして入力し、それが含まれるテキスト情報と関連づいた画像・映像を検索結果として返す形式が一般的である。また、画像自体に対しても、クエリとなる画像から画像の持つ特徴を数値化した画像特徴量という情報を抽出し、これをデータベース化することによって、キーワードを介さずに画像を検索する技術も存在する。
【０００３】
画像検索における画像特徴量の抽出では、検索対象となる事物が含まれる画像中の部分領域を検出する処理が重要となる場合が多い。例えば、類似画像検索を用いた顔検索では、顔領域を検出し、検出された顔領域から画像特徴量を抽出する必要がある。同様に、車両の類似検索では、画像中の車両が存在する領域を検出する必要がある。画像中から特定の物体が存在する領域を検出する方法としては、検出対象となる物体が撮像された画像の集合を学習データとして用いたＡｄａブースト法による学習によって、局所的な特徴の一致に基づく弱識別器をカスケード上に並べた識別器を構成する手法が提案されている。本手法は、特に、人物の顔領域検出の分野で、高い有効性を示している。
【０００４】
また、特許文献１では、キー画像中の、ユーザが指定した部分領域に基づいて、同じ大きさの部分領域に対して類似画像検索を行い、部分領域を含む画像とキー画像との類似度を比較して検索結果とするとこが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１２２９３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来技術において、検索したい画像が画像中の一部分である場合、所定の検出処理が必要である。上述したような検出処理を行うためには、検索対象として想定される事物の画像を事前に登録し、想定される事物とその画像特徴量とを対応付けて学習させておく必要がある。しかし、検索システムを使用するユーザが、どのような事物に着目して検索を実施するかを事前に網羅的に想定することは、一般に困難である。また、例え、検索したい事物は想定できたとしても、手掛かりとなる情報、すなわち、検索クエリとなる情報が、隠蔽等により事物の部分のみしか知り得ない場合もある。このような場合、事前に検索対象となる画像を検出処理によってデータベース化することは出来ない。
【０００７】
これに対し、特許文献１の方式であれば、このような事前学習は不要となる。しかしながら特許文献１では部分領域をクエリとして画像を検索する方式を採用しているものの、部分領域で検索したのちに全体の画像同士の画像特徴量を比較する構成であり、検索の自由度が低い。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、例えば請求の範囲に記載の構成を採用する。本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、画像検索装置であって、画像と、前記画像の一部分である第１領域に含まれる第１画像特徴量とを記憶する記憶部と、クエリ画像から、クエリ画像特徴量を抽出する抽出部と、前記クエリ画像特徴量に最も近い前記第１画像特徴量を検索し、一次検索結果として出力する検索部と、前記一次検索結果を含む前記第１領域の位置または大きさを変更した領域である第２領域を生成し、前記第２領域に含まれる第２画像特徴量を抽出する補正部と、前記第一次検索結果または前記第２画像特徴量のうち、前記クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、前記二次検索結果を含む領域を出力する出力部と、を有することを特徴とする。
【０００９】
または、画像検索方法であって、画像と、前記画像の一部分である第１領域に含まれる第１画像特徴量とを記憶装置に記憶する第１ステップと、クエリ画像から、クエリ画像特徴量を抽出する第２ステップと、前記クエリ画像特徴量に最も近い前記第１画像特徴量を検索し、一次検索結果として出力する第３ステップと、前記一次検索結果を含む前記第１領域の、位置または大きさを変更した領域である第２領域を生成し、前記第２領域に含まれる第２画像特徴量を抽出する第４ステップと、前記第一次検索結果または前記第２画像特徴量のうち、前記クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、前記二次検索結果を含む領域を出力する第５ステップと、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によって、画像検索の自由度が向上する。
【図面の簡単な説明】
【００１１】
【図１】本発明の全体システム構成例である。
【図２】データベース登録処理の流れである。
【図３】走査処理の説明図である。
【図４】実施例１の画像に関するデータベース項目の一覧である。
【図５】実施例１の部分領域に関するデータベース項目の一覧である。
【図６】検索処理の流れである。
【図７】詳細化処理の前半部分のフローチャートである。
【図８】詳細化処理の後半部分のフローチャートである。
【図９】詳細化処理の説明図である。
【図１０】部分領域の融合処理を説明するための図版である。
【図１１】部分領域の融合処理を説明するための図版である。
【図１２】融合処理の流れである。
【図１３】微分フィルタの例である。
【図１４】輝度勾配強度分布特徴量の説明図である。
【図１５】実施例３の画像に関するデータベース項目の一覧である。
【図１６】実施例３で用いるデータ構造の説明図である。
【図１７】実施例４で用いるデータ構造の説明図である。
【図１８】本発明のサーバ内の構成例である。
【発明を実施するための形態】
【００１２】
次に、本発明の実施の形態について、図面を参照して説明する。
【実施例１】
【００１３】
本実施例は、複数のカメラ、端末計算機および検索システムを、ネットワークを介して接続した大規模監視システムについて説明する。本システムでは、カメラで撮影した画像を検索システム内に蓄積し、端末計算機からの検索要求に従い、検索システムがクエリとして入力された画像に類似する部分領域を検索して１次検索結果とし、１次検索結果として検索された部分領域の周辺領域を再度探索しなおした補正後部分領域とクエリとの類似度を比較し、部分領域または補正後部分領域からクエリに近いものを２次検索結果として端末計算機へ出力するシステムである。以下、詳細に説明する。
【００１４】
図１は、本実施例のシステム構成である。図１の１００は、検索サービスを提供するための計算機システムである。検索サービスが提供する各種機能は、ネットワークシステム１３０を経由して、端末計算機１２０を用いるユーザに対して提供される。１４０はネットワークを介して計算機システム１００や端末計算機１２０と接続されたカメラである。カメラ１４０で撮影した画像が検索システム１００に蓄積され、検索対象となる。図１では省略しているが、端末計算機１２０やカメラ１４０は複数ネットワークに接続されている。計算機システム１００内の構成については図１８に示す。
【００１５】
図２は、画像登録処理部１０２および部分領域生成部１０４がデータベース１０３に画像を登録処理するまでの流れである。画像登録処理では、対象となる画像を取得（ｓ２１０）しデータベース１０３に登録した後、後述する走査処理によって部分領域を生成し、各部分領域画像の画像特徴量を抽出する（ｓ２２０）。抽出された各領域の画像特徴量をデータベースに保存し（ｓ２３０）、処理を終了する。
【００１６】
本実施例では、画像特徴量として、輝度勾配ベクトルの分布を用いる。輝度勾配ベクトルは、白黒濃淡画像に対して、２次元の数値微分を適用することによって導出される。図１３は、数値微分を行うためのフィルタの例である。輝度勾配ベクトルから、次式のようにベクトルの２乗ノルムｐとベクトルの方向θを算出することが出来る。
【００１７】
ｐ＝ｆｘ２＋ｆｙ２
θ＝ｔａｎ−１（ｆｙ／ｆｘ）      （数１）
ベクトルの方向θを適切なレベルに離散化して扱い、２乗ノルムｐを画像中で集計することによって、輝度勾配ベクトル方向の強度分布をヒストグラム状のデータとして表現することができる。図１４は、本処理の内容を表現した模式図である。まず、１４１０に示すように画像から輝度勾配ベクトルを抽出し、集計処理によってヒストグラム状のデータ１４２０を算出する。なお、図１４では、画像全体に対して集計を行っているが、例えば、画像を４×４のブロックに分割し、ブロックごとに集計を行うことによって、画像内の構図情報を反映した画像特徴量を構成することができる。
【００１８】
図３は、２２０の走査処理を説明するための図である。本発明では、部分領域とはｍ×ｎ個の画素からなる画像上の領域や、その他円形状や多角形状の閉領域を言い、アスペクト比、大きさ、位置等によって表されるものとする（ｍ、ｎはともに任意の自然数である）。元の画像が長方形であるため、部分領域はｍ×ｎ画素からなる矩形である方が、画像処理の負荷を低減させる点からは好ましい。
【００１９】
本実施例では、部分領域が矩形の場合を用いて以下、説明する。先ず、アスペクト比に関しては、横長から縦長までのある一定範囲に関して、アスペクト比を適切な段階に量子化する（Ｓ３１０）。さらに、様々な大きさの変動に対応するために、元画像を順次１／２ずつ縮小していくことによって、多重解像度画像を構成する（Ｓ３２０）。次に、量子化されたあるアスペクト比の部分領域を、多重解像度画像中のある解像度の画像上で、任意の一定ステップで、横方向、縦方向に順次平行移動させる（Ｓ３３０）。このステップ幅は、必ずしも部分領域単位である必要はなく、１ステップ移動させた後の部分領域とその直前の部分領域とで重複する領域があってもかまわない。その後、元画像各部分領域の画像から画像特徴量を抽出する（ｓ２２０）。画像特徴量は、色分布、輝度勾配ベクトルの分布等に基づいて算出する。抽出された画像特徴量は、必要なメタ情報とともに、データベース１０３に保存される（Ｓ２３０）。
【００２０】
図４と図５は、本実施例においてデータベース上に格納される項目を示したものである。図４は、画像に関する項目である。４０１は、Ｓ２１０で取得した画像データであり、４０２は、その画像から生成された部分領域の管理番号（部分領域データＩＤ）のリストである。
【００２１】
一方、図５は、生成された各部分領域に関する項目である。５０１は、その部分領域が属する画像管理番号（画像ＩＤ）である。５０２から５０６は、部分領域を定義するための情報である。５０２は、３２０の多重解像度化を行った場合に、その部分領域がどの解像度から生成されたものかを指し示す整数値である。５０３は、５０２で指定された解像度での、矩形の左上端点のｘ座標値、５０４は、ｙ座標値である。５０５は、５０２で指定された解像度での、矩形の幅、５０６は、矩形の高さである。５０７は、当該部分領域の画像特徴量である。もちろん、部分領域が矩形ではない場合も、５０３−５０６の項に部分領域の幅や頂点座標の位置などが記録され、管理される。
【００２２】
なお、画像データ４０１は、必ずしも、データベース中にその実体が格納されている必要はない。例えば、画像データが他のファイルサーバ等で管理されている場合は、４０１には、その画像のＵＲＬ等、画像を参照することを可能にする情報が格納されていればよい。
【００２３】
図６は、検索処理の流れである。検索処理では、端末計算機１２０からの検索要求を受け付けると、クエリ画像を取得し、クエリ特徴量抽出部１０６がクエリ画像の画像特徴量を抽出する（Ｓ１９００）。次に類似部分領域検索部１０７が、クエリ画像特徴量とデータベース１０３上に格納された部分領域の画像特徴量５０７とを比較して類似画像検索を行うことによって、クエリ画像と類似性が高い画像特徴量を持つ部分領域を類似画像検索結果（１次検索結果）として取得する（Ｓ１９１０）。
【００２４】
次に、類似画像検索結果を構成する各部分領域について、画像取得部で元画像のデータを取得し（Ｓ１９３０）、事前処理部１０９で画像特徴量を抽出する前段階の事前処理を行う（Ｓ１９４０）。その後、詳細化処理部１１０が後述する詳細化処理（Ｓ１９５０〜Ｓ１９７０）を実施することによって、クエリ画像との類似性が高い補正後部分領域を抽出する。抽出された部分領域および補正後部分領域に関して、検索結果出力部１１１はクエリ画像との類似度でソートを行い（Ｓ１９８０）、類似度が高い順にソートされた部分領域および補正後部分領域のリストを検索結果（２次検索結果）として出力する。
【００２５】
図７と図８は、Ｓ１９３０から１９７０の事前処理および詳細化処理を説明するための図である。図７に示したのは、Ｓ１９２０において取得した類似画像検索結果から、処理の対象となる画像と部分領域の組み合わせを構成する処理である。Ｓ７００に、本処理を説明するための記号を示す。Ａ［］は、本処理の入力データで、類似検索結果の部分領域のＩＤを要素とする配列である。Ｌは、Ａ［］の要素数、すなわち、類似検索結果の件数である。Ｂ［］は、本処理の出力データで、Ａ［］の要素である部分領域を含む画像ＩＤの配列である。Ｍは、Ｂ［］の要素数である。Ｃ［］［］も、同様に、本処理の出力データで、Ｂ［］中の各画像が含む部分領域のＩＤを２重配列として管理したものである。Ｎ［］は、各画像に対応するＣ［］［］の要素数である。例えば、Ｎ［０］は、０番目の画像中に含まれる、類似検索結果中の部分領域の数を表す。
【００２６】
以下、図７における元画像と部分領域との組合せ処理の流れを順次説明する。
【００２７】
先ず、Ｂ［］の要素数Ｍを０に初期化する（Ｓ７０１）。次に、Ａ［］の要素にアクセスするための添え字ｉを０に初期化する（Ｓ７０２）。判定処理Ｓ７０３は、Ａ［］の全要素（ｉ＝０からＬ）を処理したか否かを判定する処理である。ｉがＬに満たない場合、Ａ［ｉ］が含まれる画像のＩＤ５０１を取得する（Ｓ７０４）。
【００２８】
Ｓ７０５からＳ７０８は、取得された画像のＩＤが、配列Ｂ［］の要素として含まれているか否かを判定する処理である。先ず、７０５で、Ｂ［］の要素にアクセスするための添え字ｊを０に初期化する。添え字ｊが１〜Ｍまでの範囲の判定処理Ｓ７０６を経た後、Ｓ７０７でＢ［ｊ］が取得された画像ＩＤと一致するか否かが判定される。一致しない場合は、添え字ｊがインクリメントされ（Ｓ７０８）、判定処理Ｓ７０６に戻る。Ｓ７０６でｊがＭに達した場合、すなわち、取得された画像のＩＤが、配列Ｂ［］の要素として含まれていない場合は、その画像は、Ｍ番目に出現した画像として処理される。具体的には、Ｃ［Ｍ］［０］、すなわち、その画像に含まれる最初の部分領域のＩＤとしてＡ［ｉ］が代入され、Ｎ［Ｍ］、すなわち、その画像に含まれる部分領域の数に１が代入される（Ｓ７０９）。Ｃ［Ｍ］［０］、および、Ｎ［Ｍ］の値を更新した後、Ｍの値を１増加させる（Ｓ７１０）。
【００２９】
一方、取得された画像のＩＤと一致する配列Ｂ［ｊ］が発見された場合は、Ｃ［ｊ］［Ｎ［ｊ］］にＡ［ｉ］を代入し（Ｓ７１１）、Ｎ［ｊ］の値を１増加させる（Ｓ７１２）。ｉをインクリメントさせていくことによって（Ｓ７１３）、これらの処理を全結果について実施する。
【００３０】
図８は、図７の処理によって構成されたＢ［］およびＣ［］［］を用いて行う処理の流れを示したものである。（Ｓ８００）は、本処理を説明するための記号である。Ｂ［］は画像ＩＤの配列、Ｍはその要素数、Ｃ［］［］は、各画像に含まれる部分領域ＩＤを管理する２重配列、Ｎ［］は、その要素数を管理する配列である。これらは、全て、図７の出力データと同一である。
【００３１】
以下、図８における処理の流れを順次説明する。先ず、Ｂ［］の要素にアクセスするための添え字ｉを０に初期化する（Ｓ８０１）。続くＳ８０２は、Ｂ［］内の全要素について処理したか否かを判定する判定ステップである。各Ｂ［ｉ］について、図４の画像データ４０１を取得する（Ｓ８０３）。
【００３２】
次に、取得された画像データに対して、画像特徴量抽出処理に必要となる事前処理を行う（Ｓ８０４）。一般に、画像データはＪＰＥＧ等の方式によって圧縮されて保存されている。本実施例で用いる画像特徴量を抽出するためには、画像データを復号し、メモリ上に展開に画素値の配列として展開する必要がある。また、多重解像度画像の生成、画像に対する微分処理等も行う必要がある。また、別の事前処理としては、元画像に対し図１３に示すようなフィルタリングを行う処理があげられる。
【００３３】
事前処理部１０９がこれらの事前処理をＳ８０４（図６においてはＳ１９４０）で行った後、Ｃ［ｉ］［］の要素にアクセスするための添え字ｊを０に初期化する（Ｓ８０５）。Ｓ８０６は、Ｃ［ｉ］［］内の全要素について処理したか否か、つまり、類似画像検索結果で得られた全ての部分領域について詳細化処理を行ったか否かを判定する判定ステップである。Ｓ８０７で、部分Ｃ［ｉ］［ｊ］を種とする詳細化処理を行い、ｊをインクリメントする（Ｓ８０８）。ｊがＮ［ｉ］に達したらループを抜け（Ｓ８０６）、ｉをインクリメントし、判定ステップＳ８０２に戻る。
【００３４】
図９は、Ｓ８０７の詳細化処理を説明するための図である。詳細化処理部１１０は、処理をおこなう種画像となる部分領域（Ｓ１９１０で得られた部分領域）に対して、微少に縦横に並行移動した部分領域９１０、微少に拡大縮小を行った部分領域９２０、および、拡大縮小された部分領域を更に縦横に並行移動した部分領域を、補正後部分領域として生成する。部分領域を並行移動させる微小の範囲については後述する。この並行移動によって生成される部分領域の数は、上下、左右、斜めの移動で８パターンである。拡大縮小で生成される部分領域は２パターンで、拡大縮小それぞれの部分領域の並行移動で、それぞれについて８パターンの部分領域が生成される。従って、１つの種となる部分領域に対して、２６パターンの新たな補正後部分領域が生成される。もちろん、補正後部分領域の形状も、部分領域の形状と同様に矩形に限定されないため、本実施例で用いた２６パターンよりも多くの補正後部分領域を生成しても良い。詳細化処理においても、部分領域の登録処理同様に、画像が長方形であるため矩形領域とした方が処理負荷が小さくて済む。
【００３５】
こうして生成された各補正後部分領域に関して、詳細化処理部１１０において、その補正後部分領域の画像特徴量が抽出される（Ｓ１９６０）。各補正後部分領域の画像特徴量とＳ１９００において取得されたクエリ画像の画像特徴量を比較することによって、クエリ画像との類似性が高い１ないしは複数個の補正後部分領域を、次の詳細化処理を行う種画像となる部分領域として選択する。この際に、種となった元の部分領域の方の類似性が高ければ、元の部分領域が種画像として再び選択される。詳細化処理Ｓ８０７では、このように、種となる部分領域を更新していく反復処理を行うことにより、クエリ画像との類似性がより高い部分領域を探索していく。
【００３６】
上記並行移動の繰り返し処理における各微小範囲（微少変動量）は、次式によって定義する。
【００３７】
ｄｘ＝ｇｘ／２ｑ
ｄｙ＝ｇｙ／２ｑ
ｄｚ＝ｇｚ／２ｑ          （数２）
ここで、ｑは、詳細化処理の繰り返しの回数、ｇｘ、ｇｙは、Ｓ３３０においてグリッド状走査を行った際に用いた横方向、縦方向のステップ幅、ｄｘ、ｄｙは、ｑ回目の詳細化処理での横方向、縦方向の変動量である。一方、ｄｚは、ｑ回目の詳細化処理での拡大率で、縮小する場合の縮小率は、１／ｄｚである。上式から明かなように、変動量ｄｘ，ｄｙの大きさは、本処理の繰り返しの回数に応じて小さくなる。対象となる画像は離散的なデジタル画像であるから、本処理を十分に繰り返せば、微少変動によって新たな領域候補である補正後部分領域が生成されることはなくなる。詳細化処理Ｓ８０７は、少なくとも、新たな領域候補が生成されることがなくなれば終了となるが、計算の効率化のために繰り返し回数の上限を設定し、それに達したなら終了とするフローにしてもよい。
【００３８】
なお、本実施例では、類似検索処理Ｓ１９１０と詳細化処理Ｓ１９６０において、同一の画像特徴量を用いているが、本発明の技術的思想の範囲は、同一の画像特徴量を用いる場合に限定されない。検索対象の規模、対象画像の解像度等に応じて、類似検索処理Ｓ１９１０と詳細化処理Ｓ１９６０のどちらが計算コストを要するか変化させることができる。例えば、詳細化処理の計算コストが大きい場合は、詳細化処理では、類似検索処理よりも低い次元数の特徴量を用いることによって、処理全体の高速化を実現することも可能である。
【００３９】
以上を踏まえると、本実施例に記載の画像検索装置１００は、画像と、画像の一部分である第１領域に含まれる第１画像特徴量とを記憶する記憶部１０３と、クエリ画像から、クエリ画像特徴量を抽出する抽出部１０６と、クエリ画像特徴量に最も近い第１画像特徴量を検索し、一次検索結果として出力する検索部１０７と、一次検索結果を含む第１領域の位置または大きさを変更した領域である第２領域を生成し、第２領域に含まれる第２画像特徴量を抽出する補正部１１３と、第一次検索結果または第２画像特徴量のうち、クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、二次検索結果を含む領域を出力する出力部１１１と、を有することを特徴とする。
【００４０】
または、本実施例に記載の画像検索方法は、画像と、画像の一部分である第１領域に含まれる第１画像特徴量とを記憶装置１０３に記憶する第１ステップ（Ｓ２３０）と、クエリ画像から、クエリ画像特徴量を抽出する第２ステップ（Ｓ１９００）と、クエリ画像特徴量に最も近い第１画像特徴量を検索し、一次検索結果として出力する第３ステップ（Ｓ１９２０）と、一次検索結果を含む第１領域の、位置または大きさを変更した領域である第２領域を生成し、第２領域に含まれる第２画像特徴量を抽出する第４ステップ（Ｓ１９６０）と、第一次検索結果または第２画像特徴量のうち、クエリ画像特徴量に最も近い画像特徴量を二次検索結果と判定し、二次検索結果を含む領域を出力する第５ステップ（Ｓ１９８０）と、を有することを特徴とする。
【００４１】
本実施例のように、画像を部分領域に分割し、部分領域単位で類似画像検索をすることで、画像全体の類似度にとらわれない自由な検索を行うことができる。
【００４２】
さらに、補正部１１３により類似画像検索後の部分領域に対して詳細化処理を行うことで、画像登録段階では部分領域からはみ出ていた部分についても、適切なサイズで部分領域を切り出すことができ、より適切な検索結果を得ることができる。
【００４３】
また、このような検索システムを用いることで、画像中の目的となる部分領域以外の部分に影響されることなく、適切に監視対象を特定することのできる大規模監視システムを提供することができる。
【実施例２】
【００４４】
本発明の第２の実施の形態は、実施例１の図６に示した事前処理Ｓ１９４０の効率化を図った変形例であり、その他の構成は実施例１と同様である。
【００４５】
図８のＳ８０７で示した、類似検索結果の部分領域を種画像とする詳細化処理において、実際に必要となる画像上の領域は、種となる部分領域の周辺のみである。一般的な画像処理アルゴリズムは対象となる画像の画素数に比例して計算量が増大する場合が多い。従って、種となる部分領域の周辺領域に限定した画像処理を行えば、計算量の削減が実現できる。ここでいう周辺領域とは、たとえば図１０に示した１０１０の領域を言い、種となる部分領域は１０１１を言う。周辺領域とは、種画像を用いて詳細化処理を行いうる範囲を指しており、具体的には、詳細化処理で生成される２６パターンの補正後矩形領域を全て包含する最小限の大きさの領域である。
【００４６】
また、多くの場合、単一の画像上に、複数個の種となる部分領域が存在する。図１０に示したのは、同一画像上に２つの種となる部分領域が存在する場合の一例である。１０１０は、１つ目の部分領域１０１１の周辺部分領域、１０２０は、２つ目の部分領域１０１２の周辺部分領域、１０３０は、両周辺領域を包含する最小の部分領域である。この場合、計算量が画素数に比例するあるアルゴリズムを、１０１０、１０２０それぞれ別個に行っても、重複する領域は僅かである。これに対して、１０３０を対象にそのアルゴリズムを適用した場合、本来、処理する必要のない領域まで処理することとなり、効率が悪い。
【００４７】
一方、図１１の例では、２つの種となる部分領域１１１１と１１１２の周辺部分領域１１１０と１１２０は、重複する面積が大きい。従って、１１１０、１１２０を別個に処理するよりも、両者を包含する部分領域１１３０に対して処理を行った方が効率的である。
【００４８】
上記の事実を定式化すれば、２つの周辺部分領域の面積の和が、両者を包含する最小の部分領域の面積より大きければ、両者を包含する部分領域に対してアルゴリズムを適用するように、領域の融合を行うべきである。３つ以上の種となる部分領域が存在する場合も同様で、個々の周辺部分領域の面積の総和が、それらを包含する最小の部分領域の面積よりも大きければ、それらの周辺部分領域を融合して扱った方が効率的である。
【００４９】
図１２に、上記の融合処理の流れを示す。図７で示した処理によって、類似検索によって得られた種となる部分領域を、それらを含む元画像ごとに分配した後、データベース１０３に記憶された各部分領域に関するデータの属性５０２を参照することによって、更に、種となる部分領域を解像度ごとに分配する（Ｓ１２１０）。次に、各解像度ごとに、種となる部分領域の周辺部分領域に対して、上記の基準に基づく融合処理を実施する（Ｓ１２２０）。その後融合処理を行った結果に基づいて、事前処理を行う。具体的には、融合領域１１３０の面積が各部分領域を含む周辺領域１１１０，１１２０の合計面積より小さい場合には、実施例１で述べた事前処理（Ｓ１９４０）を融合領域単位で実行する。一方、融合領域１１３０の面積の方が大きい場合には、周辺領域１１１０や１１２０の単位で事前処理を実行する。
【００５０】
このように、事前処理を行う領域を、周辺領域または融合領域に限定することで、元画像全体に対して事前処理を行ってう場合に比べて事前処理を行う時間を削減することができ、より短時間で検索結果を出力することができる。
【００５１】
また、画像特徴量に加え、中間データをデータベース１０３に保存しておくことで、詳細化処理時に補正後部分領域の画像特徴量を求めるための画像処理時間が軽減され、より短時間で検索結果を出力することができる。
【００５２】
このような検索システムを搭載することで、検索時間が短くなり、リアルタイム性を向上させた大規模監視システムの提供が可能となる。
【実施例３】
【００５３】
本発明の第３の実施の形態は、実施例１の図８に示した処理を効率化するために、画像特徴量抽出に必要な中間データをデータベース１０３上に保存する構成とした変形例であり、その他の部分は実施例１と同様の構成である。
【００５４】
図１５は、本実施例において、画像に関わる情報としてデータベース１０３に格納される項目の一覧で、実施例１の説明における図４に対応するものである。画像データ１５０１は、図４の４０１に、部分領域ＩＤのリスト１５０２は、図４の４０２に対応する。本実施例で新たに追加した項目は、輝度勾配情報画像１５０３であり、本実施例ではこれを中間データとして、画像データ等に加えデータベース１０３に格納する。
【００５５】
今、ベクトル方向離散化のレベル数をＤとする。ある画素上の輝度勾配ベクトルから数１より２乗ノルムｐと方向θを算出し、θがｋ番目の離散化の範囲に含まれる時、ｋ番目の値がｐで、その他の値が０であるＤ次元のベクトルを構成することができる。例えば、Ｄが８、ｋが４とすれば、そのベクトルは、（０  ０  ０  ｐ  ０  ０  ０  ０）となる。１５０３の輝度勾配情報画像とは、このようなベクトルを画素値とする画像である。なお、輝度勾配情報画像は、解像度レベルごとに構成される。
【００５６】
輝度勾配情報画像に対して集計処理を行うことによって、画像特徴量を算出することができる。たとえば、図１４のグラフ１４２０のように、縦軸をブロックの数、横軸を２乗ノルムｐが入る位置（１からｋまで）として集計し、このグラフに基づいて画像特徴量を算出しても良い。
【００５７】
このように、画像特徴量を算出する際に必要な中間データとなる輝度勾配情報画像等をデータベース１０３上に保存しておくことによって、画像データの読み込み、多重解像度化、微分処理、および、数１の演算を行わずに、特徴量抽出が可能となる。
【００５８】
画像の幅をＷ、画像の高さをＨとすれば、輝度勾配情報画像は、Ｄ×Ｗ×Ｈの３重配列となる。ただし、定義より、画素値であるＤ次元のベクトルは、１要素のみが非０の値ｐを持ち、後は、０である。また、ｐが０、すなわち、輝度勾配が存在しない場合は、全ての値が０である。より一般には、集計処理にほとんど影響を与えないような小さなｐの値は、特徴量抽出には不要であり、ｐが一定の閾値以下の場合は、ｐ＝０として処理しても良い。このような事情から、輝度勾配情報画像を保存する際には、Ｄ×Ｗ×Ｈの３重配列ではなく、２乗ノルムの値が存在する（ｐ≠０である）配列上の位置（インデックス）と、２乗ノルムの値の組として管理した方が適切である。図１６に、そのデータ構造を示した。１６１０がインデックスの配列、１６２０が２乗ノルムの値の配列であり、２乗ノルムの値が存在する配列上の位置のみ１６１０に記録され、二乗ノルムの値が存在しない配列の位置は１６１０には記録されない。また、１６２０には１６１０の位置に対応するｐの値のみが記録される。インデックスの値は、０からＤ×Ｗ×Ｈ−１の範囲となる。
【００５９】
たとえば、定点監視カメラからの入力映像を処理する場合、画像で時間的変動がある部分のみを着目領域とする場合が多い。定点監視カメラ映像中の画像から変動が大きい画素を抽出することは、背景差分法により容易に実装することができる。時間的変動が一定の閾値以下の画素は保存対象に含めない、すなわち、２乗ノルムｐの値が０の場合と同等と見なすことによって、１６１０および１６２０のデータ列として管理される輝度勾配情報画像のデータ量は、より少なくなり、上記方式の効果が大きくなる。
【００６０】
画像特徴量抽出をする際には、画像状のデータ構造、すなわち、３重配列の状態に戻す必要がある。実施例２で説明したように、詳細化処理では、画像中の必要な一部の周辺領域に対し事前処理を行えば十分である。
【００６１】
実際の処理では、先ず、インデックス１６１０を参照し、そのインデックスに対応する座標値が、処理の対象となる領域に含まれるか否かを判定し、処理対象領域に含まれる場合のみ、２乗ノルムの値１６２０を参照し、画像状のデータ構造を構成していく。なお、インデックスから画像上の座標値を取得することは容易である。インデックスの値をＤで除算した後、Ｗで除算した剰余がｘ座標、切り捨て除算の結果がｙ座標となる。
【００６２】
なお、本実施例では、輝度勾配ベクトルの分布を画像特徴量として用いた場合について論じたが、ここで述べた方式は、画素値が次元Ｄのベクトルである画像一般に対して適用可能である。
【００６３】
本実施例のように、画像特徴量の抽出に必要な中間データをデータベース１０３に記憶しておくことで、画像データの読み込み、多重解像度化、微分処理等を行わずに、特徴量抽出が可能となるため、検索処理の速度が向上する。
【００６４】
このような検索システムを搭載することで、検索時間が短くなり、リアルタイム性を向上させた大規模監視システムの提供が可能となる。
【実施例４】
【００６５】
本発明の第４の実施の形態は、実施例３のデータの扱い方を、更に効率化する構成を実装した変形例である。その他の構成は実施例１、３と同様である。実施例３では、インデックス１６１０を参照することによって、処理対象となる領域に含まれるか否かを判定する。これに対して、本実施例では、座標値が一定範囲に含まれるインデックスの位置を管理する情報、すなわち、インデックスのインデックス情報（以下、メタインデックスと呼ぶ）を別途格納する。これによって、詳細化処理の領域に含まれるインデックスを高速に取り出すことが可能となる。
【００６６】
以下、このメタインデックスの構成方法を説明する。先ず、画像上座標値を１次元上の位置と見なし、適切な大きさＳのブロックに分割する。各ブロックに含まれる座標値は、通常は、ｙ座標が等しく、ｘ座標が連続的に変化するものとなる。ただし、画像の幅ＷとＳとの関係から、折り返しが発生する場合がある。この場合、あるｙ座標値の画像右端に達した後、ｙ座標値が１増加して、ｘ座標値が左端、すなわち、０から増加することになる。各ブロックには、最大Ｓ×Ｄ個のインデックスが含まれる。メタインデックスは、ブロック内のインデックス数が０でないものに対して構成される。
【００６７】
図１７は、本方式で用いるデータ構造を示したものである。インデックスの配列１７１０は、図１６の１６１０に、値の配列１７２０は、図１６の１６２０と同等である。一方、１７０１と１７０２は、メタインデックスに関わるデータである。１７０１は、ブロック化された座標値を示す整数値の配列である。ここでブロック化された座標値とは、各ブロック先頭の座標値を１次元上の位置と見なした値は、Ｓで除算したものである。今、着目する座標値を（ｘ，ｙ）とすれば、それを含むブロックのブロック化された座標値は、（ｙ×Ｗ＋ｘ）／Ｓで算出される。一方、１７０２は、インデックスの配列１７１０の配列上の位置、すなわち、メタインデックスを要素とする配列である。
【００６８】
画像特徴量抽出をする際には、先ず、処理対象となる座標値とブロック化された座標値１７０１を照合することによって、処理対象となる座標値を含むブロックを見つける。次に、そのブロックに対応するメタインデックスの配列１７０２を参照し、含まれるインデックス１７１０の値から処理対象となる座標値か否かを判定し、処理対象であれば１７２０に格納された値を取得する。
【００６９】
このように、メタインデックス情報を用いることで、画像特徴量を抽出する補正後部分領域に関する情報のみを取り出しやすくなるため、さらに高速に検索処理を行うことができる。
【００７０】
このような検索システムを搭載することで、検索時間が短くなり、リアルタイム性を向上させた大規模監視システムの提供が可能となる。
【符号の説明】
【００７１】
１００：計算機システム
１０２：画像登録部
１０３：記憶装置
１０４：部分領域生成部
１０６：クエリ特徴量抽出部
１０７：類似部分領域検索部
１１０：検索結果出力部
１１３：補正部
１２０：端末計算機
１３０：ネットワーク
１４０：カメラ
９１０、９２０：補正後部分領域
１０１１，１０１２，１１１１，１１１２：部分領域
１０１０，１０２０，１１１０，１１２０：周辺領域
１０３０，１１３０：融合領域。
【図１】
2015230578.tif 000003
【図２】
2015230578.tif 000004
【図３】
2015230578.tif 000005
【図４】
2015230578.tif 000006
【図５】
2015230578.tif 000007
【図６】
2015230578.tif 000008
【図７】
2015230578.tif 000009
【図８】
2015230578.tif 000010
【図９】
2015230578.tif 000011
【図１０】
2015230578.tif 000012
【図１１】
2015230578.tif 000013
【図１２】
2015230578.tif 000014
【図１３】
2015230578.tif 000015
【図１４】
2015230578.tif 000016
【図１５】
2015230578.tif 000017
【図１６】
2015230578.tif 000018
【図１７】
2015230578.tif 000019
【図１８】
2015230578.tif 000020