Matlab图像处理函数汇总
1、图像的变换
① fft2:fft2函数用于数字图像的二维傅立叶变换,如:i=imread('104_8.tif'); j=fft2(i);
②ifft2:ifft2函数用于数字图像的二维傅立叶反变换,如:
i=imread('104_8.tif');
j=fft2(i);
k=ifft2(j);
2、模拟噪声生成函数和预定义滤波器
① imnoise:用于对图像生成模拟噪声,如:
i=imread('104_8.tif');
j=imnoise(i,'gaussian',0,0.02);%模拟高斯噪声
② fspecial:用于产生预定义滤波器,如:
h=fspecial('sobel');%sobel水平边缘增强滤波器
h=fspecial('gaussian');%高斯低通滤波器
h=fspecial('laplacian');%拉普拉斯滤波器
h=fspecial('log');%高斯拉普拉斯(LoG)滤波器
h=fspecial('average');%均值滤波器
2、图像的增强
①直方图:imhist函数用于数字图像的直方图显示,如:
i=imread('104_8.tif');
imhist(i);
②直方图均化:histeq函数用于数字图像的直方图均化,如:
i=imread('104_8.tif');
j=histeq(i);
③对比度调整:imadjust函数用于数字图像的对比度调整,如:i=imread('104_8.tif'); j=imadjust(i,[0.3,0.7],[]);
④对数变换:log函数用于数字图像的对数变换,如:
i=imread('104_8.tif');
j=double(i);
k=log(j);
⑤基于卷积的图像滤波函数:filter2函数用于图像滤波,如:i=imread('104_8.tif'); h=[1,2,1;0,0,0;-1,-2,-1];
j=filter2(h,i);
⑥线性滤波:利用二维卷积conv2滤波, 如:
i=imread('104_8.tif');
h=[1,1,1;1,1,1;1,1,1];
h=h/9;
j=conv2(i,h);
⑦中值滤波:medfilt2函数用于图像的中值滤波,如:
i=imread('104_8.tif');
j=medfilt2(i);
⑧锐化
(1)利用Sobel算子锐化图像, 如:
i=imread('104_8.tif');
h=[1,2,1;0,0,0;-1,-2,-1];%Sobel算子
j=filter2(h,i);
(2)利用拉氏算子锐化图像, 如:
i=imread('104_8.tif');
j=double(i);
h=[0,1,0;1,-4,0;0,1,0];%拉氏算子
k=conv2(j,h,'same');
m=j-k;
3、图像边缘检测
①sobel算子 如:
i=imread('104_8.tif');
j = edge(i,'sobel',thresh)
②prewitt算子 如:
i=imread('104_8.tif');
j = edge(i,'prewitt',thresh)
③roberts算子 如:
i=imread('104_8.tif');
j = edge(i,'roberts',thresh)
④log算子 如:
i=imread('104_8.tif');
j = edge(i,'log',thresh)
⑤canny算子 如:
i=imread('104_8.tif');
j = edge(i,'canny',thresh)
⑥Zero-Cross算子 如:
i=imread('104_8.tif');
j = edge(i,'zerocross',thresh)
4、形态学图像处理
①膨胀:是在二值化图像中“加长”或“变粗”的操作,函数imdilate执行膨胀运算,如: a=imread('104_7.tif'); %输入二值图像
b=[0 1 0;1 1 1;0 1 0];
c=imdilate(a,b);
②腐蚀:函数imerode执行腐蚀,如:
a=imread('104_7.tif'); %输入二值图像
b=strel('disk',1);
c=imerode(a,b);
③开运算:先腐蚀后膨胀称为开运算,用imopen来实现,如:
a=imread('104_8.tif');
b=strel('square',2);
c=imopen(a,b);
④闭运算:先膨胀后腐蚀称为闭运算,用imclose来实现,如:
a=imread('104_8.tif');
b=strel('square',2); c=imclose(a,b);
函数
一.函数查看
help elfun %列出初等函数
help specfun和help elmat %列出高级数学函数
mhelp %高级查看,例如mhelp abs
二.常用函数:
1.基本函数:
abs() %绝对值
sqrt %平方根
exp(n) %e的n次方
sin cos tan %三角函数asinacosatan %反三角函数
log() %自然对数
log10() %常数对数
lcm(x,y) %最小公倍数
gcd(x,y) %最大公约数
round() %四舍五入
floor() %取向负方向的整数
ceil() %取向正方向的整数
fix() %取向0方向的整数
find() %找到逻辑值的向量元素下标
inline() %定义函数,如f=inline('2*x')f =Inline function:f(x) = 2*x quad() %可对inline定义的函数进行数值积分
2.数据类型中用到的函数:
(1)字符串:
定义: exp: a=’hello’
转换: abs(a) %abs将字符串转换为ASC码
ans =104 101 108 108 111
setstr(a) %setstr将ASC码转换为字符串
三.多项式中用到的函数
见笔记1:四.多项式
四.符号表达式中用到的函数
(1)基本:
diff(f,x,2) %微分,函数f对x求二阶导。该函数也可作用于符号矩阵。
int(f,'x',1,3) %积分,函数f对x在区间[1,3]上的定积分。
int(f,'x',’a’,’b’) 在区间[a,b]上的定积分。
int(f,'x') 得到积分后的函数,常数项默认为0.
limit(f,x,a) %求函数f在x趋于a时的值
limit(f,x,a,’left’) %左趋于a,类似的,’right’,右趋于a
symsum(s,v,a,b) %自变量v在[a,b]间取值,对通项s的求和,可用于求数列和级数的和 例:syms k
S=symsum(1/(k*(k+1)),k,1,inf)
S =1
taylor(f,x,10) %f对x的泰勒级数展开至10阶
solve(f,x) %求解f的根x。也可以用作solve(‘1+x=sin(x)’),或解方程组:solve(f1,f2,…,fn) dsolve(‘常微分方程式’,’初始条件’)
%求解常微分方程。用Dy表示y’,用D2y表示y’’
例:y=dsolve('D2y=1+Dy','y(0)=1','Dy(0)=0') y =exp(t)-t
(2)符号表达式的运算函数:
symadd(A,B) %完成A+B的符号加法
symsub(A,B) %减法
symmul(A,B) %乘法
symdiv(A,B) %除法
sympow(F,n) %F的n次方运算
numden(F) %从有理形式转化为分子与分母形式,可用于分式化简,
得到结果用向量形式给出:[分子,分母]
numeric(F) %将F以数值形式表示
compose(f(x),g(x)) %复合成f(g(x))
finverse(f,x) %求f(x)的反函数
sym2poly(F) %将多项式系数转化为向量形式
poly2sym(c) %将向量形式的系数转化为符号多项式
(3)符号表达式的化简:
collect(F) %将表达式F中相同幂次的项合并
expand %将表达式展开
factor %将表达式因式分解
simplify %利用代数上的函数规则对表达式化简,可用于通分
simple ※尝试各种办法对符号多项式化简,并显示化简步骤;
可用[r,how]=simple(f)查看结果r和方法how
五.绘图函数:
1.二维绘图 (1)plot(x,y) %以x为横轴,y为纵轴绘制图形,其中x,y均为矩阵。也可plot(x,y1,x,y2,…) plot(x,y,’r + -’)图形修饰,详见笔记3 ,一 (2)fplot(fun,lims) %fun是所要绘制的函数,可以是函数名,M文件名,或可计算字符串
(3)ezplot() lims=[XMIN XMAX YMIN YMAX],限定绘图空间 fun可以是多个函数,采用如下形式:fplot('[sin(x),cos(x)]',[0,1]) %无需数据准备,直接画出图形。默认绘图区域[-2*pi,2*pi],
也可自行定义绘图区域ezplot(f,xmin,xmax)
%绘制极坐标图,theta为角度向量,tho为幅值向量
(4)polar(theta,rho,选项) 2.三维绘图 (1)plot3(x1,y1,z1,x2,y2,z2,…) %类似于plot函数,绘制三维曲线。详见笔记3 ,二 (2)mesh(x,y,z) %画网格线图
(3)surf(x,y,z) %画网格面图
(4)meshgrid(x,y) %格点化,例如:[X,Y]=meshgrid(x,y)
(5)peaks(n) %系统提供快速测试绘图函数,产生高斯分布矩阵。例如: z=peaks(40);mesh(z);
(6)subplot(n,m,k) %视图窗口分成n行m列个,当前视图放在第k个
(7)view(方位角,仰角) %设定观察三维图形的角度
主视图: view(0,0)
左视图: view(-90,0)
俯视图: view(0,90)
(8)sphere(n) %绘制球面,n越大,精度越高
(9)cylinder(R,n) %绘制柱面,R是柱面各切面圆的半径
(10)hidden on/off %打开/关闭观察三维图形的遮挡效果
(11)colorbar %在三维曲面图旁边绘制一个可以只是高度的彩色条
3.其他绘图函数:
loglog(x,y) %使用对数座标绘图
semilogx %横坐标为对数坐标轴,纵坐标为线性坐标轴
semilogy %横坐标为线性坐标轴,纵坐标为对数坐标轴
fill(x,y,’r’) %绘制实心图,可添加颜色
bar %绘制直方图,可以细分为bar,bar3,barh,bar3h
其中bar和bar3用来绘制二维和三维竖直直方图,barh,bar3h用来绘制水平直方图
例bar(x,y,0.5),若y为m行n列矩阵,则可视化结果分为m组,每组n个垂直柱,直方条宽度是0.5
如bar(x,[1,2,3;4,5,6;7,8,9])
hist %绘制直方图
pie %绘制饼图,例如x=[1,2,3,4,5];explode=[0,0,1,0,1]
%(explode中不为0的元素对应的x中元素会从饼图中突出)
pie(x,explode)
area %绘制面积图
quiver %绘制向量场图
stairs %绘制阶梯图
stem %绘制火柴杆图
errorbar %误差限图,errorbar(x,y,l,u,’选项’)表示以x为横坐标,y为纵坐标,l为误
差上限,u为误差下限绘图,还可以设置线型,颜色选项。
以上函数+3,如stem3(),可绘制相应三维图形
六.程序设计函数:
%见笔记4
诱导公式:奇变偶不变,符号看象限。①看是π/2的几倍,奇数倍变名,偶数倍不变。②符号看变之前的。③x永远当锐角。一.正弦函数:形如…
高一数学函数图像知识点总结一、函数图像知识点汇总1.函数图象的变换1平移变换①水平平移:y=fxaa>0的图象,可由y=fx的图象…
高中函数图像性质总结一指数函数yaxa0且a11指数函数的图象和性质2第一象限底数越大图像越高二ylogax1对数函数的图象和性质…
第一节:函数一、知识归纳函数的概念一般地,在某个变化过程中,有两个变量x和y,如果给定一个x值,相应地就确定了一个y值,那么我们称…
高一数学函数图像知识点总结一函数图像知识点汇总1函数图象的变换1平移变换水平平移yfxaa0的图象可由yfx的图象向左或向右平移a…
初中数学函数总结形如y=kx(k为常数,且k不等于0),y就叫做x的正比例函数。图象做法:1。带定系数2。描点3。连线图象是一条直…
大成培训(函数总结归纳)一:会求函数的定义域值域。二:知道函数奇偶性的相关性质。三:会求函数的导数和用导数解决相关问题,会解含x3…
1.概述函,即信函,或称书信。公函,即处理公务所用的书信。公函是党政机关、人民团体、企事业单位间商洽和联系工作时使用的一种文体。公…
公文函格式范文公文函概念函,即信;公函即公务信件。它是高低级和平行机关或不相附属机关之间在商洽和接洽工作、询问和答复问题时所应用的…
回复函格式及范文1、概述答复即复函,属公函的一种。复函是机关、单位为答复来函一方面商洽、询问或联系事宜而使用的一种公文,既可用于上…