IP Library Granted Patent US 10,462,466
Granted Patent B2
US 10,462,466 · App. 15/414,426 · Granted Oct 29, 2019

Systems and methods for spatially selective video coding

Inventors: Adeel Abbas (Carlsbad, CA); Balineedu Chowdary Adsumilli (San Francisco, CA); Vadim Polonichko (San Diego, CA)
Assignee: GoPro, Inc.
H04N19/137H04N5/2258H04N5/23238H04N13/00H04N19/107H04N19/167H04N19/597
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,462,466
App. No.
15/414,426
Granted
Oct 29, 2019
Kind
B2
Abstract

Systems and methods for providing panoramic image and/or video content using spatially selective encoding and/or decoding. Panoramic content may include stitched spherical (360-degree) images and/or VR video. In some implementations, selective encoding functionality may be embodied in a spherical image capture device that may include two lenses configured to capture pairs of hemispherical images. Encoded source images may be decoded and stitched in order to obtain a combined image characterized by a greater field of view as compared to source images. The stitched image may be encoded using a selective encoding methodology including: partitioning a stitched image into multiple portions, determining if a portion is to be re-encoded. If the image portion is to be re-encoded, re-encoding the image portion. If an image portion is not to be re-encoded, copying previously encoded image portion in lieu of encoding.

Claims (44)

1. A computer readable apparatus comprising a storage medium having a plurality of computer executable instructions stored thereon, the plurality of computer executable instructions being configured to, when executed by a processor apparatus, cause a computerized apparatus to:

access a stitched panoramic image having been encoded at a first quality distribution;

determine individual portions of the stitched panoramic image, the determination comprising a determination of a partitioning configuration for the stitched panoramic image, the partitioning configuration comprising: (i) a circular center area portion, and (ii) a surrounding area portion that is proximate the circular center area portion;

encode a first portion of the individual portions of the stitched panoramic image using a second quality distribution;

combine the encoded first portion of the individual portions of the stitched panoramic image with other portions of the individual portions of the stitched panoramic image to produce a combined panoramic portion of the image; and

store the combined panoramic portion of the image.

2. The computer readable apparatus of claim 1 , the plurality of computer executable instructions being further configured to, when executed by the processor apparatus, cause the computerized apparatus to:

provide the stored combined panoramic portion of the image to a display device.

3. The computer readable apparatus of claim 1 , wherein the first portion of the individual portions of the stitched panoramic image comprises the surrounding area portion.

4. The computer readable apparatus of claim 1 , wherein the circular center area portion is encoded at the first quality distribution.

5. The computer readable apparatus of claim 1 , wherein the other portions of the individual portions of the stitched panoramic image are retrieved from the stitched panoramic image that has been encoded at the first quality distribution.

6. The computer readable apparatus of claim 2 , wherein:

the display device comprises a virtual reality display device; and

the plurality of computer executable instructions are further configured to, when executed by the processor apparatus, cause the computerized apparatus: determine a viewport change of the virtual reality display device.

7. The computer readable apparatus of claim 1 , wherein the stitched panoramic image comprises a spherical image derived from a plurality of at least hemispherical source images.

8. A method for selectively encoding an image, the method comprising:

accessing a centrally located portion of a stitched version of the image, the centrally located portion residing away from a stitching line of the stitched version of the image;

evaluating whether portions of the stitched version of the image are to be encoded;

for a first portion of the portions of the stitched version of the image that are not to be encoded, accessing a previously available encoded image portion;

for a second portion of the portions of the stitched version of the image that are to be encoded, encoding the second portion; and

obtaining an encoded stitched image by combining the previously available encoded image portion and the encoded second portion.

9. The method of claim 8 , wherein the encoding of the second portion comprises encoding a peripherally located portion of the stitched version of the image, the peripherally located portion comprising the stitching line of the stitched version of the image.

10. The method of claim 8 , further comprising stitching two or more fisheye projections in order to provide the stitched version of the image.

11. The method of claim 8 , further comprising determining the first portion of the portions of the stitched version of the image and determining the second portion of the portions of the stitched version of the image, the determining utilizing an image map for the stitched version of the image.

12. The method of claim 9 , wherein the encoding of the peripherally located portion of the stitched version of the image comprises encoding the peripherally located portion of the stitched version of the image as a motion-constrained tile of an encoder.

13. The method of claim 8 , wherein:

the centrally located portion comprises a circular shape; and

the encoding of the second portion comprises encoding one or more peripheral portions, the one or more peripheral portions comprising the stitching line of the stitched version of the image.

14. The method of claim 8 , wherein the centrally located portion comprises polygonal shape.

15. A system for selectively encoding an image, the system comprising:

an electronic storage configured to store a stitched version of the image;

a communications interface configured to communicate a bit stream to a client device; and

a processor apparatus configured to execute a plurality of computer readable instructions, the plurality of computer readable instructions configured to, when executed by the processor apparatus:

access the stitched version of the image;

evaluate whether portions of the stitched version of the image are to be encoded;

for a first portion of the portions of the stitched version of the image that are not to be encoded, access a previously available encoded image portion, the previously available encoded image portion comprising a polygon shaped central portion, the polygon shaped central portion not contiguous with a stitching line of the stitched version of the image;

for a second portion of the portions of the stitched version of the image that are to be encoded, encode the second portion; and

obtain an encoded stitched image by combination of the polygon shaped central portion and the encoded second portion.

16. The system of claim 15 , wherein the encode of the second portion comprises an encode of one or more peripheral portions that are polygon shaped, the one or more peripheral portions comprising the stitching line of the stitched version of the image.

17. The system of claim 16 , wherein the polygon shaped central portion comprises a square and the one or more peripheral portions comprise rectangles.

18. The system of claim 15 , wherein the encode of the second portion is encoded using a HEVC (High Efficiency Video Coding) standard encoder configured to partition the encoded second portion into multiple tiles; and

an encode of individual ones of the multiple tiles is configured in accordance with a motion constrained tile encoding profile.

19. The system of claim 15 , further comprising a plurality of image capturing devices, each of the plurality of image capturing devices being configured to capture at least hemispherical images, the at least hemispherical images being associated with a field of view of at least 180 degrees.

20. The system of claim 15 , further comprising a display device configured to render virtual-reality (VR) content in a 360-degree field of view, the VR content comprising the obtained encoded stitched image.

Assignments (7)
SECURITY INTEREST Recorded Aug 4, 2025
From: GOPRO, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 072358/0001 →
SECURITY INTEREST Recorded Aug 4, 2025
From: GOPRO, INC.
To: FARALLON CAPITAL MANAGEMENT, L.L.C., AS AGENT
Reel/Frame 072340/0676 →
RELEASE OF PATENT SECURITY INTEREST Recorded Jan 25, 2021
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: GOPRO, INC.
Reel/Frame 055106/0434 →
SECURITY INTEREST Recorded Oct 19, 2020
From: GOPRO, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 054113/0594 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SCHEDULE TO REMOVE APPLICATION 15387383 AND REPLACE WITH 15385383 PREVIOUSLY RECORDED ON REEL 042665 FRAME 0065. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 23, 2019
From: GOPRO, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 050808/0824 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GOPRO, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 042665/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2017
From: ABBAS, ADEEL; ADSUMILLI, BALINEEDU CHOWDARY; POLONICHKO, VADIM
To: GOPRO, INC.
Reel/Frame 041068/0730 →
Continuity (2)
Provisional Application 62352480 · Jun 20, 2016
Related Publication 20170366812A1 · Dec 21, 2017
Cited By (2)
US 12,206,997 US 12,470,682