JPEG图像预处理
来源:互联网 发布:linux find查找文件名 编辑:程序博客网 时间:2024/05/04 01:16
JPEG编码可分为基本系统、扩展系统和无损系统:Baseline System、Extended System和Lossless System:
JPEG编码参数:
l 输入数据为YCbCr型。数据的范围应是有符号数(满足DCT要求),数据可以是交织的也可以是未交织的。
l 可以进行8或12bit精度的编码,无损模式可以进行2~16bit精度的编码。
l 具有JFIF格式(两个版本0×0101,0×0102)。
l XY密度可选择不指定、英寸和厘米。
l 可以拥有1~255个分量。每个分量的精度必须相同。
l 可以采用8bit或16bit量化。同时JPEG也支持设定量化质量等级,但是压缩比例会因图像而异。
JPEG编码提供了四种模式
l DCT-based顺序模式(Sequential encoding):图像中的每个分量均采用从左至右,从上至下的方式进行扫描。仅能实现8或者12bit精度的编码,对于其他精度表示的图像由用户负责对应转换工作。
l DCT-based渐进模式(Progressive encoding):当图像传输所需时间较长或接收者希望观看到的图像由粗糙至清晰时,图像将以多重扫描进行编码。
l 无损模式(Lossless encoding):编码后能保证精确的恢复每一个像素值,但是压缩比将降低(通常为2:1)。无损模式主要以预测取代DCT和量化,能够实现2~16bit精度的编码。
l 分级模式(Hierarchical encoding):此模式下,图像将以不同分辨率大小进行压缩,这样接收端可以获取低分辨率图像,而不需对所有数据码流进行解压。
所有模式中最常用的是JPEG(Baseline)。此模式规定:
l 图像统一分割为8*8的数据块;
l 每个分量必须具有同样的表示精度;
l 图像可包含1或者3个色彩分量,即颜色模式可设置为grayscale和YCbCr;
l 可以拥有两套量化表,规定每个分量的量化精度为8bit;
l 基本模式规定熵编码采用huffman表。可以拥有两套熵编码表。每套表包括一张DC编码表和一张AC编码表。
因此图像在进行分片前需要进行预处理,具体包括三步:
(1) 颜色空间的转换
JPEG输入的数据为YCbCr格式,因此RGB或YUV格式都必须转换为YCbCr。转换公式可查阅有关色度空间资料。
(2) 空间滤波
对于4:4:4或4:2:2采样的图像可以统一处理为4:2:0压缩图像带宽。由于JPEG压缩对每个分量分别进行,所以通过预处理能够大大减少计算量。
(3) 表示范围的调整
8位DCT处理的数据范围是-128~127,因此进行DCT变换前,需要将YCbCr像素值做相应的调整,例如Y减去128.
- JPEG图像预处理
- 图像预处理
- 图像预处理
- 图像预处理
- 图像预处理:图像增强
- JPEG 图像压缩
- GDAL创建JPEG图像
- JPEG图像编解码
- 显示JPEG图像
- JPEG图像编码解码
- jpeg图像压缩原理
- JPEG图像压缩
- 读取jpeg图像数据
- 【图像处理】JPEG Tags
- JPEG图像解压缩操作
- JPEG系列三 JPEG图像压缩
- JPEG系列四 JPEG图像压缩优化
- JPEG图像的解压缩操作
- 利用javascript来限制文本的一些文本输入限制
- 一个可以格式化输出的XML类(C++)
- 检查自己的SQL SERVER 2000的版本号及相应的补丁版本(转贴)
- POI-乱码问题小结
- LDAP介绍
- JPEG图像预处理
- Servlet API
- GNU Compile Tools, 可执行文件, 静态链接库, 动态链接库
- 关于ASP开发中传参的问题
- 禁止部分用户使用ssh登陆
- asp.net用url重写URLReWriter实现任意二级域名 - 牵手 |阿森纳青年军向前进,我也要加油! - 博客园
- DOS(Denial of Service,即拒绝服务)
- java编程规范(继续更新中......)
- 初始qt,第一个编译错误