【图像压缩】基于多级小波变换DWT图像压缩(含PSNR MSE)附Matlab代码和报告

DWT图像压缩技术详解

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。

🍎 往期回顾关注个人主页:Matlab科研工作室

🍊个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。

🔥 内容介绍

在数字时代,图像数据的 “轻量化” 需求无处不在 —— 从手机拍照存储、社交媒体传输,到卫星遥感数据处理、医疗影像归档,图像压缩技术始终是平衡 “画质” 与 “存储 / 传输效率” 的核心。而在众多压缩算法中,基于多级小波变换(DWT) 的技术凭借其 “接近人眼视觉特性”“压缩比可调”“失真可控” 的优势,成为 JPEG 2000 等主流标准的核心支撑。今天我们就从原理到实践,带大家彻底搞懂 DWT 图像压缩,还会手把手教你用 PSNR 和 MSE 量化评估压缩效果。

一、为什么需要 DWT 图像压缩?先搞懂传统压缩的 “痛点”

在聊 DWT 之前,我们先明白:为什么需要新的压缩技术?

传统的图像压缩(如基础 JPEG)多基于 “离散余弦变换(DCT)”,它通过将图像分割成 8x8 的小块进行变换,但这种 “分块处理” 容易产生块效应(压缩率高时图像出现明显方格);同时,DCT 对图像的 “高频细节”(如边缘、纹理)保留能力较弱,压缩后容易出现 “模糊感”。

而 DWT 的优势恰好能解决这些痛点:

  1. 全局 + 局部兼顾:不依赖分块,可对整幅图像进行多尺度变换,既能捕捉宏观轮廓(低频信息),又能保留细节纹理(高频信息);
  1. 视觉友好:小波变换的 “多分辨率分析” 特性,与人眼对 “低频信息敏感、高频信息不敏感” 的视觉特性高度匹配,压缩时可优先保留低频,合理舍弃高频,主观画质更优;
  1. 压缩比灵活:通过调整 “小波分解级数” 和 “高频系数阈值”,可灵活控制压缩比(从几倍到几十倍),满足不同场景需求(如无损压缩、低失真压缩、高压缩比压缩)。

二、多级小波变换(DWT):图像压缩的 “核心引擎”

要理解 DWT 如何压缩图像,首先得搞懂 “小波变换” 的本质 —— 简单说,它是一种 “信号分解工具”,能将图像从 “像素域” 转换到 “小波域”,把图像信息拆分成 “低频分量” 和 “高频分量”,再通过对分量的 “取舍” 实现压缩。

1. 单级 DWT:一次分解的 “四象限法则”

一幅灰度图像经过单级小波变换后,会被分解为 4 个部分(以 256x256 图像为例,分解后每个部分为 128x128):

  • LL(低频低频):保留图像的 “全局轮廓”(如人脸的大致形状、天空的整体色调),这部分是图像的 “核心信息”,压缩时需尽量保留;
  • LH(低频高频):对应图像 “水平方向的细节”(如物体的垂直边缘、文字的竖线);
  • HL(高频低频):对应图像 “垂直方向的细节”(如物体的水平边缘、文字的横线);
  • HH(高频高频):对应图像 “对角线方向的细节”(如纹理、噪声),这部分信息对人眼感知影响较小,压缩时可大幅舍弃。

2. 多级 DWT:层层分解,效率更高

单级 DWT 的压缩效果有限,而多级 DWT(通常 2-5 级)通过对 “LL 分量” 反复分解,进一步挖掘图像的 “多尺度信息”:

  • 第 1 级分解:得到 LL1、LH1、HL1、HH1;
  • 第 2 级分解:对 LL1 再次分解,得到 LL2、LH2、HL2、HH2;
  • 以此类推,直到达到预设的分解级数(如 3 级分解后,会得到 LL3、LH3、HL3、HH3,以及上一级的 LH2、HL2、HH2、LH1、HL1、HH1)。

多级分解的优势在于:越深层的 LL 分量(如 LL3),包含的图像 “低频信息越集中”,数据量越小;而高频分量(如 HH1、HH2)则可通过 “阈值量化”(如将小于某个阈值的系数置为 0)大幅减少数据量,从而实现高压缩比。

三、DWT 图像压缩的完整流程:从 “分解” 到 “重建”

DWT 图像压缩不是单一步骤,而是 “分解→量化→编码→解码→逆变换→重建” 的闭环流程,每一步都直接影响压缩效果:

1. 步骤 1:图像预处理

  • 先将图像转换为灰度图(若为彩色图,需先分离 RGB 通道,对每个通道单独处理);
  • 对图像尺寸进行调整(若尺寸不是 2 的 n 次幂,需补零或裁剪,确保多级分解后尺寸为整数,避免失真)。

2. 步骤 2:多级小波分解

  • 选择合适的小波基(如 Haar 小波、Daubechies 小波、Symlet 小波,其中 Haar 小波计算简单,适合快速验证;Daubechies 小波(如 db4)平滑性更好,主观画质更优);
  • 设置分解级数(如 3 级,需根据图像类型调整:细节丰富的图像(如风景照)适合 2-3 级,轮廓为主的图像(如图标)适合 4-5 级);
  • 执行多级 DWT,得到各尺度的低频和高频分量。

3. 步骤 3:量化(压缩的 “关键一步”)

  • 量化的核心是 “舍弃冗余高频信息”:对高频分量(LH、HL、HH)采用 “非均匀量化”(高频系数绝对值越小,量化步长越大,压缩越彻底);
  • 对低频分量(LL)采用 “均匀量化”(步长小,尽量保留核心信息);
  • 阈值选择技巧:可通过 “视觉主观评价” 或 “PSNR 目标值” 调整阈值(阈值越大,压缩比越高,但失真也越大)。

4. 步骤 4:编码(减少数据量)

  • 对量化后的小波系数进行 “熵编码”(如霍夫曼编码、算术编码),进一步去除 “统计冗余”:将出现频率高的系数用短码表示,频率低的用长码表示,最终生成压缩后的二进制文件。

5. 步骤 5:解码与逆小波变换

  • 接收端对二进制文件进行 “熵解码”,恢复量化后的小波系数;
  • 执行 “逆多级小波变换(IDWT)”,将小波域系数转换回像素域,得到重建图像。

⛳️ 运行结果

📣 部分代码

% read base image

% dwt 3/5-L on base images

% quantize coeffs (local/global)

% count zero value-ed coeffs

% calculate mse/psnr

% save and show result

% set to 1,2,3 for different images

in = 2;

fam = 'db3'; % wavelet family

lvl = 5; % wavelet depth

% set to 1 to apply global thr

thr_type = 1;

% global threshold value

gthr = 100;

🔗 参考文献

[1] 丁绪星,朱日宏,李建欣.基于自适应提升小波变换的图像压缩[J].光子学报, 2004, 33(2):225-228.DOI:10.1007/s11670-004-0048-0.

[2] 丁绪星,朱日宏,李建欣.基于自适应提升小波变换的图像压缩(英文)[J].光子学报, 2004(02):225-228.DOI:10.1007/s11670-004-0048-0.

🎈 部分理论引用网络文献,若有侵权联系博主删除

 👇 关注我领取海量matlab电子书和数学建模资料 

🏆团队擅长辅导定制多种科研领域MATLAB仿真,助力科研梦:

🌟 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位、冷链、时间窗、多车场等、选址优化、港口岸桥调度优化、交通阻抗、重分配、停机位分配、机场航班调度、通信上传下载分配优化
🌟 机器学习和深度学习时序、回归、分类、聚类和降维

2.1 bp时序、回归预测和分类

2.2 ENS声神经网络时序、回归预测和分类

2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类

2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类

2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类

2.7 ELMAN递归神经网络时序、回归\预测和分类

2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类

2.9 RBF径向基神经网络时序、回归预测和分类

2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌟图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌟 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻、公交车时间调度、水库调度优化、多式联运优化
🌟 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划、
🌟 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌟 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌟电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电、电/冷/热负荷预测、电力设备故障诊断、电池管理系统(BMS)SOC/SOH估算(粒子滤波/卡尔曼滤波)、 多目标优化在电力系统调度中的应用、光伏MPPT控制算法改进(扰动观察法/电导增量法)、电动汽车充放电优化、微电网日前日内优化、储能优化、家庭用电优化、供应链优化
🌟 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌟 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌟 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP

👇

5 往期回顾扫扫下方二维码

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值