JP2020173640A - 画像検索装置および画像検索方法 - Google Patents

画像検索装置および画像検索方法 Download PDF

Info

Publication number
JP2020173640A
JP2020173640A JP2019075522A JP2019075522A JP2020173640A JP 2020173640 A JP2020173640 A JP 2020173640A JP 2019075522 A JP2019075522 A JP 2019075522A JP 2019075522 A JP2019075522 A JP 2019075522A JP 2020173640 A JP2020173640 A JP 2020173640A
Authority
JP
Japan
Prior art keywords
image
hash value
registered
query
images
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019075522A
Other languages
English (en)
Other versions
JP7118920B2 (ja
Inventor
康二 西田
Koji Nishida
康二 西田
雄貴 古川
Yuki Furukawa
雄貴 古川
俊匡 柳沢
Toshimasa Yanagisawa
俊匡 柳沢
石川 大介
Daisuke Ishikawa
大介 石川
光平 岡本
Kohei Okamoto
光平 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2019075522A priority Critical patent/JP7118920B2/ja
Publication of JP2020173640A publication Critical patent/JP2020173640A/ja
Application granted granted Critical
Publication of JP7118920B2 publication Critical patent/JP7118920B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】高精度かつ高速な類似画像の検索を行うことが可能な画像検索装置を提供する。【解決手段】格納部31は、入力された画像から当該画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する算出モデルと、算出モデルに複数の登録画像のそれぞれを入力して得られる各登録画像に関する第1のハッシュ値および第2のハッシュ値を登録画像ごとに示す管理情報とを格納する。処理部34は、クエリ画像を算出モデルに入力してクエリ画像に関する第1のハッシュ値および第2のハッシュ値を取得し、クエリ画像に関する第1のハッシュ値および第2のハッシュ値と管理情報とを用いて、複数の登録画像からクエリ画像に類似する類似画像を検索する。【選択図】図1

Description

本開示は、画像検索装置および画像検索方法に関する。
画像を検索する画像検索技術が注目されている。例えば、機器の設計および製造などの分野では、画像として設計図面を作成する際、作業工数の削減などのために、過去に作成した設計図面から所望の図面を検索することがある。この場合、例えば、過去に作成した設計図面と設計図面に関する属性情報とを対応付けたデータベースを予め用意しておき、属性情報に基づいて、データベースから設計図面が検索される。
しかしながら、上記の例では、画像自体を指定することによって、その画像と類似する類似画像を検索する類似画像検索を行うことができないという問題がある。
特許文献1には、クエリ画像に類似したリファレンス画像を検索 する画像検索装置が開示されている。この画像検索装置では、クエリ画像およびリファレンス画像のそれぞれのバイナリ特徴ベクトルを求め、予め用意したハッシュコードブックに基づいて、バイナリ特徴ベクトルに最も類似するハッシュ値を算出する。さらに画像検索装置は、ハッシュ値からハッシュ値よりも短いビット列を抽出し、そのビット列に基づいて、クエリ画像に類似したリファレンス画像を検索している。
特開2015−056077号公報
特許文献1に記載の技術では、短いビット列に基づいて、類似画像検索を行っているため、類似画像を検索する検索精度が低いという問題がある。また、ビット列を長くすると、類似画像の検索に長い時間がかかるという問題が生じる。
本開示の目的は、高精度かつ高速な類似画像の検索を行うことが可能な画像検索装置および画像検索方法を提供することにある。
本発明の一つの実施態様に従う画像検索装置は、入力された画像から当該画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する算出モデルと、前記算出モデルに複数の登録画像のそれぞれを入力して得られる各登録画像に関する第1のハッシュ値および第2のハッシュ値を前記登録画像ごとに示す管理情報とを格納する格納部と、クエリ画像を前記算出モデルに入力して前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値を取得し、前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値と前記管理情報とを用いて、前記複数の登録画像から前記クエリ画像に類似する類似画像を検索する処理部と、を有する。
本発明によれば、高精度かつ高速な類似画像の検索を行うことが可能になる。
本開示の一実施形態の情報処理システムを示す図である。 算出モデルの一例を模式的に示す図である。 ハッシュインデックステーブルの一例を示す図である。 モデル生成処理の一例を説明するためのフローチャートである。 ハッシュ生成モデルを生成する処理の一例を説明するための図である。 画像追加処理の一例を説明するためのフローチャートである。 画像削除処理の一例を説明するためのフローチャートである。 画像検索処理の一例を説明するためのフローチャートである。
以下、本開示の実施形態について画像を参照して説明する。
図1は、本開示の一実施形態の情報処理システムを示す図である。図1に示す情報処理システム100は、ユーザデータベース1と、ユーザ端末2と、画像検索サーバ3とを有する。ユーザデータベース1、ユーザ端末2および画像検索サーバ3は、ネットワーク10を介して相互に通信可能に接続される。
ユーザデータベース1は、複数の画像(画像データ)を格納する格納装置である。画像は、JPEG(Joint Photographic Experts Group)形式のようなラスタ形式でもよいし、CAD(Computer Aided Design)形式のようなベクタ形式でもよい。画像には、画像を特定する識別情報である画像IDと、画像に関する属性情報とが付けられている。属性情報は、画像の種類である画像クラスを含む。また、画像は、複数の部分画像を含み、各部分画像に画像IDと属性情報とが付けられてもよい。以下、複数の部分画像を含む画像を全体画像と呼ぶこともある。部分画像は、全体画像が機器の設計図を示す場合、例えば、機器を構成する部品の設計図を示す。
ユーザ端末2は、情報処理システム100を利用するユーザが使用する端末装置である。
ユーザ端末2は、例えば、ユーザからの操作に応じて、種々のコマンドを画像検索サーバ3に送信する。コマンドには、例えば、画像学習コマンド、画像追加コマンド、画像削除コマンドおよび画像検索コマンドがある。
画像学習コマンドは、画像検索(類似画像検索)を行うためのハッシュ値を算出する算出モデルの生成を要求する生成要求である。画像学習コマンドは、機械学習を用いて算出モデルを生成するための学習対象画像(学習データ)を指定する指定情報である学習指定情報を含む。学習対象画像は、例えば、ユーザデータベース1に格納された複数の画像の全部または一部である。学習対象画像は、全体画像でもよいし、部分画像でもよいし、その両方でもよい。
画像追加コマンドは、被検索対象となる画像の追加を要求する追加要求である。画像追加コマンドは、被検索対象として追加する追加対象画像を指定する指定情報である追加指定情報を含む。
画像削除コマンドは、被検索対象からの画像の削除を要求する削除要求である。画像削除コマンドは、被検索対象から削除する削除対象画像を指定する指定情報である削除指定情報を含む。
画像検索コマンドは、検索対象の画像であるクエリ画像と類似する類似画像を検索する画像検索を要求する検索要求である。画像検索コマンドは、クエリ画像を指定する指定情報である検索指定情報を含む。クエリ画像は、ユーザデータベース1に格納された複数の画像のいずれかでもよいし、それらの画像とは別の画像でもよい。また、クエリ画像は、全体画像でもよいし、部分画像でもよい。部分画像をクエリ画像とする場合、ユーザ端末2は、ユーザにて指定された画像から1つまたは複数の部分画像を抽出して表示し、表示された部分画像の中からユーザが選択した部分画像をクエリ画像としてもよい。また、ユーザ端末2は、ユーザにて指定された画像を表示し、表示された画像のうちユーザが指定した範囲に含まれる部分画像をクエリ画像としてもよい。
各コマンドにおける画像を指定する指定情報は、画像を特定する画像IDを示してもよいし、画像を格納する位置を特定する位置情報を示してもよいし、画像そのものを含んでもよい。
また、ユーザ端末2は、画像検索サーバ3に送信したコマンドに対する応答情報を画像検索サーバ3から受信する。例えば、ユーザ端末2は、画像検索サーバ3から画像検索コマンドに対する応答情報として画像検索の検索結果を受信する。このとき、ユーザ端末2は、受信した検索結果を表示してもよい。
以上説明したユーザ端末2の機能は、アプリケーションプログラムにて実現されてもよい。ユーザ端末2の機能を実現するアプリケーションプログラムである画像検索アプリケーションは、画像検索サーバ3から提供されてもよい。画像検索アプリケーションが実現する機能には、例えば、ユーザがコマンドを発行するためのGUI(Graphical User Interface)を生成して表示する機能や、全体画像から部分画像を抽出する機能なども含まれる。
画像検索サーバ3は、画像検索を行う画像検索装置である。画像検索サーバ3は、複数の機器にて実現されてもよい。
画像検索サーバ3は、格納部31と、送受信部32と、管理部33と、処理部34とを有する。
格納部31は、画像検索を行うための情報を格納する。例えば、格納部31は、入力された画像からその画像に関するハッシュ値を算出する算出モデルと、ハッシュ値に関するハッシュインデックステーブルとを格納する。
算出モデルは、具体的には、入力された画像からその画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する。2つのハッシュ値の一方は、類似画像の候補である候補画像を検索するための第1のハッシュ値である検索用ハッシュ値であり、他方は、クエリ画像との類似度を算出して候補画像から類似画像を選択するための第2のハッシュ値である類似度算出用ハッシュ値である。検索用ハッシュ値は、類似度算出用ハッシュ値よりも短い。
図2は、算出モデルの一例を模式的に示す図である。図2に示す算出モデル200は、画像特徴量抽出モデル201と、ハッシュ生成モデル202とを含む。
画像特徴量抽出モデル201は、入力された画像である入力画像から、その入力画像の画像クラスを算出する第1のモデルである。画像特徴量抽出モデル301は、本実施形態では、CNN(Convolutional Neural Network:畳み込みニューラルネットワーク)で構成される。
画像特徴量抽出モデル201は、入力層211と、中間層212と、出力層213とを有する。中間層212は、畳み込み・プーリング層212aと、全結合層212bとを有する。入力層211には、画像が入力される。畳み込み・プーリング層212aは、入力層211に入力された入力画像に対して畳み込み処理とプーリング処理とを繰り返し行い、入力画像の特徴を保持したまま入力画像を縮小して出力する。全結合層212bは、畳み込み・プーリング層212aの出力を重み付き結合することで、入力画像の特徴を示す特徴量である画像特徴量を算出して出力する。出力層213は、全結合層212bの出力から画像クラスを算出して出力する。なお、図の例では、出力層213の活性化関数としてソフトマックス関数(softmax)が使用されている。
ハッシュ生成モデル202は、入力層221と、中間層222と、出力層223と、変換層224とを有する。入力層221には、画像特徴量抽出モデル201の中間層212(全結合層212b)から出力された画像特徴量が入力される。中間層222は、入力された画像特徴量を所定のデータ量に圧縮した圧縮特徴量に変換して出力する。出力層223は、中間層222の出力から画像クラスを算出して出力する。変換層224は、中間層222の出力を2値化してハッシュ値として出力する。
本実施形態では、中間層222は、画像特徴量を、互いにデータ量の異なる2つの圧縮特徴量に変換し、変換層224は、その2つの圧縮特徴量のそれぞれを2値化して互いに長さの異なる2つのハッシュ値(検索用ハッシュ値および類似度算出用ハッシュ値)を出力する。
なお、以下では、上記の算出モデルにて算出される類似度算出用ハッシュ値を、後述するハッシュアルゴリズムを用いて算出される類似度算出用ハッシュ値と区別するために、第1の類似度算出用ハッシュ値と呼ぶ。また、ハッシュアルゴリズムを用いて算出される類似度算出用ハッシュ値を第2の類似度算出用ハッシュ値と呼ぶ。
ハッシュインデックステーブルは、検索対象として登録された登録画像に関するハッシュ値を登録画像ごとに示す管理情報である。ハッシュ値は、本実施形態では、登録画像ごとに3つある。具体的には、ハッシュ値は、上述した検索用ハッシュ値および第1の類似度算出用ハッシュ値と、ハッシュ値を算出する所定のハッシュアルゴリズムを用いて算出される第3のハッシュ値である第2の類似度算出用ハッシュ値とを含む。第2の類似度算出用ハッシュ値は、検索用ハッシュ値よりも長いことが望ましい。また、第2の類似度算出用ハッシュ値の長さは、第1の類似度算出用ハッシュ値の長さと同じでもよいし、異なっていてもよい。ハッシュアルゴリズムは、例えば、平均ハッシュアルゴリズム(Average Hashing Algorithm)、差分ハッシュアルゴリズム(Difference Hashing Algorithm)、知覚ハッシュアルゴリズム(Perceptual Hash Algorithm)またはウェーブレットハッシュアルゴリズム(Wavelet Hashing Algorithm)などである。
図3は、ハッシュインデックステーブルの一例を示す図である。図3に示すハッシュインデックステーブル300は、画像ID301と、画像ID301にて特定される画像の位置情報である画像パス302と、画像ID301にて特定される画像に関するハッシュ値303とを有する。ハッシュ値303は、検索用ハッシュ値311と、第1の類似度算出用ハッシュ値である類似度算出用ハッシュ値312と、第2の類似度算出用ハッシュ値である類似度算出用ハッシュ値313とを有する。図の例では、検索用ハッシュ値311は64ビット、類似度算出用ハッシュ値312および類似度算出用ハッシュ値313は、256ビットである。
図1の説明に戻る。送受信部32は、ユーザ端末2と通信可能に接続し、ユーザ端末2との間でデータの送受信を行う。例えば、送受信部32は、ユーザ端末2からコマンドを受信する。
管理部33は、ユーザ端末2の動作を規定する画像検索アプリケーションをユーザ端末2に提供することで、ユーザ端末2に表示する情報や、ユーザ端末2が送信するコマンドなどを管理する。
処理部34は、算出モデルの生成、ハッシュインデックステーブルの生成、および、画像検索などを行う処理部である。
例えば、送受信部32が画像学習コマンドを受信した場合、処理部34は、画像学習コマンドに含まれる学習指定情報にて指定される学習対象画像を機械学習することにより、算出モデルを生成して格納部31に格納する。
また、送受信部32が画像追加コマンドを受信した場合、処理部34は、画像追加コマンドに含まれる追加指定情報にて指定される追加対象画像と、格納部31に格納された算出モデルと、ハッシュアルゴリズムとを用いて、追加対象画像に関する検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値を取得する。そして、追加対象画像の画像IDおよび位置情報を、算出した検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値と対応付けて格納部31に格納されたハッシュインデックステーブルに登録(追加)する。なお、ハッシュインデックステーブルにハッシュ値が登録されている画像が被検索対象である登録画像となる。
また、送受信部32が画像削除コマンドを受信した場合、処理部34は、画像削除コマンドに含まれる削除指定情報にて指定される削除対象画像に関するレコード(削除対象画像の画像IDを含むレコード)をハッシュインデックステーブルから削除する。
また、送受信部32が画像検索コマンドを受信した場合、処理部34は、画像検索コマンドに含まれる検索指定情報にて指定されるクエリ画像と、格納部31に格納された算出モデルと、ハッシュアルゴリズムとを用いて、クエリ画像に関する検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値を取得する。処理部34は、クエリ画像に関する検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値と、格納部31に格納されたハッシュインデックステーブルとに基づいて、クエリ画像に類似する類似画像を検索し、その検索結果をユーザ端末2に送信する。
次に動作を説明する。
図4は、画像検索サーバ3による算出モデルを生成するモデル生成処理の一例を説明するためのフローチャートである。
モデル生成処理では、先ず、送受信部32は、ユーザ端末2から画像学習コマンドを受信する(ステップS401)。処理部34は、画像学習コマンドに含まれる学習指定情報にて指定される学習対象画像を読み込む(ステップS402)。本実施形態では、学習指定情報は、ユーザデータベース1に格納されている複数の画像を学習対象画像として指定している。この場合、処理部34は、送受信部32を介してユーザデータベース1にアクセスし、ユーザデータベース1から学習対象画像を読み込む。
処理部34は、読み込んだ学習対象画像を機械学習して、画像特徴量抽出モデルを生成する(ステップS403)。例えば、処理部34は、CNNのモデル構造とCNNのパラメータとを用いてCNNを構成し、学習対象画像を機械学習することで、CNNのパラメータを調整(最適化)して画像特徴量抽出モデルを生成する。なお、CNNのモデル構造およびパラメータは、格納部31に予め格納されていてもよい。また、本実施形態では、学習対象画像がベクタ形式の画像の場合、処理部34は、学習対象画像をラスタ形式の画像に変換してから機械学習を行う。
処理部34は、学習対象画像とステップS403で生成した画像特徴量抽出モデルとに基づいて、ハッシュ生成モデル(図5参照)を生成する(ステップS404)。
処理部34は、生成した画像特徴量抽出モデルおよびハッシュ生成モデルを算出モデルとして格納部31に格納する(ステップS405)。このとき、処理部34は、学習対象画像に対応するハッシュインデックステーブルを生成して格納部31に格納してもよい。例えば、処理部34は、算出モデルに学習対象画像を入力して、学習対象画像に関する検索用ハッシュ値および第1の類似度算出用ハッシュ値を取得するとともに、ハッシュアルゴリズムを学習対象画像に適用して、学習対象画像に関する第2の類似度算出用ハッシュ値を取得する。そして、処理部34は、学習対象画像ごとに、学習対象画像の画像IDおよび画像パスを、取得した検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値と対応付けて、ハッシュインデックステーブルとして格納部31に格納する。
図5は、図4のステップS404におけるハッシュ生成モデルを生成する処理についてより詳細に説明するための図であり、ハッシュ生成モデルの要部のモデル構造を模式的に示している。
図5に示すハッシュ生成モデルの要部は、パーセプトロン層501〜507を有するMLP(Multilayer Perceptron:多層パーセプトロン)ネットワーク500で構成される。MLPネットワーク500では、パーセプトロン層501の出力がパーセプトロン層502〜504を含む第1のネットワーク511と、パーセプトロン層505〜507を含む第2のネットワーク512とに分岐される。また、図の例では、パーセプトロン層502および505の活性化関数としてレル関数(ReLU)が使用され、パーセプトロン層503および506の活性化関数としてシグモイド関数(Sigmoid)が使用され、パーセプトロン層504および507の活性化関数としてソフトマックス関数(Softmax)が使用されている。なお、パーセプトロン層501には活性化関数がない。
第1のネットワーク511および第2のネットワーク512は、例えば、SSDH(Semi-Supervised Deep Hashing)ネットワークである。第1のネットワーク511は、第1の類似度算出用ハッシュ値に対応する圧縮特徴量を算出するためのネットワークであり、第2のネットワーク512は、検索用ハッシュ値に対応する圧縮特徴量を算出するためのネットワークである。
処理部34は、学習対象画像ごとに、学習対象画像を画像特徴量抽出モデルに入力して得られる画像特徴量をMLPネットワーク500に入力し、第1のネットワーク511および第2のネットワーク512のそれぞれにおいて、互いに異なる複数の損失計算を行う。
図の例では、処理部34は、第1のネットワーク511において、パーセプトロン層503の出力に基づいて、画像特徴量をハッシュ値に変換することを目的とした、バイナリ化ロス関数(Forcing binary loss function)による損失計算および、ハッシュ値中の”0”および”1”の出現率を同程度にするための出現率調整ロス関数(50% fire rate loss function)による損失計算を実施する。またパーセプトロン層504の出力と学習対象画像を画像特徴量抽出モデルに入力して得られる画像クラスとに基づいて、クラスロス計算関数による画像クラスのクラス分類(Classification)の損失計算(例えば、Softmax Cross Entropy関数による損失計算)を行う。
また、処理部34は、第2のネットワーク512において、パーセプトロン層506の出力に基づいて、画像特徴量をハッシュ値に変換することを目的とした、バイナリ化ロス関数による損失計算および、ハッシュ値中の”0”および”1”の出現率を同程度にするための出現率調整ロス関数による損失計算を実施する。またパーセプトロン層507の出力と学習対象画像を画像特徴量抽出モデルに入力して得られる画像クラスとに基づいて、クラスロス計算関数による画像クラスのクラス分類の損失計算を行う。
処理部34は、各損失計算による損失の和が最小となるようにMLPネットワーク500のパラメータを調整(最適化)することで、ハッシュ生成モデルを生成する。
図6は、被検索対象である登録画像に画像を追加する画像追加処理の一例を説明するためのフローチャートである。
追加処理では、先ず、送受信部32は、ユーザ端末2から画像追加コマンドを受信する(ステップS601)。処理部34は、画像追加コマンドに含まれる追加指定情報にて指定される追加対象画像を読み込む(ステップS602)。本実施形態では、追加指定情報は、ユーザデータベース1に格納されている画像を追加対象画像として指定している。この場合、処理部34は、送受信部32を介してユーザデータベース1にアクセスし、ユーザデータベース1から追加対象画像を読み込む。
処理部34は、格納部31に格納された算出モデルを読み込み、その算出モデルに追加対象画像を入力して、追加対象画像に関する検索用ハッシュ値および第1の類似度算出用ハッシュ値を取得する(ステップS603)。
また、処理部34は、ハッシュアルゴリズムを追加対象画像に適用して、追加対象画像に関する第2の類似度算出用ハッシュ値を取得する(ステップS604)。
処理部34は、追加対象画像の画像IDおよび画像パスを取得し、その画像IDおよび画像バスと、取得した追加対象画像に関する検索用ハッシュ値、第1の類似度算出用ハッシュ値および第2の類似度算出用ハッシュ値とを対応付けて、格納部31のハッシュインデックステーブルに追加する(ステップS605)。
図7は、登録画像を削除する画像削除処理の一例を説明するためのフローチャートである。
削除処理では、先ず、送受信部32は、ユーザ端末2から画像削除コマンドを受信する(ステップS701)。処理部34は、画像削除コマンドに含まれる削除指定情報にて指定される削除対象画像に関するレコードを、格納部31のハッシュインデックステーブルから削除する(ステップS702)。
図8は、画像を検索する画像検索処理の一例を説明するためのフローチャートである。
画像検索処理では、先ず、送受信部32は、ユーザ端末2から画像検索コマンドを受信する(ステップS801)。処理部34は、画像検索コマンドに含まれる検索指定情報にて指定されるクエリ画像を読み込む(ステップS802)。本実施形態では、検索指定情報は、ユーザデータベース1に格納されている画像をクエリ画像として指定している。この場合、処理部34は、送受信部32を介してユーザデータベース1にアクセスし、ユーザデータベース1からクエリ画像を読み込む。
処理部34は、格納部31に格納された算出モデルを読み込み、その算出モデルにクエリ画像を入力して、クエリ画像に関する検索用ハッシュ値と第1の類似算出用ハッシュ値とを取得する(ステップS803)。
また、処理部34は、ハッシュアルゴリズムをクエリ画像に適用して、クエリ画像に関する第2の類似度算出用ハッシュ値を取得する(ステップS804)。
処理部34は、クエリ画像に関する検索用ハッシュ値と、格納部31に格納されているハッシュインデックステーブルに含まれる登録画像に関する検索用ハッシュ値とに基づいて、類似画像の候補である候補画像を検索する(ステップS805)。例えば、処理部34は、ハッシュインデックステーブルから、クエリ画像に関する検索用ハッシュ値と近似する、登録画像に関する検索用ハッシュ値である近似ハッシュ値を有する登録画像を候補画像として検索する。近似ハッシュ値は、クエリ画像に関する検索用ハッシュ値と異なるビット(桁)の数が所定数以下の、登録画像に関する検索用ハッシュ値である。所定数は、例えば、1または2である。
処理部34は、候補画像ごとに、クエリ画像に関する第1の類似度算出用ハッシュ値と候補画像に関する第1の類似度算出用ハッシュ値とに基づいて、クエリ画像と候補画像の第1の類似度を算出する(ステップS806)。第1の類似度は、例えば、クエリ画像に関する第1の類似度算出用ハッシュ値と候補画像に関する第1の類似度算出用ハッシュ値とのハミング距離である。
処理部34は、候補画像ごとに、クエリ画像に関する第2の類似度算出用ハッシュ値と候補画像に関する第2の類似度算出用ハッシュ値とに基づいて、クエリ画像と候補画像の第2の類似度を算出する(ステップS807)。第2の類似度は、例えば、クエリ画像に関する第2の類似度算出用ハッシュ値と候補画像に関する第2の類似度算出用ハッシュ値とのハミング距離である。
処理部34は、各候補画像について、第1の類似度および第2の類似度を組み合わせた組合せ類似度を算出する(ステップS808)。組合せ類似度は、例えば、第1の類似度を第1の数値範囲に正規化した値と、第2の類似度を第2の数値範囲に正規化した値との積である。第1の数値範囲と第2の数値範囲とは、互いに同じでもよいし、異なっていてもよい。本実施形態では、第1の数値範囲および第2の数値範囲は、共に0から1までの範囲である。
処理部34は、組合せ類似度に基づいて、候補画像の中から類似画像を選択し、その類似画像を示す情報を検索結果として、送受信部32を介してユーザ端末2に送信する(ステップS809)。このとき、処理部34は、例えば、組合せ類似度が高い方から所定個分の候補画像を類似画像として選択してもよいし、組合せ類似度が閾値以上の候補画像を類似画像として選択してもよい。
以上説明した各処理において、算出モデルに入力する画像がベクタ形式の場合、処理部34は、画像をラスタ形式に変換してから、算出モデルに入力する。また、同様に、ハッシュアルゴリズムを適用する画像がベクタ形式の場合、処理部34は、画像をラスタ形式に変換してからハッシュアルゴリズムを適用する。
以上説明したように本開示は以下の事項を含む。
本開示の一態様に係る画像検索装置(3)は、格納部(31)と、処理部(34)とを有する。格納部は、入力された画像から当該画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する算出モデル(200)と、算出モデルに複数の登録画像のそれぞれを入力して得られる各登録画像に関する第1のハッシュ値(311)および第2のハッシュ値(312)を登録画像ごとに示す管理情報(300)とを格納する。処理部は、クエリ画像を算出モデルに入力してクエリ画像に関する第1のハッシュ値および第2のハッシュ値を取得し、クエリ画像に関する第1のハッシュ値および第2のハッシュ値と管理情報とを用いて、複数の登録画像からクエリ画像に類似する類似画像を検索する。
上記構成によれば、クエリ画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を用いて、クエリ画像に類似する類似画像が検索される。このため、短いハッシュ値による高速な検索と、長いハッシュ値による高精度な検索とを両立させることが可能になるため、高精度かつ高速な類似画像の検索を行うことが可能になる。
また、第1のハッシュ値は、第2のハッシュ値よりも短い。処理部は、クエリ画像に関する第1のハッシュ値と登録画像に関する第1のハッシュ値とに基づいて、複数の登録画像から類似画像の候補を候補画像として検索し、クエリ画像に関する第2のハッシュ値と候補画像に関する第2のハッシュ値とに基づいて、候補画像から類似画像を選択する。この場合、短い第1のハッシュ値に基づいて複数の登録画像から候補画像が検索され、長い第2のハッシュ値に基づいて候補画像から類似画像が選択される。このため、短い第1のハッシュ値に基づいて候補画像を絞り込み、その中から長い第2のハッシュ値に基づいて類似画像を選択することが可能になるため、高精度かつ高速で類似画像を検索することが可能になる。
また、処理部は、複数の学習用画像を機械学習することにより、算出モデルを生成して格納部に格納する。この場合、第1のハッシュ値および第2のハッシュ値を画像に応じた適切な値にすることが可能になる。
また、算出モデルは、入力された画像から当該画像に関する特徴量を算出する第1のモデルと、特徴量から第1のハッシュ値および第2のハッシュ値を算出する第2のモデルとを含む。この場合、画像の特徴量から第1のハッシュ値および第2のハッシュ値が算出されるため、第1のハッシュ値および第2のハッシュ値を画像の特徴を示すより適切な値にすることが可能になる。
また、管理情報は、画像からハッシュ値を算出する所定のハッシュアルゴリズムに対して各登録画像を適用して算出した、各登録画像に関する第3のハッシュ値を登録画像ごとに示す。処理部は、ハッシュアルゴリズムにクエリ画像を適用して、クエリ画像に関する第3のハッシュ値を算出し、クエリ画像に関する第3のハッシュ値をさらに用いて、類似画像を検索する。この場合、算出モデルとは別に算出された第3のハッシュ値をさらに用いて、類似画像が検索されるため、より精度の高い検索が可能となる。
また、第1のハッシュ値は、第2のハッシュ値および前記第3のハッシュ値よりも短く、処理部は、クエリ画像に関する第1のハッシュ値と登録画像に関する第1のハッシュ値とに基づいて、複数の登録画像から類似画像の候補を候補画像として検索し、クエリ画像に関する第2のハッシュ値および第3のハッシュ値と候補画像に関する第2のハッシュ値および第3のハッシュ値とに基づいて、候補画像から類似画像を選択する。この場合、短い第1のハッシュ値に基づいて複数の登録画像から候補画像が検索され、長い第2のハッシュ値および第3のハッシュ値に基づいて候補画像から類似画像が選択されるため、より精度の高い検索を高速で行うことが可能になる。
上述した本開示の実施形態は、本開示の説明のための例示であり、本開示の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の範囲を逸脱することなしに、他の様々な態様で本発明を実施することができる。
例えば、ユーザデータベース1は、ユーザ端末2および画像検索サーバ3とは別に設けられていたが、ユーザ端末2に備わっていてもよいし、画像検索サーバ3に備わっていてもよい。また、画像検索サーバ3の機能の少なくとも一部がユーザ端末2に備わっていてもよい。
1:ユーザデータベース、2:ユーザ端末、3:画像検索サーバ、10:ネットワーク、31:格納部、32:送受信部、33:管理部、34:処理部、100:報処理システム

Claims (7)

  1. 入力された画像から当該画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する算出モデルと、前記算出モデルに複数の登録画像のそれぞれを入力して得られる各登録画像に関する第1のハッシュ値および第2のハッシュ値を前記登録画像ごとに示す管理情報とを格納する格納部と、
    クエリ画像を前記算出モデルに入力して前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値を取得し、前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値と前記管理情報とを用いて、前記複数の登録画像から前記クエリ画像に類似する類似画像を検索する処理部と、を有する画像検索装置。
  2. 前記第1のハッシュ値は、前記第2のハッシュ値よりも短く、
    前記処理部は、前記クエリ画像に関する第1のハッシュ値と前記登録画像に関する第1のハッシュ値とに基づいて、前記複数の登録画像から前記類似画像の候補を候補画像として検索し、前記クエリ画像に関する第2のハッシュ値と前記候補画像に関する第2のハッシュ値とに基づいて、前記候補画像から前記類似画像を選択する、請求項1に記載の画像検索装置。
  3. 前記処理部は、複数の学習用画像を機械学習することにより、前記算出モデルを生成して前記格納部に格納する、請求項1に記載の画像検索装置。
  4. 前記算出モデルは、入力された画像から当該画像に関する特徴量を算出する第1のモデルと、前記特徴量から前記第1のハッシュ値および前記第2のハッシュ値を算出する第2のモデルとを含む、請求項3に記載の画像検索装置。
  5. 前記管理情報は、画像からハッシュ値を算出する所定のハッシュアルゴリズムに対して各登録画像を適用して算出した、各登録画像に関する第3のハッシュ値を前記登録画像ごとに示し、
    前記処理部は、前記ハッシュアルゴリズムに前記クエリ画像を適用して、前記クエリ画像に関する第3のハッシュ値を算出し、前記クエリ画像に関する第3のハッシュ値をさらに用いて、前記類似画像を検索する、請求項3に記載の画像検索装置。
  6. 前記第1のハッシュ値は、前記第2のハッシュ値および前記第3のハッシュ値よりも短く、
    前記処理部は、前記クエリ画像に関する第1のハッシュ値と前記登録画像に関する第1のハッシュ値とに基づいて、前記複数の登録画像から前記類似画像の候補を候補画像として検索し、前記クエリ画像に関する第2のハッシュ値および第3のハッシュ値と前記候補画像に関する第2のハッシュ値および第3のハッシュ値とに基づいて、前記候補画像から前記類似画像を選択する、請求項5に記載の画像検索装置。
  7. 画像検索装置が行う画像検索方法であって、
    入力された画像から当該画像に関する互いに長さの異なる第1のハッシュ値および第2のハッシュ値を算出する算出モデルを格納し、
    前記算出モデルに複数の登録画像のそれぞれを入力して得られる各登録画像に関する第1のハッシュ値および第2のハッシュ値を前記登録画像ごとに示す管理情報を格納し、
    クエリ画像を前記算出モデルに入力して前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値を取得し、
    前記クエリ画像に関する第1のハッシュ値および第2のハッシュ値と前記管理情報とを用いて、前記複数の登録画像から前記クエリ画像に類似する類似画像を検索する、画像検索方法。
JP2019075522A 2019-04-11 2019-04-11 画像検索装置および画像検索方法 Active JP7118920B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019075522A JP7118920B2 (ja) 2019-04-11 2019-04-11 画像検索装置および画像検索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019075522A JP7118920B2 (ja) 2019-04-11 2019-04-11 画像検索装置および画像検索方法

Publications (2)

Publication Number Publication Date
JP2020173640A true JP2020173640A (ja) 2020-10-22
JP7118920B2 JP7118920B2 (ja) 2022-08-16

Family

ID=72831465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019075522A Active JP7118920B2 (ja) 2019-04-11 2019-04-11 画像検索装置および画像検索方法

Country Status (1)

Country Link
JP (1) JP7118920B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860933A (zh) * 2021-01-15 2021-05-28 韩山师范学院 密文图像检索方法、装置、终端设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013068884A (ja) * 2011-09-26 2013-04-18 Nippon Telegr & Teleph Corp <Ntt> ハッシュ関数生成方法、ハッシュ値演算方法、ハッシュ関数生成装置、ハッシュ値演算装置、ハッシュ関数生成プログラム及びハッシュ値演算プログラム
JP2015056077A (ja) * 2013-09-12 2015-03-23 Kddi株式会社 画像に基づくバイナリ特徴ベクトルを用いた画像検索装置、システム、プログラム及び方法
JP2019045894A (ja) * 2017-08-29 2019-03-22 富士通株式会社 検索プログラム、検索方法、及び、検索プログラムが動作する情報処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013068884A (ja) * 2011-09-26 2013-04-18 Nippon Telegr & Teleph Corp <Ntt> ハッシュ関数生成方法、ハッシュ値演算方法、ハッシュ関数生成装置、ハッシュ値演算装置、ハッシュ関数生成プログラム及びハッシュ値演算プログラム
JP2015056077A (ja) * 2013-09-12 2015-03-23 Kddi株式会社 画像に基づくバイナリ特徴ベクトルを用いた画像検索装置、システム、プログラム及び方法
JP2019045894A (ja) * 2017-08-29 2019-03-22 富士通株式会社 検索プログラム、検索方法、及び、検索プログラムが動作する情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860933A (zh) * 2021-01-15 2021-05-28 韩山师范学院 密文图像检索方法、装置、终端设备及存储介质

Also Published As

Publication number Publication date
JP7118920B2 (ja) 2022-08-16

Similar Documents

Publication Publication Date Title
US11593364B2 (en) Systems and methods for question-and-answer searching using a cache
WO2017012491A1 (zh) 一种图像高维特征的相似比较方法及装置
JP7304370B2 (ja) ビデオ検索方法、装置、デバイス及び媒体
CN108027816B (zh) 数据管理系统、数据管理方法及记录介质
CN101669117A (zh) 用形状描述符匹配图像
US11809494B2 (en) Information processing apparatus and information processing method
CN110442618B (zh) 融合专家信息关联关系的卷积神经网络评审专家推荐方法
WO2024099037A1 (zh) 数据处理、实体链接方法、装置和计算机设备
CN109408578A (zh) 一种针对异构环境监测数据融合方法
CN107145519B (zh) 一种基于超图的图像检索与标注方法
CN111581923A (zh) 文案生成方法、装置、设备和计算机可读存储介质
CN114782719B (zh) 一种特征提取模型的训练方法、对象检索方法以及装置
CN116703531B (zh) 物品数据处理方法、装置、计算机设备和存储介质
Liang et al. Cross-media semantic correlation learning based on deep hash network and semantic expansion for social network cross-media search
Xu et al. On learning semantic representations for large-scale abstract sketches
JP7118920B2 (ja) 画像検索装置および画像検索方法
TW202004525A (zh) 搜索方法、電子裝置及非暫時性電腦可讀記錄媒體
CN110413807A (zh) 一种基于内容语义元数据的图像查询方法与系统
KR102408256B1 (ko) 검색을 수행하는 방법 및 장치
KR101592670B1 (ko) 인덱스를 이용하는 데이터 검색 장치 및 이를 이용하는 방법
JP5772908B2 (ja) 情報処理装置、情報処理システム、その制御方法およびプログラム
CN114329016A (zh) 图片标签生成方法和文字配图方法
JP7208955B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、情報検索装置、情報検索方法、及び情報検索プログラム
WO2023225919A1 (zh) 一种视觉搜索方法及装置
CN114662480B (zh) 同义标签判断方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220616

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220803

R150 Certificate of patent or registration of utility model

Ref document number: 7118920

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150