IP Library Granted Patent US 10,997,786
Granted Patent B2
US 10,997,786 · App. 15/865,120 · Granted May 4, 2021

Systems and methods for reconstruction and rendering of viewpoint-adaptive three-dimensional (3D) personas

Inventors: Simion Venshtain (Chicago, IL); Yi Zhang (Chicago, IL); Cong Nguyen (Ho Chi Minh, VN)
Assignee: Verizon Patent and Licensing Inc.
G06T17/20G06F3/04815G06K9/00201G06K9/00228G06K9/00281G06K9/2018G06K9/4642G06K9/6207G06K9/6289G06T7/74G06T7/75G06T15/20G06T19/003G06T19/20H04L29/06176H04L65/604H04L65/607H04N7/142H04N7/147H04N7/157H04N13/214H04N13/254H04N13/271G06T15/08G06T2200/04G06T2200/08G06T2207/10024G06T2207/10028G06T2207/30201G06T2207/30204G06T2215/16H04L12/18
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,997,786
App. No.
15/865,120
Granted
May 4, 2021
Kind
B2
Abstract

Systems and methods relate receiving video streams captured of a subject by video cameras, each video stream including video frames that are time-synchronized with the video, each video camera having a known vantage point in a predetermined coordinate system; obtaining at least one three-dimensional (3D) mesh of the subject, the mesh being time-synchronized and including a plurality of mesh vertices with known locations; identifying a user-selected viewpoint, and identifying a viewpoint-specific subset of the mesh vertices visible; generating 3D submeshes of the subject by calculating visible-vertices lists from the vantage point of each video camera from which the viewpoint-specific subset of mesh vertices is visible; projecting mesh vertices from the calculated visible-vertices lists on to video pixels; and rendering viewpoint-adaptive 3D personas of the subject by weighting video pixel colors from different video-camera vantage points according to the geometric relationship of each video-camera vantage point to the user-selected viewpoint.

Claims (39)

1. A method comprising:

receiving one or more video streams captured of a subject by one or more video cameras, each video stream including video frames that are time-synchronized with the video frames of each of the other video streams according to a shared frame rate, each of the one or more video cameras having a known vantage point in a predetermined coordinate system;

obtaining at least one three-dimensional (3D) mesh of the subject at the shared frame rate, the mesh being time-synchronized with the video frames of the video streams, the mesh including a plurality of mesh vertices having respective known locations in the predetermined coordinate system;

identifying a user-selected viewpoint, and responsively identifying a viewpoint-specific subset of the mesh vertices visible from the user-selected viewpoint, at the shared frame rate;

maintaining a receiver-side mesh-vertices list;

receiving duplicative-vertex information from a sender, and responsively reducing the receiver-side mesh-vertices list in accordance with the received duplicative-vertex information; and

rendering, using the reduced receiver-side mesh-vertices list, viewpoint-adaptive 3D personas of the subject at the shared frame rate at least in part by weighting video pixel colors from different video-camera vantage points according to the respective geometric relationship of each video-camera vantage point to the user-selected viewpoint.

2. The method of claim 1 , wherein at least one of the received video streams is a raw video stream.

3. The method of claim 1 , wherein each of the received video streams is a raw video stream.

4. The method of claim 1 , wherein at least one of the received video streams is an encoded video stream.

5. The method of claim 1 , wherein each of the received video streams is an encoded video stream.

6. The method of claim 1 , wherein obtaining the at least one 3D mesh of the subject at the shared frame rate includes generating the at least one 3D mesh of the subject at the shared frame rate.

7. The method of claim 1 , wherein obtaining the at least one 3D mesh of the subject at the shared frame rate includes receiving the at least one 3D mesh of the subject at the shared frame rate.

8. The method of claim 7 , wherein receiving the at least one 3D mesh of the subject at the shared frame rate includes receiving the at least one 3D mesh of the subject at the shared frame rate in a set of one or more geometric-data streams that is separate and distinct from the received video streams.

9. The method of claim 1 , wherein rendering viewpoint-adaptive 3D personas of the subject includes rendering viewpoint-adaptive 3D personas of the subject as part of a virtual-reality (VR) experience.

10. The method of claim 1 , wherein rendering viewpoint-adaptive 3D personas of the subject includes rendering viewpoint-adaptive 3D personas of the subject as part of an augmented-reality (AR) experience.

11. The method of claim 1 , wherein rendering viewpoint-adaptive 3D personas of the subject includes rendering viewpoint-adaptive 3D personas of the subject as part of a 360° viewer experience.

12. The method of claim 1 , wherein rendering viewpoint-adaptive 3D personas of the subject includes rendering viewpoint-adaptive 3D personas of the subject as part of a less-than-360° experience.

13. The method of claim 1 , wherein rendering viewpoint-adaptive 3D personas of the subject includes providing a graphics processing unit (GPU) pipeline with data conveying, for respective mesh vertices, location data in the predetermined coordinate system and color-mapping data indexing into the received video frames.

14. The method of claim 13 , wherein the GPU pipeline includes a LizardTech GPU pipeline.

15. The method of claim 13 , wherein the GPU pipeline includes an OpenGL GPU pipeline.

16. The method of claim 1 , further comprising receiving camera-extrinsic data from a data-capture location associated with the subject, wherein rendering viewpoint-adaptive 3D personas of the subject comprises rendering viewpoint-adaptive 3D personas of the subject based at least in part on the received camera-extrinsic data.

17. The method of claim 16 , further comprising receiving camera-intrinsic data from a data-capture location associated with the subject, wherein rendering viewpoint-adaptive 3D personas of the subject further includes rendering viewpoint-adaptive 3D personas of the subject based at least in part on the received camera-intrinsic data.

18. The method of claim 1 , further comprising receiving camera-intrinsic data from a data-capture location associated with the subject, wherein rendering viewpoint-adaptive 3D personas of the subject comprises rendering viewpoint-adaptive 3D personas of the subject based at least in part on the received camera-intrinsic data.

19. The method of claim 1 , further comprising:

generating one or more 3D submeshes of the subject at the shared frame rate at least in part by calculating one or more visible-vertices lists from the vantage point of each video camera from which at least part of the viewpoint-specific subset of mesh vertices is visible; and

projecting one or more mesh vertices from the calculated visible-vertices lists on to video pixels from the vantage points of the one or more video cameras.

20. The method of claim 19 , wherein the rendering viewpoint-adaptive 3D personas of the subject at the shared frame rate at least in part by weighting video pixel colors from different video-camera vantage points according to the respective geometric relationship of each video-camera vantage point to the user-selected viewpoint includes serially rendering the generated one or more 3D submeshes as overlays on one another.

21. The method of claim 20 , wherein serially rendering the generated one or more 3D submeshes as overlays on one another includes setting pixel color values for each rendered submesh so as to cumulatively achieve a desired color weighting.

22. A receiving-and-rendering system comprising:

a communication interface;

a processor; and

data storage containing instructions executable by the processor for causing the presenter server system to carry out a set of functions, wherein the set of functions comprises:

receiving one or more video streams respectively captured of a subject by one or more video cameras, each video stream including video frames that are time-synchronized with the video frames of each of the other video streams according to a shared frame rate, each video camera having a known vantage point in a predetermined coordinate system;

obtaining at least one three-dimensional (3D) mesh of the subject at the shared frame rate, the at least one mesh being time-synchronized with the video frames of the one or more video streams, each mesh including a plurality of mesh vertices having known locations in the predetermined coordinate system;

identifying a user-selected viewpoint, and responsively identifying a viewpoint-specific subset of the mesh vertices visible from the user-selected viewpoint, at the shared frame rate;

maintaining a receiver-side mesh-vertices list;

receiving duplicative-vertex information from a sender, and responsively reducing the receiver-side mesh-vertices list in accordance with the received duplicative-vertex information; and

rendering, using the reduced receiver-side mesh-vertices list, viewpoint-adaptive 3D personas of the subject at the shared frame rate at least in part by weighting video pixel colors from different video-camera vantage points according to the respective geometric relationship of each video-camera vantage point to the user-selected viewpoint.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2019
From: JAUNT, INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 050602/0853 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2019
From: PERSONIFY, INC.
To: JAUNT, INC.
Reel/Frame 048278/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2018
From: VENSHTAIN, SIMION; ZHANG, YI; NGUYEN, CONG
To: PERSONIFY, INC.
Reel/Frame 044638/0953 →
Continuity (2)
Provisional Application 62542267 · Aug 7, 2017
Related Publication 20190045157A1 · Feb 7, 2019