# US 11,310,489 B2 · Method, apparatus, and system for implementing video quality assessment

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

- Number: US 11,310,489 B2
- Document ID: US11310489B2
- Status: Granted
- Kind: B2
- Application number: 17/067,645
- Filed: 2020-10-10
- Published: 2021-01-28
- Granted: 2022-04-19
- Earliest claimed: 2016-08-23
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Jie Xiong; Youqing Yang; Yihong Huang
- Web page: https://patentgrep.com/patent/US11310489B2

## CPC

- H04N 17/04: for receivers
- H04N 21/64322: {IP}
- H04N 17/004: {for digital television systems}
- H04N 19/114: Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames (H04N19/107 takes precedence)
- H04N 19/154: Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion (use of rate-distortion criteria H04N19/147)
- H04N 19/188: {the unit being a video data packet, e.g. a network abstraction layer [NAL] unit}
- H04N 21/23418: {involving operations for analysing video streams, e.g. detecting features or characteristics (television picture signal circuitry for scene change detection H04N5/147; filtering for image enhancement G06T5/00; methods or arrangements for recognising scenes G06V20/00; arrangements characterised by components specially adapted for monitoring, identification or recognition of video in broadcast systems H04H60/59)}
- H04N 21/44: Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N 21/44008: {involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream (arrangements characterised by components specially adapted for monitoring, identification or recognition of video in broadcast systems H04H60/59)}
- H04N 21/44209: {Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network (arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

The present invention discloses a method, an apparatus, and a system for implementing video quality assessment. When video quality is assessed, a proportion of a damaged data caused by packet loss in a video frame in which the damaged data is located is considered, and other factors are also considered, such as a position of the damaged data in the video frame and impact of a scene in which the video frame is located on the video frame or a video frame located after the video frame. Therefore, accuracy of quality assessment is higher.

## Claims

### Claim 1

A method for implementing video quality assessment, where the method includes:
determining that a first data packet in a plurality of data packets is lost, the plurality of the data packets being for encapsulating a first video frame;
obtaining a quality deterioration value of the first video frame by calculating a proportion of damaged data in the first video frame, where the damaged data includes image data affected by loss of the first data packet in the first video frame;
determining a position of the damaged data in the first video frame; and
correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame;
wherein the correcting based on the position of the damaged data in the first video frame includes:
correcting the quality deterioration value of the first video frame by using a formula xlel2=α*xlel1, wherein xlel1 is a quality deterioration value obtained before being corrected based on the position, xlel2 is a quality deterioration value obtained after being corrected based on the position, a is a correction factor and is used to represent a degree of impact of the position of the damaged data in the first video frame on quality of the first video frame, a value of a is greater than 0 and is less than or equal to 1, a smaller value of a indicates a lower impact degree, and a larger value of a indicates a higher impact degree.

### Claim 2 (depends on 1)

The method according to claim 1, wherein α is calculated by using the following formula:
α
=
{
a
·
damagePosition
,
damagePosition
≤
b
⁢
1
,
damagePosition
>
b
⁢
⁢
or
⁢
⁢
α
=
{
a
·
damagePosition
,
damagePosition
<
b
⁢
1
,
damagePosition
≥
b
where a value of a is greater than 0 and is less than or equal to 1, a value of b is greater than 0 and is less than or equal to 0.5, damagePosition is used to represent a relative position of a start position of the damaged data relative to an end position of the first video frame; a value of damagePosition is greater than 0 and is less than or equal to 1; and a smaller value of damagePosition indicates that the start position of the damaged data is closer to the bottom of the first video frame, and a larger value of damagePosition indicates that the start position of the damaged data is closer to the top of the first video frame.

### Claim 3 (depends on 2)

The method according to claim 2, wherein damagePosition is calculated by using the following formula:
damagePosition
=
np
-
lossPosition
+
1
np
where np is a quantity of all data packets that are used to encapsulate the first video frame, and lossPosition is a position of the first data packet in all the data packets.

### Claim 4 (depends on 1)

The method according to claim 1, wherein:
after obtaining the quality deterioration value of the first video frame, and before correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame, the method further includes:
when it is determined that the first video frame is not a scene change frame, correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located; and, wherein
correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame includes:
correcting, based on the position of the damaged data in the first video frame, a quality deterioration value that is obtained after being corrected based on the scene and that is of the first video frame.

### Claim 5 (depends on 4)

The method according to claim 4, wherein correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located includes:
correcting the quality deterioration value of the first video frame by using a formula xlec=β*xlel, where xlel is a quality deterioration value obtained before being corrected based on the scene, xlec is a quality deterioration value obtained after being corrected based on the scene, β is used to represent scene complexity of the scene in which the first video frame is located, a value of β is greater than 0 and less than 1, a larger value of β indicates higher complexity of the scene, and a smaller value of β indicates lower complexity of the scene.

### Claim 6 (depends on 1)

The method according to claim 1, wherein after correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame, the method further includes:
calculating, by using the following formula, a quality deterioration value of a group of pictures (GOP) in which the first video frame is located:
xl=β*xle*Δt
wherein xle is the quality deterioration value of the first video frame, xl is a quality deterioration value of the GOP in which the first video frame is located, Δt is a difference between a time point corresponding to the first video frame and a time point corresponding to a scene change frame that is located after the first video frame, that has a shortest distance to the first video frame, and that is in the GOP, β is used to represent a scene complexity of the scene in which the first video frame is located, a value of β is greater than 0 and less than 1, a larger value of β indicates higher complexity of the scene, and a smaller value of β indicates lower complexity of the scene.

### Claim 7

An assessment apparatus comprising:
a processor; and
a non-transitory computer readable medium which contains computer-executable instructions;
the processor is configured to execute the computer-executable instructions to perform operations comprising:
determining that a first data packet in a plurality of data packets is lost, the plurality of the data packets being for encapsulating a first video frame;
obtaining a quality deterioration value of the first video frame by calculating a proportion of damaged data in the first video frame, where the damaged data includes image data affected by loss of the first data packet in the first video frame;
determining a position of the damaged data in the first video frame; and
correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame;
wherein the correcting based on the position of the damaged data in the first video frame includes:
correcting the quality deterioration value of the first video frame by using a formula xlel2=α*xlel1, wherein xlel1 is a quality deterioration value obtained before being corrected based on the position, xlel2 is a quality deterioration value obtained after being corrected based on the position, α is a correction factor and is used to represent a degree of impact of the position of the damaged data in the first video frame on a quality of the first video frame, a value of α is greater than 0 and is less than or equal to 1, a smaller value of α indicates a lower impact degree, and a larger value of α indicates a higher impact degree.

### Claim 8 (depends on 7)

The assessment apparatus according to claim 7, wherein α is calculated by using the following formula:
α
=
{
a
·
damagePosition
,
damagePosition
≤
b
⁢
1
,
damagePosition
>
b
⁢
⁢
or
⁢
⁢
α
=
{
a
·
damagePosition
,
damagePosition
<
b
⁢
1
,
damagePosition
≥
b
wherein a value of a is greater than 0 and is less than or equal to 1, a value of b is greater than 0 and is less than or equal to 0.5, damagePosition is used to represent a relative position of a start position of the damaged data relative to an end position of the first video frame; a value of damagePosition is greater than 0 and is less than or equal to 1; and a smaller value of damagePosition indicates that the start position of the damaged data is closer to the bottom of the first video frame, and a larger value of damagePosition indicates that the start position of the damaged data is closer to the top of the first video frame.

### Claim 9 (depends on 8)

The assessment apparatus according to claim 8, wherein damagePosition is calculated by using the following formula:
damagePosition
=
np
-
lossPosition
+
1
np
where np is a quantity of all data packets that are used to encapsulate the first video frame, and lossPosition is a position of the first data packet in all the data packets.

### Claim 10 (depends on 7)

The assessment apparatus according to claim 7, wherein:
after obtaining the quality deterioration value of the first video frame, and before correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame, the processor is further configured to execute the computer-executable instructions to perform: when it is determined that the first video frame is not a scene change frame, correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located; and, wherein
correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame includes: correcting, based on the position of the damaged data in the first video frame, a quality deterioration value that is obtained after being corrected based on the scene and that is of the first video frame.

### Claim 11 (depends on 10)

The assessment apparatus according to claim 10, wherein correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located includes:
correcting the quality deterioration value of the first video frame by using a formula xlec=β*xlel, wherein xlel is a quality deterioration value obtained before being corrected based on the scene, xlec is a quality deterioration value obtained after being corrected based on the scene, β is used to represent a scene complexity of the scene in which the first video frame is located, a value of β is greater than 0 and less than 1, a larger value of β indicates higher complexity of the scene, and a smaller value of β indicates lower complexity of the scene.

### Claim 12 (depends on 7)

The assessment apparatus according to claim 7, wherein after correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame, the processor is further configured to execute the computer-executable instructions to perform:
calculating, by using the following formula, a quality deterioration value of a group of pictures (GOP) in which the first video frame is located:
xl=β*xle*Δt
wherein xle is the quality deterioration value of the first video frame, xl is the quality deterioration value of the GOP in which the first video frame is located, Δt is a difference between a time point corresponding to the first video frame and a time point corresponding to a scene change frame that is located after the first video frame, that has a shortest distance to the first video frame, and that is in the GOP, β is used to represent scene complexity of the scene in which the first video frame is located, a value of β is greater than 0 and less than 1, a larger value of β indicates higher complexity of the scene, and a smaller value of β indicates lower complexity of the scene.

### Claim 13

A non-transitory computer readable medium which contains computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, enables an assessment apparatus to perform:
determining that a first data packet in a plurality of data packets is lost, the plurality of the data packets being for encapsulating a first video frame is lost;
obtaining a quality deterioration value of the first video frame by calculating a proportion of damaged data in the first video frame, where the damaged data includes image data affected by loss of the first data packet in the first video frame;
determining a position of the damaged data in the first video frame; and
correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame;
wherein the correcting the quality deterioration value of the first video frame based on the position of the damaged data in the first video frame includes:
correcting the quality deterioration value of the first video frame by using a formula xlel2=α*xlel1, wherein xlel1 is a quality deterioration value obtained before being corrected based on the position, xlel2 is a quality deterioration value obtained after being corrected based on the position, α is a correction factor and is used to represent a degree of impact of the position of the damaged data in the first video frame on quality of the first video frame, a value of α is greater than 0 and is less than or equal to 1, a smaller value of α indicates a lower impact degree, and a larger value of α indicates a higher impact degree.

### Claim 14 (depends on 13)

The non-transitory computer readable medium according to claim 13, wherein α is calculated by using the following formula:
α
=
{
a
·
damagePosition
,
damagePosition
≤
b
⁢
1
,
damagePosition
>
b
⁢
⁢
or
⁢
⁢
α
=
{
a
·
damagePosition
,
damagePosition
<
b
⁢
1
,
damagePosition
≥
b
where a value of a is greater than 0 and is less than or equal to 1, a value of b is greater than 0 and is less than or equal to 0.5, damagePosition is used to represent a relative position of a start position of the damaged data relative to an end position of the first video frame; a value of damagePosition is greater than 0 and is less than or equal to 1; and a smaller value of damagePosition indicates that the start position of the damaged data is closer to the bottom of the first video frame, and a larger value of damagePosition indicates that the start position of the damaged data is closer to the top of the first video frame.

### Claim 15 (depends on 14)

The non-transitory computer readable medium according to claim 14, wherein damagePosition is calculated by using the following formula:
damagePosition
=
np
-
lossPosition
+
1
np
wherein np is a quantity of all data packets that are used to encapsulate the first video frame, and lossPosition is a position of the first data packet in all the data packets.

### Claim 16 (depends on 13)

The non-transitory computer readable medium according to claim 13, wherein: the computer-executable instructions, when executed by the processor, enable the assessment apparatus to perform further operations comprising:
when it is determined that the first video frame is not a scene change frame, correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located; and
the correcting based on the position of the damaged data in the first video frame comprises: correcting, based on the position of the damaged data in the first video frame, a quality deterioration value that is obtained after being corrected based on the scene and that is of the first video frame.

### Claim 17 (depends on 16)

The non-transitory computer readable medium according to claim 16, wherein correcting the quality deterioration value of the first video frame based on a scene in which the first video frame is located includes:
correcting the quality deterioration value of the first video frame by using a formula xlec=β*xlel, where xlel is a quality deterioration value obtained before being corrected based on the scene, xlec is a quality deterioration value obtained after being corrected based on the scene, β is used to represent a scene complexity of the scene in which the first video frame is located, a value of β is greater than 0 and less than 1, a larger value of β indicates higher complexity of the scene, and a smaller value of β indicates lower complexity of the scene.
