数字图像处理(1):JPEG分析 & 实践(C语言)

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

在这里插入图片描述
生命短暂而信息无穷……缩写是无法避免的灾难,而缩写创造者的任务就是要尽力做好工作。尽管缩写有害,但总比什么都不做强。 ——阿道斯· 赫胥黎

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分别表示绿色和红色的“色差值”。 有损压缩首先要做的事情就是“把重要的信息和不重要的信

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值