JP7211775B2 - Search program, server device, search method and search system - Google Patents
Search program, server device, search method and search system Download PDFInfo
- Publication number
- JP7211775B2 JP7211775B2 JP2018220243A JP2018220243A JP7211775B2 JP 7211775 B2 JP7211775 B2 JP 7211775B2 JP 2018220243 A JP2018220243 A JP 2018220243A JP 2018220243 A JP2018220243 A JP 2018220243A JP 7211775 B2 JP7211775 B2 JP 7211775B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- feature
- image
- product
- information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title description 30
- 239000013598 vector Substances 0.000 claims description 280
- 238000004364 calculation method Methods 0.000 claims description 41
- 238000012545 processing Methods 0.000 description 71
- 238000000605 extraction Methods 0.000 description 30
- 238000006243 chemical reaction Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 28
- 239000000284 extract Substances 0.000 description 15
- 238000001514 detection method Methods 0.000 description 13
- 230000015654 memory Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 235000019640 taste Nutrition 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、検索プログラム、サーバ装置、検索方法及び検索システムに関する。 The present invention relates to a search program, a server device, a search method, and a search system.
従来より、クエリ画像に類似する類似画像を検索するための種々の検索方法が提案されている(例えば、下記特許文献1、2等)。
Conventionally, various search methods have been proposed for searching for similar images similar to a query image (for example,
しかしながら、上記検索方法の場合、クエリ画像内に検索対象の物品と非検索対象の両方が含まれ、かつ、検索対象の物品の特徴量よりも、非検索対象の特徴量の方が類似度に与える影響が大きい場合に、適切な画像を検索することができない、という問題がある。 However, in the case of the above search method, both the search target article and the non-search target are included in the query image, and the feature amount of the non-search target is higher in similarity than the feature amount of the search target article. There is a problem that an appropriate image cannot be retrieved when the effect is large.
本発明は上記課題に鑑みてなされたものであり、クエリ画像を用いた画像検索において、検索対象に応じた検索結果を出力することを目的とする。 SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and an object of the present invention is to output search results according to a search target in image search using a query image.
本発明の一実施形態によれば、検索プログラムは、例えば、以下のような構成を有する。即ち、
クエリ画像を入力する入力工程と、
前記クエリ画像内に検索対象と非検索対象とが含まれていた場合に、前記クエリ画像の特徴量から前記非検索対象部分の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、複数の画像の中から、該検索対象に類似する物品を含み、かつ、該非検索対象を含まない画像を検索する検索工程とをコンピュータに実行させる。
According to one embodiment of the present invention, the search program has, for example, the following configuration. Namely
an input step of inputting a query image;
When the query image includes a search target and a non-search target , based on the feature quantity obtained by removing the feature quantity of the non-search target part from the feature quantity of the query image and the feature quantity of a plurality of images Then, the computer is caused to execute a search step of searching for an image that includes an article similar to the search target and does not include the non-search target from among the plurality of images.
本発明によれば、クエリ画像を用いた画像検索において、検索対象に応じた検索結果を出力することができる。 According to the present invention, it is possible to output search results according to a search target in image search using a query image.
以下、各実施形態の詳細について説明する。なお、各実施形態に係る明細書及び図面の記載に際して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。 The details of each embodiment will be described below. In describing the specifications and drawings according to each embodiment, constituent elements having substantially the same functional configuration are denoted by the same reference numerals, thereby omitting redundant description.
[第1の実施形態]
<1.検索システムのシステム構成>
はじめに、検索システムのシステム構成について説明する。図1は、検索システムのシステム構成の一例を示す図である。
[First embodiment]
<1. System configuration of search system>
First, the system configuration of the search system will be explained. FIG. 1 is a diagram showing an example of the system configuration of a search system.
図1に示すように、検索システム100は、サーバ装置110と、ユーザ180_1~180_nそれぞれが利用するユーザ端末170_1~170_nとを有する。なお、ユーザ端末170_1~170_nは、ネットワーク190を介してサーバ装置110と通信可能に接続される。
As shown in FIG. 1, the
サーバ装置110には、フリーマーケットサービスプログラムがインストールされており、当該プログラムが実行されることで、サーバ装置110は、フリーマーケットサービス部120として機能する。
A flea market service program is installed in the
フリーマーケットサービス部120は、ネットワーク190を介して接続されるユーザ端末170_1~170_nのユーザ180_1~180_nに対して、各種商品等を取引する場を提供するサービスを行う。
The flea
ここで、フリーマーケットサービスプログラムには、少なくとも、登録プログラムと検索プログラムとが含まれているものとする。そして、これらのプログラムが実行されることで、サーバ装置110は、商品情報登録部130と商品情報検索部140とを有するフリーマーケットサービス部120として機能する。
Here, it is assumed that the flea market service program includes at least a registration program and a search program. By executing these programs,
商品情報登録部130は、ユーザ180_1~180_nが商品を出品すべく、ユーザ端末170_1~170_nから商品情報を送信した場合に、当該商品情報を受信し、登録情報格納部150に格納する。なお、本実施形態では、登録情報格納部150に格納された複数の商品情報を、「登録情報」と総称する。
When the users 180_1 to 180_n send product information from the user terminals 170_1 to 170_n, the product
また、商品情報登録部130は、格納した各商品情報に含まれる商品画像から、「特徴ベクトル」(画像から抽出される特徴量の項目と特徴量の値との組)を抽出し、特徴ベクトル情報(商品)保存部151に保存する。
In addition, the product
更に、商品情報登録部130は、格納した各商品情報に含まれる商品画像のうち、特定の商品画像(例えば、商品以外に、商品を着用した人物が含まれる商品画像(「着用画像」))から特徴ベクトルを抽出し、特徴ベクトル情報(人物)保存部152に保存する。
Furthermore, the product
商品情報検索部140は、ユーザ端末170_1~170_nからクエリ画像を含む検索要求を受信した場合に、特徴ベクトル情報(人物)保存部152に保存された特徴ベクトルを用いて、クエリ画像に含まれる人物の特徴量の影響を抑制する処理を行う。そのうえで、商品情報検索部140は、クエリ画像に含まれる検索対象に類似する商品を含む商品画像を検索する。
When the product
具体的には、商品情報検索部140は、特徴ベクトル情報(商品)保存部151に保存された特徴ベクトルの中から、処理後のクエリ画像の特徴ベクトルに類似する特徴ベクトルを求めることで、クエリ画像内の検索対象に類似する商品を含む商品画像を検索する。
Specifically, the product
なお、商品情報検索部140では、検索した商品画像を含む検索結果を、検索要求の送信元のユーザ端末(ユーザ端末170_1~170_nのいずれか)に送信する。
The product
<サーバ装置のハードウェア構成>
次に、検索システム100に含まれるサーバ装置110のハードウェア構成について説明する。図2は、サーバ装置のハードウェア構成の一例を示す図である。
<Hardware Configuration of Server Device>
Next, the hardware configuration of the
図2に示すように、サーバ装置110は、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203を有する。また、サーバ装置110は、GPU(Graphics Processing Unit)204を有する。なお、CPU201、GPU204などのプロセッサ(処理回路、Processing Circuit、Processing Circuitry)と、ROM202、RAM203などのメモリは、いわゆるコンピュータを形成する。
As shown in FIG. 2 , the
更に、サーバ装置110は、補助記憶装置205、表示装置206、操作装置207、I/F(Interface)装置208、ドライブ装置209を有する。なお、サーバ装置110の各ハードウェアは、バス210を介して相互に接続される。また、図2に示す各ハードウェアは、一例に過ぎず、一部を変更して(例えば、GPU204を外して)サーバ装置110を構成してもよいことはいうまでもない。
Further, the
CPU201は、補助記憶装置205にインストールされた各種プログラム(例えば、フリーマーケットサービスプログラム等)を実行する演算デバイスである。
The
ROM202は、不揮発性メモリであり、主記憶装置として機能する。ROM202は、補助記憶装置205にインストールされた各種プログラムをCPU201が実行するために必要な各種プログラム、データ等を格納する。具体的には、ROM202はBIOS(Basic Input/Output System)やEFI(Extensible Firmware Interface)等のブートプログラム等を格納する。
A ROM 202 is a non-volatile memory and functions as a main memory. The ROM 202 stores various programs, data, etc. necessary for the
RAM203は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等の揮発性メモリであり、主記憶装置として機能する。RAM203は、補助記憶装置205にインストールされた各種プログラムがCPU201によって実行される際に展開される、作業領域を提供する。
A
GPU204は、画像処理用の演算デバイスであり、CPU201によりフリーマーケットサービスプログラムが実行される際に、各種画像データについて、並列処理による高速演算を行う。なお、GPU204は、内部メモリ(GPUメモリ)を搭載しており、各種画像データについて並列処理を行う際に必要な情報を一時的に保持する。
The GPU 204 is an arithmetic device for image processing, and when the
補助記憶装置205は、各種プログラムや、各種プログラムがCPU201によって実行される際に用いられる各種データ等を格納する。例えば、登録情報格納部150、特徴ベクトル情報(商品)保存部151、特徴ベクトル情報(人物)保存部152は、補助記憶装置205において実現される。
The
表示装置206は、サーバ装置110の内部状態を表示する表示デバイスである。操作装置207は、サーバ装置110の管理者がサーバ装置110に対して各種指示を入力する際に用いる入力デバイスである。I/F装置208は、ネットワーク190と接続し、ユーザ端末170_1~170_nと通信を行うための接続デバイスである。
The
ドライブ装置209は記録媒体220をセットするためのデバイスである。ここでいう記録媒体220には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体220には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
A
なお、補助記憶装置205にインストールされる各種プログラムは、例えば、配布された記録媒体220がドライブ装置209にセットされ、該記録媒体220に記録された各種プログラムがドライブ装置209により読み出されることでインストールされる。あるいは、補助記憶装置205にインストールされる各種プログラムは、ネットワーク190を介してダウンロードされることで、インストールされてもよい。
Various programs to be installed in the
<登録情報の具体例>
次に、登録情報格納部150内の登録情報の具体例について説明する。図3は、登録情報格納部内の登録情報の具体例を示す図である。
<Specific example of registration information>
Next, a specific example of registration information in the registration
図3に示すように、登録情報300は、複数の商品情報により構成される。具体的には、登録情報300には、情報の項目として、"商品ID"、"商品属性情報"、"商品画像"が含まれ、複数の商品情報それぞれが、当該情報の項目ごとにわけて登録情報格納部150に格納されることで、登録情報300が構成される。
As shown in FIG. 3, the
例えば、"商品ID"には、商品情報のうち、商品を識別するための識別子が格納される。"商品属性情報"には、商品情報のうち、商品の属性(例えば、商品のカテゴリ、商品のブランド、商品のタイトル等)を示す情報が格納される。"商品画像"には、商品情報のうち、商品画像が格納される。 For example, the "product ID" stores an identifier for identifying the product among the product information. "Product attribute information" stores information indicating product attributes (for example, product category, product brand, product title, etc.) among product information. "Product image" stores the product image of the product information.
なお、"商品画像"に格納される商品画像には、商品単体の画像の他、商品を着用した人物が含まれる商品画像(着用画像)等が含まれる。 The product images stored in the "product image" include not only the image of the product itself, but also the product image (wearing image) including the person wearing the product.
<特徴ベクトル情報(商品)の具体例>
次に、特徴ベクトル情報(商品)保存部151に保存される特徴ベクトル情報(商品)の具体例について説明する。特徴ベクトル情報(商品)保存部151では、商品画像から抽出された特徴ベクトルを、商品情報と対応付けて、特徴ベクトル情報(商品)として保存する。図4は、特徴ベクトル情報(商品)保存部に保存される特徴ベクトル情報(商品)の具体例を示す図である。
<Specific example of feature vector information (product)>
Next, a specific example of the feature vector information (product) stored in the feature vector information (product)
図4に示すように、特徴ベクトル情報(商品)400には、情報の項目として、商品情報についての情報の項目である"商品ID"、"商品属性情報"、"商品画像"に加え、"特徴ベクトル"が含まれる。"特徴ベクトル"には、"商品画像"に格納された商品画像から抽出された特徴ベクトルが格納される。 As shown in FIG. 4, the feature vector information (product) 400 includes, as information items, "product ID", "product attribute information", and "product image", which are information items related to product information. feature vector". "Feature vector" stores a feature vector extracted from the product image stored in "product image".
なお、上述したとおり、特徴ベクトルは、画像から抽出される特徴量の項目と特徴量の値との組であり、図4の例は、特徴量の項目として、"特徴1"~"特徴m"が抽出されたことを示している。また、図4の例は、特徴量の値を、棒グラフの長さとして示している。 As described above, a feature vector is a set of a feature amount item and a feature amount value extracted from an image. In the example of FIG. " is extracted. Also, in the example of FIG. 4, the value of the feature amount is shown as the length of the bar graph.
<特徴ベクトル情報(人物)の具体例>
次に、特徴ベクトル情報(人物)保存部152に保存される特徴ベクトル情報(人物)等の具体例について説明する。特徴ベクトル情報(人物)保存部152では、着用画像から抽出された特徴ベクトルを、商品情報と対応付けて、特徴ベクトル情報(人物)として保存するとともに、着用画像から抽出された特徴ベクトルに基づいて算出された代表ベクトルを保存する。
<Specific example of feature vector information (person)>
Next, a specific example of the feature vector information (person) stored in the feature vector information (person)
図5は、特徴ベクトル情報(人物)保存部に保存される特徴ベクトル情報(人物)及び代表ベクトルの具体例を示す図である。 FIG. 5 is a diagram showing a specific example of the feature vector information (person) and the representative vector stored in the feature vector information (person) storage unit.
図5に示すように、特徴ベクトル情報(人物)500には、情報の項目として、"商品ID"、"商品属性情報"、"着用画像"、"特徴ベクトル"が含まれる。特徴ベクトル情報(人物)500の場合、登録情報300を構成する各商品情報に含まれる商品画像の中から選択された着用画像が"着用画像"に格納され、対応する商品の識別子、商品の属性情報が、それぞれ、"商品ID"、"商品属性情報"に格納される。また、"特徴ベクトル"には、"着用画像"に格納された着用画像から抽出された特徴ベクトルが格納される。なお、図4と同様、図5の例は、特徴量の項目として、"特徴1"~"特徴m"が抽出されたことを示している。また、図5の例は、特徴量の値を、棒グラフの長さとして示している。
As shown in FIG. 5, the feature vector information (person) 500 includes "product ID", "product attribute information", "wearing image", and "feature vector" as information items. In the case of the feature vector information (person) 500, a wearing image selected from product images included in each product information constituting the
代表ベクトル510は、特徴ベクトル情報(人物)500の"特徴ベクトル"に格納された、各着用画像の特徴ベクトルに基づいて算出される。代表ベクトル510は、例えば、各着用画像の特徴ベクトルの平均値を算出することで求められる。あるいは、代表ベクトル510は、各着用画像の特徴ベクトルの中央値を算出することで求められる。あるいは、代表ベクトル510は、各着用画像の特徴ベクトルを整数化し、最頻値を算出することで求められる。
The
<商品情報登録部の機能構成>
次に、サーバ装置110のフリーマーケットサービス部120が有する商品情報登録部130の機能構成について説明する。図6は、商品情報登録部の機能構成の一例を示す図である。図6に示すように、商品情報登録部130は、商品情報取得部610、商品情報(着用画像)選択部620、画像特徴抽出部630、人物特徴演算部640、商品情報読み出し部650を有する。
<Functional configuration of the product information registration unit>
Next, the functional configuration of the product
商品情報取得部610は、ユーザ180_1~180_nが商品を出品すべく、ユーザ端末170_1~170_nから商品情報を送信した場合において、当該商品情報を受信するごとに、登録情報格納部150に格納する。これにより、登録情報格納部150内の登録情報300は、商品情報取得部610が商品情報を受信するごとに更新される。
When the user terminals 170_1 to 170_n send product information from the user terminals 170_1 to 170_n in order for the users 180_1 to 180_n to exhibit products, the product
商品情報(着用画像)選択部620は、登録情報格納部150内の登録情報300を構成する各商品情報のうち、着用画像を含む商品情報を選択して読み出し、画像特徴抽出部630に通知する。なお、商品情報(着用画像)選択部620は、例えば、着用画像を含む商品情報が、登録情報格納部150内に登録情報300として一定程度登録されたタイミングで、着用画像を含む商品画像を選択して読み出すものとする。
Product information (wearing image)
この場合、画像特徴抽出部630では、商品情報(着用画像)選択部620より通知された商品情報に含まれる着用画像から、特徴ベクトルを抽出し、商品情報と対応付けて人物特徴演算部640に通知する。
In this case, the image
人物特徴演算部640は、人物特徴演算部640より通知された各商品情報に対応付けられた特徴ベクトルに基づいて、代表ベクトル510を算出する。また、人物特徴演算部640は、着用画像から抽出された特徴ベクトルが対応付けられた商品情報を、特徴ベクトル情報(人物)500として、代表ベクトル510とともに特徴ベクトル情報(人物)保存部152に保存する。
Personal
商品情報読み出し部650は、登録情報格納部150内の登録情報300を読み出し、画像特徴抽出部630に通知する。
The product
この場合、画像特徴抽出部630では、商品情報読み出し部650より通知された登録情報300を構成する各商品情報に含まれる商品画像から、特徴ベクトルを抽出する。また、画像特徴抽出部630は、抽出した特徴ベクトルを商品情報と対応付けて、特徴ベクトル情報(商品)400として、特徴ベクトル情報(商品)保存部151に保存する。
In this case, the
<商品情報検索部の機能構成>
次に、サーバ装置110のフリーマーケットサービス部120が有する商品情報検索部140の機能構成について説明する。図7は、商品情報検索部の機能構成の一例を示す図である。図7に示すように、商品情報検索部140は、クエリ画像取得部710、検索対象物検出部720、画像特徴抽出部630、画像特徴変換部740、類似ベクトル演算部750、検索結果出力部760を有する。
<Functional configuration of the product information search unit>
Next, the functional configuration of the product
クエリ画像取得部710は入力部の一例であり、ユーザ端末170_1~170_nから検索要求を受信し、受信した検索要求に含まれるクエリ画像を取得する。
The query
検索対象物検出部720は、クエリ画像から、検索対象の商品を含む領域を検索対象領域として検出する。ただし、検索対象物検出部720の機能は必須ではなく、商品情報検索部140は、検索対象物検出部720を実行しなくてもよい。
The search target
画像特徴抽出部630は、検索対象物検出部720により検出された検索対象領域から特徴ベクトルを抽出し、画像特徴変換部740に通知する。
The image
画像特徴変換部740は、特徴ベクトル情報(人物)保存部152に格納された代表ベクトル510を読み出し、画像特徴抽出部630より通知された特徴ベクトルから、代表ベクトル510を減算することで、減算後の特徴ベクトルを算出する。具体的には、画像特徴変換部740は、特徴量の項目ごとに、特徴ベクトルの特徴量の値から代表ベクトル510の特徴量の値を減算することで、減算後の特徴ベクトルを算出する。これにより、減算後の特徴ベクトルは、人物の特徴量の影響が抑制された特徴ベクトルとなる。
The image
また、画像特徴変換部740は、減算後の特徴ベクトルに含まれる負値をゼロ化することで、減算後の特徴ベクトルを変換し、変換後の特徴ベクトルを算出する。具体的には、画像特徴変換部740は、各特徴量の項目のうち、減算により負値になった特徴量の項目について、特徴量の値をゼロ値に変換する(非負化する)。これにより、変換後の特徴ベクトルは、負値を含まない特徴ベクトルとなる。人物の特徴量の影響を抑制するために減算したにも関わらず、減算の結果、負値として人物の特徴量の影響が現れたのでは、人物の特徴量の影響を抑制したことにならないため、画像特徴変換部740では、ゼロ値に変換することで、人物の特徴量の影響を適切に抑制する。
Further, the image
類似ベクトル演算部750は検索部の一例であり、特徴ベクトル情報(商品)保存部151より、特徴ベクトル情報(商品)400を読み出し、画像特徴変換部740より通知された変換後の特徴ベクトルに類似する特徴ベクトルを検索する。また、類似ベクトル演算部750は、検索した特徴ベクトルを、検索結果出力部760に通知する。
The similarity
検索結果出力部760は、類似ベクトル演算部750より通知された特徴ベクトルが対応付けられた商品情報を、検索結果として、検索要求の送信元のユーザ端末(ユーザ端末170_1~170_nのいずれか)に送信する。
The search
<商品情報登録処理の流れ>
次に、検索システム100における商品情報登録処理の流れについて説明する。図8は、検索システムにおける商品情報登録処理の流れを示すシーケンス図である。
<Product information registration process flow>
Next, the flow of product information registration processing in the
ステップS801において、サーバ装置110の商品情報登録部130に含まれる画像特徴抽出部630は、特徴ベクトルを抽出するための学習モデル(特徴ベクトル算出用モデル。詳細は後述)を機械学習する際に用いる学習用画像を取得する。学習用画像には、例えば、登録情報格納部150内の登録情報300を構成する複数の商品情報の一部の商品情報に含まれる商品画像等が用いられる。なお、学習用画像に用いるのは、商品画像に限定されず、例えば、ネットワーク190上でダウンロード可能な任意の画像であってもよい。
In step S801, the image
ステップS802において、画像特徴抽出部630は、取得した学習用画像を用いて、特徴ベクトル算出用モデルを機械学習する。
In step S802, the image
ステップS810_1~S810_3において、ユーザ端末170_1~170_nは、ユーザ180_1~180_nより出品する商品についての商品情報の入力を受け付け、サーバ装置110に送信する。
In steps S810_1 to S810_3, the user terminals 170_1 to 170_n accept input of product information about products to be exhibited from the users 180_1 to 180_n, and transmit the input to the
ステップS811_1~S811_3において、サーバ装置110の商品情報登録部130に含まれる商品情報取得部610は、受信した商品情報(ユーザ180_1~180_nが出品する商品についての商品情報)を、順次、登録情報格納部150に格納する。これにより、登録情報格納部150内に登録情報300が構成される。
In steps S811_1 to S811_3, the product
ステップS820において、サーバ装置110の商品情報登録部130に含まれる商品情報(着用画像)選択部620、画像特徴抽出部630、人物特徴演算部640は、特徴ベクトル情報(人物)及び代表ベクトル生成処理を実行する。これにより、特徴ベクトル情報(人物)保存部152には、特徴ベクトル情報(人物)500及び代表ベクトル510が格納される。
In step S820, product information (wearing image)
ステップS830_1において、商品情報読み出し部650、画像特徴抽出部630は、特徴ベクトル情報(商品)生成処理を実行する。これにより、特徴ベクトル情報(商品)保存部151には、特徴ベクトル情報(商品)400が格納される。
In step S830_1, the product
ステップS810_4~S810_6において、ユーザ端末170_1~170_nは、ユーザ180_1~180_nより商品情報の入力を受け付け、サーバ装置110に送信する。
In steps S810_4 to S810_6, the user terminals 170_1 to 170_n accept input of product information from the users 180_1 to 180_n and transmit it to the
ステップS811_4~S811_6において、サーバ装置110の商品情報登録部130に含まれる商品情報取得部610は、受信した商品情報を、順次、登録情報格納部150に格納する。これにより、登録情報格納部150内の登録情報300が更新される。
In steps S811_4 to S811_6, the product
ステップS830_2において、商品情報読み出し部650、画像特徴抽出部630は、特徴ベクトル情報(商品)生成処理を実行する。これにより、特徴ベクトル情報(商品)保存部151の特徴ベクトル情報(商品)400が更新される。以降、ステップS810_7~S810_9、ステップS811_7~S811_9においても同様の処理が繰り返される。
In step S830_2, the product
このように、検索システム100では、はじめに特徴ベクトル情報(人物)及び代表ベクトル生成処理(ステップS820)を1回実行して、代表ベクトル510を生成する。以降、検索システム100では、登録情報300が複数回更新されるごとに(あるいは所定時間が経過するごとに)、特徴ベクトル情報(商品)生成処理を実行し、特徴ベクトル情報(商品)400を更新する。
In this way, the
<商品情報検索処理の流れ>
次に、検索システム100における商品情報検索処理の流れについて説明する。図9は、検索システムにおける商品情報検索処理の流れを示すシーケンス図である。
<Product information search process flow>
Next, the flow of product information search processing in the
ステップS900_1において、ユーザ端末170_1~170_nは、ユーザ180_1~180_nより検索要求を受け付け、サーバ装置110に送信する。
In step S900_1, the user terminals 170_1-170_n receive search requests from the users 180_1-180_n and transmit them to the
ステップS910_1において、サーバ装置110の商品情報検索部140は、商品情報検索処理を実行し、検索要求の送信元のユーザ端末(ユーザ端末170_1~170_nのいずれか)に、検索結果を送信する。
In step S910_1, the product
ステップS901_1において、ユーザ端末170_1~170_nは、検索結果を受信して表示する。以降、検索システム100では、ユーザ端末170_1~170_nが検索要求を受け付けるごとに、サーバ装置110が商品情報検索処理を実行し、ユーザ端末170_1~170_nに検索結果を表示する。
In step S901_1, the user terminals 170_1-170_n receive and display the search results. Thereafter, in the
なお、図9に示す商品情報検索処理は、図8に示す商品情報登録処理のステップS810_1以降の処理と、並行して実行されるものとする。 Note that the product information search processing shown in FIG. 9 is executed in parallel with the processing after step S810_1 of the product information registration processing shown in FIG.
<商品情報登録処理の各工程の詳細>
次に、図8に示す商品情報登録処理に含まれる各工程(ここでは、特徴ベクトル算出用モデルの学習処理、特徴ベクトル情報(人物)及び代表ベクトル生成処理、特徴ベクトル情報(商品)生成処理)の詳細について説明する。
<Details of each step of the product information registration process>
Next, each process included in the product information registration process shown in FIG. 8 (here, feature vector calculation model learning process, feature vector information (person) and representative vector generation process, feature vector information (product) generation process) will be described in detail.
(1)特徴ベクトル算出用モデルの学習処理(ステップS802)の詳細
はじめに、特徴ベクトル算出用モデルの学習処理(ステップS802)の詳細について説明する。図10は、特徴ベクトル算出用モデルの学習処理を説明するための図である。画像特徴抽出部630では、学習用画像を読み出すと、特徴ベクトル算出用モデル1000に入力する。なお、学習用画像として一部の商品画像に含まれる商品画像を用いる場合にあっては、画像特徴抽出部630は、学習処理前に登録情報格納部150より当該商品情報を学習用画像として読み出し、特徴ベクトル算出用モデル1000に入力する。
(1) Details of Feature Vector Calculation Model Learning Processing (Step S802) First, details of the feature vector calculation model learning processing (Step S802) will be described. FIG. 10 is a diagram for explaining the learning process of the feature vector calculation model. The image
学習用画像には、予め、対応するカテゴリ、ブランド、模様等の商品属性情報が対応付けられており、特徴ベクトル算出用モデル1000は、学習用画像が入力されると、対応する商品属性情報が出力されるように、モデルパラメータの機械学習を行う。なお、特徴ベクトル算出用モデル1000は、ニューラルネットワーク(例えば、畳み込みニューラルネットワーク)等により構成されているものとする。
Product attribute information such as a corresponding category, brand, pattern, etc., is associated in advance with the learning image. Perform machine learning of the model parameters so that they are output. Note that the feature
これにより、画像特徴抽出部630では、特徴ベクトル算出用モデル1000について学習済みモデルを生成する。画像特徴抽出部630では、特徴ベクトル算出用モデル1000についての学習済みモデルを用いて、特徴ベクトルを抽出する。
As a result, the image
(2)特徴ベクトル情報(人物)及び代表ベクトル生成処理(ステップS820)の詳細
次に、特徴ベクトル情報(人物)及び代表ベクトル生成処理(ステップS820)の詳細について説明する。図11は、特徴ベクトル情報(人物)及び代表ベクトル生成処理の流れを示すフローチャートである。
(2) Details of Feature Vector Information (Person) and Representative Vector Generation Processing (Step S820) Next, details of the feature vector information (person) and representative vector generation processing (Step S820) will be described. FIG. 11 is a flowchart showing the flow of feature vector information (person) and representative vector generation processing.
図11に示すように、ステップS1101において、商品情報(着用画像)選択部620は、登録情報格納部150内の登録情報300を構成する商品情報のうち、着用画像を含む商品情報を選択して読み出し、着用画像を取得する。
As shown in FIG. 11, in step S1101, the product information (wearing image)
ステップS1102において、画像特徴抽出部630は、特徴ベクトル算出用モデル1000についての学習済みモデルを用いて、特徴ベクトルを抽出する。図12は、特徴ベクトル情報(人物)及び代表ベクトル生成処理の処理内容を説明するための第1の図である。
In step S1102, the image
図12に示すように、画像特徴抽出部630は、着用画像を、順次、学習済みモデル1200(特徴ベクトル算出用モデル1000についての学習済みモデルの第k層までを実行可能にした学習済みモデル)に入力する。これにより、画像特徴抽出部630では、順次、第k層より、特徴ベクトルを抽出する。学習済みモデルの中間層である第k層では、人間が認識しやすい特徴量が算出されるため、第k層を可視化し、特徴ベクトルを算出することで、人間が認識しやすい特徴ベクトルを抽出することができるからである。なお、第k層より抽出される特徴ベクトルは、各特徴量の値が非負値となるように構成されているものとする。特徴ベクトル間で演算を行う際、特徴量の値として負値が含まれていると、負値で減算するケースが生じることとなり、そのような場合、特徴量の値が正値側に振れることになるからである。つまり、減算したにも関わらず、人物の特徴量の影響が抑制されないといった事態を回避するためである。
As shown in FIG. 12 , the image
ステップS1103において、人物特徴演算部640は、代表ベクトル510を算出する。人物特徴演算部640は、例えば、各着用画像から抽出された各特徴ベクトルの平均値を算出することで、代表ベクトル510を算出する(図12参照)。なお、代表ベクトル510の算出方法は、これに限定されず、例えば、各着用画像の特徴ベクトルから、商品画像の特徴ベクトルを減算して、負値を非負化した後、平均値を算出することで、代表ベクトル510を算出してもよい。かかる算出方法によれば、着用画像の特徴ベクトルからそのまま代表ベクトルを算出する場合と比較して、商品画像を減算しすぎないというメリットがある。
In step S<b>1103 , the person
ステップS1104において、人物特徴演算部640は、読み出された商品情報に、抽出した特徴ベクトルを対応付けることで、特徴ベクトル情報(人物)500を生成し、特徴ベクトル情報(人物)保存部152に保存する。また、人物特徴演算部640は、算出した代表ベクトルを、特徴ベクトル情報(人物)保存部152に保存する。
In step S<b>1104 , the person
(3)特徴ベクトル情報(商品)生成処理(ステップS830_1等)の詳細
次に、特徴ベクトル情報(商品)生成処理(ステップS830_1等)の詳細について説明する。図13は、特徴ベクトル情報(商品)生成処理の流れを示すフローチャートである。
(3) Details of Feature Vector Information (Product) Generation Processing (Step S830_1, etc.) Next, details of the feature vector information (product) generation processing (Step S830_1, etc.) will be described. FIG. 13 is a flowchart showing the flow of feature vector information (product) generation processing.
図13に示すように、ステップS1301において、商品情報読み出し部650は、登録情報格納部150内の登録情報300を読み出し、各商品情報に含まれる商品画像を取得する。
As shown in FIG. 13, in step S1301, the product
ステップS1302において、画像特徴抽出部630は、学習済みモデル1200を用いて、商品画像から特徴ベクトルを抽出する。図14は、特徴ベクトル情報(商品)生成処理の処理内容を説明するための図である。
In step S1302, the image
図14に示すように、画像特徴抽出部630は、商品画像を、順次、学習済みモデル1200(特徴ベクトル算出用モデル1000についての学習済みモデルの第k層までを実行可能にした学習済みモデル)に入力する。これにより、画像特徴抽出部630では、順次、第k層より、特徴ベクトル1410_1~1410_pを抽出する。なお、上述したとおり、第k層より抽出される特徴ベクトル1410_1~1410_pは、各特徴量の値が非負値となるように構成されている。
As shown in FIG. 14, the image
ステップS1303において、画像特徴抽出部630は、読み出された商品情報に、抽出した特徴ベクトルを対応付けることで、特徴ベクトル情報(商品)400を生成し、特徴ベクトル情報(商品)保存部151に保存する。
In step S<b>1303 , the image
<商品情報検索処理の詳細>
次に、商品情報検索処理(ステップS910_1等)の詳細について説明する。図15は、商品情報検索処理の流れを示すフローチャートである。図15に示すように、ステップS1501において、クエリ画像取得部710は、ユーザ端末170_1~170_nから検索要求を受信し、受信した検索要求に含まれるクエリ画像を取得する。
<Details of product information search processing>
Next, details of the product information search processing (step S910_1, etc.) will be described. FIG. 15 is a flow chart showing the flow of product information search processing. As shown in FIG. 15, in step S1501, the query
ステップS1502において、検索対象物検出部720は、取得されたクエリ画像から、検索対象の商品を含む領域を検索対象領域として検出する。
In step S<b>1502 , the search target
ステップS1503において、画像特徴抽出部630は、取得されたクエリ画像の検索対象領域から特徴ベクトルを抽出する。図16は、商品情報検索処理の処理内容を説明するための図である。図16に示すように、画像特徴抽出部630は、クエリ画像から検出した検索対象領域を、学習済みモデル1200(特徴ベクトル算出用モデル1000についての学習済みモデルの第k層までを実行可能にした学習済みモデル)に入力する。これにより、画像特徴抽出部630では、第k層より、検索対象領域の特徴ベクトル1600を抽出する。なお、上述したとおり、第k層より抽出される特徴ベクトル1600は、各特徴量の値が非負値となるように構成されている。
In step S1503, the image
ステップS1504において、画像特徴変換部740は、特徴ベクトル情報(人物)保存部152に格納された代表ベクトル510を読み出し、ステップS1503において抽出された検索対象領域の特徴ベクトル1600から、代表ベクトル510を減算する。これにより、画像特徴変換部740は、減算後の特徴ベクトルを算出する。
In step S1504, the image
ステップS1505において、画像特徴変換部740は、減算後の特徴ベクトルについて、負値の特徴量をゼロ値に変換する(非負化する)。これにより、画像特徴変換部740は、変換後の特徴ベクトルを算出する。
In step S1505, the image
ステップS1506において、類似ベクトル演算部750は、特徴ベクトル情報(商品)保存部151より、特徴ベクトル情報(商品)400を読み出し、変換後の特徴ベクトルに類似する特徴ベクトルを検索する。
In step S1506, the similarity
ステップS1507において、検索結果出力部760は、類似ベクトル演算部750により検索された特徴ベクトルが対応付けられた商品情報を、特徴ベクトル情報(商品)400において特定する。また、検索結果出力部760は、特定した商品情報を、検索結果として、検索要求の送信元のユーザ端末(ユーザ端末170_1~170_nのいずれか)に送信する。
In step S<b>1507 , the search
<商品情報検索処理の具体例>
次に、商品情報検索処理の具体例について説明する。図17は、商品情報検索処理の具体例を示す図である。図17に示す各特徴ベクトルは、横軸が特徴量の項目であり、縦軸が特徴量の値を示している。
<Specific example of product information search processing>
Next, a specific example of product information search processing will be described. FIG. 17 is a diagram showing a specific example of product information search processing. In each feature vector shown in FIG. 17, the horizontal axis indicates the item of the feature amount, and the vertical axis indicates the value of the feature amount.
画像特徴変換部740では、検索対象領域の特徴ベクトル1600から、代表ベクトル510を減算することで、減算後の特徴ベクトル1701を算出する。これにより、減算後の特徴ベクトル1701は、検索対象の特徴量が非検索対象の特徴量よりも重み付けされたことになる(クエリ画像に含まれる人物の特徴量の影響を抑制することができる)。
The image
ここで、画像特徴変換部740では、特徴量の項目ごとに、特徴量の値を減算するため、特徴量の項目によっては、減算後の特徴量の値が、負値になる場合がある(点線領域1702参照)。
Here, in the image
画像特徴変換部740では、減算後の特徴ベクトル1701のうち、特徴量の値が負値となった項目について、特徴量の値をゼロに変換する(点線領域1704参照)。これにより、画像特徴変換部740では、変換後の特徴ベクトル1703を算出する。
The image
類似ベクトル演算部750では、特徴ベクトル情報(商品)保存部151より読み出した各商品情報に含まれる商品画像の特徴ベクトル1410_1~1410_pの中から、変換後の特徴ベクトル1703との類似度が高い商品画像の特徴ベクトルを検索する。
The similarity
なお、類似ベクトル演算部750では、類似度が所定の閾値以上の複数の商品画像の特徴ベクトルを検索してもよいし、類似度が最も高い商品画像の特徴ベクトルを検索してもよい。図17の例は、紙面の都合上、類似度が最も高い商品画像の特徴ベクトル1410_iを検索した様子を示している。
Note that the similarity
検索結果出力部760は、商品画像の特徴ベクトル1410_iが対応付けられた商品情報1710を、特徴ベクトル情報(商品)保存部151より読み出す。また、検索結果出力部760は、読み出した商品情報1710を、検索結果として、検索要求の送信元のユーザ端末(ユーザ端末170_1~170_nのいずれか)に送信する。
The search
<商品情報検索処理の検索結果の具体例>
次に、ユーザ端末170_1~170_nの検索画面に表示される検索結果の具体例について説明する。図18は、ユーザ端末の検索画面に表示される検索結果の一例を示す第1の図である。
<Specific example of search result of product information search process>
Next, specific examples of search results displayed on the search screens of the user terminals 170_1 to 170_n will be described. FIG. 18 is a first diagram showing an example of search results displayed on the search screen of the user terminal.
図18に示すように、検索画面1800には、クエリ画像を読み込むための"クエリ画像読み込み"ボタン1811と、読み込んだクエリ画像を表示するクエリ画像表示欄1801とが含まれる。また、検索画面1800には、クエリ画像を含む検索要求を送信するための"検索要求"ボタン1812と、検索要求の送信に応じてサーバ装置110から送信された検索結果を表示する検索結果表示欄1821とが含まれる。
As shown in FIG. 18, the
図18(a)は、サーバ装置110にて、商品情報検索部140による商品情報検索処理(図15参照)が実行された場合の検索結果(ここでは、15個の商品画像)が表示された様子を示している。
FIG. 18(a) shows the search result (here, 15 product images) when the product information search process (see FIG. 15) is executed by the product
図18(a)に示すように、商品情報検索部140による商品情報検索処理によれば、クエリ画像内に、衣服と該衣服を着た人物とが含まれていた場合でも、当該衣服に類似する衣服を含み、かつ、人物を含まない商品画像を検索することができる。
As shown in FIG. 18A, according to the product information search processing by the product
一方、図18(b)は、比較例として、一般的な商品情報検索処理が実行された場合の検索結果が表示された様子を示している。 On the other hand, FIG. 18B shows, as a comparative example, how search results are displayed when general product information search processing is executed.
図18(b)に示すように、一般的な商品情報検索処理によれば、クエリ画像内に、衣服と該衣服を着た人物とが含まれていた場合、人物を含む商品画像が検索されることになる。 As shown in FIG. 18B, according to general product information retrieval processing, when a query image includes clothes and a person wearing the clothes, product images including the person are retrieved. will be
つまり、一般的な商品情報検索処理の場合、クエリ画像内に含まれる非検索対象に類似する商品画像が検索される。 That is, in general product information search processing, product images similar to non-search targets included in the query image are searched.
これに対して、商品情報検索部140による商品情報検索処理によれば、上述したとおり、クエリ画像内に含まれる検索対象と類似する商品を含み、かつ、クエリ画像内に含まれる非検索対象を含まない商品画像を検索することができる。
On the other hand, according to the product information search processing by the product
図19は、ユーザ端末の検索画面に表示される検索結果の一例を示す第2の図である。なお、検索画面1800内の構成は、図18に示した検索画面1800内の構成と同じであるため、ここでは、検索画面1800内の構成の説明は省略する。
FIG. 19 is a second diagram showing an example of search results displayed on the search screen of the user terminal. Since the configuration within
図18との相違点は、クエリ画像表示欄1801に表示されるクエリ画像である。図19のクエリ画像表示欄1801に表示されたクエリ画像の場合、衣服を着た人物の背景に模様が映っている。
A difference from FIG. 18 is the query image displayed in the query
図19(a)に示すように、商品情報検索部140によれば、図18(a)と同様に、クエリ画像内に、検索対象の衣服と該衣服を着た人物とが含まれていた場合でも、当該衣服に類似する衣服を含み、かつ、人物を含まない商品画像を検索することができる。加えて、図19(a)の場合、衣服を着た人物の背景に模様が含まれている場合であっても、背景の模様に類似する商品画像が検索されることはない。検索対象物検出部720により、検索対象の商品を含む領域が検索対象領域として検出されるためである。なお、クエリ画像表示欄1801に表示されたクエリ画像中の矩形領域は、検索対象物検出部720により検出された検索対象領域を示している。
As shown in FIG. 19(a), according to the product
一方、図19(b)は、比較例として、検索対象物検出部720が、検索対象の商品を含む領域を検索対象領域として検出する処理を実行しなかった場合の検索結果が表示された様子を示している。
On the other hand, FIG. 19B shows, as a comparative example, a state in which search results are displayed when the search
図19(b)に示すように、検索対象領域を検出する処理を実行しなかった場合、クエリ画像内に含まれる、検索対象領域以外の領域に類似する商品画像が検索されることになる。 As shown in FIG. 19B, if the search target area detection process is not executed, product images similar to areas other than the search target area included in the query image are retrieved.
つまり、検索対象領域を検出する処理を実行しなかった場合、クエリ画像内に含まれる非検索対象に類似する商品画像が検索される。 That is, when the process of detecting the search target area is not executed, product images similar to the non-search target included in the query image are searched.
これに対して、商品情報検索部140による商品情報検索処理によれば、上述したとおり、クエリ画像内に含まれる検索対象と類似する商品を含み、かつ、クエリ画像内に含まれる非検索対象を含まない商品画像を検索することができる。
On the other hand, according to the product information search processing by the product
<まとめ>
以上の説明から明らかなように、第1の実施形態に係るサーバ装置では、
・ユーザ端末より送信された検索要求を受信し、クエリ画像を取得する。
・クエリ画像内に検索対象(例えば、衣服)と非検索対象(例えば、人物)の両方が含まれていた場合に、複数の商品画像の中から、検索対象に類似する商品を含み、かつ、非検索対象を含まない商品画像を検索する。
<Summary>
As is clear from the above description, in the server device according to the first embodiment,
・Receive a search request sent from a user terminal and acquire a query image.
・If the query image contains both a search target (e.g., clothes) and a non-search target (e.g., person), among multiple product images, include products similar to the search target, and Search for product images that do not include non-search targets.
これにより、第1の実施形態に係るサーバ装置によれば、クエリ画像を用いた商品検索において、検索対象に応じた検索結果を出力することができる。 Thus, according to the server device according to the first embodiment, it is possible to output search results corresponding to search targets in product searches using query images.
[第2の実施形態]
上記第1の実施形態では、登録情報300より、着用画像を含む商品情報を選択し、着用画像を、順次、学習済みモデル1200に入力することで抽出される特徴ベクトルから代表ベクトルを算出するものとして説明した。しかしながら、代表ベクトルの算出方法はこれに限定されない。
[Second embodiment]
In the above-described first embodiment, product information including wearing images is selected from the registered
例えば、着用画像を含む商品画像を選択した際、選択した商品画像をカテゴリごとに分類し、分類したカテゴリごとに代表ベクトル候補を抽出したうえで、代表ベクトルを算出してもよい。 For example, when a product image including a wearing image is selected, the selected product image may be classified by category, representative vector candidates may be extracted for each classified category, and then the representative vector may be calculated.
図20は、特徴ベクトル情報(人物)生成処理の処理内容を説明するための第2の図である。図12との相違点は、図20の場合、着用画像をカテゴリごとに分類し、カテゴリごとに学習済みモデル1200に、順次、入力する点である。
FIG. 20 is a second diagram for explaining the processing contents of the feature vector information (person) generation processing. The difference from FIG. 12 is that in the case of FIG. 20, wearing images are classified by category and sequentially input to the trained
これにより、例えば、カテゴリ1に分類された着用画像については、カテゴリ1の特徴ベクトルが抽出され、カテゴリ2に分類された着用画像については、カテゴリ2の特徴ベクトルが抽出される。更に、カテゴリxに分類された着用画像については、カテゴリxの特徴ベクトルが抽出される。
As a result, for example, category 1 feature vectors are extracted for wearing images classified into category 1, and
ここで、第2の実施形態において、人物特徴演算部640は、カテゴリごとに抽出した特徴ベクトルに基づいて、カテゴリごとに代表ベクトル候補を算出する。更に、人物特徴演算部640は、各カテゴリの代表ベクトル候補を取得し、平均値を算出することで、代表ベクトル2000を算出する。
Here, in the second embodiment, the person
ただし、代表ベクトル2000の算出方法は、これに限定されない。例えば、カテゴリごとに、各着用画像の特徴ベクトルから商品画像の特徴ベクトルを減算して、負値を非負化した後、カテゴリ間で平均値を算出することで、代表ベクトル2000を算出してもよい。
However, the method of calculating the
以上の説明から明らかなように、第2の実施形態に係るサーバ装置では、着用画像に基づいて代表ベクトルを算出する際、カテゴリに応じた代表ベクトル候補を算出したうえで、代表ベクトルを算出する。 As is clear from the above description, in the server device according to the second embodiment, when calculating the representative vector based on the wearing image, the representative vector candidate is calculated according to the category, and then the representative vector is calculated. .
これにより、第2の実施形態に係るサーバ装置によれば、上記第1の実施形態と同様の効果を享受できるとともに、更に、代表ベクトルを最適化することができる。 As a result, according to the server device according to the second embodiment, it is possible to obtain the same effects as those of the first embodiment, and to further optimize the representative vector.
[第3の実施形態]
上記第1及び第2の実施形態では、商品情報検索処理を実行するにあたり、ユーザ端末170_1~170_nに検索画面1800を表示するものとして説明した。しかしながら、検索画面1800以外の画面(例えば、チャット画面)を介して、商品情報検索処理を実行するように構成してもよい。
[Third embodiment]
In the first and second embodiments, the
図21は、ユーザ端末のチャット画面の一例を示す図である。なお、図21では、縦方向にスクロールすることで表示される表示内容を1つの図に納めるために、画面の縦方向の長さを長くして図示している。 FIG. 21 is a diagram illustrating an example of a chat screen of a user terminal; In FIG. 21, the length of the screen in the vertical direction is increased in order to fit the display contents displayed by scrolling in the vertical direction into one figure.
図21に示すように、チャット画面においてクエリ画像2101を入力することで、質問2102("画像で検索しますか?")が表示されるため、ユーザ180_1~180_nは、回答2103("はい")を入力する。これにより、クエリ画像2101を含む検索要求がサーバ装置110に送信され、サーバ装置110にて、商品情報検索処理が実行されることで、チャット画面2100には、検索結果2104が表示される。
As shown in FIG. 21, by inputting a
このように、チャット画面2100によれば、ユーザ180_1~180_nは、"検索要求"ボタンを押圧する代わりに、チャットを介して、検索要求を送信することができる。
Thus, according to the
[その他の実施形態]
上記第1及び第2の実施形態では、商品情報検索部140の各部(クエリ画像取得部710~検索結果出力部760)を、サーバ装置110側に設けるものとして説明した。しかしながら、商品情報検索部140の一部の機能については、ユーザ端末170_1~170_n側に設けてもよい。例えば、クエリ画像取得部710、検索対象物検出部720、画像特徴抽出部630は、ユーザ端末170_1~170_n側に設けてもよい。
[Other embodiments]
In the first and second embodiments described above, each section (query
これにより、サーバ装置110では、ユーザ端末170_1~170_nから、特徴ベクトルを受信して、商品情報検索処理を実行することができる。ただし、この場合、ユーザ端末170_1~170_nは、事前に学習済みモデル1200を取得しておく必要がある。
As a result, the
あるいは、クエリ画像取得部710、検索対象物検出部720、画像特徴抽出部630、画像特徴変換部740は、ユーザ端末170_1~170_n側に設けてもよい。これにより、サーバ装置110では、ユーザ端末170_1~170_nから、変換後の特徴ベクトルを受信して、商品情報検索処理を実行することができる。ただし、この場合、ユーザ端末170_1~170_nは、事前に学習済みモデル1200及び代表ベクトル510を取得しておく必要がある。
Alternatively, the query
あるいは、商品情報検索部140の全ての機能を、ユーザ端末170_1~170_n側に設けてもよい。これにより、ユーザ端末170_1~170_nでは商品情報検索処理を実行することができる。ただし、この場合、ユーザ端末170_1~170_nは、事前に学習済みモデル1200及び代表ベクトル510を取得しておくとともに、定期的に、特徴ベクトル情報(商品)400を取得しておく必要がある。商品点数が多くない場合や、商品の更新頻度が低い場合に有効である。
Alternatively, all functions of the product
また、上記第1及び第2の実施形態において、特徴ベクトル情報(人物)及び代表ベクトル生成処理は、1回のみ実行し、特徴ベクトル情報(商品)生成処理は、例えば、所定時間が経過するごとに実行するものとして説明した。しかしながら、特徴ベクトル情報(人物)及び代表ベクトル生成処理についても、特徴ベクトル情報(商品)生成処理と同様に、所定時間が経過するごとに実行するように構成してもよい。また、特徴ベクトル情報(商品)生成処理は、商品情報が格納され、登録情報が更新されるごとに実行するように構成してもよい。 Further, in the first and second embodiments, the feature vector information (person) and representative vector generation processing is executed only once, and the feature vector information (product) generation processing is executed, for example, every time a predetermined time elapses. was explained as being executed on However, the feature vector information (person) and representative vector generation processing may also be configured to be executed each time a predetermined time elapses, similarly to the feature vector information (merchandise) generation processing. Further, the feature vector information (product) generation process may be configured to be executed each time product information is stored and registration information is updated.
また、上記第1及び第2の実施形態では、検索対象を衣服とし、非検索対象を当該衣服を着用した人物とした。そして、当該人物が当該衣服を着用した着用画像について代表ベクトルを算出する構成とした。しかしながら、検索対象は衣服に限定されず、アクセサリや小物等であってもよい。この場合、非検索対象は、当該アクセサリを身に着けた人物や、当該小物を保持する人物となる。そして、当該人物がアクセサリを身に着けた(あるいは小物を保持した)着用画像について代表ベクトルが算出されることになる。 Further, in the first and second embodiments described above, the search target is clothes, and the non-search target is the person who wears the clothes. Then, a representative vector is calculated for a wearing image in which the person wears the clothes. However, the search target is not limited to clothing, and may be accessories, accessories, and the like. In this case, the non-search target is the person wearing the accessory or the person holding the accessory. Then, a representative vector is calculated for a wearing image in which the person wears the accessory (or holds the accessory).
つまり、着用画像には、衣服を着用することのほか、アクセサリを身に付けたり、小物を保持することなど、検索対象とともに撮影された人物が含まれる画像全般が含まれるものとする。 In other words, the wearing image includes all images including a person photographed together with the search target, such as wearing clothes, wearing accessories, holding small items, and the like.
また、非検索対象は、人物に限定されず、例えば、商品が椅子に載置された画像においては、椅子を非検索対象としてもよい。あるいは、商品がハンガにかかっている画像においては、ハンガを非検索対象としてもよい。ただし、これらを非検索対象とする場合には、これらを含む画像に基づいて、代表ベクトルを算出しておく必要がある。 Non-search targets are not limited to people. For example, in an image in which a product is placed on a chair, a chair may be a non-search target. Alternatively, in an image in which a product is hung on a hanger, the hanger may be set as a non-search target. However, if these are not to be searched, it is necessary to calculate a representative vector based on an image containing them.
また、上記第1及び第2の実施形態では、検索結果として、商品ID、商品属性情報、商品画像等を送信するものとして説明したが、商品ID、商品属性情報、商品画像のうちの少なくとも1つを送信するようにしてもよい。また、検索結果として、商品ID、商品属性情報、商品画像以外の情報を送信するようにしてもよい。 Further, in the first and second embodiments described above, the product ID, product attribute information, product image, etc. are transmitted as search results. You may choose to send one. Information other than the product ID, product attribute information, and product image may be transmitted as the search result.
また、上記第1の実施形態では、クエリ画像内に、衣服と該衣服を着た人物とが含まれていた場合でも、商品情報検索部140によれば、当該衣服に類似する衣服を含み、かつ、人物を含まない商品画像を検索することができることを示した。しかしながら、商品情報検索部140による商品情報検索処理の効果はこれに限定されない。クエリ画像内に、衣服のみが含まれる場合(つまり、クエリ画像が着用画像でない場合)でも、商品情報検索部140によれば、当該衣服に類似する衣服を含み、かつ、人物を含まない商品画像を検索することができることはいうまでもない。
Further, in the first embodiment, even if the query image includes clothes and a person wearing the clothes, the product
また、上記第1及び第2の実施形態において、商品情報検索部140は、クエリ画像において人物の特徴量の影響を抑えるように、変換後の特徴ベクトルを算出した。しかしながら、変換後の特徴ベクトルの算出方法はこれに限定されず、例えば、クエリ画像においてユーザの趣味嗜好がより明確になるように、変換後の特徴ベクトルを算出してもよい。これにより、ユーザに対する商品のレコメンド処理を実現することが可能になる。
In addition, in the first and second embodiments, the product
また、上記第1及び第2の実施形態では、商品情報検索部140が検索する対象画像が、商品画像の場合について説明した。しかしながら、商品情報検索部140が検索する対象画像は、商品画像に限定されない。例えば、情景画像や絵画画像等であってもよい。ただし、情景画像の場合には、例えば、クエリ画像において、電柱や自動車の特徴量の影響を抑えるように、変換後の特徴ベクトルを算出することになる。また、絵画画像の場合には、例えば、クエリ画像において、額縁の形状の特徴量の影響を抑えるように、変換後の特徴ベクトルを算出することになる。
Further, in the first and second embodiments, the case where the target image searched by the product
また、上記第1及び第2の実施形態では、検索対象に類似する商品を含み、かつ、非検索対象を含まない商品画像を検索する場合について説明した。しかしながら、検索する画像は商品画像に限定されず、例えば、検索対象に類似する物品を含み、かつ、非検索対象を含まない任意の画像を検索してもよい。 Further, in the first and second embodiments, the case of searching for product images that include products similar to the search target and that do not include non-search targets has been described. However, images to be searched are not limited to product images, and for example, any image that includes an article similar to the search target and does not include non-search targets may be searched.
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせなど、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。 It should be noted that the present invention is not limited to the configurations shown here, such as combinations with other elements, to the configurations listed in the above embodiments. These points can be changed without departing from the gist of the present invention, and can be determined appropriately according to the application form.
100 :検索システム
110 :サーバ装置
120 :フリーマーケットサービス部
130 :商品情報登録部
140 :商品情報検索部
150 :登録情報格納部
151 :特徴ベクトル情報(商品)保存部
152 :特徴ベクトル情報(人物)保存部
170_1~170_n :ユーザ端末
300 :登録情報
400 :特徴ベクトル情報(商品)
500 :特徴ベクトル情報(人物)
510 :代表ベクトル
610 :商品情報取得部
620 :商品情報(着用画像)選択部
630 :画像特徴抽出部
640 :人物特徴演算部
650 :商品情報読み出し部
710 :クエリ画像取得部
720 :検索対象物検出部
740 :画像特徴変換部
750 :類似ベクトル演算部
760 :検索結果出力部
1000 :特徴ベクトル算出用モデル
1200 :学習済みモデル
1410_1~1410_p :商品画像の特徴ベクトル
1600 :検索対象領域の特徴ベクトル
1701 :減算後の特徴ベクトル
1703 :変換後の特徴ベクトル
1800 :検索画面
2000 :代表ベクトル
100: Search system 110: Server device 120: Flea market service unit 130: Product information registration unit 140: Product information search unit 150: Registered information storage unit 151: Feature vector information (product) storage unit 152: Feature vector information (person) Storage units 170_1 to 170_n: User terminal 300: Registration information 400: Feature vector information (product)
500: Feature vector information (person)
510 : representative vector 610 : product information acquisition unit 620 : product information (wearing image) selection unit 630 : image feature extraction unit 640 : person feature calculation unit 650 : product information reading unit 710 : query image acquisition unit 720 : search target object detection Unit 740: Image feature conversion unit 750: Similarity vector calculation unit 760: Search result output unit 1000: Feature vector calculation model 1200: Trained models 1410_1 to 1410_p: Product image feature vector 1600: Search target region feature vector 1701:
Claims (9)
前記クエリ画像内に検索対象と非検索対象とが含まれていた場合に、前記クエリ画像の特徴量から前記非検索対象部分の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、複数の画像の中から、該検索対象に類似する物品を含み、かつ、該非検索対象を含まない画像を検索する検索工程と
をコンピュータに実行させるための検索プログラム。 an input step of inputting a query image;
When the query image includes a search target and a non-search target , based on the feature quantity obtained by removing the feature quantity of the non-search target part from the feature quantity of the query image and the feature quantity of a plurality of images a search program for causing a computer to execute a search step of searching, from among a plurality of images, an image containing an article similar to the search target and not containing the non-search target.
前記クエリ画像内に検索対象と該検索対象とともに撮影された人物とが含まれていた場合に、前記クエリ画像の特徴量から前記人物の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、前記複数の画像の中から、該検索対象に類似する物品を含み、かつ、人物を含まない画像を検索する、請求項1に記載の検索プログラム。 The search step includes:
When the query image includes a search target and a person photographed together with the search target, a feature amount obtained by removing the feature amount of the person from the feature amount of the query image and the feature amount of a plurality of images. 2. The search program according to claim 1 , wherein an image including an article similar to the search target and not including a person is searched from among the plurality of images based on .
前記クエリ画像の特徴量に含まれる人物の特徴量よりも、前記クエリ画像の特徴量に含まれる検索対象の特徴量を重み付けして検索する、請求項2に記載の検索プログラム。 The search step includes:
3. The search program according to claim 2, wherein a search is performed by weighting the feature amount of a search target included in the feature amount of the query image rather than the feature amount of a person included in the feature amount of the query image.
前記クエリ画像の特徴量を含む特徴ベクトルを、物品と該物品とともに撮影された人物とが含まれる画像の特徴量を含む特徴ベクトルで減算し、
減算した特徴ベクトルに含まれる負値の特徴量を非負化し、
前記負値の特徴量を非負化した特徴ベクトルを用いて、前記複数の画像それぞれの特徴量を含む各特徴ベクトルとの類似度を算出する、請求項2に記載の検索プログラム。 The search step includes:
Subtracting the feature vector containing the feature amount of the query image by the feature vector containing the feature amount of the image containing the article and the person photographed with the article,
Non-negative the negative feature values included in the subtracted feature vector,
3. The search program according to claim 2, wherein a feature vector obtained by non-negating the feature quantity of the negative value is used to calculate a similarity with each feature vector including the feature quantity of each of the plurality of images.
前記検索工程は、
前記クエリ画像の特徴量を含む特徴ベクトルを、前記代表ベクトルで減算する、請求項4に記載の検索プログラム。 causing a computer to perform a calculation step of calculating a representative vector based on each feature vector including feature amounts of each of a plurality of images including an article and a person photographed with the article;
The search step includes:
5. The search program according to claim 4, wherein the representative vector is subtracted from the feature vector containing the feature amount of the query image.
物品と該物品とともに撮影された人物とが含まれる複数の画像を、物品のカテゴリに応じて分類し、カテゴリごとに分類された複数の画像それぞれの特徴量を含む各特徴ベクトルに基づいて、カテゴリごとに代表ベクトル候補を算出し、
カテゴリごとに算出した代表ベクトル候補に基づいて、前記代表ベクトルを算出する、請求項5に記載の検索プログラム。 The calculation step includes:
A plurality of images containing an article and a person photographed with the article are classified according to the category of the article. Calculate representative vector candidates for each
6. The search program according to claim 5, wherein said representative vector is calculated based on representative vector candidates calculated for each category.
前記クエリ画像内に検索対象と非検索対象とが含まれていた場合に、前記クエリ画像の特徴量から前記非検索対象部分の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、複数の画像の中から、該検索対象に類似する物品を含み、かつ、該非検索対象を含まない画像を検索する検索部と
を有するサーバ装置。 an input unit for inputting a query image;
When the query image includes a search target and a non-search target , based on the feature quantity obtained by removing the feature quantity of the non-search target part from the feature quantity of the query image and the feature quantity of a plurality of images and a search unit that searches a plurality of images for an image that includes an article similar to the search target and does not include the non-search target.
前記クエリ画像内に検索対象と非検索対象とが含まれていた場合に、前記クエリ画像の特徴量から前記非検索対象部分の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、複数の画像の中から、該検索対象に類似する物品を含み、かつ、該非検索対象を含まない画像を検索する検索工程と
を有する検索方法。 an input step of inputting a query image;
When the query image includes a search target and a non-search target , based on the feature quantity obtained by removing the feature quantity of the non-search target part from the feature quantity of the query image and the feature quantity of a plurality of images and searching a plurality of images for an image that includes an article similar to the search target and does not include the non-search target.
クエリ画像を入力する入力部と、
前記クエリ画像内に検索対象と非検索対象とが含まれていた場合に、前記クエリ画像の特徴量から前記非検索対象部分の特徴量を取り除いた特徴量と複数の画像の特徴量とに基づいて、複数の画像の中から、該検索対象に類似する物品を含み、かつ、該非検索対象を含まない画像を検索する検索部と
を有する検索システム。 A search system in which a terminal and a server device are communicably connected,
an input unit for inputting a query image;
When the query image includes a search target and a non-search target , based on the feature quantity obtained by removing the feature quantity of the non-search target part from the feature quantity of the query image and the feature quantity of a plurality of images and a retrieval unit for retrieving, from among a plurality of images, an image that includes an article similar to the retrieval target and does not include the non-retrieval target.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018220243A JP7211775B2 (en) | 2018-11-26 | 2018-11-26 | Search program, server device, search method and search system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018220243A JP7211775B2 (en) | 2018-11-26 | 2018-11-26 | Search program, server device, search method and search system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020086914A JP2020086914A (en) | 2020-06-04 |
JP7211775B2 true JP7211775B2 (en) | 2023-01-24 |
Family
ID=70909958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018220243A Active JP7211775B2 (en) | 2018-11-26 | 2018-11-26 | Search program, server device, search method and search system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7211775B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009251850A (en) | 2008-04-04 | 2009-10-29 | Albert:Kk | Commodity recommendation system using similar image search |
WO2011021605A1 (en) | 2009-08-18 | 2011-02-24 | 公立大学法人大阪府立大学 | Object detection method |
JP2013186546A (en) | 2012-03-06 | 2013-09-19 | Tokyo Denki Univ | Person retrieval system |
JP2015106300A (en) | 2013-11-29 | 2015-06-08 | キヤノン株式会社 | Image search device, control method for image search device, and program |
JP2016103235A (en) | 2014-11-28 | 2016-06-02 | 日本電信電話株式会社 | Image search apparatus, image registration apparatus, image characteristic selection apparatus, method, and program |
-
2018
- 2018-11-26 JP JP2018220243A patent/JP7211775B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009251850A (en) | 2008-04-04 | 2009-10-29 | Albert:Kk | Commodity recommendation system using similar image search |
WO2011021605A1 (en) | 2009-08-18 | 2011-02-24 | 公立大学法人大阪府立大学 | Object detection method |
JP2013186546A (en) | 2012-03-06 | 2013-09-19 | Tokyo Denki Univ | Person retrieval system |
JP2015106300A (en) | 2013-11-29 | 2015-06-08 | キヤノン株式会社 | Image search device, control method for image search device, and program |
JP2016103235A (en) | 2014-11-28 | 2016-06-02 | 日本電信電話株式会社 | Image search apparatus, image registration apparatus, image characteristic selection apparatus, method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP2020086914A (en) | 2020-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7181437B2 (en) | A technique for identifying skin tones in images under uncontrolled lighting conditions | |
US11734725B2 (en) | Information sending method, apparatus and system, and computer-readable storage medium | |
CN108829764B (en) | Recommendation information acquisition method, device, system, server and storage medium | |
CN104991906B (en) | Information acquisition method, server, terminal, database construction method and device | |
JP2011248548A (en) | Content determination program and content determination device | |
WO2016196128A1 (en) | Task-focused search by image | |
CN103988202A (en) | Image attractiveness based indexing and searching | |
US11966963B2 (en) | Systems and methods for recommendation generation | |
JP2018084890A (en) | Information processing unit, information processing method, and program | |
KR20120024772A (en) | Method and apparatus for providing moving image advertisements | |
TW202117639A (en) | Presenting information on similar objects relative to a target object from a plurality of video frames | |
US11762900B2 (en) | Customized selection of video thumbnails to present on social media webpages | |
CN111815407A (en) | Method and device for constructing user portrait | |
JP6168192B2 (en) | Information providing method and information providing system | |
WO2021196551A1 (en) | Image retrieval method and apparatus, computer device, and storage medium | |
JP7211775B2 (en) | Search program, server device, search method and search system | |
US10311497B2 (en) | Server, analysis method and computer program product for analyzing recognition information and combination information | |
JP5642228B2 (en) | Correlation value calculation system, determination system, correlation value calculation method, determination method, and computer program | |
JP7211776B2 (en) | Search program, server device, search method and search system | |
CN104850600B (en) | A kind of method and apparatus for searching for the picture comprising face | |
CN111447260A (en) | Information pushing and information publishing method and device | |
TW201942836A (en) | Store system, article matching method and apparatus, and electronic device | |
US11468675B1 (en) | Techniques for identifying objects from video content | |
US20220222297A1 (en) | Generating search results based on an augmented reality session | |
CN114596138A (en) | Information recommendation method and device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210826 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220622 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220705 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220830 |
|
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: 20230104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7211775 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |