KR20190117958A - Method for image searching based on combination of picture and sketch - Google Patents
Method for image searching based on combination of picture and sketch Download PDFInfo
- Publication number
- KR20190117958A KR20190117958A KR1020180040942A KR20180040942A KR20190117958A KR 20190117958 A KR20190117958 A KR 20190117958A KR 1020180040942 A KR1020180040942 A KR 1020180040942A KR 20180040942 A KR20180040942 A KR 20180040942A KR 20190117958 A KR20190117958 A KR 20190117958A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- clothing
- integrated
- sketch
- photo
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Abstract
Description
본 발명의 실시예들은 유사 아미지를 검색하는 기술에 관한 것으로서, 더욱 상세하게는 사진과 스케치(sketch)를 조합하여 유사 이미지를 검색하여 제공하는 기술에 관한 것이다.Embodiments of the present invention relate to a technique for searching for similar images, and more particularly, to a technique for searching for and providing a similar image by combining a photograph and a sketch.
스마트폰(smartphone), 태블릿(tablet) 등의 스마트 기기는 사용자가 휴대 가능하고, 무선 인터넷을 통해 언제 어디서든지 컨텐츠에 접근이 가능하다. 이러한 고도의 접근성과 다양한 컨텐츠의 사용으로 인해 사용자들은 스마트 기기를 습관적으로 사용하게 되었고, 스마트 기기를 통해 다양한 기능을 이용하고 있다. 예를 들어, 하루의 일과를 시작하기 전에 뉴스, 날씨 등을 검색하거나, 출퇴근 버스나 지하철 내에서 쇼핑, 헤어 스타일, 의류 등을 검색하거나, 맛집, 약속 장소를 검색한다. Smart devices such as smartphones and tablets are portable by the user and can access contents anytime and anywhere through the wireless Internet. Such high accessibility and the use of various contents have made users habitually use smart devices and use various functions through smart devices. For example, you can search for news, weather, and more before you start your day, search for shopping, hairstyles, clothing, etc. on your commute or subway, or search for restaurants and appointments.
패션 및 메이크업 등의 스타일에 대한 관심이 남녀노소 구분없이 증가하고 있으며, 패션 스타일링의 중요도 및 관심이 높아짐에 따라 스마트 기기, 인터넷 등을 통한 패션 스타일 서비스가 제공되고 있다.Interest in styles such as fashion and makeup is increasing regardless of gender, age, and age, and as the importance and interest of fashion styling increases, fashion style services through smart devices and the Internet are provided.
한국공개특허 제10-2017-0096971호는 스타일 특징을 이용한 상품 추천 방법에 관한 것으로, 사용자 클라이언트로부터 질의 영상을 획득하고, 영상의 카테고리 및 스타일 특징을 추출하고, 복수의 학습 데이터 영상들을 이용하여 학습된 모델을 이용하여, 상품 영상 데이터베이스로부터 질의 영상과 유사한 스타일 특징을 가지는 상품 영상을 검색하는 기술을 개시하고 있다.Korean Patent Laid-Open No. 10-2017-0096971 relates to a product recommendation method using a style feature, which obtains a query image from a user client, extracts a category and style feature of the image, and learns using a plurality of learning data images. A technique for retrieving a merchandise image having a style feature similar to that of a query image from a merchandise image database is disclosed using the model.
본 발명은 의류 사진 및 사진 위에 사용자가 터치 도구(예컨대, 터치 팬, 손 등)를 이용하여 그린 스케치(sketch)를 조합하여, 딥러닝을 통해 학습된 학습 모델(CNN 모델)을 기반으로 사진과 스케치가 조합된 이미지와 유사한 이미지를 검색하여 제공하는 기술에 관한 것이다.The present invention combines a sketch drawn by a user using a touch tool (for example, a touch fan, a hand, etc.) on a garment photo and a photo, based on a learning model (CNN model) trained through deep learning. The present invention relates to a technique for searching for and providing an image similar to a combined image of a sketch.
또한, 사용자가 원하는 이미지가 제공될 때까지 검색을 통해 제공된 유사 이미지 상에 스케치, 스케치와 사진을 조합한 하나의 이미지와 유사한 이미지를 검색하는 동작을 반복 수행함으로써(즉, refine을 수행함으로써), 사용자가 처음에 선택한 이미지가 사용자가 원하는 이미지가 아니었을지라도 결국에는 사용자가 원하는 이미지를 찾아서 제공하는 기술에 관한 것이다. In addition, by repeatedly searching for an image similar to a single image including a sketch, a sketch and a photo on the similar image provided through the search until the image desired by the user is provided (that is, performing a refinement), Even though the image selected by the user initially was not the image desired by the user, the present invention relates to a technique of finding and providing an image desired by the user.
컴퓨터에 의해 실행되는 유사 이미지 검색 방법에 있어서, 카테고리(category) 별로 서로 다른 복수의 의류 사진들 및 상기 복수의 의류 사진들관련 스케치 이미지들이 저장된 의류 데이터베이스를 대상으로, 사용자에 의해 선택된 타겟 이미지(target image)에 해당하는 의류 사진을 검색하여 제공하는 단계, 제공된 상기 의류 사진을 대상으로, 상기 의류 사진 상에 디테일을 추가하기 위한 스케치(sketch) 입력을 수신하는 단계, 상기 제공된 의류 사진 상에 그려진 스케치(sketch) 및 상기 제공된 의류 사진을 포함하는 통합 이미지로부터 통합 의류 특징점(feature representation)을 추출하는 단계, 및 상기 의류 데이터베이스를 대상으로, 상기 통합 의류 특징점에 기초하여 상기 통합 이미지와 유사도가 가장 높은 이미지를 검색하여 제공하는 단계를 포함할 수 있다.In a similar image search method executed by a computer, a target image selected by a user in a clothing database in which a plurality of different clothing photographs and sketch images related to the plurality of clothing photographs are stored for each category. searching and providing a clothing picture corresponding to the image), receiving a sketch input for adding detail to the clothing picture, and sketches drawn on the provided clothing picture extracting a unified garment feature representation from a unified image comprising a sketch and the provided garment photo, and targeting the garment database, the image having the highest similarity with the unified garment feature point based on the unified garment feature point It may include the step of searching for and providing.
일측면에 따르면, 상기 통합 의류 특징점은, 의류 사진의 전체 이미지를 대상으로 추출된 적어도 하나의 특징점 1, 미리 지정된 특정 요소에 해당하는 상기 의류 사진의 부분 이미지에서 추출된 적어도 하나의 특징점 2, 스케치 이미지의 전체 이미지를 대상으로 추출된 적어도 하나의 특징점 3, 및 미리 지정된 특정 요소에 해당하는 상기 스케치 이미지의 부분 이미지에서 추출된 적어도 하나의 특징점 4를 포함할 수 있다.According to one aspect, the integrated clothing feature point, at least one feature point 1 extracted for the entire image of the clothing picture, at least one feature point 2 extracted from the partial image of the clothing picture corresponding to a predetermined specific element, sketch At least one feature point 3 extracted for the entire image of the image, and at least one feature point 4 extracted from the partial image of the sketch image corresponding to a predetermined specific element.
또 다른 측면에 따르면, 상기 의류 사진, 상기 의류 사진의 부분 이미지, 상기 스케치 이미지, 상기 스케치 이미지의 부분 이미지 각각을 대상으로 각 이미지에 부여된 키워드 라벨링 데이터 및 사용자가 평가한 유사도 데이터를 기반으로 딥러닝(deep learning)을 수행하는 학습 단계를 더 포함할 수 있다.According to another aspect, a dip based on keyword labeling data applied to each image and similarity data evaluated by a user for each of the garment photo, the partial image of the garment photo, the sketch image, and the partial image of the sketch image The method may further include a learning step of performing deep learning.
또 다른 측면에 따르면, 상기 딥러닝을 수행하는 학습 단계는, 상기 의류 사진 및 상기 의류 사진의 부분 이미지를 대상으로, 상기 특징점 1 및 특징점 2를 획득하기 위한 딥러닝을 수행하는 단계, 및 상기 특징점 1 및 특징점 2를 획득하기 위한 딥러닝과는 별도로 구분하여, 상기 특징점 3 및 특징점 4를 획득하기 위한 딥러닝을 수행할 수 있다.According to another aspect, the learning step of performing the deep learning, performing a deep learning to obtain the feature point 1 and the feature point 2 for the garment photo and the partial image of the garment photo, and the feature point Separately from deep learning for acquiring 1 and feature point 2, deep learning for acquiring feature points 3 and 4 may be performed.
또 다른 측면에 따르면, 상기 특정 요소는 상기 타겟 이미지가 속하는 카테고리에 따라 서로 다른 요소를 포함할 수 있다.According to another aspect, the specific element may include different elements according to the category to which the target image belongs.
또 다른 측면에 따르면, 상기 통합 이미지와 유사도가 가장 높은 이미지를 검색하여 제공하는 단계는, 상기 의류 데이터베이스를 대상으로, 상기 통합 이미지에 부여된 키워드 라벨링 데이터가 매칭하는 적어도 하나의 매칭 이미지를 검색하는 단계, 및 검색된 상기 적어도 하나의 매칭 이미지와 상기 통합 이미지 간의 유클리드 디스턴스(Euclidean distance)에 기초하여 상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계를 포함할 수 있다.According to another aspect, the searching and providing of the image having the highest similarity with the integrated image may include searching for at least one matching image matched by keyword labeling data applied to the integrated image with respect to the clothing database. And determining an image having the highest similarity with the integrated image based on an Euclidean distance between the at least one matching image and the integrated image found.
또 다른 측면에 따르면, 상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는, 검색된 상기 적어도 하나의 매칭 이미지를 대상으로, 매칭 이미지의 전체 이미지와 상기 통합 이미지의 전체 이미지 간의 유클리드 디스턴스(Euclidean distance)를 계산할 수 있다.According to another aspect, the determining of the image having the highest similarity with the unified image may include: Euclidean distance between the entire image of the matching image and the whole image of the unified image, based on the searched at least one matching image. ) Can be calculated.
또 다른 측면에 따르면, 상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는, 검색된 상기 적어도 하나의 매칭 이미지를 대상으로, 통합 이미지에 부여된 복수의 키워드 라벨링 데이터 중 특정 키워드 라벨링 데이터에 해당하는 매칭 이미지의 부분 이미지와 상기 특정 키워드 라벨링 데이터에 해당하는 상기 통합 이미지의 부분 이미지 간의 유클리드 디스턴스(Euclidean distance)를 계산할 수 있다.According to another aspect, the determining of the image having the highest similarity with the unified image may correspond to specific keyword labeling data among a plurality of keyword labeling data applied to the unified image, based on the searched at least one matching image. An Euclidean distance between the partial image of the matching image and the partial image of the integrated image corresponding to the specific keyword labeling data may be calculated.
또 다른 측면에 따르면, 상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는, 상기 적어도 하나의 매칭 이미지 중 특정 매칭 이미지를 대상으로, 복수의 키워드 라벨링 데이터 별로 계산된 유클리디언 디스턴스의 합에 기초하여 계산된 특정 매칭 이미지의 최종 유사도를 학습 모델의 입력 파라미터로 설정함으로써, 상기 유사도가 가장 높은 이미지를 결정할 수 있다.According to another aspect, the determining of the image having the highest similarity with the unified image may be based on a sum of Euclidean distances calculated for a plurality of keyword labeling data for a specific matching image among the at least one matching image. By setting the final similarity of the specific matching image calculated based on the input parameter of the learning model, the image having the highest similarity may be determined.
본 발명은 의류 사진 및 사진 위에 사용자가 터치 도구(예컨대, 터치 팬, 손 등)를 이용하여 그린 스케치(sketch)를 조합하여, 딥러닝을 통해 학습된 학습 모델(CNN 모델)을 기반으로 사진과 스케치가 조합된 이미지와 유사한 이미지를 검색하여 제공함으로써, 데이터베이스에 저장된 복수의 이미지들을 사용자가 자신이 원하는 정확한 이미지를 찾을 때까지 모두 확인하지 않더라도 사용자가 원하는 이미지를 보다 빠르게 제공할 수 있다. 즉, 사용자가 원하는 이미지를 찾을 때까지 소요되는 검색 시간을 단축하고, 사용자가 원하는 디자인에 보다 적합한 이미지를 제공하는 정확도를 높일 수 있다. The present invention combines a sketch drawn by a user using a touch tool (for example, a touch fan, a hand, etc.) on a garment photo and a photo, based on a learning model (CNN model) trained through deep learning. By searching for and providing an image similar to the combined image of the sketch, a user may provide a desired image more quickly without checking all the plurality of images stored in the database until the user finds the correct image. That is, the search time required for the user to find the desired image can be shortened, and the accuracy of providing an image more suitable for the desired design can be increased.
또한, 사용자가 원하는 이미지가 제공될 때까지 검색을 통해 제공된 유사 이미지 상에 스케치, 스케치와 사진을 조합한 하나의 이미지와 유사한 이미지를 검색하는 동작을 반복 수행함으로써(즉, refine을 수행함으로써), 사용자가 처음에 선택한 이미지가 사용자가 원하는 이미지가 아니거나, 약간 비슷한 이미지라 할지라도 결국에는 사용자가 원하는 이미지를 찾아서 제공할 수 있다.In addition, by repeatedly searching for an image similar to a single image including a sketch, a sketch and a photo on the similar image provided through the search until the image desired by the user is provided (that is, performing a refinement), Even if the image initially selected by the user is not an image desired by the user, or a slightly similar image, the user may eventually find and provide the desired image.
도 1은 본 발명의 일실시예에 있어서, 유사 이미지 검색 방법을 수행하는 유사 이미지 검색 시스템의 내부 구성을 도시한 블록도이다.
도 2는 본 발명의 일실시예에 있어서, 유사 이미지 검색 방법을 도시한 흐름도이다.
도 3은 본 발명의 일실시예에 있어서, 사진 및 스케치 조합을 기반으로 유사 이미지를 검색하여 제공하는 동작을 설명하는 화면 구성을 도시한 도면이다.
도 4는 본 발명의 일실시예에 있어서, 의류 사진 전체 이미지 및 부분 이미지를 기반으로 학습을 수행하는 동작을 설명하기 위해 제공되는 도면이다.
도 5는 본 발명의 일실시예에 있어서, 통합 의류 특징점들을 기반으로 통합 이미지와 매칭하는 이미지를 검색하는 방법을 설명하기 위해 제공되는 도면이다.
도 6은 트리플렛 랭킹 데이터(triplet ranking data)를 기반으로 유사도를 계산하는 동작을 나타내는 도면이다.1 is a block diagram illustrating an internal configuration of a similar image search system for performing a similar image search method according to an embodiment of the present invention.
2 is a flowchart illustrating a method of searching for a similar image according to an exemplary embodiment of the present invention.
FIG. 3 is a diagram illustrating a screen configuration for explaining an operation of searching for and providing a similar image based on a combination of a photo and a sketch, according to an exemplary embodiment.
FIG. 4 is a diagram provided to explain an operation of performing learning based on a clothes photograph full image and a partial image according to an embodiment of the present invention.
FIG. 5 is a diagram provided to explain a method of searching for an image matching an integrated image based on integrated clothing feature points according to an embodiment of the present disclosure.
6 is a diagram illustrating an operation of calculating a similarity degree based on triplet ranking data.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 실시예들은 사진과 사진 위에 사용자 단말(즉, 사용자)의 입력을 기반으로 그려진 스케치(sketch)를 조합하여 유사 이미지를 검색하여 제공하는 기술에 관한 것으로서, 특히, 데이터베이스에 저장된 의류 사진들 및 스케치 이미지들을 대상으로 딥러닝(deep learning)을 수행하여 학습된 이미지에서 추출된 특징점들(feature representation)에 기초하여 유사 이미지를 검색하는 기술에 관한 것이다.The embodiments of the present invention relate to a technique of searching for and providing a similar image by combining a sketch drawn on the basis of an input of a user terminal (that is, a user) on the photo, in particular, clothing photos and sketches stored in a database. The present invention relates to a technique for performing deep learning on images to search for similar images based on feature representations extracted from the learned images.
본 실시예들에서, 사용자 단말은 스마트폰(smartphone), 태블릿(tablet), 노트북 등과 같이 사용자가 소지하고 휴대하는 전자기기, 및 데스크탑 PC 등을 포함하는 전자 기기를 나타내는 것으로서, 유선 또는 무선 인터넷 등을 지원할 수 있다.In the present embodiments, the user terminal represents an electronic device including a desktop PC or the like carried by the user, such as a smartphone, a tablet, a laptop, or the like, and includes a wired or wireless Internet, or the like. Can support
본 실시예들에서, "의류 사진"은 실존하는 의상 상품을 사진 촬영한 사진 이미지를 나타내는 것으로서, 예컨대, 온라인 또는 오프라인 매장에서 실제 판매되고 있는 의상 상품 관련 사진 이미지들이 딥러닝(deep learning)을 위해 수집될 수 있다. 그리고, 수집된 의류 사진들은 해당 의류가 속하는 카테고리(category, 즉, 의류군) 별로 구분되고, 의류 사진의 식별자 정보는 해당 의류 사진의 수집 시 이용된 적어도 하나의 키워드 라벨링 데이터와 연관하여 의류 데이터베이스에 저장 및 유지될 수 있다.In the present embodiments, the "clothing photo" represents a photographic image of a photograph of an existing costume product. For example, the clothing image related to the clothing product that is actually sold in an online or offline store is used for deep learning. Can be collected. The collected clothing photographs are classified according to a category (ie, clothing group) to which the corresponding clothing belongs, and the identifier information of the clothing photograph is associated with at least one keyword labeling data used when collecting the corresponding clothing photograph to the clothing database. Can be stored and maintained.
도 1은 본 발명의 일실시예에 있어서, 유사 이미지 검색 시스템의 내부 구성을 도시한 블록도이고, 도 2는 본 발명의 일실시예에 있어서, 유사 이미지 검색 방법을 도시한 흐름도이다.1 is a block diagram illustrating an internal configuration of a similar image search system according to an embodiment of the present invention, and FIG. 2 is a flowchart illustrating a similar image search method according to an embodiment of the present invention.
본 실시예에 따른 유사 이미지 검색 시스템(100)은 프로세서(110), 버스(120), 네트워크 인터페이스(130), 메모리(140), 및 의류 데이터베이스(150)를 포함할 수 있다. 메모리(140)는 운영체제(141) 및 서비스 제공 루틴(142)를 포함할 수 있다. 프로세서(110)는 학습 제어부(111), 검색 제공부(112), 사용자 인터페이스 제공부(113) 및 특징점 추출부(114)를 포함할 수 있다. 다른 실시예들에서 유사 이미지 검색 시스템(100)은 도 1의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 유사 이미지 검색 시스템(100)은 디스플레이나 트랜시버(transceiver)와 같은 다른 구성요소들을 포함할 수도 있다.The similar
메모리(140)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(140)에는 운영체제(141)와 서비스 제공 루틴(142)을 위한 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism, 미도시)을 이용하여 메모리(140)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체(미도시)를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 네트워크 인터페이스(130)를 통해 메모리(140)에 로딩될 수도 있다.The
버스(120)는 유사 이미지 검색 시스템(100)의 구성요소들 간의 통신 및 데이터 전송을 가능하게 할 수 있다. 버스(120)는 고속 시리얼 버스(high-speed serial bus), 병렬 버스(parallel bus), SAN(Storage Area Network) 및/또는 다른 적절한 통신 기술을 이용하여 구성될 수 있다.The
네트워크 인터페이스(130)는 유사 이미지 검색 시스템(100)을 컴퓨터 네트워크에 연결하기 위한 컴퓨터 하드웨어 구성요소일 수 있다. 네트워크 인터페이스(130)는 유사 이미지 검색 시스템(100)을 무선 또는 유선 커넥션을 통해 컴퓨터 네트워크에 연결시킬 수 있다.The
의류 데이터베이스(150)는 서로 다른 카테고리에 속하는 복수의 의류 사진들, 의류 사진들 각각에 해당하는 적어도 하나의 특정 요소에 해당하는 부분 이미지(즉, 의류 사진의 부분 이미지), 상기 복수의 의류 사진들 각각에 해당하는 스케치 이미지들, 상기 스케치 이미지를 각각에 해당하는 특정 요소에 해당하는 부분 이미지(즉, 스케치의 부분 이미지)를 카테고리 별로 구분하여 해당 의류 사진의 식별자 정보와 연관하여 저장 및 유지할 수 있다. 이때, 상기 특정 요소는 해당 의류의 특성을 반영한 미리 지정되는 정보로서, 사용자가 원하는 의류 사진을 전체를 대상으로(즉, 사용자가 원하는 의류 사진의 전체 이미지를 대상으로), 그리고 의류 사진의 일부에 해당하는 부분 이미지를 대상으로 디테일하게 검색하기 위해 이용될 수 있다. The
여기서, 특정 요소는 카테고리 별로 서로 다른 요소가 포함될 수도 있고, 동일 카테고리에 속하는 의류 사진 별로도 서로 다른 요소가 포함되도록 미리 지정될 수 있다. 예컨대, 선택된 의류 사진이 속한 카테고리가 청바지에 해당하는 경우, 상기 특정 요소는 호주머니, 워싱, 해짐 등의 개별 요소를 포함하도록 미리 지정될 수 있다. 웨딩 드레스인 경우, 상기 특정 요소는 넥라인(neckline)을 포함하도록 미리 지정될 수 있고, 쟈켓인 경우, 호주머니, 넥라인 등이 개별 요소를 포함하도록 미리 지정될 수 있다.Here, the specific element may include different elements for each category, or may be pre-specified to include different elements for each clothing picture belonging to the same category. For example, when the category to which the selected clothing photograph belongs belongs to jeans, the specific element may be pre-designated to include individual elements such as pockets, washes, and disengagements. In the case of a wedding dress, the particular element can be pre-specified to include a neckline, and in the case of a jacket, the pocket, neckline, etc. can be pre-specified to include individual elements.
의류 데이터베이스(150)는 유사 이미지 검색 시스템(100) 내에 포함될 수도 있고, 유사 이미지 검색 시스템(100)과는 별도의 다른 시스템 상에 구축된 외부 데이터베이스로서 존재할 수도 있다. 유사 이미지 검색 시스템(100)은 서버에 접속한 사용자 단말로 유사 이미지를 검색하여 제공하도록 플랫폼(platform) 형태로 구현될 수도 있고, 사용자 단말 상에 유사 이미지 검색을 제공하는 어플리케이션(application, 즉, 서비스 앱) 형태로 구현될 수도 있다.The
프로세서(110)는 기본적인 산술, 로직 및 유사 이미지 검색 시스템(100)의 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(140) 또는 네트워크 인터페이스(130)에 의해, 그리고 버스(120)를 통해 프로세서(110)로 제공될 수 있다. 프로세서(110)는 학습 제어부(111), 검색 제공부(112), 사용자 인터페이스 제공부(113) 및 특징점 추출부(114)를 위한 프로그램 코드를 실행하도록 구성될 수 있다. 이러한 프로그램 코드는 메모리(140)와 같은 기록 장치에 저장될 수 있다.The
학습 제어부(111), 검색 제공부(112), 사용자 인터페이스 제공부(113) 및 특징점 추출부(114)는 도 2의 단계들(210 내지 250 단계)을 수행하기 위해 구성될 수 있다.The
210 단계에서, 학습 제어부(111)는 의류 사진, 의류 사진의 부분 이미지, 스케치 이미지, 및 스케치 이미지의 부분 이미지 각각을 대상으로 각 이미지에 부여된 키워드 라벨링 데이터를 기반으로 딥러닝(deep learning)을 수행할 수 있다.In
일례로, 학습 제어부(111)는 의류 데이터베이스(150)에 수집되어 저장 및 유지되고 있는 복수의 의류 사진들, 복수의 의류 사진들 각각의 부분 이미지를 대상으로, 의류 사진의 전체 이미지를 기반으로 특징점을 획득하고, 의류 사진의 부분 이미지를 기반으로 특징점을 획득하기 위한 딥러닝을 수행할 수 있다. 그리고, 학습 제어부(111)는 의류 데이터베이스(150)에 수집되어 저장 및 유지되고 있는 복수의 스케치 이미지들, 복수의 스케치 이미지들 각각의 부분 이미지를 대상으로, 스케치 이미지의 전체 이미지를 기반으로 특징점을 획득하고, 스케치 이미지의 부분 이미지를 기반으로 특징점을 획득하기 위한 딥러닝을 수행할 수 있다. For example, the
즉, 학습 제어부(111)는 의류 사진과, 스케치 이미지 각각을 대상으로 최적화된 특징점을 추출하기 위해서, 의류 사진과 스케치 이미지를 구분하여 독립적으로 딥러닝(deep learning)을 수행할 수 있다.That is, the
220 단계에서, 검색 제공부(112)는 카테고리 별로 서로 다른 복수의 의류 사진들 및 복수의 의류 사진들과 연관된 스케치 이미지들이 저장된 의류 데이터베이스(150)를 대상으로, 사용자에 의해 선택된 타겟 이미지(target image)에 해당하는 의류 사진을 검색하여 제공할 수 있다. In
일례로, 유사 이미지 검색 서비스를 제공하기 위한 어플리케이션(즉, 서비스 앱)이 실행됨에 따라, 사용자가 제공받고자 하는 의류의 카테고리를 선택하기 위한 화면이 유사 이미지 검색 시스템(100)인 사용자 단말에 디스플레이될 수 있다. 이때, 상기 화면을 통해 청바지가 선택된 경우, 의류 데이터베이스(150)에 저장된 의류 사진들 중 선택된 카테고리에 해당하는 청바지관련 이미지들이 상기 화면에 디스플레이될 수 있다. 회원 가입 시 등록된 사용자 정보에 기초하여 성별 정보(예컨대, 여성, 남성 등)가 존재하는 경우, 여성 청바지 관련 이미지들이 상기 화면에 디스플레이될 수 있다. 성별 정보 이외에, 연령 정보가 등록된 경우, 선택된 카테고리, 성별 정보의 결합에 더하여 연령 정보가 결합된 키워드가 키워드 라벨링 데이터로서, 예컨대, 20 내지 40대 여성 청바지관련 의류 사진들이 의류 데이터베이스(150)에서 검색되어 상기 화면에 디스플레이될 수 있다. For example, as an application (ie, a service app) for providing a similar image search service is executed, a screen for selecting a category of clothing to be provided by a user may be displayed on a user terminal that is a similar
이처럼, 화면에 디스플레이된 의류 사진들 중 사용자가 원하는 디자인/스타일에 적합한 타겟 이미지가 선택되면, 선택된 카테고리에 해당하는 복수의 의류 사진들이 표시되는 화면이 상기 선택된 타겟 이미지(target image)를 전체 화면에 표시하도록 화면이 전환될 수 있다. As such, when a target image suitable for a design / style desired by the user is selected among the clothing photos displayed on the screen, a screen on which a plurality of clothing photos corresponding to the selected category are displayed is displayed on the full screen. The screen can be switched to display.
230 단계에서, 사용자 인터페이스 제공부(113)는 터치 팬 등의 도구를 이용하여 타겟 이미지에 해당하는 의류 사진 상에 디테일(detail)을 추가하기 위한 스케치(sketch) 입력을 수신할 수 있다. 예를 들어, 화면에 표시되는 타겟 이미지 상에 사용자가 터치팬 등의 도구를 이용하여 그린 내용이 반영된 스케치가 화면에 디스플레이될 수 있다. In
240 단계에서, 특징점 추출부(114)는 타겟 이미지에 해당하는 의류 사진 상에 그려진 스케치(sketch) 및 의류 사진을 포함하는 통합 이미지로부터 통합 의류 특징점을 추출할 수 있다. 여기서, 통합 의류 특징점은, 타겟 이미지와 상기 스케치가 결합된 통합 이미지에 해당하는 의류 사진 전체를 대상으로 추출된 적어도 하나의 특징점 1, 타겟 이미지에 해당하는 의류 사진과 연관하여 미리 지정된 특정 요소에 해당하는 부분 이미지(즉, 상기 의류 사진의 부분 이미지)에서 추출된 적어도 하나의 특징점 2, 상기 통합 이미지에 해당하는 스케치 이미지 전체를 대상으로 추출된 적어도 하나의 특징점 3, 및 상기 타겟 이미지의 미리 지정된 특정 요소에 해당하는 스케치 이미지의 부분 이미지에서 추출된 적어도 하나의 특징점 4를 포함할 수 있다.In
250 단계에서, 검색 제공부(112)는 의류 데이터베이스(150)에 저장된 학습된 의류 사진들을 대상으로, 상기 추출된 통합 의류 특징점에 기초하여 통합 이미지와 유사도가 가장 높은 이미지를 검색하여 제공할 수 있다.In
도 3은 본 발명의 일실시예에 있어서, 사진 및 스케치 조합을 기반으로 유사 이미지를 검색하여 제공하는 동작을 설명하는 화면 구성을 도시한 도면이다.FIG. 3 is a diagram illustrating a screen configuration for explaining an operation of searching for and providing a similar image based on a combination of a photo and a sketch, according to an exemplary embodiment.
도 3의 310을 참고하면, 카테고리 중 웨딩드레스가 선택되면, 카테고리가 웨딩드레스에 해당하는 복수개의 의류 사진들이 의류 데이터베이스(150)로부터 검색되어 화면에 디스플레이될 수 있다. 복수개의 웨딩드레스 관련 의류 사진들 중 사용자가 자신이 원하는 웨딩드레스가 유사한 사진을 화면 터치, 체크박스 선택 등을 통해 선택하면, 선택된 웨딩드레스에 해당하는 의류 사진(즉, 웨딩드레스 사진)이 화면 310에 표시될 수 있다.Referring to 310 of FIG. 3, when a wedding dress is selected from the categories, a plurality of clothing pictures corresponding to the wedding dress of the category may be retrieved from the
화면 320을 참고하면, 화면 310에 표시된 웨딩드레스 사진 위에 터치 팬 등을 이용하여 사용자가 원하는 디자인을 스케치(sketch)할 수 있다. 웨딩 드레스 사진 위에 그려진(drawing) 스케치는 웨딩드레스가 구분되도록 붉은색, 파란색 등으로 미리 설정될 수 있으며, 상기 붉은색, 파란색 등과 같이 미리 설정된 기본 색상은 사용자 선택에 의해 변경될 수 있다. 예컨대, 붉은색이 기본 색상으로 미리 지정되었으나, 사용자 선택에 의해 초록색, 보라색 등으로 변경될 수 있다. Referring to the screen 320, a design desired by the user may be sketched using a touch fan or the like on the wedding dress photo displayed on the screen 310. The sketch drawn on the wedding dress photo may be preset in red, blue, and the like to distinguish the wedding dress, and the preset basic colors, such as red and blue, may be changed by user selection. For example, although red is previously designated as a basic color, it may be changed to green or purple by user selection.
이처럼, 웨딩드레스 사진 위에 사용자가 원하는 디테일(detail)이 추가된 스케치가 그려지면, 검색 제공부(112)는 의류 데이터베이스(150)에서 웨딩드레스 사진과 스케치가 조합된 통합 이미지와 매칭하는 이미지(즉, 매칭 이미지)를 검색할 수 있다. 이때, 검색 제공부(112)는 통합 이미지에서 추출된 통합 의류 특징점들에 기초하여 의류 데이터베이스(150)에 저장된 의류 사진들 중 상기 통합 이미지와 유사도가 가장 높은 이미지를 매칭 이미지로서 검색할 수 있다.As such, when a sketch is added with the desired detail on the wedding dress picture, the
일례로, 검색 제공부(112)는 의류 데이터베이스(150)를 대상으로, 통합 이미지에 부여된 키워드 라벨링 데이터가 매칭하는 적어도 하나의 매칭 이미지를 검색할 수 있다. 예컨대, 키워드 라벨링 데이터는 해당 의류 사진이 속하는 카테고리, 성별정보, 해당 의류의 특성을 반영한 미리 지정된 특정 요소(예컨대, 넥라인, 호주머니, 워싱 등)를 포함할 수 있다. 여기서, 특정 요소는 해당 의류가 속하는 카테고리에 따라 서로 다르게 설정될 수 있으며, 웨딩드레스의 경우, 특정 요소는 넥라인을 포함할 수 있다. 이에 따라, 웨딩드레스에 부여된 키워드 라벨링 데이터는 여성, 웨딩드레스, 넥라인 등을 포함할 수 있다. 그러면, 검색 제공부(112)는 의류 데이터베이스(150)에 저장된 의류 사진들 각각에 부여된 키워드 라벨링 데이터 및 웨딩드레스에 부여된 키워드 라벨링 데이터에 기초하여 통합 이미지에 매칭하는 적어도 하나의 매칭 이미지를 검색할 수 있다. 그리고, 검색 제공부(112)는 검색된 매칭 이미지들 각각에서 추출된 통합 의류 특징점들과 상기 통합 이미지의 통합 의류 특징점들에 기초하여 매칭 이미지들 각각과 통합 이미지 간의 유클리드 디스턴스(Euclidean distance)를 계산할 수 있다. 그리고, 검색 제공부(112)는 계산된 유클리드 디스턴스 각각을 학습 모델의 입력값으로 설정함으로써, 상기 학습 모델을 통해 매칭 이미지들 각각과 통합 이미지 간의 유사도값을 도출할 수 있다. 이때, 매칭 이미지들 중 유사도값이 상대적으로 클수록 통합 이미지와 비슷한 이미지에 해당할 수 있다. 검색 제공부(112)는 유사도값이 큰 순서대로 정렬하여 매칭 이미지들을 화면에 제공할 수 있다. 예컨대, 화면 330과 같이, 통합 이미지와 유사도가 가장 높은 매칭 이미지가 디스플레이될 수 있다. 이처럼, 유사도가 가장 높은 어느 하나의 이미지가 화면에 디스플레이될 수도 있고, 유사도가 높은 순서로 정렬된 복수의 매칭 이미지들이 화면에 디스플레이될 수도 있다. 복수의 매칭 이미지들이 제공되는 경우, 어느 하나의 이미지가 선택되면, 선택된 매칭 이미지만 화면 전체에 디스플레이될 수 있다.For example, the
이때, 화면 330에 디스플레이된 이미지가 여전히 사용자가 원하는 디자인의 웨딩드레스가 아닌 경우, 사용자 인터페이스 제공부(113)는 화면 330에 디스플레이되는 웨딩드레스 사진 위에 추가적으로 스케치 입력을 받을 수 있다. 그러면, 검색 제공부(112)는 화면 340과 같이, 추가적으로 입력된 스케치와 화면 330의 웨딩드레스 사진을 조합한 통합 이미지를 생성하고, 통합 이미지의 키워드 라벨링 데이터를 기반으로 통합 이미지에 매칭하는 적어도 하나의 매칭 이미지를 검색할 수 있다. 그리고, 검색된 매칭 이미지를 대상으로, 통합 이미지에서 추출된 통합 의류 특징점들 및 상기 검색된 매칭 이미지들 각각에서 추출된 통합 의류 특징점들에 기초하여 계산된 유클리드 디스턴스를 기반으로 화면 340의 스케치가 조합된 통합 이미지와 유사도가 가장 높은 매칭 이미지를 결정할 수 있다. 그리고, 유사도가 가장 높은 매칭 이미지를 화면 350에 디스플레이할 수 있다. 이때, 화면 350에 디스플레이되는 웨딩드레스 사진이 사용자가 원하는 디자인에 해당하면, 스케치 추가 및 검색을 종료하고, 사용자가 원하는 디자인에 해당하지 않는 경우, 화면 350에 디스플레이되는 웨딩드레스 사진 위에 스케치 추가, 추가된 스케치와 사진을 조합한 통합 이미지를 기반으로 매칭하는 웨딩드레스 사진을 검색하는 리파인(refine) 과정이 반복 수행될 수 있다. 즉, 검색 제공부(112)는 인터랙티브(interactive) 검색 방식을 기반으로 사용자가 원하는 디자인이 제공될 때까지(즉, 추가적인 스케치 입력이 미수신될 때까지) 검색결과로 출력된 이미지를 대상으로 스케치 추가 및 검색의 리파인(refine)을 수행할 수 있다.In this case, if the image displayed on the screen 330 is not a wedding dress of a desired design, the user
도 4는 본 발명의 일실시예에 있어서, 의류 사진 전체 이미지 및 부분 이미지를 기반으로 학습을 수행하는 동작을 설명하기 위해 제공되는 도면이다.FIG. 4 is a diagram provided to explain an operation of performing learning based on a clothes photograph full image and a partial image according to an embodiment of the present invention.
도 4의 410을 참고하여, 의류 사진 전체 이미지를 기반으로 딥러닝(deep learning)을 수행하는 동작을 설명하고, 450을 참고하여, 의류 사진에 미리 지정된 특정 요소 각각에 해당하는 부분 이미지를 기반으로 딥러닝을 수행하는 동작을 설명하기로 한다.Referring to 410 of FIG. 4, an operation of performing deep learning based on the entire garment photo image will be described. Referring to 450, the partial image corresponding to each specific element predetermined in the garment photo will be described. An operation of performing deep learning will be described.
학습 제어부(111)는 의류 데이터베이스(150)에 저장된 복수의 의류 사진들을 대상으로 딥러닝(deep learning)을 수행할 수 있다. 여기서, 복수의 의류 사진들 각각의 식별자 정보는 각 의류 사진에 부여된 키워드 라벨링 데이터와 연관하여 의류 데이터베이스(150)에 저장 및 유지될 수 있다. The
410을 참고하면, 학습 제어부(111)는 학습하고자 하는 특정 의류 사진(예컨대, 청바지)의 전체 이미지를 대상으로 딥러닝을 수행할 수 있다. 이때, 학습 제어부(111)는 상기 특정 의류 사진이 속하는 카테고리, 특정 요소 등의 키워드 라벨링 데이터에 기초하여 특정 의류 사진을 학습시킬 수 있다. 예컨대, 청바지의 경우, 키워드 라벨링 데이터는 여성 의류, 청바지, 호주머니, 워싱, 해짐을 포함할 수 있다. 청바지에 따라 워싱 정도(level)가 상이하고, 해짐이 있는 청바지, 해짐이 없는 청바지가 존재할 수 있다. 이에 따라, 학습 제어부(111)는 여성의류, 청바지 등의 카테고리 이외에 호주머니, 워싱, 해짐같은 특정 요소에 기초하여 딥러닝을 수행할 수 있다. 이러한 훈련 데이터(예컨대, 키워드 라벨링 데이터)를 기반으로 생성된 CNN(Convolution Neural Network) 모델에 기초하여, 특정 의류 사진(청바지 사진의 전체 이미지)를 대상으로 특징점들(feature representation)이 추출될 수 있다. 이때, 학습 제어부(111)는 추출된 특징점들을 대상으로 청바지 사진에 해당하는 모든 특정 요소(예컨대, 호주머니, 워싱, 해짐)와 관련하여 확률값을 계산할 수 있다. 그리고, 계산된 확률값이 미리 지정된 기준값 이상이면, 해당 청바지 사진에 해당 특정 요소가 존재하고, 계산된 확률값이 상기 기준값보다 작으면, 해당 청바지 사진에 해당 특정 요소가 존재하지 않는 것으로 판단할 수 있다. 예컨대, 특정 청바지 사진을 대상으로, 호주머니 관련 확률값이 기준값 이상이면 호주머니가 존재하는 것으로 판단하고, 기준값보다 작으면 호주머니가 포함되지 않은 청바지로 판단할 수 있다. 그리고, 특정 청바지 사진을 대상으로 워싱관련 확률값이 기준값 이상이면 워싱이 존재하는 것으로 판단하고, 기준값보다 작으면, 워싱이 포함되지 않은 청바지로 판단할 수 있다. 이처럼, 확률값의 크기에 따라 특정 의류 사진에 관련된 특정 요소의 존재여부가 판단될 수 있다.Referring to 410, the learning
이처럼, 학습 제어부(111)는 특정 의류 사진(예컨대, 청바지 사진)의 전체 이미지를 대상으로 딥러닝을 수행한 다음, 최적화를 위해 부분 이미지를 대상으로 딥러닝을 수행할 수 있다.As such, the
420을 참고하면, 학습 제어부(111)는 410과 같은 청바지 사진의 전체 이미지가 아닌 청바지 사진에서 호주머니에 해당하는 부분 이미지(421)로부터 추출된 특징점들에 기초하여 딥러닝을 수행할 수 있다. 즉, 학습 제어부(111)는 호주머니에 해당하는 부분 이미지만을 이용하여 호주머니의 시각적 특성을 학습할 수 있다. 마찬가지로, 해짐에 해당하는 부분 이미지(422)만을 이용하여 해짐의 시각적 특성을 학습할 수 있다.Referring to 420, the learning
의류 사진과 마찬가지로, 학습 제어부(111)는 의류 데이터베이스(150)에 저장 및 유지되고 있는 스케치 이미지들을 대상으로 딥러닝을 수행할 수 있다. 이때, 430을 참고하면, 학습 제어부(111)는 특정 의류 사진(예컨대, 청바지 사진)에 해당하는 전체 스케치 이미지(431)를 기반으로 딥러닝을 수행할 수 있다. 그리고, 학습 제어부(111)는 특정 의류 사진(예컨대, 청바지 사진)에 미리 지정된 각 특정 요소에 해당하는 스케치의 부분 이미지(예컨대, 해짐에 해당하는 스케치의 부분 이미지, 432)를 기반으로 딥러닝을 수행할 수 있다. Similar to the garment photo, the learning
도 5는 본 발명의 일실시예에 있어서, 통합 의류 특징점들을 기반으로 통합 이미지와 매칭하는 이미지를 검색하는 방법을 설명하기 위해 제공되는 도면이고, 도 6은 트리플렛 랭킹 데이터(triplet ranking data)를 기반으로 유사도를 계산하는 동작을 나타내는 도면이다.FIG. 5 is a view provided to explain a method of searching for an image matching an integrated image based on integrated clothing feature points, and FIG. 6 is based on triplet ranking data. Is a diagram illustrating an operation of calculating similarity.
도 5의 510을 참고하면, 검색 제공부(112)는 특정 의류 이미지(511)에 해당하는 키워드 라벨링 데이터(예컨대, 여성 의류, 청바지, 호주머니, 워싱, 해짐)와 각 키워드 라벨링 데이터 별로 계산된 특정 의류 이미지(511)와 상기 특정 의류 이미지(511)에 매칭할 것으로 여겨지는 이미지(예컨대, 동일한 키워드 라벨링 데이터가 지정된 의류 이미지) 간의 확률값(512)에 기초하여 두 개의 의류 이미지 간의 유사도를 계산할 수 있다. 여기서, 상기 확률값(512)은 두 이미지 간의 매칭 확률을 나타낼 수 있다. 예컨대, 검색 제공부(112)는 아래의 수학식 1에 기초하여 사용자에 의해 선택된 특정 의류 이미지(511)와 매칭 이미지 간의 유클리드 디스턴스를 계산할 수 있다.Referring to 510 of FIG. 5, the
[수학식 1][Equation 1]
위의 수학식 1에 따르면, 검색 제공부(112)는 특정 의류 이미지(511)의 전체 이미지를 대상으로 추출된 통합 의류 특징점들과 매칭 이미지의 전체 이미지를 대상으로 추출된 통합 의류 특징점들에 기초하여 계산된 유클리드 디스턴스를 계산할 수 있다. 여기서, 매칭 이미지는 복수개 존재할 수 있으며, 검색 제공부(112)는 복수개의 매칭 이미지와 상기 이미지(511) 간의 유사도를 판단하기 위해 유클리드 디스턴스를 계산할 수 있다.According to Equation 1 above, the
이때, 520을 참고하면, 검색 제공부(112)는 최적화를 위해 특정 의류 이미지(511, 즉, 사진과 스케치가 조합된 통합 이미지)의 키워드 라벨링 데이터 중 특정 요소에 해당하는 부분 이미지를 대상으로 유사도를 계산할 수 있다. In this case, referring to 520, the
일례로, 검색 제공부(112)는 상기 이미지(511)의 호주머니에 해당하는 부분 이미지로부터 추출된 특징점들과 복수의 매칭 이미지들 각각의 호주머니에 해당하는 부분 이미지로부터 추출된 특징점들에 기초하여, 상기 이미지(511)의 호주머니에 해당하는 부분 이미지와 복수의 매칭 이미지들의 호주머니에 해당하는 부분 이미지 간의 유클리드 디스턴스를 계산할 수 있다. 예컨대, 의류 이미지(511)의 호주머니에 해당하는 부분 이미지와 매칭 이미지 1의 부분 이미지(521) 간의 유클리드 디스턴스(예컨대, 0.61), 매칭 이미지 2의 부분 이미지(522)와의 유클리드 디스턴스(예컨대, 0.84), 매칭 이미지 3(523)과의 유클리드 디스턴스(예컨대, 0.57) 등이 계산될 수 있다. 호주머니 이외에 다른 특정 요소인 워싱, 해짐 각각과 관련하여 통합 이미지에 해당하는 특정 요소 별로 매칭 이미지들 각각과의 유클리드 디스턴스가 계산될 수 있다. 즉, 검색 제공부(112)는 아래의 수학식 2에 기초하여 특정 요소 별로 통합 이미지와 매칭 이미지 간의 유사도를 나타내는 유클리드 거리를 계산할 수 있다.For example, the
[수학식 2][Equation 2]
위의 수학식 1에 기초하여 통합 이미지의 전체 이미지를 대상으로 계산된 유클리드 디스턴스와 수학식 2에 기초하여 통합 이미지의 특정 요소에 해당하는 부분 이미지 별로 계산된 유클리드 디스턴스에 기초하여 통합 이미지와 가장 유사도가 높은 매칭 이미지가 결정될 수 있다. 이때, 가장 유사도가 높은 매칭 이미지가 화면을 통해 제공될 수도 있고, 매칭 이미지들을 대상으로 유사도가 높은 순서로 정렬한 후, 정렬된 복수의 매칭 이미지들이 해당 유사도와 함께 화면에 디스플레이될 수 있다. The most similarity to the unified image based on the Euclidean distance calculated for the entire image of the unified image based on Equation 1 above and the Euclidean distance calculated for the partial image corresponding to a specific element of the unified image based on Equation 2 The high matching image can be determined. In this case, the matching image with the highest similarity may be provided through the screen, or after the matching images are arranged in the order of high similarity, the plurality of aligned matching images may be displayed on the screen together with the corresponding similarity.
예를 들어, 특정 요소에 해당하는 부분 이미지 별로 유클리드 디스턴스가 계산되면, 아래의 수학식 3과 같이 부분 이미지 별로 계산된 유클리드 디스턴스에 기초하여 해당 매칭 이미지(예컨대, 매칭 이미지 1)과 통합 이미지 간의 최종 유사도 Dtotal가 계산될 수 있다.For example, when the Euclidean distance is calculated for each partial image corresponding to a specific element, the final image between the matching image (eg, Matching image 1) and the integrated image based on the Euclidean distance calculated for each partial image as shown in Equation 3 below. Similarity D total can be calculated.
[수학식 3][Equation 3]
수학식 3에 따르면, 학습 모델의 입력 파라미터로서 특정 매칭 이미지의 최종 유사도가 설정되기 이전에, 상기 최종 유사도는 해당 매칭 이미지의 유클리드 디스턴스들(Dall, Dpocket, Dwash, Dtear)의 총합에 기초하여 계산될 수 있다.According to Equation 3, before the final similarity of a specific matching image is set as an input parameter of the learning model, the final similarity is the sum of Euclidean distances D all , D pocket , D wash , and D tear of the matching image. It can be calculated based on.
이때, 위의 수학식 3에 기초하여 계산된 유클리드 디스턴스 총합에 따른 유사도와, 실제 사람들의 평가에 따른 통합 이미지와 매칭 이미지 간의 유사도가 상이할 수 있으며, 유사도 간의 차이가 많이 날수록 손실(Loss)이 상대적으로 더 크게 계산될 수 있다.. 예컨대, 도 6의 610을 참고하면, 검색 제공부(112)는 통합 이미지(611)와 매칭 이미지 1(612) 간의 유클리드 디스턴스가 매칭 이미지 2(613)와의 유클리드 디스턴스보다 큰 경우, 매칭 이미지 1(612)이 매칭 이미지 2(613)보다 통합 이미지(611)와 유사한 것으로 결정할 수 있으나, 실제로 사람들은 통합 이미지(611)와 매칭 이미지 2(613)가 더 유사하다고 느낄 수 있다. In this case, the similarity according to the sum of Euclidean distance calculated based on Equation 3 above, and the similarity between the integrated image and the matching image according to the evaluation of real people may be different, and as the difference between the similarities increases, the loss is increased. For example, referring to 610 of FIG. 6, the
이에 따라, 학습 제어부(111)는 다른 사용자 단말들로부터 수집된 트리플렛 랭킹 데이터(triplet ranking data)에 기초하여 통합 이미지(611)와 매칭 이미지들 간의 유사도가 사용자들의 응답을 잘 반영하도록 학습 시 반영할 수 있다. 예컨대, 학습 제어부(111)는 실제 사람들의 유사도 평가와 위의 수학식 3을 기반으로 기계적으로 시스템에서 계산된 유사도 평가 간의 차이, 즉, 손실(Loss)이 감소하는 방향으로 학습 모델을 훈련시킬 수 있다. 이때, 학습 제어부(111)는 수학식 3에 기초하여 계산된 매칭 이미지 별 최종 유사도를 학습 모델의 입력 파라미터로 설정하여 손실(Loss)을 감소시키는 방향으로 학습 모델(즉, CNN 모델)을 학습시킬 수 있다.Accordingly, the learning
이처럼, 학습 모델을 통해 학습되어 도출되는 유사도는 아래의 수학식 4와 같이 표현될 수 있다.As such, the similarity derived by learning through the learning model may be expressed by Equation 4 below.
[수학식 4][Equation 4]
수학식4와 같이 표현되는 유사도 공식은 훈련 데이터(즉, 트리플렛 랭킹 데이터)가 증가하거나 변경될 때마다 계속 업데이트되어 개선될 수 있다.The similarity formula represented by Equation 4 may be updated and improved whenever training data (ie, triplet ranking data) is increased or changed.
이처럼, 시스템에서 제공되는 검색 결과에 대한 사용자 응답을 학습 모델(CNN 모델)에 반영하여 사용자들이 통합 이미지와 더 비슷하다고 인식하는 매칭 이미지와 시스템에서 계산된 매칭 이미지 간의 손실(loss)을 감소시킬 수 있다. 예를 들어, 상기 손실(loss)은 아래의 수학식 5에 기초하여 계산될 수 있다. 여기서, 트리플렛 랭킹 데이터는 사용자들(즉, 사용자 단말들)로부터 수집한 응답 데이터로서, 통합 이미지와 복수의 매칭 이미지들을 제시하고, 제시된 이미지들 중 사람의 육안으로 확인했을 때 통합 이미지와 가장 유사한 이미지를 선택받은 매칭 이미지의 식별자 정보를 포함할 수 있다. In this way, the user response to the search results provided by the system can be reflected in the learning model (CNN model) to reduce the loss between the matching image that users perceive as more similar to the integrated image and the matching image calculated by the system. have. For example, the loss may be calculated based on Equation 5 below. Here, the triplet ranking data is response data collected from users (ie, user terminals), and present an integrated image and a plurality of matching images, and the image most similar to the integrated image when viewed by the human eye among the presented images. May include identifier information of the selected matching image.
[수학식 5][Equation 5]
위의 수학식 5에서, anchor은 통합 이미지(621), positive는 복수의 매칭 이미지들 중 사용자들이 통합 이미지(621)와 가장 유사하다고 인식하는 매칭 이미지(623), 그리고, negative는 시스템에서 통합 이미지(621)와 유사도가 가장 높다고 결정한 매칭 이미지(622)를 나타낼 수 있다. 즉, negative는 위의 수학식 3 및 4에 기초하여 통합 이미지(621)와의 유클리드 디스턴스가 가장 큰 매칭 이미지에 해당할 수 있다.In Equation 5 above, anchor is an integrated image 621, positive is a matching image 623 among the plurality of matching images that users perceive as most similar to the integrated image 621, and negative is an integrated image in the system. The matching image 622 determined to have the highest similarity with 621 may be represented. That is, negative may correspond to a matching image having the largest Euclidean distance with the integrated image 621 based on Equations 3 and 4 above.
수학식 5에 따르면, 통합 이미지(621)의 통합 의류 특징점들과 매칭 미지(623)의 통합 의류 특징점들에 기초하여 계산된 유클리드 디스턴스와 통합 이미지(621)의 통합 의류 특징점들과 매칭 이미지(622)의 통합 의류 특징점들에 기초하여 계산된 유클리드 디스턴스에 기초하여 손실(Loss)이 계산될 수 있다. 그러면, 학습 제어부(111)는 계산된 손실(loss)을 최소화하도록 CNN 모델을 기반으로 학습을 수행할 수 있다. 이처럼, 검색 결과로 제공되는 통합 이미지와 매칭하는 이미지들의 특징값들이 학습을 위해 CNN 모델의 입력값으로 적용되고, 손실(loss)을 최소화하는 방향으로 학습이 진행됨에 따라, 결과적으로, 위의 수학식 3에 기초하여 계산된 유클리드 디스턴스들이 사용자들이 인지한 유사도를 손실을 고려하기 이전보다 잘 반영하는 방향으로 CNN 모델이 학습될 수 있다. 학습이 반복될수록, 처음에는 통합 이미지(611)와 매칭 이미지 1(612)이 가장 유사도가 높은 것으로 검색 결과를 제공하였으나, 손실을 고려한 학습을 수행할수록, 통합 이미지(621)와 매칭 이미지 2(623)가 가장 유사도가 높은 것으로 검색 결과가 제공될 수 있다. According to Equation 5, the unified clothing feature points of the unified image 621 and the unified garment feature points and the matching image 622 of the unified clothing feature points of the unified image 621 and the unified garment feature points of the unknown image 623 are calculated. Loss may be calculated based on the Euclidean distance calculated based on the unified garment feature points of h). Then, the learning
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and the drawings as described above, various modifications and variations are possible to those skilled in the art from the above description. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components. Or even if replaced or substituted by equivalents, an appropriate result can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are within the scope of the claims that follow.
Claims (6)
카테고리(category) 별로 서로 다른 복수의 의류 사진들 및 상기 복수의 의류 사진들관련 스케치 이미지들이 저장된 의류 데이터베이스를 대상으로, 사용자에 의해 선택된 타겟 이미지(target image)에 해당하는 의류 사진을 검색하여 제공하는 단계;
제공된 상기 의류 사진을 대상으로, 상기 의류 사진 상에 디테일을 추가하기 위한 스케치(sketch) 입력을 수신하는 단계;
상기 제공된 의류 사진 상에 그려진 스케치(sketch) 및 상기 제공된 의류 사진을 포함하는 통합 이미지로부터 통합 의류 특징점(feature representation)을 추출하는 단계; 및
상기 의류 데이터베이스를 대상으로, 상기 통합 의류 특징점에 기초하여 상기 통합 이미지와 유사도가 가장 높은 이미지를 검색하여 제공하는 단계
를 포함하는 유사 이미지 검색 방법.In a similar image retrieval method executed by a computer,
A clothing image corresponding to a target image selected by a user is searched and provided in a clothing database in which a plurality of different clothing pictures and sketch images related to the plurality of clothing pictures are stored for each category. step;
Receiving a sketch input for adding detail on the garment photo, targeting the provided garment photo;
Extracting an integrated garment feature representation from an integrated image comprising a sketch drawn on the provided garment photo and the provided garment photo; And
Searching for and providing an image having the highest similarity with the integrated image based on the integrated clothing feature point in the clothing database;
Similar image search method comprising a.
상기 통합 의류 특징점은, 의류 사진의 전체 이미지를 대상으로 추출된 적어도 하나의 특징점 1, 미리 지정된 특정 요소에 해당하는 상기 의류 사진의 부분 이미지에서 추출된 적어도 하나의 특징점 2, 스케치 이미지의 전체 이미지를 대상으로 추출된 적어도 하나의 특징점 3, 및 미리 지정된 특정 요소에 해당하는 상기 스케치 이미지의 부분 이미지에서 추출된 적어도 하나의 특징점 4를 포함하고,
상기 특정 요소는, 상기 타겟 이미지가 속하는 카테고리에 따라 서로 다른 요소를 포함하는 것
을 특징으로 하는 유사 이미지 검색 방법.The method of claim 1,
The integrated clothing feature point may include at least one feature point 1 extracted from an entire image of a garment photo, at least one feature point 2 extracted from a partial image of the garment photo corresponding to a predetermined specific element, and an entire image of a sketch image. At least one feature point 3 extracted as a target, and at least one feature point 4 extracted from a partial image of the sketch image corresponding to a predetermined specific element,
The specific element may include different elements according to a category to which the target image belongs.
Similar image search method characterized in that.
상기 의류 사진, 상기 의류 사진의 부분 이미지, 상기 스케치 이미지, 상기 스케치 이미지의 부분 이미지 각각을 대상으로 각 이미지에 부여된 키워드 라벨링 데이터를 기반으로 딥러닝(deep learning)을 수행하는 학습 단계
를 더 포함하고,
상기 딥러닝을 수행하는 학습 단계는,
상기 의류 사진 및 상기 의류 사진의 부분 이미지를 대상으로, 상기 특징점 1 및 특징점 2를 획득하기 위한 딥러닝을 수행하는 단계; 및
상기 특징점 1 및 특징점 2를 획득하기 위한 딥러닝과는 별도로 구분하여, 상기 특징점 3 및 특징점 4를 획득하기 위한 딥러닝을 수행하는 단계
를 포함하는 유사 이미지 검색 방법.The method of claim 2,
A learning step of performing deep learning based on keyword labeling data applied to each image of the garment photo, the partial image of the garment photo, the sketch image, and the partial image of the sketch image.
More,
The learning step of performing the deep learning,
Performing deep learning to acquire the feature points 1 and 2 from the garment photo and the partial image of the garment photo; And
Performing deep learning to obtain the feature points 3 and 4 separately from the deep learning to obtain the feature points 1 and 2;
Similar image search method comprising a.
상기 통합 이미지와 유사도가 가장 높은 이미지를 검색하여 제공하는 단계는,
상기 의류 데이터베이스를 대상으로, 상기 통합 이미지에 부여된 키워드 라벨링 데이터가 매칭하는 적어도 하나의 매칭 이미지를 검색하는 단계; 및
검색된 상기 적어도 하나의 매칭 이미지와 상기 통합 이미지 간의 유클리드 디스턴스(Euclidean distance)에 기초하여 상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계
를 포함하고,
상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는,
검색된 상기 적어도 하나의 매칭 이미지를 대상으로, 매칭 이미지의 전체 이미지와 상기 통합 이미지의 전체 이미지 간의 유클리드 디스턴스(Euclidean distance)를 계산하는 것
을 특징으로 하는 유사 이미지 검색 방법.The method of claim 1,
Searching for and providing an image having the highest similarity with the integrated image,
Searching for the at least one matching image to which the keyword labeling data assigned to the integrated image matches the clothing database; And
Determining an image having the highest similarity with the integrated image based on an Euclidean distance between the retrieved at least one matching image and the integrated image
Including,
Determining the image having the highest similarity with the integrated image,
Calculating an Euclidean distance between the entire image of the matching image and the entire image of the unified image, based on the retrieved at least one matching image;
Similar image search method characterized in that.
상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는,
검색된 상기 적어도 하나의 매칭 이미지를 대상으로, 통합 이미지에 부여된 복수의 키워드 라벨링 데이터 중 특정 키워드 라벨링 데이터에 해당하는 매칭 이미지의 부분 이미지와 상기 특정 키워드 라벨링 데이터에 해당하는 상기 통합 이미지의 부분 이미지 간의 유클리드 디스턴스(Euclidean distance)를 계산하는 것
을 특징으로 하는 유사 이미지 검색 방법.The method of claim 4, wherein
Determining the image having the highest similarity with the integrated image,
The partial image of the matching image corresponding to the specific keyword labeling data among the plurality of keyword labeling data applied to the integrated image and the partial image of the integrated image corresponding to the specific keyword labeling data are searched for the at least one matching image searched. To calculate Euclidean distance
Similar image search method characterized in that.
상기 통합 이미지와 유사도가 가장 높은 이미지를 결정하는 단계는,
상기 적어도 하나의 매칭 이미지 중 특정 매칭 이미지를 대상으로, 복수의 키워드 라벨링 데이터 별로 계산된 유클리디언 디스턴스의 합에 기초하여 계산된 특정 매칭 이미지의 최종 유사도를 학습 모델의 입력 파라미터로 설정함으로써, 상기 유사도가 가장 높은 이미지를 결정하는 것
을 특징으로 하는 유사 이미지 검색 방법.The method of claim 4, wherein
Determining the image having the highest similarity with the integrated image,
The final similarity of the specific matching image calculated based on the sum of Euclidean distances calculated for each of the plurality of keyword labeling data is set as an input parameter of the training model, based on the specific matching image among the at least one matching image. Determining the image with the highest similarity
Similar image search method characterized in that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180040942A KR20190117958A (en) | 2018-04-09 | 2018-04-09 | Method for image searching based on combination of picture and sketch |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180040942A KR20190117958A (en) | 2018-04-09 | 2018-04-09 | Method for image searching based on combination of picture and sketch |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20190117958A true KR20190117958A (en) | 2019-10-17 |
Family
ID=68424068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180040942A KR20190117958A (en) | 2018-04-09 | 2018-04-09 | Method for image searching based on combination of picture and sketch |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20190117958A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102628994B1 (en) * | 2023-04-24 | 2024-01-25 | 주식회사 엔피오이 | AI-based personalized bag recommendation system for consumers |
-
2018
- 2018-04-09 KR KR1020180040942A patent/KR20190117958A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102628994B1 (en) * | 2023-04-24 | 2024-01-25 | 주식회사 엔피오이 | AI-based personalized bag recommendation system for consumers |
KR102654946B1 (en) * | 2023-04-24 | 2024-04-04 | 주식회사 엔피오이 | Artificial intelligence-based preferred product recommendation system based on consumer fashion style |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10043109B1 (en) | Attribute similarity-based search | |
US11216861B2 (en) | Color based social networking recommendations | |
US10242396B2 (en) | Automatic color palette based recommendations for affiliated colors | |
US20190034995A1 (en) | Intelligent shopping guide method and intelligent shopping guide device | |
US9727983B2 (en) | Automatic color palette based recommendations | |
US9652868B2 (en) | Automatic color palette based recommendations | |
US9607010B1 (en) | Techniques for shape-based search of content | |
US8320707B2 (en) | System and method for use of images with recognition analysis | |
US20200342320A1 (en) | Non-binary gender filter | |
US11475500B2 (en) | Device and method for item recommendation based on visual elements | |
US20070081744A1 (en) | System and method for use of images with recognition analysis | |
WO2015195663A1 (en) | Search based on combining user relationship datauser relationship data | |
JP2018084890A (en) | Information processing unit, information processing method, and program | |
JP2003271084A (en) | Apparatus and method for providing information | |
US11055759B1 (en) | Color selection for image matching visual search | |
KR101905501B1 (en) | Method and apparatus of recommending contents | |
US20190325497A1 (en) | Server apparatus, terminal apparatus, and information processing method | |
US20200050626A1 (en) | Electronic device for providing information on item based on category of item | |
CN111639979A (en) | Entertainment item recommendation method and device | |
JP2016057940A (en) | Image processing device and image processing program | |
US20200265233A1 (en) | Method for recognizing object and electronic device supporting the same | |
US11972466B2 (en) | Computer storage media, method, and system for exploring and recommending matching products across categories | |
CN106951433B (en) | Retrieval method and device | |
KR102102572B1 (en) | System and method for providing online shopping mall | |
KR20190117958A (en) | Method for image searching based on combination of picture and sketch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |