matlab静态图像分割与边缘检测及图像压缩与编码.doc

上传人:豆**** 文档编号:23971269 上传时间:2022-07-03 格式:DOC 页数:47 大小:1.15MB
返回 下载 相关 举报
matlab静态图像分割与边缘检测及图像压缩与编码.doc_第1页
第1页 / 共47页
matlab静态图像分割与边缘检测及图像压缩与编码.doc_第2页
第2页 / 共47页
点击查看更多>>
资源描述

《matlab静态图像分割与边缘检测及图像压缩与编码.doc》由会员分享,可在线阅读,更多相关《matlab静态图像分割与边缘检测及图像压缩与编码.doc(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datematlab静态图像分割与边缘检测及图像压缩与编码_x0001_学 号14102500892光电图像处理实验报告 实验三:静态图像分割与边缘检测作 者肖剑洪专 业电子科学与技术学 院物理与电子学院指导老师王晓明完成时间2013.12.2实验三 静态图像分割与边缘检测一、实验目的1学习常用的图像分割与边缘检测方法,并通过实验使学生体会一些主要的分割算子对图像处理的效果,

2、以及各种因素对分割效果的影响;2观察图像分割的结果,产生对所讲述理论知识的直观认识,加深对图像分割与边缘检测相关理论知识的理解。3掌握常用图象分割及边缘检测方法的算法设计及编程实现;4学会使用MATLAB软件中关于图像分割与边缘检测的函数;二、实验设备联想图像处理工作站三、实验内容及要求1自己编写M-function实现图像阈值分割算法,要求该程序能对256级灰度图像进行处理,显示处理前、后图像;2自己编写M-function实现利用Sobel算子进行图像边缘检测的算法,并对图像进行检测,显示原图像、处理后的图像。3调用Matlab自带的图像处理函数,用不同的算子对图像进行分割、边缘检测,比较

3、结果。 4结合以上实验内容,使用ICETECK-DM642-IDK-M实验系统进行相应的动态视频图像分割及边缘检测,观察结果。四、实验原理1图像分割图像分割是将图像划分成若干个互不相交的小区域的过程, 小区域是某种意义下具有共同属性的像素的连通集合。图像分割有三种不同的途径:区域法、边界法、边缘法。最常用的是灰度阈值化处理进行的图像分割:域值T的选取直接影响分割的效果!(1)直方图双峰域值选择(2)迭代域值选择迭代思想:选择一个初始估计值,通过某种策略不断改进(调制)新的估计值,直到满足给定的准则。迭代步骤:选择一个初值估计值T,一般为最大灰度值和最小灰度值的中间值;使用域值T分割图像,得到两

4、组像素G1(=T)和G2(T);计算两组像素的灰度均值:和2;计算新域值T(和2)/2;重复步骤24,直到新域值的改变量小于预先定义的参数e。(3)最大类间方差法(Otsu)思想:将图像中目标和背景看作分属不同类别的像素组成;判别分析法的目标是确定域值使分属不同类别的像素的类间方差最大。1 边缘检测 灰度或结构等信息的突变出称为边缘,在空间域借助微分算子通过卷积来完成,而空域的微分在离散数字图像可以采用差分来近似。基于一阶导数的边缘检测算子有Robert算子、Sobel算子、Prewitt算子等,基于二阶导数的边缘检测算子有Laplace算子,LOG算子是一种改进的方式。Sobel算子为一对模

5、板:-1-2-1000121-101-202-101五、实验步骤1根据实验内容的要求在MATLAB软件中编写相应程序;1)灰度阈值分割实验(使用迭代阈值选择方法)2)使用Sobel 算子的边缘检测实验3)调用Matlab已有的图像处理函数,对图像进行分割和边缘检测a调用边缘检测函数edge,并与自己编写的函数运行结果进行比较;b用其他边缘检测算子和分割方法对图像进行处理,并对结果进行比较。 2调试运行程序,并记录结果。3结合以上实验内容,使用ICETECK-DM642-IDK-M实验系统进行相应的动态视频图像增强处理,观察结果。4完成实验报告。六、实验程序清单和实验结果及分析1图像分割clea

6、r all, close all;H= imread(f:/1.jpg);I=rgb2gray(H);figure (1),imshow(I)figure(2); imhist(I)T=120/255;Ibw1 = im2bw(I,T); %选择阈值T=120/255对图像二值化;figure(3);subplot(1,2,1), imshow(Ibw1);T=graythresh(I); %采用Otsu方法计算最优阈值T对图像二值化;L = uint8(T*255)Ibw2 = im2bw(I,T); subplot(1,2,2), imshow(Ibw2);(2)迭代域值选择clc;cle

7、ar all;H=imread(f:/1.jpg); I=rgb2gray(H);I=double(I)/255;k1=(max(max(I)+min(min(I)/2;rows cols=size(I);count1=0;count2=0;for i=1:rows for j=1:cols if I(i,j)(5/255) k1=k2; count1=0; count2=0; for i=1:rows for j=1:cols if I(i,j)k1 count1=count1+1; G1(count1).I=I(i,j); else count2=count2+1; G2(count2).

8、I=I(i,j); end end end k2=(mean(mean(G1.I)+mean(mean(G2.I)/2;endfigure(1);imshow(I);figure(2);II=im2bw(I,k2);imshow(II);2.边缘检测 clear all, close all;H=imread(f:/1.jpg); I=rgb2gray(H);BW1 = edge(I,sobel);BW2 = edge(I,canny);BW3 = edge(I,prewitt);BW4 = edge(I,roberts);BW5 = edge(I,log);figure(1), imshow

9、(I), title(Original Image);figure(2), imshow(BW1), title(sobel);figure(3), imshow(BW2), title(canny);figure(4), imshow(BW3), title(prewitt);figure(5), imshow(BW4), title(roberts);figure(6), imshow(BW5), title(log);八、实验思考题1 小结一下本实验所用的边缘检测方法。答:边缘检测的基本算子有:一阶::Roberts Cross算子,Prewitt算子,Sobel算子, Kirsch算子

10、,罗盘算子;二阶: Marr-Hildreth,在梯度方向的二阶导数过零点,Canny算子,Laplacian算子Canny算子(或者这个算子的变体)是最常用的边缘检测方法。 在 Canny 创造性的工作中,他研究了设计一个用于边缘检测最优预平滑滤波器中的问题,后来他说明这个滤波器能够很好地被一阶高斯导数核优化。另外 Canny 引入了非最大抑制概念,它是说边缘定义为在梯度方向具有最大梯度值的点。在一个离散矩阵中,非最大抑制阶梯能够通过一种方法来实现,首先预测一阶导数方向、然后把它近似到45度的倍数、最后在预测的梯度方向比较梯度幅度。2 基于微分方法的边缘检测算法的依据是什么?答:一般来说不同

11、区域的交界处构成边缘,同一区域内像素的灰度差较小,而不同区域像素灰度差较大,因此用微分可以很好地检测满足这种假设的区域边界。学 号14102500892光电图像处理实验报告 实验四:图像压缩与编码作 者肖剑洪专 业电子科学与技术学 院物理与电子学院指导老师王晓明完成时间2013.12.2实验四 图像压缩与编码一、实验目的1了解图像压缩编码原理;2掌握常用的图像压缩算法及编程实现;3学会使用MATLAB软件中关于图像压缩编码的函数;二、实验设备联想图像处理工作站三、实验内容及要求1自己编写M-function实现图像无损压缩算法,要求该程序能对256级灰度图像进行压缩数据,计算压缩算法的性能;2

12、自己编写M-function实现图像有损压缩算法,要求该程序能对256级灰度图像进行压缩数据,计算压缩算法的性能;3调用Matlab自带的图像处理函数,用不同的算法对图像进行压缩编码,比较结果。 四、实验原理图像压缩与编码是在满足一定保真度的要求下,对图像数据的进行变换、编码和压缩,去除冗余数据减少表示数字图像时需要的数据量,以便于图像的存储和传输,即以较少的数据量有损或无损地表示原来的像素矩阵的技术。图像压缩编码可分为两类:一类压缩是可逆的,即从压缩后的数据可以完全恢复原来的图像,信息没有损失,称为无损压缩编码;另一类压缩是不可逆的,即从压缩后的数据无法完全恢复原来的图像,信息有一定损失,称

13、为有损压缩编码。传统数据压缩方法的分类:无损压缩包括统计编码(Huffman编码,Shannon编码,游程编码,算术编码等)和轮廓编码;有损压缩包括预测编码(脉冲编码调制PCM,DifferentialPCM,AdaptiveDPCM等)、变换编码(DFT,DCT,KLT,WHT,小波变换等)和混合编码。 统计编码是根据信源的概率分布特性,分配具有惟一可译性的可变长码字,降低平均码字长度,以提高信息的传输速度,节省存储空间。其基本原理是在信号概率分布情况已知的基础上,概率大的信号对应的码字短,概率小的信号对应的码字长,这样就降低了平均码字长度。其中Huffman编码具体的编码方法为:把输入元素

14、按其出现概率的大小顺序排列起来,然后把最末两个具有最小概率的元素之概率加起来; 把该概率之和同其余概率由大到小排队,然后再把两个最小概率加起来,再重新排队;重复,直到最后只剩下两个概率为止。 变换编码的基本原理是通过数学变换可以改变信号能量的分布,从而压缩信息量。以傅里叶变换的概念说明合理的变换可以改变信号能量分布的基本原理。在变换编码中有以下二个问题值得注意:图像变换方法的选取;子图像大小的选取。传统的DFT,DCT,KLT和经典小波变换等变换编码在图像变换后会产生浮点数,因而必须对变换后的数据进行量化处理,这样就产生不同程度的失真。而新一代的整数小波变换(第二代小波变换)采用提升方法能够实

15、现整数变换,因而能够实现图像的无损压缩。新的静态图像压缩标准JPEG2000中采用了基于提升方法的整数小波变换。 五、实验步骤1选择一组合适的原始图像作为测试图像;2根据设计要求选择合适的图像压缩与编码方法;3设计压缩与编码算法;4. 显示原始图像和压缩重构图像;5. 计算压缩的性能指标:压缩率和保真度; 6完成实验报告。六、实验结果及分析1、利用余弦变换实现图像压缩:DCT先将整体图像分成NN像素块(一般N=8,即64个像素块),再对NN块像素逐一进行DCT变换。由于大多数图像高频分量较小,相应于图像高频成分的失真不太敏感,可以用更粗的量化,在保证所要求的图质下,舍弃某些次要信息。实验代码:

16、a=imread(f:/1.jpg); I=rgb2gray(a); imshow(I); title(原始图像); disp(原始图像大小:); whos(I); I=im2double(I);%图像类型存储转换,将图像矩阵转换成双精度类型? T=dctmtx(8);%离散余弦变换矩阵 B = blkproc(I,8 8,P1*x*P2,T,T); 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

17、0 0 0 0 0; B2=blkproc(B,8 8,P1.*x,mask); I2=blkproc(B2,8 8,P1*x*P2,T,T); figure,imshow(I2); title(压缩后的图像); disp(压缩图像的大小:);whos(I2);原始图像大小: Name Size Bytes Class Attributes I 287x287 82369 uint8 压缩图像的大小: Name Size Bytes Class Attributes I2 287x287 658952 double 2、 利用小波变换实现图像压缩 clear all a=imread(f:/1

18、.jpg); I=rgb2gray(a); imshow(I); title(原始图像); disp(原始图像I的大小:); whos(I); I=im2double(I); c,s=wavedec2(I,2,bior3.7); ca1=appcoef2(c,s,bior3.7,1); ch1=detcoef2(h,c,s,1); cv1=detcoef2(v,c,s,1); cd1=detcoef2(d,c,s,1); ca1=appcoef2(c,s,bior3.7,1); ca1=wcodemat(ca1,440,mat,0); ca1=0.5*ca1; figure,image(ca1

19、); title(第一次压缩后的图像); disp(第一次压缩图像的大小为:); whos(ca1); ca2=appcoef2(c,s,bior3.7,2); ca2=wcodemat(ca2,440,mat,0); ca2=0.25*ca2; figure,image(ca2); title(第二次压缩后的图像); disp(第二次压缩图像的大小为:);whos(ca2);原始图像I的大小: Name Size Bytes Class Attributes I 287x287 82369 uint8 第一次压缩图像的大小为: Name Size Bytes Class Attributes

20、 ca1 151x151 182408 double 第二次压缩图像的大小为: Name Size Bytes Class Attributes ca2 83x83 55112 double 八、实验思考题1 DFT与DCT的性能比较;答:DCT是离散傅里叶变换;DFT是离散余弦变换。共同点:都将空域的图像数据信息转换到频域中,即分离出图像的低频到高频成分。区别:1、DCT与DFT转换后的域仅包含频域成分,就叫频域;DWT转换后的域不仅有频域成分,还具有空域成分,因此叫小波域。2、DCT的频域的低频成分在DCT系数图的中间,高频成分在四周,离系数图中心越远,频率越高;DFT与DWT的频域的低频成分在系数图左上方,越往右下方频率越-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁