(57)【要約】  従来技術では、クエリ画像の部分領域の面積が相対的に小さい場合には、検索意図から外れた画像が多数ヒットしてしまう  クエリ画像に含まれる複数の部分領域を検出するステップと、検出された部分領域の特徴量を複数抽出するステップと、抽出された複数の特徴量とＤＢに予め複数格納される画像部分領域の特徴量とをそれぞれ対応付け、対応付けられた特徴量の類似度をそれぞれ算出するステップと、算出されたそれぞれの類似度に、クエリ画像に含まれる各部分領域の面積に応じて重み付けをするステップと、それぞれの部分領域の類似度に重み付け処理をした値の合計値に基づき、クエリ画像と検索対象画像との類似度を算出するステップと、を備える。
2017168601.tif 000002
【特許請求の範囲】
【請求項１】
着目領域検出部が、クエリ画像に含まれる複数の部分領域を検出する第１のステップと、
特徴量抽出部が、検出された部分領域の特徴量を複数抽出する第２のステップと、
類似検索部が、抽出された複数の特徴量とＤＢに予め複数格納される画像部分領域の特徴量とをそれぞれ対応付け、当該対応付けられた特徴量の類似度をそれぞれ算出する第３のステップと、
類似検索部が、算出されたそれぞれの類似度に、クエリ画像に含まれる各部分領域の面積に応じて重み付けをする第４のステップと、
類似検索部が、それぞれの部分領域の類似度に重み付け処理をした値の合計値に基づき、クエリ画像と検索対象画像との類似度を算出する第５のステップと、
検索結果出力部が、第５のステップで算出した類似度に基づき検索した結果を表示部に出力する第６のステップと、
を備えることを特徴とする類似画像検索方法。
【請求項２】
請求項１に記載の類似画像検索方法において、
前記第１のステップは、前記クエリ画像を多重解像度化する処理と、複数の部分領域を生成する処理と、生成された複数の部分領域を対称性評価に基づき絞り込む処理と、を含むことを特徴とする類似画像検索方法。
【請求項３】
請求項２に記載の類似画像検索方法において、
前記第１のステップは、対称性評価に基づき絞り込まれた複数の部分領域の数が所定値以上である場合に詳細化された部分領域を生成して前記対称性評価の対象に追加する処理を含み、
前記第２のステップは、対称性評価に基づき絞り込まれた複数の部分領域の数が所定値を下回る場合に実施される、ことを特徴とする類似画像検索方法。
【請求項４】
請求項３に記載の類似画像検索方法において、
前記第２のステップは、前記対称性評価に基づく絞り込み試行回数が所定値以上になった場合に実施される、ことを特徴とする類似画像検索方法。
【請求項５】
クエリ画像に含まれる複数の部分領域を検出する着目領域検出部と、
検出された部分領域の特徴量を複数抽出する特徴量抽出部と、
抽出された複数の特徴量とＤＢに予め複数格納される画像部分領域の特徴量とをそれぞれ対応付け、対応付けられた特徴量の類似度をそれぞれ算出し、算出されたそれぞれの類似度に、クエリ画像に含まれる各部分領域の面積に応じて重み付けをし、重み付けをした値の合計値に基づきクエリ画像と検索対象画像との類似度を算出する類似検索部と、
算出された類似度に基づき検索した結果を表示部に出力する検索結果出力部と、
を備えることを特徴とする類似画像検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を対象とした情報検索技術に関する。
【背景技術】
【０００２】
近年、ネットワークのブロードバンド化、各種記憶装置の大規模化により、大規模な画像・映像を蓄積、管理し、それらを配信するサービスを実施することが可能となった。【０００３】
このような大規模コンテンツを扱うシステムで重要となるのが検索技術である。検索技術として一般的なのは、画像・映像コンテンツと関連する付けられたテキスト情報に対する検索技術である。文書情報の検索技術では、1つ、ないしは、複数個のキーワードをクエリとして入力し、それが含まれるテキスト情報と関連づいた画像・映像を検索結果として返す形式が一般的である。また、画像自体から情報を抽出し検索する技術も存在する。特許文献１、特許文献２等に記載されているように、類似画像検索では、事前に、検索対象となる画像から、画像の持つ特徴を数値化した画像特徴量を抽出し、データベース化することによって高速の検索を実現している。【０００４】
特許文献１には、検索対象画像を分割する複数の領域とクエリ画像を分割する複数の領域との組み合わせ毎に領域の類似性を示す領域類似度を算出し、クエリ画像内の領域毎に該領域に対応する領域類似度に基づき該領域の重要度を算出し、検索対象画像毎に該検索対象画像における各領域とクエリ画像における各領域との組み合わせに対応する領域類似度及び重要度に基づきクエリ画像との類似性を示す画像類似度を算出する構成が開示されている。【０００５】
【特許文献１】特開２０１３−２５４３６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示された技術では、クエリ画像の部分領域の面積が相対的に小さい場合には、検索意図から外れた画像が多数ヒットしてしまう。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、クエリ画像に含まれる複数の部分領域を検出するステップと、検出された部分領域の特徴量を複数抽出するステップと、抽出された複数の特徴量とＤＢに予め複数格納される画像部分領域の特徴量とをそれぞれ対応付け、対応付けられた特徴量の類似度をそれぞれ算出するステップと、算出されたそれぞれの類似度に、クエリ画像に含まれる各部分領域の面積に応じて重み付けをするステップと、それぞれの部分領域の類似度に重み付け処理をした値の合計値に基づき、クエリ画像と検索対象画像との類似度を算出するステップと、を備える方法を提供する。
【発明の効果】
【０００８】
本発明によれば、クエリ画像の部分領域の面積が相対的に小さい場合には重みが小さくなる結果、検索意図から外れた画像がヒットする可能性を低減することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例のシステム構成図である。
【図２】本発明の実施例のシステム構成の詳細図である。
【図３】本発明の実施例で用いた着目領域検出技術の説明図である。
【図４】本発明の実施例で用いた着目領域検出技術おける対称軸の説明図である。
【図５】微分フィルタの例である。
【図６】輝度勾配強度分布特徴量の説明図である。
【図７】本発明の実施例における着目領域検出処理の流れを示す図である。
【図８】着目領域検出処理の詳細を説明する図である。
【図９】着目領域検出処理おける詳細化処理の説明図である。
【図１０】着目領域検出結果を示すための模式図である。
【図１１】部分領域に関してデータベース化される項目の一覧である。
【図１２】類似検索処理の流れである。
【図１３】部分領域に関する類似検索の結果を示すための模式図である。
【図１４】方式１による部分領域の対応付けを行った結果を示すための模式図である。
【図１５】方式２による部分領域の対応付けを行った結果を示すための模式図である。
【図１６】実施例２のサービスを実現するシステムのシステム構成図である。
【図１７】実施例２のサービスにおいて画像に関してデータベース化される項目の一覧である。
【図１８】実施例２のアプリケーションの画面構成の模式図である。
【発明を実施するための形態】
【実施例１】
【００１０】
図１は、本発明の方式を画像検索サービスに適用した場合のシステム構成である。図１の１００は、検索サービスを提供するための計算機システムである。検索サービスが提供する各種機能は、ネットワークシステム１１０を経由して、端末計算機１２０を用いるユーザに対して提供される。【００１１】
図２は、検索サービスを提供するための計算機システム１００の内部構成である。この図を用いて本発明が対象とする画像検索システムの処理フローを説明する。【００１２】
まず、画像を登録する際の処理を説明する。画像を登録する際には、検索対象となる登録画像２１０を画像登録部２１１が受け付けた後、着目領域検出部２１２において、登録画像２１０から、着目するべき部分領域の集合が検出される。着目領域検出処理の詳細は図７で後述する。検出された各部分領域に対して、検索用特徴量抽出部２１３において画像特徴量が抽出される。抽出された画像特徴量は、部分領域と対応付けられた形式でデータベース２２０に保存される。【００１３】
次に、画像を検索する際の処理を説明する。画像を検索する際には、与えられたクエリ画像２３０をクエリ画像受領部２３１が受け付けた後、着目領域検出部２３２において、クエリ画像２３０から、着目するべき部分領域の集合が抽出される。着目領域検出処理の詳細は、図７で後述する。次に、検出された各部分領域に対して、検索用特徴量抽出部２１３において画像特徴量が抽出される。なお、図２では説明の便宜のため着目領域検出部２１２と着目領域検出部２３２を分けて記載しているが、これらが計算機内の同一の処理部であっても良い。検索用特徴量抽出部２１３と検索用特徴量抽出部２３３についても同様である。【００１４】
本発明の方式が適用されるのは、類似検索部２３４である。類似検索部２３４では、クエリ画像２３０の部分領域の画像特徴量の集合と、データベース２２０に格納された登録画像２１０の部分領域の画像特徴量の集合とから、類似画像検索の結果を構成する。最後に、検索結果出力部２３５において、類似画像検索の結果、および、データベース２２０に格納された各種情報を用いて、検索要求元に返すべき情報を生成し、検索結果２４０として検索要求元に送信する。【００１５】
本実施例では、登録画像２１０の着目領域検出部２１２およびクエリ画像２３０の着目領域検出部２２２において、対象を限定しない着目領域の検出方式として、局所的な対称性を用いた検出方式を用いている。当該検出方法の詳細については図３で後述する。【００１６】
図３は、局所的な対称性を評価するための画像特徴量の抽出に関する説明図である。画像３０１の中の任意の矩形部分領域３０２に対して、更に、３×３のブロック状に分割することによって、各ブロック領域の画像特徴量ベクトル群３０３を抽出する。。この９つの画像特徴量ベクトルをｆ００、ｆ１０、ｆ２０、ｆ０１、ｆ１１、ｆ２１、ｆ０２、ｆ１２、ｆ２２で示す。ここで、１番目の添え字は、各ブロックのｘ方向の位置、２番目の添え字は、ｙ方向の位置である。【００１７】
図４は、着目領域検出技術おける対称軸を示す図である。各ブロックの画像特徴量ベクトルに対して４つの軸を中心とした鏡映変換を考える。ここで、各軸を中心とした鏡映変換を画像特徴量ベクトルに対して適用するための行列を、Ｔ０、Ｔ１、Ｔ３、Ｔ４で表す。すなわち、Ｔ０は、左右に鏡映変換するための行列であり、Ｔ１は、右上４５度の軸を中心に鏡映変換するための行列であり、Ｔ３は、上下に鏡映変換するための行列であり、Ｔ４は、右下４５度の軸を中心に鏡映変換するための行列である。【００１８】
各ブロック領域で抽出された画像特徴量ベクトルに対して、上記の変換行列を適用することによって、矩形部分領域内の対称性を評価することができる。例えば、左右対称性を評価するためには、ｙ軸を中心として対称な位置に存在するｆ００とｆ２０について、ｆ２０を左右に鏡映変換したベクトル、すなわち、ｆ２０にＴ０をかけたベクトルがｆ００と近ければ、対称性が高いと考えられる。同様に、ｆ０１とｆ２１については、ｆ２１にＴ０をかけたベクトル、ｆ０２とｆ２２については、ｆ２２にＴ０をかけたベクトルがそれぞれ近ければ、対称性が高いと考えられる。このようにして、左右対称性は、[数１]に示すような３つのベクトル間２乗距離から構成されるベクトルＤ０として表現することができる。【００１９】
【数１】
2017168601.tif 000003
【００２０】
同様に、右上４５度の軸を中心とする対称性は、[数２]のＤ１として表現される。【００２１】
【数２】
2017168601.tif 000004
【００２２】
同様に、上下対称性は、[数３]のＤ２として表現される。【００２３】
【数３】
2017168601.tif 000005
【００２４】
同様に、右下４５度の軸を中心とする対称性は、[数４]のＤ３として表現される。【００２５】
【数４】
2017168601.tif 000006
【００２６】
一方、本検出方式では、特徴量ベクトルの変換によって対称性が増大する時に対称性が高いと評価する。例えば、Ｄ０の算出で用いられるｆ００とｆ０２が、元々、左右の鏡映変換に関して変動が小さい場合は、左右対称性が大きいとは考えない。このような性質を定量的に表現する補正項として、[数５]に示すような、鏡映変換を適用しない場合の対応するブロック領域間での特徴量ベクトル間の２乗距離から構成されるベクトルＥ０を定義する。【００２７】
【数５】
2017168601.tif 000007
【００２８】
同様に、Ｄ１に対する補正項Ｅ１は、次の[数６]のように表される。【００２９】
【数６】
2017168601.tif 000008
【００３０】
同様に、Ｄ２に対する補正項Ｅ２は、次の[数７]のように表される。【００３１】
【数７】
2017168601.tif 000009
【００３２】
同様に、Ｄ３に対する補正項Ｅ３は、次の[数８]のように表される。【００３３】
【数８】
2017168601.tif 000010
【００３４】
Ｄ０、Ｄ１、Ｄ２、Ｄ３、および、Ｅ０、Ｅ１、Ｅ２、Ｅ３を用いて、矩形部分領域の対称性を評価する。具体的な評価関数としては、[数９]を用いる。【００３５】
【数９】
2017168601.tif 000011
【００３６】
上記の評価関数では、４方向ごとの対称性を評価した後、その最大値を用いている。【００３７】
次に、本方式で用いる輝度勾配ベクトルの強度分布に基づく画像特徴量について説明する。【００３８】
図５は、数値微分を行うためのフィルタの例である。輝度勾配ベクトルは、白黒濃淡画像に対して、２次元の数値微分を適用することによって導出される。微分フィルタによって求められた画素位置（ｘ，ｙ）上の輝度勾配ベクトル（ｇｘ，ｇｙ）から、[数１０]のように、ベクトルの方向θとベクトルの２乗ノルムｐを算出することができる。【００３９】
【数１０】
2017168601.tif 000012
【００４０】
ベクトルの方向θは、０度から３６０度の範囲に分布する。これを適切なレベルに等間隔に量子化し、２乗ノルムｐを矩形領域内で集計することによって、輝度勾配ベクトル方向の強度分布をヒストグラム状のデータとして表現することができる。【００４１】
図６は、輝度勾配強度分布特徴量を算出の概念を表現した模式図である。まず、画像から輝度勾配ベクトル６０１を抽出する。次に、集計処理によってヒストグラム状のデータ６０２を算出する。なお、本実施例では、量子化のレベル数は８とする。また、最初の量子化の値域の中心をx 軸方向に一致させる。【００４２】
本特徴量において量子化のレベル数を８とすれば、各ブロック領域から８次元の画像特徴量ベクトルを抽出することとなる。この時の左右対称性を評価するための鏡映変換行列Ｔ０は[数１１]のようになる。【００４３】
【数１１】
2017168601.tif 000013
【００４４】
同様に、右上４５度方向の軸を中心とする対称性を評価するための鏡映変換行列Ｔ１は[数１２]のようになる。【００４５】
【数１２】
2017168601.tif 000014
【００４６】
同様に、上下対称性を評価するための鏡映変換行列Ｔ２は[数１３]のようになる。【００４７】
【数１３】
2017168601.tif 000015
【００４８】
同様に、右下４５度方向の軸を中心とする対称性を評価するための鏡映変換行列Ｔ３は[数１４]のようになる。【００４９】
【数１４】
2017168601.tif 000016
【００５０】
次に、図７を用いて、着目領域検出部２１２および着目領域検出部２３２の処理について説明する。【００５１】
図７は、着目領域検出部の処理の流れを示した図である。【００５２】
Ｓ７０１は、入力画像から、適切なスケールおよびアスペクトに変換した複数個の画像を生成する処理である。【００５３】
Ｓ７０２は、生成した複数個の画像を、多重解像度化する処理である。【００５４】
Ｓ７０３は、多重解像度化された画像に対して、走査処理によって、着目部分領域の候補となる矩形部分領域を生成し、各部分領域の対称性を算出する処理である。Ｓ７０１〜７０３の詳細は、図８で後述する。【００５５】
Ｓ７０４は、走査処理によって生成される多数個の部分領域を、対称性の評価値に基づきソートし、着目すべき部分領域の候補を上位の所定件数に絞り込む処理である。【００５６】
Ｓ７０５は、収束判定をする処理である。【００５７】
Ｓ７０６は、Ｓ７０５にて収束しないと判定された場合に、詳細化処理によって、その時点の着目領域候補から新たに部分領域を生成し、各部分領域の対称性を算出することによって、着目領域候補の追加を行う処理である。Ｓ７０６の詳細は、図９で後述する。このようにして構成された着目領域候補に対して、再び対称性評価に基づく絞り込み（Ｓ７０４）を行う。収束判定７０５で着目領域の変動がない場合には、収束すると判定して処理を終了する。なお、Ｓ７０４からＳ７０６の繰り返し回数が一定数を越えた場合に収束すると判定し処理を終了してもよい。【００５８】
図８は、図７のＳ７０１〜Ｓ７０３を図解したものである。【００５９】
着目領域の検出では、応用分野に応じて、画像中の部分領域の大きさを適切に見積もる必要がある。特に、必要以上に小さな領域を部分領域として含めて考えると、不必要な部分領域が検出される結果、誤検出が増大するばかりではなく、処理時間も増大する。例えば、本方式の対称性評価における１ブロックの大きさを８×８画素とすれば、部分領域の大きさは２４×２４画素となる。仮に、着目するべき部分領域が、画像の大きさの１０％程度までで十分とすれば、画像の大きさは、２４０×２４０画素程度で十分となる。【００６０】
また、着目部分領域の形状は、必ずしも正方形のみではなく、横長、縦長の矩形領域の抽出が必要な場合も多い。本実施例では、横長の矩形を抽出する必要がある場合は、元画像のアスペクトを縦長に変形した上で、正方格子状のブロック分割による対称性の評価を行う。このような処理によって生成された矩形領域を元の画像上の座標系に戻せば、横長の矩形となる。同様に、縦長の矩形を抽出する必要がある場合は、元画像のアスペクトを横長に変形して処理を行う。【００６１】
８０２は、上述の２つの観点から行われる処理がを示したものである。入力画像８０１に対して、画像の幅を半分に縮小した上でスケール変換した画像、アスペクト比を保持してスケール変換した画像、画像の高さを半分に縮小した上でスケール変換した画像、計３つの画像が生成されていることが示されている。【００６２】
８０３は、多重解像度処理を示すものである。この処理では、各画像を１／２ずつ２段階まで縮小した画像を生成する。【００６３】
８１０は、このようにして生成された９つの画像に対する走査処理を示すものである。この処理では、各画像内の矩形状の窓を一定画素数ずつ平行移動することによって、矩形領域を粗く生成する。  図９は、図７のＳ７０６を図解したものである。【００６４】
Ｓ７０６では、ある着目部分領域の候補に対して、微小に縦横に平行移動した矩形領域９１０、微小に拡大縮小を行った矩形領域９２０、および、拡大縮小された矩形領域を更に縦横に平行移動した矩形領域を、新たな着目部分領域の候補として生成する。平行移動によって生成される矩形領域の数は、上下、左右、斜めの移動で８パターンである。拡大縮小で生成される矩形領域は２パターンで、拡大縮小それぞれの矩形領域の平行移動で、それぞれについて８パターンの矩形領域が生成される。合わせて、１つの種となる矩形領域に対して、最大で２６パターンの新たな矩形領域が生成され、その対称性が評価される。【００６５】
なお、先述したように、詳細化処理７０６は繰り返し実行される。各繰り返し処理における各微小変動量は、[数１５]によって定義される。【００６６】
【数１５】
2017168601.tif 000017
【００６７】
ここで、ｑは、詳細化処理の繰り返しの回数、ｓｘ、ｓｙは、それぞれ走査処理（Ｓ７０３）において平行移動を行った際の横方向、縦方向のステップ幅、ｄｘ、ｄｙは、それぞれｑ回目の詳細化処理での横方向、縦方向の変動量である。一方、ｄｚは、ｑ回目の詳細化処理での拡大率で、縮小する場合の縮小率は、１／ｄｚである。上式から明らかなように、変動の大きさは、本処理の繰り返しの回数に応じて小さくなる。対象となる画像は離散的なデジタル画像であるから、本処理を十分に繰り返せば、微小変動によって新たな領域候補が生成されることはなくなる。Ｓ７０４〜Ｓ７０６は、少なくとも新たな領域候補が生成されることがなくなれば、Ｓ７０５で収束と判定されて終了となる。【００６８】
図１０は、登録画像の着目領域検出部２１２およびクエリ画像の着目領域検出部２３２における部分領域検出結果を模式的に示したものである。画像１０１０から大きさが異なる多様な部分領域が検出される。１０２０はそれぞれの部分領域の集合である。部分領域の集合１０２０には、面積が小さい部分領域１０２１、面積が大きい部分領域１０２２が含まれる。これらについては、図１５の説明中の数１８の説明で後述する。【００６９】
なお、部分領域の１つとして、元画像全体の領域を加えてもよい。これにより、画像全体の類似性を加味した検索を可能することもできる。【００７０】
登録画像２１０の検索用特徴量抽出部２１３、および、クエリ画像２３０の検索用特徴量抽出部２３３において用いられる画像特徴量は、色分布、輝度勾配ベクトルの分布等に基づいて算出する。具体的な画像特徴量の定義例は、非特許文献１、非特許文献３等に開示されている。【００７１】
このようにして登録画像２１０から抽出された部分領域に関する情報は、データベース２２０に格納される。【００７２】
図１１は、各部分領域に対して保存される情報のうち、本実施例における類似検索処理に関わる項目を列挙したものである。【００７３】
項目１１０１は各部分領域がどの画像に含まれていたかを特定するための情報であり、整数値の画像IDとして表現する。項目１１０２は各矩形部分領域の座標値であり、左上端点、右下端点それぞれの座標値を４個の整数値として格納する。項目１１０３は各部分領域が元の画像の中で占める面積の比率である。例えば部分領域が元の画像と一致する場合には、最大値1.0となる。項目１００４は形状情報を表現する画像特徴量、項目１００５は色分布情報を表現する画像特徴量を、それぞれ示している。本実施例では、この２種の特徴量を用いているが、１種でも良いし、３種以上の特徴量を設定してもよい。【００７４】
なお、クエリ画像に関する情報も、図１１に示したのと同様の情報が抽出される。クエリ画像に関する情報は、メモリ上に一時的に保持する形式で、本実施例のアプリケーションは稼動可能である。ただし、同一のクエリ画像を用いて、検索条件が異なる検索要求が複数回発生する事態を想定した場合、毎回、クエリ画像の解析を行うのは効率が悪い。従って、クエリ画像に関する情報は、１つの検索処理を越えてキャッシュされていることが望ましい。一方、同時に多数の検索要求を受領するような規模の大きな運用を考えた場合、メモリ上でキャッシュを行うとメモリ消費が増大し適切ではない。そのような場合は、クエリ画像に関しても、一時的にデータベース上に情報を保存する形式を採用すると好適である。【００７５】
なお、本実施例では、部分領域が矩形領域として定義されている例について説明するが、図１２に示す方式では、部分領域の形状が矩形である必要はない。この場合に部分領域が必要とする要件は、画像特徴量が抽出可能であることと、領域の面積が定義されていることである。【００７６】
図１２は、類似検索部２３４における処理の流れを示したものである。Ｓ１２０１は、類似検索部２３４が、部分領域特徴量データベースを対象として類似検索を実行する処理である。本処理では、クエリ画像から検出された各部分領域の特徴量をクエリとする類似検索が、クエリ画像の部分領域の数だけ行われる。【００７７】
Ｓ１２０２は、Ｓ１２０１で取得された検索結果の集合に基づき、クエリ画像の部分領域と各画像の部分領域との対応付けを行う処理である。詳細は図１３で後述する。【００７８】
Ｓ１２０３は、処理１２０２における対応付けの結果から、クエリ画像と各画像との距離を構成する処理である。【００７９】
Ｓ１２０４は、処理１２０３で構成された距離をソートすることによって、類似画像検索結果を構成する処理である。【００８０】
Ｓ１２０５は、検索結果出力部２３５に対して、その結果を引き渡す処理である。【００８１】
なお、Ｓ１２０１では、クエリ画像の部分領域とデータベース上の部分領域との間の特徴量間の２乗距離を非類似性の指標として用いた類似検索結果を行う。クエリ画像のｉ番目の矩形領域と、データベース上に格納されたｊ番目の部分領域との特徴量空間上での２乗距離は[数１６]のようになる。【００８２】
【数１６】
2017168601.tif 000018
【００８３】
ここで、q_ikは、ｉ番目の部分領域の画像特徴量のｋ番目の要素、f_jkは、データベース上のｊ番目の部分領域の画像特徴量のｋ番目の要素、Ｍは、画像特徴量の次元数である。【００８４】
なお、本２乗距離は、データベース上の全部分領域に対して算出されるわけではない。本実施例では、類似検索の高速化のために、クラスタリング処理に基づく近似近傍ベクトル探索アルゴリズムを用いている。近似近傍ベクトル探索とは、データベース上のベクトル中で、クエリとなるベクトルの近傍範囲に存在すると想定されるベクトルを絞り込むことによって、探索の高速化を実現するものである。本実施例で用いているアルゴリズムは、クエリ近傍のＮ個のベクトルの近似解を２乗距離が小さい順序にソートした形式で検索結果として返す。従って、Ｎ個の結果中に含まれないデータベース上の部分領域との２乗距離の値は、その時点では不明である。【００８５】
本発明の方式では、部分領域に関する類似検索の結果から、クエリ画像とデータベース上に格納された画像間の類似度を構成する。本構成は、クエリ画像の部分領域とデータベース上の各画像の部分領域間で対応付けを行い、部分領域ごとの類似度を画像ごとに集計することによって実現される。以下、図１３を用いてその具体的な方法について説明する。【００８６】
図１３は、部分領域に関する類似検索の結果を示す模式図である。クエリ画像から検出された部分領域数をＬ、各部分領域に関する類似検索結果の件数をＮとすれば、前述Ｓの１２０１により、Ｌ×Ｎ件の類似検索結果が取得される。図を分かりやすくするために、L=4、N=5としているが、実際には、より多数のクエリ画像の部分領域について、より多数の検索結果を取得する場合が多い。本実施例における類似検索の各結果１３００は、算出された2乗距離、部分領域のID、および、その部分領域を含む画像のIDから構成される。なお、画像IDに関しては、類似検索を実施した後、部分領域IDを用いて、データベース上の情報を参照することによって、その値が取得される。図１３中の表の各行は、クエリ画像の各部分領域をクエリとした類似検索の結果である。各行中の検索結果は、データベース上の部分領域がどの画像に含まれるかとは関係なく、2乗距離が小さい順序、すなわち、類似性が高い順序に整列されている。【００８７】
前述のＳ１２０２では、この類似検索結果の集合から、クエリ画像の部分領域とデータベース上の各画像の部分領域の対応付けを行う。本実施例では、対応付けの方式として以下の２つの方式を備えており、システムの運用者、ないしは、検索するユーザが、どちらかを選択する。【００８８】
第１の方式では、クエリ画像の各部分領域について、データベース上の各画像に含まれる部分領域の検索結果の集合中で１番距離が小さい検索結果を採用する。クエリ画像の異なる部分領域の検索結果に、同一のデータベース上の部分領域が含まれることがある。従って、第１の方式では、クエリ画像の異なる部分領域が、同一のデータベース上の部分領域と対応付けられる可能性がある。第１の方式の詳細は、図１４で説明する。【００８９】
図１４は、図１３に示した検索結果から、第１の方式によって行われた対応付けの結果である。検索結果には、１、２、５、６，７の画像IDが含まれているため、その５つの画像について、それぞれ、クエリ画像の部分領域と最も類似性が高い検索結果が選択されている。【００９０】
第２の方式は、第１の方式とは異なり、同一のデータベース上の部分領域が多重に対応付けされることはない。第２の方式では、データベース上の画像ごとに、クエリ画像の全部分領域による検索結果を集めた集合を構成し、その集合を２乗距離が小さい順序にソートした上で、上位から順番に対応付けを行う。この時、対応付けに採用されたデータベース上の部分領域のIDを保持することによって、既に対応付けに採用された部分領域を排除して処理を進める。このようにして、２乗距離が小さい、すなわち、類似性が高いクエリ画像の部分領域とデータベース上の画像の部分領域の組を優先した、重複のない対応付けが可能となる。第２の方式の詳細は、図１５で説明する。【００９１】
図１５は、図１３に示した検索結果から、第２の方式によって行われた対応付けの結果である。例えば、３番目の部分領域の画像IDが１である画像に含まれる部分領域の対応付けでは、類似度がより上位であった部分領域のIDが２である部分領域が、１番目の部分領域との対応付けで使われているため、下位にあった部分領域の画像IDが３である部分領域と対応付けが行われている。また、４番目の部分領域では、該当する部分領域が存在しないため、画像IDが１の画像では対応付けが行われていない。【００９２】
あるデータベース上の画像に着目した場合、クエリ画像の全ての部分領域について対応付けが行われることは一般的ではない。先に述べたように、部分領域の検索結果には、全ての部分領域との評価結果が含まれているわけではない。また、検出する部分領域の数は画像によって異なるため、重複した対応付けを行わない第２の方式では、原理的に、全ての対応付けが行われることはない。部分領域ごとの類似度からクエリ画像と各画像との類似度を構成する際に、部分領域ごとの類似度が確定していたなら、部分領域ごとの類似度の総和が高いものが、画像としての類似度も高いとする自然な仮定が成立する。部分領域ごとの類似度が部分的に不定で、かつ、不定となる部分領域の数が画像間で異なる場合、この不定となる部分領域の扱いが問題となる。【００９３】
ある類似検索を行った場合に検索結果に含まれなかったデータは、検索結果中で最も類似性が低いデータよりも類似性が低いと推定するのは妥当である。そこで、本実施例では、不定となる部分領域に対して、各部分領域の検索結果中の最下位の検索結果の２乗距離の値を設定する。図１３に示した類似検索結果の場合では、１番目の部分領域で不定の場合は、2乗距離0.80を、２番目の部分領域で不定の場合は、2乗距離0.60を、３番目の部分領域で不定の場合は、2乗距離0.50を、４番目の部分領域で不定の場合は、2乗距離0.70を、それぞれが不定となる場合の2乗距離として設定されている。【００９４】
なお、別の設定方式としては、十分大きなデータベース上で統計的に２乗距離の統計量、例えば平均と分散を求め、その統計量に基づいた値を設定する方式もある。【００９５】
上記一連の処理によって、クエリ画像に含まれる各部分領域とデータベース上の画像との２乗距離を、対応付けられた部分領域の２乗距離として定義することができる。このように定義されたクエリ画像の部分領域とデータベース上の画像との２乗距離に用いて、クエリ画像とデータベース上の画像との距離を[数１７]のように定義する。【００９６】
【数１７】
2017168601.tif 000019
【００９７】
ここで、D_iは、クエリ画像とデータベース上のｉ番目の画像との合成された２乗距離、Ｌはクエリ画像に含まれる部分領域の数、d_jiは、クエリ画像のj番目の部分領域とｉ番目の画像との２乗距離、S_jは、j番目の部分領域の面積がクエリ画像の面積に占める比率、Ｐは、S_jの効果を制御するパラメータである。一方、Ｚは、次式のように定義される正規化項である。【００９８】
【数１８】
2017168601.tif 000020
【００９９】
本正規化項は、アプリケーション側でD_iの値を扱いやすくするためのもので、検索処理自体に影響を与えるものではない。【０１００】
数１７における制御パラメータＰは、以下のような機能を果たす。【０１０１】
P=0.0の場合、全てのd_jiは、等価に重み付けられてD_iが算出される。Ｐを大きく設定すれば、面積比S_jが大きな部分領域のd_jiの値が重視されてD_iが算出される。図１０の部分領域検出結果１０２０の例では、面積が小さい部分領域１０２１の類似性は低く評価され、面積が大きい１０２２部分領域の類似性が重視されることとなる。【０１０２】
なお、本実施例では、類似性の比較に非類似度である2乗距離を用いているが、類似性が高いと大きくなる類似度を用いる場合もある。類似度の例としては、例えば[数１９]のような負の2乗距離を指数変換したものがある。【０１０３】
【数１９】
2017168601.tif 000021
【０１０４】
数１９の類似度は、2乗距離dが0.0で最大値1.0となり、dが大きくなると0.0に近づく。このような類似度を用いた場合でも、数１６に示した方式が適用可能である。すなわち、画像間の類似度は、基本的には、部分領域間の類似度の総和として算出され、部分領域間の類似度が高いものが多ければ、画像間の類似度は高くなる。クエリ画像の部分領域の面積による重み付け加算の効果も、数１７の場合と全く変わらない。【０１０５】
部分領域に対する類似検索結果に含まれる部分領域を含む全てのデータベース上の画像について、上記のD_iを算出した後で、D_iの値でソートすることによって、類似画像検索の結果を構成する。【０１０６】
なお、上述の説明では、検索クエリとして画像が与えられた場合について述べたが、データベース上に既に登録されている画像をクエリとして検索する場合もある。この場合は、図１１に示した情報がデータベース上から取得可能なため、クエリ画像の解析は不要となる。従って、図２の類似検索部２３４から処理を開始することができる。
【実施例２】
【０１０７】
図１６は、本実施例で説明する検索サービスのシステム構成図である。本サービスは、検索システム１６００が具備する機能をWebAPI１６０２によってユーザに提供するものである。検索システム１６００のハードウェア構成に、検索対象の規模、および、検索要求頻度に応じて、適切なCPU数、メモリ量、ハードディスク量等の計算資源が割り当てられる。本システム上で稼動する各種プログラムは、プロセス間通信により、情報のやりとりを行う。【０１０８】
ユーザは、Webブラウザ１６０１を用いて、検索要求を発行する。検索要求は、本サービスのWebAPI１６０２によって受領され、その結果は、WebAPI１６０２のレスポンスとしてWebブラウザ１６０１に返される。図２の検索に関わる処理２３１、２３２、２３３、２３４、２３５は、Webサーバ１６０３上で行われる。Webサーバ１６０３は、受領しクエリ画像の解析結果を一時DBサーバ１６０４に送付し、一時DBサーバ１６０４は、その内容をファイルシステム上に保存する。一時DBサーバ１６０４については、システムの安定稼動のために冗長化が必要な場合は、複数個のプロセスを稼動させることができる。複数個の一時DBサーバのプロセスが稼動している場合は、Webサーバ１６０３は、最も負荷が小さい一時DBサーバを登録先として選択することができる。【０１０９】
図２の類似検索処理部２３４が行う処理の内、図１２の「部分領域特徴量DBを対象とする類似検索」１２０１に相当する処理は、Webサーバ１６０３ではなく、検索サーバ１６０５で行われる。大規模データを対象とする場合は、検索サーバ１６０５を複数プロセス稼動させることによって、並列分散処理を行う。【０１１０】
図２の画像の登録に関わる処理２１１、２１２、２１３に相当する処理は、データ登録プログラム１６０６上で行われる。データ登録プログラム１６０６は、取得した登録画像の解析結果を検索サーバ１６０５送付し、検索サーバ１６０５は、その内容をファイルシステム上に保存する。【０１１１】
検索サーバ１６０５、および、一時DBサーバ１６０４において、部分領域に関して管理される情報は、図１１に示したものと同様である。【０１１２】
図１７は、各画像についてデータベース上で管理される項目の一覧である。項目１７０１は、その画像に含まれる部分領域IDの配列で、可変長の整数配列として管理される。項目１７０２は、画像の大きさで、縦横の画素数が２つの整数値として保存される。項目１７０３は、画像が登録された年月日で、整数値として管理される。項目１７０４は、絞り込み検索を行うためのキーワードである。項目１７０３と１７０４は、一時DBサーバ１６０４では使用されない。項目１７０５は、画像データ、項目１７０６は、サムネール画像で、両者ともに、検索結果画面の表示に用いられる。【０１１３】
本実施例では、単純な類似画像検索だけではなく、登録年月日１７０３、および、キーワード１７０４による検索対象の絞り込みと組み合わせた類似画像検索機能が提供される。本機能は、先ず、対象となる画像を検索条件式を評価することによって絞り込んだ後、部分領域IDの配列１７０１を参照することによって、部分領域の検索対象の絞り込みを行う。これによって、効率的な検索が可能となる。【０１１４】
図１８は、Webブラウザ１６０１上に表示される検索用の画面の模式図である。【０１１５】
図１８の１８１０は、検索条件設定のための画面である。１８１１は、クエリ画像を設定する領域であり、ユーザは、ドラッグアンドドロップ操作によって、自らのファイルシステム上に存在する任意の画像ファイルを画面上の領域１８１１に置くことにより、類似検索のクエリを設定する。ユーザが検索ボタン１８１２をクリックすると、画面遷移が発生し、検索結果画面１８２０が表示される。検索結果画面１８２０では、１８１１で指定したクエリ画像がサムネール画像化されて１８２１に表示され、類似検索の結果の一覧が、１８２２に表示される。ボタンの列１８２３は、ページ送りをするためのもので、より順位が低い、すなわち、類似性が低かった画像を閲覧するためのものである。また、１８２２に表示された画像をクリックすると、クリックされた画像をクエリとした類似検索が実行され、検索結果画面１８２０の内容が更新される。これによって、データベース上に登録された画像をクエリとした類似検索を行うことができる。【０１１６】
検索条件設定画面１８１０上の１８１３は、検索対象となる画像を登録年月日によって絞り込むためのGUI部品である。ユーザは、登録年月日の範囲を下限と上限を表す２つの数値によって入力することができる。入力がない場合は、登録年月日による絞り込みは行われない。また、例えば、下限のみを設定した場合は、入力された年月日以降から最新の登録画像までが検索対象となる。１８１４は、キーワードによる絞り込み条件を設定するためのGUI部品である。ユーザは、任意の文字列をテキストフィールドに入力することができる。入力がない場合は、キーワードによる絞り込みは行われない。なお、登録年月日による条件とキーワードによる条件の両者を設定した場合は、その論理積（AND）が絞り込み条件となる。【０１１７】
２つのトグルボタンから構成されるGUI部品１８１５は、類似検索に使用する画像特徴量を選択するためのものである。ユーザは、形状の類似性を重視した検索を行いたい場合は、「SHAPE」のラベルのついたボタンをチェックし、色の類似性を重視した検索を行いたい場合は、「COLOR」のラベルのついたボタンをチェックする。【０１１８】
スライドバー１８１６は、数１６で示した、部分領域の面積の効果を制御するパラメータPの値を指定するためのGUI部品である。本実施例では、その値を0.0〜1.0の範囲で、ユーザが自由に設定することができる。ユーザは、クエリ画像を部分的に含むような画像を検索したい場合は、1.0に近い値を設定する。クエリ画像中に含む部分と共通するような部分を含む画像を検索したい場合は、0.0に近い値を設定する。【０１１９】
なお、本実施例では、本機能を実現するためのGUI部品として、連続量を指定するのに適したスライドバー１８１６を用いているが、実際に指定可能なのは、適切なレベルに量子化した値である。Pの値が変わると類似検索の結果は変化する。Webサーバ１６０３は、ページ切り替えボタン１８２３の操作に伴う画面遷移等への対応のために、同一の検索条件の検索結果をキャッシュしている。検索条件が変化した場合、新たなキャッシュを生成する必要があり、本質的な効果がないような微妙なPの変化に追随してキャッシュを生成することは、システム運用上から効率的ではない。本実施例では、WebAPIで受領したPの値を適切に量子化した上で、類似検索処理を行っている。また、量子化処理されることが前提なので、GUI部品としては、スライドバーでなく、量子化された値と対応したボタン列上での値の選択等の方式でも問題はない。【０１２０】
検索結果画面１８２０の領域１８２４には、検索条件設定画面１８１０の１８１３、１８１４、１８１５、１８１６と同様のGUI部品が配置されている。ユーザは、これらのGUI部品によって、クエリ画像を変えずに、他の検索条件のみを変更して検索を実施することができる。本検索は、検索ボタン１８２５をクリックすると実行され、検索結果画面１８２０の内容が更新される。
【符号の説明】
【０１２１】
100:計算機システム  110:ネットワーク  120:端末計算機  210:登録画像  211:画像登録部  212:着目領域検出部  213:検索用特徴量抽出部  220:データベース  230:クエリ画像  231:クエリ画像受領部  232:着目領域検出部  233:検索用特徴量抽出部  234:類似検索部  235:検索結果出力部  240:検索結果  301:検出対象画像  302:矩形部分領域  303:ブロックごとの画像特徴量  601:輝度勾配ベクトル  602:輝度勾配ベクトルの強度分布  801:入力画像  802:スケールとアスペクトの変換  803:多重解像度化  810:走査処理  910:平行移動  920:拡大縮小  1010:画像  1020:部分領域検出結果  1021:面積が小さい部分領域の例  1022:面積が大きい部分領域の例  1101:画像ID  1102:矩形の座標値  1103:矩形の相対面積  1104:画像特徴量(形状)  1105:画像特徴量（色）  1600:検索システム  1601:Web ブラウザ  1602:Web API  1603:Webサーバ  1604:一時DBサーバ  1605:検索サーバ  1606:データ登録プログラム  1701:部分領域IDの配列  1702:画像サイズ  1703:登録年月日  1704:絞り込み用キーワード  1705:画像データ  1706:サムネール画像  1810:検索条件設定画面  1811:クエリ画像表示領域  1812:検索ボタン  1813:登録年月日範囲指定  1814:キーワード指定  1815:画像特徴量選択  1816:部分領域の面積の効果を制御するパラメータの設定  1920:検索結果表示画面  1921:クエリ画像表示領域  1922:検索結果表示領域  1923:ページ遷移ボタン  1924:検索条件指定  1925:検索ボタン
【図１】
2017168601.tif 000022
【図２】
2017168601.tif 000023
【図３】
2017168601.tif 000024
【図４】
2017168601.tif 000025
【図５】
2017168601.tif 000026
【図６】
2017168601.tif 000027
【図７】
2017168601.tif 000028
【図８】
2017168601.tif 000029
【図９】
2017168601.tif 000030
【図１０】
2017168601.tif 000031
【図１１】
2017168601.tif 000032
【図１２】
2017168601.tif 000033
【図１３】
2017168601.tif 000034
【図１４】
2017168601.tif 000035
【図１５】
2017168601.tif 000036
【図１６】
2017168601.tif 000037
【図１７】
2017168601.tif 000038
【図１８】
2017168601.tif 000039
【国際調査報告】
2017168601.tif 000040
2017168601.tif 000041
2017168601.tif 000042
2017168601.tif 000043