文章目录

生命短暂而信息无穷……缩写是无法避免的灾难,而缩写创造者的任务就是要尽力做好工作。尽管缩写有害,但总比什么都不做强。 ——阿道斯· 赫胥黎
1. JPEG格式
JPEG是Joint Photographic Experts Group(联合图像专家组)的缩写,文件后辍名为".jpg"或".jpeg",是最常用的图像文件格式,由一个软件开发联合会组织制定,是一种有损压缩格式,能够将图像压缩在很小的储存空间,图像中重复或不重要的资料会被丢失,因此容易造成图像数据的损伤。尤其是使用过高的压缩比例,将使最终解压缩后恢复的图像质量明显降低,如果追求高品质图像,不宜采用过高压缩比例。
但是JPEG压缩技术十分先进,它用有损压缩方式去除冗余的图像数据,在获得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像品质。而且 JPEG是一种很灵活的格式,具有调节图像质量的功能,允许用不同的压缩比例对文件进行压缩,支持多种压缩级别,压缩比率通常在10:1到40:1之间,压缩比越大,品质就越低;相反地,压缩比越小,品质就越好。
2. JPEG原理&压缩流程
原理可简单理解为:把数据分为“重要部分”和“不重要部分”,滤掉不重要的部分。
2.1 步骤一:图像分割
JPEG算法的第一步,图像被分割成大小为8X8的小块,这些小块在整个压缩过程中都是单独被处理的。
2.2 步骤二:颜色空间转换RGB->YCbCr
Y表示亮度(Luminance),Cb和Cr分别表示绿色和红色的“色差值”。 有损压缩首先要做的事情就是“把重要的信息和不重要的信

本文深入解析JPEG图像压缩原理,包括图像分割、颜色空间转换、离散余弦变换、数据量化及哈弗曼编码等关键步骤,并通过实例展示如何使用C++在VS2015平台上实现JPEG图像压缩。
最低0.47元/天 解锁文章
8784





