[数学]MATLAB应用于数字图像处理ppt课件.ppt

上传人:小飞机 文档编号:2047537 上传时间:2023-01-03 格式:PPT 页数:51 大小:2.56MB
返回 下载 相关 举报
[数学]MATLAB应用于数字图像处理ppt课件.ppt_第1页
第1页 / 共51页
[数学]MATLAB应用于数字图像处理ppt课件.ppt_第2页
第2页 / 共51页
[数学]MATLAB应用于数字图像处理ppt课件.ppt_第3页
第3页 / 共51页
[数学]MATLAB应用于数字图像处理ppt课件.ppt_第4页
第4页 / 共51页
[数学]MATLAB应用于数字图像处理ppt课件.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《[数学]MATLAB应用于数字图像处理ppt课件.ppt》由会员分享,可在线阅读,更多相关《[数学]MATLAB应用于数字图像处理ppt课件.ppt(51页珍藏版)》请在三一办公上搜索。

1、MATLAB应用于数字图像 分析和处理,图像处理着重强调在图像之间进行的变换。,虽然人们常用图像处理泛指各种图像技术,但比较狭义的图像处理主要指对图像进行各种加工以改善图像的视觉效果并为自动识别打基础,或对图像进行压缩编码以减少对其所需存储空间或传输时间、传输路径的要求。,图像分析则主要是对图像中感兴趣的目标进行检测和测量,以获得它们的客观信息,从而建立对图像的描述。,图像处理是一个从图像到图像的过程图像分析是一个从图像到数据的过程,MATLAB推出了功能更强大的适应于图像分析和处理的工具箱。利用此工具,我们可以方便地从各个方面对图像的性质进行深入的研究。,在 MATLAB中可用两种数据类型来

2、存储图像:双精度型(double)和无符号8位整数型(uint8),图形命令对不同的数据类型做不同的处理。,MATLAB支持的图形文件的格式包括:TIFF、BMP、JPEG、PCX、XWD和 HDF;,MATLAB在图像处理中的应用都是由相应的 MATLAB函数来实现。下面讨论如何利用 MATLAB处理数字图像。,支持的图像类型包括:索引图像、灰度图像、二进制图像、RGB图像。,TIFF:Tagged Image File Format,处理1、4、8、24位非压缩图像;处理 1、4、8、24位packbit压缩图像;,文件内容包括:四部分,文件头(fileheader)、参数指针表和参数域、

3、参数数据表和图像数据,bmp:windows bitmap,1、4、8、24位压缩图像;,文件内容包括:,文件头、位图信息数据块和图像数据,jpeg:joint photographic experts group,图像压缩格式,pcx:windows paintbrush,处理1、4、8、24位图像数据,文件内容包括:,文件头、图像数据、扩展调色板数据,1.数字图像文件操作和图像显示,MATLAB提供了图像文件读入函数 imread(),可用它来读入 BMP、HDF、JPEG、PCX、TIFF、XWD等格式图像文件。,MATL AB还提供了 imwrite()图像写出函数。显示图像函数有im

4、age()、imshow()等。,I=imread(autumn.tif);image(I);,x=imread(flowers.tif);imshow(x),rgb2gray()将rgb彩色图像转换为灰度图。,clear all;x=imread(flowers.tif);imshow(x)x1=rgb2gray(x);figure;imshow(x1),imcontour()画图像数据轮廓线(等高线、等值线),clear all;x=imread(flowers.tif);imshow(x)x1=rgb2gray(x);figure;imshow(x1)figure;imcontour(x

5、1),imhist()画图像灰度直方图,figure;imhist(x1),比较两幅图像灰度直方图,a=imread(tire.tif);figure;subplot(2,2,1);imshow(a);subplot(2,2,3);imhist(a);b=imread(lena256.bmp);subplot(2,2,2);imshow(b);subplot(2,2,4);imhist(b);,灰度图像直方图比较,2.图像的矩阵表示及基本运算,MATLAB在处理图像时,都是以向量、矩阵、数组的形式来表示图像,并进行各种运算。,MATLAB提供了图像的和、差等线性运算,以及卷积、相关、滤波等非线

6、性运算。例如,conv2(I,J)实现 I、J两幅图像的卷积。,3.图像的数据类型与图像显示,1.无符号8位整型(uint8)图像数据的显示。x=imread(lena256.bmp);imshow(x);2.双精度(double)图像数据的显示。x=imread(lena256.bmp);x=double(x);imshow(x);*图像显示白色,原因是double类型数据只在01正常显示。需进行归一化。,x=x/255;,4.图像数据的运算(1),1.x=imread(lena256.bmp);x=x-100;?Error using=-Function-is not defined fo

7、r values of class uint8.uint8数据无法计算,必须转化为double类型。2.灰度值降低(降低亮度)x1=(double(x)-100)/255;imshow(x1);,原始图像与降低亮度后图像,4.图像数据的运算(2),3.灰度值提高(增加亮度)x2=(double(x)+100)/255;imshow(x2);,4.图像数据的运算(3),3.灰度动态范围降低(降低对比度)方法:使用一次直线映射假设原图像动态范围0M,降低灰度动态范围后动态范围0M/2,说明映射函数为:y=x/2 注意:数据类型必须是double类型!思考:编写程序完成,4.图像数据的运算(4),4

8、.灰度动态范围扩展(提高对比度)方法:使用一次直线映射假设原图像动态范围0M,扩展灰度动态范围后动态范围01.5M,说明映射函数为:y=1.5*x 注意:数据类型必须是double类型!思考:编写程序完成,5.图像增强,MATLAB提供了 Gamma校正、中值滤波、对比度调整、直方图均衡、自适应滤波等对图像进行处理。,函数 imadjust()为对比度调整函数,用于调整灰度值或颜色图。,1.对比度增强Imadjust(),调整图像亮度值或彩色图,J=imadjust(I,low_in high_in,low_out high_out,gamma),RGB2=imadjust(RGB1,.),c

9、lear;x=imread(lena256.bmp);imshow(x);y=imadjust(x);figure;imshow(y),调整图像灰度动态范围,灰度动态范围扩展(增强对比度),clear;x=imread(lena256.bmp);imshow(x);y=imadjust(x,0.3 0.7,);figure;imshow(y),RGB1=imread(football.jpg);RGB2=imadjust(RGB1,.2.3 0;.6.7 1,);figure;subplot(211);imshow(RGB1)subplot(212);imshow(RGB2),调整彩色图色调(

10、自学),直方图均衡化是图像处理中很重要的研究内容,它通过转换灰度图像亮度值或索引图像的颜色图值来增强图像对比度。图像的灰度统计直方图是 1个 1-D的离散函数.,2.直方图均衡化,直方图均衡化函数histeq(),clear;x=imread(lena256.bmp);imshow(x);y=histeq(x);figure;imshow(y),6.图像的空域滤波(平滑和锐化),图像的平滑主要用于噪声图像的降噪。图像的锐化主要用于图像的边缘增强。方法:图像的二维卷积函数格式:Y=CONV2(X,D,shape)其中:X为待处理的二维图像,数据类型为double.D为滤波模板,为(2N+1)*(

11、2N+1)的方阵.shape 选项通常选same.Y为处理后的二维图像.,(1)图像平滑,用于对由于受噪声干扰而质量降低的图像降噪,低通滤波法、局部平均法、多帧平均法等,(1.)图像加噪函数imnoise(),J=imnoise(I,type,),常用噪声类型:gaussian 高斯噪声 salt&petter 盐椒噪声 speckle 乘法噪声,x=imread(lena256.bmp);x1=imnoise(x,gaussian,0,0.002);x2=imnoise(x,salt,程序,(2.)邻域平均平滑滤波,方法:图像的二维卷积函数格式:Y=CONV2(X,D,shape)其中:X为

12、待处理的二维图像,数据类型为double;Y为处理后的二维图像.shape 选项通常选same.D为滤波模板,通常为3*3,5*5,7*7的方阵。,邻域平均滤波模板,平滑模板所有元素均为正数。为保证运算后灰度范围不变,要求模板所有元素之和为1.,程序,x=imread(lena256.bmp);x=double(x)/255;x1=imnoise(x,gaussian,0,0.002);D=ones(3)/9;x2=conv2(x1,D,same);figure;subplot(121);imshow(x1);xlabel(加高斯噪声后的图像);subplot(122);imshow(x2);

13、xlabel(平滑滤波后的图像);,可见,降噪的同时图像模糊了,随着模板的尺寸增大,降噪的效果增强,但图像也更加模糊.,(3)二维中值滤波medfilt2(),x=imread(lena256.bmp);x=double(x)/255;x1=imnoise(x,gaussian,0,0.002);D=ones(3)/9;x2=conv2(x1,D,same);x3=medfilt2(x1,3 3);,figure;subplot(221);imshow(x);xlabel(原始图像);subplot(222);imshow(x1);xlabel(加高斯噪声后的图像);subplot(223);

14、imshow(x2);xlabel(邻域平均平滑滤波后的图像);subplot(224);imshow(x3);xlabel(中值滤波后的图像);,可见,中值滤波效果优于领域平均平滑滤波.,(5)锐化滤波(边缘增强),锐化滤波模板,锐化模板中心元素为正,其它为负。为保证运算后灰度范围不变,要求模板所有元素之和为1.,x=imread(lena256.bmp);x=double(x)/255;D=-1-1-1;-1 9-1;-1-1-1;x1=conv2(x,D,same);figure;subplot(121);imshow(x);xlabel(原始图像);subplot(122);imsho

15、w(x1-x);xlabel(锐化滤波后的图像);,可见,经锐化滤波后图像的边缘得到增强.,图像的空间分辨率,程序如下:x=imread(lena256.bmp);mx,nx=size(x),y=x(1:3:mx,1:3:nx);my,ny=size(y),figure;subplot(121);imshow(x);subplot(122);imshow(y);,通过降低采样率降低空间分辨率,mx=256 nx=256my=86 ny=86,明显可见空间分辨率降低,图像边缘出现马赛克的现象.,图像的特殊处理马赛克,程序如下:x=imread(lena256.bmp);%读入图像x=double(x)/255;%转换为双精度并归一化y=x(101:200,101:200);%取出人脸矩阵yjg=10;%定义马赛克方块的尺寸m,n=size(y);%提取图像矩阵大小z=zeros(size(y);%给输出矩阵分配空间,z(1:jg:m,1:jg:n)=y(1:jg:m,1:jg:n);%提取原始图像对应各马赛克左上角数据给目标图像z(1:jg,1:jg)=z(1,1);%对第一块进行马赛克处理subplot(121);imshow(y);subplot(122);imshow(z);%显示结果,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号