【新規性喪失の例外の表示】特許法第30条第2項適用 令和1年7月30日グランキューブ大阪において開催された第22回画像の認識・理解シンポジウム(MIRU2019)で発表
(58)【調査した分野】(Int.Cl.,DB名)
類似する撮影対象が撮影された複数の画像であって当該撮影対象が含まれる領域の縦横比が類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて、前記検索対象画像から特徴量を算出する算出部
を有し、
前記検索部は、
前記モデルを用いて前記クエリ対象領域から特徴量を算出し、前記検索対象画像のうち、前記算出部が前記検索対象領域から算出した特徴量が前記クエリ対象領域から算出した特徴量と類似する画像を検索する
ことを特徴とする請求項1に記載の検索装置。
類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて前記検索対象領域から算出された特徴量と、当該検索対象領域の縦横比を示すベクトルとに応じた検索情報を算出する算出部
を有し、
前記検索部は、
前記検索対象画像のうち、前記モデルを用いて前記クエリ対象領域から算出された特徴量と当該クエリ対象領域の縦横比を示すベクトルとに応じたクエリ情報と前記検索情報が類似する画像を検索する
ことを特徴とする請求項1に記載の検索装置。
【発明を実施するための形態】
【0010】
以下に、本願に係る検索装置、検索方法及び検索プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ説明する。なお、この実施形態により本願に係る検索装置、検索方法及び検索プログラムが限定されるものではない。また、以下の実施形態において、同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
〔1.実施形態〕
本実施形態に係る検索処理の前提として、モデルを用いて画像の特徴量を算出する処理について、
図1を用いて説明する。
図1は、画像の特徴量を算出する処理の一例を示す図である。
【0012】
なお、
図1に示す処理に用いるモデル#1は、類似する撮影対象が撮影された画像が入力された場合に類似する特徴量を出力し、類似しない撮影対象が撮影された画像が入力された場合に類似しない特徴量を出力するように学習が行われているものとする。このように学習されたモデル#1の入力側には、同じサイズの画像しか入力することができない。このため、学習データである画像や、特徴量の算出対象となる画像は、モデル#1の入力側と対応するサイズに正規化され、正規化された画像を用いた学習や特徴量の算出が行われる。この結果、モデル#1は、画像の縦横比(アスペクト比)、ひいては、撮影対象の縦横比の情報が欠損した状態で撮影対象の特徴を学習してしまい、縦横比が異なる撮影対象から類似する特徴量を出力する恐れがある。
【0013】
例えば、
図1の例において、モデル#1が、ロングパンツを撮影対象とする画像P1−1の特徴量と、ショートパンツを撮影対象とする画像P2−1の特徴量とを算出するものとする。この場合、モデル#1は、モデル#1の入力側と対応するサイズに正規化された画像P1−2に基づいて、画像P1−1に対応する特徴量#1を算出する。また、モデル#1は、モデル#1の入力側と対応するサイズに正規化された画像P2−2に基づいて、画像P2−1に対応する特徴量#2を算出する。ここで、画像P1−1(ロングパンツ)の縦横比を示す縦横比情報#1と、画像P2−1(ショートパンツ)の縦横比を示す縦横比情報#2とが非類似であっても、例えば、画像P1−1と画像P2−1との色彩や形状が類似する場合、モデル#1が算出する特徴量#1及び#2は類似する可能性がある。
【0014】
以上のようなモデル#1が算出する特徴量の類似性を用いて、検索対象となる画像(以下、「検索対象画像」と記載する場合がある)から、検索クエリとして入力された画像(以下、「クエリ画像」と記載する場合がある)と類似する画像を検索する場合、色彩や形状の特徴が類似するものの、縦横比が異なる取引対象が撮影された画像を類似する画像として検索してしまうという問題点ある。したがって、画像を用いた検索の検索精度を向上させる技術が求められる。
【0015】
以上の前提及び問題点を踏まえ、以下、
図2を用いて、本願に係る検索装置等により実現される検索処理について説明する。
図2は、実施形態に係る検索処理の一例を示す図である。なお、
図2では、本願に係る検索装置の一例である情報提供装置10によって、実施形態に係る出力処理などが実現されるものとする。
【0016】
図2の説明に先立って、
図4を用いて、実施形態に係る情報提供システム1について説明する。
図4は、実施形態に係る情報提供システムの構成例を示す図である。
図4に示すように、実施形態に係る情報提供システム1は、情報提供装置10と、端末装置100とを含む。情報提供装置10及び端末装置100は、ネットワークNを介して有線または無線により相互に通信可能に接続される。ネットワークNは、例えば、インターネットなどのWAN(Wide Area Network)である。なお、
図4に示した情報提供システム1には、複数台の情報提供装置10及び複数台の端末装置100が含まれていてもよい。
【0017】
情報提供装置10は、端末装置100を利用する利用者に電子商店街に関するサービスを提供するサーバ装置である。なお、情報提供装置10は、電子商店街に関するアプリケーションのデータそのものを配信するサーバであってもよい。また、情報提供装置10は、端末装置100に制御情報を配信する配信装置として機能してもよい。ここで、制御情報は、例えば、JavaScript(登録商標)等のスクリプト言語やCSS(Cascading Style Sheets)等のスタイルシート言語により記述される。なお、情報提供装置10から配信される電子商店街に関するアプリケーションそのものを制御情報とみなしてもよい。
【0018】
また、情報提供装置10は、電子商店街に登録される画像であって、電子商店街における利用者の検索対象(取引対象)を撮影対象に含む画像である検索対象画像を管理する。また、情報提供装置10は、類似する取引対象が撮影された複数の検索対象画像について、取引対象が含まれる領域の縦横比を所定の縦横比に変換(正規化)した画像と、当該取引対象が含まれる領域の縦横比を示す情報とを入力した際に、類似する特徴量を出力(算出)するように学習が行われたモデル(以下、「算出モデル」と記載する場合がある)を管理する。
【0019】
なお、算出モデルには、DNN(Deep Neural Network)等のモデルを用いてもよい。ここで、DNNは、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)、LSTM(Long short-term memory)であってもよく、CNNや、RNN、LSTMの機能を組み合わせたものであってもよい。
【0020】
端末装置100は、利用者によって利用される情報処理装置である。端末装置100は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。なお、
図2に示す例において、端末装置100は、利用者によって利用されるスマートフォンやタブレット等のスマートデバイスである場合を示す。また、端末装置100は、液晶ディスプレイ等の出力部(以下、「画面」と記載する場合がある)を有し、タッチパネルが採用されているものとする。すなわち、利用者は、指や専用ペンで出力部の表示面をタッチすることにより端末装置100の各種操作を行う。また、端末装置100は、情報提供装置10によって提供される情報の表示処理を実現する制御情報を情報提供装置10から受け取った場合には、制御情報に従って表示処理を実現する。
【0021】
以下、
図1を用いて、情報提供装置10が行う検索処理について説明する。なお、以下の説明では、端末装置100が利用者Uにより利用される例を示す。また、以下の説明では、端末装置100を利用者Uと同一視する場合がある。すなわち、以下では、利用者Uを端末装置100と読み替えることもできる。
【0022】
まず、情報提供装置10は、電子商店街に登録された画像である検索対象画像のうち、取引対象が含まれる範囲を検索対象領域として特定する(ステップS1)。例えば、
図2の例において、情報提供装置10は、各種の画像認識技術を用いて、検索対象画像から検索対象領域を特定する。具体的な例を挙げると、情報提供装置10は、GIST(http://ilab.usc.edu/siagian/Research/Gist/Gist.html)、カラーヒストグラム、色分布などの広域特徴量やSIFT(Scale-Invariant Feature Transform)、SURF(Speed-Up Robust Features)、局所画像特徴量等、画像が有する特徴量を取得する任意の技術に基づき、検索対象領域を特定する。なお、情報提供装置10は、ニューラルネットワークで生成される特徴量も利用可能である。
【0023】
続いて、情報提供装置10は、検索対象領域を特定した検索対象画像のうち、いずれかの検索対象画像を端末装置100に提供する(ステップS2)。例えば、
図2の例において、情報提供装置10は、端末装置100に表示された電子商店街に関するサービスにおいて、利用者Uが入力した検索クエリに対応する検索対象画像を、端末装置100に提供する。具体的な例を挙げると、情報提供装置10は、利用者Uが入力した検索クエリに対応する検索対象画像であって、検索対象領域が強調して表示される検索対象画像を端末装置100に提供する。
【0024】
続いて、利用者Uは、いずれかの検索対象領域を選択する(ステップS3)。例えば、
図2の例において、端末装置100は、ステップS2において情報提供装置10から提供された検索対象画像を表示する。そして、端末装置100は、検索対象画像に含まれる検索対象領域のうちいずれかを選択する操作を利用者Uから受け付ける。
【0025】
続いて、端末装置100は、利用者Uが選択した検索対象領域をクエリ対象領域として情報提供装置10に通知する(ステップS4)。例えば、
図2の例において、情報提供装置10は、利用者Uが選択した検索対象領域をクエリ対象領域として特定する。
【0026】
続いて、情報提供装置10は、各検索対象画像に含まれる検索対象領域のうち、特徴量がクエリ対象領域の特徴量と縦横比とが類似する検索対象領域を検索する(ステップS5)。例えば、
図2の例において、情報提供装置10は、検索対象領域を正規化した画像と、当該検索対象領域の縦横比を示す情報とを算出モデルに入力することにより、各検索対象領域の特徴量を算出する。また、情報提供装置10は、クエリ対象領域を正規化した画像と、当該クエリ対象領域の縦横比を示す情報とを算出モデルに入力することにより、クエリ対象領域の特徴量を算出する。そして、情報提供装置10は、検索対象領域のうち、算出モデルを用いて算出した特徴量が、クエリ対象領域のものと類似する検索対象領域を検索する。具体的な例を挙げると、情報提供装置10は、算出モデルを用いて算出した特徴量をベクトルに変換し、検索対象領域のうち、クエリ対象領域に対応するベクトルとのベクトル空間上におけるユークリッド距離が所定の閾値以下であるベクトルに対応する検索対象領域を検索する。
【0027】
続いて、情報提供装置10は、検索した検索対象領域を強調した強調画像を生成する(ステップS6)。例えば、
図2の例において、情報提供装置10は、検索した検索対象領域を含む検索対象画像であって、当該検索対象領域を強調した検索対象画像を強調画像として生成する。続いて、情報提供装置10は、生成した強調画像を端末装置100に提供する(ステップS7)。ここで、本実施形態において情報提供装置10が端末装置100に提供する画面の具体例について、
図3を用いて説明する。
図3は、実施形態に係る情報提供装置が提供する画面の一例を示す図である。なお、以下の説明では、端末装置100の画面の状態遷移を、順に第1状態、第2状態と表記する。
【0028】
図3の第1状態は、
図2のステップS2において情報提供装置10から提供される検索対象画像を端末装置100が表示した状態を示す。第1状態において、端末装置100は、検索対象画像P10を表示すると共に、検索対象画像P10に含まれる検索対象領域を示す領域AR1−1〜AR1−5を強調表示する。ここで、第1状態において、利用者Uが領域AR1−4を選択したものとする。この場合、端末装置100は、領域AR1−4をクエリ対象領域として情報提供装置10に通知する。そして、情報提供装置10は、領域AR1−4の特徴量と縦横比とが類似する検索対象領域を検索し、当該検索対象領域を強調した強調画像を生成して端末装置100に提供する。
【0029】
図3の第2状態は、
図2のステップS7において情報提供装置10から提供される強調画像を端末装置100が表示した画面の状態を示す。ここで、
図3の例において、情報提供装置10は、領域AR1−4の特徴量と縦横比とが類似する検索対象領域として、検索対象領域AR2−1〜AR2−3を検索したものとする。この場合、情報提供装置10は、検索対象領域AR2−1〜AR2−3をそれぞれ含む検索対象画像であって、検索対象領域AR2−1〜AR2−3を強調した検索対象画像である強調画像P2−1〜P2−3を生成し、検索対象画像P10の表示態様の変更(領域AR1−4の強調表示)を指示する制御情報と共に端末装置100に提供する。そして、端末装置100は、検索対象画像P10の表示態様を変更すると共に、利用者Uが選択した領域AR1−4(検索クエリ)に対応する検索結果として、強調画像P2−1〜P2−3を画面に表示する。
【0030】
なお、
図2の例において、実施形態に係る情報提供装置10が、算出モデルを用いて検索処理を実行する例を示したが、検索処理に用いるモデルは上述したものに限定されない。例えば、情報提供装置10は、類似する取引対象が撮影された複数の画像について、取引対象が含まれる領域の縦横比を所定の縦横比に変換(正規化)した画像を入力した際に類似する特徴量を算出するよう学習した第1モデル、並びに、類似する取引対象が撮影された複数の画像について、当該取引対象が含まれる領域の縦横比を示す情報を入力した際に、類似する特徴量を算出するように学習が行われた第2モデルを用いて、検索処理を実行してもよい。
【0031】
具体例を挙げると、情報提供装置10は、第1モデルを用いて算出した、クエリ対象領域を正規化した画像の特徴量と、第2モデルを用いて算出した、クエリ対象領域の縦横比を示す特徴量とを結合したベクトル(若しくは、各特徴量を結合した特徴量)を出力する。また、情報提供装置10は、同様に、検索対象領域についても、第1モデル及び第2モデルを用いて算出した各特徴量を結合したベクトル(若しくは、各特徴量を結合した特徴量)を出力する。そして、情報提供装置10は、検索対象領域のうち、出力したベクトルがクエリ対象領域のものと類似する検索対象領域を検索する。
【0032】
また、情報提供装置10は、第1モデルと、画像の縦横比を示す情報とを用いて検索処理を実行してもよい。具体例を挙げると、情報提供装置10は、第1モデルを用いて算出した、クエリ対象領域を正規化した画像の特徴量と、クエリ対象領域の縦横比を示す特徴量(例えば、領域の横幅と縦幅とを合算した値で領域の横幅を除算した値や、領域の横幅と縦幅とを合算した値で領域の縦幅を除算した値など)とを結合したベクトルを出力する。また、情報提供装置10は、同様に、検索対象領域についても、第1モデルを用いて算出した特徴量と、クエリ対象領域の縦横比を示す特徴量とを結合したベクトルを出力する。そして、情報提供装置10は、検索対象領域のうち、出力したベクトルがクエリ対象領域のものと類似する検索対象領域を検索する。すなわち、情報提供装置10は、画像の特徴量と縦横比とに基づいたベクトルの類似性に基づいて、画像の類似性を判断してもよく、画像の特徴量に基づいたベクトルの類似性と、画像の縦横比との類似性とに基づいて、画像の類似性を判断してもよい。また、例えば、情報提供装置10は、画像の特徴量に基づいたベクトルと、画像の縦横比とをそれぞれ個別の情報として用いてもよく、画像の特徴量に基づいたベクトルに、画像の縦横比を示す情報(例えば、ベクトル等)を結合したベクトル同士の類似性に基づいて、画像の類似性を判断してもよい。
【0033】
以上のように、実施形態に係る情報提供装置10は、検索対象領域のうち、クエリ対象領域の特徴量と縦横比とが類似する検索対象領域を検索する。これにより、実施形態に係る情報提供装置10は、撮影対象の縦横比の情報を欠損させずに、検索対象画像からクエリ画像に類似する画像の検索を可能とするため、画像を用いた検索の検索精度を向上させることができる。
【0034】
〔2.情報提供装置の構成〕
次に、
図5を用いて、情報提供装置10の構成について説明する。
図5は、実施形態に係る情報提供装置の構成例を示す図である。
図5に示すように、情報提供装置10は、通信部20と、記憶部30と、制御部40とを有する。
【0035】
(通信部20について)
通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、端末装置100等との間で情報の送受信を行う。
【0036】
(記憶部30について)
記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
図5に示すように、記憶部30は、学習データベース31と、検索対象データベース32とを有する。
【0037】
(学習データベース31について)
学習データベース31は、画像の特徴量を算出するモデル(算出モデルや、第1モデル、第2モデル等)の学習に用いられる画像に関する情報を記憶する。ここで、
図6を用いて、学習データベース31が記憶する情報の一例を説明する。
図6は、実施形態に係る画像データベースの一例を示す図である。
図6の例では、学習データベース31は、「画像ID」、「画像情報」、「正規化画像情報」、「縦横比情報」、「類似情報」といった項目を有する。
【0038】
「画像ID」は、画像を識別するための識別情報を示す。「画像情報」は、モデルの学習に用いられる画像を示す。なお、
図6に示す例では、「画像情報」に「画像情報#11」といった概念的な情報が格納される例を示したが、実際には、画像(静止画像)や、画像の所在を示すURL(Uniform Resource Locator)、格納場所を示すファイルパス名などが格納される。
【0039】
「正規化画像情報」は、モデルの学習に用いられる画像を、モデルの入力側と対応するサイズに正規化した画像を示す。なお、
図6に示す例では、「正規化画像情報」に「正規化画像情報#11」といった概念的な情報が格納される例を示したが、実際には、正規化した画像(静止画像)や、正規化した画像の所在を示すURL(Uniform Resource Locator)、格納場所を示すファイルパス名などが格納される。
【0040】
「縦横比情報」は、モデルの学習に用いられる画像の縦横比を示す。「類似情報」は、モデルの学習に用いられる画像と類似する画像を示し、例えば、画像IDが格納される。
【0041】
すなわち、
図6では、画像ID「ID#1」によって識別され、画像情報「画像情報#1」である画像を正規化した画像が正規化画像情報「正規化画像#11」、縦横比情報が「縦横比情報#11」、類似情報が「類似情報#11」である例を示す。
【0042】
なお、学習データベース31は、例えば、情報提供装置10が画像の特徴量と縦横比とに基づいたベクトルの類似性に基づいて、画像の類似性を判断する場合は、正規化画像情報と縦横比情報とから出力したベクトルを記憶してもよい。また、学習データベース31は、例えば、画像の特徴量に基づいたベクトルの類似性と、画像の縦横比との類似性とに基づいて、画像の類似性を判断する場合は、画像の特徴量に基づいたベクトルと、画像の縦横比とをそれぞれ個別の情報として記憶してもよい。
【0043】
(検索対象データベース32について)
検索対象データベース32は、利用者の検索対象(例えば、電子商店街における取引対象)を撮影対象に含む画像である検索対象画像に関する情報を記憶する。ここで、
図7を用いて、検索対象データベース32が記憶する情報の一例を説明する。
図7は、実施形態に係る検索対象データベースの一例を示す図である。
図7の例では、検索対象データベース32は、「検索対象ID」、「検索対象画像情報」、「検索対象領域」、「縦横比情報」、「インデックス情報」といった項目を有する。
【0044】
「検索対象ID」は、検索対象画像を識別するための識別情報を示す。「検索対象画像情報」は、モデルの学習に用いられる画像を示す。なお、
図6に示す例では、「画像情報」に「画像情報#11」といった概念的な情報が格納される例を示したが、実際には、画像(静止画像)や、画像の所在を示すURL(Uniform Resource Locator)、格納場所を示すファイルパス名などが格納される。
【0045】
「検索対象領域」は、検索対象画像のうち、検索対象が含まれる範囲を示す。「縦横比情報」は、検索対象領域の縦横比を示す。「インデックス情報」は、検索対象領域の特徴量のインデックスを示し、例えば、検索対象領域の特徴量を示すベクトルに関する情報が格納される。
【0046】
すなわち、
図7では、検索対象ID「SID#1」によって識別され、検索対象画像情報「検索対象画像情報#21」である画像に検索対象領域「領域AR21−1」が含まれ、当該検索対象領域の縦横比情報が「縦横比情報#21−1」、インデックス情報が「インデックス情報#21−1」である例を示す。
【0047】
(制御部40について)
制御部40は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報提供装置10内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部40は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。実施形態に係る制御部40は、
図5に示すように、特定部41と、算出部42と、検索部43と、提供部44とを有し、以下に説明する情報処理の機能や作用を実現または実行する。
【0048】
(特定部41について)
特定部41は、クエリ画像のうち撮影対象が含まれるクエリ対象領域を特定する。例えば、
図2の例において、特定部41は、各種の画像認識技術を用いて、検索対象画像のうち、取引対象が含まれる範囲を検索対象領域として特定する。そして、検索対象領域のうち、利用者Uが選択した検索対象領域をクエリ対象領域として特定する。
【0049】
また、特定部41は、撮影対象の種別をさらに特定してもよい。例えば、特定部41は、クエリ対象領域に含まれる撮影対象の種別を特定する。具体的な例を挙げると、特定部41は、撮影対象の寸法(例えば、衣服の着丈や、肩幅、袖丈、裾丈など)に基づいて分類される撮影対象の種別(例えば、ショートパンツやロングパンツなど)を特定する。なお、特定部41が特定する撮影対象(取引対象)の種別は、電子商店街の管理者、若しくは、電子商店街に出店するストアの管理者により任意に設定されてもよい。
【0050】
また、特定部41は、撮影対象として電子商取引の対象となる取引対象が含まれる範囲をクエリ対象領域として特定してもよい。例えば、
図2の例において、特定部41は、電子商店街に登録された画像である検索対象画像のうち、取引対象が含まれる範囲を検索対象領域(クエリ対象領域)として特定する。
【0051】
(算出部42について)
算出部42は、類似する撮影対象が撮影された複数の画像であって当該撮影対象が含まれる領域の縦横比が類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて、検索対象画像から特徴量を算出する。例えば、
図2の例において、算出部42は、類似する取引対象が撮影された複数の画像について、当該取引対象が含まれる領域の縦横比を示す情報を入力した際に、類似する特徴量を算出するように学習が行われた第2モデルを用いて、検索対象領域から特徴量を算出する。
【0052】
また、算出部42は、類似する撮影対象が撮影された複数の画像について、撮影対象が含まれる領域の縦横比を所定の縦横比に変換した画像と、当該撮影対象が含まれる領域の縦横比を示す情報とを入力した際に、類似する特徴量を出力するように学習が行われたモデルを用いてもよい。例えば、
図2の例において、算出部42は、類似する取引対象が撮影された複数の検索対象画像について、取引対象が含まれる領域の縦横比を所定の縦横比に変換(正規化)した画像と、当該取引対象が含まれる領域の縦横比を示す情報とを入力した際に、類似する特徴量を算出するように学習が行われた算出モデルを用いて、検索対象領域から特徴量を算出する。
【0053】
また、算出部42は、検索対象領域の縦横比を所定の縦横比に変換した画像と、当該検索対象領域の縦横比を示す情報とをモデルに入力して、当該検索対象領域の特徴量を算出してもよい。例えば、
図2の例において、算出部42は、検索対象領域を正規化した画像と、当該検索対象領域の縦横比を示す情報とを算出モデルに入力することにより、各検索対象領域の特徴量を算出する。
【0054】
また、算出部42は、類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて検索対象領域から算出された特徴量と、当該検索対象領域の縦横比を示すベクトルとに応じた検索情報を算出してもよい。例えば、
図2の例において、算出部42は、類似する取引対象が撮影された複数の画像について、取引対象が含まれる領域の縦横比を所定の縦横比に変換(正規化)した画像を入力した際に類似する特徴量を算出するよう学習した第1モデルを用いて算出した検索対象領域の特徴量と、当該検索対象領域の縦横比を示すベクトルとに応じた検索情報を、検索対象領域ごとに算出する。具体的な例を挙げると、算出部42は、第1モデルを用いて算出した検索対象領域の特徴量を示すベクトルと、当該検索対象領域の縦横比を示すベクトルとを結合したベクトルを検索情報として算出する。なお、算出部42は、第1モデルを用いて算出した、検索対象領域を正規化した画像の特徴量と、第2モデルを用いて算出した、検索対象領域の縦横比を示す特徴量とを結合したベクトルを検索情報として算出してもよい。
【0055】
(検索部43について)
検索部43は、検索対象となる画像である検索対象画像のうち撮影対象が含まれる検索対象領域の特徴量とクエリ対象領域の特徴量との類似性、並びに、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似性に基づいて、クエリ画像と類似する検索対象画像を検索する。例えば、検索部43は、検索対象領域の特徴量とクエリ対象領域の特徴量との類似性、並びに、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似性を、各種の画像認識技術を用いて算出し、算出した類似性に基づいて、クエリ画像と類似する検索対象画像を検索する。
【0056】
また、検索部43は、モデルを用いてクエリ対象領域から特徴量を算出し、検索対象画像のうち、算出部42が検索対象領域から算出した特徴量がクエリ対象領域から算出した特徴量と類似する画像を検索してもよい。例えば、検索部43は、第2モデルを用いてクエリ対象領域から特徴量を算出し、算出部42が第2モデルを用いて検索対象領域から算出した特徴量が、クエリ対象領域から算出した特徴量と類似する画像を検索する。具体的な例を挙げると、検索部43は、検索対象領域の特徴量とクエリ対象領域の特徴量との類似性(例えば、各種の画像認識技術に基づく類似性)、並びに、検索対象領域の縦横比を示す特徴量とクエリ対象領域の縦横比を示す特徴量との類似性(第2モデルを用いて算出する特徴量に基づく類似性)に基づいて、クエリ対象領域と類似する検索対象領域を検索する。
【0057】
また、検索部43は、クエリ対象領域の縦横比を所定の縦横比に変換した画像と、当該クエリ対象領域の縦横比を示す情報とをモデルに入力して、当該クエリ対象領域の特徴量を算出してもよい。例えば、
図2の例において、検索部43は、クエリ対象領域を正規化した画像と、当該クエリ対象領域の縦横比を示す情報とを算出モデルに入力することにより、クエリ対象領域の特徴量を算出する。
【0058】
また、検索部43は、検索対象画像のうち、モデルを用いてクエリ対象領域から算出された特徴量と当該クエリ対象領域の縦横比を示すベクトルとに応じたクエリ情報と検索情報が類似する画像を検索してもよい。例えば、検索部43は、第1モデルを用いて算出したクエリ対象領域の特徴量を示すベクトルと、クエリ対象領域の縦横比を示すベクトルとを結合したベクトルを示すクエリ情報を算出し、検索対象領域のうち、算出部42が算出した検索情報がクエリ情報と類似する検索対象領域を検索する。なお、検索部43は、第1モデルを用いて算出した、クエリ対象領域を正規化した画像の特徴量と、第2モデルを用いて算出した、クエリ対象領域の縦横比を示す特徴量とを結合したベクトルをクエリ情報として算出してもよい。
【0059】
また、検索部43は、種別が予め定められた所定の種別である場合は、検索対象画像のうち、撮影対象が含まれる検索対象領域の特徴量がクエリ対象領域の特徴量と類似し、且つ、当該検索対象領域の縦横比がクエリ対象領域の縦横比と類似する画像を検索してもよい。例えば、クエリ対象領域に含まれる撮影対象の種別が予め設定された種別(例えば、縦横比が撮影対象の特徴を表す種別)と特定部41により特定された場合、検索部43は、検索対象画像のうち、検索対象領域の特徴量がクエリ対象領域の特徴量と類似し、且つ、当該検索対象領域の縦横比がクエリ対象領域の縦横比と類似する画像を検索する。
【0060】
また、検索部43は、種別が予め定められた所定の種別ではない場合は、検索対象画像のうち撮影対象が含まれる検索対象領域の縦横比が所定の値を有するものとして、当該検索対象領域の特徴量がクエリ対象領域の特徴量と類似し、且つ、当該検索対象領域の縦横比がクエリ対象領域の縦横比と類似する画像を検索してもよい。例えば、クエリ対象領域に含まれる撮影対象の種別として、予め設定された種別とは異なる種別(例えば、縦横比が撮影対象の特徴を表わさない種別)が特定部41により特定された場合、検索部43は、検索対象領域が、クエリ対象領域の縦横比と類似する縦横比を有するものとして、検索対象画像のうち、検索対象領域の特徴量がクエリ対象領域の特徴量と類似する画像を検索する。なお、上記所定の値は、電子商店街の管理者、若しくは、電子商店街に出店するストアの管理者により任意に設定されてもよい。
【0061】
また、検索部43は、検索対象領域の特徴量とクエリ対象領域の特徴量との類似度に基づく第1スコアと、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似度に、種別に応じた重みを適用した第2スコアとに基づいて、クエリ画像と類似する検索対象画像を検索してもよい。例えば、検索部43は、機械学習に関する種々の従来技術(例えば、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術)を用いて、他の種別に属する撮影対象と区別する場合における、撮影対象が含まれる領域の縦横比の重要度を、撮影対象の種別ごとに算出する。そして、検索部43は、第1スコアと、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似度に、特定された種別に対応する重要度に応じた重みを適用した第2スコアとに基づいて、クエリ画像と類似する検索対象画像を検索する。なお、検索部43は、ルールベースで撮影対象の種別に応じた重みを適用してもよい。
【0062】
また、検索部43は、クエリ対象領域に含まれる取引対象と類似する取引対象が含まれる検索対象領域を含む検索対象画像を、クエリ画像と類似する検索対象画像として検索してもよい。例えば、
図2の例において、検索部43は、利用者Uが選択した範囲に含まれる取引対象と類似する取引対象が含まれる検索対象領域を含む検索対象画像を、電子商店街に登録された画像から検索する。
【0063】
(提供部44について)
提供部44は、検索部43が検索した検索対象画像を提供する。例えば、
図2の例において、提供部44は、検索部43が検索した検索対象領域を含む検索対象画像であって、当該検索対象領域を強調した検索対象画像を強調画像として生成し、端末装置100に提供する。
【0064】
〔3.検索処理のフロー〕
ここで、
図8を用いて、実施形態に係る情報提供装置10の検索処理の手順について説明する。
図8は、実施形態に係る検索処理の手順の一例を示すフローチャートである。
【0065】
図8に示すように、情報提供装置10は、端末装置100からクエリ画像を受け付けたか否かを判定する(ステップS101)。ここで、クエリ画像を受け付けていない場合(ステップS101;No)、情報提供装置10は、クエリ画像を受け付けるまで待機する。一方、クエリ画像を受け付けた場合(ステップS101;Yes)、情報提供装置10は、撮影対象が含まれるクエリ対象領域を特定する(ステップS102)。
【0066】
続いて、情報提供装置10は、モデルを用いて検索対象画像から特徴量を算出する(ステップS103)。例えば、情報提供装置10は、検索対象領域を正規化した画像と、当該検索対象領域の縦横比を示す情報とを算出モデルに入力することにより、検索対象画像に含まれる各検索対象領域の特徴量を算出する。
【0067】
続いて、情報提供装置10は、特徴量がクエリ対象領域から算出した特徴量と類似する検索対象画像を検索する(ステップS104)。例えば、情報提供装置10は、クエリ対象領域を正規化した画像と、クエリ対象領域の縦横比を示す情報とを算出モデルに入力することにより、クエリ対象領域の特徴量を算出し、クエリ対象領域と特徴量が類似する検索対象領域を含む検索対象画像を検索する。続いて、情報提供装置10は、検索結果に応じた画像を端末装置100に配信(提供)し(ステップS105)、処理を終了する。
【0068】
〔4.変形例〕
上述の実施形態は一例を示したものであり、種々の変更及び応用が可能である。
【0069】
〔4−1.撮影対象について〕
上述の実施形態において、情報提供装置10による検索処理の対象となる画像が、鞄や衣服を撮影対象として含む例を示したが、撮影対象はこのような例に限定されず、情報提供装置10は縦横比によって他の物体と区別可能な物体であれば、任意の対象に対し検索処理を行ってもよい。例えば、情報提供装置10は、人の姿勢を対象として検索処理を行ってもよい。また、例えば、情報提供装置10の機能は、自動運転車両における周辺の人や物体の認識において用いられてもよい。
【0070】
〔4−2.利用者の設定に応じた検索処理について〕
上述の実施形態において、検索部43が、検索対象領域の特徴量とクエリ対象領域の特徴量との類似性、並びに、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似性に基づいて、クエリ画像と類似する検索対象画像を検索する例を示したが、検索部43の機能はこのような例に限定されない。例えば、検索部43は、電子商店街に関するサービスにおける利用者の設定に応じて、クエリ画像と類似する検索対象画像を検索してよい。具体例を挙げると、縦横比の類似性に基づく画像の検索を希望しない旨の設定を利用者が行った場合、検索部43は、検索対象領域の特徴量とクエリ対象領域の特徴量との類似性のみに基づいて、クエリ画像と類似する検索対象画像を検索する。また、縦横比の類似性を重視する旨の設定を利用者が行った場合、検索部43は、検索対象領域の縦横比とクエリ対象領域の縦横比との類似性に所定の重みを適用して、クエリ画像と類似する検索対象画像を検索する。
【0071】
〔5.効果〕
上述してきたように、実施形態に係る情報提供装置10は、特定部41と、算出部42と、検索部43と、提供部44とを有する。特定部41は、クエリ画像のうち撮影対象が含まれるクエリ対象領域を特定する。算出部42は、類似する撮影対象が撮影された複数の画像であって当該撮影対象が含まれる領域の縦横比が類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて、検索対象画像から特徴量を算出する。検索部43は、検索対象となる画像である検索対象画像のうち撮影対象が含まれる検索対象領域の特徴量とクエリ対象領域の特徴量との類似性、並びに、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似性に基づいて、クエリ画像と類似する検索対象画像を検索する。また、検索部43は、モデルを用いてクエリ対象領域から特徴量を算出し、検索対象画像のうち、算出部が検索対象領域から算出した特徴量がクエリ対象領域から算出した特徴量と類似する画像を検索する。提供部44は、検索部43が検索した検索対象画像を提供する。
【0072】
これにより、実施形態に係る情報提供装置10は、撮影対象の縦横比の情報を欠損させずに、検索対象画像からクエリ画像に類似する画像の検索を可能とするため、画像を用いた検索の検索精度を向上させることができる。
【0073】
また、実施形態に係る情報提供装置10において、例えば、算出部42は、類似する撮影対象が撮影された複数の画像について、撮影対象が含まれる領域の縦横比を所定の縦横比に変換した画像と、当該撮影対象が含まれる領域の縦横比を示す情報とを入力した際に、類似する特徴量を出力するように学習が行われたモデルを用いる。また、算出部42は、検索対象領域の縦横比を所定の縦横比に変換した画像と、当該検索対象領域の縦横比を示す情報とをモデルに入力して、当該検索対象領域の特徴量を算出する。そして、検索部43は、クエリ対象領域の縦横比を所定の縦横比に変換した画像と、当該クエリ対象領域の縦横比を示す情報とをモデルに入力して、当該クエリ対象領域の特徴量を算出する。
【0074】
これにより、実施形態に係る情報提供装置10は、撮影対象の縦横比の情報を欠損させずに、検索対象画像からクエリ画像に類似する画像の検索を可能とするため、画像を用いた検索の検索精度を向上させることができる。
【0075】
また、実施形態に係る情報提供装置10において、例えば、算出部42は、類似する画像が入力された場合に類似する特徴量を出力するように学習が行われたモデルを用いて検索対象領域から算出された特徴量と、当該検索対象領域の縦横比を示すベクトルとに応じた検索情報を算出する。そして、検索部43は、検索対象画像のうち、モデルを用いてクエリ対象領域から算出された特徴量と当該クエリ対象領域の縦横比を示すベクトルとに応じたクエリ情報と検索情報が類似する画像を検索する。
【0076】
これにより、実施形態に係る情報提供装置10は、撮影対象の縦横比の情報を欠損させずに、検索対象画像からクエリ画像に類似する画像の検索を可能とするため、画像を用いた検索の検索精度を向上させることができる。
【0077】
また、実施形態に係る情報提供装置10において、例えば、特定部41は、撮影対象の種別をさらに特定する。そして、検索部43は、種別が予め定められた所定の種別である場合は、検索対象画像のうち、撮影対象が含まれる検索対象領域の特徴量がクエリ対象領域の特徴量と類似し、且つ、当該検索対象領域の縦横比がクエリ対象領域の縦横比と類似する画像を検索する。また、検索部43は、種別が予め定められた所定の種別ではない場合は、検索対象画像のうち撮影対象が含まれる検索対象領域の縦横比が所定の値を有するものとして、当該検索対象領域の特徴量がクエリ対象領域の特徴量と類似し、且つ、当該検索対象領域の縦横比がクエリ対象領域の縦横比と類似する画像を検索する。また、特定部41は、撮影対象の種別をさらに特定する。そして、検索部43は、検索対象領域の特徴量とクエリ対象領域の特徴量との類似度に基づく第1スコアと、当該検索対象領域の縦横比とクエリ対象領域の縦横比との類似度に、種別に応じた重みを適用した第2スコアとに基づいて、クエリ画像と類似する検索対象画像を検索する。また、特定部41は、撮影対象として電子商取引の対象となる取引対象が含まれる範囲をクエリ対象領域として特定する。そして、検索部43は、クエリ対象領域に含まれる取引対象と類似する取引対象が含まれる検索対象領域を含む検索対象画像を、クエリ画像と類似する検索対象画像として検索する。
【0078】
これにより、実施形態に係る情報提供装置10は、撮影対象の縦横比の情報を欠損させずに、検索対象画像からクエリ画像に類似する画像の検索を可能とするため、画像を用いた検索の検索精度を向上させることができる。
【0079】
〔6.ハードウェア構成〕
また、上述してきた各実施形態に係る情報提供装置10は、例えば、
図9に示すような構成のコンピュータ1000によって実現される。以下、情報提供装置10を例に挙げて説明する。
図9は、情報提供装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、ROM1200、RAM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0080】
CPU1100は、ROM1200又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1200は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0081】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インターフェイス1500は、通信網500(実施形態のネットワークNに対応する)を介して他の機器からデータを受信してCPU1100へ送り、また、通信網500を介してCPU1100が生成したデータを他の機器へ送信する。
【0082】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、入出力インターフェイス1600を介して生成したデータを出力装置へ出力する。
【0083】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1300を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1300上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0084】
例えば、コンピュータ1000が情報提供装置10として機能する場合、コンピュータ1000のCPU1100は、RAM1300上にロードされたプログラムを実行することにより、制御部40の機能を実現する。また、HDD1400には、情報提供装置10の記憶装置内の各データが格納される。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
【0085】
〔7.その他〕
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0086】
また、上述した情報提供装置10は、機能によっては外部のプラットフォーム等をAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
【0087】
また、特許請求の範囲に記載した「部」は、「手段」や「回路」などに読み替えることができる。例えば、特定部は、特定手段や特定回路に読み替えることができる。