数字图像处理及应用MATLAB第8章.ppt
合集下载
matlab教程ppt(完整版)
控制流语句
使用条件语句(如if-else)和 循环语句(如for)来控制程序 流程。
变量定义
使用赋值语句定义变量,例如 `a = 5`。
矩阵运算
使用矩阵进行数学运算,如加 法、减法、乘法和除法等。
函数编写
创建自定义函数来执行特定任 务。
02
MATLAB编程语言基础
变量与数据类型
变量命名规则
数据类型转换
编辑器是一个文本编辑器 ,用于编写和编辑 MATLAB脚本和函数。
工具箱窗口提供了一系列 用于特定任务的工具和功 能,如数据可视化、信号 处理等。
工作空间窗口显示当前工 作区中的变量,可以查看 和修改变量的值。
MATLAB基本操作
数据类型
MATLAB支持多种数据类型, 如数值型、字符型和逻辑型等 。
04
MATLAB数值计算
数值计算基础
01
02
03
数值类型
介绍MATLAB中的数值类 型,包括双精度、单精度 、复数等。
变量赋值
讲解如何给变量赋值,包 括标量、向量和矩阵。
运算符
介绍基本的算术运算符、 关系运算符和逻辑运算符 及其优先级。
数值计算函数
数学函数
列举常用的数学函数,如 三角函数、指数函数、对 数函数等。
矩阵的函数运算
总结词:MATLAB提供了许多内置函 数,可以对矩阵进行各种复杂的运算
。
详细描述
矩阵求逆:使用 `inv` 函数求矩阵的 逆。
特征值和特征向量:使用 `eig` 函数 计算矩阵的特征值和特征向量。
行列式值:使用 `det` 函数计算矩阵 的行列式值。
矩阵分解:使用 `factor` 和 `expm` 等函数对矩阵进行分解和计算指数。
数字图象处理及matlab的实现 ppt 课件 第0608章
x a b x y c d y mod N
• 保证|ad-bc|=1,如置换矩阵系数设为a=b=1,c=2,d=3, 置换次数n=20,则他们被当作密钥key,用于解密。
n
27
function [outImg]=arnold(inImg,key) %key=[Times,a,b,c,d]; figure(1), imshow(inImg); title('Original'); [iH iW]=size(inImg); outImg=uint8(zeros(iH,iW)); tempImg=inImg; if iH ~= iW error('The cover must be a square !'); return; elseif size(key,2) ~=5; error('The key must be 5 numbers !'); return; elseif (key(2)*key(5)-key(3)*key(4)) ~=1; error('The Arnold Matrix is not valid !'); return; end for i=1:key(1) % iTime for u=1:iH for v=1:iW temp=tempImg(u,v); ax=mod((key(2)*(u-1)+key(3)*(v-1)),iW)+1; ay=mod((key(4)*(u-1)+key(5)*(v-1)),iW)+1; outImg(ax,ay)=temp; end end tempImg=outImg; end outImg=tempImg; figure(2), imshow(outImg); title('Permuted'); imwrite(outImg, 'Encrypted.bmp');
Matlab数字图像处理PPT课件
Matlab数字图像处理PPT课件
/2、图像的点运算
三、灰度的对数变换
tclo kg s
c为尺度比例常数,s为源灰度值,t为变换后的目标灰 度值。k为常数。灰度的对数变换可以增强一幅图像 中较暗部分的细节,可用来扩展被压缩的高值图像中 的较暗像素。广泛应用于频谱图像的显示中。
Warning:log函数会对输入图像矩阵s中的每个元素进行
1边界选项symmetricreplicatecircular2尺寸选项samefull3模式选项corrconv三滤波器设计4空间域图像增强hfspecialtypeparameters合法取值功能average平均模板disk圆形领域的平均模板gaussian高斯模板laplacian拉普拉斯模板log高斯拉普拉斯模板prewittprewitt水平边缘检测算子sobelsobel水平边缘检测算子parameters为可选项是和所选定的滤波器类型type相关的配置参数如尺寸和标准差等
I=fft2(x);%快速傅里叶变换 I=fft2(x,m,n);
x为输入图像;m和n分别用于将x的第一和第二维规整到指定的长度。 当m和n均为2的整数次幂时算法的执行速度要比m和n均为素数时快。
I1=abs(I);%计算I的幅度谱 I2=angle(I);%计算I的相位谱
W(1,-1) W(1,0) W(1, 1)
f(x-1,y-1) f(x-1,y) f(x-1,y+1)
f(x,y-1) f(x,y)
f(x,y+1)
f(x+1,y-1) f(x+1,y) f(x+1,y+1)
B=imfilter(f,w,option1,option2,…);
f 为要进行滤波操作的图像。 w为滤波操作使用的模板,为一个二维数组,可自己定义。 option1……是可选项,包括: 1、边界选项(’symmetric’、’replicate’、’circular’) 2、尺寸选项(’same’、’full’) 3、模式选项(’corr’、’conv’)
/2、图像的点运算
三、灰度的对数变换
tclo kg s
c为尺度比例常数,s为源灰度值,t为变换后的目标灰 度值。k为常数。灰度的对数变换可以增强一幅图像 中较暗部分的细节,可用来扩展被压缩的高值图像中 的较暗像素。广泛应用于频谱图像的显示中。
Warning:log函数会对输入图像矩阵s中的每个元素进行
1边界选项symmetricreplicatecircular2尺寸选项samefull3模式选项corrconv三滤波器设计4空间域图像增强hfspecialtypeparameters合法取值功能average平均模板disk圆形领域的平均模板gaussian高斯模板laplacian拉普拉斯模板log高斯拉普拉斯模板prewittprewitt水平边缘检测算子sobelsobel水平边缘检测算子parameters为可选项是和所选定的滤波器类型type相关的配置参数如尺寸和标准差等
I=fft2(x);%快速傅里叶变换 I=fft2(x,m,n);
x为输入图像;m和n分别用于将x的第一和第二维规整到指定的长度。 当m和n均为2的整数次幂时算法的执行速度要比m和n均为素数时快。
I1=abs(I);%计算I的幅度谱 I2=angle(I);%计算I的相位谱
W(1,-1) W(1,0) W(1, 1)
f(x-1,y-1) f(x-1,y) f(x-1,y+1)
f(x,y-1) f(x,y)
f(x,y+1)
f(x+1,y-1) f(x+1,y) f(x+1,y+1)
B=imfilter(f,w,option1,option2,…);
f 为要进行滤波操作的图像。 w为滤波操作使用的模板,为一个二维数组,可自己定义。 option1……是可选项,包括: 1、边界选项(’symmetric’、’replicate’、’circular’) 2、尺寸选项(’same’、’full’) 3、模式选项(’corr’、’conv’)
数字图像处理ppt课件
between 64 to 128 (using function
imagesc).
>>clims=[64,128]
>>imagesc(a,clims)
f. Make a movie from a 4-D image (load mri, make the movie by immovie, then show movie by function movie).
二、实验内容:
使用Photoshop观察数字图像增强的效果; 练习和掌握图像增强的Matlab编程。。 熟悉下列模块函数
Image enhancement. histeq - Read image file. imadust - Adust imae intensity values or colormap.
imshow - Display image.
subimage - Display multiple images in single figure.
truesize - Adjust display size of image.
warp - Display image as texture-mapped surface.
processing.
f. Compare the qualities of two images and
makes a discussion about them.
g. Add noises, such as gaussian, salt&pepper,
speckle noise into the image respectively.
10)选图像Blood、噪声类型Salt & Pepper、滤波器类型Median、邻域3x3,比较原始图像、
matlab编程基础与工程应用第八章课件
【 例 8.1-1】 电 阻 电 路 如 图 8-1 所 示 , 已 知 R1=R2=R3=1Ω , R4=R5=R6=2Ω,uS1=4V,uS2=-2V,求I3。
电阻电路可用回路电流法、支路电流法、节 点电压法等方法求解,本例给出回路电流法。
【解】 解法一:回路电流法。回路电流法以回路电 流为变量,根据基尔霍夫电压定律(KVL), 列写电路的独立回路组的KVL方程。如图81,将3个网孔作为选取的独立回路组,则回 路电流法的KVL方程组为
程序还调用 MATALB 信号处理工具箱中的周期 矩形脉冲的产生函数square。其调用格式为: square(T);产生一个周期为2π的矩形脉冲函数。 其最大值为 1 ,最小值为 -1. 函数自变量取值为 相量T的各元素的值。 square (T, duty);产生一个占空比duty、周期为 2π的矩形脉冲函数。 square(w*T, duty);产生一个占空比duty、周期 为2π/w的矩形脉冲函数。 由以上说明可知,square(w*t, 50)产生一个周 期为 2π/w 、占空比为 50% 、幅值为± 1 的周期 性矩形脉冲。
������ ������������ ������������ //������������ Z 1
电流表的读数即为电流������的模值。
clear clc w=1000; ZR=20; Us=160; ZL=j*w*0.04 ZC=-j*(1/(w*20*1e-6)); Z1=(ZL*ZC)/(ZL+ZC); Z=ZR+Z1; U=Us*(Z1/Z); I=U/ZL; Iy=abs(I) 程序运行结果为 Iy = 3.9801
(R1+ R6+ R2) I1- R6 I3- R2 I2=- uS1 (R2+ R4 + R5) I2- R2 I1- R5 I3=- uS2 (R3+ R5+ R6) I3- R6 I1- R5 I2= uS2
Matlab数字图像处理幻灯片PPT
噪声介绍
噪声是不可预测的,只能用概率统计方法来认识的随机误差。下面介绍常 见的噪声:
1、高斯噪声 2、椒盐噪声 3、均匀分布噪声 4、指数分布噪声 5、伽玛分布噪声
噪声的MATLAB实现
在MATLAB中,可以通过函数imnoise( )给图像添加噪声,该函数可以得 到高斯分布噪声、椒盐噪声、泊松分布噪声和乘性噪声。该函数的调用格 式为:
[J, noise]=wiener2(I, [m, n]):该函数对图像中的噪声进展估计,返回值 noise为噪声的能量。
6.4 图像复原方法
下面对图像复原的常用方法进展介绍,主要包括逆滤波复原、维纳滤波复 原、约束最小二乘法复原、
Lucy-Richardson复原和盲解卷积复原等。
逆滤波复原
对于直接逆滤波,由于存在噪声的影响,退化图像的估计公式为:
维纳滤波复原
维纳〔wiener〕滤波最早是由Wiener首先提出的,并应用于一维信号, 取得很好的效果。后来该算法又被引入二维信号处理,也取得相当满意的 效果,尤其是在图像复原领域。由于维纳滤波器的复原效果好,计算量较 低,并且抗噪性能优良,因而在图像复原领域得到了广泛的应用。许多高 效的图像复原算法都是以维纳滤波为根底形成的。
J=deconvreg(I, PSF, NOISEPOWER, LRANGE):该函数中对参数 LRANGE进展设置,该参数为拉格朗日算子的搜索范围,默认值为[10-9, 109]。
J=deconvreg(I, PSF, NOISEPOWER, LRANGE, REGOP):该函数中参数 REGOP为约束算子。
数字图像的噪声主要来自图像的采集和传输过程。图像传感器的工作受到 各种因素的影响。例如在使用CCD摄像机获取图像时,光照强度和传感器 的温度是产生噪声的主要原因。图像在传输过程中也会受到噪声的干扰。
matlab与数字图像处理 PPT课件
hjian@
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
The MATLAB Image Processing 2 Toolbox
• The Image Processing Toolbox is a collection
of MATLAB functions (called M-functions or Mfiles) that extend the capability of the MATLAB environment for the solution of digital image processing problems.
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
10
Displaying an image(cont.)
• Spatial domain
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
11
Displaying an image(cont.)
• pixval : 功能:cursor on image to show pixel values 用法: imshow(I),pixval
eddins36数字图像处理2008年中山大学信息科学与技术学院计算机系黄剑3个projects?电能表读数识别?人脸检测?印刷线路板缺陷检测37数字图像处理2008年中山大学信息科学与技术学院计算机系黄剑电能表读数识别?对字轮进行精确定位与识别
Matlab with DIP 教学
计算机科学系 黄剑
数字图ቤተ መጻሕፍቲ ባይዱ处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
4
How do I know M-function?
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
The MATLAB Image Processing 2 Toolbox
• The Image Processing Toolbox is a collection
of MATLAB functions (called M-functions or Mfiles) that extend the capability of the MATLAB environment for the solution of digital image processing problems.
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
10
Displaying an image(cont.)
• Spatial domain
数字图像处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
11
Displaying an image(cont.)
• pixval : 功能:cursor on image to show pixel values 用法: imshow(I),pixval
eddins36数字图像处理2008年中山大学信息科学与技术学院计算机系黄剑3个projects?电能表读数识别?人脸检测?印刷线路板缺陷检测37数字图像处理2008年中山大学信息科学与技术学院计算机系黄剑电能表读数识别?对字轮进行精确定位与识别
Matlab with DIP 教学
计算机科学系 黄剑
数字图ቤተ መጻሕፍቲ ባይዱ处理,2008年
中山大学信息科学与技术学院计算机系,黄剑
4
How do I know M-function?
基于MATLAB的数字图像处理_毕业设计PPT
二值图像分析
1.膨胀 膨胀是使区域从四周向 外扩大,给图像中的对象边 界添加像素。 2.腐蚀 腐蚀则是使区域从四周 同时向内缩小,删除对象边 界某些像素。
二值图像分析
3.综合应用 (1)噪声滤除 开运算:开运算是先对图像进行腐蚀,然后再进行膨胀的结果。 闭运算:闭运算是先对图像进行膨胀,然后再进行腐蚀的结果。 将开启运算和闭合运算结合起来可构成噪声滤除器。 MATLAB中还提供了预定义的形态函数bwmorph。 代码: I3=imnoise(I2,'salt & pepper'); I4=bwmorph(I3,'open'); I5=bwmorph(I4,'close');
图像复原
原始图像
模糊后的图像
加噪后的图像
恢复后的图像
ቤተ መጻሕፍቲ ባይዱ
运行后:
图像增强
空域滤波增强:
1.线性平滑滤波器 线性低通滤波器是最常用的线性平滑滤波器。这种滤波器的所有系数
都是正的。对3*3的模板来说,最简单的操作是取所有系数都为1。为保证输
出图像仍在原来的灰度范围内,在计算R后要将其除以9再进行赋值。这种 方法称为邻域平均法。
代码:I=imread('saturn.tif'); J=imnoise(I,'salt & pepper',0.02); imshow(I) figure,imshow(J) K1=filter2(fspecial('average',3),J)/255; figure,imshow(K1) ` title('3*3的均值滤波器')
MATLAB新特点: 1.数据类型和面向对象编程技术 2.控制流和函数类型 3.大量引入图形用户界面 4.引入了全方位帮助系统 5. M 文件编辑、调试 的集成环境和性能剖析 6.MATLAB 环境可运行文件的多样化
数字图像处理MATLAB图像处理PPT课件
C(x, y) A(x, y) B(x, y) 差值图像提供了图像间的差值信息,能用于指导动态监测、 运动目标的检测和跟踪、图像背景的消除及目标识别等。
主要应用举例: ➢ 差影法(检测同一场景两幅图像之间的变化) ➢ 混合图像的分离
第17页/共41页
(1)检测同一场景两幅图像之间的变化
设:时刻1的图像为 T1(x,y), 时刻2的图像为 T2(x,y) g(x,y) = T2 (x,y) - T1(x,y)
第25页/共41页
除法运算(Division)
4、除法运算
C(x, y) A(x, y) B(x, y)
简单的除法运算可用于改变图像的灰度级, 常用于遥感图像处理中。
在四种算术运算中,减法与加法在图像增强 处理中最为有用。
第26页/共41页
几何变换
1)简单变换 • 问题描述:图像的平移、放缩和旋转。 • 解题思路:从易到难。工具:线性代数中的齐次坐标。
x
象
素
y1
填y
充
映
射
f(x1,y1) (x1,y1)非整型
f(x,y) (x,y)整型
第32页/共41页
图像的缩放
• 两种映射方法的对比 • 对于向前映射:每个输出图像的灰度要经过多次运算; • 对于向后映射:每个输出图像的灰度只要经过一次运算。
实际应用中,更经常采用向后映射法。 其中,根据四个相邻像素灰度值计算某位置的像素灰度
1、加法运算
C(x, y) A(x, y) B(x, y)
主要应用举例: ➢ 去除“叠加性”随机噪音 ➢ 生成图像叠加效果
第12页/共41页
(1)去除“叠加性”噪音
对于原图象f(x,y),有一个噪音图像集 { g i (x ,y) } 其中:g i (x ,y) = f(x,y) + ei(x,y)
主要应用举例: ➢ 差影法(检测同一场景两幅图像之间的变化) ➢ 混合图像的分离
第17页/共41页
(1)检测同一场景两幅图像之间的变化
设:时刻1的图像为 T1(x,y), 时刻2的图像为 T2(x,y) g(x,y) = T2 (x,y) - T1(x,y)
第25页/共41页
除法运算(Division)
4、除法运算
C(x, y) A(x, y) B(x, y)
简单的除法运算可用于改变图像的灰度级, 常用于遥感图像处理中。
在四种算术运算中,减法与加法在图像增强 处理中最为有用。
第26页/共41页
几何变换
1)简单变换 • 问题描述:图像的平移、放缩和旋转。 • 解题思路:从易到难。工具:线性代数中的齐次坐标。
x
象
素
y1
填y
充
映
射
f(x1,y1) (x1,y1)非整型
f(x,y) (x,y)整型
第32页/共41页
图像的缩放
• 两种映射方法的对比 • 对于向前映射:每个输出图像的灰度要经过多次运算; • 对于向后映射:每个输出图像的灰度只要经过一次运算。
实际应用中,更经常采用向后映射法。 其中,根据四个相邻像素灰度值计算某位置的像素灰度
1、加法运算
C(x, y) A(x, y) B(x, y)
主要应用举例: ➢ 去除“叠加性”随机噪音 ➢ 生成图像叠加效果
第12页/共41页
(1)去除“叠加性”噪音
对于原图象f(x,y),有一个噪音图像集 { g i (x ,y) } 其中:g i (x ,y) = f(x,y) + ei(x,y)
数字图像处理及MATLAB实现PPT课件
第12页/共69页
8.3.2梯度图像二值化
• 如果用适中的阈值对一幅梯度图像进行二值化,Kirsch的分割法利用了这种现象。 • 算法步骤 • 用一个中偏低的灰度阈值对梯度图像进行二值化从而检测出物体和背景,物体与背景被处于阈值之上的边
界点带分开。随着阈值逐渐提高,就引起物体和背景的同时增长。当它们接触上而又不至于合并时,可用 接触点来定义边界。这是分水岭算法在梯度图像中的应用。
OTSU算法定义:该算法是在灰度直方图的基础上用最小二乘法原理推导出来的, 具有统计意义上的最佳分割阈值。
第8页/共69页
• OTSU基本原理:以最佳阈值将图像的灰度直方图分割成两部分,是两部分之 间的方差取最大值,即分离性最大。
第9页/共69页
3. 迭代法求阈值
原理:图像中前景与背景之间的灰度分布为相互不重叠,在该前提下,实现对 两类对象的阈值分割方法。
除非图像中的物体有陡峭的边沿,否则灰度阈值的取值对所抽取物体的边界的 定位和整体的尺寸有很大的影响。这意味着后续的尺寸(特别是面积)的测量 对于灰度阈值的选择很敏感。由于这个原因,我们需要一个最佳的,或至少是 具有一致性的方法确定阈值。
第5页/共69页
1.直方图技术
• 含有一个与背景明显对比的物体的图像其有包含双峰的灰度直方图
第21页/共69页
Sobel边缘算子图
第22页/共69页
Prewitt边缘算子
Prewitr边缘算子 第23页/共69页
Kirsch边缘算子
图像中的每个点均与这8个模板进行卷积,每个掩模对某个特定边缘方向作出最大响应。所有8个方向中的 最大值作为边缘幅度图像的输出。最大响应掩模的序号构成了对边缘方向的编码。 Kirsch算子的梯度幅度值
8.3.2梯度图像二值化
• 如果用适中的阈值对一幅梯度图像进行二值化,Kirsch的分割法利用了这种现象。 • 算法步骤 • 用一个中偏低的灰度阈值对梯度图像进行二值化从而检测出物体和背景,物体与背景被处于阈值之上的边
界点带分开。随着阈值逐渐提高,就引起物体和背景的同时增长。当它们接触上而又不至于合并时,可用 接触点来定义边界。这是分水岭算法在梯度图像中的应用。
OTSU算法定义:该算法是在灰度直方图的基础上用最小二乘法原理推导出来的, 具有统计意义上的最佳分割阈值。
第8页/共69页
• OTSU基本原理:以最佳阈值将图像的灰度直方图分割成两部分,是两部分之 间的方差取最大值,即分离性最大。
第9页/共69页
3. 迭代法求阈值
原理:图像中前景与背景之间的灰度分布为相互不重叠,在该前提下,实现对 两类对象的阈值分割方法。
除非图像中的物体有陡峭的边沿,否则灰度阈值的取值对所抽取物体的边界的 定位和整体的尺寸有很大的影响。这意味着后续的尺寸(特别是面积)的测量 对于灰度阈值的选择很敏感。由于这个原因,我们需要一个最佳的,或至少是 具有一致性的方法确定阈值。
第5页/共69页
1.直方图技术
• 含有一个与背景明显对比的物体的图像其有包含双峰的灰度直方图
第21页/共69页
Sobel边缘算子图
第22页/共69页
Prewitt边缘算子
Prewitr边缘算子 第23页/共69页
Kirsch边缘算子
图像中的每个点均与这8个模板进行卷积,每个掩模对某个特定边缘方向作出最大响应。所有8个方向中的 最大值作为边缘幅度图像的输出。最大响应掩模的序号构成了对边缘方向的编码。 Kirsch算子的梯度幅度值
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
功能:图像文件的写入(保存),把图像写入图形文件中 格式:imwrite(A,filename,fmt) ;A,filename,fmt意义同上 所述。
(3)imshow 功能:显示图像
格式:imshow(I,n) ;imshow(I,[low high]) ;imshow(BW) %显示黑白图像
imshow(X,map) %显示索引色图像;imshow(RGB) %显示真彩色图像
imshow filename (4)figure
功能:创建图形窗口 (5)subplot
功能:将多个图画到一个平面上的工具。 格式:subplot(m,n,p)或者subplot(mnp) 说明:其中,m表示是图排成m行,n表示图排成n列,也就 是整个figure中有n个图是排成一行的,一共m行。
(a)原始图像 实验结果图
(b) 处理后图像
(4)实现真彩色图像与索引图像的互相转换。
clear,clc close all RGB1 = imread('peppers.png');%读入真彩色图像 [X1,map1] = rgb2ind(RGB1,128);%真彩色图像转化为索引图 imshow(X1,map1) %显示索引图像 load clown;%载入图像 rgb2=ind2rgb(X,map);%将索引图像转化为真彩色图像 figure,imshow(rgb2)
2、实验中所用部分函数介绍
(1)imread 功能:图像文件的读取 格式: A=imread(filename,fmt) 将文件命为filename表示的扩展名为fmt的图像文件读Байду номын сангаас到矩
阵A中。MATLAB支持的图像格式有bmp、jpg或jpeg、tif或tiff、 gif、pcx、png、xwd。 (2)imwrite
(a) circbw.tif
(b) newcircbw.bmp
(c) clown.bmp (d) new clown.bmp
(2) 在一个图形窗口中显示RGB图像
clear,clc close all I=imread('peppers.png'); subplot(2,2,1),imshow(I,'notruesize'),title('真彩色图像') R=I;R(:,:,[2 3])=0;%红色分量 G=I;G(:,:,[1 3])=0;%绿色分量 B=I;B(:,:,[1 2])=0;%蓝色分量 subplot(2,2,2),imshow(R,'notruesize');title('显示第一个颜色分量') subplot(2,2,3),imshow(G,'notruesize');title('显示第二个颜色分量') subplot(2,2,4),imshow(B,'notruesize');title('显示第三个颜色分量') 实验结果图如图所示。
第八章 数字图像处理实验
8.1 数字图像处理基本操作 8.2 图像增强技术实验 8.3 图像变换实验 8.4 图像分割实验 8.5 图像压缩编码实验 8.6 图像特征提取实验
8.1 数字图像处理基本操作
1、实验目的 (1)掌握MATLAB软件的运用,熟练掌握建立、保存、运行、调 试m文件的方法。 (2)了解MATLAB软件中图像处理工具箱的使用方法。 (3) 熟练掌握图像文件(黑白、灰度、索引色和彩色图像)的读 取及显示方法。 (4)熟悉常用的图像文件格式和格式转换。
figure,imshow('newclown.bmp') title('newclown.bmp') whos i1 i2
实验结果如图8.1.1所示及以下数据:
Name Size
Bytes Class
i1 280x272
76160 logical array
i2 291x240
69840 uint8 array
(6)rgb2ind 功能:将真彩色图像转换成索引色图像
格式:[X,map]= = rgb2ind ( I,n) 说明:I表示被转换的RGB原图像,其中n指定map中颜色项数, n 最大不能超过65536。 (7)ind2rgb 功能:将索引色图像转换成真彩色图像,
格式:RGB=ind2rgb(X,map) 说明:X表示被转换的索引色图像,map是X的调色板。 MATLAB的实际处理方式是创建一个三维数组,然后将索引色图像 中与颜色对应的map值赋值给三维数组。 (8) im2bw 功能:通过设置阈值将RGB、索引色、灰度图像转换成二值图像 格式:BW=im2bw(I, level) 说明:参数I可以是真彩色图像、灰度图像和索引色图像,当是索 引色图像时,I表示成X,map;level为转换阈值,转换阈值根据图 像而不同,可以通过函数graythresh()求得。
(a) 真彩色图像
(b)第一个颜色分量
(c)第二个颜色分量
(d)第三个颜色分量
(3)通过图像点运算增强图像对比度
clear,clc close all I=imread('rice.png'); subplot(1,2,1),imshow(I); I1=double(I); J=I1*1.4+40;%点运算增强 I2=uint8(J); subplot(1,2,2),imshow(I2); 实验结果如图所示:
3、实验内容示例部分
(1)对二值图像、索引色图像实现读取、显示和保存
clear,clc close all i1=imread('circbw.tif');%读取图片 imshow(i1),title('黑白图像') %显示图片 imwrite(i1,'newcircbw.bmp');%保存图片 figure,imshow('newcircbw.bmp'); title('newcircbw.bmp') load clown imwrite(X,map,'clown.bmp'); [i2,map]=imread('clown.bmp'); figure,imshow(i2,map) title('索引色图像') imwrite(i2,map,'newclown.bmp');
(3)imshow 功能:显示图像
格式:imshow(I,n) ;imshow(I,[low high]) ;imshow(BW) %显示黑白图像
imshow(X,map) %显示索引色图像;imshow(RGB) %显示真彩色图像
imshow filename (4)figure
功能:创建图形窗口 (5)subplot
功能:将多个图画到一个平面上的工具。 格式:subplot(m,n,p)或者subplot(mnp) 说明:其中,m表示是图排成m行,n表示图排成n列,也就 是整个figure中有n个图是排成一行的,一共m行。
(a)原始图像 实验结果图
(b) 处理后图像
(4)实现真彩色图像与索引图像的互相转换。
clear,clc close all RGB1 = imread('peppers.png');%读入真彩色图像 [X1,map1] = rgb2ind(RGB1,128);%真彩色图像转化为索引图 imshow(X1,map1) %显示索引图像 load clown;%载入图像 rgb2=ind2rgb(X,map);%将索引图像转化为真彩色图像 figure,imshow(rgb2)
2、实验中所用部分函数介绍
(1)imread 功能:图像文件的读取 格式: A=imread(filename,fmt) 将文件命为filename表示的扩展名为fmt的图像文件读Байду номын сангаас到矩
阵A中。MATLAB支持的图像格式有bmp、jpg或jpeg、tif或tiff、 gif、pcx、png、xwd。 (2)imwrite
(a) circbw.tif
(b) newcircbw.bmp
(c) clown.bmp (d) new clown.bmp
(2) 在一个图形窗口中显示RGB图像
clear,clc close all I=imread('peppers.png'); subplot(2,2,1),imshow(I,'notruesize'),title('真彩色图像') R=I;R(:,:,[2 3])=0;%红色分量 G=I;G(:,:,[1 3])=0;%绿色分量 B=I;B(:,:,[1 2])=0;%蓝色分量 subplot(2,2,2),imshow(R,'notruesize');title('显示第一个颜色分量') subplot(2,2,3),imshow(G,'notruesize');title('显示第二个颜色分量') subplot(2,2,4),imshow(B,'notruesize');title('显示第三个颜色分量') 实验结果图如图所示。
第八章 数字图像处理实验
8.1 数字图像处理基本操作 8.2 图像增强技术实验 8.3 图像变换实验 8.4 图像分割实验 8.5 图像压缩编码实验 8.6 图像特征提取实验
8.1 数字图像处理基本操作
1、实验目的 (1)掌握MATLAB软件的运用,熟练掌握建立、保存、运行、调 试m文件的方法。 (2)了解MATLAB软件中图像处理工具箱的使用方法。 (3) 熟练掌握图像文件(黑白、灰度、索引色和彩色图像)的读 取及显示方法。 (4)熟悉常用的图像文件格式和格式转换。
figure,imshow('newclown.bmp') title('newclown.bmp') whos i1 i2
实验结果如图8.1.1所示及以下数据:
Name Size
Bytes Class
i1 280x272
76160 logical array
i2 291x240
69840 uint8 array
(6)rgb2ind 功能:将真彩色图像转换成索引色图像
格式:[X,map]= = rgb2ind ( I,n) 说明:I表示被转换的RGB原图像,其中n指定map中颜色项数, n 最大不能超过65536。 (7)ind2rgb 功能:将索引色图像转换成真彩色图像,
格式:RGB=ind2rgb(X,map) 说明:X表示被转换的索引色图像,map是X的调色板。 MATLAB的实际处理方式是创建一个三维数组,然后将索引色图像 中与颜色对应的map值赋值给三维数组。 (8) im2bw 功能:通过设置阈值将RGB、索引色、灰度图像转换成二值图像 格式:BW=im2bw(I, level) 说明:参数I可以是真彩色图像、灰度图像和索引色图像,当是索 引色图像时,I表示成X,map;level为转换阈值,转换阈值根据图 像而不同,可以通过函数graythresh()求得。
(a) 真彩色图像
(b)第一个颜色分量
(c)第二个颜色分量
(d)第三个颜色分量
(3)通过图像点运算增强图像对比度
clear,clc close all I=imread('rice.png'); subplot(1,2,1),imshow(I); I1=double(I); J=I1*1.4+40;%点运算增强 I2=uint8(J); subplot(1,2,2),imshow(I2); 实验结果如图所示:
3、实验内容示例部分
(1)对二值图像、索引色图像实现读取、显示和保存
clear,clc close all i1=imread('circbw.tif');%读取图片 imshow(i1),title('黑白图像') %显示图片 imwrite(i1,'newcircbw.bmp');%保存图片 figure,imshow('newcircbw.bmp'); title('newcircbw.bmp') load clown imwrite(X,map,'clown.bmp'); [i2,map]=imread('clown.bmp'); figure,imshow(i2,map) title('索引色图像') imwrite(i2,map,'newclown.bmp');