Perceptual optimization for model-based video encoding
First Claim
1. A method of encoding a plurality of video frames having non-overlapping target blocks, the method comprising:
- encoding, via an encoder, the plurality of video frames using importance maps, such that the importance maps modify quantization affecting encoding quality of each target block being encoded in each video frame, the importance maps being formed by;
configuring the importance maps using temporal information and spatial information; and
computationally causing the importance maps to indicate which parts of a video frame in the plurality of video frames are most noticeable to human perception, including;
(i) in target blocks where the importance maps take on high values that are higher than an average value in a value range of the importance map based on perceptual statistics, reducing a block quantization parameter (QP) of each high-value target block relative to the frame quantization parameter (QPframe), resulting in increasing quality for the high-value target blocks, and(ii) in target blocks where the importance maps take on low values that are lower than an average value in a value range of the importance map based on perceptual statistics, increasing a block quantization parameter (QP) of each low-value target block relative to the frame quantization parameter (QPframe), resulting in decreasing quality for the low-value target blocks;
wherein the spatial information is provided by a rule-based spatial complexity map (SCM), an initial step of the SCM determines target blocks in a video frame that have a high-variance relative to an average block variance of the video frame (varframe); and
wherein, for each determined target block, the SCM;
(a) assigns a higher value to a block quantization parameter (QP) of the determined target block than set for the frame quantization parameter (QPframe) of the video frame,(b) scales the assigned value of the block QP (QPblock) of the determined target block linearly between QPframe and a maximum quantization parameter (QPmax) based on difference in variance of the determined target block (varblock) and varframe, and(c) refines the QPblock by a temporal contrast sensitivity function (TCSF) and a true motion vector map (TMVM), such that if the TMVM identifies the determined target block as foreground data and the TCSF has a log contrast sensitivity value less than 0.5, raising the QPblock by 2.
2 Assignments
0 Petitions
Accused Products
Abstract
Perceptual statistics may be used to compute importance maps that indicate which regions of a video frame are important to the human visual system. Importance maps may be applied to the video encoding process to enhance the quality of encoded bitstreams. The temporal contrast sensitivity function (TCSF) may be computed from the encoder'"'"'s motion vectors. Motion vector quality metrics may be used to construct a true motion vector map (TMVM) that can be used to refine the TCSF. Spatial complexity maps (SCMs) can be calculated from metrics such as block variance, block luminance, SSIM, and edge strength, and the SCMs can be combined with the TCSF to obtain a unified importance map. Importance maps may be used to improve encoding by modifying the criterion for selecting optimum encoding solutions or by modifying the quantization for each target block to be encoded.
-
Citations
30 Claims
-
1. A method of encoding a plurality of video frames having non-overlapping target blocks, the method comprising:
encoding, via an encoder, the plurality of video frames using importance maps, such that the importance maps modify quantization affecting encoding quality of each target block being encoded in each video frame, the importance maps being formed by; configuring the importance maps using temporal information and spatial information; and computationally causing the importance maps to indicate which parts of a video frame in the plurality of video frames are most noticeable to human perception, including; (i) in target blocks where the importance maps take on high values that are higher than an average value in a value range of the importance map based on perceptual statistics, reducing a block quantization parameter (QP) of each high-value target block relative to the frame quantization parameter (QPframe), resulting in increasing quality for the high-value target blocks, and (ii) in target blocks where the importance maps take on low values that are lower than an average value in a value range of the importance map based on perceptual statistics, increasing a block quantization parameter (QP) of each low-value target block relative to the frame quantization parameter (QPframe), resulting in decreasing quality for the low-value target blocks; wherein the spatial information is provided by a rule-based spatial complexity map (SCM), an initial step of the SCM determines target blocks in a video frame that have a high-variance relative to an average block variance of the video frame (varframe); and wherein, for each determined target block, the SCM; (a) assigns a higher value to a block quantization parameter (QP) of the determined target block than set for the frame quantization parameter (QPframe) of the video frame, (b) scales the assigned value of the block QP (QPblock) of the determined target block linearly between QPframe and a maximum quantization parameter (QPmax) based on difference in variance of the determined target block (varblock) and varframe, and (c) refines the QPblock by a temporal contrast sensitivity function (TCSF) and a true motion vector map (TMVM), such that if the TMVM identifies the determined target block as foreground data and the TCSF has a log contrast sensitivity value less than 0.5, raising the QPblock by 2. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
16. A system of encoding video data, the system comprising:
-
An encoder using importance maps to encode a plurality of video frames having non-overlapping target blocks; and the importance maps configured to modify quantization affecting encoding quality of each target block being encoded in each video frame, the importance maps being formed by; configuring the importance maps using temporal information and spatial information; and the encoder computationally causing the importance maps to indicate which parts of a video frame in the plurality of video frames are most noticeable to human perception, including; (i) in target blocks where the importance maps take on high values that are higher than an average value in a value range of the importance map based on perceptual statistics, reducing a block quantization parameter (QP) of each high-value target block relative to the frame quantization parameter (QPframe), resulting in increasing quality for the high-value target blocks, and (ii) in target blocks where the importance maps take on low values that are lower than an average value in a value range of the importance map based on perceptual statistics, increasing a block quantization parameter (QP) of each low-value target block relative to the frame quantization parameter (QPframe), resulting in decreasing quality for the low-value target blocks; wherein the spatial information is provided by a rule-based spatial complexity map (SCM), an initial step of the SCM determines target blocks in a video frame that have a high-variance relative to an average block variance of the video frame (varframe); and wherein, for each determined target block, the SCM; (a) assigns a higher value to a block quantization parameter (QP) of the determined target block than set for the frame quantization parameter (QPframe) of the video frame, (b) scales the assigned value of the block QP (QPblock) of the determined target block linearly between QPframe and a maximum quantization parameter (QPmax) based on difference in variance of the determined target block (varblock) and varframe, and (c) refines the QPblock by a temporal contrast sensitivity function (TCSF) and a true motion vector map (TMVM), such that if the TMVM identifies the determined target block as foreground data and the TCSF has a log contrast sensitivity value less than 0.5, raising the QPblock by 2. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification