IP Library Granted Patent US 10,825,260
Granted Patent B2
US 10,825,260 · App. 16/239,745 · Granted Nov 3, 2020

Virtual try-on systems and methods for spectacles

Inventors: David Goldberg (New York, NY); Michael Rakowski (Brooklyn, NY); Benjamin Cohen (New York, NY); Ben Hall (Brooklyn, NY); Brian Bernberg (Montclair, NJ); Hannah Zachritz (Brooklyn, NY)
Assignee: JAND, Inc.
G06T19/20G06T7/62G06T7/75H04N5/2256G06T2207/30201G06T2219/2004G06T2219/2016
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,825,260
App. No.
16/239,745
Granted
Nov 3, 2020
Kind
B2
Abstract

Various aspects of the subject technology relate to systems, methods, and machine-readable media for virtual try-on of items such as spectacles. A virtual try-on interface may be implemented at a server or at a user device, and may use collision detection between three-dimensional models of the spectacles and of a user's face and head to determine the correct size and position of the spectacles for virtual try-on. With the determined size and position, a virtual representation of the spectacles is superimposed on an image of the user.

Claims (55)

1. A computer-implemented method, comprising:

capturing, with a camera of an electronic device, an image of a face of a user;

obtaining, using a sensor of the electronic device, three-dimensional location information of the user;

obtaining a three-dimensional model of a pair of spectacles;

determining a position of a virtual representation of the spectacles based on the image and the three-dimensional location information;

determining a size of the virtual representation of the spectacles based on the image and the three-dimensional location information, by:

determining, using the three-dimensional location information, a physical size of the face of the user;

determining, using the image and the determined physical size of the face of the user, a size of the face of the user in image pixels;

determining a pixel size for each image pixel in the image based on the physical size of the face of the user and the size of the face of the user in image pixels; and

determining, based on a known size of the spectacles and the determined pixel size, the size of the virtual representation of the spectacles; and

displaying, with a display of the electronic device, a combined image including the image of the face of the user and the virtual representation of the spectacles with the determined size of the virtual representation of the spectacles and the determined position.

2. The computer-implemented method of claim 1 , wherein the size and the position of the virtual representation of the spectacles are respectively determined to accurately represent the spectacles in the combined image, as the spectacles would appear if physically placed on the face of the user.

3. The computer-implemented method of claim 1 , wherein determining the position of the virtual representation of the spectacles comprises intersecting the three-dimensional model of the spectacles with the three-dimensional location information of the user.

4. The computer-implemented method of claim 3 , wherein the intersecting comprises performing at least one collision detection operation between the three-dimensional model of the spectacles and the three-dimensional location information of the user.

5. The computer-implemented method of claim 4 , wherein performing the at least one collision detection operation comprises iteratively performing a plurality of collision detection operations between the three-dimensional model of the spectacles and the three-dimensional location information of the user, at a corresponding plurality of positions for the three-dimensional model of the spectacles.

6. The computer-implemented method of claim 5 , wherein iteratively performing the plurality of collision detection operations comprises iteratively determining the corresponding plurality of positions using a binary search operation.

7. The computer-implemented method of claim 4 , wherein the three-dimensional location information of the user comprises at least one of: a plurality of measurement point absolute three-dimensional locations, a three-dimensional model of the user, and a plurality of facial landmark absolute locations.

8. The computer-implemented method of claim 7 , wherein the sensor comprises an additional camera, the method further comprising:

generating, with a light source of the electronic device, a plurality of light beams, at least some of which are directed at the face of the user; and

capturing a second image using the additional camera, while the at least some of the light beams are directed at the face of the user.

9. The computer-implemented method of claim 8 , further comprising determining the plurality of measurement point absolute three-dimensional locations based on reflections of the at least some of the light beams in the captured second image.

10. The computer-implemented method of claim 1 , wherein the sensor comprises an additional camera, the method further comprising:

capturing an additional image of the user using the additional camera; and

generating the three-dimensional location information of the user based on a known distance between the camera and the additional camera and a parallax effect between the image and the additional image.

11. The computer-implemented method of claim 1 , wherein the sensor comprises at least one of a time-of-flight sensor, a laser range finder, a motion sensor, a proximity sensor, a structured light sensor, and an additional camera.

12. A computer-implemented method, comprising: capturing an image of a face of a user;

obtaining a three-dimensional model of the user at a time of capture of the image; obtaining a three-dimensional model of a pair of spectacles; determining a size and a position for a virtual representation of the spectacles based on the image, the three-dimensional model of the user at the time of capture of the image, and the three-dimensional model of the pair of spectacles, wherein determining the position of the virtual representation of the spectacles comprises performing a plurality of collision detection operations between the three-dimensional model of the user and the three-dimensional model of the pair of spectacles, with the three-dimensional model of the pair of spectacles at a plurality of test positions in a facial coordinate system having an origin at a facial landmark on the three-dimensional model of the user; and

displaying the virtual representation of the spectacles, with the determined size and at the determined position, overlaid on the image of the face of the user.

13. The computer-implemented method of claim 12 , wherein:

the origin of the facial coordinate system is at a sellion of the three-dimensional model of the user at the time of capture of the image;

an x axis of the facial coordinate system extends between a left side and a right side of the three-dimensional model of the user at the time of capture of the image, where a positive x axis extends from the origin toward the left side of the three-dimensional model of the user at the time of capture of the image;

a y axis of the facial coordinate system extends orthogonally to the x axis and between a top and a bottom of the three-dimensional model of the user at the time of capture of the image, where a positive y axis extends from the origin toward the top of the three-dimensional model of the user at the time of capture of the image; and

a z axis extends orthogonally to the x axis and the y axis between a front and a back of the three-dimensional model of the user at the time of capture of the image, where a positive z axis extends from the origin toward the front of the three-dimensional model of the user at the time of capture of the image.

14. The computer-implemented method of claim 13 , wherein each of the plurality of test positions in the facial coordinate system has a different y offset along the y axis, a zero x offset along the x axis, and a common z offset along the z axis.

15. The computer-implemented method of claim 14 , wherein the spectacles include an acetate frame.

16. The computer-implemented method of claim 13 , wherein each of the plurality of test positions in the facial coordinate system has a different z offset along the z axis, a zero x offset along the x axis, and a common y offset along the y axis.

17. The computer-implemented method of claim 16 , wherein the spectacles include metal frames having nose pads on adjustable arms that extend from the metal frames.

18. The computer-implemented method of claim 12 , wherein the plurality of test positions include at least one test position at which the three-dimensional model of the user at the time of capture of the image is not in contact with the three-dimensional model of the pair of spectacles, and wherein determining the position of the virtual representation of the spectacles comprises iteratively moving the at least one test position toward the origin of the facial coordinate system and performing the plurality of collision detection operations until a first contact between the three-dimensional model of the user at the time of capture of the image and the three-dimensional model of the pair of spectacles is detected.

19. The computer-implemented method of claim 12 , further comprising storing, at a server, three-dimensional models for a plurality of pairs of spectacles.

20. The computer-implemented method of claim 19 , further comprising:

determining, based on the three-dimensional model of the user and the three-dimensional model of the air of spectacles, that the pair of spectacles are mis-sized for the user;

identifying a different one of the pairs of spectacles based on the three-dimensional model of the user; and

providing a recommendation for the identified different one of the pairs of spectacles.

21. A system, comprising:

a server having a database storing three-dimensional models for a plurality of pairs of spectacles; and

a user device of a user, wherein the user device includes memory storing code that, when executed by a processor of the user device, causes the processor to:

capture an image of a face of the user;

obtain a three-dimensional location information of the user;

obtain, from the server, a three-dimensional model of a selected one of the pairs of spectacles;

determine a size and a position of a virtual representation of the selected one of the pairs of spectacles based on the image, the three-dimensional location information of the user, and the three-dimensional model of the selected one of the pairs of spectacles, wherein determination of the size of the virtual representation of the selected one of the pairs of spectacles includes:

determining, using the three-dimensional location information, a physical size of the face of the user;

determining, using the image and the determined physical size of the face of the user, a size of the face of the user in image pixels;

determining a pixel size for each image pixel in the image based on the physical size of the face of the user and the size of the face of the user in image pixels; and

determine, based on a known size of the spectacles and the determined pixel size, the size of the virtual representation of the spectacles; and

provide, for display, the virtual representation of the selected one of the pairs of spectacles, with the determined size of the virtual representation of the selected one of the pairs of spectacles and at the determined position, overlaid on the image of the face of the user.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Feb 23, 2024
From: COMERICA BANK, AS AGENT
To: WARBY PARKER INC.
Reel/Frame 066542/0295 →
ACKNOWLEDGMENT OF SECURITY INTEREST IN PATENTS Recorded Feb 21, 2024
From: WARBY PARKER INC. (FORMERLY KNOWN AS JAND, INC.)
To: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
Reel/Frame 066643/0946 →
SECURITY INTEREST Recorded Sep 30, 2022
From: WARBY PARKER INC.
To: COMERICA BANK, AS AGENT
Reel/Frame 061273/0803 →
CHANGE OF NAME Recorded Jul 21, 2021
From: JAND, INC.
To: WARBY PARKER INC.
Reel/Frame 056940/0852 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2020
From: GOLDBERG, DAVID; RAKOWSKI, MICHAEL; COHEN, BENJAMIN; HALL, BEN; BERNBERG, BRIAN; ZACHRITZ, HANNAH
To: JAND, INC.
Reel/Frame 052530/0954 →
Continuity (1)
Related Publication 20200219326A1 · Jul 9, 2020
Cited By (1)
US 12,694,442