音视频学习(七十五):视频压缩:量化

量化在视频压缩中的地位

在视频压缩体系中,量化是"有损压缩"的核心步骤 ,也是决定压缩率与画质平衡 的关键技术。

一个典型的视频编码流程包括:

预测 → 变换 → 量化 → 熵编码

其中:

  • 预测去除时间/空间冗余
  • 变换(如 DCT)去除信号相关性
  • 量化丢弃人眼不敏感的信息
  • 熵编码去除统计冗余

预测和变换本身不引入信息丢失,真正导致画质下降的是量化过程。

因此可以说:

量化是视频编码中"以质量换码率"的唯一环节

量化的基本概念

1. 什么是量化

量化(Quantization)是指:

连续值或高精度离散值映射为有限个低精度值的过程

在视频编码中,量化对象通常是:

  • DCT / 整数变换后的变换系数

量化的数学形式一般为:

其中:

  • X:原始变换系数
  • Δ:量化步长
  • Q:量化后的整数值

反量化时:

由于 round 操作,反量化无法恢复原始精度,这是信息损失的根源。

2. 量化的本质

从信息论角度看,量化本质上是:

  • 降低信号精度
  • 缩小取值空间
  • 提高零系数比例

从感知角度看:

  • 人眼对高频信息不敏感
  • 对亮度比色度更敏感
  • 对平坦区域更敏感,对纹理区域更宽容

量化正是利用了这些人眼视觉特性。

量化在视频编码流程中的位置

以 H.264 / H.265 为例:

objective-c 复制代码
原始像素
   ↓
预测残差
   ↓
整数变换(近似 DCT)
   ↓
【量化】
   ↓
Zigzag 扫描
   ↓
熵编码(CABAC / CAVLC)

量化的输入是:

  • 预测残差经变换后的频域系数

量化的输出是:

  • 大量 0 + 少量非零整数

这使得:

  • 熵编码效率大幅提高
  • 码率显著下降

量化步长与 QP(Quantization Parameter)

1. 量化步长的作用

量化步长 Δ 决定了:

  • 压缩强度
  • 画质损失程度

关系如下:

量化步长 画质 码率

量化步长越大,更多系数被量化为 0

2. QP 的概念

实际编码中不会直接使用量化步长,而是使用 QP(量化参数)

QP 的特点:

  • 是一个整数控制参数
  • 与量化步长呈指数关系
  • 便于码率控制

在 H.264 中:

含义是:

  • QP 每增加 6
  • 量化步长翻倍
  • 码率约减半

3. QP 的范围

标准 QP 范围
H.264 0 ~ 51
H.265 0 ~ 51
AV1 类似 QP,但更复杂

经验值:

  • QP 18~22:高质量
  • QP 23~28:常见直播/监控
  • QP > 30:明显失真

均匀量化与非均匀量化

1. 均匀量化(Uniform Quantization)

特点:

  • 所有系数使用相同量化步长
  • 实现简单
  • 计算复杂度低

缺点:

  • 不考虑人眼感知差异
  • 低频和高频一视同仁

早期编码或简化实现常用。

2. 非均匀量化(Non-uniform Quantization)

核心思想:

不同频率分量采用不同量化精度

常见方式:

  • 低频:小步长(保细节)
  • 高频:大步长(多丢弃)

实现手段:

  • 量化矩阵(Quantization Matrix)
  • 频率加权

JPEG、MPEG、H.264 中均有体现。

量化矩阵(Quantization Matrix)

1. 量化矩阵的作用

量化矩阵用于:

  • 对不同位置的变换系数使用不同权重
  • 体现人眼对频率的敏感度差异

例如:

  • DC 分量权重最小
  • 越靠近右下角(高频),权重越大

2. 量化矩阵示例(8×8)

复制代码
 8 16 19 22 26 27 29 34
16 16 22 24 27 29 34 37
19 22 26 27 29 34 34 38
22 22 26 27 29 34 37 40
...

高频系数量化更粗,容易被置零。

3. 在视频编码中的应用

  • H.264:支持自定义 scaling matrix
  • H.265:支持更灵活的 scaling list
  • 可针对不同场景优化(监控 / 动画 / 真人视频)

量化误差与失真分析

1. 量化误差来源

量化误差主要来自:

  • 舍入误差
  • 截断误差

误差特点:

  • 不可逆
  • 与量化步长成正比

2. 量化噪声

量化会引入:

  • 块效应(Block Artifact)
  • 振铃效应(Ringing)
  • 细节丢失

尤其在:

  • 大 QP
  • 平坦区域
  • 低码率场景下更明显

3. 对主观质量的影响

量化对画质的影响具有:

  • 非线性
  • 区域相关性
  • 内容相关性

例如:

  • 人脸区域更敏感
  • 天空、墙面容易出现色块

自适应量化(Adaptive Quantization)

1. 为什么需要自适应量化

固定 QP 的问题:

  • 复杂区域不够清晰
  • 简单区域浪费码率

自适应量化目标:

在相同码率下提升主观画质

2. 常见自适应策略

(1)基于宏块/CTU
  • 不同宏块使用不同 QP
  • 复杂区域:低 QP
  • 平坦区域:高 QP
(2)基于视觉模型
  • 人脸检测
  • ROI(Region of Interest)
(3)基于残差能量
  • 残差大 → 细量化
  • 残差小 → 粗量化

3. 在实际编码器中的应用

  • x264 / x265
  • VBR / CBR 码控
  • 监控与直播场景大量使用

量化与码率控制的关系

量化是码率控制的核心手段:

  • 码控算法决定 QP
  • QP 决定量化步长
  • 量化步长决定最终码率

典型码控流程:

复制代码
目标码率
 → 预测复杂度
 → 计算 QP
 → 量化
 → 实际码率反馈

量化在不同编码标准中的演进

1. H.264

  • 4×4 / 8×8 整数变换
  • QP 步进为 1
  • 支持 scaling matrix

2. H.265(HEVC)

  • 4×4 ~ 32×32 变换
  • 更精细的 QP 控制
  • 更复杂的 scaling list

3. AV1

  • 更复杂的量化模型
  • 更强的感知优化
  • 更高压缩效率

总结

量化是视频压缩中最核心、最关键、也是最复杂的技术之一

  • 它是唯一引入不可逆失真的环节
  • 决定了画质与码率的根本平衡
  • 与人眼感知、码率控制、编码效率紧密相关

一句话总结:

预测决定"差多少",变换决定"怎么表示",量化决定"丢多少"

相关推荐
却道天凉_好个秋2 小时前
音视频学习(七十六):熵编码
音视频·视频压缩
程序猿追4 小时前
在昇腾NPU上实战部署LongCat-Video:从环境配置到长视频生成的完整指南
python·大模型·华为云·音视频
Yutengii4 小时前
小红书的视频怎么下载到本地,实测6款下载工具
音视频
非凡ghost4 小时前
Topaz Video(人工智能视频增强软件)
人工智能·windows·学习·音视频·软件需求
zbguolei4 小时前
Windows平台下SRS实时视频服务器的搭建
服务器·windows·音视频
骄傲的心别枯萎4 小时前
RV1126 NO.58:ROCKX+RV1126人脸识别推流项目之读取人脸数据库并保存到map
linux·数据库·计算机视觉·音视频·rv1126
萌虎不虎14 小时前
【在鸿蒙系统中实现录制视频预览功能】
华为·音视频·harmonyos
GISer_Jing18 小时前
AI在前端开发&营销领域应用
前端·aigc·音视频
音视频牛哥1 天前
深入探讨后台摄像头|麦克风采集与轻量级RTSP服务|RTMP推流架构设计
音视频·大牛直播sdk·安卓camera2采集推送·安卓camera2后台采集推流·安卓camera2后台rtmp·安卓camera2后台rtsp·camera2后台rtsp服务