基于MATLAB 的图像压缩处理及其实现
基于Matlab的数字图像处理系统设计_毕业论文设计 精品推荐

论文(设计)题目:基于MATLAB的数字图像处理系统设计基于MATLAB的数字图像处理系统设计摘要MATLAB 作为国内外流行的数字计算软件,具有强大的图像处理功能,界面简洁,操作直观,容易上手,而且是图像处理系统的理想开发工具。
笔者阐述了一种基于MATLAB的数字图像处理系统设计,其中包括图像处理领域的大部分算法,运用MATLAB 的图像处理工具箱对算法进行了实现,论述了利用系统进行图像显示、图形表换及图像处理过程,系统支持索引图像、灰度图像、二值图像、RGB 图像等图像类型;支持BMP、GIF、JPEG、TIFF、PNG 等图像文件格式的读,写和显示。
上述功能均是在MA TLAB 语言的基础上,编写代码实现的。
这些功能在日常生活中有很强的应用价值,对于运算量大、过程复杂、速度慢的功能,利用MATLAB 可以既能快速得到数据结果,又能得到比较直观的图示。
关键词:MATLAB 数字图像处理图像处理工具箱图像变换第一章绪论1.1 研究目的及意义图像信息是人类获得外界信息的主要来源,近代科学研究、军事技术、工农业生产、医学、气象及天文学等领域中,人们越来越多地利用图像信息来认识和判断事物,解决实际问题,由此可见图像信息的重要性,数字图像处理技术将会伴随着未来信息领域技术的发展,更加深入到生产和科研活动中,成为人类生产和生活中必不可少的内容。
MATLAB 软件不断吸收各学科领域权威人士所编写的实用程序,经过多年的逐步发展与不断完善,是近几年来在国内外广泛流行的一种可视化科学计算软件。
MATLAB 语言是一种面向科学与工程计算的高级语言,允许用数学形式的语言来编写程序,比Basic、Fortan、C 等高级语言更加接近我们书写计算公式的思维方式,用MATLAB 编写程序犹如在演算纸上排列出公式与求解问题一样。
它编写简单、编程效率高并且通俗易懂。
1.2 国内外研究现状1.2.1 国内研究现状国内在此领域的研究中具有代表性的是清华大学研制的数字图像处理实验开发系统TDB-IDK 和南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件。
MATLAB图象压缩

MATLAB图象压缩预览说明:预览图片所展示的格式为文档的源格式展示,下载源文件没有水印,内容可编辑和复制1.图像压缩的概念减少表示数字图像时需要的数据量2.图像压缩的基本原理去除多余数据.以数学的观点来看,这一过程实际上就是将二维像素阵列变换为一个在统计上无关联的数据集合图像压缩是指以较少的比特有损或无损地表示原来的像素矩阵的技术,也称图像编码.图像数据之所以能被压缩,就是因为数据中存在着冗余。
图像数据的冗余主要表现为:(1)图像中相邻像素间的相关性引起的空间冗余;(2)图像序列中不同帧之间存在相关性引起的时间冗余;(3)不同彩色平面或频谱带的相关性引起的频谱冗余。
3数据压缩的目的就是通过去除这些数据冗余来减少表示数据所需的比特数。
由于图像数据量的庞大,在存储、传输、处理时非常困难,因此图像数据的压缩就显得非常重要。
信息时代带来了“信息爆炸”,使数据量大增,因此,无论传输或存储都需要对数据进行有效的压缩。
在遥感技术中,各种航天探测器采用压缩编码技术,将获取的巨大信息送回地面。
图像压缩是数据压缩技术在数字图像上的应用,它的目的是减少图像数据中的冗余信息从而用更加高效的格式存储和传输数据。
4、图像压缩基本方法图像压缩可以是有损数据压缩也可以是无损数据压缩。
对于如绘制的技术图、图表或者漫画优先使用无损压缩,这是因为有损压缩方法,尤其是在低的位速条件下将会带来压缩失真。
如医疗图像或者用于存档的扫描图像等这些有价值的内容的压缩也尽量选择无损压缩方法。
有损方法非常适合于自然的图像,例如一些应用中图像的微小损失是可以接受的(有时是无法感知的),这样就可以大幅度地减小位速。
从压缩编码算法原理上可以分为以下3类:(1)无损压缩编码种类哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempel zev编码。
(2)有损压缩编码种类预测编码,DPCM,运动补偿;频率域方法:正交变换编码(如DCT),子带编码;空间域方法:统计分块编码;模型方法:分形编码,模型基编码;基于重要性:滤波,子采样,比特分配,向量量化;(3)混合编码。
Matlab技术图像压缩与编码技巧

Matlab技术图像压缩与编码技巧图像压缩是一种将图像数据以更小的尺寸进行存储和传输的技术。
在日常生活和工作中,图像压缩应用广泛,从电视信号传输到图像传感器和医学图像处理都离不开它。
而Matlab作为一种强大且广泛应用的数学计算软件,提供了丰富且高效的图像压缩与编码技巧,本文将逐步探讨和介绍这些技术。
一、图像压缩的基本原理图像压缩的目标是在尽量减小存储空间和传输带宽的同时,尽量保持图像质量。
这可以通过两个基本原理实现:冗余性和信息压缩。
冗余性是指图像中存在的不必要的重复信息。
常见的冗余性包括空间冗余、统计冗余和视觉冗余。
其中,空间冗余是指图像中相邻像素之间的相关性;统计冗余是指像素值的统计分布;视觉冗余是指人眼对某些图像细节变化不敏感。
信息压缩则是通过对图像数据进行编码来减少信息量。
编码分为有损压缩和无损压缩。
有损压缩会以某种方式牺牲一部分图像质量以达到更高的压缩比,而无损压缩则可以精确地还原原始图像。
二、Matlab中的图像压缩技巧1. 离散余弦变换(Discrete Cosine Transform,DCT)离散余弦变换是一种将图像从空间域转换到频域的方法。
在频域中,图像的高频成分可以被量化掉,从而实现图像的压缩。
在Matlab中,可以使用dct2函数来实现离散余弦变换。
以下是一个简单的代码示例:```img = imread('image.jpg');img_gray = rgb2gray(img);dct_img = dct2(img_gray);```2. 量化量化是指将离散傅里叶变换(DCT)的系数舍入到最接近的离散值,从而减少图像数据的精度。
通过调整量化矩阵的参数,可以控制压缩比和图像质量之间的平衡。
以下是一个简单的量化代码示例:```quantization_matrix = [16 11 10 16 24 40 51 61;12 12 14 19 26 58 60 55;14 13 16 24 40 57 69 56;14 17 22 29 51 87 80 62;18 22 37 56 68 109 103 77;24 35 55 64 81 104 113 92;49 64 78 87 103 121 120 101;72 92 95 98 112 100 103 99];quantized_img = round(dct_img ./ quantization_matrix);```3. 熵编码在量化之后,还可以使用熵编码算法对压缩后的数据进行进一步编码。
图像JPEG压缩的matlab实现.

电子科技大学毕业论文 图像JPEG压缩的matlab实现 作者姓名: 专业名称:信息工程
指导教师: 讲师 图像JPEG压缩的matlab实现
-I- 摘要 随着现代经济的发展,影像风暴已经席卷了我们的日常生活,图像对于人们已经息息相关。人们对计算机实时处理图像的要求就相对有所提高。现在我们就面对一个问题,如何在保证图像质量的前提下,同时能够考虑到实时性和高效性就成了一个大家关注的问题。那么对图像数据信息进行必要的压缩,以便能够保证图像的快速存储和传输。但是,我们通常看到的图像是一种重要的二维信号,所以它本身就包含非常庞大的数据量,为了快速存储和实时传输,就必须对图像信息进行相应的压缩处理。新兴的数学工具是局域DCT变换是一种新兴的数学工具,在现在社会中,图像压缩技术现在正受到大量的关注与研究。 本次课题设计在分析近年来,在图像处理领域,对图像压缩普遍方法的基础之上,充分学习和分析了基于DCT变换的图像压缩的相关编码及其基本原理和实现步骤。简单概述了图像压缩的基本原理以及发展现状和方向,全面分析了DCT变换算法以及思路,提出了采用DCT变换压缩的依据和优势。本文同时也介绍了图像压缩过程的重要步骤——编码量的方法和原理。为了方便简单,将使用MATLAB2010实现JPEG图像压缩的仿真。 在论文最后,将介绍仿真的过程以及仿真结果说明,阐述用MATLAB来实现离散余弦变换的图像压缩的基本过程,并总结相关方法的优缺点。同时也将充分展示压缩前后的图像,并做相应的比较。
关键词:图像 压缩 DCT matlab仿真 图像JPEG压缩的matlab实现
-II- Abstract With the development of modern economy, the storm has swept through the image of our daily life, people have been closely related to the image for the. People's requirements on image real-time processing is relatively improved. Now we face a problem, how to guarantee the quality of the image, at the same time can be old enough considering the real-time and efficiency has become an issue of concern. This information is certain to image compression and processing has become a very important link. However, the image is an important signal, due to the large amount of data, while the storage and transmission of the compressed. New mathematical tools are discrete cosine transform is a new mathematical tool, based on the discrete cosine transform image compression technology is now being a lot of attention and research.
Matlab中的数据压缩与图像编码方法

Matlab中的数据压缩与图像编码方法引言在当今数码时代,数据的传输和存储已经成为人们生活中不可或缺的一部分。
然而,随着数据量的不断增长,传输和存储的需要也变得越来越庞大。
为了解决这一问题,数据压缩和图像编码方法被广泛应用于各种领域。
本文将介绍一些在Matlab中实现数据压缩和图像编码的常用方法。
一、数据压缩1. 频谱压缩频谱压缩是一种将信号的频谱范围压缩到较小范围的方法。
在Matlab中,可以使用FFT(快速傅里叶变换)和IFFT(逆快速傅里叶变换)函数来实现频谱压缩。
首先,通过FFT将信号转换成频域表示,然后对频域信号进行一定的处理,例如减小高频分量的权重,最后通过IFFT将信号转换回时域表示。
这样就可以实现信号的频谱压缩,减小信号的数据量。
2. 基于哈夫曼编码的数据压缩哈夫曼编码是一种基于变长编码的压缩方法,它通过使用较短的编码表示出现频率较高的符号,而使用较长的编码表示出现频率较低的符号。
在Matlab中,可以使用`huffmandict`函数创建哈夫曼字典,然后使用`huffmanenco`函数对数据进行编码,使用`huffmandeco`函数对数据进行解码。
这样就可以实现基于哈夫曼编码的数据压缩。
3. 无损压缩与有损压缩无损压缩是一种保持数据完整性的压缩方法,它通过使用编码和解码技术来减小数据的存储和传输需求,同时保持数据的完整性。
在Matlab中,可以使用无损压缩算法,如Lempel-Ziv-Welch(LZW)算法和Run Length Encoding(RLE)算法,来实现无损压缩。
有损压缩是一种通过牺牲数据的一部分信息来实现更高压缩比的压缩方法。
在Matlab中,可以使用一些常见的有损压缩算法,如JPEG压缩算法和GIF压缩算法。
这些算法通常将图像划分为多个块,并对每个块应用离散余弦变换(Discrete Cosine Transform,DCT)或离散小波变换(Discrete Wavelet Transform,DWT)。
利用Matlab进行数据压缩和图像编码

利用Matlab进行数据压缩和图像编码数据压缩和图像编码是计算机科学领域中一个重要的研究方向。
随着大数据时代的到来,数据量的不断增加和传输效率的要求,对数据压缩和图像编码技术提出了更高的要求。
Matlab作为一种强大的数学软件,可以有效地应用于数据压缩和图像编码领域的研究。
本文将介绍如何利用Matlab进行数据压缩和图像编码,并探讨其在实际应用中的一些挑战和解决方案。
一、数据压缩数据压缩是指将原始数据转化为更紧凑的表示形式,并且能够在一定程度上恢复原始数据的过程。
数据压缩可以分为有损压缩和无损压缩两种形式。
有损压缩在压缩的同时会引入一定的误差,但可以达到更高的压缩比。
无损压缩是指在压缩的过程中不引入任何误差,但压缩比相对较低。
在Matlab中,我们可以使用多种方法进行数据压缩。
其中最常用的方法是使用离散余弦变换(DCT)进行压缩。
DCT是一种将时域信号转换为频域信号的方法,可以将信号的能量集中在少数高频成分上,从而实现较高的压缩比。
在Matlab中,我们可以使用`dct`函数进行DCT变换,并使用`idct`函数进行逆变换。
除了DCT之外,Matlab还提供了其他一些用于数据压缩的函数,例如小波变换(Wavelet Transform)和奇异值分解(Singular Value Decomposition, SVD)等。
这些方法各有优缺点,在不同的应用场景下可以选择适合的方法进行数据压缩。
二、图像编码图像编码是一种将原始图像数据转化为二进制码流的过程。
图像编码可以分为无损编码和有损编码两种形式。
无损编码不引入任何误差,可以完全恢复原始图像。
有损编码在编码的过程中会引入一定的误差,但可以获得较高的压缩比。
在Matlab中,我们可以使用不同的方法进行图像编码。
最常用和经典的方法是JPEG和PNG编码。
JPEG编码是一种有损编码方法,可以实现较高的压缩比。
在Matlab中,我们可以使用`imwrite`函数将图像编码为JPEG格式,并使用`imread`函数读取JPEG格式的图像。
MATLAB中的图像压缩和编码方法

MATLAB中的图像压缩和编码方法图像压缩和编码是数字图像处理的重要领域,在各种图像应用中起着至关重要的作用。
在本文中,我们将探讨MATLAB中的图像压缩和编码方法,包括无损压缩和有损压缩,并介绍其中的一些经典算法和技术。
一、图像压缩和编码概述图像压缩是指通过一定的算法和技术来减少图像数据的存储量或传输带宽,以达到节约存储空间和提高传输效率的目的。
而图像编码则是将原始图像数据转换为一系列二进制编码的过程,以便存储或传输。
图像压缩和编码通常可以分为无损压缩和有损压缩两种方法。
无损压缩是指压缩后的数据可以完全还原为原始图像数据,不会引入任何失真或变化。
常见的无损压缩算法有Run-Length Encoding (RLE)、Lempel-Ziv-Welch (LZW)、Huffman编码等。
这些算法通常针对图像中的冗余数据进行编码,如重复的像素值或相似的图像区域。
有损压缩则是在保证一定程度的视觉质量下,通过舍弃或近似原始图像数据来减小存储或传输的数据量。
常见的有损压缩算法有JPEG、JPEG2000、GIF等。
这些算法通过离散余弦变换(DCT)、小波变换或颜色量化等方法,将图像数据转换为频域或颜色空间的系数,并通过量化、编码和压缩等步骤来减小数据量。
二、无损压缩方法1. Run-Length Encoding (RLE)RLE是一种简单高效的无损压缩算法,通过计算连续重复像素值的数量来减小数据量。
在MATLAB中,可以使用`rle`函数实现RLE编码和解码。
例如,对于一幅图像,可以将连续的像素值(如白色)编码为重复的个数,然后在解码时根据重复的个数恢复原始像素值。
2. Lempel-Ziv-Welch (LZW)LZW是一种字典压缩算法,通过将图像中连续的像素序列映射为一个短代码来减小数据量。
在MATLAB中,可以使用`lzwencode`和`lzwdecode`函数实现LZW 编码和解码。
例如,对于一段连续的像素序列,可以将其映射为一个短代码,然后在解码时根据代码恢复原始像素序列。
图像JPEG压缩的matlab实现.

电子科技大学毕业论文图像JPEG压缩的matlab实现作者姓名:专业名称:信息工程指导教师:讲师摘要随着现代经济的发展,影像风暴已经席卷了我们的日常生活,图像对于人们已经息息相关。
人们对计算机实时处理图像的要求就相对有所提高。
现在我们就面对一个问题,如何在保证图像质量的前提下,同时能够考虑到实时性和高效性就成了一个大家关注的问题。
那么对图像数据信息进行必要的压缩,以便能够保证图像的快速存储和传输。
但是,我们通常看到的图像是一种重要的二维信号,所以它本身就包含非常庞大的数据量,为了快速存储和实时传输,就必须对图像信息进行相应的压缩处理。
新兴的数学工具是局域DCT变换是一种新兴的数学工具,在现在社会中,图像压缩技术现在正受到大量的关注与研究。
本次课题设计在分析近年来,在图像处理领域,对图像压缩普遍方法的基础之上,充分学习和分析了基于DCT变换的图像压缩的相关编码及其基本原理和实现步骤。
简单概述了图像压缩的基本原理以及发展现状和方向,全面分析了DCT变换算法以及思路,提出了采用DCT变换压缩的依据和优势。
本文同时也介绍了图像压缩过程的重要步骤——编码量的方法和原理。
为了方便简单,将使用MATLAB2010实现JPEG图像压缩的仿真。
在论文最后,将介绍仿真的过程以及仿真结果说明,阐述用MATLAB来实现离散余弦变换的图像压缩的基本过程,并总结相关方法的优缺点。
同时也将充分展示压缩前后的图像,并做相应的比较。
关键词:图像压缩DCT matlab仿真AbstractWith the development of modern economy, the storm has swept through the image of our daily life, people have been closely related to the image for the. People's requirements on image real-time processing is relatively improved. Now we face a problem, how to guarantee the quality of the image, at the same time can be old enough considering the real-time and efficiency has become an issue of concern. This information is certain to image compression and processing has become a very important link. However, the image is an important signal, due to the large amount of data, while the storage and transmission of the compressed. New mathematical tools are discrete cosine transform is a new mathematical tool, based on the discrete cosine transform image compression technology is now being a lot of attention and research.In this paper, based on the analysis of the general methods of image compression in recent years, the basic principles and implementation steps of image compression based on DCT transform are also discussed. In this paper, the principle and development of image compression are introduced briefly, and the DCT transform algorithm is analyzed and compared with other compression methods. The basis of DCT transform compression is proposed. The final step of the image compression process is to encode the quantized image. This. We use MATLAB6.5 to realize the simulation of JPEG image compression.The simulation results show that using MATLAB to achieve the image discrete cosine transform compression method is simple, fast, small error advantages, greatly improves the efficiency and accuracy of image compression.Keywords: DCT ,matlab,simulation image, compression目录图像JPEG压缩的matlab实现 (I)摘要 (I)Abstract (II)目录 (III)前言 (1)1 绪论 (3)1.1论文研究背景及意义 (3)1.2 JPEG图像的发展历史及简介 (4)1.3 JPEG图像在DCT中压缩的作用 (5)1.4 本文研究的主要内容 (6)2 图像压缩编码原理 (7)2.1 DCT变换的来源 (7)2.2基于DCT的JPEG图像压缩编码步骤 (8)2.3图像压缩处理技术基本理论 (9)3 图像压缩的MATLAB实现 (12)3.1离散余弦变换的定义及原理 (12)3.2离散余弦变换的算法实现 (13)3.3图形用户界面介绍 (14)3.3.1图像文件读取 (15)3.3.2图像文件输出 (16)4 运行结果及分析 (18)4.1 程序流程图 (18)4.2 MATLAB仿真结果 (19)4.3 实验结果及分析 (20)总结 (23)参考文献 (25)致谢 (26)附件1 图像JPEG压缩的matlab程序 (27)前言在当今,人们大多都都已经迈入了信息化的社会,信息交换技术已经发展出不同的形式,主要的信息分为三种形式:1.文字2.音频3.图像。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB 的图像压缩处理及其实现
一.图像压缩的概念
从实质上来说,图像压缩就是通过一定的规则及方法
对数字图像的原始数据进行组合和变换,以达到用最少的数
据传输最大的信息。
二.图像压缩的基本原理
图像数据之所以能被压缩,就是因为数据中存在着
大量冗余信息,另外还有相当数量的不相干信息,这为数
据压缩技术提供了可能。
数据压缩技术就是利用数据固有的冗余性和不相干
性,将一个大的数据文件转化成较小的文件,图像技术压
缩就是要去掉数据的冗余性。
图像数据的冗余主要表现为:图像中相邻像素间的
相关性引起的空间冗余;图像序列中不同帧之间存在相关
性引起的时间冗余;不同彩色平面或频谱带的相关性引起
的频谱冗余。
由于图像数据量的庞大,在存储、传输、处理时非常
困难,因此图像数据的压缩就显得非常重要。
三.图像的编码质量评价
在图像编码中,编码质量是一个非常重要的概念,怎
么样以尽可能少的比特数来存储或传输一幅图像,同时又让
接收者感到满意,这是图像编码的目标。对于有失真的压缩
算法,应该有一个评价准则,用来对压缩后解码图像质量进
行评价。常用的评价准则有两种:一种是客观评价准则;另
一种是主观评价准则。主观质量评价是指由一批观察者对编
码图像进行观察并打分,然后综合所有人的评价结果,给出
图像的质量评价。而对于客观质量评价,传统的编码方法是
基于最小均方误差(MSE)和峰值信燥比(PSNR)准则的编码方
法,其定义如下
MSE=1NxNy∑∑[f(i,j)−f(i,j)]2Njj=0Nii=0 (1)
PSNR=101g(
255×255
MSE
) (2)
式中:Nx,Nr图像在x方向和Y方向的像素数,f(i,j)——原
图像像素的灰度值,f(i,j)--处理后图像像素的灰度值。对
于主观质量,客观质量评价能够快速有效地评价编码图像的
质量,但符合客观质量评价标准的图像不一定具有较好的主
观质量,原因是均方误差只是从总体上反映原始图像和压缩
图像的差别,但对图像中的所有像点同等对待,因此并不能
反映局部和人眼的视觉特性。对于图像信号,人眼是最终的
信号接受者,因此在压缩时不仅要以MSE作为评价标准,还
应当考虑到人的主观视觉特性。
四.图像压缩的基本方法
1.基于dct变换的图像压缩
1.1
基于DCT的图像压缩编码思想
在编码过程中,首先将输入图像分解成8×8 大小的数
据块,然后用正向二维DCT把每个块转变成64个DCT 系数
值,其中1个数值是直流(DC)系数,即8×8 空域图像子块
的平均值,其余的63个是交流(AC)系数,接下来对DCT 系
数进行量化,最后将变换得到的量化的DCT系数进行编码和
传送,形成压缩后的图像格式。在解码过程中,先对已编码
的量子化的DCT 系数进行解码,然后求逆量化并把DCT 系
数转化成为8×8 样本像块(使用二维DCT 反变换),最后
将操作完成后的块组合成一个单一的图像。这样就完成了图
像的压缩和解压过程。
1.2 DCT的算法解释
DCT的变换核心为余弦函数。
二维DCT的解析式定义可以由下式表示:
F(0,0)=1N∑∑f(x,y)N−1y=0N−1x=0
(3)
F(0,y)=√2N∑∑f(x,y)N−1y=0N−1x=0cos(2y+1)vπ2N (4)
F(u,0)= √2N∑∑f(x,y)N−1y=0N−1x=0cos(2y+1)uπ2N (5)
F(u,v)= √2N∑∑f(x,y)cos(2x+1)uπ2NN−1y=0N−1x=0cos(2y+1)vπ2N
(6)
其中f(x,y)是空间域二维向量之元素,x,y=0,1,2,…,
N-1,F(u.v)是变换系数阵列元素;式中表示的阵列为N×N。
二维 DCT 反变换(IDCT)解析式定义可以表示为:
F(x,y)=
1NF(0,0)+√2N∑F(0,v)cos(2y+1)vπ
2N
N−1
V=1
+
√
2N∑F(u,0)cos(2x+1)uπ
2N
N−1
u=1
+
2N∑∑F(u,v)cos(2x+1)uπ2NN−1v=1N−1u=1cos(2x+1)vπ
2N
(7)
而在应用Matlab 进行仿真实现中,主要是在解析式定
义基础上采用二维DCT 变换的矩阵式定义来实现的,矩阵
式定义可以表示为:
[F(u,v)] = [A]r [F(u, v)][A] (8)
[ f (x, y)] = [A][ f (x, y)][A]r (9)
其中[f(x,y)]是空间数据阵列,[F(u,v)]是变换系数阵列,[A]
是变换矩阵,[A]T 是[A]的转置。系数量化是一个十分重要
的过程,是造成 DCT 编解码信息损失(或失真)的根源,
在数码图像压缩算法中采用均匀量化器,量化定义可以表述
为:对64 个DCT 系数除以其量化步长,四舍五入取整,即
Q(u, v) = IntegerRound(F(u,v) / S(u, v)) (10)
式中,Q(u,v)为量化的系数幅度,S(u,v)为量化步长,它是量
化表的元素,通常随DCT 系数的位置和彩色分量的不同而
取不同的值,量化表的尺寸为8×8 与64 个DCT 系数(一
般将图像分解成8×8 图像子块进行处理)一一对应。量化
的作用是在保证图像质量的前提下,丢掉那些对视觉影响不
大的信息,以获得较高的压缩比。由于DCT 系数包含了空
间频率信息,可充分利用人眼对不同频率敏感程度不同这一
特征来选择量化表中的元素值大小,对视觉重要的系数采用
细量化,如低频系数被细量化,对高频系数采用粗量化。对
于这一点,从Matlab 仿真得到的DCT 变换谱中得到证明。
经过二维 DCT 变换后得到的矩阵,其非零元素主要集中在
左上角,而右下角大部分是零。其原因是由于图像的低频部
分一般都集中在左上角。利用这一特点我们就可以实现对图
像的压缩。在实际传输时,仅仅传输代表低频分量的左上角,
并对其进行量化编码,其余均去除。当反变换时,只要把去
掉的部分用填零的方式来处理。这样就达到图像压缩的目的。
1.3算法的matlab实现及其仿真结果
实验程序:
2.基于小波变换的图像压缩
2.1
基于小波的图像压缩编码思想
小波变换图像压缩的基本思想是把图像进行多分辨率
分解,然后再对子图像进行系数编码。系数编码是小波变换
压缩的核心,压缩的实质是对系数的量化压缩。图像做小波
分解后,可得到一系列不同分辨率的子图像,不同分辨率的
子图像对应的频率是不相同的,高分辨率子图像上大部分点
的数值接近于0,而表现一个图像最主要的部分就是低频部
分,对这一部分的压缩应尽可能减少失真或者无失真。所以
利用小波分解,去掉图像的高频细节部分而只保留低频近似
部分。可以使用appcodf2( )函数来提取低频近似系数。为了
提高压缩比,同时能够从压缩后图像数据还原出理想的彩色
图像,对提取的低频近似系数做相应的截取处理,来达到较
好的压缩效果。由于采用的是二维小波分解,于是截取它左
上角1/4 大小的子矩阵。
2.2