图像压缩编码程序设计

上传人:m**** 文档编号:488275617 上传时间:2023-03-09 格式:DOC 页数:24 大小:465.50KB
返回 下载 相关 举报
图像压缩编码程序设计_第1页
第1页 / 共24页
图像压缩编码程序设计_第2页
第2页 / 共24页
图像压缩编码程序设计_第3页
第3页 / 共24页
图像压缩编码程序设计_第4页
第4页 / 共24页
图像压缩编码程序设计_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《图像压缩编码程序设计》由会员分享,可在线阅读,更多相关《图像压缩编码程序设计(24页珍藏版)》请在金锄头文库上搜索。

1、*实践教学*兰州理工大学计算机与通信学院2012年秋季学期 图像处理 综合训练题 目: 图像压缩编码 专业班级: 姓 名: 学 号: 指导教师: 成 绩: 目 录摘 要1一、前言2二、算法分析与描述3三、详细设计过程5四、调试过程中出现的问题及相应解决办法7五、程序运行截图及其说明8六、简单操作手册11设计总结14参考资料15致谢16附录17 摘 要 本实验是在根据图像压缩基本原理的基础上,独立设计图像的有损压缩编码算法,并在MATLAB编程环境中编程实现。 其目的是理解有损压缩的概念,特别是通过K-L变换或DCT变换,掌握压缩编码的基本原理、算法,并通过编程给予实现,对原始图像数据和解压后的

2、图像数据进行失真估计,了解压缩性能及其重建效果的影响、作用,给出适当的理论分析。关键词: Matlab;图像压缩;解码;行程编码。 一、 前言 人类正在实践的21世纪是一个信息时代。今天的社会,信息技术已经全面服务 于社会生产和生活的方方面面,人们所做工作的相当一部分就是对信息的处理和传输,其中图像是人类获取信息、表达信息和传递信息的重要手段,是人类感知和认识世界的基础。有关研究表明,日常生活中人们所接受的各种信息中图像信息占总信息量的80%左右,从这一角度看,“百闻不如一见”正是图像处理重要性的形象表达和经验总结。因此,数字图像处理技术无论是对于21世纪的科学理论研究,还是工程应用都将具有重

3、要的影响。国内外许多有识之士指出,从某种意义上讲,数字图像处理是实现智能计算机、智能机器人或多媒体信系统的基础,未来计算机及智能机器人的发展与进步将在一定程度上依赖于机器视觉信息处理理论和技术的突破。虽然相对于经典学科,数字图像处理还很年轻,但日趋成熟的数字图像处理技术已经在很多方面得到深入而广泛的应用,一定程度上改变了人类的生活,给人们的日常生活、学习、工作带来极大的方便。例如,Internet上的视频广播、现代卫星或遥感照片的合成和处理、工业产品的自动检测、各种医学影像和图像的处理、远程医疗诊断及手术以及视频会议、视频电话等都采用了图像处理技术实现实时信息交互。 如果说1964年美国喷气推

4、进实验室首次处理了由太空船“徘徊者七号”发回的月球照片,拉开了数字图像处理技术进入普遍应用的序幕,那么CT的发明、应用及诺贝尔奖的获得,则使得数字图像处理技术大放异彩,并迅速进入了广泛应用阶段。目前,数字图像处理技术已在工程科学、计算机科学、信息科学、遥感、遥测、采矿、地质勘探、工业探伤、自动控制、机器人、军事、公安、生物学、医学、视频、多媒体、统计学甚至社会科学等领域得到了广泛应用,并显示出了更加诱人的前景,成为了包括计算机科学与技术、信息科学、航空航天和生物医学工程等在内的多学科的研究重点和热点。这些学科的研究成果又促使了图像处理技术向更高水平发展,数字图像处理技术正是在这种应用的迫切需要

5、和自身的不断发展之中逐步完善的新兴学科。未来,图像处理技术的发展及应用与经济建设联系之紧密、影响之深远是不可估量的。二、 算法分析与描述 编码是方法建立在图像统计特性的基础上的。例如,在传真通信中的文件大多是二值图像,即每个像素的灰度值只有0和1两种取值。将一行中颜色值相同的相邻象素用一个计数值和该颜色值来代替。例如aaabccccccddeee可以表示为3a1b6c2d3e,即有3个a,1个b,6个c,2个d,3个e。如果一幅图象是由很多块颜色相同的大面积区域组成,那么采用行程编码的压缩效率是惊人的。然而,该算法也导致了一个致命弱点,如果图象中每两个相邻点的颜色都不同,用这种算法不但不能压缩

6、,反而数据量增加一倍。因此对有大面积色块的图像用行程编码效果比较好。行程编码的可行性讨论:行程编码的压缩方法对于自然图片来说是不太可行的,因为自然图片像素点错综复杂,同色像素连续性差,如果硬要用行程编码方法来编码就适得其反,图像体积不但没减少,反而加倍。鉴于计算机桌面图,图像的色块大,同色像素点连续较多,所以行程编码对于计算机桌面图像来说是一种较好的编码方法。2.1 图像的调入:function yc%行程编码算法%例如aaabccccccddeee才可以表示为3a1b6c2d3e%读图I=imread(Lena.bmp);m n l=size(I);fid=fopen(yc.txt,w);%

7、yc.txt是行程编码算法的灰度级及其相应的编码表% 2.2 行程编码算法:sum=0;for k=1:l for i=1:m num=0; J=; value=I(i,1,k); for j=2:n if I(i,j,k)=value num=num+1;%统计相邻像素灰度级相等的个数 if j=n J=J,num,value; end else J=J,num,value;%J的形式是先是灰度的个数及该灰度的值 value=I(i,j,k); num=1; end end col(i,k)=size(J,2);%记录Y中每行行程行程编码数 sum=sum+col(i,k); Y(i,1:c

8、ol(i,k),k)=J;%将I中每一行的行程编码J存入Y的相应行中 endend%输出相关数据m1,n1,l1=size(Y);disp(:)whos(I);disp(:)whos(Y);disp(:);disp(m*n*l/sum);2.3 图像显示和保存: subplot(1,2,1),imshow(I),title(原图像) subplot(1,2,2),imshow(Y),title(行程编码解码后的图像)save(Y)%存储,以便解码用save(col)fclose(fid); 三、详细设计过程3.1算法流程图 读入图像 将行程编码写入 yc.txt中 行程算法 计算压缩比 3.2

9、 由I=imread(Lena.bmp)把图像调入等待处理,再由行程编码算法进行计算和压缩。实现具体的压缩功能。最后输出原图像和压缩后的像和输出压缩比例。3.2行程编码算法sum=0;for k=1:l for i=1:m num=0; J=; value=I(i,1,k); for j=2:n if I(i,j,k)=value num=num+1;%统计相邻像素灰度级相等的个数 if j=n J=J,num,value; end else J=J,num,value;%J的形式是先是灰度的个数及该灰度的值 value=I(i,j,k); num=1; end end col(i,k)=si

10、ze(J,2);%记录Y中每行行程行程编码数 sum=sum+col(i,k); Y(i,1:col(i,k),k)=J;%将I中每一行的行程编码J存入Y的相应行中 endend%输出相关数据m1,n1,l1=size(Y);disp(原图像大小:)whos(I);disp(压缩图像大小:)whos(Y);disp(图像的压缩比:);disp(m*n*l/sum); 四、调试过程中出现的问题及相应解决办法 首先,我们的代码不完全是自己写出来的,所以刚开始调式时出现很多错误。比如;代码中的函数matlab软件不认识,不能实现函数的功能。还有函数变量定义不符合,但更多的是调入图像显示不出结果。经过

11、研究和修改,功夫不负有心人,大部分错误都改正了。可是很纠结的是只输出图像压缩的数据和压缩比例,没有输出原图像和压缩后的图像。最后经过同学的帮忙和自己的努力,发现代码缺少输出图像语句。最终顺利完成了本次的课程设计。 五、程序运行截图及其说明 图5.1 图像的大小和压缩比例 图5.2 图像原图和压缩后图像 图5.3行程编码表 六、简单操作手册1. 首先我们完成代码部分。经过查找资料和网上查询,完整的把代码的功能能在matlab软件上是先出来。2. 文档部分比较繁琐,需要结合代码的功能一步一步经过说明实现图像的行程压缩编码。在经过matlab软件运行输出图像,把图像截图放在文档部分加以说明。3. 界面制作; 图6.1画出两个axes1、axes2图像显示框

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题 > 初中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号