# US 11,451,835 B2 · Method and device for entropy coding and decoding using mapping of matching relationship parameters

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,451,835 B2
- Document ID: US11451835B2
- Status: Granted
- Kind: B2
- Application number: 17/061,414
- Filed: 2020-10-01
- Published: 2021-01-21
- Granted: 2022-09-20
- Earliest claimed: 2015-04-30
- Assignees: Tongji University; Zte Corporation
- Applicants: Tongji University; ZTE Corporation
- Inventors: Tao Lin; Ming Li; Guoqiang Shang; Zhao Wu
- Web page: https://patentgrep.com/patent/US11451835B2

## CPC

- H04N 19/91: Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
- H04N 19/157: Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N 19/182: the unit being a pixel
- H04N 19/517: by encoding
- H04N 19/593: involving spatial prediction techniques
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

An image coding method and apparatus and an image decoding method and apparatus are provided by the present invention. The image coding method includes: implementing matching coding for pixels of an input video image to obtain one or more matching relationship parameters, herein the matching relationship parameters are parameters used in a process of constructing predicted values and/or reconstructed values of the pixels in the image; mapping the matching relationship parameters to obtain mapped values of the matching relationship parameters; and performing entropy coding on the mapped values of the matching relationship parameters. The present invention addresses the problem existing in the conventional art which is caused by the direct implementation of entropy coding for matching relationship parameters and achieves a good data compression effect through entropy coding.

## Claims

### Claim 1

A method for entropy coding using mapping of matching relationship parameters, comprising:
performing pixel preprocessing and matching coding on pixel values of an input video image to generate and output one or more matching relationship parameters, wherein a frequency of appearance of an integer included in a value range of the matching relationship parameter gets higher and lower and repeatedly oscillates as a value of the integer included in the value range of the matching relationship parameter becomes larger;
performing one-to-one mapping on a value range of the matching relationship parameter and outputting the mapped matching relationship parameter;
performing coding and reconstruction operations on the input video image, the matching relationship parameters and variables;
temporarily storing pixel values in a reconstructed reference pixel value set; and
performing entropy coding on the mapped matching relationship parameters and outputting a result of the entropy coding;
wherein the value range of the matching relationship parameter is an integer interval from 1 to 12288, and the performing one-to-one mapping on the value range of the matching relationship parameter comprising:
mapping the matching relationship parameter to obtain a mapped value of the matching relationship parameter according to below mapping formulas:
4k is mapped to k, in which k=1, 2, 3, 4, . . . 3072;
4k+1 is mapped to 3072+3k+1, in which k=0, 1, 2, 3, . . . 3071;
4k+2 is mapped to 3072+3k+2, in which k=0, 1, 2, 3, . . . 3071; and
4k+3 is mapped to 3072+3k+3, in which k=0, 1, 2, 3, . . . 3071.

### Claim 2 (depends on 1)

The method according to claim 1, further comprising:
making real-time statistics on characteristics of various numerical values in the value range of the matching relationship parameters and dynamically adjusting a mapping relationship of the mapping or partial mapping according to a result of the real-time statistics on various numerical values of the matching relationship parameters.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the value range is divided into K subordinate value ranges, and accordingly, the mapping is divided into mappings in the K subordinate value ranges.

### Claim 4 (depends on 1)

The method according to claim 1, wherein the value range is divided into L groups of subordinate value ranges, each subordinate value range in each group of subordinate value ranges includes equal finite elements, and accordingly, the mapping is divided into L groups of mappings; through each group of mappings, a complete subordinate value range in a group of subordinate value ranges is mapped into a complete subordinate value range in the same group while keeping a sequence of all elements in the subordinate value range unchanged, wherein L is a natural number.

### Claim 5 (depends on 1)

The method according to claim 1, wherein one of the mappings in the value range or the subordinate value range is consisted of a plurality of partial mappings that are implemented successively.

### Claim 6 (depends on 1)

The method according to claim 1, wherein mapping relationships for one of the mappings or partial mappings in the value range or the subordinate value range are represented in one of the following ways:
the mapping relationships are all represented by one computation expression or a group of computation expressions;
the mapping relationships are all represented by a list; and
a part of the mapping relationships are represented by one computation expression or a group of computation expressions while others are represented by a list.

### Claim 7 (depends on 1)

The method according to claim 1, wherein a mapping relationship for one of the mappings or partial mappings in the value range or the subordinate value range changes as status and/or parameters of current coding change.

### Claim 8 (depends on 1)

The method according to claim 1, wherein a mapping relationship for one of the mappings or partial mappings in the value range or the subordinate value range changes as a width of a current coding block changes.

### Claim 9 (depends on 8)

The method according to claim 8, wherein one of the matching relationship parameters is a matching distance, and the width W of the current coding block has four values: 64, 32, 16 and 8, and accordingly, the mapping has four mapping relationships.

### Claim 10

A method for entropy decoding using mapping of matching relationship parameters, comprising:
performing entropy decoding on an input compressed bitstream including compressed data of matching relationship parameters and other parameters except the compressed data of the matching relationship parameters, wherein a frequency of appearance of an integer included in a value range of the matching relationship parameter gets higher and lower and repeatedly oscillates as a value of the integer included in the value range of the matching relationship parameter becomes larger;
performing one-to-one mapping on a value range of matching relationship parameters to restore and output matching relationship parameters after the mapping;
performing matching decoding according to the matching relationship parameters;
performing decoding and reconstruction operations on various parameters and variables in a matching region in current decoding or a decoding block in current decoding; and
temporarily storing pixel values in a reconstructed reference pixel value set;
wherein the value range of the matching relationship parameter is an integer interval from 1 to 12288, and the performing one-to-one mapping on the value range of the matching relationship parameters comprising:
mapping the matching relationship parameter to obtain a mapped value of the matching relationship parameter according to below mapping formulas:
k is mapped to 4k, in which k=1, 2, 3, 4, . . . 3072;
3072+3k+1 is mapped to 4k+1, in which k=0, 1, 2, 3, . . . 3071;
3072+3k+2 is mapped to 4k+2, in which k=0, 1, 2, 3, . . . 3071; and
3072+3k+3 is mapped to 4k+3, in which k=0, 1, 2, 3, . . . 3071.

### Claim 11 (depends on 10)

The method according to claim 10, further comprising:
a real-time statistic module, arranged to make real-time statistics on characteristics of various numerical values in the value range of the matching relationship parameters and dynamically adjust an inverse mapping relationship of the inverse mapping or partial inverse mapping according to a result of the real-time statistics on various numerical values of the matching relationship parameters.

### Claim 12 (depends on 10)

The method according to claim 10, wherein the matching region is a matching string or a matching block.

### Claim 13 (depends on 10)

The method according to claim 10, wherein the value range is divided into K subordinate value ranges, and accordingly, the inverse mapping is divided into inverse mappings in the K subordinate value ranges.

### Claim 14 (depends on 10)

The method according to claim 10, wherein the value range is divided into L groups of subordinate value ranges, each subordinate value range in each group of subordinate value ranges includes equal finite elements, accordingly, the inverse mapping is divided into L groups of inverse mappings; through a group of inverse mappings, a complete subordinate value range in a group of subordinate value ranges is inversely mapped into a complete subordinate value range in the same group while keeping a sequence of all elements in the subordinate value range unchanged, wherein L is a natural number.

### Claim 15 (depends on 10)

The method according to claim 10, wherein inverse mapping relationships for one of the inverse mappings or partial inverse mappings in the value range or the subordinate value range are represented in one of the following ways:
the inverse mapping relationships are all represented by one computation expression or a group of computation expressions;
the inverse mapping relationships are all represented by a list; and
a part of the inverse mapping relationships are represented by one computation expression or a group of computation expressions while others are represented by a list.

### Claim 16 (depends on 10)

The method according to claim 10, wherein an inverse mapping relationship for one of the inverse mappings or partial inverse mappings in the value range or the subordinate value range changes as status and/or parameter of current coding change.

### Claim 17 (depends on 10)

The method according to claim 10, wherein an inverse mapping relationship for one of the inverse mappings or partial inverse mappings in the value range or the subordinate value range changes as a width of the decoding block changes.

### Claim 18 (depends on 13)

The method according to claim 13, wherein one of the mappings or the inverse mappings in the value range or the subordinate value range is consisted of a plurality of partial mappings or partial inverse mappings that are implemented successively.

### Claim 19 (depends on 1)

A device for entropy coding using mapping of matching relationship parameters, comprising a processor and a memory for storing execution instructions that when executed by the processor cause the processor to perform the method according to claim 1.

### Claim 20 (depends on 10)

A device for entropy decoding using mapping of matching relationship parameters, comprising a processor and a memory for storing execution instructions that when executed by the processor cause the processor to perform the method according to claim 10.
