JPEG压缩编码方法与实现

JPEG压缩编码方法与实现

                             电子信息学院   戴玉超   学号:056080460

一.        数据压缩问题的描述

信息的本质,要求交流和传播。一个统一的数字传输系统系统模型如图1所示。

1.数字传输系统模型

数据压缩,就是以最少的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间。所谓信号空间即被压缩对象是指:(1)物理空间(2)时间区间(3)电磁频谱区域。

二.        数据压缩的可能性和必要性

数据压缩的必要性: 信息时代的重要特征是信息的数字化,数字化了的信息带来了“信息爆炸”。多媒体计算机系统技术是面向三维图形、立体声和彩色全屏幕运动画面的处理技术。数字计算机面临的是数值、文字、语言、音乐、图形、动画、静图像、电视视频图像等多种媒体,承载的由模拟量转化成数字量信息的吞吐、存储和传输的问题。数字化了的视频和音频信号的数量之大是非常惊人的。直接存储和传输庞大的数据不但开销很大,而且有时设备也无法承受如此大的负荷,并且通信带宽和存储容量有限,因此实现对于图像等数据进行高比特率的数据压缩显得尤为重要起来。

数据压缩的可能性在于数据本身存在的冗余。对于图像而言,图像数字化之后,形成了大量的二进位数据。然而,由于图像的冗余性,表示一幅图像并不需要那么多二进位。一般来讲,数字图像存在以下类型的冗余:

(一)   空间冗余:一幅图像中相邻像素的灰度值(彩色值)基本上是一致的(除去图像边缘像素点),图像相邻像素的数值是相关的。

(二)   频域冗余:在RGB彩色图像中不同色平面或频段是相关的。

(三)   时间冗余:在视频图像中,不同的图像帧是相关的。

(四)   信息熵冗余:也称为编码冗余。对于实际图像数据的每一个像素,很难得到它的信息熵,因此在数字化一幅图像时表示像素的比特通常存在冗余。

(五)   视觉冗余:人类的视觉系统对于图像的注意是非均匀和非线性的,特别是人类的视觉系统并不是对于图像中的任何变化都能感知。由于人是各类图像处理系统的最终接受者和评价者,而人眼的视觉特点产生了相应的视觉心理冗余。

另外,还存在结构冗余,知识冗余等冗余形式。

数字图像压缩的目的在于去除图像的冗余和不必要的信息,在不降低图像视觉质量的情况下,减少图像的数据量和存储空间,提高图像的传输速率。通过对图像信源进行编码,使编码数据流小于原始数据流,达到压缩的目的。

三.        数据压缩方法

数据压缩是有效率的,它是衡量一种编码标准的重要因素。总的来说,压缩比越大,压缩后的码率就低,分辨率相对也低;反之亦然。下面主要意图像和视频为例加以说明。图像的压缩是有损的,可能产生压缩失真。目前,已实际使用的活动图像压缩编码后的码率低到几至几十kbit/s,广播级的图像码率一般为26Mbit/s

图像编码技术具有广阔的应用前景,特别是网络技术不断涵盖各个领域的今天,发达国家投入大量的资金和人力资源进行开发研究。一些新的压缩编码方法与算法不断出现。基于模型并被称为新一代的压缩编码方法正在深入研究之中,目前,有人把图像压缩编码方法分为三大类:第一类基于图像信源的统计特性,MPEG-1MPEG-2属于这一类;第二类基于人眼视觉特征,采用图像轮廓一纹理的编码方法;第三类基于图像的景物特征,采用模型的编码方法,有人把第二类和第三类统称为第二代编码方法,目前通过的标准有MPEG-4。下面简介第一类常用的压缩编码方法。

1.亚抽样编码方式

它分空间和时间亚抽样两种方式。空间亚抽样采用降低每行、每帧的像素进行抽样传输,以此达到压缩码率的目的,对于未传的像素,用其周围相邻像素经过运算后求出,再补插上去来恢复图像。时间亚抽样采用图像隔帧传输,来降低码率,在接收端对于未传的帧,通过前后帧计算出来,再补插上去。亚抽样方式中传输的像素和帧的数量大小,可根据不同的应用范围、清晰度的要求去确定。

2.差值和预测编码方式

差值编码方式根据图像内容一般都是连续变化而突变内容较少的特点,只传送帧内相邻像素之间的差值,或两帧对应像素之间的差值。这个差值必然比它们的原值小,甚至为零。这样就可以减少数据的传送,达到压缩码率的目的。

预测编码不仅利用相邻像素样值的相关性,还利用与其他行和其他帧的像素值的相关性,通过计算,用更接近当前样值的预测值和当前值相减,这样,差值会进一步变小,小幅度差值就会进一步增加,使总码率进一步减少。实质上,差值编码就是以前一个样值为预测值的预测编码,预测编码有一维、二维、三维之分。

3.具有运动补偿的帧间预测编码

当图像中有较大的运动画面时,相邻帧差信号中大幅度值会大量增加,如果利用简单的帧间预测编码,其预测值会出现很大偏差,为适应这种情况,人们开发了多种方式及算法,来求出相邻帧间运动图像部分的运动矢量,然后用该矢量对帧间预测值进行修正(也叫运动补偿),减小预测值误差,从而提高对运动图像的编码质量。

4.变换编码

变换编码是通过某种数学变换,把图像从一个域变换到另一个域,使本来复杂的图像变得简单或有更好的统计特性,从而便于进一步编码,例如:一帧图像内容以不同的亮度和色度像素分布体现出来,而这些像素的分布依图像内容而变,毫无规律可言。但是通过离散余弦变换(DCT);像素分布就有了规律。代表低频成份的量分布于左上角,而越高频率成份越向右下角分布。然后根据人眼视觉特性,去掉一些不影响图像基本内容的细节(高频分量),从而达到压缩码率的目的。离散余弦变换与其他方式结合进行压缩编码,已广泛应用于各种图像压缩编码标准中。

5.变字长编码

图像进行各种方式压缩后,对出现概率大的符号给短码,对出现概率低的符号给长码,采用这种科学的变字长码编码,可提高信源编码效率。

每种压缩编码标准中,都采用多种压缩编码方式进行图像压缩编码,其目的是为了既有高的图像压缩比,又便于图像还原。

四.        JPEG图像压缩

我这次所完成的程序是基于DCT变换的JPEG压缩编码的实现采用的VisualC++6.0 +MFC实现,本软件当前支持所有bmp图像文件的读取与显示,支持对于24bmp图像的Jpeg压缩。

下面介绍一下JPEG压缩编码中使用的方法和JPEG压缩标准。

41 JPEG压缩编码流程

JPEG是关于连续色调多极灰度、静止图像的第一个数字图像压缩编码国际标准,它不仅适用于静止图像的压缩,也适用于电视图像序列的帧内图像压缩。

基本JPEG编码器和解码器(基于DCT变换)的

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 109
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 109
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值