news 2026/5/1 11:19:53

数字图像处理篇---JPEG

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数字图像处理篇---JPEG

核心比喻:画一幅印象派油画

假设你要临摹一张细节丰富的照片,但时间有限、画布也很贵。JPEG的做法就像一位印象派画家

  1. 先画轮廓和大色块(这是最重要的信息)。

  2. 对于远处树叶的细碎纹理、墙上的微小斑点,就用笔触稍微“糊弄”一下,眯起眼来看整体效果差不多就行。

  3. 观众站在正常距离看,会觉得画得很像;但若凑得非常近用放大镜看,就会发现很多细节是模糊的色块。

JPEG就是一种“印象派”的图像压缩技术:在保证人眼远看效果的前提下,聪明地省掉费时费力的超精细细节。


具体是怎么“糊弄”的?8步拆解

想象我们把照片交给JPEG“压缩工厂”,它会严格按照流水线处理:

第一步:分块(准备工作)

  • 把整张图片切成很多个8像素 × 8像素的小方块,就像马赛克一样。后续所有操作都以一个“块”为单位进行。

第二步:颜色转换(利用人眼弱点)

  • 把每个块的颜色信息,从RGB模式(红、绿、蓝)转换成YCbCr模式

    • Y亮度(Luminance),记录明暗。人眼对此极度敏感

    • Cb, Cr色度(Chrominance),记录颜色偏移。人眼对此比较迟钝

  • 关键技巧:JPEG通常会把色度信息扔掉一半(比如4个像素共用一组颜色值)。这是第一次有损压缩,但因为你眼睛不敏感,所以几乎察觉不到。

第三步:离散余弦变换(DCT,核心魔法)

  • 对每个8x8的块,进行一种名为DCT的数学变换。

  • 变换前:块里是64个不同的像素亮度值。

  • 变换后:变成64个频率系数,排列成8x8的矩阵。

    • 左上角的值是低频系数,代表这个块的整体轮廓和主要色块(非常重要!)。

    • 右下角的值是高频系数,代表这个块的细微纹理和边缘细节(比如头发丝、树叶脉络)。

第四步:量化(有损压缩的关键一步)

  • 这是“糊弄”的核心!JPEG拿出一张量化表,表上的数字越大,表示压缩得越狠。

  • 操作:用DCT系数除以量化表上对应的数字,然后四舍五入取整数

  • 结果

    • 重要的低频系数除以较小的数,得以较好保留。

    • 不重要的高频系数除以很大的数,结果直接变成0或接近0

  • 量化表越“激进”,产生的0就越多,图片文件就越小,但细节损失也越严重。这是图像质量下降的主要原因

第五步:Z字形扫描与打包

  • 经过量化后,矩阵右下角会出现一大串连续的0。JPEG聪明地按“之”字形顺序(从左上低频到右下高频)把64个数字排成一串。这样,末尾的一长串0就很容易处理了。

第六步:熵编码(最后的无损压缩)

  • 对这一长串数字(尤其是那串0)进行哈夫曼编码(一种用短代码表示常见数字的技巧),完成最后的“打包”,生成最终的.jpg文件。


解压(看图片)时,过程相反:

  1. 解码哈夫曼编码。

  2. 把数据填回8x8矩阵。

  3. 乘以量化表(注意:被量化为0的高频信息永远丢失了!这就是为什么JPEG压缩不可逆)。

  4. 进行逆DCT变换,变回像素值。

  5. 颜色空间转换回RGB。

  6. 把所有块拼回完整的图片。


JPEG的特点(优缺点)

优点:

  • 压缩率极高:能把图片文件缩小到原来的1/10甚至1/20,而人眼在正常观看距离下几乎看不出差别

  • 通用性极强.jpg是世界上最通用的图片格式。

缺点(副作用):

  1. 块状伪影:如果压缩得太狠(量化表太激进),在颜色或亮度剧烈变化的边界(比如天空和建筑的边缘),原本平滑的过渡会变成可见的、一格一格的“马赛克”(块效应)。

  2. 模糊与振铃:细节丰富的区域(如草地、毛发)会变得模糊,并且在锐利边缘旁边可能出现虚假的波纹或光环

  3. 不适合反复编辑保存:每保存一次JPEG,就相当于重新“糊弄”一次,细节损失会累积,图像质量会像复印件的复印件一样越来越差。

一句话总结

JPEG就像一个聪明的“视觉魔术师”。它利用人眼对亮度敏感、对色度和高频细节不敏感的特性,通过“分块->转频率域->大胆舍弃高频细节”的三步法,用极小的文件大小,换取了人眼观感上几乎无损的图像效果。它是为“观看”而生的,不是为“反复编辑”而生的。

框图要点解读:

  1. 从核心理念出发:JPEG的一切设计都围绕“利用人眼感知特性进行有损压缩”这一核心。它不是为完美还原,而是为高效观看。

  2. 三步预处理

    • 分块:将大问题分解为可并行处理的小单元(8x8块)。

    • 色彩转换:转换为YCbCr色彩空间,这是利用人眼生理特性的第一步。下采样色度是首次有损操作,但效果显著且感知损失小。

  3. 核心压缩流程(对每个块)

    • DCT变换:将信息从像素域转换到频率域。这是技术的关键,实现了“能量集中”—— 将图像的主要信息(能量)集中在少数低频系数上。

    • 量化:这是“有损”和“智能取舍”的灵魂。通过精心设计的量化表,系统性地丢弃对人眼不重要的高频细节量化表的激进程度直接决定了最终的图像质量和文件大小

  4. 高效打包

    • Z字形扫描:一种巧妙的排序方法,目的是将量化后产生的大量0(通常集中在高频区)排列在一起,为后续压缩创造最佳条件。

    • 熵编码:最后一步使用成熟的无损编码技术(哈夫曼编码)对非零值和零游程进行极致压缩,生成紧凑的二进制码流。

  5. 解压的不可逆性:必须强调,解压是压缩的逆向过程,但量化中被舍入(特别是归零)的高频信息已永久丢失。这是“有损”的本质,也是产生视觉瑕疵的根源。

  6. 特征与副作用

    • JPEG是为连续色调的自然图像(如照片)优化的。它对大块平缓颜色和渐变区域压缩效果极好。

    • 副作用(块效应、模糊、振铃)在过度压缩或压缩包含锐利边缘和文字的图像时会变得非常明显。

总之,JPEG是一个精巧的、针对人眼视觉系统弱点进行“精准打击”的工程杰作。它在文件大小和视觉保真度之间取得了划时代的平衡,从而成为数十年来最主流的图像格式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 9:40:45

切图仔面试被说缺乏产品思维

下面用「一句话定义 五个症状 三个解法」帮你彻底理解「缺乏产品思维」,并给出前端/后端/算法岗各自的可落地改进方案。 一、一句话定义 产品思维 从「用户价值」和「商业目标」出发做技术决策,而非只追求代码完美或技术先进。 缺乏产品思维 技术自嗨…

作者头像 李华
网站建设 2026/5/1 9:56:17

【Qt初识】使用 Qt Creator 新建项目

文章目录1. Qt Creator 概览 2. 使用 Qt Creator 新建项目3. 认识 Qt Creator 界面3.1 左边栏3.2 代码编辑区3.3 UI设计界面3.4 项目文件介绍3.5 构建区下载并安装好Qt之后,我们可以在开始菜单中找到下载好的文件,如下:1. Qt Creator 概览 …

作者头像 李华
网站建设 2026/5/1 7:13:14

PLS-200型电液伺服桥梁伸缩装置试验系统

PLS-200型电液伺服桥梁伸缩装置试验系统 一、功能特点: 1. 电液伺服桥梁伸缩装置试验系统简称为桥梁伸缩缝试验机,用于检测标准中规定的伸缩装置整体性能要求的项目。正常状态以及各种复杂状态下的伸缩装置变位均匀性试验、摩擦阻力试验,实…

作者头像 李华
网站建设 2026/5/1 2:59:10

磁耦合谐振式无线电能传输系统的探索与实现

磁耦合谐振式 无线电能传输电路系统板 LCC-S拓扑补偿网络 发射端电路采用Stm32f103c8t6主控,四路互补带死区的高频PWM与ir2110全桥驱动MOS管。 同时利用LCC器件谐振,所有参数确定和计算由maxwell和simulink计算得出。 接收电路利用S谐振网络补偿。 同时输…

作者头像 李华
网站建设 2026/5/1 7:03:18

探索双闭环 PI 控制的移相全桥变换器

双闭环PI控制的移相全桥变换器。 下图为仿真模型图,4个开关管对应的pwm波形图以及输出电压电流波形图和闭环性能测试输出波形图。 在电力电子领域,双闭环 PI 控制的移相全桥变换器可是个相当重要的存在。今天咱就来唠唠它,顺便结合一些仿真模…

作者头像 李华