KR20200093321A - Image search apparatus and method - Google Patents

Image search apparatus and method Download PDF

Info

Publication number
KR20200093321A
KR20200093321A KR1020190010662A KR20190010662A KR20200093321A KR 20200093321 A KR20200093321 A KR 20200093321A KR 1020190010662 A KR1020190010662 A KR 1020190010662A KR 20190010662 A KR20190010662 A KR 20190010662A KR 20200093321 A KR20200093321 A KR 20200093321A
Authority
KR
South Korea
Prior art keywords
attribute
image
feature vector
search
user terminal
Prior art date
Application number
KR1020190010662A
Other languages
Korean (ko)
Other versions
KR102221122B1 (en
Inventor
최승권
김상연
신민철
함성호
박상혁
김택윤
김택수
강유훈
Original Assignee
네이버 주식회사
라인 가부시키가이샤
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 네이버 주식회사, 라인 가부시키가이샤 filed Critical 네이버 주식회사
Priority to KR1020190010662A priority Critical patent/KR102221122B1/en
Priority to TW108147387A priority patent/TWI755666B/en
Priority to JP2020006627A priority patent/JP7013497B2/en
Publication of KR20200093321A publication Critical patent/KR20200093321A/en
Application granted granted Critical
Publication of KR102221122B1 publication Critical patent/KR102221122B1/en
Priority to JP2022006614A priority patent/JP7282218B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • G06Q30/0643Graphical representation of items or shoppers

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

According to one embodiment, disclosed is an image searching device capable of easily allocating attribute tags to images stored in a database, which comprises the steps of: obtaining reference feature vectors corresponding to a plurality of reference images including the same attribute; obtaining a representative feature vector corresponding to the same attribute from a trained generation model based on the obtained reference feature vectors; and comparing the feature vectors of target images stored in the database with the representative feature vector, and allocating an attribute tag corresponding to the same attribute to at least some of the target images.

Description

이미지 검색 장치 및 방법{IMAGE SEARCH APPARATUS AND METHOD}Image search device and method {IMAGE SEARCH APPARATUS AND METHOD}

본 개시는 검색 분야에 관한 것이다. 보다 구체적으로, 본 개시는 이미지 기반의 검색 장치 및 방법에 관한 것이다.This disclosure relates to the field of search. More specifically, the present disclosure relates to an image-based search apparatus and method.

정보통신 기술의 발달과 함께 스마트폰, 개인용 컴퓨터 등 다양한 단말을 이용한 정보 검색이 폭넓게 이용되고 있다. 종래에는 사용자가 입력한 텍스트를 기반으로 문서 등을 검색하여 제공하였으나, 근래 들어서는 사용자가 사진이나 그림 등의 이미지를 검색하고자 하는 경우가 증가하고 있다.With the development of information and communication technology, information retrieval using various terminals such as smart phones and personal computers is widely used. Conventionally, a document or the like has been searched and provided based on text input by a user, but in recent years, a user has increased the desire to search for an image such as a picture or a picture.

그러나, 의류나 풍경 등의 이미지를 텍스트만으로 검색하기는 쉽지 않다. 예를 들어, 사용자가 자신이 원하는 스타일의 의류를 검색하고자 하는 경우에도 텍스트 검색 기반으로는 적절한 이미지를 찾기 어려운 경우가 있다.However, it is not easy to search for images such as clothing and landscapes using only text. For example, even when a user wants to search for clothing in a style desired by a user, it is sometimes difficult to find an appropriate image based on a text search.

최근에는 사용자로부터 텍스트가 아닌 검색 이미지를 입력받고, 검색 이미지와 유사한 이미지를 검색하는 서비스도 시도되고 있으나, 이를 위해서는 데이터베이스에 저장된 수많은 이미지들에 대해 일일이 수동적으로 태그를 할당해야 한다는 어려움이 존재한다.Recently, a service that receives a search image rather than text from a user and searches for an image similar to the search image has been attempted, but for this, there is a difficulty in manually tagging numerous images stored in a database.

일 실시예에 따른 이미지 검색 장치 및 방법은 데이터베이스에 저장된 이미지들에 대한 속성 태그의 할당을 간편하게 할 수 있게 하는 것을 기술적 과제로 한다.An image retrieval apparatus and method according to an embodiment of the present invention is to make it easy to allocate attribute tags to images stored in a database.

또한, 일 실시예에 따른 이미지 검색 장치 및 방법은 대표 특징 벡터를 이용하여 사용자가 원하는 종류의 이미지를 보다 정확하게 검색할 수 있게 하는 것을 기술적 과제로 한다.In addition, an image search apparatus and method according to an embodiment of the present invention make it a technical task to enable a user to more accurately search a desired type of image using a representative feature vector.

일 실시예에 따른 이미지 검색 방법은, 동일한 속성을 포함하는 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하는 단계; 상기 획득한 참조 특징 벡터들에 기초하여 훈련된 생성 모델로부터 상기 동일한 속성에 대응하는 대표 특징 벡터를 획득하는 단계; 및 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들과 상기 대표 특징 벡터를 비교하여, 상기 타겟 이미지들 중 적어도 일부의 타겟 이미지에 상기 동일한 속성에 대응하는 속성 태그를 할당하는 단계를 포함할 수 있다.An image search method according to an embodiment may include obtaining reference feature vectors corresponding to a plurality of reference images including the same attribute; Obtaining a representative feature vector corresponding to the same attribute from a trained generation model based on the obtained reference feature vectors; And comparing the feature vectors of target images stored in a database with the representative feature vector, and assigning an attribute tag corresponding to the same attribute to a target image of at least some of the target images.

일 실시예에 따른 이미지 검색 방법은, 사용자 단말로부터 복수의 검색 이미지들을 수신하는 단계; 상기 복수의 검색 이미지들에 대응하는 특징 벡터들을 획득하는 단계; 상기 획득한 특징 벡터들로 생성 모델을 훈련시키는 단계; 상기 특징 벡터들로 훈련된 상기 생성 모델에서 출력되는 대표 특징 벡터와 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들을 비교하여 상기 복수의 검색 이미지들에 대응하는 타겟 이미지를 결정하는 단계; 및 상기 결정된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 포함할 수 있다.An image search method according to an embodiment may include receiving a plurality of search images from a user terminal; Obtaining feature vectors corresponding to the plurality of search images; Training a generation model with the acquired feature vectors; Determining a target image corresponding to the plurality of search images by comparing a representative feature vector output from the generation model trained with the feature vectors and feature vectors of target images stored in a database; And transmitting the determined target image to the user terminal.

일 실시예에 따른 이미지 검색 장치는, 프로세서; 적어도 하나의 프로그램 및 생성 모델을 저장하는 메모리; 및 타겟 이미지들을 저장하는 데이터베이스를 포함하되, 상기 프로세서는 상기 적어도 하나의 프로그램이 실행됨에 따라, 동일한 속성을 포함하는 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하고, 상기 획득한 참조 특징 벡터들에 기초하여 훈련된 상기 생성 모델로부터 상기 동일한 속성에 대응하는 대표 특징 벡터를 획득하고, 상기 타겟 이미지들의 특징 벡터들과 상기 대표 특징 벡터를 비교하여, 상기 타겟 이미지들 중 적어도 일부의 타겟 이미지에 상기 동일한 속성에 대응하는 속성 태그를 할당할 수 있다.An image search apparatus according to an embodiment includes a processor; A memory storing at least one program and generation model; And a database storing target images, wherein the processor acquires reference feature vectors corresponding to a plurality of reference images including the same attribute as the at least one program is executed, and the obtained reference feature vectors Obtaining a representative feature vector corresponding to the same attribute from the generation model trained based on the fields, comparing the feature vectors of the target images with the representative feature vector, to a target image of at least some of the target images An attribute tag corresponding to the same attribute may be assigned.

다른 실시예에 따른 이미지 검색 방법은, 이미지 검색 장치에 접속하여 속성을 선택하는 단계; 및 상기 이미지 검색 장치에 저장된 타겟 이미지들 중 상기 선택한 속성에 대응하는 속성 태그가 할당된 타겟 이미지를 상기 이미지 검색 장치로부터 수신하는 단계를 포함하되, 상기 이미지 검색 장치에 저장된 타겟 이미지들은, 복수의 속성들 각각에 대응하는 대표 특징 벡터들과 상기 타겟 이미지들의 특징 벡터의 비교 결과에 기초하여 상기 복수의 속성들에 대응하는 복수의 속성 태그들 중 적어도 일부의 속성 태그가 할당될 수 있다.An image search method according to another embodiment may include accessing an image search apparatus and selecting an attribute; And receiving, from the image search apparatus, a target image assigned with an attribute tag corresponding to the selected attribute among target images stored in the image search apparatus, wherein the target images stored in the image search apparatus include a plurality of attributes. At least some attribute tags among a plurality of attribute tags corresponding to the plurality of attributes may be assigned based on a comparison result of representative feature vectors corresponding to each of the feature vectors and the feature vectors of the target images.

일 실시예에 따른 이미지 검색 장치 및 방법은 데이터베이스에 저장된 이미지들에 대한 속성 태그의 할당을 간편하게 할 수 있다.The image retrieval apparatus and method according to an embodiment may simplify the assignment of attribute tags to images stored in a database.

또한, 일 실시예에 따른 이미지 검색 장치 및 방법은 대표 특징 벡터를 이용하여 사용자가 원하는 종류의 이미지를 보다 정확하게 검색하게 할 수 있다.In addition, the image search apparatus and method according to an embodiment may allow a user to more accurately search a desired type of image using a representative feature vector.

다만, 일 실시예에 따른 이미지 검색 장치 및 방법이 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the effects that the image retrieval apparatus and method according to an embodiment can achieve are not limited to those mentioned above, and other effects not mentioned are common knowledge in the art to which the present disclosure pertains from the following description. It can be clearly understood by those who have.

본 명세서에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 일 실시예에 따른 이미지 검색 장치 및 사용자 단말을 도시하는 도면이다.
도 2는 일 실시예에 따른 속성 태그의 할당 방법을 설명하기 위한 순서도이다.
도 3은 생성 모델로부터 대표 특징 벡터를 획득하는 방법을 설명하기 위한 도면이다.
도 4는 타겟 이미지에 대한 속성 태그의 할당 방법을 설명하기 위한 예시적인 도면이다.
도 5는 사용자가 속성을 선택할 수 있게 하는 UI 화면을 도시하는 도면이다.
도 6은 일 실시예에 따른 이미지 검색 방법을 설명하기 위한 순서도이다.
도 7은 다른 실시예에 따른 이미지 검색 방법을 설명하기 위한 순서도이다.
도 8은 검색 이미지로부터 추출되는 속성별 특징 벡터를 나타내는 도면이다.
도 9는 검색 이미지의 속성별 특징 벡터 중 적어도 하나를 대표 특징 벡터로 교환하는 방법을 설명하기 위한 도면이다.
도 10은 검색 이미지의 속성별 특징 벡터와 타겟 이미지들의 속성별 특징 벡터를 비교하는 방법을 설명하기 위한 도면이다.
도 11은 복수의 오브젝트를 포함하는 검색 이미지를 도시하는 예시적인 도면이다.
도 12는 도 11에 도시된 검색 이미지의 특징 벡터 시퀀스 중 적어도 하나를 대표 특징 벡터로 교환하는 방법을 설명하기 위한 도면이다.
도 13은 도 11에 도시된 검색 이미지에 대응하는 검색 결과 이미지들을 도시하는 예시적인 도면이다.
도 14는 일 실시예에 따른 이미지 검색 장치의 구성을 도시하는 블록도이다.
Brief descriptions of each drawing are provided in order to better understand the drawings cited herein.
1 is a diagram illustrating an image search apparatus and a user terminal according to an embodiment.
2 is a flowchart illustrating an attribute tag allocation method according to an embodiment.
3 is a diagram for explaining a method of obtaining a representative feature vector from a generation model.
4 is an exemplary diagram for explaining a method of assigning an attribute tag to a target image.
5 is a diagram illustrating a UI screen that allows a user to select an attribute.
6 is a flowchart illustrating an image search method according to an embodiment.
7 is a flowchart illustrating an image search method according to another embodiment.
8 is a diagram illustrating feature vectors for each attribute extracted from a search image.
9 is a view for explaining a method of exchanging at least one of the feature vectors for each attribute of the search image into a representative feature vector.
10 is a view for explaining a method of comparing a feature vector for each attribute of a search image and a feature vector for each attribute of the target images.
11 is an exemplary diagram illustrating a search image including a plurality of objects.
FIG. 12 is a diagram illustrating a method of exchanging at least one of the feature vector sequences of the search image shown in FIG. 11 with a representative feature vector.
13 is an exemplary diagram illustrating search result images corresponding to the search image shown in FIG. 11.
14 is a block diagram showing the configuration of an image search apparatus according to an embodiment.

본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고, 이를 상세한 설명을 통해 설명하고자 한다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The present disclosure may be variously modified and may have various embodiments, and specific embodiments are illustrated in the drawings and will be described through detailed description. However, this is not intended to limit the present disclosure to specific embodiments, and it should be understood that all modifications, equivalents, and substitutes included in the spirit and scope of the present disclosure are included.

실시예를 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 실시예의 설명 과정에서 이용되는 숫자(예를 들어, 제 1, 제 2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the embodiments, when it is determined that the detailed description of the related known technology may unnecessarily obscure the subject matter, the detailed description is omitted. In addition, the numbers used in the description process of the embodiment (for example, first, second, etc.) are only identification symbols for distinguishing one component from other components.

또한, 본 명세서에서 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, when one component is referred to as “connected” or “connected” with another component in the present specification, the one component may be directly connected to the other component, or may be directly connected, but is specifically opposed. It should be understood that, as long as there is no description to be made, it may be connected or connected through another component in the middle.

또한, 본 명세서에서 '~부(유닛)', '모듈' 등으로 표현되는 구성요소는 2개 이상의 구성요소가 하나의 구성요소로 합쳐지거나 또는 하나의 구성요소가 보다 세분화된 기능별로 2개 이상으로 분화될 수도 있다. 또한, 이하에서 설명할 구성요소 각각은 자신이 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성요소 각각이 담당하는 주기능 중 일부 기능이 다른 구성요소에 의해 전담되어 수행될 수도 있음은 물론이다.In addition, in this specification, two or more components are expressed as'~ unit (unit)' or'module', or two or more components are combined into one component, or two or more components are divided into more detailed functions. It may be differentiated into. In addition, each of the components to be described below may additionally perform some or all of the functions of other components in addition to the main functions in charge of them, and some of the main functions of each component are different. Needless to say, it may also be carried out exclusively by components.

이하, 본 개시의 기술적 사상에 의한 실시예들을 차례로 상세히 설명한다.Hereinafter, embodiments according to the technical spirit of the present disclosure will be described in detail.

도 1은 일 실시예에 따른 이미지 검색 장치(100) 및 사용자 단말(10)을 도시하는 도면이다.1 is a diagram illustrating an image search apparatus 100 and a user terminal 10 according to an embodiment.

사용자 단말(10)은 이미지 검색 장치(100)로 검색 조건(예를 들어, 검색 이미지, 속성 등)을 선택 또는 입력하여 전송하고, 이미지 검색 장치(100)는 검색 조건에 대응하는 검색 결과 이미지를 사용자 단말(10)로 전송한다. 일 실시예에서, 이미지 검색 장치(100)는 검색 조건에 대응하는 검색 결과 이미지를 결정하기 위한 타겟 이미지들을 데이터베이스에 저장할 수 있다. 이미지 검색 장치(100)는 타겟 이미지들 중 검색 조건에 대응하는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.The user terminal 10 selects or inputs a search condition (for example, a search image, an attribute, etc.) to the image search apparatus 100 and transmits it, and the image search apparatus 100 transmits a search result image corresponding to the search condition. Transmit to the user terminal 10. In one embodiment, the image search apparatus 100 may store target images for determining a search result image corresponding to a search condition in a database. The image search apparatus 100 may transmit the target image corresponding to the search condition among the target images to the user terminal 10 as a search result image.

사용자 단말(10)은 네트워크를 통해 이미지 검색 장치(100)에 접속할 수 있는 데스크탑 PC, 태블릿, 스마트폰, 노트북 등을 포함할 수 있으나 이에 한정되는 것은 아니다.The user terminal 10 may include, but is not limited to, a desktop PC, tablet, smartphone, laptop, etc. that can access the image retrieval device 100 through a network.

일 실시예에서, 이미지 검색 장치(100) 및 사용자 단말(10)은 네트워크를 통해 서로 연결되어 서로 간에 데이터를 송수신할 수 있다. 여기서 네트워크는 유선 네트워크와 무선 네트워크를 포함할 수 있으며, 구체적으로, 근거리 네트워크(LAN: Local Area Network), 도시권 네트워크(MAN: Metropolitan Area Network), 광역 네트워크(WAN: Wide Area Network) 등의 다양한 네트워크를 포함할 수 있다. 또한, 네트워크(10)는 공지의 월드 와이드 웹(WWW: World Wide Web)을 포함할 수도 있다. 그러나, 본 발명에 따른 네트워크(10)는 상기 열거된 네트워크에 국한되지 않고, 공지의 무선 데이터 네트워크나 공지의 전화 네트워크, 공지의 유무선 텔레비전 네트워크를 적어도 일부로 포함할 수도 있다.In one embodiment, the image search apparatus 100 and the user terminal 10 are connected to each other through a network to transmit and receive data between each other. Here, the network may include a wired network and a wireless network, and specifically, various networks such as a local area network (LAN), a metropolitan area network (MAN), and a wide area network (WAN). It may include. In addition, the network 10 may include a known World Wide Web (WWW). However, the network 10 according to the present invention is not limited to the networks listed above, and may include at least a part of a known wireless data network, a known telephone network, and a known wired/wireless television network.

일 실시예에 따른 이미지 검색 장치(100)는 미리 저장된 타겟 이미지들에 대해 속성 태그를 할당할 수 있다. 본 명세서에서, '속성'이란 이미지에 포함된 오브젝트의 특징을 의미할 수 있다. 상기 속성은 카테고리별로 구분될 수 있다. 예를 들어, 어떤 의류는 색상 카테고리에 속한 적색의 속성, 무늬 카테고리에 속한 줄무늬 속성, 형상 카테고리에 속한 원피스 속성을 가질 수 있다. 또한, 본 명세서에서 '속성 태그'란 이미지 내 오브젝트의 특징을 나타내기 위해 이미지에 할당된 정보를 의미할 수 있다. 예를 들어, 어떤 의류의 속성 태그는, 해당 의류의 색상이 적색이고, 무늬는 줄무늬이고, 형상은 원피스임을 나타낼 수 있다.The image retrieval apparatus 100 according to an embodiment may assign attribute tags to pre-stored target images. In the present specification,'attribute' may mean characteristics of an object included in an image. The attributes may be classified by category. For example, some clothing may have red attributes belonging to the color category, striped attributes belonging to the pattern category, and dress attributes belonging to the shape category. Also, in this specification, the'attribute tag' may mean information allocated to an image to indicate characteristics of an object in the image. For example, an attribute tag of a garment may indicate that the color of the garment is red, the pattern is a stripe, and the shape is a dress.

이미지 검색 장치(100)가 타겟 이미지들에 대해 속성 태그를 할당하는 방법에 대해 도 2를 참조하여 설명한다.A method in which the image search apparatus 100 assigns attribute tags to target images will be described with reference to FIG. 2.

도 2는 일 실시예에 따른 속성 태그의 할당 방법을 설명하기 위한 순서도이다.2 is a flowchart illustrating an attribute tag allocation method according to an embodiment.

S210 단계에서, 이미지 검색 장치(100)는 동일한 속성을 가지고 있거나, 동일한 속성 태그가 할당된 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득한다. 실시예에서, 관리자는 복수의 참조 이미지들에 대해 동일한 속성 태그를 할당할 수 있다. 예를 들어, 복수의 참조 이미지들에 대해 '적색', '빗살무늬' 또는 '여성들에게 인기있는 의류' 등과 같은 동일한 속성 태그가 할당될 수 있다.In step S210, the image search apparatus 100 obtains reference feature vectors corresponding to a plurality of reference images having the same attribute or assigned the same attribute tag. In an embodiment, the administrator may assign the same attribute tag to multiple reference images. For example, the same attribute tag may be assigned to a plurality of reference images, such as'red','comb', or'clothes popular with women'.

복수의 참조 이미지들에 대응하는 참조 특징 벡터들은 머신 러닝 모델에 의해 출력된 것일 수 있다. 상기 머신 러닝 모델은 예를 들어, CNN(convolution nueral network)을 포함할 수 있다. 또한, 참조 특징 벡터들은 N(N은 1 이상의 정수) 차원의 데이터일 수 있다. 일 실시예에서, 복수의 참조 이미지들에 대응하는 참조 특징 벡터들은 머신 러닝 모델에 의해 출력된 후, 후처리(post processing)를 통해 생성된 것일 수 있다. 상기 후처리는 예를 들어, 머신 러닝 모델에서 출력된 특징 벡터에 포함된 복수의 원소를 크기 기준으로 정렬한 후, 상위 k개의 원소들의 특징 벡터 내에서의 위치를 나타내는 인덱스를 획득하고, 획득한 인덱스를 원소로 가지는 인덱스 특징 벡터를 참조 특징 벡터로 생성하는 처리를 포함할 수 있다.Reference feature vectors corresponding to a plurality of reference images may be output by a machine learning model. The machine learning model may include, for example, a convolution nueral network (CNN). Also, the reference feature vectors may be N (N is an integer of 1 or more) dimension data. In one embodiment, reference feature vectors corresponding to a plurality of reference images may be generated by post processing after being output by a machine learning model. The post-processing, for example, after sorting a plurality of elements included in the feature vector output from the machine learning model by size, obtains an index indicating the position of the top k elements in the feature vector, and obtains the obtained And generating an index feature vector having an index as an element as a reference feature vector.

S220 단계에서, 이미지 검색 장치(100)는 복수의 참조 이미지들에 대응하는 참조 특징 벡터들에 기초하여 훈련된 생성 모델로부터, 동일한 속성 내지 동일 속성 태그에 대응하는 대표 특징 벡터를 획득한다. 생성 모델은 복수의 참조 이미지들의 참조 특징 벡터들에 기초하여 훈련됨으로써, 참조 특징 벡터들과 유사한 대표 특징 벡터를 생성할 수 있다. 일 실시예에서, 상기 생성 모델은 GAN(generative adversarial network)을 포함할 수 있다. In step S220, the image search apparatus 100 obtains a representative feature vector corresponding to the same attribute or the same attribute tag from a generated model trained based on reference feature vectors corresponding to a plurality of reference images. The generation model can be trained based on reference feature vectors of a plurality of reference images, thereby generating a representative feature vector similar to reference feature vectors. In one embodiment, the generation model may include a GAN (generative adversarial network).

도 3을 참조하면, 생성 모델(300)은 참조 이미지들(310a, 310b, 310c)에 대응하는 참조 특징 벡터들(320a, 320b, 320c)에 의해 훈련된 후, 예를 들어, 랜덤 노이즈를 입력 데이터로 입력받으면, 참조 특징 벡터들(320a, 320b, 320c)과 유사한 대표 특징 벡터를 생성할 수 있다. 일 실시예에서, 생성 모델(300)에 해당하는 GAN은 복수의 FCL(fully connected layer)로 이루어질 수 있다. FCL이란, 각각의 레이어가 적어도 하나의 노드로 구성되되, 어느 레이어의 각 노드들이 이전 레이어 및 다음 레이어에 포함된 모든 노드들 전부와 개별적으로 연결된 네트워크 구조이다. GAN은 이미지가 아닌 참조 특징 벡터에 의해 훈련되므로 CNN을 포함할 필요가 없으며, FCL만으로 참조 특징 벡터와 유사한 대표 특징 벡터를 생성할 수 있다. 즉, 이미지 생성을 위한 GAN 대신 대표 특징 벡터의 생성을 위한 복수의 FCL로 이루어진 GAN이 이용됨으로써 훈련이 빠르게 이루어질 수 있고, 처리 속도 역시 매우 빨라질 수 있다.Referring to FIG. 3, the generation model 300 is trained by reference feature vectors 320a, 320b, and 320c corresponding to the reference images 310a, 310b, 310c, and then input random noise, for example. When input as data, representative feature vectors similar to the reference feature vectors 320a, 320b, and 320c may be generated. In one embodiment, the GAN corresponding to the generation model 300 may consist of a plurality of fully connected layers (FCLs). FCL is a network structure in which each layer is composed of at least one node, and each node of a layer is individually connected to all nodes included in a previous layer and a next layer. Since the GAN is trained by the reference feature vector, not the image, it is not necessary to include the CNN, and only the FCL can generate a representative feature vector similar to the reference feature vector. That is, instead of a GAN for image generation, a GAN composed of a plurality of FCLs for generation of a representative feature vector is used, so that training can be quickly performed and processing speed can also be very fast.

일 실시예에서, 생성 모델은 참조 특징 벡터들의 원소들의 평균 값을 획득하고, 획득한 평균 값들을 원소로 갖는 대표 특징 벡터를 생성할 수도 있다.In one embodiment, the generation model may obtain an average value of the elements of the reference feature vectors, and generate a representative feature vector having the obtained average values as elements.

다시 도 2를 참조하면, S230 단계에서, 이미지 검색 장치(100)는 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들과 대표 특징 벡터를 비교한다. 일 예에서, 이미지 검색 장치(100)는 타겟 이미지들의 특징 벡터들 각각과 대표 특징 벡터 사이의 디스턴스(예를 들어, 코사인 디스턴스(cosine distance))를 산출할 수 있다. 특징 벡터를 사이의 유사성을 판단하기 위해 산출되는 디스턴스는 공지된 것이므로 본 명세서에서 상세한 설명은 생략한다.Referring back to FIG. 2, in step S230, the image search apparatus 100 compares the feature vectors of the target images stored in the database with the representative feature vector. In one example, the image search apparatus 100 may calculate a distance (eg, a cosine distance) between each of the feature vectors of the target images and the representative feature vector. The distance calculated to determine the similarity between the feature vectors is well known, and thus detailed description is omitted herein.

S240 단계에서, 이미지 검색 장치(100)는 타겟 이미지들 중 적어도 일부의 타겟 이미지에, 복수의 참조 이미지들이 가지고 있는 동일한 속성에 대응하는 속성 태그를 할당한다. 일 실시예에서, 이미지 검색 장치(100)는 대표 특징 벡터 대비 기 설정된 값 이하의 디스턴스를 갖는 특징 벡터에 대응하는 타겟 이미지에 동일 속성에 대응하는 속성 태그를 할당할 수 있다.In step S240, the image search apparatus 100 assigns an attribute tag corresponding to the same attribute of the plurality of reference images to at least some of the target images. In one embodiment, the image retrieval apparatus 100 may assign an attribute tag corresponding to the same attribute to a target image corresponding to a feature vector having a distance equal to or less than a predetermined value compared to a representative feature vector.

도 4는 타겟 이미지에 대한 속성 태그 할당 방법을 설명하기 위한 도면으로서, 도 4를 참조하면, 타겟 이미지들(410a, 420a, 430a)의 특징 벡터들(410b, 420b, 430b) 각각과 대표 특징 벡터의 비교 결과에 따라 제 1 타겟 이미지(410a) 및 제 2 타겟 이미지(420a)에 '지그재그 무늬'의 속성 태그(410c, 420c)가 할당될 수 있고, 제 3 타겟 이미지(430a)에는 '버건디 색상'의 속성 태그(430c)가 할당될 수 있다. 도 4는 하나의 타겟 이미지에 하나의 속성 태그가 할당되는 것으로 도시하고 있으나, 하나의 타겟 이미지에 복수의 속성 태그가 할당될 수도 있다.FIG. 4 is a diagram for explaining a method of assigning an attribute tag to a target image. Referring to FIG. 4, feature vectors 410b, 420b, and 430b of the target images 410a, 420a, and 430a, respectively, and representative feature vectors According to the result of comparison, the attribute tags 410c and 420c of the'zigzag pattern' may be assigned to the first target image 410a and the second target image 420a, and the'Burgundy color' may be assigned to the third target image 430a. The attribute tag 430c of 'may be assigned. 4 illustrates that one attribute tag is assigned to one target image, but a plurality of attribute tags may be assigned to one target image.

일 실시예에서 따르면, 상대적으로 적은 수의 참조 이미지들에 기초하여 다량의 타겟 이미지들에 대해 속성 태그를 할당할 수 있으므로, 관리자가 일일이 데이터베이스에 저장된 타겟 이미지들에 대해 속성 태그를 할당할 필요가 없어지게 된다.According to an embodiment, the attribute tag can be assigned to a large amount of target images based on a relatively small number of reference images, so an administrator needs to assign the attribute tag to target images stored in the database one by one. Will disappear.

또한, 일 실시예에 따르면, 새로운 속성의 개발, 유행 등으로 타겟 이미지들에 새로운 속성 태그를 할당할 필요가 발생한 경우에도 신속하게 새로운 속성 태그를 타겟 이미지들에 할당할 수 있다. 예를 들어, 관리자에 의해 새로운 속성을 갖는 적은 수의 참조 이미지들이 선택되면, 이미지 검색 장치(100)는 선택된 참조 이미지들의 참조 특징 벡터들로 생성 모델을 훈련시키고, 생성 모델에서 출력되는 대표 특징 벡터와 타겟 이미지들의 특징 벡터들의 비교 결과에 따라 타겟 이미지들에 대해 새로운 속성에 대응하는 속성 태그를 할당할 수 있다.In addition, according to an embodiment, even when a need to allocate a new attribute tag to target images occurs due to development, fashion, etc. of a new attribute, the new attribute tag can be quickly assigned to target images. For example, if a small number of reference images having new attributes are selected by the administrator, the image retrieval apparatus 100 trains a generation model with reference feature vectors of the selected reference images, and a representative feature vector output from the generation model. According to the comparison result of the feature vectors of the target images, an attribute tag corresponding to a new attribute may be assigned to the target images.

도 5는 사용자가 속성을 선택할 수 있게 하는 UI 화면(500)을 도시하는 도면이다.5 is a diagram illustrating a UI screen 500 that allows a user to select an attribute.

전술한 바와 같이, 데이터베이스에 저장된 타겟 이미지들에 대해 속성 태그가 할당되면, 사용자는 사용자 단말(10)의 디스플레이에 표시된 UI 화면(500)에서 특정 속성을 선택하는 것만으로 간편하게 이미지 검색을 할 수 있다.As described above, when the attribute tag is assigned to target images stored in the database, the user can easily search for an image by simply selecting a specific attribute on the UI screen 500 displayed on the display of the user terminal 10. .

도 5를 참조하면, 사용자 단말(10)의 디스플레이에 검색 화면(500)이 표시되면 사용자는 검색 화면(500)에서 특정 카테고리(예를 들어, 패턴)(520)에 속한 여러 속성들(530) 중 일부(예를 들어, 체크)를 선택함으로써, 해당 속성에 대응하는 속성 태그가 할당된 타겟 이미지들을 검색 결과로 수신할 수 있다.Referring to FIG. 5, when the search screen 500 is displayed on the display of the user terminal 10, the user searches the search screen 500 for various properties 530 belonging to a specific category (eg, pattern) 520. By selecting some (for example, check), target images to which attribute tags corresponding to corresponding attributes are assigned may be received as a search result.

이미지 검색 장치(100)는 데이터베이스에 저장된 타겟 이미지들 중 사용자 단말(10)에 의해 선택된 속성에 대응하는 태그가 할당된 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.The image search apparatus 100 may transmit the target image to which the tag corresponding to the attribute selected by the user terminal 10 among the target images stored in the database is assigned as a search result image to the user terminal 10.

구현예에 따라서, 사용자는 검색 화면(500)에 속성으로서 검색어(510)를 입력할 수도 있다. 이미지 검색 장치(100)는 데이터베이스에 저장된 타겟 이미지들 중 검색어(510)에 대응하는 속성과 관련된 속성 태그를 가지는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.Depending on the implementation, the user may input the search word 510 as an attribute on the search screen 500. The image search apparatus 100 may transmit a target image having an attribute tag related to an attribute corresponding to the search word 510 among target images stored in the database as the search result image to the user terminal 10.

일 실시예에서, 이미지 검색 장치(100)는 사용자 단말(10)에 의해 선택된 속성에 대응하는 대표 특징 벡터와, 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들을 비교하여 대표 특징 벡터와 동일하거나 유사한 특징 벡터에 대응하는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다. 이미지 검색 장치(100)는 대표 특징 벡터와의 사이에서 기 설정된 값 이하의 디스턴스를 갖는 특징 벡터에 대응하는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.In one embodiment, the image search apparatus 100 compares the feature vector corresponding to the attribute selected by the user terminal 10 with the feature vectors of target images stored in the database and compares the feature vector with the feature vector identical or similar to the representative feature vector. The corresponding target image may be transmitted to the user terminal 10 as a search result image. The image search apparatus 100 may transmit a target image corresponding to a feature vector having a distance equal to or less than a predetermined value between the representative feature vectors to the user terminal 10 as a search result image.

대표 특징 벡터와의 비교 대상이 되는 특징 벡터들은, 대표 특징 벡터를 출력하는 생성 모델을 훈련시키는데 이용된 참조 특징 벡터를 어느 종류의 머신 러닝 모델이 출력하였는지에 따라 달라질 수 있다. 예를 들어, 생성 모델을 훈련시키는데 이용한 참조 특징 벡터가 종속(dependant) 모델에 의해 출력된 경우, 비교 대상이 되는 타겟 이미지들의 특징 벡터들 역시 종속 모델에 의해 출력된 것일 수 있다. 종속 모델은 특정 카테고리의 속성에 대응하는 특징 벡터를 출력하도록 훈련된 머신 러닝 모델을 의미할 수 있다. 예를 들어, 종속 모델은 색상 카테고리 전용의 모델, 무늬 카테고리 전용의 모델 등을 포함할 수 있다. 관리자는 타겟 이미지들에 대하여 색상 속성의 태그를 할당하고자 하는 경우, 참조 이미지들을 색상 카테고리 전용 모델에 입력시켜 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하고, 획득한 참조 특징 벡터들로 생성 모델을 훈련시킬 수 있다.The feature vectors to be compared with the representative feature vectors may vary depending on what kind of machine learning model outputs the reference feature vectors used to train the generation model that outputs the representative feature vectors. For example, when a reference feature vector used to train a generation model is output by a dependent model, feature vectors of target images to be compared may also be output by a dependent model. The dependent model may refer to a machine learning model trained to output feature vectors corresponding to attributes of a specific category. For example, the dependent model may include a color category-only model, a pattern category-only model, and the like. When the administrator wants to assign a tag of a color attribute to target images, the reference images are input to the color category-specific model to obtain reference feature vectors corresponding to the reference images, and the generated model is generated from the obtained reference feature vectors. You can train.

또한, 생성 모델을 훈련시키는데 이용한 특징 벡터가 독립(independent) 모델에 의해 출력된 경우, 비교 대상이 되는 타겟 이미지들의 특징 벡터들 역시 독립 모델에 의해 출력된 것일 수 있다. 독립 모델은 속성의 카테고리와 무관한 특징 벡터를 출력하도록 훈련된 머신 러닝 모델을 의미할 수 있다.In addition, when the feature vector used to train the generation model is output by an independent model, feature vectors of target images to be compared may also be output by the independent model. The independent model may refer to a machine learning model trained to output a feature vector independent of the attribute category.

도 6은 일 실시예에 따른 이미지 검색 방법을 설명하기 위한 순서도이다.6 is a flowchart illustrating an image search method according to an embodiment.

S610 단계에서, 이미지 검색 장치(100)는 사용자 단말(10)로부터 복수의 검색 이미지를 수신한다. 이미지 검색 장치(100)는 사용자 단말(10)로부터 네트워크를 통해 복수의 검색 이미지를 직접 수신할 수도 있고, 사용자 단말(10)로부터 복수의 검색 이미지를 특정할 수 있는 정보(예를 들어, 복수의 검색 이미지들이 저장된 URL, 복수의 검색 이미지들의 식별 정보 등)를 수신하고, 수신된 정보에 기초하여 복수의 검색 이미지를 획득할 수도 있다.In step S610, the image search apparatus 100 receives a plurality of search images from the user terminal 10. The image search apparatus 100 may directly receive a plurality of search images from the user terminal 10 through a network, and information (eg, a plurality of search images) that can specify a plurality of search images from the user terminal 10. A URL in which search images are stored, identification information of a plurality of search images, and the like) may be received, and a plurality of search images may be obtained based on the received information.

S620 단계에서, 이미지 검색 장치(100)는 복수의 검색 이미지들에 대응하는 특징 벡터들을 획득한다. 이미지 검색 장치(100)는 머신 러닝 모델로 복수의 검색 이미지들을 입력시키고 머신 러닝 모델에서 출력되는 특징 벡터들을 획득할 수 있다. 상기 머신 러닝 모델은 종속 모델 또는 독립 모델일 수 있다.In step S620, the image search apparatus 100 acquires feature vectors corresponding to a plurality of search images. The image search apparatus 100 may input a plurality of search images into the machine learning model and obtain feature vectors output from the machine learning model. The machine learning model may be a dependent model or an independent model.

S630 단계에서, 이미지 검색 장치(100)는 복수의 검색 이미지들에 대응하는 특징 벡터들로 생성 모델을 훈련시킨다. 생성 모델이 GAN인 경우, GAN은 생성기(generator)와 구별기(discriminator)의 상호 작용을 기반으로 훈련 데이터와 유사한 데이터를 생성하도록 훈련될 수 있다.In step S630, the image search apparatus 100 trains the generation model with feature vectors corresponding to a plurality of search images. When the generation model is GAN, the GAN may be trained to generate data similar to the training data based on the interaction of the generator and the discriminator.

S640 단계에서, 이미지 검색 장치(100)는 복수의 검색 이미지들의 특징 벡터들로 훈련된 생성 모델에서 출력되는 대표 특징 벡터와, 타겟 이미지들의 특징 벡터들을 비교한다. 이미지 검색 장치(100)는 타겟 이미지들의 특징 벡터들 각각과 대표 특징 벡터 사이의 디스턴스를 산출할 수 있다.In step S640, the image search apparatus 100 compares the representative feature vectors output from the generation model trained with the feature vectors of the plurality of search images and the feature vectors of the target images. The image search apparatus 100 may calculate the distance between each of the feature vectors of the target images and the representative feature vector.

전술한 바와 같이, 대표 특징 벡터와의 비교 대상이 되는 특징 벡터들은, 대표 특징 벡터를 출력하는 생성 모델을 훈련시키는데 이용된 특징 벡터가 어느 종류의 머신 러닝 모델에 의해 출력되었는지에 따라 달라질 수 있다.As described above, the feature vectors to be compared with the representative feature vectors may vary depending on what kind of machine learning model the feature vectors used to train the generation model that outputs the representative feature vectors.

S650 단계에서, 이미지 검색 장치(100)는 데이터베이스에 저장된 타겟 이미지들 중 복수의 검색 이미지들에 대응하는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송한다.In step S650, the image search apparatus 100 transmits a target image corresponding to a plurality of search images among target images stored in the database to the user terminal 10 as a search result image.

이미지 검색 장치(100)는 대표 특징 벡터와의 사이에서 기 설정된 값 이하의 디스턴스를 갖는 특징 벡터에 대응하는 타겟 이미지를 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.The image search apparatus 100 may transmit a target image corresponding to a feature vector having a distance equal to or less than a predetermined value between the representative feature vectors to the user terminal 10 as a search result image.

도 6에 도시된 실시예에 따르면, 예를 들어, 사용자가 자신의 취향에 부합하는 복수의 검색 이미지들을 선택하면, 이미지 검색 장치(100)는 사용자의 취향에 부합하는 검색 이미지들 이외의 다른 이미지들을 검색 결과로 제공할 수 있게 된다.According to the embodiment illustrated in FIG. 6, for example, when a user selects a plurality of search images matching his/her preference, the image search apparatus 100 may image other than search images matching the user's preference You can provide them as search results.

도 7은 다른 실시예에 따른 이미지 검색 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating an image search method according to another embodiment.

S710 단계에서, 이미지 검색 장치(100)는 사용자 단말(10)로부터 검색 이미지를 수신한다. 이미지 검색 장치(100)는 사용자 단말(10)로부터 네트워크를 통해 검색 이미지를 직접 수신할 수도 있고, 사용자 단말(10)로부터 검색 이미지를 특정할 수 있는 정보(예를 들어, 검색 이미지가 저장된 URL, 검색 이미지의 식별 정보 등)를 수신하고, 수신된 정보에 기초하여 검색 이미지를 획득할 수도 있다.In step S710, the image search apparatus 100 receives the search image from the user terminal 10. The image search apparatus 100 may directly receive a search image from the user terminal 10 through a network, or information that can specify a search image from the user terminal 10 (eg, a URL in which the search image is stored, The identification information of the search image, etc.) may be received, and the search image may be obtained based on the received information.

S720 단계에서, 이미지 검색 장치(100)는 검색 이미지의 속성 별 특징 벡터를 획득한다. 이미지 검색 장치(100)는 복수의 종속 모델 각각으로 검색 이미지를 입력시켜 복수의 종속 모델로부터 출력되는 특징 벡터들을 획득할 수 있다. 예를 들어, 도 8에 도시된 바와 같이, 검색 이미지(810)를 제 1 종속 모델(821)로 입력시켜 제 1 속성(예를 들어, 색상 속성)에 대응하는 특징 벡터(831)를 획득하고, 검색 이미지(810)를 제 2 종속 모델(823)로 입력시켜 제 2 속성(예를 들어, 무늬 속성)에 대응하는 특징 벡터(833)를 획득하고, 검색 이미지(810)를 제 3 종속 모델(825)로 입력시켜 제 3 속성(예를 들어, 형상 속성)에 대응하는 특징 벡터(835)를 획득할 수 있다.In step S720, the image search apparatus 100 obtains a feature vector for each attribute of the search image. The image search apparatus 100 may obtain feature vectors output from a plurality of dependent models by inputting a search image into each of the plurality of dependent models. For example, as shown in FIG. 8, the search image 810 is input to the first dependent model 821 to obtain a feature vector 831 corresponding to a first attribute (eg, color attribute), and , By inputting the search image 810 as the second dependent model 823 to obtain a feature vector 833 corresponding to the second attribute (eg, pattern attribute), and obtaining the search image 810 as the third dependent model It is possible to obtain a feature vector 835 corresponding to a third attribute (eg, shape attribute) by inputting it at 825.

일 실시예에서, 사용자 단말(10)로부터 수신된 검색 이미지가 2개인 경우, 어느 하나의 검색 이미지를 제 1 종속 모델(821)에 입력시켜 제 1 속성에 대응하는 특징 벡터를 획득하고, 다른 하나의 검색 이미지를 제 2 종속 모델(823) 및 제 3 종속 모델(825)에 입력시켜 제 2 속성에 대응하는 특징 벡터와 제 3 속성에 대응하는 특징 벡터를 획득할 수도 있다.In one embodiment, when there are two search images received from the user terminal 10, one of the search images is input to the first dependent model 821 to obtain a feature vector corresponding to the first attribute, and the other one The search images of can be input to the second dependent model 823 and the third dependent model 825 to obtain a feature vector corresponding to the second attribute and a feature vector corresponding to the third attribute.

다른 실시예에서, 사용자 단말(10)로부터 수신된 검색 이미지가 3개인 경우, 어느 하나의 검색 이미지를 제 1 종속 모델(821)에 입력시켜 제 1 속성에 대응하는 특징 벡터를 획득하고, 다른 하나의 검색 이미지를 제 2 종속 모델(823)에 입력시켜 제 2 속성에 대응하는 특징 벡터를 획득하고, 또 다른 하나의 검색 이미지를 제 3 종속 모델(825)에 입력시켜 제 3 속성에 대응하는 특징 벡터를 획득할 수도 있다. In another embodiment, if there are three search images received from the user terminal 10, one of the search images is input to the first dependent model 821 to obtain a feature vector corresponding to the first attribute, and the other one A feature image corresponding to the second attribute is obtained by inputting the search image of the second dependency model 823, and another feature of the search image is input to the third dependency model 825 to correspond to the third attribute. Vectors can also be obtained.

즉, 이미지 검색 장치(100)는 복수의 검색 이미지들에 대응하는 특징 벡터를 조합하여 속성 별 특징 벡터를 획득할 수 있다.That is, the image search apparatus 100 may obtain a feature vector for each attribute by combining feature vectors corresponding to a plurality of search images.

도 8은 속성별 특징 벡터를 추출하기 위해 3개의 종속 모델(821, 823, 825)이 이용되는 것으로 도시하고 있으나, 이는 하나의 예시일 뿐이고, 검색 이미지에서 다양한 개수의 속성들의 특징 벡터를 추출하기 위한 다양한 개수의 종속 모델이 이용될 수 있다.8 shows that three dependent models 821, 823, and 825 are used to extract feature vectors for each attribute, but this is only an example, and extracting feature vectors of various numbers of attributes from a search image Various number of dependent models for this can be used.

다시 도 7을 참조하면, S730 단계에서, 이미지 검색 장치(100)는 속성 별 특징 벡터 중 사용자 단말(10)에 의해 선택된 속성의 특징 벡터를, 사용자 단말(10)에 의해 선택된 속성에 대응하는 대표 특징 벡터로 변경한다. 사용자는 대표 특징 벡터로 변경하고자 하는 속성을 사용자 단말(10)을 통해 선택할 수 있다. 사용자 단말(10)은 검색 이미지에 포함된 오브젝트들의 속성들 중 변경하고자 하는 속성(예를 들어, 색상 속성)과, 변경하고자 하는 속성을 대신할 다른 속성을 선택할 수 있다. 이에 대응하여 이미지 검색 장치(100)는 속성 별 특징 벡터 중 사용자 단말(10)에 의해 선택된 속성의 특징 벡터를, 다른 속성에 대응하는 대표 특징 벡터로 변경할 수 있다.Referring back to FIG. 7, in step S730, the image retrieval apparatus 100 represents a feature vector of the attribute selected by the user terminal 10 among the feature vectors for each attribute, and a representative corresponding to the attribute selected by the user terminal 10 Change to a feature vector. The user can select an attribute to be changed to a representative feature vector through the user terminal 10. The user terminal 10 may select an attribute (eg, color attribute) to be changed among attributes of objects included in the search image and other attributes to replace the attribute to be changed. In response to this, the image search apparatus 100 may change the feature vector of the attribute selected by the user terminal 10 among the feature vectors for each attribute to a representative feature vector corresponding to other attributes.

예를 들어, 도 9에 도시된 바와 같이, 제 1 속성의 특징 벡터(831), 제 2 속성의 특징 벡터(833) 및 제 3 속성의 특징 벡터(835) 중, 사용자 단말(10)에 의해 선택된 제 2 속성의 특징 벡터(833)를 대표 특징 벡터(933)로 교환할 수 있다. 여기서, 대표 특징 벡터(933)는 제 2 속성 전용의 종속 모델(823)에서 출력되는 참조 특징 벡터들로 훈련된 생성 모델에서 출력된 특징 벡터일 수 있다.For example, as illustrated in FIG. 9, among the feature vector 831 of the first attribute, the feature vector 833 of the second attribute, and the feature vector 835 of the third attribute, by the user terminal 10 The selected feature vector 833 of the second attribute can be exchanged for a representative feature vector 933. Here, the representative feature vector 933 may be a feature vector output from a generation model trained as reference feature vectors output from the second attribute-only dependent model 823.

S740 단계에서, 이미지 검색 장치(100)는 대표 특징 벡터를 포함하는 속성 별 특징 벡터와 데이터베이스에 저장된 타겟 이미지들의 속성 별 특징 벡터를 비교한다. 여기서, 데이터베이스에 저장된 타겟 이미지들의 속성 별 특징 벡터는 종속 모델에서 출력된 것일 수 있다.In operation S740, the image search apparatus 100 compares a feature vector for each attribute including a representative feature vector and a feature vector for each attribute of target images stored in the database. Here, the feature vector for each attribute of target images stored in the database may be output from a dependent model.

일 실시예에서, 이미지 검색 장치(100)는 도 10에 도시된 바와 같이, 대표 특징 벡터(933)를 포함하는 속성 별 특징 벡터(831, 933, 835)와 데이터베이스에 저장된 타겟 이미지들의 속성 별 특징 벡터(1031, 1033, 1035)를 비교하는데 있어, 동일 카테고리에 속한 속성의 특징 벡터끼리 비교하여 속성별 디스턴스를 획득할 수 있다. 이미지 검색 장치(100)는 타겟 이미지들의 속성 별 특징 벡터(1031, 1033, 1035) 각각에 대해, 제 1 속성에 대응하는 디스턴스, 제 2 속성에 대응하는 디스턴스 및 제 3 속성에 대응하는 디스턴스를 산출할 수 있다.In one embodiment, the image retrieval apparatus 100, as shown in FIG. 10, feature-specific feature vectors 831, 933, and 835 including representative feature vectors 933 and feature-specific features of target images stored in the database In comparing the vectors 1031, 1033, and 1035, it is possible to obtain a distance for each attribute by comparing feature vectors of attributes belonging to the same category. The image search apparatus 100 calculates a distance corresponding to the first attribute, a distance corresponding to the second attribute, and a distance corresponding to the third attribute, for each feature vector 1031, 1033, and 1035 for each attribute of the target images can do.

S750 단계에서, 이미지 검색 장치(100)는 데이터베이스에 저장된 타겟 이미지들 중 사용자 단말(10)로 전송할 타겟 이미지를 상기 산출된 속성 별 디스턴스에 기초하여 결정할 수 있다.In step S750, the image search apparatus 100 may determine a target image to be transmitted to the user terminal 10 among target images stored in the database based on the calculated distance for each attribute.

이미지 검색 장치(100)는 속성 별 디스턴스를 조합한 결과에 기초하여 데이터베이스에 저장된 타겟 이미지들 중 대표 특징 벡터를 포함하는 속성 별 특징 벡터와 동일 및 유사한 타겟 이미지를 결정할 수 있다. 일 예에서, 이미지 검색 장치(100)는 속성 별 디스턴스를 조합한 결과 값이 큰 순서대로 소정 개수의 타겟 이미지를 선택할 수 있고, 또는, 속성 별 디스턴스를 조합한 결과 값이 기 설정된 값 이상인 타겟 이미지를 선택할 수도 있다.The image retrieval apparatus 100 may determine a target image identical and similar to the feature vector for each attribute including a representative feature vector among target images stored in the database based on a result of combining the distance for each attribute. In one example, the image retrieval apparatus 100 may select a predetermined number of target images in the order in which the result values of the combination of distances for each attribute are large, or, as a result of combining the distances for each attribute, a target image having a value greater than or equal to a preset value You can also choose

S760 단계에서, 이미지 검색 장치(100)는 S750 단계에서 선택된 타겟 이미지를 사용자 단말(10)로 전송한다.In step S760, the image search apparatus 100 transmits the target image selected in step S750 to the user terminal 10.

도 7에 도시된 실시예에 따르면, 사용자는 검색 이미지를 이미지 검색 장치(100)로 전송하고, 검색 이미지에 포함된 오브젝트의 특정 속성을 다른 속성으로 변경함으로써, 변경된 속성에 대응하는 검색 결과를 수신할 수 있다. 예를 들어, 사용자는 빨간색 및 줄무늬의 원피스를 포함하는 검색 이미지를 이미지 검색 장치(100)로 전송하고, 빨간색 대신 파란색을 선택하여 파란색 및 줄무늬의 원피스를 포함하는 이미지들을 검색 결과로 받아볼 수 있는 것이다.According to the embodiment shown in FIG. 7, the user transmits a search image to the image search apparatus 100 and receives a search result corresponding to the changed attribute by changing a specific attribute of an object included in the search image to another attribute can do. For example, the user may transmit a search image including red and striped dresses to the image search apparatus 100, and select blue instead of red to receive images containing blue and striped dresses as search results. will be.

도 11은 복수의 오브젝트(1110, 1130, 1150)를 포함하는 검색 이미지(1100)를 도시하는 예시적인 도면이다.11 is an exemplary diagram illustrating a search image 1100 including a plurality of objects 1110, 1130, and 1150.

일 실시예에서, 사용자 단말(10)로부터 이미지 검색 장치(100)로 전송되는 검색 이미지(1100)는 도 11에 도시된 것과 같이 복수의 오브젝트(1110, 1130, 1150)를 포함할 수도 있다. 도 11에서 복수의 오브젝트(1110, 1130, 1150)는 상의 오브젝트(1110), 하의 오브젝트(1130) 및 가방 오브젝트(1150)를 포함한다. 이 경우, 이미지 검색 장치(100)는 복수의 오브젝트(1110, 1130, 1150) 각각에 대응하는 부분 이미지들을 크롭핑(cropping)하여 종속 모델로 입력시키고, 종속 모델에서 출력되는 각각의 오브젝트의 속성별 특징 벡터를 획득할 수 있다. 예를 들어, 이미지 검색 장치(100)는 도 11에 도시된 검색 이미지(1100)로부터 상의 오브젝트(1110)의 속성 별 특징 벡터, 하의 오브젝트(1130)의 속성 별 특징 벡터 및 가방 오브젝트(1150)의 속성 별 특징 벡터를 획득할 수 있다.In one embodiment, the search image 1100 transmitted from the user terminal 10 to the image search apparatus 100 may include a plurality of objects 1110, 1130, and 1150 as shown in FIG. In FIG. 11, the plurality of objects 1110, 1130, and 1150 include an upper object 1110, a lower object 1130, and a bag object 1150. In this case, the image search apparatus 100 crops partial images corresponding to each of the plurality of objects 1110, 1130, and 1150, inputs them to the dependent model, and the properties of each object output from the dependent model Feature vectors can be obtained. For example, the image retrieval apparatus 100 may obtain a feature vector for each attribute of the upper object 1110, a feature vector for each attribute of the lower object 1130, and a bag object 1150 from the search image 1100 illustrated in FIG. 11. A feature vector for each attribute can be obtained.

이미지 검색 장치(100)는 검색 이미지(1100)에 포함된 복수의 오브젝트(1110, 1130, 1150) 각각의 속성 별 특징 벡터를 포함하는 특징 벡터 시퀀스에서, 사용자 단말(10)에 의해 선택된 오브젝트의 특정 속성의 특징 벡터를, 사용자 단말(10)이 선택한 속성에 대응하는 대표 특징 벡터로 변경할 수 있다. 예를 들어, 사용자가 도 11에 도시된 검색 이미지(1100)에서 가방 오브젝트(1150)를 선택하고, 가방의 색상 속성을 다른 색상으로 변경하고자 하는 경우, 이미지 검색 장치(100)는 가방 오브젝트(1150)의 색상 속성의 특징 벡터 대신 사용자가 변경하고자 하는 색상에 대응하는 대표 특징 벡터를 특징 벡터 시퀀스에 포함시킬 수 있는 것이다.The image retrieval apparatus 100 identifies the object selected by the user terminal 10 in a feature vector sequence including a feature vector for each attribute of a plurality of objects 1110, 1130, and 1150 included in the search image 1100 The feature vector of the attribute may be changed to a representative feature vector corresponding to the attribute selected by the user terminal 10. For example, when the user selects the bag object 1150 from the search image 1100 illustrated in FIG. 11 and wants to change the color attribute of the bag to another color, the image search device 100 displays the bag object 1150 ), a representative feature vector corresponding to a color to be changed by a user can be included in the feature vector sequence instead of the feature vector of the color attribute.

예를 들어, 도 12에 도시된 바와 같이, 제 1 오브젝트의 속성 별 특징 벡터(1210), 제 2 오브젝트의 속성 별 특징 벡터(1220) 및 제 3 오브젝트의 속성 별 특징 벡터(1230) 중 제 3 오브젝트(1230)의 제 1 속성의 특징 벡터(1231)를 대표 특징 벡터(1241)로 교환할 수 있다.For example, as illustrated in FIG. 12, the third of the feature vector 1210 for each attribute of the first object, the feature vector 1220 for each attribute of the second object, and the feature vector 1230 for each attribute of the third object. The feature vector 1231 of the first attribute of the object 1230 may be exchanged for a representative feature vector 1241.

이미지 검색 장치(100)는 대표 특징 벡터(1241)를 포함하는 특징 벡터 시퀀스(1250)와, 데이터베이스에 저장된 타겟 이미지들의 특징 벡터 시퀀스를 비교하여, 검색 이미지(1100)에 대응하는 타겟 이미지를 결정할 수 있다. 이미지 검색 장치(100)는 대표 특징 벡터(1241)를 포함하는 특징 벡터 시퀀스(1250)와 타겟 이미지들의 특징 벡터 시퀀스를 비교하는데 있어, 동일 오브젝트의 동일 카테고리의 속성의 특징 벡터들끼리 비교하여, 각 오브젝트에 대한 속성별 디스턴스를 산출하고, 산출된 디스턴스를 기반으로 검색 결과에 해당하는 타겟 이미지를 결정할 수 있다. 일 실시예에서, 이미지 검색 장치(100)는 대표 특징 벡터(1241)를 포함하는 특징 벡터 시퀀스(1250)와 타겟 이미지들의 특징 벡터 시퀀스를 비교한 결과 산출된 각 오브젝트에 대한 속성별 디스턴스를 조합하고, 조합 결과 값에 기초하여 검색 결과에 해당하는 타겟 이미지를 결정할 수 있다.The image search apparatus 100 may determine a target image corresponding to the search image 1100 by comparing the feature vector sequence 1250 including the representative feature vector 1241 with the feature vector sequences of target images stored in the database. have. In comparing the feature vector sequence 1250 including the representative feature vector 1241 and the feature vector sequence of target images, the image search apparatus 100 compares feature vectors of attributes of the same category of the same object, and compares each The distance for each attribute of the object may be calculated, and a target image corresponding to the search result may be determined based on the calculated distance. In one embodiment, the image retrieval apparatus 100 combines the feature vector sequence 1250 including the representative feature vector 1241 and the feature-specific distance for each object calculated as a result of comparing the feature vector sequence of the target images , A target image corresponding to a search result may be determined based on the combination result value.

일 실시예에서, 이미지 검색 장치(100)는 검색 결과로 선택된 타겟 이미지를 사용자 단말(10)로 전송할 수 있다.In one embodiment, the image search apparatus 100 may transmit the target image selected as the search result to the user terminal 10.

다른 실시예에서, 이미지 검색 장치(100)는 검색 결과로 선택된 타겟 이미지 내에서 사용자 단말(10)이 선택한 오브젝트에 대응하는 부분 이미지들을 추출하고, 추출된 부분 이미지들을 검색 이미지에 합성하여 검색 결과로서 사용자 단말(10)로 전송할 수도 있다. 예를 들어, 도 11 및 도 13에 도시된 바와 같이, 이미지 검색 장치(100)는 검색 이미지(1100)에서 가방 오브젝트(1150)를 포함하는 부분을, 타겟 이미지 내 가방 오브젝트를 포함하는 부분 이미지(1311, 1321, 1331)로 교환한 합성 이미지들(1310, 1320, 1330)을 검색 결과 이미지로서 사용자 단말(10)로 전송할 수 있다.In another embodiment, the image search apparatus 100 extracts partial images corresponding to the object selected by the user terminal 10 from the target image selected as the search result, and synthesizes the extracted partial images into the search image as a search result It can also be transmitted to the user terminal 10. For example, as illustrated in FIGS. 11 and 13, the image search apparatus 100 may include a portion including the bag object 1150 in the search image 1100 and a partial image including the bag object in the target image ( 1311, 1321, and 1331, the exchanged composite images 1310, 1320, and 1330 may be transmitted to the user terminal 10 as a search result image.

사용자는 복수의 오브젝트를 포함하는 검색 이미지를 이미지 검색 장치(100)에 전송하여, 자신의 취향에 부합하는 코디 스타일을 검색 결과를 통해 쉽게 파악할 수 있게 된다.The user transmits a search image including a plurality of objects to the image search apparatus 100, so that a coordination style that matches his or her preference can be easily identified through the search results.

도 14는 일 실시예에 따른 이미지 검색 장치(100)의 구성을 도시하는 블록도이다.14 is a block diagram showing the configuration of an image search apparatus 100 according to an embodiment.

도 14를 참조하면, 일 실시예에 다른 이미지 검색 장치(100)는 메모리(1410), 데이터베이스(1430), 통신부(1450) 및 프로세서(1470)를 포함할 수 있다. Referring to FIG. 14, an image retrieval apparatus 100 according to an embodiment may include a memory 1410, a database 1430, a communication unit 1450, and a processor 1470.

메모리(1410)는 적어도 하나의 프로그램을 저장한다. 메모리(1410), 데이터베이스(1430), 통신부(1450) 및 프로세서(1470)는 적어도 하나의 프로그램에 따라 동작할 수 있다. 또한, 메모리(1410)는 대표 특징 벡터를 생성하기 위한 생성 모델을 더 저장할 수 있다. 또한, 메모리(1410)는 특징 벡터의 추출을 위한 머신 러닝 모델을 더 저장할 수 있다.The memory 1410 stores at least one program. The memory 1410, the database 1430, the communication unit 1450, and the processor 1470 may operate according to at least one program. Also, the memory 1410 may further store a generation model for generating a representative feature vector. Also, the memory 1410 may further store a machine learning model for extraction of feature vectors.

데이터베이스(1430)는 타겟 이미지들 및 타겟 이미지들의 특징 벡터들을 저장한다. 타겟 이미지들의 특징 벡터들은 머신 러닝 모델에 의해 출력된 것일 수 있다. 예를 들어, 타겟 이미지들의 특징 벡터들은 종속 모델에 의해 출력된 것을 포함할 수 있고, 독립 모델에 의해 출력된 것을 포함할 수도 있다. 또한, 복수의 오브젝트를 포함하는 타겟 이미지에 대해, 상기 특징 벡터는 각각의 오브젝트의 속성별 특징 벡터를 포함하는 특징 벡터 시퀀스를 포함할 수도 있다. 일 실시예에서, 데이터베이스(1430)는 하드디스크(HDD), SSD 등의 저장 장치로 이루어질 수 있다.The database 1430 stores target images and feature vectors of target images. The feature vectors of the target images may be output by a machine learning model. For example, feature vectors of target images may include output by a dependent model, and may include output by a independent model. In addition, for a target image including a plurality of objects, the feature vector may include a feature vector sequence including feature vectors for each attribute of each object. In one embodiment, the database 1430 may be formed of a storage device such as a hard disk (HDD) or SSD.

통신부(1450)는 사용자 단말(10)과 데이터 송수신을 한다. 통신부(1450)는 사용자 단말(10)로부터 검색 조건을 수신하고, 검색 조건에 대응하는 검색 결과, 예를 들어, 검색 결과 이미지를 사용자 단말(10)로 전송한다.The communication unit 1450 transmits and receives data to and from the user terminal 10. The communication unit 1450 receives a search condition from the user terminal 10 and transmits a search result corresponding to the search condition, for example, a search result image to the user terminal 10.

프로세서(1470)는 동일한 속성을 가지거나 동일한 속성 태그가 할당된 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하고, 참조 특징 벡터들에 기초하여 훈련된 생성 모델로부터 동일한 속성 내지 동일한 속성 태그에 대응하는 대표 특징 벡터를 획득하고, 타겟 이미지들의 특징 벡터들과 대표 특징 벡터를 비교하여, 타겟 이미지들 중 적어도 일부의 타겟 이미지에 동일한 속성에 대응하는 속성 태그를 할당할 수 있다.The processor 1470 obtains reference feature vectors corresponding to a plurality of reference images having the same attribute or assigned the same attribute tag, and from the generated model trained based on the reference feature vectors to the same attribute to the same attribute tag An attribute tag corresponding to the same attribute may be assigned to a target image of at least some of the target images by obtaining a corresponding representative feature vector and comparing the feature vectors of the target images with the representative feature vector.

또한, 프로세서(1470)는 사용자 단말(10)로부터 수신된 검색 조건에 대응하는 타겟 이미지를 선택할 수 있다. 프로세서(1470)는 사용자 단말(10)이 선택 또는 입력한 속성에 대응하는 속성 태그가 할당된 타겟 이미지를 선택하거나, 사용자 단말(10)이 선택 또는 입력한 속성의 대표 특징 벡터와 동일/유사한 특징 벡터를 가진 타겟 이미지를 선택할 수 있다.Further, the processor 1470 may select a target image corresponding to the search condition received from the user terminal 10. The processor 1470 selects a target image to which an attribute tag corresponding to the attribute selected or input by the user terminal 10 is allocated, or a feature similar to/similar to a representative feature vector of the attribute selected or input by the user terminal 10 You can select a target image with a vector.

또한, 프로세서(1470)는 사용자 단말(10)로부터 수신된 복수의 검색 이미지에 대응하는 타겟 이미지를 선택할 수 있다. 또한, 프로세서(1470)는 사용자 단말(10)로부터 수신된 검색 이미지의 속성 별 특징 벡터 중 일부를 다른 속성의 대표 특징 벡터로 치환하고, 치환된 결과에 기초하여 타겟 이미지를 선택할 수도 있다.Further, the processor 1470 may select a target image corresponding to a plurality of search images received from the user terminal 10. Also, the processor 1470 may replace some of the feature vectors for each attribute of the search image received from the user terminal 10 with representative feature vectors of other attributes, and select a target image based on the substituted results.

한편, 상술한 본 개시의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 작성된 프로그램은 매체에 저장될 수 있다.Meanwhile, the above-described embodiments of the present disclosure may be written as a program executable on a computer, and the created program may be stored on a medium.

매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The medium may be a computer that continuously stores executable programs or may be temporarily stored for execution or download. In addition, the medium may be various recording means or storage means in the form of a combination of single or several hardware, and is not limited to a medium directly connected to a computer system, but may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks, And program instructions including ROM, RAM, flash memory, and the like. Also, examples of other media include an application store for distributing applications, a site for distributing or distributing various software, and a recording medium or storage medium managed by a server.

이상, 본 개시의 기술적 사상을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 개시의 기술적 사상은 상기 실시예들에 한정되지 않고, 본 개시의 기술적 사상의 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러 가지 변형 및 변경이 가능하다.As described above, the technical idea of the present disclosure has been described in detail with reference to preferred embodiments, but the technical idea of the present disclosure is not limited to the above embodiments and has ordinary knowledge in the art within the scope of the technical idea of the present disclosure. Various modifications and changes are possible by the ruler.

100: 이미지 검색 장치
1410: 메모리
1430: 데이터베이스
1450: 통신부
1470: 프로세서
100: image search device
1410: memory
1430: database
1450: Communication Department
1470: processor

Claims (13)

이미지 검색 장치에 의한 이미지 검색 방법에 있어서,
동일한 속성을 포함하는 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하는 단계;
상기 획득한 참조 특징 벡터들에 기초하여 훈련된 생성 모델로부터 상기 동일한 속성에 대응하는 대표 특징 벡터를 획득하는 단계; 및
데이터베이스에 저장된 타겟 이미지들의 특징 벡터들과 상기 대표 특징 벡터를 비교하여, 상기 타겟 이미지들 중 적어도 일부의 타겟 이미지에 상기 동일한 속성에 대응하는 속성 태그를 할당하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
In the image search method by the image search device,
Obtaining reference feature vectors corresponding to a plurality of reference images including the same attribute;
Obtaining a representative feature vector corresponding to the same attribute from a trained generation model based on the obtained reference feature vectors; And
And comparing the feature vectors of target images stored in a database with the representative feature vector, and assigning an attribute tag corresponding to the same attribute to a target image of at least some of the target images. Way.
제1항에 있어서,
상기 이미지 검색 방법은,
사용자 단말로부터 속성을 선택받는 단계;
상기 타겟 이미지들 중 상기 선택받은 속성에 대응하는 속성 태그가 할당된 타겟 이미지를 결정하는 단계; 및
상기 결정된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 더 포함하는 것을 특징으로 하는 이미지 검색 방법.
According to claim 1,
The image search method,
Selecting an attribute from a user terminal;
Determining a target image to which an attribute tag corresponding to the selected attribute is assigned among the target images; And
And transmitting the determined target image to the user terminal.
제1항에 있어서,
상기 이미지 검색 방법은,
사용자 단말로부터 속성을 선택받는 단계;
상기 선택된 속성에 대응하는 대표 특징 벡터와 상기 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들을 비교하는 단계; 및
상기 타겟 이미지들 중 상기 비교 결과에 기초하여 선택된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 더 포함하는 것을 특징으로 하는 이미지 검색 방법.
According to claim 1,
The image search method,
Selecting an attribute from a user terminal;
Comparing feature vectors of target images stored in the database with a representative feature vector corresponding to the selected attribute; And
And transmitting the target image selected based on the comparison result among the target images to the user terminal.
제3항에 있어서,
상기 비교하는 단계는,
상기 사용자 단말이 선택한 속성에 대응하는 대표 특징 벡터가, 종속 모델로부터 출력되는 참조 특징 벡터들에 기초하여 훈련된 상기 생성 모델로부터 출력된 것인 경우, 상기 선택된 속성에 대응하는 대표 특징 벡터와 상기 종속 모델로부터 출력된 상기 타겟 이미지들의 특징 벡터들을 비교하고,
상기 사용자 단말이 선택한 속성에 대응하는 대표 특징 벡터가, 독립 모델로부터 출력되는 참조 특징 벡터들에 기초하여 훈련된 상기 생성 모델로부터 출력된 것인 경우, 상기 선택된 속성에 대응하는 대표 특징 벡터와 상기 독립 모델로부터 출력된 상기 타겟 이미지들의 특징 벡터들을 비교하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
According to claim 3,
The comparing step,
When the representative feature vector corresponding to the attribute selected by the user terminal is output from the generated model trained based on reference feature vectors output from the dependent model, the representative feature vector corresponding to the selected attribute and the dependent Compare feature vectors of the target images output from the model,
When the representative feature vector corresponding to the attribute selected by the user terminal is output from the generated model trained based on the reference feature vectors output from the independent model, the representative feature vector corresponding to the selected attribute and the independent And comparing feature vectors of the target images output from a model.
제1항에 있어서,
상기 이미지 검색 방법은,
사용자 단말로부터 검색 이미지를 수신하는 단계;
상기 검색 이미지의 속성 별 특징 벡터를 획득하는 단계;
상기 속성 별 특징 벡터 중 상기 사용자 단말이 선택한 속성의 특징 벡터를, 상기 사용자 단말이 선택한 속성에 대응하는 대표 특징 벡터로 변경하는 단계;
상기 대표 특징 벡터를 포함하는 속성 별 특징 벡터와, 상기 데이터베이스에 저장된 타겟 이미지들의 속성 별 특징 벡터를 비교하는 단계; 및
상기 데이터베이스에 저장된 타겟 이미지들 중 상기 비교 결과에 기초하여 선택된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
According to claim 1,
The image search method,
Receiving a search image from a user terminal;
Obtaining a feature vector for each attribute of the search image;
Changing a feature vector of the attribute selected by the user terminal among the feature vectors for each attribute to a representative feature vector corresponding to the attribute selected by the user terminal;
Comparing a feature vector for each attribute including the representative feature vector and a feature vector for each attribute of target images stored in the database; And
And transmitting the target image selected based on the comparison result among the target images stored in the database to the user terminal.
제5항에 있어서,
상기 비교하는 단계는,
상기 대표 특징 벡터를 포함하는 속성 별 특징 벡터와 상기 타겟 이미지들의 속성 별 특징 벡터를 동일 카테고리의 속성끼리 비교하여 속성별 디스턴스를 획득하는 단계; 및
상기 획득한 속성별 디스턴스들의 크기를 조합한 결과에 따라 상기 데이터베이스에 저장된 타겟 이미지들 중에서 상기 사용자 단말로 전송할 타겟 이미지를 선택하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
The method of claim 5,
The comparing step,
Obtaining a distance for each attribute by comparing the feature vector for each attribute including the representative feature vector and the feature vector for each attribute of the target images between attributes of the same category; And
And selecting a target image to be transmitted to the user terminal from among target images stored in the database according to a result of combining the sizes of the distances for each attribute.
제1항에 있어서,
상기 이미지 검색 방법은,
사용자 단말로부터 복수의 오브젝트를 포함하는 검색 이미지를 수신하는 단계;
상기 검색 이미지에 포함된 복수의 오브젝트 각각의 속성 별 특징 벡터를 포함하는 특징 벡터 시퀀스를 획득하는 단계;
상기 복수의 오브젝트 중 상기 사용자 단말로부터 오브젝트를 선택받는 단계;
상기 선택된 오브젝트의 속성 별 특징 벡터 중 상기 사용자 단말이 선택한 속성의 특징 벡터를, 상기 사용자 단말이 선택한 속성에 대응하는 대표 특징 벡터로 변경하는 단계;
상기 대표 특징 벡터를 포함하는 특징 벡터 시퀀스와 상기 데이터베이스에 저장된 타겟 이미지들의 특징 벡터 시퀀스를 비교하는 단계; 및
상기 데이터베이스에 저장된 타겟 이미지들 중 상기 비교 결과에 기초하여 선택된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 더 포함하는 것을 특징으로 하는 이미지 검색 방법.
According to claim 1,
The image search method,
Receiving a search image including a plurality of objects from a user terminal;
Obtaining a feature vector sequence including a feature vector for each attribute of a plurality of objects included in the search image;
Selecting an object from the user terminal among the plurality of objects;
Changing a feature vector of the attribute selected by the user terminal among the feature vectors for each attribute of the selected object, to a representative feature vector corresponding to the attribute selected by the user terminal;
Comparing a feature vector sequence including the representative feature vector with a feature vector sequence of target images stored in the database; And
And transmitting the target image selected based on the comparison result among the target images stored in the database to the user terminal.
제7항에 있어서,
상기 선택된 타겟 이미지를 상기 사용자 단말로 전송하는 단계는,
상기 선택된 타겟 이미지들 각각에 포함된 복수의 오브젝트 중 상기 사용자 단말이 선택한 오브젝트에 대응하는 부분 이미지들을 상기 검색 이미지에 합성하는 단계; 및
상기 부분 이미지들이 합성된 검색 이미지들을 검색 결과로서 상기 사용자 단말로 전송하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
The method of claim 7,
The step of transmitting the selected target image to the user terminal,
Synthesizing partial images corresponding to the object selected by the user terminal among the plurality of objects included in each of the selected target images into the search image; And
And transmitting the search images in which the partial images are synthesized as a search result to the user terminal.
이미지 검색 장치에 의한 이미지 검색 방법에 있어서,
사용자 단말로부터 복수의 검색 이미지들을 수신하는 단계;
상기 복수의 검색 이미지들에 대응하는 특징 벡터들을 획득하는 단계;
상기 획득한 특징 벡터들로 생성 모델을 훈련시키는 단계;
상기 특징 벡터들로 훈련된 상기 생성 모델에서 출력되는 대표 특징 벡터와 데이터베이스에 저장된 타겟 이미지들의 특징 벡터들을 비교하여 상기 복수의 검색 이미지들에 대응하는 타겟 이미지를 결정하는 단계; 및
상기 결정된 타겟 이미지를 상기 사용자 단말로 전송하는 단계를 포함하는 것을 특징으로 하는 이미지 검색 방법.
In the image search method by the image search device,
Receiving a plurality of search images from a user terminal;
Obtaining feature vectors corresponding to the plurality of search images;
Training a generation model with the acquired feature vectors;
Determining a target image corresponding to the plurality of search images by comparing a representative feature vector output from the generation model trained with the feature vectors and feature vectors of target images stored in a database; And
And transmitting the determined target image to the user terminal.
제1항 또는 제9항에 있어서,
상기 생성 모델은,
복수의 FCL(fully connected layer)를 포함하는 GAN(generative adversarial network)을 포함하는 것을 특징으로 하는 이미지 검색 방법.
The method of claim 1 or 9,
The generation model,
Image retrieval method characterized in that it comprises a GAN (generative adversarial network) including a plurality of fully connected layer (FCL).
하드웨어와 결합하여 제1항 내지 제10항 중 어느 하나의 항의 이미지 검색 방법을 실행하기 위하여 매체에 저장된 프로그램.
A program stored in a medium to execute the image search method of any one of claims 1 to 10 in combination with hardware.
프로세서;
적어도 하나의 프로그램 및 생성 모델을 저장하는 메모리; 및
타겟 이미지들을 저장하는 데이터베이스를 포함하되,
상기 프로세서는 상기 적어도 하나의 프로그램이 실행됨에 따라,
동일한 속성을 포함하는 복수의 참조 이미지들에 대응하는 참조 특징 벡터들을 획득하고,
상기 획득한 참조 특징 벡터들에 기초하여 훈련된 상기 생성 모델로부터 상기 동일한 속성에 대응하는 대표 특징 벡터를 획득하고,
상기 타겟 이미지들의 특징 벡터들과 상기 대표 특징 벡터를 비교하여, 상기 타겟 이미지들 중 적어도 일부의 타겟 이미지에 상기 동일한 속성에 대응하는 속성 태그를 할당하는 것을 특징으로 하는 이미지 검색 장치
Processor;
A memory storing at least one program and generation model; And
Includes a database that stores target images,
The processor, as the at least one program is executed,
Obtaining reference feature vectors corresponding to a plurality of reference images including the same attribute,
Obtain a representative feature vector corresponding to the same attribute from the generated model trained based on the obtained reference feature vectors,
And comparing the feature vectors of the target images with the representative feature vectors, and assigning an attribute tag corresponding to the same attribute to a target image of at least some of the target images.
사용자 단말 장치에 의한 이미지 검색 방법에 있어서,
이미지 검색 장치에 접속하여 속성을 선택하는 단계; 및
상기 이미지 검색 장치에 저장된 타겟 이미지들 중 상기 선택한 속성에 대응하는 속성 태그가 할당된 타겟 이미지를 상기 이미지 검색 장치로부터 수신하는 단계를 포함하되,
상기 이미지 검색 장치에 저장된 타겟 이미지들은,
복수의 속성들 각각에 대응하는 대표 특징 벡터들과 상기 타겟 이미지들의 특징 벡터의 비교 결과에 기초하여 상기 복수의 속성에 대응하는 복수의 속성 태그들 중 적어도 일부의 속성 태그가 할당된 것을 특징으로 하는 이미지 검색 방법.
In the image search method by the user terminal device,
Selecting an attribute by accessing the image search apparatus; And
And receiving, from the image search apparatus, a target image to which an attribute tag corresponding to the selected attribute is assigned among target images stored in the image search apparatus.
Target images stored in the image search device,
Characterized in that at least some attribute tags among the plurality of attribute tags corresponding to the plurality of attributes are allocated based on a comparison result of representative feature vectors corresponding to each of the plurality of attributes and the feature vectors of the target images. How to search for images.
KR1020190010662A 2019-01-28 2019-01-28 Image search apparatus and method KR102221122B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190010662A KR102221122B1 (en) 2019-01-28 2019-01-28 Image search apparatus and method
TW108147387A TWI755666B (en) 2019-01-28 2019-12-24 Image search apparatus and method
JP2020006627A JP7013497B2 (en) 2019-01-28 2020-01-20 Image search device and its method
JP2022006614A JP7282218B2 (en) 2019-01-28 2022-01-19 Image retrieval method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190010662A KR102221122B1 (en) 2019-01-28 2019-01-28 Image search apparatus and method

Publications (2)

Publication Number Publication Date
KR20200093321A true KR20200093321A (en) 2020-08-05
KR102221122B1 KR102221122B1 (en) 2021-02-25

Family

ID=71891005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190010662A KR102221122B1 (en) 2019-01-28 2019-01-28 Image search apparatus and method

Country Status (3)

Country Link
JP (2) JP7013497B2 (en)
KR (1) KR102221122B1 (en)
TW (1) TWI755666B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220026880A (en) * 2020-08-26 2022-03-07 엔에이치엔 주식회사 Method and system for image-based product search
KR20220152778A (en) * 2021-05-10 2022-11-17 엔에이치엔클라우드 주식회사 Device and method to provide data associated with shopping mall web page

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120013044A (en) * 2010-08-04 2012-02-14 엔에이치엔(주) Mobile system, search system and search result providing method for mobile search
KR20160087222A (en) * 2015-01-13 2016-07-21 삼성전자주식회사 Method and Appratus For Creating Photo Story based on Visual Context Analysis of Digital Contents
KR101768521B1 (en) * 2016-05-02 2017-08-17 네이버 주식회사 Method and system providing informational data of object included in image
KR101848321B1 (en) * 2017-10-27 2018-04-20 주식회사 뷰노 Method for facilitating dignosis of subject based on fovea image thereof and apparatus using the same

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003030655A (en) * 2001-07-12 2003-01-31 Nec Corp Image recognition system and image recognition program
JP4475395B2 (en) 2004-03-01 2010-06-09 富士ゼロックス株式会社 Image processing method, image processing apparatus, image processing program, and storage medium
JP5588165B2 (en) 2009-12-24 2014-09-10 キヤノン株式会社 Image processing apparatus, image processing method, and program
CN103678335B (en) * 2012-09-05 2017-12-08 阿里巴巴集团控股有限公司 The method of method, apparatus and the commodity navigation of commodity sign label
US9460518B2 (en) * 2013-04-17 2016-10-04 Yahoo! Inc. Visual clothing retrieval
KR101639657B1 (en) 2014-11-26 2016-07-18 주식회사 카카오 Method and server for searching similar goods
TW201721519A (en) * 2015-12-01 2017-06-16 英業達股份有限公司 Virtual dressing system and virtual dressing method
WO2017203262A2 (en) * 2016-05-25 2017-11-30 Metail Limited Method and system for predicting garment attributes using deep learning
JP6752122B2 (en) * 2016-11-15 2020-09-09 キヤノン株式会社 Image processing device, image processing method
CN107527318B (en) * 2017-07-17 2021-06-04 复旦大学 Hair style replacement method based on generation countermeasure network model

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120013044A (en) * 2010-08-04 2012-02-14 엔에이치엔(주) Mobile system, search system and search result providing method for mobile search
KR20160087222A (en) * 2015-01-13 2016-07-21 삼성전자주식회사 Method and Appratus For Creating Photo Story based on Visual Context Analysis of Digital Contents
KR101768521B1 (en) * 2016-05-02 2017-08-17 네이버 주식회사 Method and system providing informational data of object included in image
KR101848321B1 (en) * 2017-10-27 2018-04-20 주식회사 뷰노 Method for facilitating dignosis of subject based on fovea image thereof and apparatus using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220026880A (en) * 2020-08-26 2022-03-07 엔에이치엔 주식회사 Method and system for image-based product search
KR20220152778A (en) * 2021-05-10 2022-11-17 엔에이치엔클라우드 주식회사 Device and method to provide data associated with shopping mall web page

Also Published As

Publication number Publication date
JP2022044687A (en) 2022-03-17
TWI755666B (en) 2022-02-21
JP7013497B2 (en) 2022-01-31
KR102221122B1 (en) 2021-02-25
JP7282218B2 (en) 2023-05-26
TW202029054A (en) 2020-08-01
JP2020119566A (en) 2020-08-06

Similar Documents

Publication Publication Date Title
US10824942B1 (en) Visual similarity and attribute manipulation using deep neural networks
CN109618222B (en) A kind of splicing video generation method, device, terminal device and storage medium
US10242396B2 (en) Automatic color palette based recommendations for affiliated colors
US10846327B2 (en) Visual attribute determination for content selection
US10402917B2 (en) Color-related social networking recommendations using affiliated colors
US9678989B2 (en) System and method for use of images with recognition analysis
CN104572846B (en) A kind of hot word recommendation methods, devices and systems
KR101289085B1 (en) Images searching system based on object and method thereof
US11551424B2 (en) Interaction analysis systems and methods
CN110516096A (en) Synthesis perception digital picture search
JP7282218B2 (en) Image retrieval method and apparatus
CN106933867A (en) A kind of image inquiry method and device
CN105589852B (en) A kind of method and apparatus of information recommendation
KR102517961B1 (en) Method for providing clothing recommendation information based on user-selected clothing, and server and program using the same
KR102130448B1 (en) Method, apparatus and computer program for searching image
CN107358490A (en) A kind of image matching method, device and electronic equipment
US20200372560A1 (en) Method for exploring and recommending matching products across categories
CN110956213A (en) Method and device for generating remote sensing image feature library and method and device for retrieving remote sensing image
CN111447260A (en) Information pushing and information publishing method and device
JP2014211730A (en) Image searching system, image searching device, and image searching method
JP5772908B2 (en) Information processing apparatus, information processing system, control method thereof, and program
KR101660984B1 (en) System and method for providing information according to image data
JP7392205B2 (en) Method for providing clothing recommendation information based on user-selected clothing, and server using the same
JP7014232B2 (en) Search system, terminal device operation method and program
JP6235689B1 (en) Generating device, generating method, and generating program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right