KR102561734B1 - 이미지 복원 기반 상품검색 방법 및 시스템 - Google Patents

이미지 복원 기반 상품검색 방법 및 시스템 Download PDF

Info

Publication number
KR102561734B1
KR102561734B1 KR1020210019951A KR20210019951A KR102561734B1 KR 102561734 B1 KR102561734 B1 KR 102561734B1 KR 1020210019951 A KR1020210019951 A KR 1020210019951A KR 20210019951 A KR20210019951 A KR 20210019951A KR 102561734 B1 KR102561734 B1 KR 102561734B1
Authority
KR
South Korea
Prior art keywords
image
text
product
product search
main product
Prior art date
Application number
KR1020210019951A
Other languages
English (en)
Other versions
KR20220116730A (ko
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 KR1020210019951A priority Critical patent/KR102561734B1/ko
Publication of KR20220116730A publication Critical patent/KR20220116730A/ko
Application granted granted Critical
Publication of KR102561734B1 publication Critical patent/KR102561734B1/ko

Links

Images

Classifications

    • 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/0623Item investigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법은, 컴퓨팅 장치에서 실행되는 상품검색 어플리케이션이 딥러닝에 기초하여 이미지 복원 기반의 상품검색을 수행하는 방법으로서, 입력 이미지 내 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지를 획득하는 단계; 상기 획득된 메인 상품 이미지 내 텍스트를 검출하는 단계; 상기 검출된 텍스트에 대한 속성정보를 획득하는 단계; 상기 획득된 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행하는 단계; 상기 텍스트가 제거된 이미지인 손실 이미지를 기초로 이미지 복원을 수행하여 복구 이미지를 획득하는 단계; 상기 복구 이미지 또는 상기 텍스트가 유지된 이미지인 원본 이미지에 기반하여 상기 타겟상품과 유사한 상품을 검색하는 상품검색을 수행하는 단계; 및 상기 상품검색의 결과를 제공하는 단계를 포함한다.

Description

이미지 복원 기반 상품검색 방법 및 시스템{METHOD AND SYSTEM FOR PRODUCT SEARCH BASED ON IMAGE RESTORATION}
본 발명은 이미지 복원에 기반한 상품검색 방법 및 시스템에 관한 것이다. 보다 상세하게는, 딥러닝을 기반으로, 이미지 기반의 상품검색 시 검색하고자 하는 상품과 무관한 오브젝트를 상기 이미지로부터 제거하고, 상기 무관한 오브젝트가 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행하는 이미지 복원 기반 상품검색 방법 및 시스템에 관한 것이다.
현대 사회에서는, 각종 정보통신기술(ICT, Information&Communications Technologies)의 발전에 따라서, PDA(Personal Digital Assistant), 스마트 폰 등과 같은 이동통신 단말기를 통해 온라인 쇼핑몰에서 제공하는 상품을 확인하고 쇼핑하는 것이 가능해졌다.
온라인 쇼핑몰(Online shopping mall)이란, 인터넷과 같은 네트워크를 통하여 온라인 상에서 상품을 구매하고 판매할 수 있는 장소를 의미한다.
이러한 온라인 쇼핑몰은, 최근 들어 개체 수가 급격히 증가함에 따라 쇼핑몰의 경쟁력을 증대시킬 수 있는 차별화된 서비스를 요구하고 있으며, 이를 제공하기 위한 다양한 솔루션을 필요로 하는 실정이다.
더하여, 온라인 쇼핑몰을 통해 판매되는 상품의 개체 수 또한 폭발적으로 증가함에 따라서, 온라인 상에 존재하는 방대한 양의 상품에 대한 효과적인 검색 기술이 요구되고 있다.
그리하여 종래에는, 온라인 쇼핑몰 상에서 상품을 검색할 시, 상품에 대한 명칭을 알지 못하거나 기존의 검색 방법(예컨대, 카테고리, 키워드 검색 등)으로는 상품을 찾기 어렵거나 혹은 원하는 상품과 관련된 유사 상품을 편리하게 확인하고자 하는 상황에서 사용자 즉, 온라인 쇼퍼(Online shopper)들의 니즈(needs)를 충족시키기 위하여, 이미지를 기반으로 상품을 검색할 수 있는 기술이 도입되어 왔다.
그러나, 종래의 이미지 기반 상품검색 기술은, 상품검색에 이용되는 이미지를 단순히 인식하여 그에 대응되는 상품을 제공하는 수준에 머물러 있어, 해당하는 이미지가 검색하고자 하는 상품의 형상을 온전하게 표시하지 못할 경우 상품 검색의 정확도와 품질이 보장될 수 없다는 문제가 있다.
예를 들면, 검색하고자 하는 상품을 포함하는 이미지가 불법 도용을 방지하거나 소유권을 표시하기 위하여 삽입되는 워터마크 및/또는 특정 상호나 상표 등을 포함하는 경우, 해당 이미지를 기반으로 상품을 검색하는데 상기 삽입된 워터마크 및/또는 상호나 상표 등의 영향으로 상품 검색의 품질이 저하될 수 있다.
즉, 본 기술분야에 있어서 온라인 쇼핑몰의 기본적인 사용성을 편리하게 하는 동시에 기존의 방법과는 차별화된 검색 방법을 제공하고, 더 나아가 상품 검색 결과의 퀄리티를 보다 향상시킴으로써 사용자의 만족도를 높일 수 있는 기술의 도입이 필요시되고 있다.
한편, 훈련 데이터(Training Data)를 통해 학습된 속성을 기반으로 예측 및/또는 분류하는 알고리즘을 연구하는 분야를 우리는 머신 러닝(Machin Learning; 기계학습)이라고 한다.
이러한 머신 러닝의 한 분야로 뉴럴 네트워크(Neural network; 인공신경망)가 존재하며, 빅데이터(Big-Data) 기술이 등장하면서 그 정확성은 나날이 향상되고 있다.
위와 같이, 뉴럴 네트워크에 빅데이터를 결합한 것을 우리는 딥러닝(Deep-Learning)이라고 한다.
자세히, 딥러닝이란, 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 머신 러닝 알고리즘의 집합으로 정의된다.
즉, 딥러닝은, 컴퓨터가 인간을 대체해 방대한 양의 데이터를 분석하고, 사물이나 데이터를 군집화하거나 분류할 수 있다.
KR 10-1852598 B1
본 발명은, 딥러닝에 기반하여 이미지 기반의 상품검색 시 검색하고자 하는 상품과 무관한 오브젝트를 상기 이미지로부터 제거하고, 상기 무관한 오브젝트가 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행하는 이미지 복원 기반 상품검색 방법 및 시스템을 제공하는데 그 목적이 있다.
자세히, 본 발명은, 이미지 내 상품과 무관한 장애물 및/또는 텍스트를 상기 이미지로부터 제거하고, 상기 장애물 및/또는 텍스트가 제거되어 손실된 영역을 복원한 이미지를 기초로 이미지 기반의 상품검색을 수행하는 이미지 복원 기반 상품검색 방법 및 시스템을 제공하고자 한다.
다만, 본 발명 및 본 발명의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법은, 컴퓨팅 장치에서 실행되는 상품검색 어플리케이션이 딥러닝에 기초하여 이미지 복원 기반의 상품검색을 수행하는 방법으로서, 입력 이미지 내 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지를 획득하는 단계; 상기 획득된 메인 상품 이미지 내 텍스트를 검출하는 단계; 상기 검출된 텍스트에 대한 속성정보를 획득하는 단계; 상기 획득된 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행하는 단계; 상기 텍스트가 제거된 이미지인 손실 이미지를 기초로 이미지 복원을 수행하여 복구 이미지를 획득하는 단계; 상기 복구 이미지 또는 상기 텍스트가 유지된 이미지인 원본 이미지에 기반하여 상기 타겟상품과 유사한 상품을 검색하는 상품검색을 수행하는 단계; 및 상기 상품검색의 결과를 제공하는 단계를 포함한다.
이때, 상기 속성정보는, 상기 검출된 텍스트가 상기 타겟상품이 포함하는 문자인 상품 텍스트인지 또는 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트인지 판별한 정보이다.
또한, 상기 텍스트를 검출하는 단계는, 상기 메인 상품 이미지에 기반한 텍스트 세그멘테이션(Text Segmentation)을 수행하여 상기 메인 상품 이미지 내 텍스트의 형태를 따라서 형성되는 텍스트 영역을 검출하는 단계 또는, 상기 메인 상품 이미지에 기반한 텍스트 로컬라이제이션(Text Localization)을 수행하여 상기 텍스트를 포함하는 소정의 영역인 텍스트 바운딩 박스 영역을 검출하는 단계를 포함한다.
또한, 상기 텍스트를 검출하는 단계는, 상기 텍스트 로컬라이제이션에 기반하여 검출된 텍스트 바운딩 박스 영역을 기초로 상기 텍스트 세그멘테이션을 수행하여 상기 텍스트 영역을 검출하는 단계를 더 포함한다.
또한, 상기 텍스트 처리를 수행하는 단계는, 상기 속성정보를 기초로 상기 검출된 텍스트가 상기 삽입 텍스트라고 판단되는 경우, 상기 메인 상품 이미지로부터 상기 검출된 텍스트를 제거하는 단계를 포함한다.
또한, 상기 텍스트를 제거하는 단계는, 상기 텍스트 영역을 기반으로 상기 텍스트를 제거하는 단계 또는 상기 텍스트 바운딩 박스 영역을 기초로 상기 텍스트를 제거하는 단계를 포함한다.
또한, 상기 복구 이미지를 획득하는 단계는, 이미지 인페인팅(Image Inpainting)을 수행하도록 학습된 이미지 딥러닝 뉴럴 네트워크에 상기 손실 이미지를 입력하는 단계와, 상기 이미지 딥러닝 뉴럴 네트워크로부터 상기 손실 이미지 내 상기 텍스트가 제거된 영역이 복원된 이미지인 상기 복구 이미지를 획득하는 단계를 포함한다.
또한, 상기 상품검색을 수행하는 단계는, 상기 복구 이미지 또는 상기 원본 이미지를 이미지 딥러닝 뉴럴 네트워크에 입력하여 특징벡터를 추출하는 단계와, 상기 추출된 특징벡터를 기초로 복수의 상품에 대한 특징벡터들을 저장하는 데이터베이스를 검색하는 단계와, 상기 추출된 특징벡터와의 유사도가 소정의 기준을 충족하는 특징벡터를 가지는 상품을 상기 데이터베이스로부터 검출하는 단계를 포함한다.
한편, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 시스템은, 적어도 하나 이상의 프로세서; 및 적어도 하나 이상의 메모리; 를 포함하고, 상기 메모리에 저장되고 상기 적어도 하나 이상의 프로세서에 의해 실행되어 이미지 복원 기반의 상품검색을 수행하는 적어도 하나의 어플리케이션으로서 상기 적어도 하나의 어플리케이션은, 입력 이미지 내 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지를 획득하고, 상기 획득된 메인 상품 이미지 내 텍스트를 검출하고, 상기 검출된 텍스트에 대한 속성정보를 획득하고, 상기 획득된 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행하고, 상기 텍스트가 제거된 이미지인 손실 이미지를 기초로 이미지 복원을 수행하여 복구 이미지를 획득하고, 상기 복구 이미지 또는 상기 텍스트가 유지된 이미지인 원본 이미지에 기반하여 상기 타겟상품과 유사한 상품을 검색하는 상품검색을 수행하고, 상기 상품검색의 결과를 제공한다.
이때, 상기 어플리케이션은, 상기 검출된 텍스트가 상기 타겟상품이 포함하는 문자인 상품 텍스트인지 또는 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트인지 판별하고, 상기 텍스트가 상기 삽입 텍스트로 판별되면 상기 메인 상품 이미지로부터 상기 검출된 텍스트를 제거한다.
본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 딥러닝을 기초로 이미지 기반의 상품검색 시 검색하고자 하는 상품과 무관한 오브젝트를 상기 이미지로부터 제거하고, 상기 무관한 오브젝트가 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행함으로써, 이미지에 기반한 상품검색 서비스의 정확도 및 품질을 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 이미지 내 상품과 무관한 장애물 및/또는 텍스트를 상기 이미지로부터 제거하고, 상기 장애물 및/또는 텍스트가 제거되어 손실된 영역을 복원한 이미지를 기초로 이미지 기반의 상품검색을 수행함으로써, 해당 이미지에 기반한 상품검색 시 상기 이미지 내 장애물이나 텍스트의 영향으로 인한 품질 저하를 방지할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 이미지에 기반한 딥러닝을 수행하여 온라인 쇼핑몰에서의 상품검색 서비스를 구현함으로써, 온라인 쇼핑몰에 대한 기본적인 사용성을 편리하게 함과 동시에 그 경쟁력을 증대시킬 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 트레이닝(training)된 딥러닝 뉴럴 네트워크를 이용한 딥러닝을 통해 온라인 쇼핑몰에서의 상품검색 서비스를 구현함으로써, 상품검색의 결과를 보다 정확하고 빠르게 검출하여 제공할 수 있는 효과가 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 명확하게 이해될 수 있다.
도 1은 본 발명의 실시예에 따른 이미지 복원을 기반으로 상품검색을 수행하는 컴퓨팅 장치의 내부 블록도이다.
도 2는 본 발명의 실시예에 따른 이미지 복원에 기반한 상품 검색 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 실시예에 따른 메인 상품 이미지를 설명하기 위한 도면의 일례이다.
도 4는 본 발명의 실시예에 따른 이미지 세그멘테이션(Image Segmentation)을 설명하기 위한 도면의 일례이다.
도 5는 본 발명의 실시예에 따른 이미지 세그멘테이션에 기반하여 장애물 이미지를 획득하는 모습의 일례이다.
도 6은 본 발명의 실시예에 따른 손실 이미지와 복구 이미지를 획득하는 방법을 설명하기 위한 도면의 일례이다.
도 7 및 8은 본 발명의 실시예에 따른 이미지 복원에 기반한 상품 검색 방법에서의 이미지 변환 과정을 보여주는 모습의 일례들이다.
도 9는 본 발명의 실시예에 따른 특징벡터를 2차원으로 변형하여 그래픽 이미지화한 모습의 일례이다.
도 10은 본 발명의 다른 실시예에 따른 이미지 복원에 기반한 상품 검색 방법을 설명하기 위한 흐름도이다.
도 11 내지 도 13은 본 발명의 다른 실시예에 따른 메인 상품 이미지로부터 텍스트를 검출하는 방법을 설명하기 위한 도면의 일례들이다.
도 14는 본 발명의 다른 실시예에 따른 텍스트에 대한 속성정보를 설명하기 위한 도면의 일례이다.
도 15 및 도 16은 본 발명의 다른 실시예에 따른 메인 상품 이미지 내 텍스트 제거 및 이미지 복원 처리를 설명하기 위한 도면의 일례들이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
본 발명의 실시예에 따른 이미지 복원 기반의 상품검색 시스템(이하, 상품검색 시스템)은, 딥러닝에 기반하여 검색하고자 하는 상품과 무관한 오브젝트(실시예에서, 장애물(예컨대, 이종(異種)상품 또는 사람의 신체 등) 및/또는 텍스트(예컨대, 워터마크 등))를 상기 이미지로부터 제거하고, 상기 무관한 오브젝트가 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행하는 이미지 복원 기반 상품검색 서비스(이하, 상품검색 서비스)를 제공할 수 있다.
실시예에서, 위와 같은 상품검색 서비스를 구현하는 영상특징 검출 시스템은, 컴퓨팅 장치를 기반으로 구현될 수 있다.
이하에서는, 첨부된 도면을 참조하여 영상특징 검출 시스템을 구현하는 컴퓨팅 장치에 대해 상세히 설명한다.
- 컴퓨팅 장치(Computing Device; 100)
도 1은 본 발명의 실시예에 따른 이미지 복원을 기반으로 상품검색을 수행하는 컴퓨팅 장치의 내부 블록도이다.
도 1을 참조하면, 본 발명의 실시예에 따른 컴퓨팅 장치(100)는, 상품검색 서비스를 제공하는 상품검색 어플리케이션(140)이 설치된 소정의 컴퓨팅 단말 및/또는 서버 등일 수 있다.
자세히, 컴퓨팅 장치(100)는, 상품검색 어플리케이션(140)이 설치된 모바일 타입 컴퓨팅 디바이스 및/또는 데스크탑 타입 컴퓨팅 디바이스를 포함할 수 있다.
여기서, 모바일 타입 컴퓨팅 디바이스는, 상품검색 어플리케이션(140)이 설치된 스마트 폰이나 테블릿 PC와 같은 모바일 장치일 수 있다.
예를 들어, 모바일 타입 컴퓨팅 디바이스는, 스마트 폰(smart phone), 휴대폰, 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 태블릿 PC(tablet PC) 등이 포함될 수 있다.
또한, 데스크탑 타입 컴퓨팅 디바이스는, 상품검색 어플리케이션(140)이 설치된 고정형 데스크탑 PC, 노트북 컴퓨터(laptop computer), 울트라북(ultrabook)과 같은 퍼스널 컴퓨터 등과 같이 유/무선 통신을 기반으로 상품검색 서비스를 실행하기 위한 프로그램이 설치된 장치 등을 포함할 수 있다.
하드웨어적 관점에서, 위와 같은 컴퓨팅 장치(100)는, 상품검색 서비스 제공을 위한 각종 응용 프로그램, 데이터 및/또는 명령어들을 저장하는 적어도 하나 이상의 메모리(Memory; 110)와, 데이터 처리를 위한 적어도 하나 이상의 프로세서(Processor; 120)를 포함할 수 있다.
또한, 컴퓨팅 장치(100)는, 상품검색 서비스를 제공하기 위한 각종 데이터 및/또는 정보 등을 외부의 컴퓨팅 장치(100)(예를 들면, 쇼핑몰 서버 등) 등과 유/무선 통신하는 통신장치(Communication Device; 130)를 더 포함할 수 있다.
자세히, 실시예예서 메모리(110)는, 상품검색 서비스를 제공하기 위한 운영체제(OS), 각종 응용 프로그램, 어플리케이션, 데이터 및 명령어 중 어느 하나 이상을 저장하고 관리할 수 있다.
실시예에서, 메모리(110)는, 입력 이미지, 상품정보, 메인 상품 이미지, 장애물 이미지, 손실 이미지, 복구 이미지, 텍스트 검출 정보, 검출된 텍스트에 대한 속성정보, 텍스트 처리 이미지 및/또는 특징벡터 정보 등을 저장 및 관리할 수 있다.
또한, 실시예에서 메모리(110)는, 상품검색 서비스를 위한 이미지 데이터 등을 제공할 수 있는 외부의 데이터베이스(예컨대, 웹 서버 및/또는 쇼핑몰 서버 등의 데이터베이스)와 연동하여 각종 데이터를 제공할 수 있다.
특히, 실시예에서 메모리(110)는, 소정의 쇼핑몰 서버의 각 상품에 대한 특징벡터 정보를 데이터베이스화하여 저장 및 관리하는 특징벡터 데이터베이스를 포함할 수 있다.
자세히, 실시예에서 메모리(110)는, 적어도 하나 이상의 쇼핑몰 서버와 연동하여, 각 쇼핑몰 서버에서 제공되는 적어도 하나 이상의 상품 각각에 대한 특징벡터 정보를 데이터베이스화한 특징벡터 데이터베이스를 구축할 수 있다.
이때, 각 쇼핑몰 서버에서 제공되는 적어도 하나 이상의 상품 각각에 대한 특징벡터 정보는, 해당하는 상품의 이미지에 기초한 딥러닝을 기반으로 각기 획득될 수 있다.
이처럼, 이미지에 기초한 딥러닝을 수행하여 해당 이미지의 특징벡터를 획득하는 일련의 기능 동작은, 이하에서 기술되는 이미지 복원 기반의 상품검색 방법에서 상세히 설명하기로 한다.
또한, 실시예예서 위와 같은 메모리(110)는, 프로그램 영역과 데이터 영역을 포함할 수 있다.
여기서, 실시예에 따른 프로그램 영역은, 컴퓨팅 장치(100)를 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 컴퓨팅 장치(100)의 사용에 따라 발생하는 데이터가 저장될 수 있다.
이러한 메모리(110)는, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet)상에서 상기 메모리(110)의 저장 기능을 수행하는 웹 스토리지(web storage)일 수도 있다. 또한, 메모리(110)는, 컴퓨팅 장치(100) 상에 탈착 가능한 형태의 기록매체일 수 있다.
또한, 실시예에서 프로세서(120)는, 본 발명의 실시예에 따른 프로세서(120)는, 상품검색 서비스를 구현하기 위하여 컴퓨팅 장치(100)가 포함하는 각 유닛(unit)의 전반적인 동작을 컨트롤할 수 있다.
이러한 프로세서(120)는, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 컴퓨팅 장치(100)에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리(110)에 저장된 운영체제(OS) 및/또는 어플리케이션 프로그램 등을 실행할 수 있고, 컴퓨팅 장치(100)에 탑재된 각 구성요소들을 제어할 수 있다.
또한, 프로세서(120)는, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다.
또한, 프로세서(120)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
또한, 실시예예서 통신장치(130)는, 상품검색 서비스를 제공하기 위한 각종 데이터 및/또는 정보 등을 송수신할 수 있다.
실시예에서, 통신장치(130)는, 외부의 컴퓨팅 장치(100)(예컨대, 웹 서버 및/또는 쇼핑몰 서버 등)와 유/무선 통신을 수행하여 상품검색 서비스와 관련된 데이터(예컨대, 상품 이미지 등)를 주고받을 수 있다.
이러한 통신장치(130)는, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 임의의 서버 중 적어도 하나와 무선 신호를 송수신할 수 있다.
또한, 통신장치(130)는, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access) 등의 무선 통신방식으로도 무선 신호를 송수신할 수 있다.
또한, 실시예에서 통신장치(130)는, 거리 무선 통신방식으로 무선 신호를 송수신할 수 있다.
예를 들어, 통신장치(130)는, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여 근거리 통신을 지원할 수 있다.
한편, 기능적 관점에서 컴퓨팅 장치(100)는, 상기 메모리(110)에 저장되는 적어도 하나 이상의 어플리케이션(실시예에서, 상품검색 어플리케이션(140))을 포함할 수 있다.
자세히, 실시예에서 상기 상품검색 어플리케이션(140)은, 적어도 하나 이상의 서비스 클라이언트 모듈(141), 적어도 하나 이상의 딥러닝 모듈(142) 및 적어도 하나 이상의 상품검출 모듈(143)을 포함하여 구현될 수 있다.
구체적으로, 실시예에서 서비스 클라이언트 모듈(Service client module; 141)은, 컴퓨팅 장치(100)에서 상품검색 어플리케이션(140)이 동작하는 환경을 제공할 수 있다.
즉, 서비스 클라이언트 모듈(141)은, 이미지 복원에 기반한 상품검색 서비스를 제공하는 상품검색 어플리케이션(140)이 컴퓨팅 장치(100)에서 실행될 수 있는 환경을 제공할 수 있다.
또한, 실시예에서 서비스 클라이언트 모듈(141)은, 위와 같이 제공되는 실행 환경 상에서 상품검색 서비스가 동작하기 위한 소정의 데이터 처리를 수행할 수 있다.
이를 위해, 서비스 클라이언트 모듈(141)은, 상품검색 어플리케이션(140)을 구현하기 위한 응용 프로그램, 데이터 및/또는 명령어 등을 포함할 수 있다.
또한, 실시예에서 딥러닝 모듈(Deep learning module; 142)은, 이미지 딥러닝 뉴럴 네트워크(Image Deep-learning Neural Network)와 연동하여 상품검색 서비스에 필요한 이미지 딥러닝을 수행할 수 있다.
여기서, 이미지 딥러닝 뉴럴 네트워크는, 컨볼루션 뉴럴 네트워크(CNN, Convolution Neural Network, 예컨대, 유-넷 컨볼루션 뉴럴 네트워크(U-net Convolution Neural Network)), 및 Mask R-CNN 중 적어도 하나의 딥러닝 뉴럴 네트워크를 포함할 수 있다.
실시예에서, 이러한 이미지 딥러닝 뉴럴 네트워크와 연동한 딥러닝 모듈(142)은, 연동된 이미지 딥러닝 뉴럴 네트워크에 입력된 이미지에 기반하여, 오브젝트 디텍션(Object Detection), 세그멘테이션(segmentation), 인페인팅(inpainting), 특징 맵(Feature map) 추출, 특징벡터 검출, 텍스트 로컬라이제이션(Text Localization) 및/또는 텍스트 세그멘테이션(Text Segmentation) 등의 이미지 처리 기술에 대한 기능 동작을 수행할 수 있다.
자세히, 실시예에서 딥러닝 모듈(142)은, 적어도 하나 이상의 장애물 처리모듈 및 적어도 하나 이상의 텍스트 처리모듈을 포함할 수 있다.
구체적으로, 실시예에 따른 장애물 처리모듈(Obstacle handling module; 142-1)은, 입력받은 이미지 내 장애물(예컨대, 이종상품 또는 사람의 신체 등)을 검출하고, 이에 대한 소정의 처리(실시예로, 제거 등)를 수행하는 딥러닝을 구현할 수 있다.
실시예에서, 장애물 처리모듈(142-1)은, 입력 이미지에 기반한 오브젝트 디텍션(Object Detection), 세그멘테이션(segmentation), 인페인팅(inpainting), 특징 맵(Feature map) 추출 및/또는 특징벡터 검출 등의 이미지 처리를 위한 딥러닝을 수행할 수 있다.
한편, 실시예에 따른 텍스트 처리모듈(Text processing module; 142-2)은, 입력받은 이미지 내 텍스트(text)를 검출하고, 검출된 텍스트에 대한 소정의 처리(실시예로, 텍스트 속성 구분 및/또는 제거 등)를 수행하는 딥러닝을 구현할 수 있다.
실시예에서, 텍스트 처리모듈(142-2)은, 입력 이미지에 기초한 텍스트 로컬라이제이션(Text Localization), 텍스트 세그멘테이션(Text Segmentation), 인페인팅(inpainting), 특징 맵(Feature map) 추출 및/또는 특징벡터 검출 등의 이미지 처리를 위한 딥러닝을 수행할 수 있다.
참고적으로, 여기서 텍스트 로컬라이제이션이란, 오브젝트 디텍션(object detection)과 유사하나 그 대상이 글자(텍스트)로 특화된 딥러닝 기술일 수 있다.
또한, 텍스트 세그멘테이션이란, 텍스트 영역과 이외의 배경 영역을 구분하는 딥러닝 기술로서, 이미지 세그멘테이션(image segmentation)과 유사하나 그 대상이 글자(텍스트)로 특화된 딥러닝 기술일 수 있다.
또한, 실시예에서 상품검출 모듈(Product detection module; 143)은, 소정의 이미지에 기반하여 수행되는 온라인 쇼핑몰에 대한 상품검색 서비스를 제공할 수 있다.
실시예에서, 상품검출 모듈(143)은, 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지 내 장애물 및/또는 텍스트가 제거된 후, 소정의 손실이 발생한 상기 메인 상품 이미지에 대한 복원이 수행된 이미지에 기초하여, 온라인 쇼핑몰에서의 상품검색을 수행할 수 있다.
그리하여 상품검출 모듈(143)은, 상기 온라인 쇼핑몰로부터 상기 이미지가 포함하는 타겟상품에 대응되는 상품을 검출 및 획득하여 제공할 수 있다.
- 쇼핑몰 서버(Shopping-mall Server)
한편, 본 발명의 실시예에서 쇼핑몰 서버는, 온라인 쇼핑몰 서비스(Online shopping-mall service)를 제공하기 위한 일련의 프로세스를 수행할 수 있다.
자세히, 실시예에서 쇼핑몰 서버는, 네트워크를 통하여 상품을 주문하고 판매할 수 있는 전자상거래 온라인 쇼핑몰 서비스를 실행하기 위한 환경을 컴퓨팅 장치(100)로 제공할 수 있다.
또한, 쇼핑몰 서버는, 상품검색 서비스에 필요한 각종 데이터를 컴퓨팅 장치(100) 및/또는 외부의 서버 등과 송수신할 수 있다.
실시예로, 쇼핑몰 서버는, 온라인 쇼핑몰 상의 복수의 상품에 대한 상품 관련 정보(예컨대, 상품 이미지 및/또는 상품정보 등)를 컴퓨팅 장치(100) 및/또는 외부의 서버로 송신할 수 있고, 컴퓨팅 장치(100) 및/또는 외부의 서버로부터 온라인 쇼핑몰 상의 특정 상품에 대한 니즈(needs) 관련 정보(예컨대, 해당하는 온라인 쇼핑몰에 대하여 검색된 상품에 대한 정보 등)를 수신할 수 있다.
또한, 쇼핑몰 서버는, 온라인 쇼핑몰 서비스와 관련된 기능 동작에 필요한 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다.
실시예로, 쇼핑몰 서버는, 온라인 쇼핑몰에 게시된 적어도 하나 이상의 상품에 대한 상품 이미지 및/또는 상품정보 등을 저장하여 관리할 수 있다.
보다 상세히, 위와 같은 쇼핑몰 서버는, 쇼핑몰 서비스 제공서버, 상품관리 서버 및 데이터저장 서버를 포함할 수 있다.
여기서, 쇼핑몰 서비스 제공서버는, 컴퓨팅 장치(100)에서 온라인 쇼핑몰 서비스가 동작할 수 있는 환경을 제공할 수 있다.
즉, 쇼핑몰 서비스 제공서버는, 컴퓨팅 장치(100)에서 인터넷(Internet) 등을 이용하여 상품을 매매할 수 있는 가상의 상점인 온라인 쇼핑몰을 제공하는 온라인 쇼핑몰 서비스를 구현할 수 있는 환경을 제공할 수 있다.
실시예에서, 이러한 쇼핑몰 서비스 제공서버는, 온라인 쇼핑몰 서비스와 관련하여 제공되는 서비스를 구현할 수 있는 각종 응용 프로그램, 데이터 및/또는 명령어 등을 포함할 수 있다.
또한, 상품관리 서버는, 온라인 쇼핑몰 서비스에 기반하여 제공되는 적어도 하나 이상의 상품에 대한 관리 기능을 수행할 수 있다.
실시예에서, 상품관리 서버는, 상품 별 상품명, 상품 이미지, 상품 가격 및/또는 잔여 수량 등을 관리할 수 있다.
또한, 데이터저장 서버는, 온라인 쇼핑몰 서비스를 구현하기 위한 각종 응용 프로그램, 어플리케이션, 명령어 및/또는 데이터 등을 저장하고 관리할 수 있다.
예를 들면, 데이터저장 서버는, 온라인 쇼핑몰 서비스를 이용하는 사용자별 개인 정보, 쇼핑 정보 및/또는 주문 정보 등을 각 사용자별 계정에 매칭하여 저장 및 관리할 수 있다.
위와 같은 구성요소들을 포함하는 쇼핑몰 서버는, 적어도 하나 이상의 쇼핑몰 서비스 제공서버, 상품관리 서버 및/또는 데이터저장 서버로 구성될 수 있으며, 데이터 처리를 위한 프로세서(120)들과, 온라인 쇼핑몰 서비스 제공을 위한 명령어들을 저장하는 메모리(110)들을 포함할 수 있다.
- 이미지 복원 기반의 상품검색 방법
이하, 컴퓨팅 장치(100)에서 실행되는 상품검색 어플리케이션(140)이 이미지 복원에 기반하여 상품검색을 수행하는 방법에 대해 첨부된 도 2 내지 도 16을 참조하여 상세히 설명한다.
이때, 본 발명의 실시예에서 컴퓨팅 장치(100)의 적어도 하나 이상의 프로세서(120)는, 적어도 하나 이상의 메모리(110)에 저장된 적어도 하나 이상의 상품검색 어플리케이션(140)을 실행하거나 백그라운드 상태로 동작하게 할 수 있다.
<제 1 실시예 - 이미지 내 장애물을 제거 및 복원하여 상품검색>
본 발명의 실시예에서 상품검색 어플리케이션(140)은, 딥러닝에 기반하여 검색하고자 하는 상품과 무관한 장애물(예컨대, 이종상품 또는 사람의 신체 등)을 상기 이미지로부터 제거하고, 상기 장애물이 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행하는 상품검색 서비스를 제공할 수 있다.
도 2는 본 발명의 실시예에 따른 이미지 복원에 기반한 상품 검색 방법을 설명하기 위한 흐름도이다.
도 2를 참조하면, 실시예에서 컴퓨팅 장치(100)의 적어도 하나의 프로세서(120)에 의하여 실행되거나 백그라운드 상태로 동작하는 상품검색 어플리케이션(140)은, 검색하고자 하는 상품을 의미하는 타겟(target)상품에 대한 입력 이미지와 상품정보를 획득할 수 있다. (S101)
여기서, 실시예에 따른 입력 이미지란, 검색하고자 하는 상품인 타겟상품을 촬영한 영상일 수 있다.
또한, 실시예에서 상품정보란, 타겟상품에 대한 설명을 제공하는 정보로서, 실시예로 타겟상품에 대한 카테고리 정보(예컨대, 상의, 하의, 원피스 또는 수영복 등과 같이 상품이 분류된 제품군 정보) 등을 포함하는 정보일 수 있다.
자세히, 실시예에서 상품검색 어플리케이션(140)은, 검색하고자 하는 타겟상품에 대한 이미지와 상품정보를 입력할 수 있는 이미지 기반 검색 인터페이스를 제공할 수 있다.
그리고 상품검색 어플리케이션(140)은, 제공된 검색 인터페이스에 대한 사용자 입력에 기초하여, 타겟상품에 대한 입력 이미지와 상품정보를 획득할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 획득된 입력 이미지와 상품정보에 기반하여, 오브젝트 디텍션(object detection)을 수행해 메인 상품 이미지를 획득할 수 있다. (S103)
도 3은 본 발명의 실시예에 따른 메인 상품 이미지를 설명하기 위한 도면의 일례이다.
도 3을 참조하면, 실시예에서 메인 상품 이미지(1)란, 입력 이미지가 포함하는 적어도 하나 이상의 오브젝트(Object) 중, 사용자가 검색하고자 하는 상품으로 판단되는 타겟(target)상품을 나타내는 오브젝트에 기준하여 설정된 소정의 영역을 포함하는 이미지일 수 있다.
이때, 메인 상품 이미지(1)는, 입력 이미지로부터 감지되는 적어도 하나 이상의 오브젝트에 대한 바운딩 박스(bounding box)에 기초하여 획득될 수 있다.
여기서, 바운딩 박스란, 입력 이미지에 포함되는 적어도 하나 이상의 오브젝트 각각에 기준하여 설정된 소정의 영역에 대한 경계를 표시하는 박스일 수 있다.
자세히, 실시예에서 상품검색 어플리케이션(140)은, 획득된 입력 이미지에 기반한 이미지 딥러닝(Image Deep-learning)을 수행할 수 있다.
구체적으로, 실시예에서 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크를 이용하여 입력 이미지에 대한 오브젝트 디텍션(Object detection)을 수행하는 이미지 딥러닝을 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 위와 같은 오브젝트 디텍션을 통하여 해당 입력 이미지 내에서 적어도 하나 이상의 오브젝트를 검출할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 검출된 오브젝트 각각에 기준하여 설정되는 소정의 영역에 대한 경계를 표시하는 박스(예컨대, 해당하는 오브젝트를 에워싸는 소정의 영역을 경계로 표시하는 사각형 박스 등)인 바운딩 박스를 생성할 수 있다.
이때, 실시예에서 상품검색 어플리케이션(140)은, 위와 같은 오브젝트 디텍션에 사용되는 이미지 딥러닝 뉴럴 네트워크를, 이미지 내 적어도 하나 이상의 오브젝트 중에서 패션(Fashion)상품과 관련된 오브젝트를 추출하는데 최적화되도록 트레이닝(training)하여 사용할 수 있다.
즉, 상품검색 어플리케이션(140)은, 위와 같이 기학습된 이미지 딥러닝 뉴럴 네트워크를 사용해 오브젝트 디텍션을 수행함으로써, 입력 이미지로부터 검출되는 적어도 하나 이상의 오브젝트가 패션과 관련된 상품이 되도록 특정할 수 있고, 해당 패션상품에 대한 바운딩 박스가 생성되게 할 수 있다.
예시적으로, 상품검색 어플리케이션(140)은, 패션상품과 관련된 오브젝트를 추출하는데 최적화되도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크인 패션 디텍터(Fashion Detector)와 연동할 수 있다.
그리고 상품검색 어플리케이션(140)은, 패션 디텍터와의 연동에 기반하여 입력 이미지 내에서 패션과 관련된 오브젝트와, 해당 오브젝트가 차지하는 소정의 영역을 감지할 수 있다.
또한, 상품검색 어플리케이션(140)은, 감지된 패션 관련 오브젝트 별 바운딩 박스를 생성하여 패션 디텍션(fashion detection)을 수행할 수 있다.
이때, 예시적인 패션 디텍터는, 입력 이미지를 적어도 1회 컨볼루션 레이어(Convolution layer)를 통과시키는 제 1 컨볼루션 뉴럴 네트워크(Conv 1)와, 로이 풀링 레이어와 소프트 맥스, 바운딩 박스 리그레서로 구성된 제 2 컨볼루션 뉴럴 네트워크(Conv 2)를 포함할 수 있다.
자세히, 제 1 컨볼루션 뉴럴 네트워크(Conv 1)는, 전체 이미지 및 오브젝트 후보 영역을 동시에 입력으로 받아들일 수 있다.
그리고 제 1 컨볼루션 네트워크는, 컨볼루션 레이어(Convolution layer)와 맥스 풀링 레이어(max-pooling layer) 및/또는 에버리지 풀링 레이어(avergage pooling layer) 등을 통해 이미지 전체를 한번에 처리하여, 유의미한 오브젝트들을 각각 묶어 특징 영역들로 나타낸 특징 맵(feature map)을 생성할 수 있다.
다음으로, 제 2 컨볼루션 네트워크는, 각 오브젝트 후보 영역에 대하여 로이 풀링 레이어(RoI Pooling layer)를 통과시켜, 특징 맵(feature map)으로부터 특징벡터(fixed-length feature vector)를 추출할 수 있다.
또한, 제 2 컨볼루션 네트워크는, 추출한 특징벡터를 풀리 커넥티드 레이어(Fully-Connected Layer, FCs)에 인가한 뒤, 풀리 커넥티드 레이어의 출력 데이터를 최종 단에 배치된 소프트 맥스(softmax)에 인가하여 각 객체의 종류를 특정할 수 있다.
이때, 제 2 컨볼루션 네트워크는, 객체의 종류 중 패션 관련 오브젝트만을 추출하도록 학습될 수 있다.
또한, 제 2 컨볼루션 네트워크는, 풀리 커넥티드 레이어의 출력 데이터를 바운딩 박스 리그레서(bbox regressor)에 인가하여 패션 관련 오브젝트가 차지하는 영역을 개략적으로 나타내는 바운딩 박스를 추출할 수 있다.
이러한 제 1 컨볼루션 네트워크와 제 2 컨볼루션 네트워크로 구성된 패션 디텍터는, 입력 이미지 내 오브젝트의 종류가 패션 관련 상품임을 특정하고, 해당 상품이 차지하는 특징 영역을 바운딩 박스로 추출할 수 있다.
다시 말해서, 상품검색 어플리케이션(140)은, 패션상품을 검출하도록 트레이닝된 딥러닝 뉴럴 네트워크에 기반한 딥러닝을 수행하여, 입력 이미지 내 오브젝트의 종류가 패션 관련 상품임을 특정하고, 해당 상품이 차지하는 특징 영역을 바운딩 박스로 추출할 수 있다.
다른 예시에서, 상품검색 어플리케이션(140)은, 연동되는 이미지 딥러닝 뉴럴 네트워크를 Faster RCNN/ Mask RCNN 및/또는 1-stage object detector(SSD/YOLO 계열)의 방식으로도 구현할 수 있다.
본 발명의 실시예에서는, 2-stage object detector, Faster RCNN/ Mask RCNN 및/또는 1-stage object detector(SSD/YOLO 계열)의 방식에 기반하여 입력 이미지에 대한 오브젝트 디텍션을 수행할 수 있다고 설명하나 이는 일례일 뿐, 본 발명의 실시예에서는 입력 이미지에 대한 오브젝트 디텍션을 수행하는 방식이나 알고리즘 자체를 한정하거나 제한하지는 않는다.
다시 돌아와서, 오브젝트 디텍션을 통하여 입력 이미지 내에서 적어도 하나 이상의 오브젝트를 검출하고, 그에 대한 바운딩 박스를 생성한 상품검색 어플리케이션(140)은, 획득된 상품정보에 기초하여 상기 입력 이미지 내 적어도 하나 이상의 오브젝트 중 타겟상품을 나타내는 오브젝트를 검출할 수 있다.
그리고 상품검색 어플리케이션(140)은, 검출된 타겟상품 오브젝트에 대한 바운딩 박스의 이미지에 기초하여 메인 상품 이미지(1)를 획득할 수 있다.
자세히, 실시예에서 상품검색 어플리케이션(140)은, 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 기반으로 획득된 적어도 하나 이상의 바운딩 박스 중에서, 획득된 상품정보와 매칭되는 오브젝트를 포함하는 바운딩 박스를 검출할 수 있다.
또한, 상품검색 어플리케이션(140)은, 검출된 바운딩 박스의 이미지를 추출하여 메인 상품 이미지(1)로 설정할 수 있다.
예를 들면, 상품검색 어플리케이션(140)은, 획득된 상품정보의 카테고리 정보가 '원피스'인 경우, 입력 이미지로부터 디텍션된 복수의 오브젝트 중 원피스 오브젝트를 포함하는 바운딩 박스를 검출할 수 있다.
그리고 상품검색 어플리케이션(140)은, 검출된 바운딩 박스가 포함하는 이미지 영역에 기반하여, 타겟상품인 원피스를 포함하는 소정의 영역을 나타내는 메인 상품 이미지(1)를 생성할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 입력 이미지 내 적어도 하나 이상의 오브젝트에 대한 바운딩 박스를 생성하고, 생성된 바운딩 박스 중 타겟상품을 포함하는 바운딩 박스를 검출하여 메인 상품 이미지(1)로 설정함으로써, 입력 이미지로부터 사용자가 검색하고자 하는 타겟상품에 관련된 영역만을 추출할 수 있고, 추출된 영역을 기초로 상품검색 서비스를 위한 이후의 기능 동작을 수행하여 데이터 처리 부하의 감소 및 검색 속도의 향상을 도모할 수 있다.
도 2로 돌아와서, 실시예에서 메인 상품 이미지(1)를 획득한 상품검색 어플리케이션(140)은, 획득된 메인 상품 이미지(1) 내의 장애물 포함 여부를 판단할 수 있다. (S105)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1) 내에 타겟상품 외의 오브젝트(예컨대, 이종상품 및/또는 사람의 신체 등)가 존재하는지 여부를 판단할 수 있다.
본 발명의 실시예에서는, 상품검색 어플리케이션(140)이 메인 상품 이미지(1)를 검출한 후 상기 타겟상품 외의 오브젝트가 존재하는지 여부를 판단하는 순차적인 과정으로 설명하나, 입력 이미지 내 타겟상품(실시예에서, 패션 오브젝트)을 검출하는 과정에서 검출된 타겟상품의 바운딩 박스 내에 타 오브젝트의 바운딩 박스가 존재하거나 바운딩 박스가 겹치는 경우를 판단하는 방식으로, 타겟 오브젝트(타겟상품)를 검출하는 단계에서 장애물 포함 여부를 판단하는 단계가 함께 수행될 수도 있다.
도 4는 본 발명의 실시예에 따른 이미지 세그멘테이션(Image Segmentation)을 설명하기 위한 도면의 일례이다.
자세히, 도 4를 참조하면, 실시예에서 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크에 기반해 메인 상품 이미지(1)에 대한 이미지 세그멘테이션(Image Segmentation)을 수행할 수 있다.
여기서, 실시예에 따른 이미지 세그멘테이션이란, 전체 이미지에서 적어도 하나 이상의 오브젝트 각각의 영역을 분리하는 기술로서, 전체 이미지 내 오브젝트의 영역을 픽셀 단위로 분할하는 기술일 수 있다.
이때, 실시예에서 상품검색 어플리케이션(140)은, 소정의 기준(예컨대, 픽셀 색상 분포 등)에 따라서 메인 상품 이미지(1)로부터 타겟상품 외의 오브젝트(즉, 장애물)를 검출하도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 이미지 세그멘테이션 수행 시 사용할 수 있다.
즉, 상품검색 어플리케이션(140)은, 위와 같이 기학습된 이미지 딥러닝 뉴럴 네트워크를 사용해 이미지 세그멘테이션을 수행할 수 있고, 이를 통해 메인 상품 이미지(1) 내에서 분할된 각 오브젝트 영역 중, 상품 검색 시 방해가 되는 요소인 장애물을 포함하는 영역이 존재하는지 판단할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 타겟상품을 나타내는 메인 상품 이미지(1) 내에, 상품검색 시 방해가 될 수 있는 요소인 장애물(예컨대, 이종상품 또는 사람의 신체 등)이 존재하는지 여부를 판단함으로써, 메인 상품 이미지(1)에 장애물이 존재하는 경우 추후 별도의 제거 과정을 진행하게 할 수 있고, 이를 통해 타겟상품에 대한 상품검색의 정확성을 향상시킬 수 있다.
계속해서, 획득된 메인 상품 이미지(1) 내에 장애물이 포함되었는지 여부를 판단한 상품검색 어플리케이션(140)은, 메인 상품 이미지(1) 내에 장애물이 포함되었다고 판단된 경우, 해당 메인 상품 이미지(1) 내 장애물을 제거할 수 있다. (S107)
도 5는 본 발명의 실시예에 따른 이미지 세그멘테이션에 기반하여 장애물 이미지를 획득하는 모습의 일례이다.
자세히, 도 5를 참조하면, 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1) 내에 타겟상품 외의 오브젝트(예컨대, 이종상품 및/또는 사람의 신체 등)가 존재하는 경우, 해당 오브젝트(즉, 장애물)를 나타내는 소정의 영역을 기반으로 장애물 이미지(2)를 획득할 수 있다.
즉, 실시예에 따른 장애물 이미지(2)란, 메인 상품 이미지(1) 내에서 타겟상품을 나타내는 영역 외의 다른 오브젝트(장애물)를 나타내는 영역을 기반으로 생성되는 이미지일 수 있다.
예를 들면, 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크에 기반하여 타겟상품이 원피스인 메인 상품 이미지(1)에 대한 이미지 세그멘테이션을 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 수행된 이미지 세그멘테이션에 기반하여, 해당 메인 상품 이미지(1)에 존재하는 장애물인 핸드백 오브젝트(즉, 타겟상품인 원피스 외의 다른 이종상품)를 나타내는 영역을 감지할 수 있다.
또한, 상품검색 어플리케이션(140)은, 감지된 핸드백 오브젝트를 나타내는 장애물 영역에 기반하여, 해당 메인 상품 이미지(1)에 대한 장애물 이미지(2)를 획득할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 획득된 장애물 이미지(2)에 기초하여, 해당하는 메인 상품 이미지(1)로부터 장애물을 제거하는 이미지 처리를 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 장애물을 제거하는 이미지 처리를 통해, 메인 상품 이미지(1)로부터 장애물 영역이 삭제된 상태의 이미지인 손실 이미지를 획득할 수 있다.
도 6은 본 발명의 실시예에 따른 손실 이미지와 복구 이미지를 획득하는 방법을 설명하기 위한 도면의 일례이다.
자세히, 도 6을 참조하면, 실시예에서 상품검색 어플리케이션(140)은, 장애물 이미지(2)에 기반하여 해당하는 메인 상품 이미지(1)의 적어도 일부에 대한 마스크를 생성할 수 있다.
실시예로, 상품검색 어플리케이션(140)은, 장애물 이미지(2)가 포함하는 영역과 동일한 영역으로 구현되는 마스크를 생성할 수 있다.
그리고 상품검색 어플리케이션(140)은, 생성된 마스크에 기초하여 메인 상품 이미지(1)의 적어도 일부에 대한 삭제 프로세스를 수행할 수 있다.
예컨대, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에서 마스크에 대응되는 영역의 픽셀 값을 제거함으로써, 메인 상품 이미지(1)에서 장애물 이미지(2) 영역만을 제거할 수 있다.
이를 통해, 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)로부터 장애물 이미지(2)가 포함하는 영역이 제거된 이미지인 손실 이미지(3)를 획득할 수 있다.
예시적으로, 상품검색 어플리케이션(140)은, 타겟상품이 원피스인 메인 상품 이미지(1) 내에, 원피스 외의 다른 이종상품인 핸드백을 나타내는 영역에 대한 장애물 이미지(2)가 존재하는 경우, 해당 장애물 이미지(2)를 기반으로 해당 메인 상품 이미지(1)로부터 상기 핸드백 영역에 대한 삭제 이미지 처리가 수행된 손실 이미지(3)를 획득할 수 있다.
다른 예시에서, 상품검색 어플리케이션(140)은, 타겟상품이 핸드백인 메인 상품 이미지(1) 내에, 핸드백 외의 다른 오브젝트인 사람의 신체(예컨대, 손)를 나타내는 영역에 대한 장애물 이미지(2)가 존재하는 경우, 해당 장애물 이미지(2)를 기초로 해당 메인 상품 이미지(1)로부터 상기 사람의 신체 영역에 대한 삭제 이미지 처리가 수행된 손실 이미지(3)를 획득할 수 있다.
이와 같이, 실시예에서 상품검색 어플리케이션(140)은, 타겟상품을 나타내는 메인 상품 이미지(1) 내의 장애물 오브젝트를 제거함으로써, 추후 타겟상품의 특징벡터에 기반한 상품검색 시, 메인 상품 이미지(1) 상의 장애물의 특징벡터가 반영되는 문제를 최소화할 수 있고, 이를 통해 상품 검색의 퀄리티를 향상시킬 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 장애물이 제거된 메인 상품 이미지(1)(즉, 손실 이미지(3))에 대한 이미지 복원을 수행할 수 있다. (S109)
자세히, 도 6을 더 참조하면, 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크에 기반해 손실 이미지(3)에 대한 이미지 인페인팅(Image Inpainting)을 수행할 수 있다.
여기서, 실시예에 따른 이미지 인페인팅이란, 입력된 이미지(즉, 손실 이미지(3))에서 손실된 부분(즉, 메인 상품 이미지(1)에서 제거된 영역)에 대한 이미지 복원을 수행하는 기술일 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크를 통해 수행된 이미지 인페인팅에 기반하여, 손실 이미지(3)에 대한 복원이 수행된 이미지인 복구 이미지(4)를 획득할 수 있다.
이때, 상품검색 어플리케이션(140)은, 입력되는 이미지(즉, 손실 이미지(3))에 대한 이미지 인페인팅을 수행하도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 사용하여, 해당하는 이미지에 대한 복구 이미지(4)를 획득할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 기학습된 이미지 딥러닝 뉴럴 네트워크에 기초한 이미지 인페인팅을 수행하여, 장애물 영역의 삭제로 인해 소정의 손실이 발생된 메인 상품 이미지(1)에 대한 손실 복구를 수행할 수 있고, 이를 통해 복구 이미지(4)를 획득할 수 있다.
예를 들면, 상품검색 어플리케이션(140)은, 딥러닝 뉴럴 네트워크에 기반한 이미지 인페인팅을 수행하여, 손실 이미지(3)의 삭제 영역에 대한 특징벡터의 복원을 수행할 수 있고, 이를 통해 해당 손실 이미지(3)에 대한 복구 이미지(4)를 생성할 수 있다.
예시적으로, 상품검색 어플리케이션(140)은, 타겟상품이 '원피스'인 메인 상품 이미지(1)로부터, 이종상품인 핸드백을 나타내는 장애물 영역이 삭제 처리된 손실 이미지(3)인 경우, 해당 손실 이미지(3)를 기반으로 이미지 딥러닝 뉴럴 네트워크에 기초한 이미지 인페이팅을 수행하여, 해당 핸드백 장애물 영역이 삭제됨으로 인해 발생한 소정의 손실(예컨대, 원피스 이미지 영역 내의 특징벡터 손실 등)을 복원한 복구 이미지(4)를 획득할 수 있다.
도 7 및 8은 본 발명의 실시예에 따른 이미지 복원에 기반한 상품 검색 방법에서의 이미지 변환 과정을 보여주는 모습의 일례들이다.
다른 예시에서, 도 7을 참조하면, 상품검색 어플리케이션(140)은, 타겟상품이 '상의'인 메인 상품 이미지(1)로부터, 이종상품인 액세서리를 나타내는 장애물 영역이 삭제 처리된 손실 이미지(3)인 경우, 해당 손실 이미지(3)를 기반으로 이미지 딥러닝 뉴럴 네트워크에 기초한 이미지 인페이팅을 수행하여, 해당 액세서리 장애물 영역이 삭제됨으로 인해 발생한 소정의 손실(예컨대, 상의 이미지 영역 내의 특징벡터 손실 등)을 복원한 복구 이미지(4)를 획득할 수 있다.
또 다른 예시에서, 도 8을 참조하면, 상품검색 어플리케이션(140)은, 타겟상품이 '핸드백'인 메인 상품 이미지(1)에서, 해당 타겟상품 외의 다른 오브젝트인 사람의 신체(예컨대, 사람의 손)을 나타내는 장애물 영역이 삭제 처리된 손실 이미지(3)인 경우, 해당 손실 이미지(3)를 기초로 이미지 딥러닝 뉴럴 네트워크를 이용한 이미지 인페인팅을 수행할 수 있고, 이를 통해 해당 사람의 신체 영역이 삭제되어 발생하는 소정의 손실(예컨대, 핸드백 이미지 영역 내의 특징벡터 손실 등)을 복원한 복구 이미지(4)를 획득할 수 있다.
이와 같이, 실시예에서 상품검색 어플리케이션(140)은, 장애물 영역이 제거되어 적어도 일부가 손상된 메인 상품 이미지(1)(손실 이미지(3))에 대한 복구를 수행함으로써, 메인 상품 이미지(1) 내 타겟상품의 특징벡터에 대한 손실을 최소화할 수 있고, 이를 통해 손상된 영역에 의한 상품 검색 결과의 품질 저하 및 왜곡을 방지할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 복원된 이미지(즉, 복구 이미지(4))에 기반한 특징벡터를 검출할 수 있다. (S111)
이하, 효과적인 설명을 위하여 이미지로부터 특징벡터를 추출하는 과정에서 상술된 내용과 중복되는 기재는 요약하거나 생략할 수 있다.
도 9는 본 발명의 실시예에 따른 특징벡터를 2차원으로 변형하여 그래픽 이미지화한 모습의 일례이다.
자세히, 도 9를 참조하면, 실시예에서 상품검색 어플리케이션(140)은, 복구 이미지(4)에 기반한 이미지 딥러닝을 수행할 수 있다.
이때, 실시예에서 상품검색 어플리케이션(140)은, 입력된 이미지로부터 특징벡터를 추출하도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 기반으로, 복구 이미지(4)에 기초한 이미지 딥러닝을 수행할 수 있다.
여기서, 실시예에 따라서 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 텍스쳐(Texture), 패브릭(Fabric), 쉐이프(Shape), 스타일(Style) 및 컬러(Color) 파라미터 중 적어도 하나 이상의 파라미터에 대한 각 특징벡터 값을, 각 파라미터 별 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용하여 추출할 수도 있다.
보다 상세히, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용하여, 복구 이미지(4)에 기초한 이미지 딥러닝을 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 수행된 이미지 딥러닝에 기초하여 해당 복구 이미지(4)에 대한 특징벡터를 추출할 수 있다.
자세히, 실시예로 상품검색 어플리케이션(140)은, 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크와 연동하여, 복구 이미지(4)에 대한 특징벡터를 추출할 수 있다.
이때, 위와 같은 이미지 딥러닝을 수행하는 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 예시적으로 일반적인 분류기(Classifier) 형태의 딥러닝 뉴럴 네트워크(예컨대, ResNet 및/또는 ResNeXt 등)로 구현될 수 있으며, 이에 한정되는 것은 아니다.
이러한 일반적인 분류기 형태의 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 복구 이미지(4)에 대한 이미지 처리를 수행하여, 해당 복구 이미지(4) 내 타겟상품 오브젝트의 특징 영역을 나타내는 특징 맵(feature map)을 생성할 수 있다.
또한, 상기 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 복구 이미지(4) 내 타겟상품 오브젝트에 대해 생성된 특징 맵(feature map)으로부터 특징벡터(fixed-length feature vector)를 추출할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용한 이미지 딥러닝을 수행하여, 복구 이미지(4) 내의 타겟상품 오브젝트에 대한 특징벡터를 검출할 수 있다.
보다 상세히, 예시적으로 상품검색 어플리케이션(140)은, 패션상품 이미지에 기반한 딥러닝 모델(딥러닝 뉴럴 네트워크)이 있는 경우, 다양한 패션상품 이미지를 이용하여 상기 딥러닝 모델에 대한 학습을 수행할 수 있다.
또한, 상품검색 어플리케이션(140)은, 상기 학습의 과정을 통하여 상기 다양한 패션상품 이미지 내 패션상품 오브젝트를 구분할 수 있는 필터를 획득할 수 있다.
예컨대, 상품검색 어플리케이션(140)은, 상기 딥러닝 모델의 첫 번째 레이어에서 상기 오브젝트에 대한 가로, 세로 및 곡선 형태의 로우 레벨(low level)에 대한 학습을 수행할 수 있다.
또한, 상품검색 어플리케이션(140)은, 두 번째 레이어를 통하여 상기 오브젝트를 구성하는 세부요소(예컨대, 무늬, 색상 및/또는 질감 등)에 대한 미들 레벨(middle level) 학습을 수행할 수 있다.
또한, 상품검색 어플리케이션(140)은, 세 번째 레이어에서 상기 오브젝트의 전체 윤곽에 대한 하이 레벨(high level) 학습을 수행할 수 있다.
이후, 예시에서 상품검색 어플리케이션(140)은, 위와 같은 학습을 통해 획득된 특징 맵(feature map)을 상기 딥러닝 모델의 최종 단에 포함되는 소프트맥스(softmax)에 입력할 수 있고, 이를 통해 상기 오브젝트를 소정의 카테고리로 구분할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 다양한 패션상품 이미지 내 소정의 오브젝트를 구분할 수 있는 분류기(classifier)로서의 딥러닝 모델을 학습시킬 수 있다.
이때, 여기서 특징벡터는, 상기 소프트맥스(softmax)를 통과하기 이전의 복수의 레이어 중 특정 레이어의 특징 맵을 의미할 수 있다.
상술된 예시에서는, 처음에 입력되는 패션상품 이미지를 제외하면 총 4개의 컨볼루션 레이어(Convolution layer)가 존재하며, 그 중 하나의 출력 값(feature map)을 선정하여 특징벡터로 사용할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 검출된 특징벡터에 기초하여 상품검색을 수행할 수 있고, 수행된 상품검색의 결과를 제공할 수 있다. (S113)
자세히, 상품검색 어플리케이션(140)은, 쇼핑몰 서버와 연동하여 구축된 특징벡터 데이터베이스를 기반으로, 복구 이미지(4)로부터 검출된 특징벡터에 기반한 상품검색을 수행할 수 있다.
보다 상세히, 실시예에서 상품검색 어플리케이션(140)은, 복구 이미지(4)로부터 획득된 특징벡터와의 유사도가 기설정된 기준(예컨대, 소정의 백분율 이상 등)을 충족하는 특징벡터를 가지는 상품을 특징벡터 데이터베이스로부터 독출할 수 있다.
실시예에서, 상품검색 어플리케이션(140)은, 다양한 방식의 알고리즘(예컨대, FLANN, annoy 및/또는 Brute Froce 등)을 기반으로 특징벡터 데이터베이스에 대한 검색을 수행할 수 있다.
이때, 상품검색 어플리케이션(140)은, 복구 이미지(4)의 특징벡터와 특징벡터 데이터베이스의 적어도 하나 이상의 상품에 대한 특징벡터를 비교할 수 있고, 이를 통해 특징벡터 간 유사도를 측정할 수 있다.
그리고 상품검색 어플리케이션(140)은, 측정된 유사도가 기설정된 기준(예컨대, 소정의 백분율 이상 등)을 충족하는 상위 n(1<=n)개의 상품을 검출할 수 있다.
또한, 상품검색 어플리케이션(140)은, 검출된 상위 n개의 상품에 대한 관련정보(예컨대, 해당 상품을 판매하는 쇼핑몰 정보, 해당 상품에 대한 상품정보 및/또는 이미지 정보 등)를 메모리(110) 및/또는 외부의 데이터베이스로부터 획득할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 획득된 상품에 대한 관련정보 즉, 복구 이미지(4)의 특징벡터에 기반한 상품검색의 결과에 대한 정보를 디스플레이로 출력하여 사용자에게 제공할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 복구 이미지(4)의 특징벡터를 기초로 온라인 쇼핑몰에 대한 상품검색을 수행하고 그 결과 정보를 제공함으로써, 보다 정확하고 객관적인 특징벡터 데이터를 기반으로 신뢰성 높은 상품검색 결과를 제공할 수 있고, 이를 통해 온라인 쇼핑몰의 경쟁력과 사용자의 만족도를 향상시킬 수 있다.
<제 2 실시예 - 이미지 내 텍스트를 제거 및 복원하여 상품검색>
한편, 본 발명의 다른 실시예에서 상품검색 어플리케이션(140)은, 딥러닝에 기초하여 검색하고자 하는 상품과 무관한 텍스트(text)를 상기 이미지로부터 제거하고, 상기 장애물이 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행하는 상품검색 서비스를 제공할 수 있다.
이하의 설명에서는, 상술된 설명과 중복되는 기재가 요약되거나 생략될 수 있다.
또한, 본 발명의 실시예에서는, 효과적인 설명을 위하여 이미지 복원 기반의 상품검색 방법을 제 1 실시예와 제 2 실시예로 구분하여 설명하나, 실시예에 따라서 제 1 실시예와 제 2 실시예는 상호 유기적으로 결합하여 동작할 수도 있는 등 다양한 실시예가 가능할 수 있다.
도 10은 본 발명의 다른 실시예에 따른 이미지 복원에 기반한 상품 검색 방법을 설명하기 위한 흐름도이다.
도 10을 참조하면, 다른 실시예에서 컴퓨팅 장치(100)의 적어도 하나의 프로세서(120)에 의하여 실행되거나 백그라운드 상태로 동작하는 상품검색 어플리케이션(140)은, 타겟상품에 대한 입력 이미지와 상품정보를 획득할 수 있다. (S201)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 검색하고자 하는 타겟상품에 대한 이미지와 상품정보를 입력할 수 있는 이미지 기반 검색 인터페이스에 대한 사용자 입력에 기초하여, 타겟상품에 대한 입력 이미지와 상품정보를 획득할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 획득된 입력 이미지와 상품정보에 기반하여, 오브젝트 디텍션(object detection)을 수행해 메인 상품 이미지(1)를 획득할 수 있다. (S203)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 획득된 입력 이미지에 기반한 오브젝트 디텍션(Object detection)을 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 수행된 오브젝트 디텍션을 통하여 해당 입력 이미지 내에서 적어도 하나 이상의 오브젝트를 검출할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 검출된 오브젝트 각각에 기준하여 설정되는 소정의 영역에 대한 경계를 표시하는 박스(예컨대, 해당하는 오브젝트를 에워싸는 소정의 영역을 경계로 표시하는 사각형 박스 등)인 바운딩 박스를 생성할 수 있다.
이때, 실시예에서 상품검색 어플리케이션(140)은, 위와 같은 오브젝트 디텍션에 사용되는 이미지 딥러닝 뉴럴 네트워크를, 이미지 내 적어도 하나 이상의 오브젝트 중에서 패션(Fashion)상품과 관련된 오브젝트를 추출하는데 최적화되도록 트레이닝(training)하여 사용할 수 있다.
예시적으로, 상품검색 어플리케이션(140)은, 패션상품과 관련된 오브젝트를 추출하는데 최적화되도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크인 패션 디텍터(Fashion Detector)와 연동하여, 입력 이미지로부터 검출되는 적어도 하나 이상의 오브젝트가 패션과 관련된 상품이 되도록 특정할 수 있고, 해당 패션상품에 대한 바운딩 박스가 생성되게 할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 앞서 획득된 상품정보에 기반하여 상기 입력 이미지로부터 검출된 적어도 하나 이상의 오브젝트 중 타겟상품을 나타내는 오브젝트를 검출할 수 있다.
그리고 상품검색 어플리케이션(140)은, 검출된 타겟상품 오브젝트에 대한 바운딩 박스의 이미지에 기초하여 메인 상품 이미지(1)를 획득할 수 있다.
자세히, 실시예에서 상품검색 어플리케이션(140)은, 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 기반으로 획득된 적어도 하나 이상의 바운딩 박스 중에서, 획득된 상품정보와 매칭되는 오브젝트를 포함하는 바운딩 박스를 검출할 수 있다.
또한, 상품검색 어플리케이션(140)은, 검출된 바운딩 박스의 이미지를 추출하여 메인 상품 이미지(1)로 설정할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 입력 이미지 내 적어도 하나 이상의 오브젝트에 대한 바운딩 박스를 생성하고, 생성된 바운딩 박스 중 타겟상품을 포함하는 바운딩 박스를 검출하여 메인 상품 이미지(1)로 설정함으로써, 입력 이미지로부터 사용자가 검색하고자 하는 타겟상품에 관련된 영역만을 추출할 수 있고, 추출된 영역을 기초로 상품검색 서비스를 위한 이후의 기능 동작을 수행하여 데이터 처리 부하의 감소 및 검색 속도의 향상을 도모할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 획득된 메인 상품 이미지(1) 내 텍스트를 검출할 수 있다. (S205)
자세히, 상품검색 어플리케이션(140)은, 딥러닝에 기초하여 상기 획득된 메인 상품 이미지(1)로부터 소정의 텍스트를 검출할 수 있다.
도 11 내지 도 13은 본 발명의 다른 실시예에 따른 메인 상품 이미지(1)로부터 텍스트를 검출하는 방법을 설명하기 위한 도면의 일례들이다.
보다 상세히, 도 11을 참조하면, 실시예로 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반하여 텍스트 세그멘테이션(Text Segmentation)을 수행할 수 있다.
여기서, 텍스트 세그멘테이션은, 이미지 내에서 텍스트가 표시되는 영역인 텍스트 영역과, 상기 텍스트 영역 이외의 배경 영역을 구분하는 딥러닝 기술로서, 이미지 세그멘테이션(image segmentation)과 유사하나 그 대상이 글자(텍스트)로 특화된 딥러닝 기술일 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 수행된 텍스트 세그멘테이션을 기반으로 상기 메인 상품 이미지(1)로부터 소정의 텍스트 영역(즉, 실제 텍스트의 형태를 따라서 구현되는 영역)을 추출할 수 있다.
즉, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반한 텍스트 세그멘테이션을 수행하여 상기 메인 상품 이미지(1) 내 텍스트를 텍스트 영역의 형태로 검출할 수 있다.
다른 실시예로, 도 12를 참조하면, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반하여 텍스트 로컬라이제이션(Text Localization)을 수행할 수 있다.
여기서, 텍스트 로컬라이제이션은, 오브젝트 디텍션(object detection)과 유사하나 그 대상이 글자(텍스트)로 특화된 딥러닝 기술일 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 수행된 텍스트 로컬라이제이션에 기초하여 상기 메인 상품 이미지(1)로부터 소정의 텍스트 바운딩 박스 영역을 추출할 수 있다.
이때, 실시예에 따른 텍스트 바운딩 박스 영역이란, 메인 상품 이미지(1) 내 텍스트 영역을 포함하여 설정된 소정의 영역(예컨대, 사각박스 영역 등)을 의미할 수 있다.
즉, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반한 텍스트 로컬라이제이션을 수행하여 상기 메인 상품 이미지(1) 내 텍스트를 텍스트 바운딩 박스 영역의 형태로 검출할 수 있다.
또 다른 실시예로, 도 13을 참조하면, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반하여 텍스트 로컬라이제이션(Text Localization)을 수행하여 해당하는 메인 상품 이미지(1)로부터 텍스트 바운딩 박스 영역(예컨대, 해당하는 텍스트 영역을 포함하는 사각박스 영역 등)을 추출할 수 있다.
또한, 상품검색 어플리케이션(140)은, 위와 같이 추출된 텍스트 바운딩 박스 영역을 기초로 텍스트 세그멘테이션을 수행할 수 있다.
즉, 또 다른 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에 기반한 텍스트 로컬라이제이션을 수행하여 상기 메인 상품 이미지(1) 내 텍스트를 텍스트 바운딩 박스 영역의 형태로 검출하고, 검출된 텍스트 바운딩 박스 영역을 기초로 텍스트 세그멘테이션을 더 수행하여 상기 텍스트 바운딩 박스 영역 내 텍스트 영역만을 보다 정교하게 검출할 수 있다.
이와 같이, 실시예에서 상품검색 어플리케이션(140)은, 텍스트에 특화된 다양한 딥러닝 기반하여 이미지 내 텍스트를 추출 가능함으로써, 이미지 내 텍스트 추출 프로세스를 보다 빠르고 정확하게 수행할 수 있고, 주어진 수행환경(예컨대, 메모리(110) 용량, 프로세서(120) 성능 및/또는 컴퓨팅 장치(100) 스펙 등)에 따라서 적절한 딥러닝 방식을 이용한 텍스트 추출을 수행할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 상기 메인 상품 이미지(1)로부터 소정의 텍스트가 검출된 경우, 검출된 텍스트에 대한 속성정보를 획득할 수 있다. (S207)
도 14는 본 발명의 다른 실시예에 따른 텍스트에 대한 속성정보를 설명하기 위한 도면의 일례이다.
자세히, 도 14를 참조하면, 실시예에 따른 속성정보란, 이미지로부터 검출된 텍스트가 해당 이미지 내 상품에 포함되는 문자(예컨대, 상품에 프린팅되어 있는 문자 무늬 등)인 상품 텍스트(10)인지, 또는 이미지에 별도로 삽입된 문자(예컨대, 판매업체 로고 및/또는 워터마크 등)인 삽입 텍스트(20)인지 판별한 정보일 수 있다.
보다 상세히, 실시예에서 상품검색 어플리케이션(140)은, 검출된 텍스트 및/또는 해당 텍스트가 검출된 메인 상품 이미지(1)에 기반한 딥러닝을 수행하여, 상기 검출된 텍스트가 상품 텍스트(10)인지 또는 삽입 텍스트(20)인지 여부를 판단할 수 있다.
실시예로, 상품검색 어플리케이션(140)은, 이미지로부터 검출된 텍스트 및/또는 상기 이미지를 입력 데이터로 하고, 상기 입력 데이터에 기초한 딥러닝을 수행하여 상기 텍스트가 상품 텍스트(10)인지 또는 삽입 텍스트(20)인지를 판별한 정보를 출력 데이터로 제공하도록 학습된 딥러닝 뉴럴 네트워크와 연동할 수 있다.
그리고 상품검색 어플리케이션(140)은, 연동된 딥러닝 뉴럴 네트워크에 메인 상품 이미지(1)로부터 검출된 텍스트 및/또는 상기 메인 상품 이미지(1)를 입력할 수 있다.
또한, 상품검색 어플리케이션(140)은, 상기 딥러닝 뉴럴 네트워크로부터 해당 텍스트가 상품 텍스트(10)인지 또는 삽입 텍스트(20)인지를 판별한 정보를 출력 데이터로 획득할 수 있다.
그리하여 상품검색 어플리케이션(140)은, 위와 같이 획득된 출력 데이터를 기초로 해당 텍스트에 대한 속성정보를 획득할 수 있다.
본 발명의 실시예에서는, 상품검색 어플리케이션(140)이 메인 상품 이미지(1)로부터 텍스트를 검출한 후 해당 텍스트의 속성정보를 획득하는 순차적인 과정으로 설명하나, 실시예에서 따라서 메인 상품 이미지(1)로부터 텍스트를 검출하는 과정에서 검출된 텍스트의 속성을 판별하는 딥러닝을 함께 수행함으로써 텍스트 검출과 동시에 해당 텍스트의 속성정보를 획득할 수도 있는 등 다양한 실시예가 가능할 수 있다.
이와 같이, 실시예에서 상품검색 어플리케이션(140)은, 이미지로부터 검출된 텍스트가 해당 이미지 내 상품에 원래 포함되어 있는 텍스트(상품 텍스트(10))인지 또는 해당 이미지에 임의로 삽입된 텍스트(삽입 텍스트(20))인지를 구별함으로써, 추후 해당 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행할 시 해당 이미지 내 검색하고자 하는 상품과 무관한 텍스트(즉, 삽입 텍스트(20))만을 선별하여 제거할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 획득된 텍스트의 속성정보에 기반하여 해당하는 메인 상품 이미지(1) 내 텍스트 처리를 수행할 수 있다. (S209)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)로부터 검출된 텍스트의 속성정보를 기초로, 해당 메인 상품 이미지(1) 내 상기 텍스트를 유지 또는 제거하는 텍스트 처리를 수행할 수 있다.
보다 상세히, 상품검색 어플리케이션(140)은, 텍스트의 속성정보를 기초로 해당 텍스트를 메인 상품 이미지(1) 내 상품에 포함되는 문자인 상품 텍스트(10)라고 판단한 경우, 해당하는 텍스트에 대한 별도의 처리 없이 그대로 유지할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 텍스트의 속성정보가 상품 텍스트(10)인 경우 해당 텍스트를 추출한 메인 상품 이미지(1)를 그대로 보존할 수 있다.
한편, 실시예에서 상품검색 어플리케이션(140)은, 텍스트의 속성정보를 기초로 해당 텍스트를 메인 상품 이미지(1)에 별도로 삽입된 문자인 삽입 텍스트(20)라고 판단한 경우, 해당하는 텍스트를 상기 메인 상품 이미지(1)로부터 제거할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 텍스트의 속성정보가 삽입 텍스트(20)인 경우 상기 텍스트를 추출한 메인 상품 이미지(1)로부터 해당 텍스트를 제거할 수 있다.
도 15 및 도 16은 본 발명의 다른 실시예에 따른 메인 상품 이미지(1) 내 텍스트 제거 및 이미지 복원 처리를 설명하기 위한 도면의 일례들이다.
구체적으로, 도 15를 참조하면, 실시예에서 메인 상품 이미지(1) 내 텍스트 제거를 위하여 상품검색 어플리케이션(140)은, 해당 텍스트에 대하여 획득된 텍스트 영역을 기반으로 상기 메인 상품 이미지(1)로부터 해당 텍스트를 제거할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 실제 텍스트의 형태를 따라서 구현되는 텍스트 영역에 기반하여, 메인 상품 이미지(1)로부터 상기 텍스트를 제거할 수 있다.
도 16을 참조하면, 다른 실시예에서 메인 상품 이미지(1) 내 텍스트 제거를 위하여 상품검색 어플리케이션(140)은, 해당 텍스트에 대한 텍스트 바운딩 박스 영역을 기반으로 상기 메인 상품 이미지(1) 내 해당 텍스트를 제거할 수 있다.
즉, 다른 실시예에서 상품검색 어플리케이션(140)은, 해당 텍스트를 포함하는 소정의 영역(텍스트 바운딩 박스 영역)에 기초하여 메인 상품 이미지(1)로부터 상기 텍스트를 제거할 수 있다.
이때, 실시예에서 메인 상품 이미지(1)로부터 텍스트를 제거하는 프로세스를 수행하기 위하여 상품검색 어플리케이션(140)은, 텍스트 영역 또는 텍스트 바운딩 박스 영역과 동일한 영역으로 구현되는 마스크를 생성할 수 있다.
그리고 상품검색 어플리케이션(140)은, 생성된 마스크에 기초하여 메인 상품 이미지(1)의 적어도 일부에 대한 삭제 프로세스를 수행할 수 있다.
예컨대, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)에서 마스크에 대응되는 영역의 픽셀 값을 제거함으로써, 메인 상품 이미지(1)에서 텍스트 영역 또는 텍스트 바운딩 박스 영역만을 제거할 수 있다.
이처럼, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 메인 상품 이미지(1)로부터 텍스트를 제거하는 처리를 통하여, 상기 메인 상품 이미지(1)로부터 텍스트가 삭제된 상태의 이미지인 손실 이미지(3)를 획득할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 검색하고자 하는 상품과 무관한 텍스트인 삽입 텍스트(20)만을 선별하여 해당 이미지로부터 제거함으로써, 해당 이미지에 기반한 상품검색 시 상기 삽입 텍스트(20)의 영향으로 인한 정확도 저하를 방지할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 텍스트 처리된 이미지(이하, 텍스트 처리 이미지)에 기반하여 복구 이미지(4)를 획득할 수 있다. (S211)
자세히, 도 15를 더 참조하면, 실시예에서 상품검색 어플리케이션(140)은, 실제 텍스트의 형태를 따라서 구현되는 텍스트 영역이 제거된 메인 상품 이미지(1)(즉, 손실 이미지(3))에 기반한 이미지 복원을 수행하여 복구 이미지(4)를 획득할 수 있다.
또는, 도 16을 더 참조하면, 다른 실시예에서 상품검색 어플리케이션(140)은, 소정의 삽입 텍스트(20)를 포함하는 텍스트 바운딩 박스 영역이 제거된 메인 상품 이미지(1)(즉, 손실 이미지(3))에 기초한 이미지 복원을 수행하여 복구 이미지(4)를 획득할 수 있다.
보다 상세히, 실시예에서 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크에 기반해 손실 이미지(3)에 대한 이미지 인페인팅(Image Inpainting)을 수행할 수 있다.
여기서, 실시예에 따른 이미지 인페인팅이란, 입력된 이미지(즉, 손실 이미지(3))에서 손실된 부분(즉, 메인 상품 이미지(1)에서 제거된 영역)에 대한 이미지 복원을 수행하는 기술일 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 이미지 딥러닝 뉴럴 네트워크를 통해 수행된 이미지 인페인팅에 기반하여, 손실 이미지(3)에 대한 복원이 수행된 이미지인 복구 이미지(4)를 획득할 수 있다.
이때, 상품검색 어플리케이션(140)은, 입력되는 이미지(즉, 손실 이미지(3))에 대한 이미지 인페인팅을 수행하도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 사용하여, 해당하는 이미지에 대한 복구 이미지(4)를 획득할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 기학습된 이미지 딥러닝 뉴럴 네트워크에 기초한 이미지 인페인팅을 수행하여, 텍스트 영역 또는 텍스트 바운딩 박스 영역의 삭제로 인해 소정의 손실이 발생된 메인 상품 이미지(1)에 대한 손실 복구를 수행할 수 있고, 이를 통해 복구 이미지(4)를 획득할 수 있다.
예를 들면, 상품검색 어플리케이션(140)은, 딥러닝 뉴럴 네트워크에 기반한 이미지 인페인팅을 수행하여, 손실 이미지(3)의 삭제 영역에 대한 특징벡터의 복원을 수행할 수 있고, 이를 통해 해당 손실 이미지(3)에 대한 복구 이미지(4)를 생성할 수 있다.
이와 같이, 실시예에서 상품검색 어플리케이션(140)은, 삽입 텍스트(20)가 제거된 이미지에 대한 복원 처리를 수행함으로써, 삽입 텍스트(20)가 제거된 영역으로 인한 정보 손실을 최소화하여 상품검색 결과의 품질을 향상시킬 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 상술된 과정에서 획득된 이미지에 기초한 특징벡터를 검출할 수 있다. (S213)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 메인 상품 이미지(1)의 원본 상태를 그대로 유지한 이미지(이하, 원본 이미지)이거나, 또는 메인 상품 이미지(1) 내 텍스트를 제거한 복구 이미지(4) 중 어느 하나의 이미지에 기반하여 특징벡터를 검출할 수 있다.
보다 상세히, 실시예에서 상품검색 어플리케이션(140)은, 원본 이미지 또는 복구 이미지(4)를 입력으로 하는 이미지 딥러닝을 수행할 수 있다.
이때, 실시예에서 상품검색 어플리케이션(140)은, 입력된 이미지로부터 특징벡터를 추출하도록 트레이닝된 이미지 딥러닝 뉴럴 네트워크를 기반으로, 원본 이미지 또는 복구 이미지(4)에 기초한 이미지 딥러닝을 수행할 수 있다.
여기서, 실시예에 따라서 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 텍스쳐(Texture), 패브릭(Fabric), 쉐이프(Shape), 스타일(Style) 및 컬러(Color) 파라미터 중 적어도 하나 이상의 파라미터에 대한 각 특징벡터 값을, 각 파라미터 별 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용하여 추출할 수도 있다.
이때, 위와 같은 이미지 딥러닝을 수행하는 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 예시적으로 일반적인 분류기(Classifier) 형태의 딥러닝 뉴럴 네트워크(예컨대, ResNet 및/또는 ResNeXt 등)로 구현될 수 있으며, 이에 한정되는 것은 아니다.
이러한 일반적인 분류기 형태의 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 원본 이미지 또는 복구 이미지(4)에 대한 이미지 처리를 수행하여, 해당하는 이미지 내 타겟상품 오브젝트의 특징 영역을 나타내는 특징 맵(feature map)을 생성할 수 있다.
또한, 상기 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크는, 원본 이미지 또는 복구 이미지(4) 내 타겟상품 오브젝트에 대해 생성된 특징 맵(feature map)으로부터 특징벡터(fixed-length feature vector)를 추출할 수 있다.
즉, 실시예에서 상품검색 어플리케이션(140)은, 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용한 이미지 딥러닝을 수행하여, 원본 이미지 또는 복구 이미지(4) 내의 타겟상품 오브젝트에 대한 특징벡터를 검출할 수 있다.
다시 말하면, 실시예에서 상품검색 어플리케이션(140)은, 위와 같이 트레이닝된 특징벡터 추출 이미지 딥러닝 뉴럴 네트워크를 이용하여, 원본 이미지 또는 복구 이미지(4)에 기초한 이미지 딥러닝을 수행할 수 있다.
그리고 상품검색 어플리케이션(140)은, 수행된 이미지 딥러닝에 기초하여 상기 원본 이미지 또는 복구 이미지(4)에 대한 특징벡터를 추출할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 검출된 특징벡터에 기초하여 상품검색을 수행할 수 있고, 수행된 상품검색의 결과를 제공할 수 있다. (S215)
자세히, 실시예에서 상품검색 어플리케이션(140)은, 원본 이미지 또는 복구 이미지(4)로부터 검출된 특징벡터에 기반한 상품검색을 수행할 수 있다.
구체적으로, 실시예에서 상품검색 어플리케이션(140)은, 원본 이미지 또는 복구 이미지(4)로부터 획득된 특징벡터와의 유사도가 기설정된 기준(예컨대, 소정의 백분율 이상 등)을 충족하는 특징벡터를 가지는 상품을 특징벡터 데이터베이스로부터 독출할 수 있다.
실시예에서, 상품검색 어플리케이션(140)은, 다양한 방식의 알고리즘(예컨대, FLANN, annoy 및/또는 Brute Froce 등)을 기반으로 특징벡터 데이터베이스에 대한 검색을 수행할 수 있다.
이때, 상품검색 어플리케이션(140)은, 원본 이미지 또는 복구 이미지(4)의 특징벡터와 특징벡터 데이터베이스의 적어도 하나 이상의 상품에 대한 특징벡터를 비교할 수 있고, 이를 통해 특징벡터 간 유사도를 측정할 수 있다.
그리고 상품검색 어플리케이션(140)은, 측정된 유사도가 기설정된 기준(예컨대, 소정의 백분율 이상 등)을 충족하는 상위 n(1<=n)개의 상품을 검출할 수 있다.
또한, 상품검색 어플리케이션(140)은, 검출된 상위 n개의 상품에 대한 관련정보(예컨대, 해당 상품을 판매하는 쇼핑몰 정보, 해당 상품에 대한 상품정보 및/또는 이미지 정보 등)를 메모리(110) 및/또는 외부의 데이터베이스로부터 획득할 수 있다.
또한, 실시예에서 상품검색 어플리케이션(140)은, 획득된 상품에 대한 관련정보 즉, 원본 이미지 또는 복구 이미지(4)의 특징벡터에 기반한 상품검색의 결과에 대한 정보를 디스플레이로 출력하여 사용자에게 제공할 수 있다.
이와 같이, 상품검색 어플리케이션(140)은, 메인 상품 이미지(1) 내 삽입 텍스트(20)(즉, 검색하고자 하는 상품과 무관한 텍스트)가 없는 경우 해당 메인 상품 이미지(1)를 그대로 이용하고, 메인 상품 이미지(1) 내 삽입 텍스트(20)가 존재하는 경우 해당 텍스트를 제거한 후 제거된 손실 영역을 복원하여 획득되는 복구 이미지(4)를 이용하여 온라인 쇼핑몰에서의 이미지 기반 상품검색을 수행함으로써, 검색하고자 하는 상품에 대한 정보 훼손이 최소화된 이미지를 기초로 상품검색을 수행할 수 있고, 이를 통해 해당 상품 검색에 대한 정확도와 신뢰성을 증진시킬 수 있다.
이상, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 딥러닝을 기초로 이미지 기반의 상품검색 시 검색하고자 하는 상품과 무관한 오브젝트를 상기 이미지로부터 제거하고, 상기 무관한 오브젝트가 제거된 이미지에 대한 복원을 수행하며, 상기 복원된 이미지를 기초로 상품검색을 수행함으로써, 이미지에 기반한 상품검색 서비스의 정확도 및 품질을 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 이미지 내 상품과 무관한 장애물 및/또는 텍스트를 상기 이미지로부터 제거하고, 상기 장애물 및/또는 텍스트가 제거되어 손실된 영역을 복원한 이미지를 기초로 이미지 기반의 상품검색을 수행함으로써, 해당 이미지에 기반한 상품검색 시 상기 이미지 내 장애물이나 텍스트의 영향으로 인한 품질 저하를 방지할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 이미지에 기반한 딥러닝을 수행하여 온라인 쇼핑몰에서의 상품검색 서비스를 구현함으로써, 온라인 쇼핑몰에 대한 기본적인 사용성을 편리하게 함과 동시에 그 경쟁력을 증대시킬 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 이미지 복원 기반 상품검색 방법 및 시스템은, 트레이닝(training)된 딥러닝 뉴럴 네트워크를 이용한 딥러닝을 통해 온라인 쇼핑몰에서의 상품검색 서비스를 구현함으로써, 상품검색의 결과를 보다 정확하고 빠르게 검출하여 제공할 수 있는 효과가 있다.
또한, 이상에서 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리(110) 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.

Claims (10)

  1. 컴퓨팅 장치에서 실행되는 상품검색 어플리케이션이 딥러닝에 기초하여 이미지 복원 기반의 상품검색을 수행하는 방법으로서,
    입력 이미지 내 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지를 획득하는 단계;
    상기 획득된 메인 상품 이미지 내 텍스트를 검출하는 단계;
    상기 검출된 텍스트에 대한 속성정보를 획득하는 단계;
    상기 획득된 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행하는 단계;
    상기 텍스트가 제거된 이미지인 손실 이미지를 기초로 이미지 복원을 수행하여 복구 이미지를 획득하는 단계;
    상기 복구 이미지 또는 상기 텍스트가 유지된 이미지인 원본 이미지에 기반하여 상기 타겟상품과 유사한 상품을 검색하는 상품검색을 수행하는 단계; 및
    상기 상품검색의 결과를 제공하는 단계를 포함하고,
    상기 검출된 텍스트에 대한 속성정보를 획득하는 단계는,
    상기 메인 상품 이미지로부터 검출된 텍스트가 상기 타겟상품이 실제로 포함하는 문자인 상품 텍스트인지 또는 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트인지 판별하는 단계와,
    상기 판별의 결과를 기초로 상기 상품 텍스트 및 상기 삽입 텍스트 중 어느 하나로 상기 검출된 텍스트에 대한 속성정보를 결정하는 단계를 포함하고,
    상기 검출된 텍스트에 대한 속성정보를 획득하는 단계는,
    소정의 텍스트를 포함하는 이미지를 입력 데이터로 하고, 상기 입력 데이터 내 텍스트가 상기 상품 텍스트인지 또는 상기 삽입 텍스트인지 판별한 정보를 출력 데이터로 하는 딥러닝 뉴럴 네트워크를 학습시키는 단계와,
    상기 학습된 딥러닝 뉴럴 네트워크에 상기 메인 상품 이미지를 입력하는 단계와,
    상기 메인 상품 이미지를 입력받은 딥러닝 뉴럴 네트워크로부터 상기 메인 상품 이미지 내 텍스트가 상기 상품 텍스트인지 또는 상기 삽입 텍스트인지 판별한 출력 정보를 획득하는 단계와,
    상기 획득된 출력 정보를 기초로 상기 메인 상품 이미지 내 텍스트의 속성정보를 결정하는 단계를 포함하고,
    상기 텍스트 처리를 수행하는 단계는,
    상기 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트가 상기 타겟상품이 실제로 포함하는 문자인 상품 텍스트로 판단되면, 상기 메인 상품 이미지 내 텍스트를 그대로 유지하는 단계와,
    상기 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트가 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트라고 판단되면, 상기 메인 상품 이미지 내 텍스트를 제거하는 단계를 포함하는
    이미지 복원 기반 상품검색 방법.
  2. 삭제
  3. ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 텍스트를 검출하는 단계는,
    상기 메인 상품 이미지에 기반한 텍스트 세그멘테이션(Text Segmentation)을 수행하여 상기 메인 상품 이미지 내 텍스트의 형태를 따라서 형성되는 텍스트 영역을 검출하는 단계 또는,
    상기 메인 상품 이미지에 기반한 텍스트 로컬라이제이션(Text Localization)을 수행하여 상기 텍스트를 포함하는 소정의 영역인 텍스트 바운딩 박스 영역을 검출하는 단계를 포함하는
    이미지 복원 기반 상품검색 방법.
  4. ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈
    제 3 항에 있어서,
    상기 텍스트를 검출하는 단계는,
    상기 텍스트 로컬라이제이션에 기반하여 검출된 텍스트 바운딩 박스 영역을 기초로 상기 텍스트 세그멘테이션을 수행하여 상기 텍스트 영역을 검출하는 단계를 더 포함하는
    이미지 복원 기반 상품검색 방법.
  5. 삭제
  6. ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈
    제 3 항에 있어서,
    상기 메인 상품 이미지 내 텍스트를 제거하는 단계는,
    상기 텍스트 영역을 기반으로 상기 텍스트를 제거하는 단계를 더 포함하는
    이미지 복원 기반 상품검색 방법.
  7. 제 1 항에 있어서,
    상기 복구 이미지를 획득하는 단계는,
    이미지 인페인팅(Image Inpainting)을 수행하도록 학습된 이미지 딥러닝 뉴럴 네트워크에 상기 손실 이미지를 입력하는 단계와,
    상기 이미지 딥러닝 뉴럴 네트워크로부터 상기 손실 이미지 내 상기 텍스트가 제거된 영역이 복원된 이미지인 상기 복구 이미지를 획득하는 단계를 포함하는
    이미지 복원 기반 상품검색 방법.
  8. 제 7 항에 있어서,
    상기 상품검색을 수행하는 단계는,
    상기 복구 이미지 또는 상기 원본 이미지를 이미지 딥러닝 뉴럴 네트워크에 입력하여 특징벡터를 추출하는 단계와, 상기 추출된 특징벡터를 기초로 복수의 상품에 대한 특징벡터들을 저장하는 데이터베이스를 검색하는 단계와, 상기 추출된 특징벡터와의 유사도가 소정의 기준을 충족하는 특징벡터를 가지는 상품을 상기 데이터베이스로부터 검출하는 단계를 포함하는
    이미지 복원 기반 상품검색 방법.
  9. 적어도 하나 이상의 프로세서; 및
    적어도 하나 이상의 메모리; 를 포함하고,
    상기 메모리에 저장되고 상기 적어도 하나 이상의 프로세서에 의해 실행되어 이미지 복원 기반의 상품검색을 수행하는 적어도 하나의 어플리케이션으로서 상기 적어도 하나의 어플리케이션은,
    입력 이미지 내 검색하고자 하는 타겟상품을 포함하는 메인 상품 이미지를 획득하고,
    상기 획득된 메인 상품 이미지 내 텍스트를 검출하고,
    상기 검출된 텍스트에 대한 속성정보를 획득하고,
    상기 획득된 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트를 유지 또는 제거하는 텍스트 처리를 수행하고,
    상기 텍스트가 제거된 이미지인 손실 이미지를 기초로 이미지 복원을 수행하여 복구 이미지를 획득하고,
    상기 복구 이미지 또는 상기 텍스트가 유지된 이미지인 원본 이미지에 기반하여 상기 타겟상품과 유사한 상품을 검색하는 상품검색을 수행하고,
    상기 상품검색의 결과를 제공하고,
    상기 어플리케이션은,
    상기 메인 상품 이미지로부터 검출된 텍스트가 상기 타겟상품이 실제로 포함하는 문자인 상품 텍스트인지 또는 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트인지 판별하고,
    상기 판별의 결과를 기초로 상기 상품 텍스트 및 상기 삽입 텍스트 중 어느 하나로 상기 검출된 텍스트에 대한 속성정보를 결정하고,
    상기 어플리케이션은,
    소정의 텍스트를 포함하는 이미지를 입력 데이터로 하고 상기 입력 데이터 내 텍스트가 상기 상품 텍스트인지 또는 상기 삽입 텍스트인지 판별한 정보를 출력 데이터로 하는 딥러닝 뉴럴 네트워크를 학습시키고,
    상기 학습된 딥러닝 뉴럴 네트워크에 상기 메인 상품 이미지를 입력하고,
    상기 메인 상품 이미지를 입력받은 딥러닝 뉴럴 네트워크로부터 상기 메인 상품 이미지 내 텍스트가 상기 상품 텍스트인지 또는 상기 삽입 텍스트인지 판별한 출력 정보를 획득하고,
    상기 획득된 출력 정보를 기초로 상기 메인 상품 이미지 내 텍스트의 속성정보를 결정하고,
    상기 어플리케이션은,
    상기 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트가 상기 타겟상품이 실제로 포함하는 문자인 상품 텍스트로 판단되면, 상기 메인 상품 이미지 내 텍스트를 그대로 유지하고,
    상기 속성정보를 기초로 상기 메인 상품 이미지 내 텍스트가 상기 메인 상품 이미지에 별도로 삽입된 문자인 삽입 텍스트라고 판단되면, 상기 메인 상품 이미지 내 텍스트를 제거하는
    이미지 복원 기반 상품검색 시스템.
  10. 삭제
KR1020210019951A 2021-02-15 2021-02-15 이미지 복원 기반 상품검색 방법 및 시스템 KR102561734B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210019951A KR102561734B1 (ko) 2021-02-15 2021-02-15 이미지 복원 기반 상품검색 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210019951A KR102561734B1 (ko) 2021-02-15 2021-02-15 이미지 복원 기반 상품검색 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20220116730A KR20220116730A (ko) 2022-08-23
KR102561734B1 true KR102561734B1 (ko) 2023-07-31

Family

ID=83092682

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210019951A KR102561734B1 (ko) 2021-02-15 2021-02-15 이미지 복원 기반 상품검색 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102561734B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6529686B2 (ja) * 2017-04-11 2019-06-12 楽天株式会社 画像処理装置、画像処理方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102533972B1 (ko) * 2016-09-08 2023-05-17 고 수 시아 시각적 검색 플랫폼용 영상 인제스트 프레임워크
KR101852598B1 (ko) 2016-11-18 2018-04-26 설영석 사물 인식을 이용한 상품 검색 시스템
US10621730B2 (en) * 2018-05-22 2020-04-14 Sony Corporation Missing feet recovery of a human object from an image sequence based on ground plane detection
KR102246408B1 (ko) * 2019-02-14 2021-05-18 엔에이치엔 주식회사 딥러닝 기반 유사상품 제공방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6529686B2 (ja) * 2017-04-11 2019-06-12 楽天株式会社 画像処理装置、画像処理方法、及びプログラム

Also Published As

Publication number Publication date
KR20220116730A (ko) 2022-08-23

Similar Documents

Publication Publication Date Title
Liao et al. Image inpainting guided by coherence priors of semantics and textures
US10740640B2 (en) Image processing method and processing device
TWI559242B (zh) 視覺化服飾檢索
KR102246408B1 (ko) 딥러닝 기반 유사상품 제공방법
CN114187633B (zh) 图像处理方法及装置、图像生成模型的训练方法及装置
CN110188763B (zh) 一种基于改进图模型的图像显著性检测方法
CN110807110B (zh) 结合局部和全局特征的图片搜索方法、装置及电子设备
JP2019523065A (ja) 自動3d脳腫瘍セグメンテーション及び分類
Zhou et al. Multiscale superpixels and supervoxels based on hierarchical edge-weighted centroidal voronoi tessellation
CN111062426A (zh) 一种建立训练集的方法、装置、电子设备以及介质
CN107358490A (zh) 一种图像匹配方法、装置及电子设备
KR102430029B1 (ko) 딥러닝 기반 유사상품 검색 결과 제공 방법 및 그 시스템
US20220270341A1 (en) Method and device of inputting annotation of object boundary information
Shih et al. New quartile-based region merging algorithm for unsupervised image segmentation using color-alone feature
Yu et al. Robust point cloud normal estimation via neighborhood reconstruction
CN109857897B (zh) 一种商标图像检索方法、装置、计算机设备及存储介质
CN111145196A (zh) 图像分割方法、装置及服务器
Han et al. Multi-stage generative adversarial networks for generating pavement crack images
KR102561734B1 (ko) 이미지 복원 기반 상품검색 방법 및 시스템
CN112884884A (zh) 一种候选区域生成方法及***
KR20220041319A (ko) 딥러닝 기반 상품검색 방법 및 시스템
US20220083806A1 (en) Method and system for product search based on image restoration
Chen et al. MTN-Net: a multi-task network for detection and segmentation of thyroid nodules in ultrasound images
Huang et al. Human body segmentation based on shape constraint
CN113139486A (zh) 用于处理图像的方法、装置、设备以及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant