IP Library Granted Patent US 10,375,381
Granted Patent B2
US 10,375,381 · App. 15/843,366 · Granted Aug 6, 2019

Omnistereo capture and render of panoramic virtual reality content

Inventors: Carlos Hernandez Esteban (Kirkland, WA); Robert Anderson (Seattle, WA); Changchang Wu (Mountain View, CA); Michael Krainin (Mountain View, CA)
Assignee: GOOGLE LLC
H04N13/344G02B27/017G02B27/0172G06T15/205H04N13/111H04N13/161H04N13/211H04N13/221H04N13/239H04N13/243H04N13/296H04N13/366G02B2027/011G02B2027/014G02B2027/0134G02B2027/0138G02B2027/0187
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,375,381
App. No.
15/843,366
Granted
Aug 6, 2019
Kind
B2
Abstract

Systems and methods are described include defining, at a computing device, a set of images based on captured images, projecting, at the computing device, a portion of the set of images from a planar perspective image plane onto a spherical image plane by recasting a plurality of viewing rays associated with the portion of the set of images from a plurality of viewpoints arranged around a curved path to a viewpoint, determining, at the computing device, a periphery boundary corresponding to the viewpoint and generating updated images by removing pixels that are outside of the periphery boundary, and providing, for display, the updated images within the bounds of the periphery boundary.

Claims (43)

1. A system comprising:

at least one processor;

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

receiving a set of images based on captured video streams collected from at least one stereo pair of cameras;

calculating optical flow between images from the set of images to generate a plurality of image frames that are not part of the set of images, the calculating of the optical flow including analyzing image intensity fields for selected columns of pixels associated with the set of images;

interleaving the plurality of image frames into the set of images at the respective selected columns of pixels and stitching together a portion of the plurality of image frames and the set of images based at least in part on the optical flow; and

generating, using the portion of the plurality of image frames and the set of images, an omnistereo panorama.

2. The system of claim 1 , wherein the omnistereo panorama is formatted for display in a head mounted display device.

3. The system of claim 1 , wherein the set of images are based on captured video streams collected from 6 to 8 stereo pairs of cameras.

4. The system of claim 1 , further comprising:

obtaining pose information associated with the at least one stereo pair of cameras; and

determining the portion of the plurality of image frames to stitch together with the set of images based on the pose information.

5. The system of claim 1 , wherein the set of images correspond to rendered computer graphics (CG) content.

6. The system of claim 1 , wherein the stitching is performed using a stitching ratio selected based at least in part on a diameter of a circular camera rig housing the at least one stereo pair of cameras used to obtain the captured images.

7. A computer program product tangibly embodied on a non-transitory computer-readable storage medium and comprising instructions that, when executed by at least one computing device, are configured to cause the at least one computing device to:

receive a set of images based on captured video streams collected from at least one stereo pair of cameras;

generate a plurality of image frames based at least in part on a calculated optical flow between images from the set of images, the calculated optical flow being based on analyzing image intensity fields for selected columns of pixels associated with the set of images;

interleave the plurality of image frames into the set of images at the respective selected columns of pixels and stitching together a portion of the plurality of image frames and the set of images based at least in part on the optical flow; and

generate, using the portion of the plurality of image frames and the set of images, an omnistereo panorama.

8. The computer program product of claim 7 , wherein the omnistereo panorama is formatted for display in a head mounted display device.

9. The computer program product of claim 7 , wherein the set of images are based on captured video streams collected from 6 stereo pairs of cameras.

10. The computer program product of claim 7 , further comprising:

obtaining pose information associated with the at least one stereo pair of cameras; and

determining the portion of the plurality of image frames to stitch together with the set of images based on the pose information.

11. The computer program product of claim 7 , wherein the set of images correspond to rendered computer graphics (CG) content.

12. The computer program product of claim 7 , wherein the stitching is performed using a stitching ratio selected based at least in part on a diameter of a circular camera rig housing the at least one stereo pair of cameras used to obtain the captured images.

13. The system of claim 1 , wherein the set of images include content captured using a rotatable camera rig, and the operations further comprise:

selecting, with the processor, portions of the content, the portions of the content corresponding to the plurality of image frames captured at a distance of about one meter from an outward edge of a base of the camera rig to about five meters from the outward edge of the base of the camera rig; and

stitching together the portions of the content.

14. The system of claim 13 , wherein the operations further comprise:

providing the omnistereo panorama to a head-mounted display device.

15. The system of claim 13 , wherein the stitching together of the portions of content is based on matching one or more image aspects included in at least two of the plurality of image frames.

16. The system of claim 13 , wherein the stitching of the portions of the content is performed using a stitching ratio selected based at least in part on a diameter of the rotatable camera rig that captured the content.

17. The system of claim 13 , the operations further comprising:

interpolating additional image frames that are not part of the portions of the content, and interleaving the additional image frames into the portions of the content;

stitching together the portions of content and the additional image frames; and

generating an updated stereoscopic panoramic view including the portions of the content and the additional image frames.

18. The system of claim 17 , wherein stitching together the portions of the content and the additional image frames includes:

matching a portion of a first column of pixels in a first image frame to a first portion of a second column of pixels in a second image frame,

matching a second portion of the second column of pixels to a portion of a third column of pixels in a third image frame; and

generating a cohesive scene portion by:

combining the first column of pixels with the first portion of the second column of pixels; and

combining the second portion of the second column of pixels with the third column of pixels.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2018
From: ESTEBAN, CARLOS HERNANDEZ; ANDERSON, ROBERT; WU, CHANGCHANG; KRAININ, MICHAEL
To: GOOGLE INC
Reel/Frame 045187/0522 →
CHANGE OF NAME Recorded Mar 13, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 045574/0274 →
Continuity (3)
Continuation 14723178 · May 27, 2015
Continuation 14723151 · May 27, 2015
Related Publication 20180160106A1 · Jun 7, 2018