IP Library › Granted Patent US 10,567,740
Granted Patent B2
US 10,567,740 · App. 16/114,007 · Granted Feb 18, 2020

System for and method of generating user-selectable novel views on a viewing device

Inventors: Oren Haimovitch-Yogev (Tel Aviv, IL); Matteo Shapira (Tel Aviv, IL); Aviv Shapira (Tel Aviv, IL); Diego Prilusky (Tel Aviv, IL); Yaniv Ben Zvi (Tel Aviv, IL); Adi Gilat (Tel Aviv, IL)
Assignee: Intel Corporation
H04N13/282G01B11/245G06T7/11G06T7/50G06T11/003G06T15/10G06T15/205H04N5/23206H04N5/23229H04N5/247H04N13/0048H04N13/0059H04N13/161H04N13/194H04N13/204H04N13/218H04N21/47202G06T2200/16G06T2207/20152G06T2210/22
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,567,740
App. No.
16/114,007
Granted
Feb 18, 2020
Kind
B2
Abstract

A method of generating user-selectable novel views of an event on a viewing device includes reconstructing by a server system for each camera image data into at least one foreground model for the respective camera and an environment model for the respective camera; joining by the server system the foreground model for each camera to create a visual atlas of all foreground models; creating by the server system foreground mapping data for foreground image data in the visual atlas; creating by the server system environment mapping data for environment image data in each respective environment model; transmitting by the server system each compressed data in a sequence it was compressed; receiving by the viewing device all compressed data; uncompressing by the viewing device all compressed data; selecting by a user the novel view; and rendering by the viewing device each novel view.

Claims (55)

1. A server system comprising:

a central processing unit and a non-transitory computer-readable memory that stores instructions, when executed by the central processing unit, causing the server system to perform:

joining a plurality of foreground models using image data from a plurality of cameras into a foreground model;

creating foreground mapping data for foreground image data in a visual atlas to a first set of three-dimensional (3D) coordinates in a 3D data representation;

projecting environment image data of the plurality of cameras for each camera onto respective environment model;

creating environment mapping data for the environment image data in the respective environment model to a second set of 3D coordinates in the 3D data representation;

saving the respective environment model for each camera as an environment image; and

providing data based on the foreground model and the environment images to a viewer system, wherein the viewer system is to project foreground data on the environment images.

2. The server system of claim 1 , wherein the server system is to further perform:

capturing a plurality of image frames from the plurality of cameras;

extracting image data from the plurality of image frames,

for each camera, reconstructing respective image data into at least one environmental model and at least one foreground model, wherein the at least one foreground model is to be joined into the foreground model.

3. The server system of claim 2 , wherein the image data is to be saved as the 3D data representation.

4. The server system of claim 1 , wherein a depth map is created for each of the plurality of cameras, wherein the depth map to resolve occlusion of pixels.

5. The server system of claim 1 , wherein the server system is to further perform:

after creating environment mapping data for the environment image data, calculating a median model value for each respective environment model;

after saving the respective environment model for each camera as an environment image, calculating a median image value for each respective environment image; and

determining a difference between the media image value and the median model value.

6. The server system of claim 1 , wherein the provided data is compressed prior to providing to the viewer system, the compression comprising:

compressing the foreground mapping data, the environment mapping data, and a depth map;

inserting the visual atlas into each respective environment model as a new image frame in an image sequence by projecting background rasters on each respective environment model;

comprising the visual atlas; and

compressing the respective environment images and the respective environment models.

7. The server system of claim 6 , wherein the compression further comprises:

inserting a brightness image into the environment image after saving the respective environment model for each camera as the environment image.

8. The server system of claim 7 , wherein the brightness image is compressed.

9. The server system of claim 6 , wherein projecting background rasters on each respective environment model uses an exponential matrix to decide a weight of a projection.

10. The server system of claim 6 , wherein projecting background rasters on each respective environment model comprises looping through each camera and referencing image data in the visual atlas.

11. A method implemented in a server system, comprising:

joining a plurality of foreground models using image data from a plurality of cameras into a foreground model;

creating foreground mapping data for foreground image data in a visual atlas to a first set of three-dimensional (3D) coordinates in a 3D data representation;

projecting environment image data of the plurality of cameras for each camera onto respective environment model;

creating environment mapping data for the environment image data in the respective environment model to a second set of 3D coordinates in the 3D data representation;

saving the respective environment model for each camera as an environment image; and

providing data based on the foreground model and the environment images to a viewer system, wherein the viewer system is to project foreground data on the environment images.

12. The method of claim 11 , wherein the method further comprises:

capturing a plurality of image frames from the plurality of cameras;

extracting image data from the plurality of image frames,

for each camera, reconstructing respective image data into at least one environmental model and at least one foreground model, wherein the at least one foreground model is to be joined into the foreground model.

13. The method of claim 12 , wherein the image data is to be saved as the 3D data representation.

14. The method of claim 11 , wherein a depth map is created for each of the plurality of cameras, wherein the depth map to resolve occlusion of pixels.

15. The method of claim 11 , wherein the method further comprises:

after creating environment mapping data for the environment image data, calculating a median model value for each respective environment model;

after saving the respective environment model for each camera as an environment image, calculating a median image value for each respective environment image; and

determining a difference between the media image value and the median model value.

16. The method of claim 11 , wherein the provided data is compressed prior to providing to the viewer system, the compression comprising:

compressing the foreground mapping data, the environment mapping data, and a depth map;

inserting the visual atlas into each respective environment model as a new image frame in an image sequence by projecting background rasters on each respective environment model;

comprising the visual atlas; and

compressing the respective environment images and the respective environment models.

17. The method of claim 16 , wherein the compression further comprises:

inserting a brightness image into the environment image after saving the respective environment model for each camera as the environment image.

18. The method of claim 17 , wherein the brightness image is compressed.

19. The method of claim 16 , wherein projecting background rasters on each respective environment model uses an exponential matrix to decide a weight of a projection.

20. The method of claim 16 , wherein projecting background rasters on each respective environment model comprises looping through each camera and referencing image data in the visual atlas.

Continuity (5)
Continuation 14910163
Provisional Application 61986439 · Apr 30, 2014
Provisional Application 62071943 · Oct 31, 2014
Provisional Application 62073596 · Oct 31, 2014
Related Publication 20180367788A1 · Dec 20, 2018