KR20230002738A - 참조 프레임을 사용하는 안경용 가상 시착 시스템 - Google Patents

참조 프레임을 사용하는 안경용 가상 시착 시스템 Download PDF

Info

Publication number
KR20230002738A
KR20230002738A KR1020227039814A KR20227039814A KR20230002738A KR 20230002738 A KR20230002738 A KR 20230002738A KR 1020227039814 A KR1020227039814 A KR 1020227039814A KR 20227039814 A KR20227039814 A KR 20227039814A KR 20230002738 A KR20230002738 A KR 20230002738A
Authority
KR
South Korea
Prior art keywords
user
image
reference token
computer
implemented method
Prior art date
Application number
KR1020227039814A
Other languages
English (en)
Inventor
데이비드 골드버그
앤드류 개리슨
아담 그린버그
폴 존슨
폴 맥케이
Original Assignee
와비 파커 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 와비 파커 인코포레이티드 filed Critical 와비 파커 인코포레이티드
Publication of KR20230002738A publication Critical patent/KR20230002738A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • G06Q30/0643Graphical representation of items or shoppers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

사용자 착용가능 아이템의 가상 시착 방법이 제공된다. 이 방법은, 클라이언트 장치에서, 사용자의 제1 이미지를 캡처하는 단계 - 제1 이미지는 사용자 착용가능 아이템(user-wearable item)에 대한 참조 토큰을 포함함 - 와, 클라이언트 장치에서, 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이하는 단계와, 사용자로부터, 디스플레이 상의 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 단계를 포함한다. 이 방법은 또한, 제1 이미지를 분할하여 사용자의 인상(physiognomy)의 부분을 포함하는 배경으로부터 참조 토큰을 분리하는 단계와, 제1 이미지 내의 참조 토큰의 부문을 사용자의 제2 이미지 내의 상기 선택된 사용자 착용가능 아이템에 대한 이미지로 대체하는 단계와, 클라이언트 장치에서, 사용자의 상기 제2 이미지를 디스플레이하는 단계를 포함한다.

Description

참조 프레임을 사용하는 안경용 가상 시착 시스템
관련 출원에 대한 상호 참조
본 출원은 2020년 4월 15일에 출원된 미국 가출원 제63/010,421호의 우선권을 주장하며, 그 내용은 전체가 본 명세서에서 참조로 포함된다.
본 명세서에 언급된 모든 간행물, 특허 및/또는 특허 출원은 마치 각각의 개별 간행물, 특허 또는 특허 출원이 그 전체가 참고로 포함되는 것으로 구체적이고 개별적으로 표시된 것과 동일한 정도로 그 전체가 참고로 포함된다.
본 명세서의 개시내용은 일반적으로 증강 현실에 관한 것으로, 보다 구체적으로는 안경, 3차원(3D) 안경, 증강 현실 안경, 가상 현실 안경 또는 헤드셋, 스마트 안경, 스포츠 안경, 보안경, 또는 이들의 조합에 대한 가상 시착 시스템 및 방법에 관한 것이다.
다음은 본 발명을 이해하는데 유용할 수 있는 정보를 포함한다. 여기서 구체적으로 또는 암시적으로 언급된 정보가 기술되거나 청구된 발명에 대한 선행 기술이라거나 필수적인 것이라고 인정하는 것은 아니다.
가상 물체가 현실 세계의 물체들의 이미지 위에 디지털 방식으로 오버레이되는 증강 현실(AR) 애플리케이션이 개발되었다. 어떤 경우에는, 게임 캐릭터와 같은 가상 물체가 사용자가 장면을 탐색할 때 스마트폰 또는 태블릿에 의해 표시되는 장면의 이미지에 추가된다. 다른 경우에, 스마트폰 또는 태블릿의 사용자의 얼굴 이미지에 만화 동물 얼굴 특징과 같은 만화 특징이 추가되는데, 이 이미지는 스마트폰 또는 태블릿의 카메라에 의해 캡처된 것이다. 그러나, 이들 종래의 AR 시스템에서는 가상 물체의 만화적이거나 비현실적인 특성은 실제 물체에 대한 가상 물체의 크기, 모양, 방향 및 배치 정확도에 상당한 여유를 준다.
패션 산업에서 AR 시스템의 사용은 향상된 마케팅 캠페인, 고객 참여 및 판매를 위한 잠재적인 기회를 제공한다. 그러나, VTO(Virtual Try-on) 시스템과 같은 기존의 AR 시스템은 고객의 실제 크기와 비율에 비해 부정확하고 비현실적인 크기 및 핏의 액세서리(예컨대, 안경) 및/또는 의류를 제공한다. 그 결과, 이러한 시스템은 소비자 불만 증가, 그러한 시스템의 사용 또는 신뢰도 감소, 궁극적으로는 수익 손실로 이어진다.
따라서, 적어도 전술한 문제를 해결하고 그에 대한 고객의 경험을 개선할 개선된 VTO 시스템을 생성할 필요가 있다.
본 명세서에 기술되고 청구된 본 발명은 본 요약에 기재되거나 기술되거나 참조된 것들을 포함하지만 이에 제한되지 않는 많은 속성 및 양태를 갖는다. 본 요약은 모든 것을 포괄하고자 하는 것은 아니며, 본 명세서에 기술되고 청구된 발명은 제한이 아닌 예시의 목적으로 포함된 이 요약부에서 밝히는 특징 또는 실시예로 제한되지 않는다.
본 개시의 일부 양태에 따르면, 컴퓨터로 구현되는 방법이 제공된다. 컴퓨터로 구현되는 방법은, 클라이언트 장치에서 사용자의 제1 이미지 - 제1 이미지는 사용자 착용가능 아이템(user-wearable item)에 대한 참조 토큰을 포함함 - 를 캡처하는 것과, 클라이언트 장치에서 사용자를 위한 다수의 사용자 착용가능 아이템의 이미지를 디스플레이하는 것을 포함한다. 컴퓨터로 구현되는 방법은 또한 사용자로부터, 디스플레이 상의 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 것과, 제1 이미지를 분할하여 사용자의 인상(physiognomy)의 부분을 포함하는 배경으로부터 참조 프레임을 분리하는 것을 포함한다. 컴퓨터로 구현되는 방법은 또한 제1 이미지 내의 참조 토큰의 부문(segment)을 사용자의 제2 이미지 내의 선택된 사용자 착용가능 아이템의 이미지로 대체하는 것과, 클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이하는 것을 포함한다.
본 개시의 일부 양태에 따르면, 컴퓨터로 구현되는 방법이 제공된다. 컴퓨터로 구현되는 방법은, 클라이언트 장치로부터 사용자의 제1 이미지 - 제1 이미지는 사용자 착용가능 아이템에 대한 참조 토큰을 포함함 - 를 수신하는 것과, 데이터베이스에 저장된 사용자를 위한 다수의 사용자 착용가능 아이템의 이미지를 디스플레이를 위해 클라이언트 장치에 제공하는 것을 포함한다. 컴퓨터로 구현된 방법은 또한 사용자로부터 디스플레이 상의 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 것과, 클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이를 위해 제공하는 것 - 제2 이미지는 선택된 사용자 착용가능 아이템에 대한 이미지로 대체된 참조 토큰에 대한 부문을 가짐 - 과, 클라이언트 장치로부터 선택된 사용자 착용가능 아이템에 대한 요청을 수신하는 것을 포함한다.
본 개시의 일부 양태에 따르면, 명령어를 저장하는 메모리 회로와, 이들기 명령어를 실행하도록 구성된 프로세서 회로를 포함하는 시스템이 제공된다. 명령어를 실행할 경우, 프로세서는 시스템으로 하여금, 클라이언트 장치에서, 사용자의 제1 이미지를 캡처하게 하고 - 제1 이미지는 사용자 착용가능 아이템에 대한 참조 토큰을 포함함 - 와, 클라이언트 장치에서, 사용자에 대한 다수의 사용자 착용가능 아이템의 이미지를 디스플레이하게 하며, 사용자로부터, 디스플레이 상의 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하게 한다. 프로세서는 또한, 제1 이미지를 분할하여 사용자의 인상의 부분을 포함하는 배경으로부터 참조 토큰을 분리하게 하고, 제1 이미지 내의 참조 토큰의 부문을 사용자의 제2 이미지 내의 선택된 사용자 착용가능 아이템에 대한 이미지로 대체하게 하며, 클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이하게 한다.
본 기술의 다른 구성은 이하의 상세한 설명으로부터 당업자에게 명백해질 것으로 이해되며, 본 기술의 다양한 구성은 예시로서 도시되고 설명된다. 이해되는 바와 같이, 주제 기술은 다른 구성 및 상이한 구성이 가능하고 그 몇몇 세부사항은 주제 기술의 범위로부터 벗어나지 않고서 다양한 다른 측면에서 수정될 수 있다. 따라서, 도면 및 상세한 설명은 기본적으로 제한적이지 않고 예시적인 것으로 간주되어야 한다.
추가적인 이해를 제공하고 본 명세서에 포함되며 그 일부를 구성하는 첨부한 도면은 개시된 실시예를 예시하며 설명과 함께 개시된 실시예의 원리를 설명하는 역할을 한다. 도면은 단지 예시를 위한 것이며, 비제한적인 실시예를 보여주며, 반드시 일정한 비율로 도시된 것은 아니다.
도 1은 본 개시의 일부 구현을 실시하기에 적합한 가상 시착 시스템을 위한 예시적인 아키텍처를 도시한 것이다.
도 2는 일부 실시예에 따른, 도 1의 아키텍처에서 사용되는 일부 장치의 세부사항을 도시하는 블록도이다.
도 3은 일부 실시예에 따른, 증강 현실 시착 인터페이스의 다수의 안경 프레임을 예시하는 개략도이다.
도 4는 일부 실시예에 따른, 증강 현실 시착 인터페이스를 예시하는 개략도이다.
도 5는 일부 실시예에 따른, 증강 현실 시착 인터페이스로부터의 다수의 샷을 예시한다.
도 6은 일부 실시예에 따른, 얼굴 랜드마크 위치를 포함하는 사용자의 3차원 이미지의 3차원 모델을 예시하는 개략도이다.
도 7은 일부 실시예에 따른, 클라이언트 장치의 증강 현실 시착 인터페이스를 사용자에게 제공하기 위한 방법의 단계를 도시한 흐름도이다.
도 8은 일부 실시예에 따른, 서버로부터 증강 현실 시착 인터페이스를 호스팅하기 위한 방법의 단계를 예시하는 흐름도이다.
도 9는 본 개시의 특정 양상들에 따른, 도 1의 아키텍처를 구현할 수 있는 예시적인 컴퓨터 시스템을 도시한 블록도이다.
도면에서, 텍스트에서 달리 언급되지 않는 한, 유사한 요소 및 단계는 유사한 참조 번호로 라벨링된다.
이하의 상세한 설명에서, 본 개시의 완전한 이해를 제공하기 위해 다수의 특정한 세부사항을 설명한다. 그러나, 본 개시의 실시예가 이러한 특정한 세부사항 중 일부 없이 실시될 수 있다는 것은 당업자에게 명백할 것이다. 다른 사례에서, 잘 알려진 구조 및 기술은 개시를 모호하게 하지 않도록 하기 위해 상세하게 도시되지 않았다.
일반적인 개요
VTO 시스템 및 방법이 본 명세서에 개시된다. 가상 시착 시스템 및 방법은 사용자가 현실 세계의 안경이나 프레임에 접근하지 않고도 안경이나 안경 프레임이 현실 세계의 사용자의 얼굴에서 어떻게 보이는지 확인하는 데 특히 유용할 수 있다. 일부 실시예에서, 가상 현실(VR) 디스플레이는 인공적으로 생성된 요소와 중첩된 실제 이미지를 디스플레이하는 시스템을 포함한다. 그러나, 본 명세서에 기술된 시스템 및 방법은 안경 액세서리, 헤드웨어, 귀걸이, 다른 보디 피어싱 액세서리, 보석류, 의류 등의 가상 시착과 같은 사용자의 신체의 다른 부위에 있는 다른 물체의 가상 시착에도 적용될 수 있는 것이 이해되어야 한다. 본 명세서에 개시된 가상 시착 시스템 및 방법은 사용자가 특정한 현실 세계 아이템이 사용자의 특정 신체 상에 보이는 방식을 떠올리게 한다.
기존의 많은 VTO 솔루션은 모든 얼굴은 크기가 동일하다고 가정하고 얼굴에 비례하여 가상 안경 프레임을 스케일링함으로써 사용자의 얼굴 크기를 추정한다. 따라서, 머리 크기가 평균보다 작거나 큰 사용자는 실제로는 너무 크거나 너무 작은 프레임이 자신에게 맞는 것처럼 느낄 수 있다. 이는, 사용자가 안경을 받고 안경이 원했던 대로 보이지 않거나 불편하거나 단순히 자신에게 맞지 않는다는 것을 알게 될 때, 그 소비자를 당황스럽게 만든다. 일부 실시예에서, VTO 시스템은 사용자에게 표준 크기의 알려진 사이즈의 참조 물체(예컨대, 신용카드)와 포즈를 취하도록 요청할 수 있다. 일부 사용자에게는 이 접근 방법이 불편하거나 번거롭게 보일 수 있다. 일부 실시예에서, VTO 시스템은 3차원(3D) 카메라를 사용하여 사용자의 얼굴 크기를 추정하고 그에 따라 가상 안경의 크기를 조정할 수 있다. 그러나, 3D 카메라는 일부 사용자에게 이용가능하지 않을 수 있다. 따라서, 일부 시나리오에서는, VTO 시스템이 이미지에서 사용자의 얼굴 특징과 관련하여 가상 안경을 얼마나 크게 만들지를 추측할 수 있다. 이는 이미지로부터 사용자의 얼굴 특징의 물리적 크기를 추정하는 것이 간단하지 않기 때문인데, 특히 이미지 내의 또는 이미지에 대한 배율 기준이 없는 경우에는 더욱 그러하다. 일부 VTO 시스템은 가상 안경의 적절한 크기를 결정하기 위해 사용자의 머리가 평균 크기라고 가정할 수 있다. 그러나, 이러한 유형의 가정은 머리가 평균보다 작거나 큰 사용자에게 비현실적인 결과를 생성할 것이다.
본 명세서에 개시된 가상 시착(VTO) 시스템은 고객들에게 안경 프레임이 그들의 얼굴에서 어떻게 보일지를 보여주기 위해 증강 현실을 사용한다. 고객은 본 명세서에 개시된 VTO에 의존하여 자신의 얼굴에 대한 프레임의 크기를 정확하게 파악한다. 일부 실시예에서, 본 명세서에 개시된 VTO 시스템은 고객에게 사전에 제공된 참조 안경 프레임을 사용한다. 고객이 참조 프레임을 착용하면 VTO 시스템이 참조 안경 프레임의 크기를 참조하여 가상 안경 프레임을 중첩시킨다.
또한, 대상의 머리와 얼굴 특징에 대한 정확한 3차원 정보가 없으면, VTO 시스템은 대상의 얼굴 상의 안경의 위치 및 크기를 부적절하게 추정할 수 있다. 따라서, 전형적인 특징을 사용하면 잠재적인 고객에게 비현실적 결과를 보여줄 수 있어 결국 불만과 매출 손실로 이어질 수 있다.
안경을 착용한 잠재적인 고객의 부정확한 연출을 피하기 위해, 본 명세서에 개시된 VTO 시스템은 안경용 참조 프레임을 착용한 사용자의 제1 이미지를 사용자가 VTO 시스템에 입력하도록 요청할 수 있다. 안경용 참조 프레임은 알려진 치수를 포함할 수 있다. 따라서, 제1 이미지는 사용자의 얼굴 특징의 치수 및 상대적 분포를 정확하게 평가하는 데 사용될 수 있다.
본 개시의 양태에 따르면, 안경용 참조 프레임을 착용한 사용자의 얼굴의 캡처된 이미지를 사용하여 사용자의 얼굴에 있는 실제 안경의 실제 모습의 사실적인 표현을 제공하는 VTO 시스템 및 방법이 제공된다. 캡처된 이미지에서 사용자의 얼굴 크기가 직접 측정되기 때문에, 본 명세서에 설명된 VTO 시스템 및 방법은 사용자의 얼굴에 대한 정확한 상대적인 크기로 안경의 가상 표현을 렌더링할 수 있다. 실제 사용자의 얼굴에 놓여질, 사용자의 얼굴 이미지에 대한 안경의 가상 표현의 정확한 배치(예컨대, 위치 지정 및/또는 방향)는 이하에 더 자세히 설명한다. 또한, 일부 실시예는 사용자가 VTO 애플리케이션을 사용하여 실제 안경의 여러 유형, 클래스 및 모델을 시착해볼 수 있는 기능을 추가로 제공할 수 있다. 예를 들어, 사용자는 색, 질감 및 디자인이 다른 착색 렌즈, 그라데이션 렌즈 또는 프레임을 시착해볼 수 있다.
본 명세서에 개시된 실시예는 구매 전에 가상 안경을 착용한 사용자의 이미지의 원격 연출을 제공하는 기술적 문제에 대한 기술적 해결책을 제공한다. 따라서, 본 명세서에 개시된 실시예는 원하는 안경을 착용한 사용자의 증강 현실 이미지를 렌더링하기 위해 디스플레이를 가상 거울로서 사용하여 모바일 컴퓨터 장치의 사용을 향상시킨다. 또한, 본 명세서에 개시된 실시예는 광대역 네트워크 컴퓨터 기술의 기술적 이점을 활용하여 이미지를 시간 순서로 신속하게 렌더링 및 조정하여, 안경을 착용하는 동안 사용자의 자연스러운 움직임과 제스처를 캡처한다. 일부 실시예에서, 3D 모델 렌더링 툴은 클라이언트 장치에 설치된 애플리케이션 내에 적어도 부분적으로 또는 완전히 상주할 수 있다. 안경을 시착하기 위해 물리적으로 가게에 가지 않음으로써, 본 명세서에 개시된 VTO 시스템은 사용자에게 상당한 상업적 이점을 제공하며, 판매 능력과 판매업체에 대한 마케팅 범위를 향상시킨다.
본 명세서에 개시된 실시예는 참조 안경의 사용을 통해 2D 이미징에 기초한 가상 시착 툴에 비해 우수한 사이징 정확도를 달성한다. 다른 가상 시착 툴과 달리, 이는 3D 카메라를 요구하지 않는데, 이 때문에 개시된 시스템은 더 많은 고객 기반에서 사용할 수 있다. 보다 일반적으로, 본 개시에 부합하는 실시예는 웨어러블 장치, 의류 등과 같은 임의의 다른 유형의 사용자 웨어러블 아이템에 대한 참조 프레임 또는 토큰의 사용을 포함한다. 따라서, 일부 실시예에서 참조 프레임 또는 토큰이 잠재 고객에게 제공된다. 고객은 참조 프레임 또는 토큰을 착용한 자신의 이미지를 찍고 모바일 장치의 애플리케이션은 사용자에게 웨어러블 아이템을 갖춘 사용자의 가상 거울 이미지를 디스플레이한다. 사용자는 포즈를 취하고, 프로필을 바꾸고, 다른 각도에서 사진 및 비디오 촬영을 할 수 있으며, 애플리케이션은 웨어러블 아이템을 갖춘 사용자의 사실적인 이미지 또는 비디오를 반환한다.
본 명세서에 제공된 많은 예가 식별 및/또는 저장되는 사용자의 장치 또는 물리적 특징을 설명하지만, 각 사용자는 이러한 사용자 정보가 수집, 공유 및/또는 저장되도록 명시적 권한을 부여할 수 있다. 개시된 시스템에 통합된 개인 정보 보호 제어를 사용하여 명시적 권한을 부여할 수 있다. 각 사용자는 그러한 사용자 정보가 명시적 동의하에 저장된다는 통지를 받을 수 있으며, 각 사용자는 언제든지 정보 저장을 종료할 수 있으며 저장된 사용자 정보를 삭제할 수 있다. 저장된 사용자 정보는 사용자 보안을 보호하기 위해 암호화될 수 있다.
사용자는 언제든지 메모리 회로에서 사용자 정보를 삭제하고/하거나 사용자 정보가 메모리 회로에 저장되는 것을 옵트아웃할 수 있다. 또한, 사용자는 언제든지 적절한 개인 정보 설정을 조정하여 메모리 회로에 저장된 사용자 정보의 유형을 선택적으로 제한하거나 또는 사용자 정보가 저장된 메모리 회로를 선택할 수 있다(예컨대, 서버에서 원격적으로가 아니라 사용자의 장치에서 로컬로). 사용자 정보는 사용자가 달리 구체적으로 제공하거나 지시하지 않는 한, 사용자의 특정 ID(예컨대, 사용자 이름)를 포함 및/또는 공유하지 않는다.
예시적인 시스템 아키텍처
도 1은 본 개시의 일부 구현을 실시하기에 적합한 안경의 가상 시착을 위한 예시적인 아키텍처(100)를 도시한 것이다. 이 아키텍처(100)는 네트워크(150)를 통해 연결된 서브(130) 및 클라이언트 장치(110)를 포함한다. 도시된 바와 같이, 제3자 서버(140)도 네트워크(150)를 통해 서버(130) 및/또는 클라이언트 장치(110)에 통신 가능하게 연결될 수 있다. 서버(130)는 하나 이상의 클라이언트 장치(110)를 이용하여 가상으로 시착될 수 있는 물체와 연관된 정보의 데이터베이스(142)를 포함할 수 있다. 예컨대, 서버(130)의 데이터베이스(142)는 (예컨대, 서버 자체로부터, 실제 오프라인 매장으로부터, 또는 제3자 서버와 같은 다른 서버로부터) 구매가 가능한, 렌즈가 있거나 없는, 다양한 안경 프레임의 3차원 모델을 포함할 수 있다. 일부 구현에서, 서버(130)는 서버의 프로세서 회로에 의해 실행되면 프로세서 회로로 하여금 본 명세서에 설명된 시착 방법 및 동작을 수행하는 시착 인터페이스(예컨대, 시착 웹 인터페이스)를 제공하게 하는 코드를 저장할 수도 있다. 일부 구현에서, 시착 인터페이스를 위한 코드는 추가적으로 또는 대안적으로 하나 이상의 클라이언트 장치(110)에 저장될 수 있다. 이들 구현에서, (예컨대, 사용자 장치에서 실행되는 시착 애플리케이션에 의해 생성된) 시착 인터페이스를 실행하는 클라이언트 장치는 서버(130)로부터 안경의 3차원 모델을 획득하고 클라이언트 장치에서 본 명세서에 설명된 시착 동작을 수행할 수 있다.
제3자 서버는 데이터베이스(152)에 3차원 표현이 저장되는 안경 판매를 처리하는 서버(130)를 포함할 수 있다. 서버(130)는, 서버(130) 및/또는 클라이언트 장치(110)에 의해 제공되는 시착 인터페이스를 사용하여 시착될 수 있는 다른 물체의 3차원 표현을 (예컨대, 다른 물체의 3차원 모델을 데이터베이스(152)에 저장함으로써) 저장할 수 있고 3차원 모델을 서버(130) 및/또는 클라이언트 장치(110)에 제공할 수 있다.
서버(130)는 시착 인터페이스를 호스팅하고 또한/또는 안경 또는 다른 물체의 3차원 모델을 저장하기 위한 적절한 프로세서 회로, 메모리 회로, 및 통신 능력을 갖는 임의의 장치로 각각 구현될 수 있다. 클라이언트 장치(110)는, 예컨대, 데스크톱 컴퓨터, 모바일 컴퓨터, (예컨대, e-북 리더를 포함하는) 태블릿 컴퓨터, 모바일 전자 장치(예컨대, 스마트폰, 태블릿, 또는 PDA), 또는 적절한 이미징(예컨대, 가시광선 이미징 및/또는 적외선 이미징), 조명(예컨대, 가시광선 조명 및/또는 적외선 조명), 프로세서 회로, 메모리 회로, 및 가상 시착 인터페이스를 제공하기 위한 통신 기능을 갖는 임의의 다른 장치일 수 있다. 네트워크(150)는, 예컨대, 근거리 통신망(LAN), 광역 통신망(WAN), 인터넷 등 중 하나 이상을 포함할 수 있다. 또한, 네트워크(150)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메시 네트워크, 스타 버스 네트워크, 트리 또는 계층 네트워크 등을 포함하는 이하의 네트워크 토폴로지 중 어느 하나 이상을 포함할 수 있지만 이에 제한되지는 않는다.
도 2는 일부 실시예에 따른, 아키텍처(100)의 예시적인 서버(130) 및 클라이언트 장치(110)를 도시하는 시스템(200)의 블록도이다. 클라이언트 장치(110) 및 서버(130)는 제각기의 통신 모듈(218-1 및 218-2)(이하, "통신 모듈(218)"로 총칭됨)을 통해 네트워크(150)를 통해 통신 가능하게 연결된다. 통신 모듈(218)은 데이터, 요청, 응답 및 명령과 같은 정보를 네트워크 상의 다른 장치에 보내고 받기 위해 네트워크(150)와 인터페이스하도록 구성된다. 통신 모듈(218)은, 예를 들어 모뎀 또는 이더넷 카드를 포함할 수 있다. 클라이언트 장치(110)는 입력 장치(214) 및 출력 장치(216)와 연결될 수 있다. 입력 장치(214)는 키보드, 마우스, 포인터, 또는 사용자(예컨대, 소비자)가 클라이언트 장치(110)와 상호작용하는 데 이용할 수 있는 터치 스크린 디스플레이를 포함할 수 있다. 마찬가지로, 출력 장치(216)는 사용자가 클라이언트 장치(110)로부터 결과를 검색하는 데 사용할 수 있는 디스플레이 및 스피커를 포함할 수 있다. 클라이언트 장치(110)는 메모리 회로(220-1)에 저장된 명령어를 실행하고, 클라이언트 장치(110)로 하여금 본 개시에 따른 방법의 단계들 중 적어도 일부를 수행하게 하도록 구성된 프로세서 회로(212-1)를 포함할 수 있다. 메모리 회로(220-1)는 프로세서 회로(212-1)에 의해 실행될 때 서버(130)에 의해 호스팅되는 페이로드(225)로 하여금 소비자를 위해 디스플레이되게 하는 특정 명령어를 포함하는 애플리케이션(222)을 더 포함할 수 있다. 따라서, 애플리케이션(222)은 서버(130)에 의해 설치될 수 있고 서버(130)에 의해 제공되는 스크립트 및 기타 루틴을 수행할 수 있다. 일부 실시예에서, 애플리케이션(222)은 가상 임베딩 엔진(242)에 의해 제공되는 광고 페이로드(225)를 디스플레이하도록 구성될 수 있다. 페이로드(225)는 서버(130)에 의해 소비자에게 제시되는 다수의 디지털 프로모션, 참조 프레임, 재고 품목 등을 포함할 수 있다. 일부 실시예에서, 소비자는 참조 프레임 중 적어도 일부를 선택하거나 또는 메모리 회로(220)의 페이로드(225) 내의 버튼 및 기타 필드를 활성화하는 재고 품목을 구매할 수 있다.
서버(130)는 메모리 회로(220-2), 프로세서 회로(212-2), 및 통신 모듈(218-2)을 포함한다. 프로세서 회로(212-2)는 프로세서 회로(212-2)에 물리적으로 코딩된 명령어, 메모리 회로(220-2)의 소프트웨어로부터 수신된 명령어, 또는 이 둘의 조합과 같은 명령어를 실행하도록 구성된다. 메모리 회로(220-2)는 재고 품목 데이터베이스(252)에 저장된 이미지, 비디오 및 기타 멀티미디어 파일을 페이로드(225)의 증강 현실 이미지 또는 비디오로 통합하기 위한 가상 임베딩 엔진(242)을 포함한다. 가상 임베딩 엔진(242)은, 애플리케이션(222)에 의해 제공되는 이미지 또는 비디오를 재고 품목 데이터베이스(252)로부터의 적절하게 수정된 이미지와 결합한 가상 이미지 또는 비디오를 형성할 수 있다. 그런 다음 서버(130)는, 소매점 또는 체인점의 소비자 또는 사용자 착용가능 아이템을 온라인 구매하고자 하는 소비자인 클라이언트 장치(110)의 사용자에게 페이로드(225)를 제공한다.
가상 임베딩 엔진(242)은 분할 툴(244) 및 기하학적 연출 툴(246)을 사용하여 페이로드(225)를 통합한다. 분할 툴(244)은 애플리케이션(222)에 의해 제공되는 이미지의 픽셀로부터 참조 프레임을 나타내는 픽셀 마스크를 선택하거나 생성하기 위한 명령을 포함할 수 있다.
기하학적 연출 툴(246)은 3차원 공간에서 알려진 차원의 물체(예컨대, 참조 프레임 데이터베이스(252)에 저장된 참조 프레임)의 방향 및 위치를 결정하기 위한 모델을 포함할 수 있다. 일부 실시예에서, 기하학적 연출 툴(246)의 모델은, 참조 프레임의 다수의 위치 및 방향을 시뮬레이션하고 분할 툴(244)에 의해 제공된 픽셀 마스크와 가장 잘 매칭되는(또는 임계값 내에서 가장 가깝게 매칭되는) 참조 프레임의 방향 및 위치를 선택하는 명령어를 포함할 수 있다.
도 3은 일부 실시예에 따른 인공 현실 시착 애플리케이션(322) 내 다수의 안경 프레임(315-1("A"), 315-2("B"), 315-3)(이하, "안경 프레임(315)"으로 통칭함)을 도시한 개략도이다. 일부 실시예에서, 클라이언트 장치(310)의 사용자는 애플리케이션(322)을 통해 서버(예컨대, 서버(130))에 의해 호스팅되는 안경 제공자에 대한 포털에 액세스한다. 그러면, 클라이언트 장치(310)의 디스플레이는, 일부 실시예에 따르면, 사용자에게 프레임(315)의 이미지를 제공하여 선택하고 시착해볼 수 있도록 한다. 디스플레이는 또한 안경 프레임(315) 각각에 대한 여러 피처(330-1 및 330-2)(이하, 집합적으로 "피처(330)"로 지칭됨)를 예시할 수 있다. 피처(330)는 안경의 프레임의 재료, 색상, 질감 및 형상을 포함할 수 있다. 일부 실시예에서, 피처(330)는 또한 안경(예컨대, 편광, 도금, 그라디언트 색상, 착색, 선글라스 등)의 유리의 형상 또는 유형을 포함할 수 있다.
애플리케이션(322)은 여러 버튼, 320-1("쇼핑(Shop)"), 320-2("시착(Try-On)"), 320-3("찾기(Locations)"), 320-4("계정(Account)") 및 320-5("장바구니(Cart)", 이하 총칭하여 "버튼(320)"이라고 함)을 포함할 수 있다. 쇼핑 버튼(320-1)은 사용자를 도면에 도시된 바와 같은 디스플레이로 안내할 수 있으며, 여기서 데이터베이스(예컨대, 재고 품목 데이터베이스(252))로부터의 상이한 재고 품목이 사용자 선택을 위해 디스플레이된다. 찾기 버튼(320-3)은 사용자가 구매하려고 선택한 항목을 찾을 수 있는 상점의 여러 위치를 디스플레이하는 맵으로 사용자를 안내할 수 있다. 계정 버튼(320-4)은 서버 호스팅 애플리케이션(222)(예컨대, 상점, 안경 사업자, 브랜드, 제조업체 등에 의해 후원되는 서버(130))의 개인 계정으로 사용자를 안내할 수 있다. 장바구니 버튼(320-5)은 쇼핑 버튼(320-1)이 활성화될 때 사용자가 선택한 아이템을 수집 및 저장할 수 있다.
시착 버튼(320-2)은 본 명세서에 개시된 VTO 포털로 사용자를 안내한다. VTO 포털에서, 사용자는, 본 명세서에 개시된 바와 같이, 참조 물체를 시착할 수 있고, 클라이언트 장치(310)를 가상 거울로 사용하여 선택된 안경을 쓴 자신의 사실적인 모습을 볼 수 있다.
도 4는 일부 실시예에 따른, 애플리케이션(322)의 VTO 포털(425)을 도시한 개략도이다. VTO 포털은 선택된 안경(415)(예컨대, 쇼핑 버튼(320-1)을 누른 후 프레임(315) 중 어느 하나로부터 선택됨)을 착용한 사용자의 가상 거울 이미지(435)를 보여준다. 필드(427)는 "더 많은 안경을 위해 스와이프", "시착" 또는 "구매(가격)"하기 위한 버튼을 포함할 수 있다.
일부 실시예에서, 사용자는 애플리케이션(322)에 액세스하기 전에 (메일 등과 같은 물리적 배달에 의해) 참조 프레임을 수신한다. 참조 프레임은 안경 프레임(415)과 유사한 크기 및 모양을 갖는 물리적 객체일 수 있다. 일부 실시예에서, 참조 프레임은 고유의 색상을 가질 수 있다. 그 다음에, 사용자는 참조 프레임을 착용하는 동안 클라이언트 장치(410)를 사용하여 자신의 이미지를 촬영한다. 따라서, VTO 포털(425)은 장면의 나머지 부분에 대응하는 픽셀로부터 참조 프레임에 대응하는 픽셀을 쉽게 분할할 수 있다. 이들 픽셀에 대해, VTO 포털(425)은 참조 프레임 대신 선택된 안경 프레임(415)의 색상, 형상, 및 기타 특징을 포함하는 가상 거울 이미지(435)를 디스플레이한다. 따라서, 사용자는 여러 가지 다른 배색을 가상으로 시착할 수 있다.
일부 실시예에서, 참조 프레임은 고유의 색상을 갖지 않을 수 있다. 또 다른 실시예에서, 참조 프레임은 특정 색상 또는 색상들의 조합의 통상적인 프레임일 수 있다. 그 다음에, VTO 포털(425)은 참조 프레임에 대응하는 픽셀의 색상이 선택된 안경 프레임(415)의 색상으로 대체되는 가상 거울 이미지(435)를 제공한다.
일부 실시예에서, 선택된 안경 프레임(415)의 프레임은 참조 프레임과 동일할 수 있지만, 안경 렌즈는 상이할 수 있다. 따라서, VTO 포털(425)(또는 포털을 호스팅하는 서버)은 안경 렌즈를 분할한다. 따라서, 가상 거울 이미지(435)는 사용자가 원하는 유형 또는 스타일을 나타내는 안경 렌즈를 포함한다. 이를 달성하기 위해, 본 명세서에 개시된 VTO 시스템은 대안적인 렌즈(예컨대, 착색, 선글라스, 편광, 도금, 그라디언트 색상 등)를 나타내기 위해 안경 렌즈에 대응하는 픽셀의 외양을 변경한다.
일부 실시예에서, 참조 프레임은 선택된 안경 프레임(415)의 크기 또는 모양과 일치하지 않을 수 있다. 대신에, 기존의 안경 프레임 또는 목적에 맞게 설계된 참조 프레임일 수 있는 참조 프레임이 크기 참조 역할을 할 수 있다. 따라서, VTO 시스템은 사용자의 얼굴에 선택된 안경 프레임(415)을 정확하게 장착하기 위해, (예컨대, 사용자 머리의 3D 모델을 생성함으로써) 사용자의 머리/얼굴의 크기 및 모양을 평가할 수 있다.
도 5는 일부 실시예에 따른, VTO 애플리케이션(522)으로부터의 다수의 가상 거울 이미지(535A, 535B, 535C)(이하, "가상 이미지(535)"로 통칭함)를 도시한다. VTO 포털(525)은 선택된 안경 프레임(515A)에서 선택된 안경 프레임(515B)으로 전환하기 위해 사용자가 활성화하는 필드(527)를 포함한다. 원활하게, 실제 거울에서와 같이, VTO 포털(525)은 최근에 선택된 안경 프레임을 갖춘 사용자의 뷰를 (예컨대, 실시간으로) 상이한 포즈 및 프로파일(예컨대, 가상 이미지(535B 및 535C))로 보여주는 가상 이미지(535)를 제공한다.
도 6은 일부 실시예에 따른, 얼굴 랜드마크 위치(610-1, 610-2, 610-3, 610-4)(이하, "랜드마크 위치(610)"로 통칭함)를 포함하는 사용자의 2차원(2D) 이미지(635)로부터의 3D 모델(645)을 도시하는 개략도(600)이다.
2D 이미지(635)는 참조 프레임(615r)을 착용한 사용자에 의해 클라이언트 장치(예컨대, 클라이언트 장치(110, 310, 410))를 통해 서버에 제공될 수 있다. 서버는 분할 툴 및 기하학적 연출 툴(646)을 갖는 가상 임베딩 엔진으로 2D 이미지(635)를 처리하여 3D 모델(645)을 생성할 수 있다. 따라서, 기하학적 연출 툴(646)은 사용자의 머리가 참조 프레임(615r)에 접촉하는 랜드마크 위치(610) 및 참조 프레임(615r)의 3D 모델을 사용하여 사용자의 머리에 있는 필수 지점들의 크기와 모양을 확인할 수 있다. 그 다음에, 랜드마크 위치(610)에 가장 잘 맞는 3D 메쉬를 선택함으로써, 기하학적 연출 툴(646)은 3D 모델(645)을 생성할 수 있다. 3D 모델(645)은, 가상 안경을 착용하고 VTO 시스템에 다른 프로필 및 포즈로 머리를 이동하는 사용자의 가상 이미지를 가상 임베딩 엔진에 의해 제공하는 데 사용될 수 있다.
도 7은 일부 실시예에 따른, 클라이언트 장치의 증강 현실 시착 인터페이스를 사용자에게 제공하기 위한 방법(700)의 단계를 도시한 흐름도이다. 일부 실시예에서, 방법(700)의 단계들 중 적어도 하나 이상은 본 명세서에 개시된 아키텍처(예컨대, 클라이언트 장치(110), 서버(130), 및 아키텍처(100))의 서버 또는 클라이언트 장치와 같은 하나 이상의 장치에 의해 수행될 수 있다. 따라서, 일부 실시예에서, 방법(700)의 단계들 중 적어도 하나 이상은, 서버에 의해 호스팅되고 클라이언트 장치에서 실행되는 애플리케이션에 의해 수행될 수 있으며, 여기서 클라이언트 장치와 서버는 통신 모듈을 경유하여 네트워크(예컨대, 애플리케이션(222), 통신 모듈(218), 및 네트워크(150))를 통해 서로 통신한다. 또한, 애플리케이션은 제1 메모리 회로에 저장된 커맨드를 포함할 수 있고, 서버는 제2 메모리 회로에 저장된 명령어를 포함하는 가상 임베딩 엔진을 통해 애플리케이션을 호스팅할 수 있으며, 클라이언트 장치 및 서버는 참조 프레임 데이터베이스(예컨대, 메모리 회로(220), 가상 임베딩 엔진(242), 및 참조 프레임 데이터베이스(252))에 데이터를 저장하고 이로부터 데이터를 검색할 수 있다. 메모리 회로 내의 명령어는 프로세서 회로(예컨대, 프로세서 회로(212))에 의해 실행되어, 클라이언트 장치 및 서버로 하여금 방법(700)의 단계 중 하나 이상을 적어도 부분적으로 수행하게 할 수 있다. 일부 실시예에서, 가상 임베딩 엔진은 본 명세서에 개시된 바와 같은 분할 툴 및 기하학적 연출 툴(예컨대, 분할 툴(244) 및 기하학적 연출 툴(246))을 포함한다. 본 개시에 따른 방법은, 방법(700)의 적어도 하나의 단계를 포함할 수 있고, 방법(700)의 하나 이상의 단계는 상이한 순서로, 시간적으로 중첩되게, 동시에, 준동시로(quasi-simultaneously) 또는 적어도 부분적으로 시간적으로 중첩되게 수행될 수도 있다.
단계(702)는 클라이언트 장치에서, 사용자의 제1 이미지를 캡처하는 것을 포함하며, 제1 이미지는 사용자 착용가능 아이템(user-wearable item)에 대한 참조 토큰을 포함한다. 일부 실시예에서, 사용자-착용 가능한 아이템은 안경, 의류(예컨대, 모자), 보석, 메이크업 등을 포함할 수 있다.
단계(704)는 클라이언트 장치에서, 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이하는 것을 포함한다.
단계(706)는 사용자로부터, 디스플레이 상의 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 것을 포함한다.
단계(708)는 제1 이미지를 분할하여 사용자의 인상(physiognomy)의 부분을 포함하는 배경으로부터 참조 토큰을 분리하는 것을 포함한다. 예를 들어, 일부 실시예에서 사용자의 인상의 부분은 사용자의 얼굴, 사용자의 머리, 팔, 다리, 손목, 손, 손가락 등을 포함할 수 있다. 일부 실시예에서, 단계(708)는 제1 이미지에서 참조 토큰 픽셀을 식별하는 것과, 참조 토큰 픽셀을 분할하는 것과, 참조 토큰 픽셀의 색상을 이들의 위치에 따라 배경 색상 또는 선택된 사용자 착용 가능 아이템의 색상으로 대체하는 것을 포함한다.
단계(710)는 제1 이미지 내의 참조 토큰에 대한 부문을 사용자의 제2 이미지 내의 선택된 사용자 착용가능 아이템의 이미지로 대체하는 것을 포함한다. 일부 실시예에서, 단계(710)는 참조 토큰 픽셀을 가상 물체 픽셀로 대체하는 것을 포함하며, 여기서 가상 토큰 픽셀은 참조 프레임 데이터베이스로부터 선택되고 기하학적 연출 툴에 의해 방향 및 위치에 대해 수정된다. 일부 실시예에서, 단계(710)는 기하학적 연출 툴 및 내부 모델을 사용하여 참조 토큰의 방향 및 위치를 결정하는 것을 포함한다. 일부 실시예에서, 단계(710)는 참조 토큰의 내부 모델을 형성하고 참조 토큰의 다수의 위치 및 방향을 시뮬레이션하는 것을 포함한다. 일부 실시예에서, 단계(710)는 단계(708)에서 분할 툴에 의해 제공되는 마스크와 가장 잘 매칭되는(또는 임계값 내에서 더 잘 매칭되는) 하나 이상의 위치 및 방향을 선택하는 것을 포함한다. 일부 실시예에서, 참조 토큰의 위치 및 방향이 결정되면, 단계(710)는 참조 토큰과 매칭되도록 선택된 사용자 착용가능 아이템(예컨대, 가상 객체)의 이미지를 위치시키고 배향시키는 것을 포함한다. 일부 실시예에서, 단계(710)는 픽셀 마스크의 픽셀을 선택된 사용자 착용가능 아이템으로부터의 대응하는 픽셀로 대체하는 것을 더 포함한다.
단계(712)는 클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이하는 단계를 포함한다.
도 8은 일부 실시예에 따른, 서버로부터 증강 현실 시착 인터페이스를 호스팅하기 위한 방법(800)의 단계를 예시하는 흐름도이다. 일부 실시예에서, 방법(800)의 단계들 중 적어도 하나 이상은 본 명세서에 개시된 아키텍처(예컨대, 클라이언트 장치(110), 서버(130), 및 아키텍처(100))의 서버 또는 클라이언트 장치와 같은 하나 이상의 장치에 의해 수행될 수 있다. 따라서, 일부 실시예에서, 방법(800)의 단계들 중 적어도 하나 이상은, 서버에 의해 호스팅되고 클라이언트 장치에서 실행되는 애플리케이션에 의해 수행될 수 있으며, 여기서 클라이언트 장치와 서버는 통신 모듈을 경유하여 네트워크(예컨대, 애플리케이션(222), 통신 모듈(218), 및 네트워크(150))를 통해 서로 통신한다. 또한, 애플리케이션은 제1 메모리 회로에 저장된 커맨드를 포함할 수 있고, 서버는 제2 메모리 회로에 저장된 명령어를 포함하는 가상 임베딩 엔진을 통해 애플리케이션을 호스팅할 수 있으며, 클라이언트 장치 및 서버는 참조 프레임 데이터베이스(예컨대, 메모리 회로(220), 가상 임베딩 엔진(242), 및 참조 프레임 데이터베이스(252))에 데이터를 저장하고 이로부터 데이터를 검색할 수 있다. 메모리 회로 내의 명령어는 프로세서 회로(예컨대, 프로세서 회로(212))에 의해 실행되어, 클라이언트 장치 및 서버로 하여금 방법(800)의 단계 중 하나 이상을 적어도 부분적으로 수행하게 할 수 있다. 일부 실시예에서, 가상 임베딩 엔진은 본 명세서에 개시된 바와 같은 분할 툴 및 기하학적 연출 툴(예컨대, 분할 툴(244) 및 기하학적 연출 툴(246))을 포함한다. 본 개시에 따른 방법은, 방법(800)의 적어도 하나의 단계를 포함할 수 있고, 방법(800)의 하나 이상의 단계는 상이한 순서로, 시간적으로 중첩되게, 동시에, 준동시로(quasi-simultaneously) 또는 적어도 부분적으로 시간적으로 중첩되게 수행될 수도 있다.
단계(802)는 클라이언트 장치에서, 사용자의 제1 이미지를 수신하는 것을 포함하며, 제1 이미지는 사용자 착용가능 아이템(user-wearable item)에 대한 참조 토큰을 포함한다. 일부 실시예에서, 사용자-착용 가능한 아이템은 안경, 의류(예컨대, 모자), 보석, 메이크업 등을 포함할 수 있다.
단계(804)는 데이터베이스에 저장된 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이를 위해 클라이언트 장치에 제공하는 것을 포함한다.
단계(806)는 사용자로부터, 디스플레이 상의 안경들 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 것을 포함한다.
단계(808)는 클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이를 위해 제공하는 것을 포함하며, 제2 이미지는 선택된 사용자 착용가능 아이템의 이미지로 대체된 참조 토큰의 부문을 갖는다. 일부 실시예에서, 단계(808)는 참조 토큰에 대한 부문을 식별하기 위해 기하학적 연출 엔진에 의해 제공된 사용자 머리의 위치 및 방향에 기초하여 제1 이미지 내의 픽셀을 선택하는 것을 더 포함한다. 일부 실시예에서, 단계(808)는 제1 이미지로부터 복수의 픽셀을 선택하고 참조 토큰에 대한 부문을 식별하기 위한 마스크를 형성하는 것을 더 포함한다. 일부 실시예에서, 단계(808)는 기하학적 연출 툴로 참조 토큰의 방향 및 위치를 결정하는 것과, 참조 토큰의 방향 및 위치에 기초하여 제1 이미지 내의 참조 토큰의 부문을 선택된 사용자 착용가능 아이템의 이미지로 대체하는 것을 더 포함한다. 일부 실시예에서, 단계(808)는, 참조 토큰을 매칭시키고 제1 이미지 내의 참조 토큰에 대한 부문을 대체하기 위해 선택된 사용자 착용가능 아이템의 이미지를 배치하고 배향시키는 것을 더 포함한다. 일부 실시예에서, 사용자 착용가능 아이템에 대한 참조 토큰은 사용자의 인상의 부분에 맞는 알려진 물체이다. 따라서, 단계(808)는 제1 이미지 내의 알려진 물체의 2차원 투영에 기초하여 사용자의 머리의 모델을 획득하는 것과, 선택된 사용자 착용가능 아이템의 3차원 모델을 사용자의 머리의 모델에 중첩시키는 것을 포함할 수 있다.
단계(810)는 클라이언트 장치로부터 선택된 사용자 착용가능 아이템에 대한 요청을 수신하는 것을 포함한다.
하드웨어 개요
도 9는 도 1의 사용자 장치(110) 및 서버(130)가 구현될 수 있는 예시적인 컴퓨터 시스템(900)을 예시하는 블록도이다. 특정 양태에서, 컴퓨터 시스템(900)은 전용 서버에서, 또는 다른 엔티티에 통합되거나 또는 다수의 엔티티에 걸쳐 분산된 하드웨어 또는 소프트웨어와 하드웨어의 조합을 사용하여 구현될 수 있다.
컴퓨터 시스템(900)은 정보를 전달하기 위한 버스(908) 또는 다른 통신 메커니즘과, 정보를 처리하기 위해 버스(908)와 연결된 프로세서(902)를 포함한다. 예를 들어, 컴퓨터 시스템(900)은 하나 이상의 프로세서 회로(902)로 구현될 수 있다. 프로세서 회로(902)는 범용 마이크로프로세서 회로, 마이크로컨트롤러, 디지털 신호 프로세서 회로(Digital Signal Processor)(DSP), 주문형 집적 회로(Application Specific Integrated Circuit)(ASIC), 필드 프로그램 가능 게이트 어레이(Field Programmable Gate Array)(FPGA), 프로그램 가능 로직 디바이스(Programmable Logic Device)(PLD), 제어기, 상태 머신, 게이트 로직, 이산 하드웨어 컴포넌트, 또는 정보의 계산 또는 다른 조작을 수행할 수 있는 임의의 다른 적절한 엔티티일 수 있다.
컴퓨터 시스템(900)은 하드웨어 이외에, 문제의 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예컨대, 랜덤 액세스 메모리(Random Access Memory) 회로(RAM), 플래시 메모리 회로, 판독 전용 메모리(Read-Only Memory) 회로(ROM), 프로그램 가능 판독 전용 메모리(Programmable Read-Only Memory)(PROM), 소거 가능 PROM(Erasable PROM)(EPROM), 레지스터, 하드 디스크, 이동식 디스크, CD-ROM, DVD, 또는 프로세서(902)에 의해 실행될 정보 및 명령어를 저장하기 위해 버스(908)에 연결된 임의의 다른 적절한 저장 장치와 같은 포함된 메모리 회로에 저장된, 프로세서 회로 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 프로세서 회로(902) 및 메모리 회로(904)는 특수 목적 로직 회로에 의해 보완되거나 이에 통합될 수 있다.
명령어는 메모리(904)에 저장되고 하나 이상의 컴퓨터 프로그램 제품, 즉, 컴퓨터 시스템(900)에 의한 실행을 위해 또는 컴퓨터 시스템(900)의 동작을 제어하기 위해 컴퓨터 판독가능 매체에 인코딩된 컴퓨터 프로그램 명령어의 하나 이상의 모듈에서 그리고 이것으로 제한되는 것은 아니지만 데이터 지향 언어(예컨대, SQL, dBase), 시스템 언어(예컨대, C, Objective-C, C++, 어셈블리), 아키텍처 언어(예컨대, Java, .NET) 및 애플리케이션 언어(예컨대, PHP, Ruby, Perl, Python)와 같은 컴퓨터 언어를 비롯하여 다업자에게 잘 알려진 임의의 방법에 따라, 구현될 수 있다. 명령어는 또한 어레이 언어, 국면 지향(aspect-oriented) 언어, 어셈블리 언어, 저작 언어, 커맨드 라인 인터페이스 언어, 컴파일된 언어, 동시 언어, 중괄호(curly-bracket) 언어, 데이터플로우 언어, 데이터 구조화된 언어, 선언 언어, 난해(esoteric) 언어, 확장 언어, 4 세대 언어, 함수형 언어들, 대화 모드 언어, 인터프리티드 언어, 반복 언어, 목록 기반 언어, 리틀 언어들, 로직 기반 언어, 기계 언어, 매크로 언어, 메타프로그래밍 언어, 멀티패러다임 언어, 수치 분석, 비영어 기반 언어, 객체 지향 클래스 기반 언어, 객체 지향 프로토타입 기반 언어, 오프-사이드 규칙 언어, 절차 언어, 반사 언어, 규칙 기반 언어, 스크립팅 언어, 스택 기반 언어, 동기 언어, 구문 처리 언어, 시각 언어, 워스(wirth) 언어 및 xml-기반 언어와 같은 컴퓨터 언어로 구현될 수 있다. 메모리 회로(904)는 또한 프로세서 회로(902)에 의해 실행될 명령어의 실행 동안 임시 변수 또는 다른 중간 정보를 저장하기 위해 사용될 수 있다.
본명세서에서 논의된 바와 같은 컴퓨터 프로그램은 반드시 파일 시스템의 파일에 대응하는 것은 아니다. 프로그램은 다른 프로그램 또는 데이터(예를 들면, 마크업 언어 문서에 저장된 하나 이상의 스크립트)를 보유하는 파일의 일부분, 문제의 프로그램에 전용된 단일 파일, 또는 다수의 조정된 파일(예를 들면, 하나 이상의 모듈, 서브 프로그램 또는 코드의 부분을 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터에서 또는 한 장소에 위치된 여러 컴퓨터에서 실행되도록 배치될 수 있거나 또는 여러 장소에 걸쳐 분산되고 통신 네트워크에 의해 상호연결될 수 있다. 본 명세서에 설명된 프로세스 및 로직 흐름은 입력 데이터에 대해 동작하여 출력을 생성함으로써 기능을 수행할 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램 가능 프로세서 회로에 의해 수행될 수 있다.
컴퓨터 시스템(900)은 정보 및 명령어를 저장하기 위해 버스(908)에 연결된 자기 디스크 또는 광학 디스크와 같은 데이터 저장 장치(906)를 더 포함한다. 컴퓨터 시스템(900)은 입력/출력 모듈(910)을 통해 다양한 장치에 연결될 수 있다. 입력/출력 모듈(910)은 임의의 입력/출력 모듈일 수 있다. 예시적인 입력/출력 모듈(910)은 USB 포트와 같은 데이터 포트를 포함한다. 입력/출력 모듈(910)은 통신 모듈(912)에 연결하도록 구성된다. 예시적인 통신 모듈(912)은 이더넷 카드 및 모뎀과 같은 네트워킹 인터페이스 카드를 포함한다. 특정 양태에서, 입력/출력 모듈(910)은 입력 장치(914) 및/또는 출력 장치(916)와 같은 복수의 장치에 연결하도록 구성된다. 예시적인 입력 장치(914)는 사용자가 컴퓨터 시스템(900)에 입력을 제공할 수 있는 키보드 및 포인팅 장치(예컨대, 마우스 또는 트랙볼)를 포함한다. 촉각 입력 장치, 시각 입력 장치, 오디오 입력 장치 또는 뇌-컴퓨터 인터페이스 장치와 같은 다른 종류의 입력 장치(914)가 사용자와의 상호작용을 제공하기 위해 사용될 수도 있다. 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백, 예를 들면, 시각 피드백, 청각 피드백 또는 촉각 피드백일 수 있고; 사용자로부터의 입력은 음향, 소리 또는 촉각, 또는 뇌파 입력을 비롯한 임의의 형태로 수신될 수 있다. 예시적인 출력 장치(916)는 사용자에게 정보를 디스플레이하기 위한 LCD(liquid crystal display) 또는 발광 다이오드(light-emitting diode)(LED) 디스플레이와 같은 디스플레이 장치를 포함한다.
본 개시의 하나의 양태에 따르면, 사용자 장치(110) 및 서버(130)는 프로세서(902)가 메모리(904)에 포함된 하나 이상의 명령어의 하나 이상의 시퀀스를 실행하는 것에 응답하여 컴퓨터 시스템(900)을 사용하여 구현될 수 있다. 이러한 명령어는 데이터 저장 장치(906)와 같은 다른 머신 판독 가능 매체로부터 메모리 회로(904) 내로 판독될 수 있다. 메인 메모리 회로(904)에 포함된 명령어 시퀀스의 실행은 프로세서 회로(902)로 하여금 본 명세서에 설명된 프로세스 단계를 수행하게 한다. 다중 처리 배열의 하나 이상의 프로세서 회로는 또한 메모리 회로(904)에 포함된 명령어의 시퀀스를 실행하기 위해 사용될 수 있다. 대안적인 양태에서, 고정 배선 회로가 소프트웨어 명령어 대신에 또는 소프트웨어 명령어와 조합하여 사용되어 본 개시내용의 다양한 양태를 구현할 수 있다. 따라서, 본 개시내용의 양태는 하드웨어 회로와 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.
본 명세서에 설명된 대상의 다양한 양태는 (예컨대, 데이터 서버로서) 백 엔드 컴포넌트를 포함하는, 또는 미들웨어 컴포넌트(예컨대, 애플리케이션 서버)를 포함하는, 또는 프론트 엔트 컴포넌트, 예를 들어, 사용자가 본 명세서에 설명된 주제의 구현과 상호작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 갖는 클라이언트 컴퓨터를 포함하는 컴퓨팅 시스템, 또는 하나 이상의 그러한 백 엔드, 미들웨어 또는 프론트 엔드 컴포넌트의 임의의 조합에서 구현될 수 있다. 시스템의 컴포넌트는 임의의 디지털 데이터 통신의 형태 또는 매체(예컨대, 통신 네트워크)에 의해 상호연결될 수 있다. 통신 네트워크(예컨대, 네트워크(150))는, 예를 들면, LAN, WAN 및 인터넷 등 중 임의의 하나 이상을 포함할 수 있다. 또한, 네트워크는 버스 네트워크, 스타 네트워크, 링 네트워크, 메시 네트워크, 스타 버스 네트워크, 트리 또는 계층 네트워크 등을 포함하는 이하의 네트워크 토폴로지 중 어느 하나 이상을 포함할 수 있지만 이에 제한되지는 않는다. 통신 모듈은, 예를 들어 모뎀 또는 이더넷 카드를 포함할 수 있다.
컴퓨터 시스템(900)은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며 전형적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 생긴다. 컴퓨터 시스템(900)은, 예를 들어, 제한 없이, 데스크톱 컴퓨터, 랩톱 컴퓨터 또는 태블릿 컴퓨터일 수 있다. 컴퓨터 시스템(900)은 또한 다른 장치, 예를 들면, 제한 없이, 이동 전화, PDA, 이동 오디오 플레이어, 글로벌 포지셔닝 시스템(Global Positioning System)(GPS) 수신기, 비디오 게임 콘솔 및/또는 텔레비전 셋톱 박스에서도 구현될 수 있다.
본 명세서에서 사용되는 것으로 "머신 판독 가능 저장 매체" 또는 "컴퓨터 판독 가능 매체"는 명령어를 실행을 위해 프로세서회로(902)에 제공하는데 참여하는 임의의 매체 또는 매체들을 지칭한다. 그러한 매체는 이것으로 제한되는 것은 아니지만, 비휘발성 매체, 휘발성 매체 및 전송 매체를 비롯한, 많은 형태를 취할 수 있다. 비휘발성 매체는, 예를 들어, 데이터 저장 장치(906)와 같은 광학 또는 자기 디스크를 포함한다. 휘발성 매체는 메모리(904)와 같은 다이나믹 메모리를 포함한다. 전송 매체는 버스(908)를 포함하는 와이어를 비롯한 동축 케이블, 구리 와이어 및 광섬유를 포함한다. 머신 판독 가능 매체의 일반적인 형태는, 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 임의의 다른 자기 매체, CD-ROM, DVD, 임의의 다른 광학 매체, 펀치 카드, 페이퍼 테이프, 구멍 패턴을 갖는 임의의 다른 물리적 매체, RAM, PROM 및 EPROM, FLASH EPROM, 임의의 다른 메모리 회로 칩 또는 카트리지, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다. 머신 판독 가능 저장 매체는 머신 판독 가능 저장 장치, 머신 판독 가능 저장 기판, 메모리 회로 장치, 머신 판독 가능 전파 신호에 영향을 미치는 재료의 조성, 또는 이들 중 하나 이상의 조합일 수 있다.
본 명세서에 사용된 바와 같이, 일련의 아이템이 앞에 오는 "~중 적어도 하나"라는 문구는 아이템 중 임의의 아이템을 분리하는 "및" 또는 "또는"이라는 용어에 의해, 리스트의 각각의 멤버(즉, 각각의 아이템)가 아닌 전체로서 리스트를 수식한다. "~중 적어도 하나"라는 문구는 적어도 하나의 아이템의 선택을 요구하지 않으며; 오히려, 그 문구는 아이템 중 적어도 하나의 임의의 아이템, 및/또는 아이템의 임의의 조합 중 적어도 하나 및/또는 각각의 아이템 중 적어도 하나를 포함하는 의미를 가능하게 한다. 예로서, "A, B 및 C 중 적어도 하나" 또는 "A, B 또는 C 중 적어도 하나"라는 문구는 각각 A만, B만 또는 C만; A, B 및 C의 임의의 조합; 및/또는 각각의 A, B 및 C 중 적어도 하나를 지칭한다.
"구비하다", "가지고 있다" 등의 용어가 설명 또는 청구항에서 사용되는 한, 그러한 용어는 "포함하다"가 청구항에서 전이 단어로서 사용될 때 해석되는 것처럼 "포함하다"라는 용어와 유사한 방식으로 포괄적인 것으로 의도된다. 본 명세서에서 "예시적인"이라는 단어는 "예, 사례 또는 예시로서 역할하는 것"을 의미하도록 사용된다. 본 명세서에서 "예시적인"으로 설명된 임의의 실시예는 반드시 다른 실시예보다 바람직하거나 유리한 것으로 해석되는 것은 아니다.
요소를 단수로 언급하는 것은, 특별히 언급되지 않는 한, "하나 및 하나만"을 의미하기 보다는 오히려 "하나 이상"을 의미하는 것으로 의도된다. 관련 기술분야의 통상의 기술자에게 알려지거나 또는 나중에 알려지게 되는 본 개시내용 전체에 걸쳐 설명된 다양한 구성의 요소에 대한 모든 구조적 및 기능적 등가물은 본 명세서에서 참조 문헌으로 명시적으로 포함되고 대상 기술에 포함되는 것으로 의도된다. 더욱이, 본 명세서에서 개시된 어떠한 것도 그러한 개시내용이 위의 설명에서 명시적으로 언급되었는지에 관계없이 공공에 헌정하려는 것으로 의도되지 않는다.
본 명세서는 많은 세부 사항을 포함하지만, 이들은 청구될 수 있는 범위에 관한 제한으로서 해석되기 보다는 오히려 대상의 특정 구현의 설명으로서 해석되어야 한다. 별도의 구현의 맥락에서 본 명세서에 설명되는 특정 특징은 또한 단일 구현에서 조합하여 구현될 수 있다. 이와 반대로, 단일 구현의 맥락에서 설명되는 다양한 특징은 또한 다수의 구현에서 별개로 또는 임의의 적합한 하위 조합으로 구현될 수 있다. 더욱이, 특징은 특정 조합에서 작용하는 것으로 위에서 설명되고 심지어는 초기에 이와 같이 청구될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징은 일부 경우에 그 조합으로부터 삭제될 수 있으며, 청구된 조합은 하위 조합 또는 하위 조합의 변형에 관한 것일 수 있다.
본 명세서의 대상은 특정 양태의 관점에서 설명되었지만, 다른 양태가 구현될 수 있고 첨부한 청구범범위 내에 있다. 예를 들어, 동작이 도면에서 특정 순서로 묘사되지만, 이것은 그러한 동작이 도시된 특정 순서대로 또는 순차적인 순서대로 수행되는 것 또는 예시된 모든 동작이 수행되어 바람직한 결과를 달성하는 것을 요구하는 것처럼 이해되어서는 안된다. 청구항에서 언급된 행위는 상이한 순서로 수행될 수 있으며 그럼에도 바람직한 결과를 달성할 수 있다. 하나의 예로서, 첨부 도면에 도시된 프로세스는 바람직한 결과를 달성하기 위해 도시된 특정 순서 또는 순차적인 순서를 반드시 필요로 하지는 않는다. 특정 상황에서, 멀티태스킹 및 병렬 처리가 유리할 수 있다. 게다가, 위에서 설명된 양태에서 다양한 시스템 컴포넌트의 분리가 모든 양태에서 그러한 분리를 필요로 하는 것처럼 이해되지 않아야 하며, 설명된 프로그램 컴포넌트 및 시스템은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 또는 다수의 소프트웨어 제품으로 패키징될 수 있다는 것을 이해해야 한다. 다른 변형은 다음의 청구범위 내에 있다.

Claims (20)

  1. 컴퓨터로 구현되는 방법으로서,
    클라이언트 장치에서, 사용자의 제1 이미지를 캡처하는 단계 - 상기 제1 이미지는 사용자 착용가능 아이템(user-wearable item)에 대한 참조 토큰(reference token)을 포함함 - 와,
    상기 클라이언트 장치에서, 상기 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이하는 단계와,
    상기 사용자로부터, 디스플레이 상의 상기 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 단계와,
    상기 제1 이미지를 분할하여 상기 사용자의 인상(physiognomy)의 부분을 포함하는 배경으로부터 상기 참조 토큰을 분리하는 단계와,
    상기 제1 이미지 내의 상기 참조 토큰에 대한 부문(segment)을 상기 사용자의 제2 이미지 내의 상기 선택된 사용자 착용가능 아이템에 대한 이미지로 대체하는 단계와,
    상기 클라이언트 장치에서, 상기 사용자의 상기 제2 이미지를 디스플레이하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  2. 제1항에 있어서,
    상기 사용자의 상기 제1 이미지 및 상기 사용자의 상기 제2 이미지는 시간대별 사용자 움직임을 포함하고, 상기 방법은 상기 시간대별 사용자 움직임의 비디오를 디스플레이하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  3. 제1항에 있어서,
    상기 사용자의 인상의 상기 부분은 상기 사용자의 얼굴이고, 상기 제1 이미지를 분할하는 단계는 상기 참조 토큰의 알려진 치수에 기초하여 상기 사용자의 얼굴의 크기를 결정하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  4. 제1항에 있어서,
    상기 제1 이미지를 분할하여 상기 참조 토큰을 분리하는 단계는 상기 참조 토큰에 속하는 상기 제1 이미지 내의 적어도 하나의 픽셀을 결정하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  5. 제1항에 있어서,
    상기 제1 이미지를 분할하여 상기 참조 토큰을 분리하는 단계는 참조 토큰 컬러에 기초하여 상기 제1 이미지에서 픽셀을 선택하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  6. 제1항에 있어서,
    상기 사용자 착용가능 아이템은 안경이고, 상기 참조 토큰의 부문을 대체하는 단계는 상기 안경에서 렌즈 유형을 바꾸는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  7. 제1항에 있어서,
    상기 사용자 착용가능 아이템에 대한 상기 참조 토큰은 상기 제1 이미지의 기하학적 피처(geometric feature)의 스케일을 나타내는 상기 사용자 착용가능 아이템의 부분을 포함하고, 상기 사용자의 인상의 상기 부분의 복수의 해부학적 피처의 크기 및 상대적 위치를 결정하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  8. 제1항에 있어서,
    상기 사용자의 상기 제1 이미지를 캡처하는 단계는 상기 제1 이미지가 에러를 갖는 경우 상기 사용자에게 새로운 이미지 캡처를 요청하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  9. 제1항에 있어서,
    상기 사용자에게, 상기 참조 토큰과 연관된 식별 코드를 요청하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  10. 제1항에 있어서,
    상기 사용자로부터, 상기 선택된 사용자 착용가능 아이템에 대한 요청을 수신하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  11. 컴퓨터로 구현되는 방법으로서,
    클라이언트 장치로부터, 사용자의 제1 이미지를 수신하는 단계 - 상기 제1 이미지는 사용자 착용가능 아이템에 대한 참조 토큰을 포함함 - 와,
    데이터베이스에 저장된 상기 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이를 위해 상기 클라이언트 장치에 제공하는 단계와,
    상기 사용자로부터, 디스플레이 상의 상기 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하는 단계와,
    클라이언트 장치에서, 사용자의 제2 이미지를 디스플레이를 위해 제공하는 단계 - 상기 제2 이미지는 상기 선택된 사용자 착용가능 아이템에 대한 이미지로 대체된 상기 참조 토큰에 대한 부문을 가짐 - 와,
    상기 클라이언트 장치로부터 상기 선택된 사용자 착용가능 아이템에 대한 요청을 수신하는 단계를 포함하는,
    컴퓨터로 구현된 방법.
  12. 제11항에 있어서,
    상기 참조 토큰에 대한 부문을 식별하기 위해 기하학적 연출 엔진에 의해 제공된 상기 사용자의 인상의 부분의 추정된 위치 및 방향에 기초하여 상기 제1 이미지 내의 픽셀을 선택하는 단계를 더 포함하는,
    컴퓨터로 구현된 방법.
  13. 제11항에 있어서,
    상기 제1 이미지로부터 복수의 픽셀을 선택하고 상기 참조 토큰에 대한 상기 부문을 식별하기 위한 마스크를 형성하는 단계를 더 포함하는,
    컴퓨터로 구현된 방법.
  14. 제11항에 있어서,
    기하학적 연출 툴로 상기 참조 토큰의 방향 및 위치를 결정하는 단계와, 상기 참조 토큰의 방향 및 위치에 기초하여 상기 제1 이미지 내의 상기 참조 토큰에 대한 상기 부문을 선택된 사용자 착용가능 아이템의 이미지로 대체하는 단계를 더 포함하는,
    컴퓨터로 구현된 방법.
  15. 제11항에 있어서,
    상기 참조 토큰을 매칭시키고 상기 제1 이미지 내의 상기 참조 토큰에 대한 부문을 대체하도록 상기 선택된 사용자 착용가능 아이템의 이미지를 배치하고 배향시키는 단계를 더 포함하는,
    컴퓨터로 구현된 방법.
  16. 제11항에 있어서,
    사용자 착용가능 아이템에 대한 상기 참조 토큰은 상기 사용자의 얼굴에 맞는 알려진 물체이고, 상기 제1 이미지 내의 상기 알려진 물체의 2차원 투영에 기초하여 상기 사용자의 인상의 부분의 모델을 획득하는 단계와, 상기 사용자의 상기 인상의 상기 부분의 상기 모델 상에 상기 선택된 사용자 착용가능 아이템의 3차원 모델을 중첩시키는 단계를 더 포함하는,
    컴퓨터로 구현된 방법.
  17. 시스템으로서,
    명령어를 저장하는 메모리 회로와,
    상기 명령어를 실행하도록 구성된 프로세서 회로를 포함하되, 상기 명령어는 상기 시스템으로 하여금,
    클라이언트 장치에서, 사용자의 제1 이미지를 캡처하게 하고 - 상기 제1 이미지는 사용자 착용가능 아이템에 대한 참조 토큰을 포함함 - ,
    상기 클라이언트 장치에서, 상기 사용자에 대한 복수의 사용자 착용가능 아이템의 이미지를 디스플레이하게 하며,
    상기 사용자로부터, 디스플레이 상의 상기 사용자 착용가능 아이템 중 선택된 사용자 착용가능 아이템을 나타내는 입력을 수신하게 하고,
    상기 제1 이미지를 분할하여 상기 사용자의 인상의 부분을 포함하는 배경으로부터 상기 참조 토큰을 분리하게 하며,
    상기 제1 이미지 내의 상기 참조 토큰에 대한 부문을 상기 사용자의 제2 이미지 내의 상기 선택된 사용자 착용가능 아이템에 대한 이미지로 대체하게 하고,
    상기 클라이언트 장치에서, 상기 사용자의 상기 제2 이미지를 디스플레이하게 하는,
    시스템.
  18. 제17항에 있어서,
    상기 사용자의 상기 제1 이미지 및 상기 사용자의 상기 제2 이미지는 시간대별 사용자 움직임을 포함하고, 상기 프로세서 회로는 상기 시간대별 사용자 움직임의 비디오를 디스플레이하게 하는 명령어를 더 실행하는,
    시스템.
  19. 제17항에 있어서,
    상기 사용자의 인상의 상기 부분은 상기 사용자의 얼굴이고, 상기 제1 이미지를 분할하기 위해, 상기 프로세서 회로는 상기 참조 토큰의 알려진 치수에 기초하여 상기 사용자의 얼굴의 크기를 결정하게 하는 명령어를 실행하는,
    시스템.
  20. 제17항에 있어서,
    상기 제1 이미지를 분할하여 상기 배경으로부터 상기 참조 토큰을 분리하기 위해, 상기 프로세서 회로는 상기 참조 토큰에 속하는 상기 제1 이미지 내의 적어도 하나의 픽셀을 결정하는 명령어를 실행하는,
    시스템.
KR1020227039814A 2020-04-15 2021-04-09 참조 프레임을 사용하는 안경용 가상 시착 시스템 KR20230002738A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063010421P 2020-04-15 2020-04-15
US63/010,421 2020-04-15
PCT/US2021/026569 WO2021211374A1 (en) 2020-04-15 2021-04-09 Virtual try-on systems for spectacles using reference frames

Publications (1)

Publication Number Publication Date
KR20230002738A true KR20230002738A (ko) 2023-01-05

Family

ID=78082079

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227039814A KR20230002738A (ko) 2020-04-15 2021-04-09 참조 프레임을 사용하는 안경용 가상 시착 시스템

Country Status (7)

Country Link
US (1) US11676347B2 (ko)
EP (1) EP4136563A4 (ko)
KR (1) KR20230002738A (ko)
CN (1) CN115803750B (ko)
CA (1) CA3179919A1 (ko)
IL (1) IL297252A (ko)
WO (1) WO2021211374A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11488239B2 (en) * 2019-08-26 2022-11-01 Warby Parker Inc. Virtual fitting systems and methods for spectacles
CN114489404A (zh) * 2022-01-27 2022-05-13 北京字跳网络技术有限公司 一种页面交互方法、装置、设备以及存储介质
US20240005387A1 (en) * 2022-07-01 2024-01-04 Warby Parker Inc. Systems and methods for spectacle removal and virtual try-on

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2818775A (en) 1953-05-12 1958-01-07 Schneider Co Optische Werke Method of and apparatus for objectively testing optical systems
GB1042954A (en) 1962-06-22 1966-09-21 Rudolph Rodenstock Apparatus for measuring the power of spectacle lenses
US4007990A (en) 1975-05-23 1977-02-15 Acuity Systems, Incorporated Apparatus and method for measuring refractive properties of a sphero-cylindrical optical system
US4070115A (en) 1976-03-26 1978-01-24 Humphrey Instruments, Inc. Lens meter
US4090790A (en) 1976-07-08 1978-05-23 American Optical Corporation Apparatus for testing the refractive power(s) of lenses
JPS63131042A (ja) 1986-11-20 1988-06-03 Nikon Corp 自動レンズメ−タ
US5247341A (en) 1990-07-11 1993-09-21 Nidek Co., Ltd. Lensmeter for automatically measuring optical characteristic of a power lens
JP3161787B2 (ja) 1991-11-30 2001-04-25 株式会社ニデック レンズ屈折力分布観察装置
JP3226949B2 (ja) 1992-02-03 2001-11-12 株式会社トプコン レンズメータ
JP3150404B2 (ja) 1992-02-25 2001-03-26 株式会社トーメー 光学系における屈折力の測定方法および測定装置
JP3055836B2 (ja) 1992-03-31 2000-06-26 株式会社ニデック レンズメ−タ
US5379111A (en) 1992-04-30 1995-01-03 Nidek Co., Ltd. Lens meter
US5489978A (en) 1992-11-05 1996-02-06 Canon Kabushiki Kaisha Lens measuring apparatus
JPH07104222A (ja) 1993-10-05 1995-04-21 Mitsubishi Electric Corp 半導体光変調器
US5657710A (en) 1995-07-21 1997-08-19 Sara Lee Corporation Automatic garment manufacture
US5684576A (en) 1995-07-27 1997-11-04 Nidek Co., Ltd. Lens meter
US5682234A (en) 1995-07-27 1997-10-28 Nidek Co., Ltd. Lens meter
DE19632829A1 (de) 1995-08-14 1997-03-20 Max Prof Dr Maier Verfahren und Vorrichtung zur Bestimmung von Linsenparametern
ES2136541B1 (es) 1997-05-06 2000-08-01 Indo Int Sa Aparato para el centrado y bloqueo de un disco de lente oftalmica.
US5855074A (en) 1997-12-07 1999-01-05 Visionix Ltd. Methods and apparatus for measuring and mapping opthalmic elements
IL130465A0 (en) 1999-06-14 2000-06-01 Prolaser Ltd Method and apparatus for measuring power of an optical element for its mapping
EP1299787A4 (en) * 2000-05-18 2005-02-02 Visionix Ltd BRASS ADJUSTMENT SYSTEM AND USEFUL ADAPTATION PROCEDURES
JP3948202B2 (ja) 2000-10-03 2007-07-25 松下電工株式会社 避難仮想体験システム
US7016824B2 (en) 2001-02-06 2006-03-21 Geometrix, Inc. Interactive try-on platform for eyeglasses
DE60204495T2 (de) 2001-02-09 2006-03-16 Hoya Corp. Linsenmesser zur Messung der Eigenschaft eines Brillenglases oder einer Kontaktlinse
JP4646014B2 (ja) 2001-08-09 2011-03-09 株式会社ニデック レンズメータ
JP5362159B2 (ja) 2001-09-04 2013-12-11 株式会社ニデック レンズメータ
WO2005029158A2 (en) * 2003-09-12 2005-03-31 Neal Michael R Method of interactive system for previewing and selecting eyewear
JP4421332B2 (ja) 2004-02-27 2010-02-24 株式会社ニデック レンズメータ
JP4756828B2 (ja) 2004-04-27 2011-08-24 株式会社ニデック レンズメータ
FR2880118B1 (fr) 2004-12-23 2007-03-02 Essilor Int Procede et appareil de mesure locale des caracteristiques de refraction d'une lentille en un ou plusieurs points specifiques de cette lentille
KR101213996B1 (ko) 2005-11-02 2012-12-20 가부시키가이샤 니데크 렌즈 미터
US20110071804A1 (en) 2007-02-21 2011-03-24 Yiling Xie Method And The Associated Mechanism For 3-D Simulation Stored-Image Database-Driven Spectacle Frame Fitting Services Over Public Network
US7733468B2 (en) 2007-02-28 2010-06-08 Nidek Co., Ltd. Lens meter
DE102007057260A1 (de) 2007-11-26 2009-06-04 Stephan Reiß, Michael Conrad GbR (vertretungsberechtigter Gesellschafter: Stephan Reiß, 13125 Berlin Verfahren und Anordnung zur Bestimmung der optischen Abbildungsqualität von Gleitsichtgläsern
JP4793451B2 (ja) 2009-01-21 2011-10-12 ソニー株式会社 信号処理装置、画像表示装置、信号処理方法およびコンピュータプログラム
FR2945365B1 (fr) * 2009-05-11 2011-06-24 Acep France Procede et systeme de selection en ligne d'une monture de lunettes virtuelle
JP5657266B2 (ja) 2010-04-14 2015-01-21 株式会社メニコン 不正乱視矯正用コンタクトレンズ
US20120105799A1 (en) 2010-10-29 2012-05-03 Stewart Brett B Eyeglass System and Method
GB201102794D0 (en) * 2011-02-17 2011-03-30 Metail Ltd Online retail system
US20130088490A1 (en) 2011-04-04 2013-04-11 Aaron Rasmussen Method for eyewear fitting, recommendation, and customization using collision detection
TWI433049B (zh) 2011-04-07 2014-04-01 Claridy Solutions Inc 眼鏡虛擬試戴互動服務系統與方法
FR2984565A1 (fr) 2011-12-19 2013-06-21 Thomson Licensing Procede et dispositif d'estimation de la puissance optique des lentilles de verres correcteurs d'une paire de lunettes portee par un spectateur.
WO2013139814A2 (fr) 2012-03-19 2013-09-26 Fittingbox Modèle et procédé de production de modèle 3d photo-réalistes
EP2860507B1 (en) 2012-05-11 2017-04-19 Menicon Co., Ltd. Lens power measurement device and measurement method
US20130335416A1 (en) 2012-05-23 2013-12-19 1-800 Contacts, Inc. Systems and methods for generating a 3-d model of a virtual try-on product
US9286715B2 (en) 2012-05-23 2016-03-15 Glasses.Com Inc. Systems and methods for adjusting a virtual try-on
KR20140120713A (ko) 2013-04-04 2014-10-14 삼성디스플레이 주식회사 표시 장치 및 그 제조 방법
ES2886136T3 (es) 2013-06-06 2021-12-16 6 OVER 6 VISION Ltd Sistema para la medición del error de refracción de un ojo basado en la medición subjetiva de distancias
KR101821284B1 (ko) 2013-08-22 2018-01-23 비스포크, 인코포레이티드 커스텀 제품을 생성하기 위한 방법 및 시스템
WO2015036432A1 (en) 2013-09-11 2015-03-19 Novartis Ag Contact lens inspection system and method
EP2887311B1 (en) 2013-12-20 2016-09-14 Thomson Licensing Method and apparatus for performing depth estimation
US20150293382A1 (en) * 2014-04-09 2015-10-15 Pro Fit Optix, Inc. Method and System for Virtual Try-On and Measurement
US9996899B2 (en) 2014-05-08 2018-06-12 Glasses.Com Inc. Systems and methods for scaling an object
CN104217350B (zh) 2014-06-17 2017-03-22 北京京东尚科信息技术有限公司 实现虚拟试戴的方法和装置
KR20170080696A (ko) 2014-11-11 2017-07-10 브리엔 홀덴 비전 인스티튜트 재생된(제조된) 광학 장치의 품질을 결정하는 시스템 및 방법
KR101528132B1 (ko) 2014-11-13 2015-06-12 윤철주 모바일 디바이스를 이용한 안경렌즈의 도수 측정방법
WO2016109884A1 (en) 2015-01-05 2016-07-14 Valorbec Limited Partnership Automated recommendation and virtualization systems and methods for e-commerce
CN107408315B (zh) 2015-02-23 2021-12-07 Fittingbox公司 用于实时、物理准确且逼真的眼镜试戴的流程和方法
US10330566B2 (en) 2015-03-05 2019-06-25 Eyenetra, Inc. Methods and apparatus for small aperture lensometer
US10244175B2 (en) 2015-03-09 2019-03-26 Apple Inc. Automatic cropping of video content
IL306113A (en) 2015-05-10 2023-11-01 6 OVER 6 VISION Ltd Device, system and method for determining one or more optical parameters of a lens
US10670494B2 (en) 2015-05-10 2020-06-02 6 Over 6 Vision Ltd. Apparatus, system and method of determining one or more optical parameters of a lens
AU2016261275B2 (en) 2015-05-11 2021-02-18 6 Over 6 Vision Ltd. Apparatus, system and method of determining a pupillary distance
CN104809638B (zh) * 2015-05-20 2018-04-06 成都通甲优博科技有限责任公司 一种基于移动终端的眼镜虚拟试戴方法和系统
DE102015211879B4 (de) 2015-06-25 2018-10-18 Carl Zeiss Ag Vermessen von individuellen Daten einer Brille
EP3128362B1 (en) 2015-08-05 2023-10-04 Essilor International Method for determining a parameter of an optical equipment
US10606224B2 (en) 2015-09-14 2020-03-31 Tyco Integrated Security, LLC Device enabled identity authentication
DK3405767T3 (da) 2016-01-23 2022-09-12 6 OVER 6 VISION Ltd Fremgangsmåde til bestemmelse af en eller flere optiske parametre af en linse
US10036685B2 (en) 2016-05-18 2018-07-31 Jand, Inc. Fixtureless lensmeter and methods of operating same
FR3053509B1 (fr) * 2016-06-30 2019-08-16 Fittingbox Procede d’occultation d’un objet dans une image ou une video et procede de realite augmentee associe
US9990780B2 (en) 2016-10-03 2018-06-05 Ditto Technologies, Inc. Using computed facial feature points to position a product model relative to a model of a face
US10082682B2 (en) 2016-12-08 2018-09-25 Perfect Vision Technology (Hk) Ltd. Methods and systems for measuring human faces for fitting, selecting, and optimizing eyeglasses
WO2018191784A1 (en) * 2017-04-19 2018-10-25 SPEQS Limited Eyeglasses ordering system and digital interface therefor
US10777018B2 (en) 2017-05-17 2020-09-15 Bespoke, Inc. Systems and methods for determining the scale of human anatomy from images
EP3410178A1 (de) 2017-06-01 2018-12-05 Carl Zeiss Vision International GmbH Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung
CN109583285B (zh) 2017-09-29 2023-03-07 阿里巴巴集团控股有限公司 对象识别方法
US10643383B2 (en) 2017-11-27 2020-05-05 Fotonation Limited Systems and methods for 3D facial modeling
US10321820B1 (en) 2017-12-21 2019-06-18 Facebook Technologies, Llc Measuring optical properties of an eyewear device
KR20200110771A (ko) * 2018-01-18 2020-09-25 삼성전자주식회사 증강 현실 콘텐츠 조정 방법 및 장치
US10501048B2 (en) 2018-01-19 2019-12-10 Ford Global Technologies, Llc Seatbelt buckling detection
CN109727097A (zh) * 2018-12-29 2019-05-07 上海堃承信息科技有限公司 一种配镜方法、装置与系统
US10825260B2 (en) 2019-01-04 2020-11-03 Jand, Inc. Virtual try-on systems and methods for spectacles

Also Published As

Publication number Publication date
US20210327148A1 (en) 2021-10-21
EP4136563A4 (en) 2024-03-20
CN115803750A (zh) 2023-03-14
IL297252A (en) 2022-12-01
US11676347B2 (en) 2023-06-13
CA3179919A1 (en) 2021-10-21
CN115803750B (zh) 2024-01-30
WO2021211374A1 (en) 2021-10-21
EP4136563A1 (en) 2023-02-22

Similar Documents

Publication Publication Date Title
AU2021215179B2 (en) Virtual try-on systems and methods for spectacles
US9990780B2 (en) Using computed facial feature points to position a product model relative to a model of a face
US9842246B2 (en) Fitting glasses frames to a user
CN115803750B (zh) 使用参考框架的眼镜的虚拟试戴系统
US9418378B2 (en) Method and system for trying out a product in relation to a real world environment
KR20220049600A (ko) 안경용 가상 피팅 시스템 및 방법
US20170132842A1 (en) Augmented reality e-commerce for in store retail
JP2019102068A (ja) ユーザの身体的特徴に基づいた推薦システム
KR20180009391A (ko) 커스텀 제품을 생성하기 위한 방법 및 시스템
JP2014509758A (ja) リアルタイムの仮想反射
CN106651500B (zh) 基于空间反馈特征的视频图像识别技术和虚拟现实技术的网上购物系统
Welivita et al. Virtual product try-on solution for e-commerce using mobile augmented reality
Anand et al. Glass Virtual Try-On
Cheng et al. Mixed Reality for Virtual Jewellery Fitting
TW202123131A (zh) 用於推薦二維影像之系統及方法

Legal Events

Date Code Title Description
A201 Request for examination