LangChain 表达式语言 (LCEL):从序列链接到并行执行

房捣肪腿在讨论图像压缩时,我们经常会同时听到:

JPEG

JPEG Baseline

JPEG Extended

JPEG-LS

JPEG2000

很多资料容易把它们混在一起,仿佛它们只是"同一种 JPEG 的不同版本"。

实际上,它们属于 JPEG 组织发布的不同压缩体系,底层算法思想差异很大。

下面用一张结构图说明它们之间的关系。

一、传统 JPEG(ISO/IEC 10918)

传统 JPEG 是最早也是最广泛使用的 JPEG 标准。

它基于 DCT(离散余弦变换) 的频域压缩思想。

基本流程:

复制代码

图像

8×8 block 划分

DCT 变换

量化

熵编码

复制代码

该标准内部包含多种编码模式,其中最常见的有:

  1. Baseline JPEG

最常见的 JPEG 格式,几乎所有浏览器和图像库都支持。

特点:

8 bit 图像

Huffman 编码

有损压缩

兼容性最好

我们日常说的"JPEG图片",基本指的就是它。

  1. Extended JPEG

Extended Sequential 是 Baseline 的扩展版本。

主要区别:

支持 12 bit 图像

支持 Arithmetic coding

算法仍然是 DCT,只是能力有所增强。不过在实际软件生态中实现较少。

  1. Lossless JPEG(旧版无损)

传统 JPEG 标准里其实还定义了一种 无损模式。

但它使用的是早期预测算法:

压缩效率一般

实现复杂

使用非常少

因此后来被新的标准取代。

二、JPEG-LS(ISO/IEC 14495)

JPEG-LS 是 JPEG 组织后来推出的一个全新标准。

它不再使用 DCT,而是采用 预测编码 思想:

复制代码

图像

邻域预测

计算残差

Golomb 编码

复制代码

特点:

支持 无损压缩

也支持 Near-lossless

速度非常快

无 block artifact

对医学图像和科学图像很友好

JPEG-LS 在医学影像、工业图像领域使用较多。

三、JPEG2000(ISO/IEC 15444)

JPEG2000 是 JPEG 体系中一次较大的技术升级。

它采用 小波变换(Wavelet):

复制代码

图像

Wavelet 变换

分辨率分层

熵编码

复制代码

特点:

支持 有损与无损

支持 多分辨率

支持 渐进传输

支持 ROI 编码

JPEG2000 在以下领域较常见:

数字病理

医学影像(DICOM)

卫星遥感

档案图像存储

四、小结

在日常讨论 JPEG 时,人们经常会问两个问题:JPEG 是否支持无损压缩?是否支持 12 位图像?

从标准角度看,传统 JPEG(ISO/IEC 10918)确实定义了无损模式和 12 位编码方式,但这些模式在实际软件生态中的实现和使用都非常少见。因此在工程实践中,一旦涉及 无损压缩或 12 位图像,通常会直接考虑 JPEG-LS 或 JPEG2000 等后续标准。