正向矩阵(DCT)变换后还是一个矩阵,怎么减少存储空间

正向矩阵变换(如DCT、整数DCT等)本身输出的依然是矩阵,但通过能量集中特性 和后续的量化、熵编码等步骤,能够显著减少存储空间。这一过程的核心逻辑是:变换将原始数据的冗余信息集中到少数系数中,使大部分系数可被高效压缩或丢弃。

为什么变换后的矩阵能减少存储空间?

  1. 能量集中:从"分散"到"集中"

    原始图像或视频残差块的像素值通常具有较强的空间相关性(例如相邻像素值接近),数据分布较为分散,直接存储会有大量冗余。

    而变换(如DCT)的核心作用是将这种空间域的冗余 转换为频率域的能量集中 ------即把原始数据的能量(信息)集中到少数低频系数中,而高频系数(对应细节、边缘的快速变化)的值很小甚至接近0。

    例如:一张平坦区域的4x4像素块,原始像素值可能都是255,变换后低频系数(左上角)会很大,其他高频系数几乎为0。

  2. 量化:保留重要信息,丢弃次要信息

    变换后的矩阵虽然仍是矩阵,但系数的"重要性"差异极大。通过量化步骤(用一个量化矩阵对变换系数进行除法取整),可以进一步放大这种差异:

    • 低频系数(能量集中区)被轻度量化,保留较大值;
    • 高频系数(能量微弱区)被重度量化,很多会变成0。
      量化后的矩阵中会出现大量连续的0,为后续压缩创造条件。
  3. 熵编码:高效压缩非零值和零

    经过量化后,矩阵中充满了0和少量非零值。此时通过熵编码(如Huffman编码、算术编码):

    • 对连续的0采用"游程编码"(记录0的数量而非逐个存储);
    • 对非零值根据其出现概率分配更短的编码。
      最终将矩阵转换为紧凑的二进制流,大幅减少存储空间。

举例说明:4x4像素块的压缩过程

假设一个4x4的残差块(原始数据,范围-128~127):

复制代码
[ 2,  3,  2,  1]
[ 3,  4,  3,  2]
[ 2,  3,  2,  1]
[ 1,  2,  1,  0]
  1. 正向DCT变换后:能量集中到低频系数(左上角),高频系数值很小:

    [24, 5, 0, -1]
    [ 6, 2, 0, 0]
    [ 0, 0, 0, 0]
    [-1, 0, 0, 0]

  2. 量化后:高频小系数被量化为0,矩阵变得稀疏:

    [3, 1, 0, 0]
    [1, 0, 0, 0]
    [0, 0, 0, 0]
    [0, 0, 0, 0]

  3. 熵编码后:用游程编码记录连续的0,非零值用短码表示,最终存储的二进制数据远小于原始矩阵(原始需16×8=128比特,编码后可能仅需20比特左右)。

总结

正向矩阵变换本身不直接减少数据量,但它通过能量集中 为后续的量化和熵编码提供了基础------让大部分数据变成可高效压缩的0,最终实现存储空间的大幅减少。这也是所有基于变换的压缩算法(如JPEG、H.264)的核心逻辑:变换是"预处理",量化和熵编码是"压缩执行",两者结合才能实现高效存储。

相关推荐
_大峰_3 小时前
索尼 A7M4 误删视频恢复实战:基于原始卡镜像重建 MP4 数据
ffmpeg·数据恢复·音视频·mp4·exfat
AOI小白新手上路4 小时前
视频去雨·论文蒸馏笔记:从物理先验到状态空间模型
数据库·笔记·音视频
小码哥0685 小时前
搭建短剧系统|海外短剧:从需求到上线的指南
网络·数据库·音视频·短剧小程序·短剧系统·短剧开发·短剧后台
怪奇云呼军5 小时前
教育试听预约后没到课,闪电智能 Voice Agent 如何做分层回访?
人工智能·python·算法·云计算·音视频
做萤石二次开发的哈哈6 小时前
带摄像头的号角怎么对接?从音视频对讲链路到音频参数配置的实施要点
物联网·音视频·语音对讲·萤石开放平台·蓝海aiot一站式工作台·语音喊话·园区广播
Anhty8 小时前
3 款手机音频剪辑 APP 横评,短视频配音后期,免费工具怎么选?
功能测试·ffmpeg·音视频
lingyubb8 小时前
支持多语种配音的短视频配音工具横向评测|出海内容技术拆解
自然语言处理·音视频·语音识别·ai配音·多语种
智能直播9 小时前
RK3528 RGA+DRM框架 HDMI out视频输出:从多图层合成到显示送显
视觉检测·音视频·实时音视频·视频编解码
释厄6239 小时前
智能体释放度子集律——文本 ⊂ 音频 ⊂ 视频⊂ 游戏
开发语言·游戏·microsoft·音视频
揽秀亭长9 小时前
音频如何转换为乐谱?扒谱流程与关键技术分析
人工智能·音视频