IP Library Granted Patent US 12,363,344
Granted Patent B2
US 12,363,344 · App. 18/507,266 · Granted Jul 15, 2025

Sparse matrix representation using a boundary of non-zero coefficients

Inventors: Pascal Massimino (Orsay, FR); Vincent Rabaud (Paris, FR)
Assignee: GOOGLE LLC
H04N19/60H04N19/124H04N19/129H04N19/176H04N19/423H04N19/70
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 12,363,344
App. No.
18/507,266
Granted
Jul 15, 2025
Kind
B2
Abstract

A sparse matrix representation of image or video data for encoding or decoding uses a boundary of non-zero coefficients within the image or video data. A bounding box encloses each non-zero coefficient within an image or video block. The coefficients enclosed within the bounding box are encoded to a bitstream along with dimensional information usable to identify the bounding box within the image or video block during decoding. Coefficients not enclosed within the bounding box are not specifically encoded within the bitstream. The dimensional information represents one or more of a shape, size, or position within the image or video block of the bounding box. The bounding box may be identified according to a scan order used to process the coefficients within the image or video block. The bounding box may be rectangular or non-rectangular.

Claims (37)

1. A non-transitory computer readable medium having stored thereon an encoded bitstream, wherein an encoder is configured to generate the encoded bitstream by operations comprising:

identifying, according to a first scan order, a first bounding box which encloses a first total number of coefficients associated with a current block of image or video data, wherein the first total number of coefficients includes non-zero value coefficients and a first number of zero value coefficients;

identifying, according to a second scan order, a second bounding box which encloses a second total number of coefficients associated with the current block, wherein the second total number of coefficients includes the non-zero value coefficients and a second number of zero value coefficients; and

based on the first total number of coefficients being lower than the second total number of coefficients, generating the encoded bitstream by encoding data representative of the first total number of coefficients and dimensional information of the first bounding box.

2. The non-transitory computer readable medium of claim 1 , wherein the dimensional information is used to signal the bounding box to a decoder configured to decode the encoded bitstream.

3. The non-transitory computer readable medium of claim 1 , wherein a location of a last non-zero value coefficient enclosed within the first bounding box is different from a location of a last non-zero value coefficient enclosed within the second bounding box.

4. The non-transitory computer readable medium of claim 1 , the operations comprising:

identifying the first bounding box based on locations of the non-zero value coefficients within a two-dimensional matrix representation corresponding to the current block along the first scan order; and

identifying the second bounding box based on locations of the non-zero value coefficients within a two-dimensional matrix representation corresponding to the current block along the second scan order.

5. The non-transitory computer readable medium of claim 1 , wherein generating the encoded bitstream comprises:

encoding a syntax element configured to signal a use of the first bounding box.

6. The non-transitory computer readable medium of claim 1 , wherein at least one of the first bounding box or the second bounding box has a non-rectangular shape.

7. A non-transitory computer readable medium having stored thereon an encoded bitstream, wherein an encoder is configured to generate the encoded bitstream by operations comprising:

quantizing transform coefficients associated with a current block of image or video data to produce quantized transform coefficients, wherein the quantized transform coefficients include non-zero value coefficients and zero value coefficients;

iterating through the quantized transform coefficients according to a scan order to identify locations of the non-zero value coefficients within a two-dimensional representation corresponding to the current block;

identifying, based on the locations of the non-zero value coefficients within the two-dimensional representation, a bounding box enclosing a total number of coefficients including each of the non-zero value coefficients and a number of the zero value coefficients; and

generating the encoded bitstream by encoding data representative of the total number of coefficients and of dimensional information of the bounding box.

8. The non-transitory computer readable medium of claim 7 , the operations comprising:

identifying groupings of the non-zero value coefficients within the two-dimensional representation according to each of a plurality of candidate scan orders; and

identifying, as the scan order, a candidate scan order of the plurality of candidate scan orders used to identify a tightest grouping of the groupings.

9. The non-transitory computer readable medium of claim 7 , wherein the bounding box has a non-rectangular shape.

10. The non-transitory computer readable medium of claim 7 , wherein the dimensional information of the bounding box is represented within the encoded bitstream using one or more encoded syntax element values.

11. The non-transitory computer readable medium of claim 7 , wherein the dimensional information represents one or more of a shape of the bounding box, a size of the bounding box, or a position of the bounding box within the two-dimensional representation.

12. The non-transitory computer readable medium of claim 7 , the operations comprising:

determining the dimensional information of the bounding box based on the locations of the non-zero value coefficients within the two-dimensional representation.

13. The non-transitory computer readable medium of claim 7 , wherein identifying the bounding box comprises:

identifying the bounding box using a reference bounding box used for encoding a previously encoded block.

14. A non-transitory computer readable medium having stored thereon an encoded bitstream, wherein the encoded bitstream is configured for decoding by operations comprising:

decoding dimensional information of a bounding box of an encoded block of image or video data;

decoding, using the dimensional information, syntax elements including non-zero value coefficients enclosed within the bounding box; and

producing decoded data by dequantizing and inverse transforming the syntax elements.

15. The non-transitory computer readable medium of claim 14 , wherein the syntax elements are arranged other than in a two-dimensional representation when the syntax elements are decoded, and wherein the decoded data is arranged in the two-dimensional representation.

16. The non-transitory computer readable medium of claim 14 , wherein the bounding box is based on locations of the non-zero value coefficients according to a scan order used to encode the encoded block.

17. The non-transitory computer readable medium of claim 14 , wherein a syntax element signaled within the encoded bitstream indicates that the bounding box was used for encoding the encoded block.

18. The non-transitory computer readable medium of claim 14 , wherein at least some zero value coefficients of the encoded block are external to the bounding box.

19. The non-transitory computer readable medium of claim 14 , wherein the dimensional information corresponds to one or both of a shape of the bounding box or a size of the bounding box.

20. The non-transitory computer readable medium of claim 14 , wherein the dimensional information is signaled within a block header or a frame header associated with the encoded block.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2023
From: MASSIMINO, PASCAL; RABAUD, VINCENT
To: GOOGLE LLC
Reel/Frame 065613/0329 →
Continuity (4)
Continuation 17860693 · Jul 8, 2022
Continuation 16726408 · Dec 24, 2019
Provisional Application 62924108 · Oct 21, 2019
Related Publication 20240080481A1 · Mar 7, 2024
References Cited (20)
US 11388439B2 · Massimino et al. · 2022 [cited by applicant]
US 20120287989A1 · Budagavi et al. · 2012 [cited by applicant]
US 20170134530A1 · Neway · 2017 [cited by applicant]
WO 2017019649A1 · 2017 [cited by applicant]
Bankoski, et al., “Technical Overview of VP8, An Open Source Video Codec for the Web”, Jul. 11, 2011, 6 pp. [cited by applicant]
Bankoski et al., “VP8 Data Format and Decoding Guide”, Independent Submission RFC 6389, Nov. 2011, 305 pp. [cited by applicant]
Bankoski et al., “VP8 Data Format and Decoding Guide draft-bankoski-vp8-bitstream-02”, Network Working Group, Internet-Draft, May 18, 2011, 288 pp. [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Coding of moving video: Implementors Guide for H.264: Advanced video coding for generic audiovisual services, International Telecommunication Union, Jul. 30, 2010, 15 pp. [cited by applicant]
“Introduction to Video Coding Part 1: Transform Coding”, Mozilla, Mar. 2012, 171 pp. [cited by applicant]
“Overview VP7 Data Format and Decoder”, Version 1.5, On2 Technologies, Inc., Mar. 28, 2005, 65 pp. [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, International Telecommunication Union, Version 11, Ma… [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, International Telecommunication Union, Version 12, Ma… [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Amendment 2: New profiles for professional applications, International Telecommunication Union, Apr. 2007, 75… [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, Version 8, International Telecommunication Union, Nov… [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, Amendment 1: Support of additional colour spaces and … [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, Version 1, International Telecommunication Union, May… [cited by applicant]
Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services- Coding of moving video, Advanced video coding for generic audiovisual services, Version 3, International Telecommunication Union, Mar… [cited by applicant]
“VP6 Bitstream and Decoder Specification”, Version 1.02, On2 Technologies, Inc., Aug. 17, 2006, 88 pp. [cited by applicant]
“VP6 Bitstream and Decoder Specification”, Version 1.03, On2 Technologies, Inc., Oct. 29, 2007, 95 pp. [cited by applicant]
“VP8 Data Format and Decoding Guide, WebM Project”, Google On2, Dec. 1, 2010, 103 pp. [cited by applicant]