IP Library Granted Patent US 10,789,723
Granted Patent B1
US 10,789,723 · App. 15/956,177 · Granted Sep 29, 2020

Image object extraction and in-painting hidden surfaces for modified viewpoint rendering

Inventors: Johannes Peter Kopf (Seattle, WA); Brian Dolhansky (Seattle, WA); Suhib Fakhri Mahmod Alsisan (Bothwell, WA)
Assignee: Facebook, Inc.
G06T7/536G06N3/088G06N20/00G06T7/55G06T17/20G06T2207/20081G06T2207/20084
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,789,723
App. No.
15/956,177
Granted
Sep 29, 2020
Kind
B1
Abstract

In one embodiment, a method includes generating depth map for a reference image and generating a three-dimensional (3D) model for a plurality of objects in the reference image based on the depth map. The method additionally includes determining, out of the objects in the 3D model, a background object having a boundary adjacent to a foreground object. The method also includes determining that at least a portion of a surface of the background object is hidden by the foreground object and extending, in the 3D model, the surface of the background object to include the portion hidden by the foreground object. The method further includes in-paint pixels of the extended surface of the background object with pixels that approximate the portion of the surface of the background object hidden by the foreground object.

Claims (42)

1. A method comprising:

by a computing device, generating a depth map for points in a reference image of a scene based on differences between corresponding pixels in the reference image and another image of the scene, wherein the corresponding pixels in each image correspond to a same point in the scene;

by the computing device, generating a three-dimensional (3D) model for a plurality of objects in the reference image based on the depth map;

by the computing device, determining, out of the objects in the 3D model, a background object having a boundary adjacent to a foreground object;

by the computing device, determining that at least a portion of a surface of the background object is hidden by the foreground object;

by the computing device, extending, in the 3D model, the surface of the background object to include the portion hidden by the foreground object; and

by the computing device, in-painting pixels of the extended surface of the background object with pixels that approximate the portion of the surface of the background object hidden by the foreground object.

2. The method of claim 1 , wherein in-painting the pixels comprises in-painting the pixels with pixels output from a machine learning algorithm trained to render missing portions of known objects.

3. The method of claim 2 , wherein the machine learning algorithm is trained to output adjacent image pixels corresponding to missing portions of the background object, and wherein the machine learning algorithm is trained using training data comprising a plurality of different images of objects that are similar to the background object.

4. The method of claim 1 , further comprising:

generating a new image based on a modification to a camera viewpoint from the reference image, wherein the new image includes the portion of the surface of the background object that is hidden by the foreground object in the reference image.

5. The method of claim 2 , wherein the machine learning algorithm is a generative adversarial neural network.

6. The method of claim 1 , wherein the reference image and the another image capture the scene from different viewpoints, and wherein the difference between the viewpoints is fixed.

7. The method of claim 1 , wherein the reference image and the another image of the scene are captured at the same time by a dual camera system.

8. The method of claim 7 , wherein the dual camera system is embedded in a mobile device.

9. The method of claim 1 , wherein the 3D model is a polygon mesh model of each object.

10. The method of claim 1 , wherein determining that at least a portion of a surface of the background object is hidden by the foreground object comprises determining that a change in the depth map for the boundary is above a threshold.

11. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

generate a depth map for points in a reference image of a scene based on differences between corresponding pixels in the reference image and another image of the scene, wherein the corresponding pixels in each image correspond to a same point in the scene;

generate a three-dimensional (3D) model for a plurality of objects in the reference image based on the depth map;

determine, out of the objects in the 3D model, a background object having a boundary adjacent to a foreground object;

determine that at least a portion of a surface of the background object is hidden by the foreground object;

extend, in the 3D model, the surface of the background object to include the portion hidden by the foreground object; and

in-paint pixels of the extended surface of the background object with pixels that approximate the portion of the surface of the background object hidden by the foreground object.

12. The computer-readable non-transitory storage media of claim 11 , wherein in-painting the pixels comprises in-painting the pixels with pixels output from a machine learning algorithm trained to render missing portions of known objects.

13. The computer-readable non-transitory storage media of claim 12 , wherein the machine learning algorithm is trained to output adjacent image pixels corresponding to missing portions of the background object, and wherein the machine learning algorithm is trained using training data comprising a plurality of different images of objects that are similar to the background object.

14. The computer-readable non-transitory storage media of claim 11 , further comprising:

generating a new image based on a modification to a camera viewpoint from the reference image, wherein the new image includes the portion of the surface of the background object that is hidden by the foreground object in the reference image.

15. The computer-readable non-transitory storage media of claim 12 , wherein the machine learning algorithm is a generative adversarial neural network.

16. The computer-readable non-transitory storage media of claim 11 , wherein the reference image and the another image capture the scene from different viewpoints, and wherein the difference between the viewpoints is fixed.

17. The computer-readable non-transitory storage media of claim 11 , wherein the reference image and the another image of the scene are captured at the same time by a dual camera system.

18. The computer-readable non-transitory storage media of claim 17 , wherein the dual camera system is embedded in a mobile device.

19. The computer-readable non-transitory storage media of claim 11 , wherein the 3D model is a polygon mesh model of each object.

20. A system comprising:

one or more processors; and

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

generate a depth map for points in a reference image of a scene based on differences between corresponding pixels in the reference image and another image of the scene, wherein the corresponding pixels in each image correspond to a same point in the scene;

generate a three-dimensional (3D) model for a plurality of objects in the reference image based on the depth map;

determine, out of the objects in the 3D model, a background object having a boundary adjacent to a foreground object;

determine that at least a portion of a surface of the background object is hidden by the foreground object;

extend, in the 3D model, the surface of the background object to include the portion hidden by the foreground object; and

in-paint pixels of the extended surface of the background object with pixels that approximate the portion of the surface of the background object hidden by the foreground object.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: KOPF, JOHANNES PETER; DOLHANSKY, BRIAN; ALSISAN, SUHIB FAKHRI MAHMOD
To: FACEBOOK, INC.
Reel/Frame 045608/0670 →
Cited By (3)
US 12,346,432 US 12,664,729 US 12,684,144