导航:首页 > 源码编译 > jpeg图像压缩算法matlab

jpeg图像压缩算法matlab

发布时间:2022-06-03 04:27:48

Ⅰ matlab中图像压缩技术是怎么实现的

基于小波分析的图像压缩方法很多 , 有小波包最好基方法 、小波域纹理模型方法 、变换零树压缩 、小波变换向量量化压缩等等,不过具体理论都是差不多的,区别是算法方式不同,有兴趣的可以去matlab的网站去看看 http://www.ilove matlab .cn 一个图像作小波分解后 , 可得到一系列不同分辨率的子图像 ,不同分辨率的子图像对应的频率是 不相同的 。高分辨率 ( 即高频) 子图像上大部分点的数值都接近于 0 , 越是高频这种现象越明显 。对一 个图像来说 ,表现一个图像最主要的部分是低频部分 ,所以一个最简单的压缩方法是利用小波分解 ,去 掉图像的高频部分而只保留低频部分 。 下面具体介绍利用 MA TLAB[ 2 ] 中二维小波分析一个图像 ( 即一个二维信号 , 设文件名为 wbarb. mat) 进行图像压缩的实例 。图像压缩可按如下程序进行处理 。 程序清单 : clear %清除 MA TLAB 工作环境中现有的变量 load wbarb ; %装入图像 %显示图像 subplot ( 221) ;image ( X) ; colormap ( map ) title ( ’原始图像’ ;) axis square disp ( ’压缩前图像 X 的大小 : ’ ;) Whos ( ’’X ) %= = = = = = = = = = = = = = = = = = %对图像用 bior3. 7 小波进行 2 层小波分解 [ c ,s ] = wavedec2 ( X ,2 ,’bior3. 7’ ;) %对图像用 bior3. 7 小波进行 2 层小波分解 [ c ,s ] = wavedec2 ( X ,2 ,’ bior3. 7’ ; ) %提取小波分解结构中第 1 层的低频系数和高 频系数 cal = appcoef2 ( c ,s ,’ bior3. 7’ ,l) ; ch1 = detcoef2 ( ’h' ,c ,s ,1) ; %水平方向 cv1 = detcoef2 ( ’V ’,c ,8 ,1) ; %垂直方向 cdl = detcoef2 ('d',C ,S ,1) ; %斜线方向 %分别对各频率成份进行重构 al = wrcoef2 ( 'a',c ,s ,’bior3. 7’ ,1) ; h1 = wrcoef2 ( ’h’,c ,s ,’bior3. 7’ ,1) ; v1 = wrcoef2 ( ’v’,c ,s ,’bior3. 7’ ,1) ; dl = wrcoef2 ( ’d’,c ,s ,’bior3. 7’ ,1) ; c1 = [ al ,hl ,v1 ,d1”; %显示分解后各频率成份的信息 subplot ( 222) ; image ( c1) ; axis squaretitle ( ’分解后低频和高频信息’ ;) %= = = = = = = = = = = = = = = = = = = %下面进行图像压缩处理 %保留小波分解第一层低频信息 , 进行图像的压缩 %第 1 层的低频信息即为 cal , 显示第 1 层的低频信息 %首先对第 1 层信息进行量化编码它处理即可获得较好的压缩效果 。在上面的例 子中,我们还可以只提取小波分解第 3 、4 … 层的低频信息 ,从理论上说 ,我们可以获得任意压缩比的压 缩图像 。由此可以看出 , 小波分析用于图像压缩具有明显的优点 。 在利用二维小波变换进行图像压缩时需要说明的是 : 小波变换为图像从空间域交换到时间域提供 了一种非常有效的方法 , 它的作用与以前在图像压缩中所用到的离散余弦变换 ( DCT) 、傅里叶变换等 的作用类似 。但是 ,要很好地进行图像的压缩 ,需要综合地利用多种其它技术 , 特别是数据编码与解码 算法等 ,所以利用小波分析进行图像压缩往往是借助小波分析和许多其它相关技术共同完成的 。

Ⅱ 请帮忙在网上找基于Matalb的图象压缩技术方面的资料!!!越多越好,视情况给分...

matlab实现离散余弦变换压缩(JPEG压缩原理)

JPEG图像压缩算法:
输入图像被分成8*8或16*16的小块,然后对每一小块进行二维DCT(离散余弦变换)变换,变换后的系数量化、编码并传输;
JPEG文件解码量化了的DCT系数,对每一块计算二维逆DCT变换,最后把结果块拼接成一个完整的图像。在DCT变换后舍弃那些不严重影响图像重构的接近0的系数。
DCT变换的特点是变换后图像大部分能量集中在左上角,因为左上放映原图像低频部分数据,右下反映原图像高频部分数据。而图像的能量通常集中在低频部分。

实例程序:
function Jpeg
I=imread('D:\MATLAB7\toolbox\images\imdemos\cameraman.tif');
%该图片在安装matlab的目录中找,原图为灰度图象
I=im2double(I);%图像存储类型转换
T=dctmtx(8);%离散余弦变换矩阵
B=blkproc(I,[8 8],'P1*x*P2',T,T');
%对原图像进行DCT变换
mask=[1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0];
B2=blkproc(B,[8 8],'P1.*x',mask);
%数据压缩,丢弃右下角高频数据
I2=blkproc(B2,[8 8],'P1*x*P2',T',T);
%进行DCT反变换,得到压缩后的图像
imshow(I)
title('原始图像')
figure;
imshow(I2)
title('压缩后的图像')

Ⅲ 关于matlab的名词解释:(1)基于matlab的图像处理。(2)JPEG图像格式。

个人理解(1)利用matlab进行图像处理
可以编程利用matlab自身所带函数
(2)
JPEG是Joint
Photographic
Experts
Group(联合图像专家组)的缩写,文件后辍名为".jpg"或".jpeg",这个名称代表Joint
Photographic
Experts
Group(联合图像专家小组)。是一种支持8位和24位色彩的压缩位图格式,适合在网络(Internet)上传输,是非常流行的图形文件格式。

Ⅳ matlab实验:图像H1.BMP 以JPEG 格式进压缩,质量因子为90,结果保存为JPG 图像J1,计算J1对于H1的压缩率

改完之后是这样的,你试试:
clear

img=imread('H1.bmp');

imwrite(img,'J1.jpg','jpg','quality',90);

cr=imratio('H1.bmp','J1.jpg')

Ⅳ matlab实验:图像H1.BMP 以JPEG 格式进行压缩,质量因子设为90,结果保存为JPG 图像J1,怎么实现

img=imread('H1.bmp');
imwirte(img, 'J1.jpg','jpg','quality',90)

Ⅵ 基于matlab的图像压缩算法有哪些

基于Matlab实现的经典的图像压缩算法,包括哈夫曼编码,算术编码、字典编码、行程编码-Lempel-zev
编码正交变换编码如DCT、子带编码
粒子、子采样、比特分配、矢量量化。

Ⅶ matlab图象重建是什么意思!

图像压缩是当今信息时代迫切需求的一门图像处理技术,它极大的减少了图像的数据量,为图像的存储,传输提供了方便。小波变换,是一种广泛用于图像压缩的方法。它能让图像按不同的分辨率分析。根据Mallat算法的思想,图像能分解成一个轮廓信号(低频子图)和水平,垂直,对角线三个方向上的细节信号(高频子图)。而轮廓信号又可以进一步分解。而图像的主要能量部分是低频部分,而且人眼视觉系统对低频部分更为敏感,所以可以对低频部分采用较低压缩比;对高频部分采用较大压缩比来进行压缩。
本文提出的是一种结合小波变换,DCT变换和矢量量化的压缩方法。根据人眼的视觉特性,首先对图像进行小波分解,然后,对低频分量进行压缩比不大的DCT变换;对不同方向不同分辨率的高频分量进行不同码字大小的矢量量化编码,然后对反变换和解码后的系数进行小波重构。矢量量化过程中的码书设计采用的是LBG算法。这样,根据对图像质量的不同要求,我们可以改变小波分解的层数,来得到不同压缩比的图像。本篇论文只对小波分解一层和两层后压缩进行了仿真和分析,表明该方案结合了各种压缩方法的优点,在满足图像质量的同时能得到较大的压缩比。目前,在包装装潢设计中常用的图形处理软件有Pho-toshop,CorelDraw,AutoCAD等。但是这些软件中很少涉及到对图像进行压缩处理,以满足图像进行传输和储存的需要。基于这一点考虑,在此尝试着用MATLAB编程来处理包装装潢图像的压缩,实现包装与计算机的紧密结合。
1 MATLAB
MATLAB是MathWorks公司推出的一套高性能的数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图像显示于一体,它附带的小波分析工具箱功能强大,可以完成小波分析的绝大部分工作。MATLAB工具箱的出现避免了程序设计中的重复性劳动,缩短了开发周期,降低了成本,因而受到工科院校师生和研究人员的青睐。
在介绍利用MATLAB小波工具压缩图像的文献中,总是将真彩色RGB图像转换为灰度级索引图像进行处理.经过这种处理以后,图像的存储数据能得到一定的压缩,但由压缩后的数据难以恢复成理想的彩色图像。文中用MATLAB中有关函数处理图像压缩,而且由压缩后的数据可以还原出图像.实验结果表明,还原出的图像效果是理想的。文中主要以lena图像的处理为例,对它进行二进小波多层分解后,将低频和高频近似的系数矩阵作相应的处理,来研究用MATLAB中的小波工具箱压缩图像的方法。
2 图像压缩方法
在实际应用中,首先需要从图像文件中读取图像数据.MATLAB使用imreed()函数完这一任务.例如,在电脑D盘中有一彩色图像文件picl.jps,则可由下述语句读取:
X=imread(′D:\picl.jpg′);
MATLAB图像处理工具箱支持4种基本图像类型:索引图像、灰度图像、二进制图像和RGB图像.MATLAB直接从图像文件中读取的图像为RGB图像.它存储在三维数组中。这个三维数组有3个面,依次对应子红(Red)、绿(Green)、蓝(Blue)3种颜色,而面中的数据则分别是这3种颜色的强度值,面中的元素对应于图像中的像素点。
索引图像数据包括图像矩阵X与颜色图数组map,其中颜色图map是按图像中颜色值进行排序后的数组。对于每个像素,图像矩阵X包含一个值,这个值就是颜色图数组map中的索引。颜色图map为m×3双精度矩阵,各行分别指定红、绿、蓝(R、G、B)单色值,map=〔RGB〕,R、C、B为值域为〔0,1〕的实数值,m为索引图像包含的像素个数.然后可根据情况采用不同的小波函数,进行索引图像的分解压缩。这里对上面产生的索引图像X用dbl小波进行2层分解。
〔c,l〕=wavedec2(X,2,′dbl′)。
在这里,一个索引图像作小波分解后,可得到一系列不同分辨率的子图像,不同分辨率的子图像对应的频率是不相同的.高分辨率(即高频细节)子图像上大部分点的数值接近于0,越是高频这种现象越明显.对一个图像来说,表现一个图像最主要的部分是低频(即近似)部分。
多层小波分解的所有成分系数均保存在向量c中,低频近似与高频细节的系数需从向量C中提取。MATLAB分别使用appcoet2()和detcoef2()函数来完成这一工作。这种方法是对低频和高频部分进行处理,因而提取低频和高频近似系数。
cAl=appcoef2(c,1,′dbl,′1);cH1=detcoef2(′h′,c,1,1);
cDl=detcoef2(′d′,c,l,1);cVl=detcoef2(′v′,c,l,1)。
matlab实现离散余弦变换压缩(JPEG压缩原理)

JPEG图像压缩算法:
输入图像被分成8*8或16*16的小块,然后对每一小块进行二维DCT(离散余弦变换)变换,变换后的系数量化、编码并传输;
JPEG文件解码量化了的DCT系数,对每一块计算二维逆DCT变换,最后把结果块拼接成一个完整的图像。在DCT变换后舍弃那些不严重影响图像重构的接近0的系数。
DCT变换的特点是变换后图像大部分能量集中在左上角,因为左上放映原图像低频部分数据,右下反映原图像高频部分数据。而图像的能量通常集中在低频部分。

实例程序:
function Jpeg
I=imread('D:\MATLAB7\toolbox\images\imdemos\cameraman.tif');
%该图片在安装matlab的目录中找,原图为灰度图象
I=im2double(I);%图像存储类型转换
T=dctmtx(8);%离散余弦变换矩阵
B=blkproc(I,[8 8],'P1*x*P2',T,T');
%对原图像进行DCT变换
mask=[1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0];
B2=blkproc(B,[8 8],'P1.*x',mask);
%数据压缩,丢弃右下角高频数据
I2=blkproc(B2,[8 8],'P1*x*P2',T',T);
%进行DCT反变换,得到压缩后的图像
imshow(I)
title('原始图像')
figure;
imshow(I2)
title('压缩后的图像')

参考资料:http://..com/question/42730132.html

Ⅷ matlab JPEG图像处理 怎么搞

imwrite(uint8(Image),'F:\Image.jpg','jpeg','Quality',100);把Image保存成jpg格式 压缩因子是100(matlab默认75,100是最佳情况),对于要存储成jpg格式 ,Image数据必须是uint8的 ,所以用了强制类型转换

阅读全文

与jpeg图像压缩算法matlab相关的资料

热点内容
加密文件怎么变成不加密了 浏览:848
企业密信服务器地址是什么 浏览:402
note2android升级 浏览:834
麻省理工python 浏览:22
编译程序软件哪个好 浏览:840
rar命令行压缩 浏览:932
单片机字符表代码 浏览:498
pdf转换word苹果电脑 浏览:663
python字典格式化输出 浏览:851
加密压缩包百度和谐 浏览:721
路由代码程序员 浏览:10
电脑上qq邮箱可以发文件夹吗 浏览:213
appiumpython环境 浏览:19
序列化后再压缩 浏览:160
福克斯15t压缩比 浏览:932
手机qq发压缩包 浏览:681
安卓机蓝牙耳机如何弹出弹窗 浏览:115
linuxoracle环境变量设置 浏览:365
php去掉重复数据 浏览:369
C关机编程 浏览:771