简述JPEG静态图象压缩编码的过程及其实现技术 5

 我来答
shg2ff
2007-01-15 · TA获得超过6326个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:9844万
展开全部
不是吧。。。。啥专业?
10、详述JPEG静态图象压缩编码原理及实现技术。

答:JPEG是由国际电报咨询委员会(CCITT)和国际标准化协会(OSI)联合组成的一个图象专家小组开发研制的连续色调、多级灰度、静止图象的数字图象压缩编码方法。JPEG适于静止图象的压缩,此外,电视图象序列的帧内图象的压缩编码也常采用JPEG压缩标准。JPEG数字图象压缩文件作为一种数据类型,如同文本和图形文件一样地存储和传输。基于离散余弦变换(DCT)的编码方法是JPEG算法的核心内容。算法的编解码过程如教材136页图4.25-4.26所示。编码处理过程包括原图象数据输入、正向DCT变换器、量化器、熵编码器和压缩图象数据的输出,除此之外还附有量化表和熵编码表(即哈夫曼表);接收端由信道收到压缩图象数据流后,经过熵解码器、逆量化器、逆变换(IDCT),恢复并重构出数字图象,量化表和熵编码表同发送端完全一致。编码原图象输入,可以是单色图象的灰度值,也可以是彩色图象的亮度分量或色差分量信号。DCT的变换压缩是对一系列8*8采样数据作块变换压缩处理,可以对一幅像,从左到右、从上到下、一块一块(8*8/块)地变换压缩,或者对多幅图轮流取8*8采样数据块压缩。解码输出数据,需按照编码时的分块顺序作重构处理,得到恢复数字图象。

具体的实现技术如下:

(1)首先把一幅图象分8*8的子块按图中的框图进行离散余弦正变换(FDCT)和离散余弦逆变换(IDCT)。

在编码器的输入端,原始图象被分成一系列8*8的块,作为离散余弦正变换(FDCT)的输入。在解码器的输出端,离散余弦逆变换(IDCT)输出许多8*8的数据块,用以重构图象。8*8 FDCT和8*8 IDCT数学定义表达式如下:

离散余弦正变换(FDCT)可看作为一个谐波分析仪,把离散余弦逆变换(IDCT)看作一个谐波合成器。每个8*8二维原图象采样数据块,实际上是64点离散信号,该信号是空间二维参数x和y的函数。FDCT把这些信号作为输入,然后把它分解成64个正交基信号,每个正交信号对应于64个二维(2D)空间频率中的一个,这些空间频率是由输入信号的频谱组成。FDCT的输出是64个基信号的幅值(即DCT系数),每个系数值由64点输入信号唯一地确定,即离散余弦变换的变换系数。在频域平面上变换系数二维频域变量u和v的函数。对应于u=0,v=0的系数,称做直流分量(DC系数),其余63个系数称做交流分量(AC系数)。因为在一幅图象中像素之间的灰度或色差信号变化缓慢,在8*8子块中像素之间相关性很强,所以通过离散余弦正变换处理后,在空间频率低频范围内集中了数值大的系数,这样为数据压缩提供了可能。远离直流系数的高频交流系数大多为零或趋于零。如果FDCT和IDCT变换计算中计算精度足够高,并且DCT系数没有被量化,那么原始的64点信号就能精确地恢复。

(2)量化

为了达到压缩数据的目的,对DCT系数F(u,v)需作量化处理。量化处理是一个多到一的映射它是造成DCT编解码信息损失的根源。在JPEG标准中采用线性均匀量化器。量化定义为,对64个DCT变换系数F(u,v)除以量化步长Q(u,v)后四舍五入取整。即量化器步长是量化表的元素,量化表元素随DCT变换系数的位置而改变,同一像素的亮度量化表和色差量化表不同值,量化表的尺寸也是64,与64个变换系数一一对应。量化表中的每一个元素值为1至255之间的任意整数,其值规定了对应位置变换系数的量化器步长。在接收端要进行逆量化,逆量化的计算公式为:

不同频率的余弦函数对视觉的影响不同,量化处理是在一定的主观保真度图像质量的前提下,可据不同频率的视觉阈值来选择量化表中的元素值的大小。根据心理视觉加权函数得到亮度化表和色度量化表。DCT变换系数F(u,v)除以量化表中对应位置的量化步长,其幅值下降,动态范围变窄,高频系数的零值数目增加。

(3)熵编码

为进一步达到压缩数据的目的,需对量化后的DC系数和行程编码后的AC系数进行基于统计特性的熵编码。64个变换系数经量化后,坐标u=v=0的值是直流分量(即DC系数)。DC系数是64个图像采样平均值。因为相邻的8×8块之间有强的相关性,所以相邻块的DC系数值很接近,对量化后前后两块之间的DC系数差值进行编码,可以用较少的比特数。DC系数包含了整个图像能量的主要部分。经量化后的63个AC系数编码时从左上方AC(u=7,v=7)开始,沿箭头方向,以“Z”字形行程扫描,直到AC(u=7,v=7)扫描结束。量化后特编码的AC系数通常有许多零值,沿“Z”字形路径行进,可使零AC系数集中,便于使用行程编码方法。63个AC系数行程编码和码字,可用两个字节表示。JPEG建议使用两种熵编码方法:Huffman编码和自适应二进制算术编码。熵编码可分成两步进行,首先把DC和AC系数转换成一个中间格式的符号序列,第二步是给这些符号赋以变长码字。

参考资料: http://www.sytvu.cn/lwt/work%204.htm

上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式