IP Library Granted Patent US 11,523,055
Granted Patent B1
US 11,523,055 · App. 17/334,623 · Granted Dec 6, 2022

Super resolution/super field of view (FOV) digital photography

Inventors: Imran A. Chaudhri (San Francisco, CA); Ralph Brunner (Los Gatos, CA); Monique Relova (South San Francisco, CA)
Assignee: Humane, Inc.
H04N5/23232G06T3/4053
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 11,523,055
App. No.
17/334,623
Granted
Dec 6, 2022
Kind
B1
Abstract

Techniques are disclosed for creating scaled images with super resolution using neighborhood patches of pixels to provide higher resolution than traditional interpolation techniques. Also disclosed are techniques for creating super field-of-view (FOV) images of a scene created from previously captured and stored images of the scene that are stitched together with a current image of the scene, to generate an image of the scene that extends beyond the fixed FOV of the camera.

Claims (89)

1. A method comprising:

selecting an image region from a digital image for scaling;

for each pixel in the image region:

computing a distance measurement between the pixel and pixels in a plurality of neighborhood patches;

generating an ordered data structure where a value of the pixel occupies a specified position in the structure;

determining a closest matching neighborhood patch based on the distance measurements; and

storing values of one or more of the pixels in the closest matching neighborhood patch to other positions in the data structure.

2. The method of claim 1 , wherein selecting an image region from a digital image for scaling further comprising:

automatically identifying at least one object of interest in the digital image; and

automatically cropping the image region from the digital image.

3. The method of claim 2 , wherein the image region is automatically identified using at least one of saliency techniques or machine learning.

4. The method of claim 2 , wherein the ordered structure is an N x N grid of pixels and the specified position is a center pixel in the grid, where N is a positive integer greater than or equal to 3.

5. The method of claim 1 , further comprising:

downsampling a first set of sample images in two dimensions to create a second set of sample images that have lower resolution than the first set of sample images;

dividing each sample image in the second set of sample images into a plurality of patches of pixels; and

storing the plurality of patches for use in determining the closest matching neighborhood patch based on the distance measurements.

6. The method of claim 5 , further comprising converting the first set of sample images to gray scale prior to downsampling.

7. The method of claim 5 , further comprising entropy coding the plurality of patches to reduce their size prior to storing.

8. The method of claim 5 , wherein the plurality of patches are normalized prior to storing.

9. The method of claim 1 , wherein computing a distance measurement between the pixel and pixels in a plurality of neighborhood patches, further comprises:

determining a location and orientation of a field of view (FOV) of the digital image; and

selecting a subset of the plurality of patches for computing the distance measurements based on the location and orientation of the FOV.

10. A method comprising:

automatically capturing, using a digital camera having a fixed field of view (FOV), a first digital image of an object at a first time and at a first location that is a first distance from the object;

storing the first digital image with a timestamp and FOV direction data;

inferring user intent to capture a second digital image of the object at a second location that is closer in distance to the object than the first location;

capturing, using the digital camera, the second image of the object at the second location;

retrieving, using the timestamp and FOV direction data, the stored first digital image;

determining an extended portion of the first digital image that is missing from the second digital image;

extracting the extended portion from the first digital image;

scaling the extracted, extended portion to the scale of the second image; and

stitching the scaled, extended portion to the second image to create a third image that extends beyond the fixed FOV of the digital camera at the second location.

11. The method of claim 10 , wherein the FOV direction data includes a location of the digital camera provided by a global navigation satellite receiver and an orientation of a FOV of the digital camera at the location from at least one inertial sensor or a magnetometer embedded in or coupled to the digital camera.

12. The method of claim 10 , wherein the user intent to capture a second digital image of the object at a second location that is closer in distance to the object than the first location is inferred based on context data derived from at least one of user input or sensor input.

13. The method of claim 12 , wherein the user input is speech input.

14. The method of claim 12 , wherein the context data includes locations where the user previously captured a digital image.

15. The method of claim 10 , further comprising:

projecting, with a laser projector, the third image on a surface.

16. The method of claim 15 , wherein the third image is one of a plurality of images projected on the surface, and the method further comprises:

receiving, with at least one of the digital camera or a three-dimensional sensor, an image of a user's finger performing a gesture in proximity to the projected images;

determining that the gesture indicates the user's intent to select the third image from the plurality of projected images; and

responsive to determining the user's intent to select the third image from the plurality of projected images, performing at least one action related to the third image.

17. A system comprising:

at least one processor;

memory storing instructions that when executed by the at least one processor, cause the at least one processor to perform operations comprising:

selecting an image region from a digital image for scaling;

for each pixel in the image region:

computing a distance measurement between the pixel and pixels in a plurality of neighborhood patches;

generating an ordered data structure where a value of the pixel occupies a specified position in the structure;

determining a closest matching neighborhood patch based on the distance measurements; and

storing values of one or more of the pixels in the closest matching neighborhood patch to other positions in the data structure.

18. The system of claim 17 , wherein selecting an image region from a digital image for scaling further comprising:

automatically identifying at least one object of interest in the digital image; and

automatically cropping the image region from the digital image.

19. The system of claim 18 , wherein the image region is automatically identified using at least one of saliency techniques or machine learning.

20. The system of claim 18 , wherein the ordered structure is an N x N grid of pixels and the specified position is a center pixel in the grid, where N is a positive integer greater than or equal to 3.

21. The system of claim 18 , the operations further comprising:

downsampling a first set of sample images in two dimensions to create a second set of sample images that have lower resolution than the first set of sample images;

dividing each sample image in the second set of sample images into a plurality of patches of pixels; and

storing the plurality of patches for use in determining the closest matching neighborhood patch based on the distance measurements.

22. The system of claim 21 , the operations further comprising converting the first set of sample images to gray scale prior to downsampling.

23. The system of claim 21 , the operations further comprising entropy coding the plurality of patches to reduce their size prior to storing.

24. The system of claim 21 , wherein the plurality of patches are normalized prior to storing.

25. The system of claim 18 , wherein computing a distance measurement between the pixel and pixels in a plurality of neighborhood patches, further comprises:

determining a location and orientation of a field of view (FOV) of the digital image; and

selecting a subset of the plurality of patches for computing the distance measurements based on the location and orientation of the FOV.

26. The system of claim 17 , wherein the system is included in a wearable computing device that is worn on a user's body.

27. A system comprising:

at least one processor;

memory storing instructions that when executed by the at least one processor, cause the at least one processor to perform operations comprising:

automatically capturing, using a digital camera having a fixed field of view (FOV), a first digital image of an object at a first time and at a first location that is a first distance from the object;

storing the first digital image with a timestamp and FOV direction data;

inferring user intent to capture a second digital image of the object at a second location that is closer in distance to the object than the first location;

capturing, using the digital camera, the second image of the object at the second location;

retrieving, using the timestamp and FOV direction data, the stored first digital image;

determining an extended portion of the first digital image that is missing from the second digital image;

extracting the extended portion from the first digital image;

scaling the extracted, extended portion to the scale of the second image; and

stitching the scaled, extended portion to the second image to create a third image that extends beyond the fixed FOV of the digital camera at the second location.

28. The system of claim 27 , wherein the FOV direction data includes a location of the digital camera provided by a global navigation satellite receiver and an orientation of a FOV of the digital camera at the location from at least one inertial sensor or a magnetometer embedded in or coupled to the digital camera.

29. The system of claim 27 , wherein the user intent to capture a second digital image of the object at a second location that is closer in distance to the object than the first location is inferred based on context data derived from at least one of user input or sensor input.

30. The system of claim 29 , wherein the user input is speech input.

31. The system of claim 29 , wherein the context data includes locations where the user previously captured a digital image.

32. The system of claim 27 , further comprising:

projecting, with a laser projector, the third image on a surface.

33. The system of claim 32 , wherein the third image is one of a plurality of images projected on the surface, and the system method further comprises:

receiving, with at least one of the digital camera or a three-dimensional sensor, an image of a user's finger performing a gesture in proximity to the projected images;

determining that the gesture indicates the user's intent to select the third image from the plurality of projected images; and

responsive to determining the user's intent to select the third image from the plurality of projected images, performing at least one action related to the third image.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2025
From: HUMANE, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 071844/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2022
From: CHAUDHRI, IMRAN A.; BRUNNER, RALPH; RELOVA, MONIQUE
To: HUMANE, INC.
Reel/Frame 061454/0623 →
Continuity (1)
Provisional Application 63032507 · May 29, 2020
Cited By (7)
US 12,526,535 US 12,541,881 US 12,556,802 US 12,608,041 US 12,626,380 US 12,634,428 US 12,699,420