[go: up one dir, main page]

KR102032038B1 - 이미지로 묘사된 아이템 인식 - Google Patents

이미지로 묘사된 아이템 인식

Info

Publication number
KR102032038B1
KR102032038B1 KR1020177023364A KR20177023364A KR102032038B1 KR 102032038 B1 KR102032038 B1 KR 102032038B1 KR 1020177023364 A KR1020177023364 A KR 1020177023364A KR 20177023364 A KR20177023364 A KR 20177023364A KR 102032038 B1 KR102032038 B1 KR 102032038B1
Authority
KR
South Korea
Prior art keywords
candidate
image
match
matches
candidate matches
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
KR1020177023364A
Other languages
English (en)
Other versions
KR20170107039A (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 이베이 인크.
Publication of KR20170107039A publication Critical patent/KR20170107039A/ko
Application granted granted Critical
Publication of KR102032038B1 publication Critical patent/KR102032038B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5846Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

제품들(예를 들어, 책)은 아이템을 식별하는데 사용될 수 있는 상당한 양의 유익한 문서 정보를 포함한다. 입력 질의 이미지는 제품의 사진(예를 들어, 모바일 전화를 사용하여 찍은 그림)이다. 사진은 임의의 각도 및 방향으로 찍히고 임의의 배경(예를 들어, 상당한 클러터를 갖는 배경)을 포함한다. 질의 이미지로부터, 식별 서버는 데이터베이스로부터 대응하는 깨끗한 카탈로그 이미지를 검색한다. 예를 들어, 데이터베이스는 제품 이름, 제품 이미지, 제품 가격, 제품 판매 이력, 또는 이들의 임의의 적절한 조합을 갖는 제품 데이터베이스가 될 수 있다. 검색은 데이터베이스에서의 이미지를 이미지와 매칭하는 것과 데이터베이스에서의 텍스트를 이미지로부터 검색된 텍스트와 매칭하는 것 모두에 의해 수행된다.

Description

이미지로 묘사된 아이템 인식
본 출원은 "효율적인 미디어 검색"이라는 명칭의 2015년 1월 23일 출원된 미국 특허 가출원 번호 62/107,095 및 "이미지로 묘사된 아이템 인식"이라는 명칭의 2015년 12월 17일 출원된 미국 특허 출원 번호 14/973,582에 대한 우선권을 주장하고, 이들의 각각은 그 전체가 본원에 참조로써 포함된다.
본원에 개시된 청구 대상은 일반적으로 이미지로 묘사된 아이템을 식별하는 컴퓨터 시스템에 관한 것이다. 특히, 본 개시는 미디어 데이터베이스로부터의 아이템에 대한 데이터의 효율적인 검색에 관한 시스템 및 방법에 대해 다룬다.
아이템 인식 엔진은 질의 이미지가 협조적(cooperative)일 때 이미지로 묘사된 아이템을 인식하는데 높은 성공률을 가질 수 있다. 협조적인 이미지는 적절한 조명으로 찍은 것이고, 아이템은 카메라를 직접 대면하고 적절히 정렬되며, 이미지는 아이템 외의 객체는 묘사하지 않는다. 아이템 인식 엔진은 비협조적(non-cooperative)인 이미지로 묘사된 아이템을 인식하는 것이 불가능할 수 있다. 본원과 관련된 배경기술로는 예를 들어 미국 특허공개공보 제2006/0147127호를 참조할 수 있다.
일부 실시예들은 첨부 도면의 도면들에서 제한이 아닌 예시로서 도시된다.
도 1은 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 식별하기에 적합한 네트워크 환경을 도시하는 네트워크 다이어그램이다.
도 2는 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 식별하기에 적합한 식별 서버의 컴포넌트를 도시하는 블록도이다.
도 3은 일부 예시의 실시예에 따라 아이템의 이미지를 캡쳐하고 이미지에서 묘사된 아이템을 식별하도록 구성된 서버와 통신하기에 적합한 디바이스의 컴포넌트를 도시하는 블록도이다.
도 4는 일부 예시의 실시예에 따라 아이템의 기준 이미지 및 비협조적인 이미지를 도시한다.
도 5는 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 식별하기 위한 텍스트 추출 동작을 도시한다.
도 6은 일부 예시의 실시예에 따라 아이템을 묘사하는 입력 이미지 및 아이템에 대해 제안된 매치의 세트를 도시한다.
도 7은 일부 예시의 실시예에 따라 이미지에서의 아이템을 식별하는 프로세스를 수행하는 서버의 동작을 도시하는 흐름도이다.
도 8은 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 위한 판매 리스팅을 자동으로 생성하는 프로세스를 수행하는 서버의 동작을 도시하는 흐름도이다.
도 9는 일부 예시의 실시예에 따라 이미지로 묘사된 아이템에 기초한 결과를 제공하는 프로세스를 수행하는 서버의 동작을 도시하는 흐름도이다.
도 10은 일부 예시의 실시예에 따라, 머신 상에 설치될 수 있는 소프트웨어 아키텍쳐의 일례를 도시하는 블록도이다.
도 11은 일부 예시의 실시예에 따라, 명령어의 세트가 머신으로 하여금 본원에서 논의된 임의의 하나 이상의 방법론을 수행하게 하기 위해 실행될 수 있는 컴퓨터 시스템의 형태인 머신의 개략적인 표현을 도시한다.
예시의 방법 및 시스템은 이미지로 묘사된 아이템의 식별에 관한 것이다. 예시들은 단지 가능한 전형적인 변형이다. 달리 명시적으로 언급되지 않으면, 컴포넌트들 및 기능들은 선택적이고 통합되거나 세분화될 수 있고, 동작들은 순차적으로 변하거나 통합되거나 세분화될 수 있다. 다음의 설명에서, 예시의 목적을 위해, 다양한 특성 상세가 예시의 실시예의 완전한 이해를 제공하기 위해 제시된다. 그러나, 본 발명의 청구 대상은 이들 특성 상세 없이 실시될 수 있음이 당업자에게 명백해질 것이다.
제품들(예를 들어, 책 또는 컴팩트 디스크(CD))은 주로 아이템을 묘사하는 이미지로부터 아이템을 식별하는데 사용될 수 있는 상당한 양의 유익한 문서 정보를 포함한다. 이러한 문서 정보를 포함하는 제품의 부분들은 책의 앞 표지, 뒤 표지, 및 등, CD, 디지털 비디오 디스크(DVD), 또는 블루레이™ 디스크의 전면, 후면, 및 등을 포함한다. 유익한 문서 정보를 포함하는 제품들의 다른 부분들은 표지, 패키징, 및 사용자 매뉴얼이다. 전통적인 광학식 문자 판독(OCR)은 아이템 상의 텍스트가 이미지의 모서리와 정렬되고 이미지 품질이 높을 때 사용될 수 있다. 협조적인 이미지는 적절한 조명으로 찍은 것이고, 아이템은 카메라를 직접 대면하고 적절히 정렬되며, 이미지는 아이템 외의 객체는 묘사하지 않는다. 이들 특징 중 하나 이상이 부족한 이미지는 "비협조적"으로 지칭된다. 일례로서, 어두운 조명으로 찍은 이미지는 비협조적이다. 다른 예시로서, 아이템 묘사의 하나 이상의 부분을 차단하는 폐색(occlusion)을 포함하는 이미지는 또한 비협조적이다. 전통적인 OCR은 비협조적인 이미지를 처리할 때 실패할 수 있다. 따라서, 보조 단어 레벨에서의 OCR의 사용은 직접 이미지 분류의 사용(깊은 중첩 신경망(CNN)을 사용함)에 의해 보충될 수 있는 잠재적인 매치에 관한 일부 정보를 제공할 수 있다.
일부 예시의 실시예에서, 사진(예를 들어, 모바일 전화를 사용하여 찍은 그림)은 입력 질의 이미지이다. 사진은 임의의 각도 및 방향으로 찍히고 임의의 배경(예를 들어, 상당한 클러터를 갖는 배경)을 포함한다. 질의 이미지로부터, 식별 서버는 데이터베이스로부터 대응하는 깨끗한 카탈로그 이미지를 검색한다. 예를 들어, 데이터베이스는 제품 이름, 제품 이미지, 제품 가격, 제품 판매 이력, 또는 이들의 임의의 적절한 조합을 갖는 제품 데이터베이스가 될 수 있다. 검색은 이미지를 데이터베이스에서의 이미지와 매칭하는 것과 이미지로부터 검색된 텍스트를 데이터베이스에서의 텍스트와 매칭하는 것 모두에 의해 수행된다.
도 1은 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 식별하기에 적합한 네트워크 환경을 도시하는 네트워크 다이어그램이다. 네트워크 환경(100)은 전자 상거래 서버(120 및 140), 식별 서버(130), 및 디바이스(150A, 150B 및 150C)를 포함하고, 모두 네트워크(170)를 통해 서로 통신가능하게 연결된다. 디바이스(150A, 150B, 및 150C)는 집합적으로 "디바이스들(150)"로서 지칭될 수 있거나 일반적으로 "디바이스(150)"로서 지칭될 수 있다. 전자 상거래 서버(120 및 140) 및 식별 서버(130)는 네트워크 기반 시스템(100)의 일부가 될 수 있다. 대안으로, 디바이스(150)는 직접 또는 전자 상거래 서버(120 또는 140)에 접속하는데 사용되는 네트워크(170)로부터 구분되는 로컬 네트워크를 통해 식별 서버(130)에 접속할 수 있다. 도 10 및 11과 관련하여 이하에서 설명되는 바와 같이, 전자 상거래 서버(120 및 140), 식별 서버(130), 및 디바이스(150)는 각각 컴퓨터 시스템 전체 또는 부분으로 구현될 수 있다.
전자 상거래 서버(120 및 140)는 네트워크(170)를 통해 다른 머신(예를 들어, 디바이스(150))에 전자 상거래 애플리케이션을 제공한다. 전자 상거래 서버(120 및 140)는 또한 식별 서버(130)에 직접 접속되거나 통합될 수 있다. 일부 예시의 실시예에서, 하나의 전자 상거래 서버(120) 및 식별 서버(130)는 네트워크 기반 시스템(110)의 일부인 반면, 다른 전자 상거래 서버(예를 들어, 전자 상거래 서버(140)는 네트워크 기반 시스템(110)으로부터 분리된다. 전자 상거래 애플리케이션은 사용자들이 서로 직접 아이템을 구매하고 판매하는 방식, 전자 상거래 애플리케이션 제공자로부터 구매하고 판매하는 방식, 또는 둘다를 제공할 수 있다.
사용자(160)가 도 1에서 또한 도시된다. 사용자(160)는 사람 사용자(예를 들어, 인간), 머신 사용자(예를 들어, 디바이스(150) 및 식별 서버(130)와 인터랙팅하도록 소프트웨어 프로그램에 의해 구성되는 컴퓨터), 또는 이들의 임의의 적절한 조합(예를 들어, 머신에 의해 보조되는 사람 또는 사람에 의해 감독되는 머신)이 될 수 있다. 사용자(160)는 네트워크 환경(100)의 부분은 아니지만, 디바이스(150)와 연관되고 디바이스(150)의 사용자가 될 수 있다. 예를 들어, 디바이스(150)는 센서, 데스크탑 컴퓨터, 차량 컴퓨터, 태블릿 컴퓨터, 네비게이션 디바이스, 휴대용 미디어 디바이스, 또는 사용자(160)에게 속하는 스마트 폰이 될 수 있다.
일부 예시의 실시예에서, 식별 서버(130)는 사용자에게 관심있는 아이템에 관한 데이터를 수신한다. 예를 들어, 디바이스(150A)에 부착된 카메라는 사용자(160)가 판매하기를 원하는 아이템의 이미지를 찍고 네트워크(170)를 통해 식별 서버(130)로 이미지를 전송할 수 있다. 식별 서버(130)는 이미지에 기초하여 아이템을 식별한다. 식별된 아이템에 대한 정보는 전자 상거래 서버(120 또는 140)로, 디바이스(150A)로, 또는 이들의 임의의 조합으로 송신될 수 있다. 판매를 위한 아이템의 리스팅을 생성하는 것을 보조하기 위한 정보가 전자상거래 서버(120 또는 140)에 의해 사용될 수 있다. 유사하게, 이미지는 사용자(160)에게 관심있는 아이템이 될 수 있고, 사용자(160)에게 보여주기 위한 아이템의 리스팅을 선택하는 것을 보조하기 위한 정보가 전자 상거래 서버(120 또는 140)에 의해 사용될 수 있다.
도 1에 도시된 임의의 머신, 데이터베이스, 또는 디바이스는 그 머신, 데이터베이스, 또는 디바이스에 대해 본원에서 설명된 기능을 수행하는 특수 목적 컴퓨터가 되도록 소프트웨어에 의해 수정된(예를 들어, 구성된 또는 프로그래밍된) 범용 컴퓨터로 구현될 수 있다. 예를 들어, 본원에서 설명된 임의의 하나 이상의 방법론을 구현하는 것이 가능한 컴퓨터 시스템은 도 10 및 11과 관련하여 이하에서 설명된다. 본원에서 사용된 바와 같이, "데이터베이스"는 데이터 저장 리소스이고 텍스트 파일, 테이블, 스프레드시트, 관계 데이터베이스(예를 들어, 객체 관계 데이터베이스), 삼중 저장소, 계층적 데이터 저장소, 또는 이들의 임의의 적절한 조합으로서 구조화된 데이터를 저장할 수 있다. 또한, 도 1에 도시된 임의의 둘 이상의 머신, 데이터베이스, 또는 디바이스는 단일 머신으로 통합될 수 있고, 임의의 단일 머신, 데이터베이스, 또는 디바이스를 위해 본원에서 설명된 기능들은 다수의 머신, 데이터베이스, 또는 디바이스로 세분화될 수 있다.
네트워크(170)는 머신, 데이터베이스, 및 디바이스 (예를 들어, 식별 서버(130) 및 디바이스(150)) 사이에 또는 가운데 통신을 가능하게 하는 임의의 네트워크가 될 수 있다. 따라서, 네트워크(170)는 유선 네트워크, 무선 네트워크(예를 들어, 모바일 또는 셀룰러 네트워크), 또는 이들의 임의의 적절한 조합이 될 수 있다. 네트워크(170)는 사설 네트워크, 공용 네트워크(예를 들어, 인터넷), 또는 이들의 임의의 적절한 조합으로 구성된 하나 이상이 부분을 포함할 수 있다.
도 2는 일부 예시의 실시예에 따라 식별 서버(130)의 컴포넌트를 도시하는 블록도이다. 식별 서버(130)는 통신 모듈(210), 텍스트 식별 모듈(220), 이미지 식별 모듈(230), 순위화 모듈(240), 사용자 인터페이스(UI) 모듈(250), 리스팅 모듈(260), 및 저장 모듈(270)을 포함하는 것으로서 도시되고, (예를 들어, 버스, 공유 메모리, 또는 스위치를 통해) 모두 서로 통신하도록 구성된다. 본원에서 설명된 임의의 하나 이상의 모듈은 하드웨어(예를 들어, 머신의 프로세서)를 사용하여 구현될 수 있다. 또한, 임의의 둘 이상의 이들 모듈은 단일 모듈로 통합될 수 있고, 단일 모듈을 위한 본원에서 설명된 기능들은 다수의 모듈 사이에서 세분화될 수 있다. 또한, 다양한 예시의 실시예에 따라, 단일 머신, 데이터베이스, 또는 디바이스 내에서 구현되는 것으로서 본원에서 설명된 모듈은 다수의 머신, 데이터베이스, 또는 디바이스에 걸쳐 분산될 수 있다.
통신 모듈(210)은 데이터를 송신 및 수신하도록 구성된다. 예를 들어, 통신 모듈(210)은 네트워크(170)를 통해 이미지 데이터를 수신하고 수신된 데이터를 텍스트 식별 모듈(220) 및 이미지 식별 모듈(230)로 송신할 수 있다. 다른 예시로서, 순위화 모듈(240)은 묘사된 아이템에 대해 최상의 매치를 결정할 수 있고, 아이템에 대한 식별자는 통신 모듈(210)에 의해 네트워크(170)를 통해 전자 상거래 서버(120)로 전송될 수 있다. 이미지 데이터는 2차원 이미지, 연속 비디오 스트림으로부터의 프레임, 3차원 이미지, 깊이 이미지, 적외선 이미지, 쌍안경 이미지, 또는 이들의 임의의 적절한 조합이 될 수 있다.
텍스트 식별 모듈(220)은 입력 이미지로부터 추출된 텍스트에 기초하여, 입력 이미지로 묘사된 아이템에 대해 제안된 매치의 세트를 생성하도록 구성된다. 예를 들어, 입력 이미지로부터 추출된 텍스트는 데이터베이스에서의 텍스트에 대해 매칭될 수 있고 상위 n개(예를 들어, 상위 5개)의 매치는 아이템에 대해 제안된 매치로서 보고된다.
이미지 식별 모듈(230)은 이미지 매칭 기술을 사용하여, 입력 이미지로 묘사된 아이템에 대해 제안된 매치의 세트를 생성하도록 구성된다. 예를 들어, 상이한 미디어 아이템 사이를 구분하도록 숙련된 CNN은 묘사된 아이템과 하나 이상의 미디어 아이템 사이의 매치의 확률을 보고하는데 사용될 수 있다. 이러한 CNN의 목적을 위해, 미디어 아이템은 묘사되는 것이 가능한 미디어의 아이템이다. 예를 들어, 책, CD, 및 DVD는 모두 미디어 아이템이다. MP4 오디오 파일과 같은, 순수한 전자 미디어는 또한 이들이 이미지와 연관되었다면, 이러한 의미에서 "미디어 아이템"이다. 예를 들어, CD의 전자 다운로드 버전은 버전이 전자 다운로드임을 나타내는 마커를 포함하도록 수정된 CD의 커버 이미지와 연관될 수 있다. 따라서, 이미지 식별 모듈(230)의 숙련된 CNN은 CD의 물리적 버전과 매칭하는 특정 이미지의 확률로부터 분리된 다운로드가능한 버전의 CD와 매칭하는 특정 이미지의 확률을 식별할 수 있다.
순위화 모듈(240)은 텍스트 식별 모듈(220)에 의해 생성된 아이템에 대한 제안된 매치의 세트를 이미지 식별 모듈(230)에 의해 생성된 아이템에 대해 제안된 매치의 세트와 통합하고 통합된 세트를 순위화하도록 구성된다. 예를 들어, 텍스트 식별 모듈(220) 및 이미지 식별 모듈(230)은 각각 제안된 매치를 위한 스코어를 각각 제공할 수 있고 순위화 모듈(240)은 가중치 인자를 사용하여 이들을 통합할 수 있다. 순위화 모듈(240)은 이미지로 묘사된 식별된 아이템으로서 최상위의 제안된 매치를 보고할 수 있다. 순위화 모듈(240)에 의해 사용되는 가중치는 서수 회귀 지원 벡터 머신(OR-SVM)을 사용하여 결정될 수 있다.
사용자 인터페이스 모듈(250)은 사용자 인터페이스가 하나 이상의 사용자 디바이스(150A 내지 150C) 상에서 제시되게 하도록 구성된다. 예를 들어, 사용자 인터페이스 모듈(250)은 네트워크(170)를 통해 하이퍼텍스트 마크업 언어(HTML) 파일을 사용자 디바이스(150)로 제공하는 웹 서버에 의해 구현될 수 있다. 사용자 인터페이스는 통신 모듈(210)에 의해 수신된 이미지, 순위화 모듈(240)에 의해 이미지에서 식별된 아이템에 관한 저장 모듈(270)로부터 검색된 데이터, 리스팅 모듈(260)에 의해 생성된 또는 선택된 아이템 리스팅, 또는 이들의 임의의 적절한 조합을 나타낼 수 있다.
리스팅 모듈(260)은 순위화 모듈을 사용하여 식별된 아이템에 대한 아이템 리스팅을 생성하도록 구성된다. 예를 들어, 사용자가 아이템을 묘사하는 이미지를 업로드하고 아이템이 성공적으로 식별된 이후에, 리스팅 모듈(260)은 아이템 카탈로그로부터의 아이템 이미지, 아이템 카탈로그로부터의 아이템 제목, 아이템 카탈로그로부터의 설명, 또는 이들의 임의의 적절한 조합을 포함하는 아이템 리스팅을 생성할 수 있다. 사용자는 생성된 리스팅을 확인 또는 수정하도록 프롬프팅될 수 있거나, 생성된 리스팅은 묘사된 아이템의 식별에 응답하여 자동으로 공개될 수 있다. 리스팅은 통신 모듈(210)을 통해 전자 상거래 서버(120 또는 140)로 송신될 수 있다. 일부 예시의 실시예에서, 리스팅 모듈(260)은 전자 상거래 서버(120 또는 140)로 구현될 수 있고 리스팅은 식별 서버(130)로부터 전자 상거래 서버(120 또는 140)로 송신되는 아이템에 대한 식별자에 응답하여 생성된다.
저장 모듈(270)은 텍스트 식별 모듈(220), 이미지 식별 모듈(230), 순위화 모듈(240), 사용자 인터페이스 모듈(250), 및 리스팅 모듈(260)에 의해 생성되고 사용된 데이터를 저장 및 검색하도록 구성된다. 예를 들어, 이미지 식별 모듈(230)에 의해 사용된 분류자는 저장 모듈(270)에 의해 저장될 수 있다. 순위화 모듈(240)에 의해 생성된, 이미지로 묘사된 아이템의 식별에 관한 정보가 또한 저장 모듈(270)에 의해 저장될 수 있다. 전자 상거래 서버(120 또는 140)는 저장 모듈(270)에 의해 저장소로부터 검색될 수 있고 통신 모듈(210)을 사용하여 네트워크(170)를 통해 송신될 수 있는, 이미지에서 (예를 들어, 이미지, 이미지 식별자 또는 둘다 제공함으로써) 아이템의 식별을 요청할 수 있다.
도 3은 일부 예시의 실시예에 따른 디바이스(150)의 컴포넌트를 도시하는 블록도이다. 디바이스(150)는 입력 모듈(310), 카메라 모듈(320), 및 통신 모듈(330)을 포함하는 것으로서 도시되고, (예를 들어, 버스, 공유 메모리, 또는 스위치를 통해) 모두 서로 통신하도록 구성된다. 본원에서 설명된 임의의 하나 이상의 모듈은 하드웨어(예를 들어, 머신의 프로세서)를 사용하여 구현될 수 있다. 또한, 임의의 둘 이상의 모듈은 단일 모듈로 통합될 수 있고, 단일 모듈에 대해 본원에서 설명된 기능들은 다수의 모듈 사이에서 세분화될 수 있다. 또한, 다양한 예시의 실시예에 따라, 단일 머신, 데이터베이스, 또는 디바이스 내에서 구현되는 것으로서 본원에서 설명된 모듈은 다수의 머신, 데이터베이스, 또는 디바이스에 걸쳐 분산될 수 있다.
입력 모듈(310)은 사용자 인터페이스를 통해 사용자로부터 입력을 수신하도록 구성된다. 예를 들어, 사용자는 그의 사용자이름 및 패스워드를 입력 모듈에 입력하고, 카메라를 구성하고, 이미지를 리스팅 또는 아이템 검색을 위한 근거로서 사용되도록 선택하거나, 이들의 임의의 조합을 수행할 수 있다.
카메라 모듈(320)은 이미지 데이터를 캡쳐하도록 구성된다. 예를 들어, 이미지는 카메라로부터 수신될 수 있고, 깊이 이미지는 적외선 카메라로부터 수신될 수 있고, 한 쌍의 이미지는 쌍안경 카메라로부터 수신될 수 있다.
통신 모듈(330)은 입력 모듈(310) 또는 카메라 모듈(320)에 의해 수신된 데이터를 식별 서버(130), 전자 상거래 서버(120), 또는 전자 상거래 서버(140)로 전달하도록 구성된다. 예를 들어, 입력 모듈(310)은 카메라 모듈(320)로 찍은 이미지의 선택 및 사용자(예를 들어, 사용자(160))가 판매하기를 원하는 아이템을 이미지가 묘사한다는 표시를 수신할 수 있다. 통신 모듈(330)은 이미지 및 표시를 전자 상거래 서버(120)로 전송할 수 있다. 전자 상거래 서버(120)는 이미지를 식별 서버(130)로 송신하여 이미지로 묘사된 아이템의 식별을 요청하고, 카테고리에 기초하여 리스팅 템플릿을 생성하고, 리스팅 템플릿이 통신 모듈(330) 및 입력 모듈(310)을 통해 사용자에게 제시되게 할 수 있다.
도 4는 일부 예시의 실시예에 따라 아이템의 기준 및 비협조적인 이미지를 도시한다. 그룹(410, 420, 및 430)의 각각에서의 제 1 엔트리는 카테고리 이미지이다. 카탈로그 이미지로 묘사된 아이템은 채광이 좋고(well-lit), 카메라와 직접 대면하며, 적절하게 방향조정된다. 각각의 그룹의 나머지 이미지는 다양한 방향 및 대면으로 사용자에 의해 찍힌 이미지이다. 추가적으로, 비 카탈로그 이미지는 배경 클러터를 묘사한다.
도 5는 일부 예시의 실시예에 따라 이미지로 묘사된 아이템을 식별하기 위한 텍스트 추출 동작을 도시한다. 도 5의 각각의 행은 입력 이미지 상에서 수행되는 예시의 동작을 도시한다. 구성요소(510A 및 510B)는 각각의 행에 대한 입력 이미지를 도시한다. 구성요소(520A 및 520B)는 후보 추출 및 방향의 결과를 도시한다. 즉, 질의 이미지를 고려하면, 텍스트 블록은 휴리스틱(heuristic)에 기초한 랜덤 변환을 사용하여 식별되고 방향조정된다. 대강 동일 선상의 문자들은 라인으로 식별되고 OCR(예를 들어, 4차원 정육면체 OCR)을 통과하여 텍스트 출력을 획득한다. 예시로서, 구성요소(530A 및 530B)는 획득된 텍스트 출력의 서브세트를 보여준다.
도 6은 일부 예시의 실시예에 따라 미디어 아이템을 묘사하는 입력 이미지 및 아이템에 대해 제안된 매치의 세트를 도시한다. 이미지(610)는 입력 이미지이다. 이미지(610)는 묘사된 미디어 아이템 상의 텍스트가 이미지와 정렬되도록 배향되어 있지만, 미디어 아이템은 카메라에 대해 소정 각도를 이룬다. 또한, 미디어 아이템은 이미지로 묘사된 텍스트 중 일부를 불분명하게 만드는 광원을 반사시킨다. 제안된 매치의 세트(620)는 텍스트 식별 모듈(220)에 의해 보고되는 상위 5개의 매치를 묘사한다. 제안된 매치의 세트(630)는 이미지 식별 모듈(230)에 의해 보고되는 상위 5개의 매치를 묘사한다. 제안된 매치의 세트(640)는 순위화 모듈(240)에 의해 보고되는 상위 5개의 매치를 묘사한다. 따라서, 제안된 매치의 세트(640)에서 제 1 엔트리는 식별 서버(130)에 의해 입력 이미지(610)에 대한 매치로서 정확하게 보고된다.
도 7은 일부 예시의 실시예에 따라 이미지에서의 아이템을 식별하는 프로세스를 수행하는 식별 서버(130)의 동작을 도시하는 흐름도이다. 프로세스(700)는 동작 (710), (720), (730), (740), 및 (750)을 포함한다. 제한이 아닌 오직 예시로서, 동작(710) 내지 (750)은 모듈(210) 내지 (270)에 의해 수행되는 것으로서 설명된다.
동작(710)에서, 이미지 분류 모듈(230)이 이미지에 액세스한다. 예를 들어, 이미지는 디바이스(150)에 의해 캡쳐될 수 있고, 네트워크(170)를 통해 식별 서버(130)로 송신될 수 있고, 식별 서버(130)의 통신 모듈(210)에 의해 수신될 수 있고, 통신 모듈(210)에 의해 이미지 분류 모듈(230)로 전달될 수 있다. 이미지 분류 모듈(230)은 데이터베이스에서 이미지에 대한 후보 매치의 제 1 세트의 각각에 대한 스코어를 결정한다(동작 (720)). 예를 들어, 국부적으로 집계된 서술자 벡터(vector of locally aggregated descriptors, VLAD)는 데이터베이스에서 후보 매치를 식별하고 이들을 순위화하는데 사용될 수 있다. 일부 예시의 실시예에서, VLAD는 트레이닝 세트로부터 가속화된 강력한 특징(speeded up robust feature, SURF)을 밀도 높게 추출하고 k=256인 k-평균을 사용하여 서술자를 클러스터링하는 것에 의해 구조화되어 어휘를 생성한다. 일부 예시의 실시예에서, 유사성 메트릭은 정규화된 VLAD 서술자들 사이의 L2(유클리드) 거리에 기초한다.
동작(730)에서, 텍스트 식별 모듈(220)은 이미지에 액세스하고 이로부터 텍스트를 추출한다. 텍스트 식별 모듈(220)은 데이터베이스에서의 텍스트에 대한 후보 매치의 제 2 세트의 각각에 대한 스코어를 결정한다. 예를 들어, BoW(bag of words) 알고리즘이 데이터베이스에서 후보 매치를 식별하고 이들을 순위화하는데 사용될 수 있다. 텍스트는 이미지로부터 방향에 구속받지 않는(orientation-agnostic) 방식으로 추출될 수 있다. 추출된 텍스트는 투사 분석을 통해 수평 정렬로 재지향된다. 랜덤 변환이 계산되고 라인의 각도는 선택된 투사된 영역을 갖는다. 텍스트의 개별 라인은 중심부 문자의 클러스터링을 사용하여 추출된다. 최대로 안정한 극단 영역(MSER)은 각각의 클러스터 내에서 잠재적인 문자로서 식별된다. 문자 후보는 이들이 인접한 경우 또는 이들의 기저가 근접 y 값을 갖는 경우에 유사한 높이의 영역을 통합함으로써 라인으로 그룹화된다. 비현실적인 라인 후보는 종횡비(aspect ratio)가 임계치를 초과하는 경우(예를 들어, 라인의 길이가 폭의 15배를 초과하는 경우) 배제된다.
식별된 라인의 텍스트는 텍스트 추출을 위해 OCR 엔진을 통과한다. 텍스트의 추출된 라인이 뒤집힐 수 있는 가능성을 설명하기 위해, 식별된 라인의 텍스트는 또한 180도로 회전되고 회전된 라인이 OCR 엔진을 통과한다.
동작(740)에서, 캐릭터 n-그램은 텍스트 매칭을 위해 사용된다. 크기 N의 슬라이딩 윈도우는 충분한 길이를 갖는 각각의 단어를 만나서 알파벳이 아닌 문자는 폐기된다. N=3인 일례로서, "I like turtles"라는 구문은 "lik", "ike", "tur", "urt", "rtl", "tle" 및 "les"로 분해될 것이다. 일부 예시의 실시예에서, 모든 문자를 소문자로 변환함으로써 대소문자가 무시된다.
각각의 문서에 대한 N-그램의 비정규화된 히스토그램은 f로서 지칭된다. 일부 예시의 실시예에서, 질의와 문서 사이의 정규화된 유사성 스코어를 계산하기 위해 이하의 스킴이 사용된다.
여기서 N1 및 N2는 각각 L1 및 L2 정규화를 계산하기 위한 함수이다. 감마 벡터는 역 문서 빈도수(idf) 가중치의 벡터이다. 각각의 고유 N-그램 g에 대해, 대응하는 idf 가중치는 으로서 계산되고, 데이터베이스에서 다수의 문서의 자연 로그는 N-그램 g를 포함하는 다수의 문서에 의해 분할된다. 최종 정규화는 L2 정규화이다.
동작(750)에서, 순서화 모듈(240)은 스코어의 제 1 세트 및 스코어의 제 2 세트에 기초하여, 이미지에 대한 가능성있는 매치를 식별한다. 예를 들어, 대응하는 스코어는 합해지고 가중되거나 통합될 수 있고, 후보 매치는 가능성있는 매치로서 식별되는 최상 결과 스코어를 갖는다.
는 유사도 측정치의 세트를 통합된 순위로 통합한다. 각각의 는 하나의 특징 타입으로부터의 유사도 측정치를 나타낸다. 를 계산하기 위한 항의 최적 가중치는 항상 부정확한 것보다 정확한 질의/참조 매치 사이의 더 높은 유사성을 제공한다. 따라서, 이하의 최적화가 최적 가중치 벡터 w를 학습하기 위한 트레이닝 프로세스 동안 시행될 수 있다.
동작(750) 동안, 개별 S 값(예를 들어, OCR 매치에 대한 것 및 VLAD 매치에 대한 것)은 벡터로 통합되고, 통합된 스코어는 를 곱하여 생성된다. 일부 예시의 실시예에서, 질의 이미지에 대한 최상의 통합된 스코어를 갖는 아이템은 매칭 아이템으로서 취해진다. 일부 예시의 실시예에서, 임계치를 초과하는 통합된 스코어를 갖는 아이템이 존재하지 않을 때, 매치되는 것으로 확인된 아이템이 존재하지 않는다. 일부 예시의 실시예에서, 임계치를 초과하는 통합된 스코어를 갖는 아이템의 세트, 최상의 통합된 스코어를 갖는 K개의 아이템의 세트, 또는 이들의 적절한 조합이 후술하는 바와 같이 기하학적 특징을 이용하는 추가 이미지 매칭을 위해 선택된다.
잠재적인 매치 및 질의 이미지는 표준 크기(예를 들어, 256 × 256 픽셀)로 크기가 조정된다. 각각의 크기 조정된 이미지에 대한 8개의 방향, 셀 당 8 바이 8 픽셀, 및 블록 당 2 바이 2 셀에 대해 방향성 기울기 히스토그램(histograms of oriented gradients, HOG) 값이 결정된다. 각각의 잠재적인 매치에 대해, 변환된 질의 매트릭스와 잠재적으로 매칭하는 이미지 사이의 에러를 최소화하는 선형 변환 매트릭스가 확인된다. 최소화된 에러가 비교되고, 가장 적게 최소화된 에러를 갖는 잠재적인 매치가 매치로서 보고된다.
에러를 최소화하는 선형 변환 매트릭스를 식별하는 하나의 방법은 다수(예를 들어, 100)의 이러한 변환 매트릭스를 랜덤하게 생성하고, 이들 매트릭스의 각각에 대한 에러를 판정하는 것이다. 최소 에러가 임계치 미만인 경우, 대응하는 매트릭스가 사용된다. 그렇지 않다면, 새로운 세트의 랜덤 변환 매트릭스가 생성되고 평가된다. 사전결정된 수의 반복 이후에, 확인된 최소 에러에 대응하는 매트릭스가 사용되고, 방법이 종료된다.
도 8은 일부 예시의 실시예에 따라 이미지로 묘사된 아이템의 판매 리스팅을 자동으로 생성하는 프로세스(800)를 수행하는 서버의 동작을 도시하는 흐름도이다. 프로세스(800)는 동작(810), (820) 및 (830)을 포함한다. 제한이 아닌 오직 예시로서, 동작(810) 내지 (830)은 식별 서버(130) 및 전자 상거래 서버(120)에 의해 수행되는 것으로서 설명된다.
동작(810)에서, 전자 상거래 서버(120)는 이미지를 수신한다. 예를 들어, 사용자(160)는 디바이스(150)를 사용하여 이미지를 찍을 수 있고 이를 전자 상거래 서버(120)에 업로드할 수 있다. 동작(820)에서, 식별 서버(120)는 프로세스(700)를 사용하여 이미지로 묘사된 아이템을 식별한다. 예를 들어, 전자 상거래 서버(130)는 식별을 위해 이미지를 식별 서버(120)로 전달할 수 있다. 일부 예시의 실시예에서, 전자 상거래 서버(120) 및 식별 서버(130)가 통합되고 전자 상거래 서버(120)는 이미지에서 아이템을 식별한다.
동작(830)에서, 전자 상거래 서버(120)는 사용자(160)에 의해 판매되는 것으로서 아이템을 설명하는 리스팅을 생성한다. 예를 들어, 사용자가 "The Last Mogul"이라는 제목의 책의 그림을 업로드한다면, "The Last Mogul"에 대한 리스팅이 생성될 수 있다. 일부 예시의 실시예에서, 생성된 리스팅은 아이템의 카탈로그 이미지, 아이템 제목, 아이템의 설명을 포함하고, 모두 제품 데이터베이스로부터 로딩된다. 추가 리스팅 옵션 또는 디폴트 리스팅 옵션(예를 들어, 가격 또는 시작가, 판매 포맷(경매 또는 고정 가격), 또는 선적 옵션)을 선택하도록 사용자에게 제시되는 사용자 인터페이스가 사용될 수 있다.
도 9는 일부 예시의 실시예에 따라 이미지로 묘사된 아이템에 기초한 결과를 제공하는 프로세스를 수행하는 서버의 동작을 도시하는 흐름도이다. 프로세스(900)는 동작(910), (920), 및 (930)을 포함한다. 제한이 아닌 오직 예시로서, 동작(910) 내지 (930)은 식별 서버(130) 및 전자 상거래 서버(120)에 의해 수행되는 것으로서 설명된다.
동작(910)에서, 전자 상거래 서버(120) 또는 검색 엔진 서버는 이미지를 수신한다. 예를 들어, 사용자(160)는 디바이스(150)를 사용하여 이미지를 찍을 수 있고 이를 전자 상거래 서버(120) 또는 검색 엔진 서버에 업로드할 수 있다. 동작(920)에서, 식별 서버(130)는 프로세스(700)를 사용하여 이미지에서 묘사된 아이템을 식별한다. 예를 들어, 전자 상거래 서버(120)는 식별을 위해 이미지를 식별 서버(130)로 전달할 수 있다. 일부 예시의 실시예에서, 전자 상거래 서버(130) 및 식별 서버(120)가 통합되고 전자 상거래 서버(130)는 이미지로 묘사된 아이템을 식별한다. 유사하게, 검색 엔진 서버(예를 들어, 문서, 웹 페이지, 이미지, 비디오, 또는 다른 파일을 위치지정하는 서버)는 이미지를 수신하고, 식별 서버(130)를 통해, 이미지로 묘사된 미디어 아이템을 식별한다.
동작(930)에서, 전자 상거래 서버(120) 또는 검색 엔진 서버는 이미지의 수신에 응답하여 사용자에게 하나 이상의 아이템에 관한 정보를 제공한다. 이미지로 묘사된 식별된 아이템에 기초하여 아이템이 선택된다. 예를 들어, 사용자가 "The Last Mogul"이라는 제목의 책의 그림을 업로드한다면, 전자 상거래 서버(120) 또는 (140)을 통해 리스팅된 "The Last Mogul"에 대한 판매 리스팅이 식별되고 이미지를 제공한 사용자에게 제공될 수 있다(예를 들어, 사용자(160)에게 디스플레이하기 위해 디바이스(150A)로 네트워크(170)를 통해 전송됨). 다른 예시로서, 사용자가 일반 검색 엔진에 "The Last Mogul"의 그림을 업로드한다면, "The Last Mogul"을 언급한 웹 페이지가 식별될 수 있고, 판매를 위한 "The Last Mogul"을 갖는 상점이 식별될 수 있고, "The Last Mogul"에 대한 리뷰의 비디오가 식별될 수 있고, 이들 중 하나 이상이 사용자에게 제공될 수 있다(예를 들어, 사용자 디바이스의 웹 브라우저 상에서 디스플레이하기 위한 웹 페이지에서).
다양한 예시의 실시예에 따라, 본원에서 설명된 하나 이상의 방법론이 이미지로 묘사된 아이템(예를 들어, 미디어 아이템)을 식별하는 것을 제공할 수 있다. 또한, 본원에서 설명된 하나 이상의 방법론은 단독의 이미지 식별 방법 또는 텍스트 분류 방법에 비해 이미지로 묘사된 아이템을 식별하는 것을 제공할 수 있다. 또한, 본원에서 설명된 하나 이상의 방법론은 더 신속하게 그리고 이전 방법과 비교하여 더 적은 계산력을 사용하여 이미지로 묘사된 아이템을 식별하는 것을 제공할 수 있다.
이들 효과가 합쳐져 고려될 때, 본원에서 설명된 하나 이상의 방법론은 이미지로 묘사된 아이템을 식별하는데 포함될 특정한 노력 또는 리소스에 대한 필요성을 경감시킬 수 있다. 관심 아이템을 주문하는데 사용자에 의해 소모되는 노력은 또한 본원에서 설명된 하나 이상의 방법론에 의해 감소될 수 있다. 예를 들어, 이미지로부터 사용자에게 관심있는 아이템을 정확하게 식별하는 것은 아이템 리스팅을 생성하는 것 또는 구매를 위한 아이템을 찾는 것에 있어서 사용자에 의해 소모되는 시간 또는 노력의 양을 감소시킬 수 있다. (예를 들어, 네트워크 환경(100) 내의) 하나 이상의 머신, 데이터베이스, 또는 디바이스에 의해 사용되는 컴퓨팅 리소스가 유사하게 감소될 수 있다. 이러한 컴퓨팅 리소스의 예시들은 프로세서 주기, 네트워크 트래픽, 메모리 사용량, 데이터 저장 용량, 전력 소비 및 냉각 용량을 포함한다.
소프트웨어 아키텍쳐
도 10은 상술된 임의의 하나 이상의 디바이스 상에 설치될 수 있는 소프트웨어(1002)의 아키텍쳐를 도시하는 블록도(1000)이다. 도 10은 단지 소프트웨어 아케틱쳐의 비제한적인 예시이고, 많은 다른 아키텍쳐는 본원에서 설명된 기능을 제공하도록 구현될 수 있다는 것을 이해할 수 있다. 소프트웨어(1002)는 프로세서(1110), 메모리(1130), 및 입력/출력(I/O) 컴포넌트(1150)를 포함하는 도 11의 머신(1100)과 같은 하드웨어에 의해 구현될 수 있다. 이 예시의 아키텍쳐에서, 소프트웨어(1002)는 레이어의 스택으로서 개념화될 수 있고, 각각의 레이어는 특정 기능을 제공할 수 있다. 예를 들어, 소프트웨어(1002)는 운영 시스템(1004), 라이브러리(1006), 프레임워크(1008), 및 애플리케이션(1010)과 같은 레이어를 포함한다. 선택적으로, 일부 구현예에 따라, 애플리케이션(1010)은 소프트웨어 스택을 통해 애플리케이션 프로그래밍 인터페이스(API) 호출(1012)을 호출하고 API 호출(1012)에 응답하여 메시지(1014)를 수신한다.
다양한 구현예에서, 운영 시스템(1004)은 하드웨어 리소스를 관리하고 공통 서비스를 제공한다. 운영 시스템(1004)은, 예를 들어, 커넬(102), 서비스(1022), 및 드라이버(1024)를 포함한다. 일부 구현예에서 커넬(1020)은 하드웨어와 다른 소프트웨어 레이어 사이의 추상 레이어로서 동작한다. 예를 들어, 커넬(1020)은 메모리 관리, 프로세서 관리(예를 들어, 스케쥴링), 컴포넌트 관리, 네트워킹, 보안 설정, 기타 다른 기능들을 제공한다. 서비스(1022)는 다른 소프트웨어 레이어를 위한 다른 공통 서비스를 제공할 수 있다. 드라이버(1024)는 기초 하드웨어와 인터페이싱하거나 제어해야할 책임이 있다. 예를 들어, 드라이버(1024)는 디스플레이 드라이버, 카메라 드라이버, 블루투스® 드라이버, 플래쉬 메모리 드라이버, 직렬 통신 드라이버(예를 들어, 범용 직렬 버스(USB) 드라이버), 와이파이® 드라이버, 오디오 드라이버, 전력 관리 드라이버 등을 포함할 수 있다.
일부 예시의 구현예에서, 라이브러리(1006)는 애플리케이션(1010)에 의해 활용될 수 있는 저레벨 공통 인프라스트럭쳐를 제공한다. 라이브러리(1006)는 메모리 할당 기능, 문자열 조작 기능, 수학 기능 등과 같은 기능을 제공할 수 있는 시스템 라이브러리(1030)(예를 들어, C 표준 라이브러리)를 포함할 수 있다. 또한, 라이브러리(1006)는 미디어 라이브러리(예를 들어, MPEG4(Moving Picture Experts Group-4), H.264 또는 AVC(Advanced Video Coding), MP3(Moving Picture Experts Group Layer-3), AAC(Advanced Audio Coding), AMR(Adaptive Multi-Rate) 오디오 코덱, JPEG 또는 JPG(Joint Photographic Experts Group), PNG(Portable Network Graphics)과 같은 다양한 미디어 포맷의 프레젠테이션 및 조작을 지원하는 라이브러리), 그래픽 라이브러리(예를 들어, 2차원(2D) 및 3차원(3D)에서 렌더링하는데 사용되는 OpenGL 프레임워크), 데이터베이스 라이브러리(예를 들어, 다양한 관계 데이터베이스 기능을 제공하는 SQLite), 웹 라이브러리(예를 들어, 웹 브라우징 기능을 제공하는 WebKit) 등과 같은 API 라이브러리(1032)를 포함할 수 있다. 라이브러리(1006)는 또한 애플리케이션(1010)에 많은 다른 API를 제공하는 다양한 다른 라이브러리(1034)를 포함할 수 있다.
일부 구현예에 따라, 프레임워크(1008)는 애플리케이션(1010)에 의해 활용될 수 있는 고레벨 공통 인프라스트럭쳐를 제공한다. 예를 들어, 프레임워크(1008)는 다양한 그래픽 사용자 인터페이스(GUI) 기능, 고레벨 리소스 관리, 고레벨 위치 서비스 등을 제공한다. 프레임워크(1008)는 애플리케이션(1010)에 의해 활용될 수 있는 다른 API의 광범위 스펙트럼을 제공할 수 있고, 이들 중 일부는 특정 운영 시스템 또는 플랫폼에 대해 특정될 수 있다.
예시의 실시예에서, 애플리케이션(1010)은 홈 애플리케이션(1050), 연락처 애플리케이션(1052), 브라우저 애플리케이션(1054), 북 리더 애플리케이션(1056), 위치 애플리케이션(1058), 미디어 애플리케이션(1060), 메시징 애플리케이션(1062), 게임 애플리케이션(1064), 및 3자 애플리케이션(1066)과 같은 광범위한 종류의 다른 애플리케이션을 포함한다. 일부 실시예에 따르면, 애플리케이션(1010)은 프로그램에 정의된 기능을 실행하는 프로그램이다. 다양한 프로그래밍 언어는 객체 지향 프로그래밍 언어(예를 들어, 객체-C, 자바, 또는 C++) 또는 절차 프로그래밍 언어(예를 들어, C 또는 어셈블리 언어)와 같이, 다양한 방식으로 구조화된 하나 이상의 애플리케이션(1010)을 생성하도록 활용될 수 있다. 특정 예시에서, 제 3 자 애플리케이션(1066)(예를 들어, 특정 플랫폼의 공급자 이외의 엔티티에 의해 안드로이드™ 또는 iOS™ 소프트웨어 개발 키트(SDK)를 사용하여 개발된 애플리케이션)은 iOS™, 안드로이드™, 윈도우®전화, 또는 다른 모바일 운영 시스템과 같은 모바일 운영 시스템 상에서 구동하는 모바일 소프트웨어가 될 수 있다. 이 예시에서, 제 3 자 애플리케이션(1066)은 본원에서 설명된 기능을 제공하기 위해 모바일 운영 시스템(1004)에 의해 제공되는 API 호출(1012)를 호출할 수 있다.
예시의 머신 아키텍쳐 및 머신 판독가능 매체
도 11은 일부 예시의 실시예에 따라, 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어를 판독하고 본원에 설명된 임의의 하나 이상의 방법론을 수행하는 것을 가능하게 하는, 머신(1100)의 컴포넌트를 도시하는 블록도이다. 특히, 도 11은 내부에서 머신(1100)으로 하여금 본원에서 논의된 임의의 하나 이상의 방법론을 수행하게 하는 명령어(1116)(예를 들어, 소프트웨어, 프로그램, 애플리케이션, 애플릿, 앱, 또는 다른 실행가능한 코드)가 실행될 수 있는, 예시의 형태의 컴퓨터 시스템에서의 머신(1100)의 개략적인 표현을 도시한다. 대안의 실시예에서, 머신(1100)은 스탠드얼론 디바이스로서 동작하거나 다른 머신에 연결(네트워킹)될 수 있다. 네트워킹된 배치에서, 머신(1100)은 서버-클라이언트 네트워크환경에서 서버 머신 또는 클라이언트 머신의 용량으로 동작할 수 있거나, 피어-투-피어(또는 분산된) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(1100)은 서버 컴퓨터, 클라이언트 컴퓨터, 개인용 컴퓨터(PC), 태블릿 컴퓨터, 랩탑 컴퓨터, 넷북, 셋탑 박스(STB), 개인용 디지털 보조장치(PDA), 엔터테인먼트 미디어 시스템, 셀룰러 전화, 스마트 폰, 모바일 디바이스, 착용가능한 디바이스(예를 들어, 스마트 워치), 스마트 홈 디바이스(예를 들어, 스마트 어플라이언스), 다른 스마트 디바이스, 웹 어플라이언스, 네트워크 라우터, 네트워크 스위치, 네트워크 브릿지, 또는 순차적으로 또는 그렇지않으면 머신(1100)에 의해 취해질 액션을 특정하는, 명령어(1116)를 실행가능한 임의의 머신을 포함할 수 있지만 이에 제한되지 않는다. 또한, 단일 머신(1100)만이 도시되었지만, 용어 "머신"은 또한 본원에서 논의된 임의의 하나 이상의 방법론을 수행하는 명령어(1116)를 개별적으로 또는 공동으로 실행하는 머신(1100)의 집합을 포함하도록 취해질 것이다. 실제적으로는, 머신(100)의 특정 실시예는 본원에서 설명된 방법론에 더 적합해질 수 있다. 예를 들어, 충분한 프로세싱 전력을 갖는 임의의 컴퓨팅 디바이스는 식별 서버(130)로서 역할을 할 수 있는 반면, 가속도계, 카메라, 및 셀룰러 네트워크 접속성은 본원에서 논의된 이미지 식별 방법을 수행하는 식별 서버(130)의 능력과 직접적으로 관련되지 않는다. 따라서, 일부 예시의 실시예에서, 비용 절감은 머신(110) 상에서 다양한 설명된 방법론을 구현함으로써 구현되고 (예를 들어, 직접 연결된 디스플레이 없이 그리고 착용가능한 또는 휴대가능한 디바이스 상에서만 공통으로 찾을 수 있는 집적 센서 없이 서버 머신에서 식별 서버(130)를 구현함으로써) 각각의 머신(1100)에 할당되는 태스크의 수행에 불필요한 추가 기능은 제외한다.
머신(1100)은 버스(1102)를 통해 서로 통신하도록 구성될 수 있는, 프로세서(1110), 메모리(1130), 및 I/O 컴포넌트(1150)를 포함할 수 있다. 예시의 실시예에서, 프로세서(1110)(예를 들어, CPU(Central Processing Unit), RISC(Reduced Instruction Set Computing) 프로세서, CISC(Complex Instruction Set Computing) 프로세서, GPU(Graphics Processing Unit), DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), RFIC(Radio-Frequency Integrated Circuit), 다른 프로세서, 또는 이들의 임의의 적절한 조합)는, 예를 들어, 명령어(1116)를 실행할 수 있는 프로세서(1112) 및 프로세서(1114)를 포함할 수 있다. 용어 "프로세서"는 동시에 명령어를 실행할 수 있는 둘 이상의 독립 프로세서(또한 "코어"로서 지칭됨)를 포함할 수 있는 다중 코어 프로세서를 포함하는 것이다. 도 11은 다수의 프로세서를 도시하지만, 머신(1100)은 단일 코어를 갖는 단일 프로세서, 다수의 코어를 갖는 단일 프로세서(예를 들어, 다중 코어 프로세서), 단일 코어를 갖는 다수의 프로세서, 다수의 코어를 갖는 다수의 프로세서, 또는 이들의 조합을 포함할 수 있다.
메모리(1130)는 버스(1102)를 통해 프로세서(1110)에 액세스가능한 주 메모리(1132), 정적 메모리(1134), 저장 유닛(1136)을 포함할 수 있다. 저장 유닛(1136)은 본원에서 설명된 임의의 하나 이상의 방법론 또는 기능을 구현하는 명령어(1116)가 저장된 머신 판독가능 매체(1138)를 포함할 수 있다. 명령어(1116)는 또한 주 메모리(1132) 내에, 정적 메모리(1134) 내에, 적어도 하나의 프로세서(1110) 중 적어도 하나 내에(예를 들어, 프로세서의 캐시 메모리 내에), 또는 이들의 임의의 적절한 조합에서 머신(1100)에 의한 이들의 실행 동안 완전하게 또는 적어도 부분적으로 존재할 수 있다. 따라서, 다양한 구현예에서, 주 메모리(1132), 정적 메모리(1134), 및 프로세서(1110)는 머신 판독가능 매체(1138)로서 고려된다.
본원에서 사용된 바와 같이, 용어 "메모리"는 데이터를 임시로 또는 영구적으로 저장하는 것이 가능하고 랜덤 액세스 메모리(RAM), 판독전용 메모리(ROM), 버퍼 메모리, 플래쉬 메모리, 및 캐시 메모리를 포함하지만 이에 제한되지 않도록 취해질 수 있는 머신 판독가능 매체(1138)를 지칭한다. 머신 판독가능 매체(1138)가 단일 매체가 되도록 예시의 실시예에서 도시되었지만, 용어 "머신-판독가능 매체"는 명령어(1116)를 저장하는 것이 가능한 단일 매체 또는 다수의 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스 또는 연관된 캐시 및 서버)를 포함하도록 취해질 것이다. 용어 "머신 판독가능 매체"는 또한 명령어가 머신(1100)의 하나 이상의 프로세서(예를 들어, 프로세서(1110)에 의해 실행될 때, 머신(1100)으로 하여금 본원에서 논의된 임의의 하나 이상의 방법론을 수행하게 하도록 머신(예를 들어, 머신(1100))에 의한 실행을 위해 명령어(예를 들어, 명령어(1116))를 저장하는 것이 가능한 임의의 매체, 또는 다수의 매체의 조합을 포함하도록 취해질 것이다. 따라서, "머신 판독가능 매체"는 다수의 저장 장치 또는 디바이스를 포함하는 "클라우드 기반" 저장 시스템 또는 저장 네트워크 뿐만 아니라 단일 저장 장치 또는 디바이스를 지칭한다. 따라서 용어 "머신 판독가능 매체"는 솔리드 스테이트 메모리(예를 들어, 플래쉬 메모리), 광학 매체, 자기 매체, 다른 비휘발성 메모리(예를 들어, 제거가능한 프로그래밍가능한 판독전용 메모리(EPROM)), 또는 이들의 임의의 적절한 조합의 형태의 하나 이상의 데이터 저장소를 포함하도록 취해질 것이지만, 이에 제한되지 않는다.
I/O 컴포넌트(1150)는 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 전송하고, 정보를 교환하고, 측정치를 캡쳐하는 등의 다양한 컴포넌트를 포함한다. 일반적으로, I/O 컴포넌트(1150)는 도 11에 도시되지 않은 많은 다른 컴포넌트를 포함할 수 있다는 것을 이해할 수 있다. I/O 컴포넌트(1150)는 단지 이하의 논의를 단순화시키는 기능에 따라 그룹화되고 그룹화는 제한하는 방식이 아니다. 다양한 예시의 실시예에서, I/O 컴포넌트(1150)는 출력 컴포넌트(1152) 및 입력 컴포넌트(1154)를 포함한다. 출력 컴포넌트(1152)는 시각적 컴포넌트(예를 들어, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT)), 음향 컴포넌트(예를 들어, 스피커), 햅틱 컴포넌트(예를 들어, 진동 모터), 다른 신호 생성기 등을 포함한다. 입력 컴포넌트(1154)는 영숫자 입력 컴포넌트(예를 들어, 키보드, 영숫자 입력을 수신하도록 구성된 터치 스크린, 광전 키보드, 또는 다른 영숫자 입력 컴포넌트), 포인트 기반 입력 컴포넌트(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 움직임 센서, 또는 다른 포인팅 기구), 촉각 입력 컴포넌트(예를 들어, 물리적 버튼, 위치 및 터치 힘 또는 터치 제스쳐를 제공하는 터치 스크린 및 다른 촉각 입력 컴포넌트), 오디오 입력 컴포넌트(예를 들어, 마이크로폰) 등을 포함한다.
일부 추가의 예시의 실시예에서, I/O 컴포넌트(1150)는 생체인식 컴포넌트(1156), 움직임 컴포넌트(1158), 환경 컴포넌트(1160), 또는 위치 컴포넌트(1162), 기타 다양한 다른 컴포넌트를 포함한다. 예를 들어, 생체인식 컴포넌트(1156)는 표현(예를 들어, 손 표현, 얼굴 표현, 안면 표현, 신체 제스쳐, 또는 안구 추적)을 검출하고, 생체신호(예를 들어, 혈압, 심장 박동, 신체 온도, 땀, 또는 뇌파)를 측정하고, 사람을 식별(예를 들어, 음성 식별, 망막 식별, 안면 식별, 지문 식별, 또는 식별에 기초한 뇌전도)하는 등의 컴포넌트를 포함한다. 움직임 컴포넌트(1158)는 가속 센서 컴포넌트(예를 들어, 가속도계), 중력 센서 컴포넌트, 회전 센서 컴포넌트(예를 들어, 자이로스코프) 등을 포함한다. 환경 컴포넌트(1160)는, 예를 들어, 조명 센서 컴포넌트(광도계), 온도 센서 컴포넌트(예를 들어, 주변 온도를 검출하는 하나 이상의 온도계), 습도 센서 컴포넌트, 압력 센서 컴포넌트(예를 들어, 바로미터), 음향 센서 컴포넌트(예를 들어, 배경 잡음을 검출하는 하나 이상의 마이크로폰), 근접 센서 컴포넌트(예를 들어, 근처 객체를 검출하는 적외선 센서), 가스 센서(예를 들어, 안전을 위해 위험한 가스의 농도를 검출하거나 환경에서 오염물질을 측정하는 머신 후각 검출 센서, 가스 검출 센서), 또는 주변의 물리적 환경에 대응하는 표시, 측정치, 또는 신호를 제공할 수 있는 다른 컴포넌트를 포함한다. 위치 컴포넌트(1162)는 위치 센서 컴포넌트(예를 들어, GPS(Global Position System) 수신기 컴포넌트), 고도 센서 컴포넌트(예를 들어, 고도가 도출될 수 있는 공기압을 검출하는 고도계 또는 바로미터), 방향 센서 컴포넌트(예를 들어, 자기미터) 등을 포함한다.
통신은 다양한 기술을 사용하여 구현될 수 있다. I/O 컴포넌트(1150)는 커플링(1182) 및 커플링(1172) 각각을 통해 네트워크(1180) 또는 디바이스(1170)에 머신(1100)을 연결하도록 동작가능한 통신 컴포넌트(1164)를 포함할 수 있다. 예를 들어, 통신 컴포넌트(1164)는 네트워크(1180)와 인터페이싱하는 네트워크 인터페이스 컴포넌트 또는 다른 적절한 디바이스를 포함한다. 추가 예시에서, 통신 컴포넌트(1164)는 다른 모달리티를 통해 통신을 제공하는 유선 통신 컴포넌트, 무선 통신 컴포넌트, 셀룰러 통신 컴포넌트, 근거리 통신(NFC) 컴포넌트, 블루투스® 컴포넌트(예를 들어, 블루투스® 저에너지), 와이파이® 컴포넌트, 및 다른 통신 컴포넌트를 포함한다. 디바이스(1170)는 다른 머신 또는 임의의 다양한 주변 디바이스(예를 들어, USB를 통해 연결되는 주변 디바이스)가 될 수 있다.
또한, 일부 구현예에서, 통신 컴포넌트(1164)는 식별자를 검출하거나 식별자를 검출하도록 동작가능한 컴포넌트를 포함한다. 예를 들어, 통신 컴포넌트(1164)는 무선 주파수 식별(RFID) 태그 판독기 컴포넌트, NFC 스마트 태그 검출 컴포넌트, 광학 판독기 컴포넌트(예를 들어, 범용 제품 코드(UPC)와 같은 일차원 바코드, QR(Quick Response) 코드와 같은 다차원 바코드, 아즈텍 코드, 데이터 매트릭스, 데이터글리프(Dataglyph), 맥시코드, PDF417, 울트라 코드, UCC RSS(Uniform Commercial Code Reduced Space Symbology)-2D 바코드, 및 다른 광학 코드), 음향 검출 컴포넌트(예를 들어, 태그된 오디오 신호를 식별하는 마이크로폰), 또는 이들의 임의의 적절한 조합을 포함한다. 또한, 다양한 정보는 인터넷 프로토콜(IP) 지리적 위치를 통한 위치, 와이파이® 신호 삼각측량을 통한 위치, 특정 위치를 나타낼 수 있는 NFC 비콘 신호를 검출하는 것을 통한 위치 등과 같이, 통신 컴포넌트(1164)를 통해 도출될 수 있다.
전송 매체
다양한 예시의 실시예에서, 네트워크(1180)의 하나 이상의 부분은 애드혹 네트워크, 인트라넷, 익스트라넷, 가상 사설 네트워크(VPN), 로컬 영역 네트워크(LAN), 무선 LAN(WLAN), 광역 네트워크(WAN), 무선 WAN(WWAN), 도심 영역 네트워크(MAN), 인터넷, 인터넷 일부, 공용 스위치 전화 네트워크(PSTN) 일부, 재래식 전화 서비스(POTS) 네트워크, 셀룰러 전화 네트워크, 무선 네트워크, 와이파이® 네트워크, 다른 타입의 네트워크, 또는 둘 이상의 이러한 네트워크의 조합이 될 수 있다. 예를 들어, 네트워크(1180) 또는 네트워크(1180)의 일부는 무선 또는 셀룰러 네트워크를 포함할 수 있고 커플링(1182)은 코드 분할 다중 액세스(CDMA) 접속, 모바일 통신을 위한 글로벌 시스템(GSM) 접속, 또는 다른 타입의 셀룰러 또는 무선 커플링이 될 수 있다. 이 예시에서, 커플링(1182)은 1xRTT(Single Carrier Radio Transmission Technology), EVDO(Evolution-Data Optimized) 기술, GPRS(General Packet Radio Service) 기술, EDGE(Enhanced Data rates for GSM Evolution) 기술, 3G를 포함하는 3GPP(third Generation Partnership Project), 4G(fourth generation wireless) 네트워크, UMTS(Universal Mobile Telecommunications System), HSPA(High Speed Packet Access), WiMAX(Worldwide Interoperability for Microwave Access), Long Term Evolution (LTE) 표준, 다양한 표준 설정 기구에 의해 정의된 다른 것들, 다른 원거리 프로토콜, 다른 데이터 전송 기술과 같은, 임의의 다양한 타입의 데이터 전송 기술을 구현할 수 있다.
예시의 실시예에서, 명령어(1116)는 네트워크 인터페이스 디바이스(예를 들어, 통신 컴포넌트(1164)에 포함된 네트워크 인터페이스 컴포넌트)를 통해 전송 매체를 사용하고 다수의 잘 알려진 전송 프로토콜(예를 들어, 하이퍼텍스트 전송 프로토콜(HTTP)) 중 어느 하나를 활용하여 네트워크(1180)로 전송 또는 수신된다. 유사하게, 다른 예시의 실시예에서, 명령어(1116)는 커플링(1172)(예를 들어, 피어-투-피어 커플링)을 통해 전송 매체를 사용하여 디바이스(1170)로 전송 또는 수신된다. 용어 "전송 매체"는 머신(1100)에 의한 실행을 위해 명령어(1116)를 저장, 인코딩, 또는 전달하는 것이 가능하고, 디지털 또는 아날로크 전송 신호를 포함하는 임의의 무형의 매체 또는 이러한 소프트웨어의 통신을 가능하게 하는 다른 무형 매체를 포함하도록 취해질 것이다. 전송 매체는 일 실시예의 머신 판독가능 매체이다.
언어
본 명세서 전반에서, 복수의 인스턴스는 단일 인스턴스로서 설명되는 컴포넌트, 동작, 또는 구조를 구현할 수 있다. 하나 이상의 방법의 개별 동작이 분리된 동작으로서 예시되고 설명되지만, 하나 이상의 개별 동작이 동시에 수행될 수 있고, 동작이 예시된 순서로 수행될 필요는 없다. 예시의 구성에서 분리된 컴포넌트로서 제시된 구조 및 기능은 통합된 구조 또는 컴포넌트로서 구현될 수 있다. 유사하게, 단일 컴포넌트로서 제시된 구조 및 기능은 분리된 컴포넌트로서 구현될 수 있다. 다양한 변형, 수정, 추가 및 향상은 본원의 청구 대상의 범위 내에 속한다.
본원의 청구 대상의 개요가 특정 예시의 실시예를 참조하여 설명되었지만, 다양한 수정 및 변형이 본 개시의 실시예의 폭 넓은 범위로부터 벗어남이 없이 이들 실시예에 대해 이루어질 수 있다. 본원의 청구 대상의 이러한 실시예는 본원에서 개별적으로 또는 집합적으로 단지 편리함을 위해 용어 "본 발명"으로 지칭될 수도 있지만, 본 출원의 범위를 어느 하나의 개시 또는 발명의 개념으로 (사실은, 하나 이상이 개시되어 있겠지만) 자발적으로 제한하고자 하는 것은 아니다.
본원에서 예시된 실시예는 당업자가 개시된 교시를 실시하는 것이 가능하도록 충분히 자세하게 설명된다. 다른 실시예는 구조적 및 논리적인 대체 및 변경이 본 개시의 범위로부터 벗어남이 없이 이루어질 수 있도록 다른 실시예가 사용되고 이들로부터 도출될 수 있다. 따라서, 상세한 설명은 제한의 의미로 취해지는 것이 아니고, 다양한 실시예의 범위가 첨부된 청구항이 권리를 갖는 전범위의 등가물과 함께 첨부된 청구항에 의해서만 정의된다.
본원에서 사용된 바와 같이, 용어 "또는"은 포괄적인 또는 배타적인 의미로 해석될 수 있다. 또한, 복수의 인스턴스는 본원에 설명된 리소스, 동작, 또는 구조에 대해 단일 인스턴스로서 제공될 수 있다. 추가적으로, 다양한 리소스, 동작, 모듈, 엔진, 및 데이터 저장소 사이의 경계는 다소 임의적이고, 특정 동작은 특정한 예시적인 구성의 상황으로 예시된다. 다른 할당의 기능이 구성되고 본 개시의 다양한 실시예의 범위 내에 속할 수 있다. 일반적으로, 예시의 구성에서 개별 리소스로서 제시된 구조 및 기능은 통합된 구조 또는 리소스로서 구현될 수 있다. 유사하게, 단일 리소스로서 제시된 구조 및 기능은 개별 리소스로서 구현될 수 있다. 다양한 변형, 수정, 추가 및 향상은 첨부된 청구항에 의해 표현된 것으로서 본 개시의 실시예의 범위 내에 속한다. 따라서, 명세서 및 도면은 제한의 의미 보다는 예시의 의미로서 간주된다.
이하의 열거된 예시들은 본원에서 논의된 다양한 예시의 실시예의 방법, 머신 판독가능 매체, 및 시스템(예를 들어, 장치)을 정의한다.
예 1. 시스템으로서,
내부에 구현된 명령어를 구비하는 메모리와,
상기 명령어에 의해 구성된 하나 이상의 프로세서를 포함하되, 상기 명령어는,
복수의 대응하는 아이템에 대해 복수의 기록을 저장하는 것―상기 복수의 기록의 각각의 기록은 기록에 대응하는 아이템에 대한 텍스트 데이터 및 이미지 데이터를 포함함―과,
제 1 아이템을 묘사하는 제 1 이미지에 액세스하는 것과,
상기 제 1 이미지 및 상기 복수의 기록의 이미지 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 1 세트의 후보 매치를 생성하는 것과,
상기 제 1 이미지에서 텍스트를 인식하는 것과,
상기 인식된 텍스트 및 상기 복수의 기록의 텍스트 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 2 세트의 후보 매치를 생성하는 것과,
상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 통합된 세트의 후보 매치로 통합하는 것과,
상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 것을 포함하는 동작을 수행하는
시스템.
예 2. 예 1에 있어서,
상기 제 1 이미지는 사용자 계정과 연관되고,
상기 동작은 전자 마켓플레이스에 리스팅을 생성하는 것을 더 포함하고, 상기 리스팅은 상기 사용자 계정과 연관되고, 상기 리스팅은 최상위 후보 매치를 위한 것인
시스템.
예 3. 예 1 또는 예 2에 있어서,
상기 텍스트를 인식하는 것은 방향에 구속받지 않는(orientation-agnostic) 방식으로 텍스트의 클러스터를 추출하는 것을 포함하고,
상기 제 2 세트의 후보 매치를 생성하는 것은 상기 텍스트의 클러스터에서 고정된 크기 N의 캐릭터 엔-그램(character N-grams)을 매칭하는 것을 포함하는
시스템.
예 4. 예 3에 있어서,
상기 고정된 크기 N은 3인
시스템.
예 5. 예 1 내지 예 4 중 어느 하나에 있어서,
상기 제 1 세트의 후보 매치를 생성하는 것은 상기 제 1 세트의 후보 매치에서 각각의 후보 매치에 대응하는 제 1 스코어를 생성하는 것을 포함하고,
상기 제 2 세트의 후보 매치를 생성하는 것은 상기 제 2 세트의 후보 매치에서 각각의 후보 매치에 대응하는 제 2 스코어를 생성하는 것을 포함하고,
상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 상기 통합된 세트의 후보 매치로 통합하는 것은, 상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치 모두에 포함되는 각각의 후보 매치에 대해, 상기 후보 매치에 대응하는 상기 제 1 스코어 및 상기 제 2 스코어를 합산하는 것을 포함하고,
상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 것은 가장 높은 합산된 스코어를 갖는 상기 통합된 세트의 후보 매치에서 후보 매치를 식별하는
시스템.
예 6. 예 1 내지 예 5 중 어느 하나에 있어서,
상기 동작은,
검색 요청의 일부로서 클라이언트 디바이스로부터 상기 제 1 이미지를 수신하는 것과,
상기 최상위 후보 매치에 기초하여 결과의 세트를 식별하는 것과,
상기 검색 요청에 응답하여, 상기 결과의 세트를 상기 클라이언트 디바이스로 제공하는 것을 더 포함하는
시스템.
예 7. 예 6에 있어서,
상기 결과의 세트는 판매를 위한 아이템의 아이템 리스팅의 세트를 포함하는
시스템.
예 8. 컴퓨터로 구현된 방법으로서,
복수의 대응하는 아이템에 대해 복수의 기록을 저장하는 단계―상기 복수의 기록의 각각의 기록은 기록에 대응하는 아이템에 대한 텍스트 데이터 및 이미지 데이터를 포함함―와,
제 1 아이템을 묘사하는 제 1 이미지에 액세스하는 단계와,
상기 제 1 이미지 및 상기 복수의 기록의 이미지 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 1 세트의 후보 매치를 생성하는 단계와,
상기 제 1 이미지에서 텍스트를 인식하는 단계와,
상기 인식된 텍스트 및 상기 복수의 기록의 텍스트 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 2 세트의 후보 매치를 생성하는 단계와,
상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 통합된 세트의 후보 매치로 통합하는 단계와,
상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 단계를 포함하는
컴퓨터로 구현된 방법.
예 9. 예 8에 있어서,
상기 제 1 이미지는 사용자 계정과 연관되고,
상기 방법은 전자 마켓플레이스에 리스팅을 생성하는 단계를 포함하고, 상기 리스팅은 상기 사용자 계정과 연관되고, 상기 리스팅은 최상위 후보 매치를 위한 것인
컴퓨터로 구현된 방법.
예 10. 예 8 또는 예 9에 있어서,
상기 텍스트를 인식하는 단계는 방향에 구속받지 않는 방식으로 텍스트의 클러스터를 추출하는 단계를 포함하고,
상기 제 2 세트의 후보 매치를 생성하는 단계는 상기 텍스트의 클러스터에서 고정된 크기 N의 캐릭터 엔-그램을 매칭하는 단계를 포함하는
컴퓨터로 구현된 방법.
예 11. 예 10에 있어서,
상기 고정된 크기 N은 3인
컴퓨터로 구현된 방법.
예 12. 예 8 내지 예 11 중 어느 하나에 있어서,
상기 제 1 세트의 후보 매치를 생성하는 단계는 상기 제 1 세트의 후보 매치에서 각각의 후보 매치에 대응하는 제 1 스코어를 생성하는 단계를 포함하고,
상기 제 2 세트의 후보 매치를 생성하는 단계는 상기 제 2 세트의 후보 매치에서 각각의 후보 매치에 대응하는 제 2 스코어를 생성하는 단계를 포함하고,
상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 상기 통합된 세트의 후보 매치로 통합하는 단계는, 상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치 모두에 포함되는 각각의 후보 매치에 대해, 상기 후보 매치에 대응하는 상기 제 1 스코어 및 상기 제 2 스코어를 합산하는 단계를 포함하고,
상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 단계는 가장 높은 합산된 스코어를 갖는 상기 통합된 세트의 후보 매치에서 후보 매치를 식별하는
컴퓨터로 구현된 방법.
예 13. 예 8 내지 예 12 중 어느 하나에 있어서,
검색 요청의 일부로서 클라이언트 디바이스로부터 상기 제 1 이미지를 수신하는 단계와,
상기 최상위 후보 매치에 기초하여 결과의 세트를 식별하는 단계와,
상기 검색 요청에 응답하여, 상기 결과의 세트를 상기 클라이언트 디바이스로 제공하는 단계를 더 포함하는
컴퓨터로 구현된 방법.
예 14. 예 13에 있어서,
상기 결과의 세트는 판매를 위한 아이템의 아이템 리스팅의 세트를 포함하는
컴퓨터로 구현된 방법.
예 15. 머신으로 하여금 예 8 내지 예 14의 방법 중 어느 하나를 수행하게 하는 머신의 하나 이상의 프로세서에 의해 실행가능한 명령어를 포함하는 머신 판독가능 매체.

Claims (15)

  1. 시스템으로서,
    내부에 구현된 명령어를 구비하는 메모리와,
    상기 명령어에 의해 구성된 하나 이상의 프로세서를 포함하되, 상기 명령어는,
    복수의 대응하는 아이템에 대해 복수의 기록을 저장하는 것―상기 복수의 기록의 각각의 기록은 기록에 대응하는 아이템에 대한 텍스트 데이터 및 이미지 데이터를 포함함―과,
    제 1 아이템을 묘사하는 제 1 이미지에 액세스하는 것―상기 제 1 이미지는 전자 마켓플레이스에 리스팅을 생성하는 것과 연관됨―과,
    상기 제 1 이미지 및 상기 복수의 기록의 이미지 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 1 세트의 후보 매치를 생성하는 것―상기 제 1 세트의 후보 매치 내의 각 후보 매치는 제 1 스코어를 가짐―과,
    상기 제 1 이미지에서 텍스트를 인식하는 것과,
    상기 인식된 텍스트 및 상기 복수의 기록의 텍스트 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 2 세트의 후보 매치를 생성하는 것―상기 제 2 세트의 후보 매치 내의 각 후보 매치는 제 2 스코어를 가짐―과,
    상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 통합된 세트의 후보 매치로 통합하는 것―상기 통합된 세트의 후보 매치 내의 각 후보 매치는 각 후보 매치의 상기 제 1 스코어와 상기 제 2 스코어로부터 생성된 통합된 스코어를 가짐―과,
    상기 통합된 세트의 후보 매치 내의 각 후보 매치의 상기 통합된 스코어에 기초하여, 상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 것과,
    상기 통합된 세트의 후보 매치 중 상기 최상위 후보 매치를 포함하는, 선택 가능한 옵션으로서의 리스팅 사용자 인터페이스를 생성하는 것을 포함하는 동작을 수행하는
    시스템.
  2. 제 1 항에 있어서,
    상기 제 1 이미지는 사용자 계정과 연관되고,
    상기 동작은 상기 통합된 세트의 후보 매치 중 상기 최상위 후보 매치에 대해 선택된 옵션을 이용하여 상기 전자 마켓플레이스에 상기 리스팅을 생성하는 것을 더 포함하고, 상기 리스팅은 상기 사용자 계정과 연관되는
    시스템.
  3. 제 1 항에 있어서,
    상기 텍스트를 인식하는 것은 방향에 구속받지 않는(orientation-agnostic) 방식으로 텍스트의 클러스터를 추출하는 것을 포함하고,
    상기 제 2 세트의 후보 매치를 생성하는 것은 상기 텍스트의 클러스터에서 고정된 크기 N의 캐릭터 엔-그램(character N-grams)을 매칭하는 것을 포함하는
    시스템.

  4. 제 3 항에 있어서,
    상기 고정된 크기 N은 3인
    시스템.
  5. 제 1 항에 있어서,
    상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 상기 통합된 세트의 후보 매치로 통합하는 것은, 상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치 모두에 포함되는 각각의 후보 매치에 대해, 상기 후보 매치에 대응하는 상기 제 1 스코어 및 상기 제 2 스코어를 합산하는 것을 포함하고,
    상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 것은 가장 높은 합산된 스코어를 갖는 상기 통합된 세트의 후보 매치에서 후보 매치를 식별하는
    시스템.
  6. 제 1 항에 있어서,
    상기 동작은,
    검색 요청의 일부로서 클라이언트 디바이스로부터 상기 제 1 이미지를 수신하는 것과,
    상기 최상위 후보 매치에 기초하여 결과의 세트를 식별하는 것과,
    상기 검색 요청에 응답하여, 상기 결과의 세트를 상기 클라이언트 디바이스로 제공하는 것을 더 포함하는
    시스템.
  7. 제 6 항에 있어서,
    상기 결과의 세트는 판매를 위한 아이템의 아이템 리스팅의 세트를 포함하는
    시스템.
  8. 컴퓨터로 구현된 방법으로서,
    복수의 대응하는 아이템에 대해 복수의 기록을 저장하는 단계―상기 복수의 기록의 각각의 기록은 기록에 대응하는 아이템에 대한 텍스트 데이터 및 이미지 데이터를 포함함―와,
    제 1 아이템을 묘사하는 제 1 이미지에 액세스하는 단계―상기 제 1 이미지는 전자 마켓플레이스에 리스팅을 생성하는 것과 연관됨―와,
    상기 제 1 이미지 및 상기 복수의 기록의 이미지 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 1 세트의 후보 매치를 생성하는 단계―상기 제 1 세트의 후보 매치 내의 각 후보 매치는 제 1 스코어를 가짐―와,
    상기 제 1 이미지에서 텍스트를 인식하는 단계와,
    상기 인식된 텍스트 및 상기 복수의 기록의 텍스트 데이터에 기초하여 상기 복수의 아이템으로부터 상기 제 1 아이템에 대한 제 2 세트의 후보 매치를 생성하는 단계―상기 제 2 세트의 후보 매치 내의 각 후보 매치는 제 2 스코어를 가짐―와,
    상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 통합된 세트의 후보 매치로 통합하는 단계―상기 통합된 세트의 후보 매치 내의 각 후보 매치는 각 후보 매치의 상기 제 1 스코어와 상기 제 2 스코어로부터 생성된 통합된 스코어를 가짐―와,
    상기 통합된 세트의 후보 매치 내의 각 후보 매치의 상기 통합된 스코어에 기초하여, 상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 단계와,
    상기 통합된 세트의 후보 매치 중 상기 최상위 후보 매치를 포함하는, 선택 가능한 옵션으로서의 리스팅 사용자 인터페이스를 생성하는 단계를 포함하는
    컴퓨터로 구현된 방법.
  9. 제 8 항에 있어서,
    상기 제 1 이미지는 사용자 계정과 연관되고,
    상기 방법은 상기 통합된 세트의 후보 매치 중 상기 최상위 후보 매치에 대해 선택된 옵션을 이용하여 상기 전자 마켓플레이스에 상기 리스팅을 생성하는 단계를 포함하고, 상기 리스팅은 상기 사용자 계정과 연관되는
    컴퓨터로 구현된 방법.
  10. 제 8 항에 있어서,
    상기 텍스트를 인식하는 단계는 방향에 구속받지 않는 방식으로 텍스트의 클러스터를 추출하는 단계를 포함하고,
    상기 제 2 세트의 후보 매치를 생성하는 단계는 상기 텍스트의 클러스터에서 고정된 크기 N의 캐릭터 엔-그램을 매칭하는 단계를 포함하는
    컴퓨터로 구현된 방법.
  11. 제 10 항에 있어서,
    상기 고정된 크기 N은 3인
    컴퓨터로 구현된 방법.
  12. 제 8 항에 있어서,
    상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치를 상기 통합된 세트의 후보 매치로 통합하는 단계는, 상기 제 1 세트의 후보 매치 및 상기 제 2 세트의 후보 매치 모두에 포함되는 각각의 후보 매치에 대해, 상기 후보 매치에 대응하는 상기 제 1 스코어 및 상기 제 2 스코어를 합산하는 단계를 포함하고,
    상기 통합된 세트의 후보 매치 중 최상위 후보 매치를 식별하는 단계는 가장 높은 합산된 스코어를 갖는 상기 통합된 세트의 후보 매치에서 후보 매치를 식별하는
    컴퓨터로 구현된 방법.
  13. 제 8 항에 있어서,
    검색 요청의 일부로서 클라이언트 디바이스로부터 상기 제 1 이미지를 수신하는 단계와,
    상기 최상위 후보 매치에 기초하여 결과의 세트를 식별하는 단계와,
    상기 검색 요청에 응답하여, 상기 결과의 세트를 상기 클라이언트 디바이스로 제공하는 단계를 더 포함하는
    컴퓨터로 구현된 방법.

  14. 제 13 항에 있어서,
    상기 결과의 세트는 판매를 위한 아이템의 아이템 리스팅의 세트를 포함하는
    컴퓨터로 구현된 방법.
  15. 머신으로 하여금 청구항 제 8 항 내지 제 14 항의 방법 중 어느 하나를 수행하게 하는 머신의 하나 이상의 프로세서에 의해 실행가능한 명령어를 포함하는 비일시적 머신 판독가능 매체.
KR1020177023364A 2015-01-23 2016-01-08 이미지로 묘사된 아이템 인식 Expired - Fee Related KR102032038B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562107095P 2015-01-23 2015-01-23
US62/107,095 2015-01-23
US14/973,582 US20160217157A1 (en) 2015-01-23 2015-12-17 Recognition of items depicted in images
US14/973,582 2015-12-17
PCT/US2016/012691 WO2016118339A1 (en) 2015-01-23 2016-01-08 Recognition of items depicted in images

Publications (2)

Publication Number Publication Date
KR20170107039A KR20170107039A (ko) 2017-09-22
KR102032038B1 true KR102032038B1 (ko) 2019-10-14

Family

ID=56417585

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177023364A Expired - Fee Related KR102032038B1 (ko) 2015-01-23 2016-01-08 이미지로 묘사된 아이템 인식

Country Status (5)

Country Link
US (1) US20160217157A1 (ko)
EP (1) EP3248142A4 (ko)
KR (1) KR102032038B1 (ko)
CN (1) CN107430691A (ko)
WO (1) WO2016118339A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636148B2 (en) 2020-03-24 2023-04-25 LINE Plus Cornoration Method, system, and non-transitory computer readable record medium for providing comparison result by comparing common features of products

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11120478B2 (en) 2015-01-12 2021-09-14 Ebay Inc. Joint-based item recognition
WO2017045113A1 (zh) * 2015-09-15 2017-03-23 北京大学深圳研究生院 一种基于局部pca白化的图像表示方法和处理装置
US10218728B2 (en) * 2016-06-21 2019-02-26 Ebay Inc. Anomaly detection for web document revision
US12020174B2 (en) 2016-08-16 2024-06-25 Ebay Inc. Selecting next user prompt types in an intelligent online personal assistant multi-turn dialog
CN106326902B (zh) * 2016-08-30 2019-05-14 广西师范大学 基于显著性结构直方图的图像检索方法
US11200273B2 (en) 2016-10-16 2021-12-14 Ebay Inc. Parallel prediction of multiple image aspects
US20180107682A1 (en) * 2016-10-16 2018-04-19 Ebay Inc. Category prediction from semantic image clustering
US11748978B2 (en) 2016-10-16 2023-09-05 Ebay Inc. Intelligent online personal assistant with offline visual search database
US10860898B2 (en) 2016-10-16 2020-12-08 Ebay Inc. Image analysis and prediction based visual search
US11004131B2 (en) 2016-10-16 2021-05-11 Ebay Inc. Intelligent online personal assistant with multi-turn dialog based on visual search
US10970768B2 (en) * 2016-11-11 2021-04-06 Ebay Inc. Method, medium, and system for image text localization and comparison
US11205103B2 (en) 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
CN106777177A (zh) * 2016-12-22 2017-05-31 百度在线网络技术(北京)有限公司 检索方法和装置
US10115016B2 (en) * 2017-01-05 2018-10-30 GM Global Technology Operations LLC System and method to identify a vehicle and generate reservation
KR102368847B1 (ko) * 2017-04-28 2022-03-02 삼성전자주식회사 객체에 대응하는 콘텐트를 출력하기 위한 방법 및 그 전자 장치
US10474988B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Predicting inventory events using foreground/background processing
US11023850B2 (en) 2017-08-07 2021-06-01 Standard Cognition, Corp. Realtime inventory location management using deep learning
US11250376B2 (en) 2017-08-07 2022-02-15 Standard Cognition, Corp Product correlation analysis using deep learning
US10474991B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Deep learning-based store realograms
US11232687B2 (en) 2017-08-07 2022-01-25 Standard Cognition, Corp Deep learning-based shopper statuses in a cashier-less store
US10650545B2 (en) 2017-08-07 2020-05-12 Standard Cognition, Corp. Systems and methods to check-in shoppers in a cashier-less store
US11200692B2 (en) 2017-08-07 2021-12-14 Standard Cognition, Corp Systems and methods to check-in shoppers in a cashier-less store
US10853965B2 (en) 2017-08-07 2020-12-01 Standard Cognition, Corp Directional impression analysis using deep learning
US11556980B2 (en) * 2017-11-17 2023-01-17 Ebay Inc. Method, system, and computer-readable storage media for rendering of object data based on recognition and/or location matching
CN108334884B (zh) * 2018-01-30 2020-09-22 华南理工大学 一种基于机器学习的手写文档检索方法
US12299029B2 (en) * 2018-02-05 2025-05-13 Microsoft Technology Licensing, Llc Visual search services for multiple partners
US10678845B2 (en) * 2018-04-02 2020-06-09 International Business Machines Corporation Juxtaposing contextually similar cross-generation images
CA3112512A1 (en) * 2018-07-26 2020-01-30 Standard Cognition, Corp. Systems and methods to check-in shoppers in a cashier-less store
CN109344864B (zh) * 2018-08-24 2021-04-27 北京陌上花科技有限公司 用于密集物体的图像处理方法及装置
CN110956058B (zh) * 2018-09-26 2023-10-24 北京嘀嘀无限科技发展有限公司 图像识别方法、装置及电子设备
US11176191B2 (en) * 2019-01-22 2021-11-16 Amazon Technologies, Inc. Search result image selection techniques
CN110008859A (zh) * 2019-03-20 2019-07-12 北京迈格威科技有限公司 基于视觉的犬只重识别方法和装置
US11232575B2 (en) 2019-04-18 2022-01-25 Standard Cognition, Corp Systems and methods for deep learning-based subject persistence
US12333739B2 (en) 2019-04-18 2025-06-17 Standard Cognition, Corp. Machine learning-based re-identification of shoppers in a cashier-less store for autonomous checkout
US11475526B2 (en) * 2019-08-02 2022-10-18 John F. Groom Multi-dimensional interaction with data stores related to tangible property
US11687778B2 (en) 2020-01-06 2023-06-27 The Research Foundation For The State University Of New York Fakecatcher: detection of synthetic portrait videos using biological signals
US11651024B2 (en) * 2020-05-13 2023-05-16 The Boeing Company Automated part-information gathering and tracking
US12288294B2 (en) 2020-06-26 2025-04-29 Standard Cognition, Corp. Systems and methods for extrinsic calibration of sensors for autonomous checkout
US11361468B2 (en) 2020-06-26 2022-06-14 Standard Cognition, Corp. Systems and methods for automated recalibration of sensors for autonomous checkout
US11303853B2 (en) 2020-06-26 2022-04-12 Standard Cognition, Corp. Systems and methods for automated design of camera placement and cameras arrangements for autonomous checkout
CN112559863A (zh) * 2020-12-14 2021-03-26 杭州趣链科技有限公司 基于区块链的信息推送方法、装置、设备和存储介质
US20220222297A1 (en) * 2021-01-14 2022-07-14 Capital One Services, Llc Generating search results based on an augmented reality session
CN114528321A (zh) * 2022-01-25 2022-05-24 北京三快在线科技有限公司 数据检索方法及装置、电子设备及可读存储介质
CN115238081B (zh) * 2022-06-14 2024-04-30 杭州原数科技有限公司 一种文物智能识别方法、系统及可读存储介质
US20250131690A1 (en) * 2023-10-20 2025-04-24 Rakuten Group, Inc. Placeholder image identification

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080267504A1 (en) * 2007-04-24 2008-10-30 Nokia Corporation Method, device and computer program product for integrating code-based and optical character recognition technologies into a mobile visual search
JP4607633B2 (ja) * 2005-03-17 2011-01-05 株式会社リコー 文字方向識別装置、画像形成装置、プログラム、記憶媒体および文字方向識別方法
US20110238659A1 (en) * 2010-03-29 2011-09-29 Ebay Inc. Two-pass searching for image similarity of digests of image-based listings in a network-based publication system

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404507A (en) * 1992-03-02 1995-04-04 At&T Corp. Apparatus and method for finding records in a database by formulating a query using equivalent terms which correspond to terms in the input query
JP4413633B2 (ja) * 2004-01-29 2010-02-10 株式会社ゼータ・ブリッジ 情報検索システム、情報検索方法、情報検索装置、情報検索プログラム、画像認識装置、画像認識方法および画像認識プログラム、ならびに、販売システム
US8775436B1 (en) * 2004-03-19 2014-07-08 Google Inc. Image selection for news search
US7809192B2 (en) * 2005-05-09 2010-10-05 Like.Com System and method for recognizing objects from images and identifying relevancy amongst images and information
US7949191B1 (en) * 2007-04-04 2011-05-24 A9.Com, Inc. Method and system for searching for information on a network in response to an image query sent by a user from a mobile communications device
CN101359373B (zh) * 2007-08-03 2011-01-12 富士通株式会社 退化字符的识别方法和装置
US9495386B2 (en) * 2008-03-05 2016-11-15 Ebay Inc. Identification of items depicted in images
CN101408933A (zh) * 2008-05-21 2009-04-15 浙江师范大学 基于粗网格特征提取和bp神经网络的车牌字符识别方法
US7991646B2 (en) * 2008-10-30 2011-08-02 Ebay Inc. Systems and methods for marketplace listings using a camera enabled mobile device
US8478052B1 (en) * 2009-07-17 2013-07-02 Google Inc. Image classification
US9135277B2 (en) * 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
US8761512B1 (en) * 2009-12-03 2014-06-24 Google Inc. Query by image
US9323784B2 (en) * 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
CN102339289B (zh) * 2010-07-21 2014-04-23 阿里巴巴集团控股有限公司 文字信息与图像信息的匹配识别方法及装置
US9378290B2 (en) * 2011-12-20 2016-06-28 Microsoft Technology Licensing, Llc Scenario-adaptive input method editor
US8935246B2 (en) * 2012-08-08 2015-01-13 Google Inc. Identifying textual terms in response to a visual query
US9830632B2 (en) * 2012-10-10 2017-11-28 Ebay Inc. System and methods for personalization and enhancement of a marketplace
US8635124B1 (en) * 2012-11-28 2014-01-21 Ebay, Inc. Message based generation of item listings
CN104112216A (zh) * 2013-04-22 2014-10-22 学思行数位行销股份有限公司 存货管理与行销的图像辨识方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4607633B2 (ja) * 2005-03-17 2011-01-05 株式会社リコー 文字方向識別装置、画像形成装置、プログラム、記憶媒体および文字方向識別方法
US20080267504A1 (en) * 2007-04-24 2008-10-30 Nokia Corporation Method, device and computer program product for integrating code-based and optical character recognition technologies into a mobile visual search
US20110238659A1 (en) * 2010-03-29 2011-09-29 Ebay Inc. Two-pass searching for image similarity of digests of image-based listings in a network-based publication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636148B2 (en) 2020-03-24 2023-04-25 LINE Plus Cornoration Method, system, and non-transitory computer readable record medium for providing comparison result by comparing common features of products

Also Published As

Publication number Publication date
CN107430691A (zh) 2017-12-01
EP3248142A4 (en) 2017-12-13
US20160217157A1 (en) 2016-07-28
KR20170107039A (ko) 2017-09-22
WO2016118339A1 (en) 2016-07-28
EP3248142A1 (en) 2017-11-29

Similar Documents

Publication Publication Date Title
KR102032038B1 (ko) 이미지로 묘사된 아이템 인식
US10885394B2 (en) Fine-grained categorization
US20210406960A1 (en) Joint-based item recognition
KR102785253B1 (ko) 컨텍스트 기반 미디어 큐레이션
US11836776B2 (en) Detecting cross-lingual comparable listings
US9965704B2 (en) Discovering visual concepts from weakly labeled image collections
US11861999B2 (en) Object detection based on object relation
US20160117587A1 (en) Hierarchical deep convolutional neural network for image classification
US11222064B2 (en) Generating structured queries from images
CN110622153A (zh) 用于查询分割的方法和系统
CN118247632A (zh) 用于图像搜索的方法、系统以及存储指令的计算机可读介质
US11797587B2 (en) Snippet generation system

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

Patent event date: 20170822

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20181015

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20181015

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

AMND Amendment
PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20181217

Comment text: Amendment to Specification, etc.

PX0701 Decision of registration after re-examination

Patent event date: 20190725

Comment text: Decision to Grant Registration

Patent event code: PX07013S01D

Patent event date: 20190628

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PX07011S01I

Patent event date: 20181217

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

X701 Decision to grant (after re-examination)
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20191007

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20191007

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20220830

Start annual number: 4

End annual number: 4

PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20240718