matlab图像处理工具箱大全--参考(共9页).docx
精选优质文档-倾情为你奉上表1 图像显示函数名功能说明函数名功能说明colorbar颜色条显示montage按矩形剪辑方式显示多帧图像getimage从坐标系中获取图像数据immovie从多帧索引图像中制作电影image建立显示图像movie播放电影subimage在同一图像窗口显示多个图像trueszie调整图像显示大小imagesc调整数据并显示图像warp显示图像为纹理映射表面imshow图像显示zoom二维图形放大或缩小表2 图像文件输入/输出函数名功能说明函数名功能说明imread图像文件读入load将以mat为扩展名的图像文件调入到内存imwrite图像写出save将内存变量中图像保存到mat文件中dicomread读取DICOM图像dicomwrite输出DICOM图像iminfo查看图形信息 表3 图像像素值及其统计函数名功能说明函数名功能说明impixel返回选定图像像素颜色值imcontour画图像数据轮廓(等高线,等值线)improfile图像中沿一个路径的数据值计算imhist求图像数据直方图mean2求均值corr2求相关系数std2求标准差 表4 图像分析函数名功能说明函数名功能说明edge灰度图像边缘检测qtgetblk获得四叉树分解块值qtecomp执行四叉树分解qtsetblk设置四叉树分解块值表5 图像增强及平滑函数名功能说明函数名功能说明imadjust对比度调整medfilt2二维中值滤波器histeq直方图均衡ordfilt2顺序统计滤波器imnoise给图像增加噪声wiener2二维自适应除噪滤波器表6 图像线性滤波及二维线性滤波器设计函数名功能说明函数名功能说明conv2二维卷积freqz2计算二维频率响应convmtx2计算二维卷积矩阵fsamp2用频率抽样设计二维FIR滤波器convn多维卷积ftrans用频率抽样转换二维FIRlbqfilter2二维线性数字滤波器fwind1用一维窗口方法设计二维FIR滤波器fspecial产生预定义滤波器fwind2用二维窗口方法设计二维FIR滤波器frespace确定二维频率响应间隔 表7 图像变换函数名功能说明函数名功能说明fft计算一维快速Fourier变换dct计算离散余弦变换ifft计算一维FFT的逆变换idct计算离散反余弦变换fft2计算二维FFTdct2计算2D离散余弦变换ifft2计算二维逆FFTidct2计算2D反离散余弦变换fftn计算多维FFTdctmtx计算TCT矩阵ifftn计算多维逆FFTradon计算Radon变换fftshift直流分量移到频谱中心 表8 图像领域及操作函数名功能说明函数名功能说明bestblk选择块处理的块大小colfilt使用列方向函数进行领域运算blkproc对图像实行不同的块处理im2col重排图像块为矩阵列col2im重排矩阵列成图像块nlfilter进行一般领域计算表9 二值图像操作函数名功能说明函数名功能说明applylut使用查找表进行领域操作bwperim确定二值图像中的目标边界bwarea计算二值图像中的目标区域bwselect选择二值图像中的目标bweuler计算二值图像中的欧拉数dilate对二值图像进行膨胀计算bwfill二值图像背景区域填充erode对二值图像进行寝蚀运算bwlabel标识二值图像中的连接成分makelut构造查找表(applylut)使用bwmorph二值图像形态运算 表10 基于区域的图像处理函数名功能说明函数名功能说明roicolor根据颜色选择要处理的区域roifilt2对要处理区域滤波roifill在任意区域内平滑差值roipoly选择要处理的多边形区域表11 图像几何运算函数名功能说明函数名功能说明imcrop图像剪裁imrotate图像旋转imresize图像大小调整interp2二维数据差值表12 图像颜色图操作函数名功能说明函数名功能说明brighten颜色图像变亮或变暗colormap设置获取图cmpermute重新排列颜色图中的颜色imapprox由颜色较少的图像近似索引图像cmunique寻找唯一的颜色图及相应的图像rgbplot绘制RGB颜色图表13 颜色控件转换函数名功能说明函数名功能说明hsv2rgb将HSV颜色转化为RGB颜色值mtsc2rgb将NTSC值转换为RGB颜色空间值rgb2hsv将RGB颜色值转换为HSV颜色值rgb2ntsc将RGB值转换为NTSC颜色空间值imview(Y, newmap)图像处理函数详解imadjust功能:调节灰度图像的亮度或彩色图像的颜色矩阵。用法: J = imadjust(I,low_in; high_in,low_out; high_out,gamma) 将图像I中的亮度值映射到J中的新值,即将low_in至hige_in之间的值映射到low_out至high_out之间的值。low_in以下与 high_in以上的值被剪切掉了,也就是说,low_in以下的值映射到low_out,high_in以上的值映射到high_out。它们都可以使 用空的矩阵,默认值是0 1。 newmap = imadjust(map,low_in high_in,low_out high_out,gamma) 调整索引色图像的调色板map。 RGB2 = imadjust(RGB1,low_in high_in,low_out high_out,gamma) 对RGB图像1的红、绿、蓝调色板分别进行调整。随着颜色矩阵的调整,每一个调色板都有唯一的映射值。 参数gamma指定了曲线的形状,该曲线用来映射I的亮度值。如果gamma小于1,映射被加权到更高的输出值。如果gamma大于1,映射被加权到更低的输出值。如果省略了函数的参量,则gamma默认为1(线性映射)。举例: 调整灰度图像:K = imadjust(I,0.3 0.7,); figure, imshow(K) 调整RGB图像:RGB1 = imread('football.jpg'); RGB2 = imadjust(RGB1,.2 .3 0; .6 .7 1,); imshow(RGB1), figure, imshow(RGB2)图像处理函数详解imadd功能:实现图像相加运算。用法:Z = imadd(X,Y)例子:I = imread('rice.png');J = imread('cameraman.tif');K = imadd(I,J,'uint16');%转换数据类型,然后将图像相加imshow(K,)图像处理函数详解im2uint8功能:将图像转换为8位无符号整型。也可将输出值限定在0 255内。用法:I2 = im2uint8(I) RGB2 = im2uint8(RGB) I = im2uint8(BW) X2 = im2uint8(X,'indexed')举例:I = reshape(uint8(linspace(0,255,255),5 5) I2 = im2uint8(I)图像处理函数详解im2bw功能:通过设定亮度将阈值灰度、真彩、索引图像转换为二值图像。用法:BW = im2bw(I,level)BW = im2bw(X,map,level)BW = im2bw(RGB,level)分别将灰度图像、索引图像、真彩色图像转换为二值图像。Level是归一化的阈值,值域为0,1。Level可以由函数graythresh(I)来计算。例子:load treesBW = im2bw(X,map,0.4);imview(X,map),imview(BW)图像处理函数详解histeq功能:直方图均衡化。用法: J = histeq(I,hgram) 将原始图像I的直方图变成用户指定的向量hgram。hgram中的各元素的值域为0,1。 J = histeq(I,n) 指定直方图均衡后的灰度级数n,默认值为64。 J,T = histeq(I,.) 返回从能将图像I的灰度直方图变换成图像J的直方图变换T。 newmap = histeq(X,map,hgram) newmap = histeq(X,map) newmap,T = histeq(X,.) 这三个是针对索引图像调色板的直方图均衡化,用法和灰度图像的一样。举例: I = imread('tire.tif'); J = histeq(I); imshow(I) figure, imshow(J)图像处理函数详解dither功能:可以把真彩色图像装换成索引图像或者把灰度图像转换为二值图像。用法:X = dither(RGB,map)BW = dither(I)X = dither(RGB,map,Qm,Qe)X = dither(RGB,map)表示把真彩色图像RGB按指定的色图map抖动成索引图像X,但map不能超过65536种颜色。BW = dither(I)表示把灰度图像I抖动成二值图像BWX = dither(RGB,map,Qm,Qe) Qm表示沿每个颜色轴反转颜色图的量化的位数,Qe表示颜色空间计算误差的量化位数。如果QeQm,则不进行抖动操作。默认值Qe=5,Qm=8例子:I = imread('cameraman.tif');BW = dither(I);imview(BW)图像处理函数详解conv2功能:是二维卷积运算函数(与convmtx2相似)。如果a和b是两个离散变量n1和n2的函数,则关于a和b的二维卷积运算数学公式如下:用法:C = conv2(A,B)C = conv2(hcol,hrow,A)C = conv2(.,'shape')C = conv2(A,B)计算数组A和B的卷积。如果一个数组描述了一个二维FIR滤波器,则另一个数组被二维滤波。当A的大小为ma,na,B的大小为mb,nb时,C的大小为ma+mb-1,mb+nb-1。shape见下表参数值含义full默认值,返回全部二维卷积值。same返回与A大小相同卷积值的中间部分valid当all(size(A)>=size(B),C的大小为ma+mb-1,mb+nb-1;否则,C返回。在n维卷积运算中,C的大小为max(size(A)- size(B)+1,0) 例子:s = 1 2 1; 0 0 0; -1 -2 -1;A = zeros(10);A(3:7,3:7) = ones(5);H = conv2(A,s);mesh(H)图像处理函数详解colfilt功能:以列方法进行邻域处理,也可执行常规非线性滤波(自己理解的)。用法:B = colfilt(A,m n,block_type,fun)该函数生成了一幅图像,在中,每一列对应于其中心位于图像内某个位置的邻域所包围 的像素。然后将函数应用于该矩阵中。m n表示大小为m行n列的邻域。block_type表示了一个字符串,包括'distinct','sliding'两种,其中'sliding'是在 输入图像中逐个像素地滑动该m乘n的区域。fun表示引用了一个函数进行处理,函数返回值的大小必须和原图像大小相同。举例:I = imread('tire.tif'); imshow(I) I2 = uint8(colfilt(I,5 5,'sliding',mean); figure, imshow(I2)图像处理函数详解bwperim功能:查找二值图像的边缘。用法:BW2 = bwperim(BW1)BW2 = bwperim(BW1,conn)BW2 = bwperim(BW1,conn)表示从输入图像BW1中返回只包括对象边缘像素点的图像。conn的定义值如下:维数 参数值 说明 对二维 4 4邻域 8 8邻域 对三维 6 6邻域 18 18邻域 26 26邻域 例子:BW1 = imread('circbw.tif');BW2 = bwperim(BW1,8);imshow(BW1)figure, imshow(BW2)图像处理函数详解bwlabel功能:对连通对象进行标注,bwlabel主要对二维二值图像中各个分离部分进行标注(多维用bwlabeln,用法类似)。用法:L = bwlabel(BW,n)L,num = bwlabel(BW,n)L = bwlabel(BW,n)表示返回和BW相同大小的数组L。L中包含了连通对象的标注。参数n为4或8,分别对应4邻域和8邻域,默认值为8。L,num = bwlabel(BW,n)返回连通数num图像处理函数详解bwareaopen功能:用于从对象中移除小对象。用法:BW2 = bwareaopen(BW,P)BW2 = bwareaopen(BW,P,CONN)BW2 = bwareaopen(BW,P,CONN)从二值图像中移除所有小于P的连通对象。CONN对应邻域方法,默认为8。例子:originalBW = imread('text.png');imview(originalBW)bwAreaOpenBW = bwareaopen(originalBW,50);imview(bwAreaOpenBW)imadjust在数字图像处理中用于进行图像的灰度变换(调节灰度图像的亮度或彩色图像的颜色矩阵)。 J = imadjust(I)将灰度图像 I 中的亮度值映射到 J 中的新值并使 1% 的数据是在低高强度和饱和,这增加了输出图像 J 的对比度值。此用法相当于 imadjust(I,stretchlim(I)J = imadjust(I,low_in; high_in,low_out; high_out)将图像I中的亮度值映射到J中的新值,即将low_in至high_in之间的值映射到low_out至high_out之间的值。low_in 以下与 high_in 以上的值被剪切掉了,也就是说,low_in 以下的值映射到 low_out,high_in 以上的值映射到high_out。它们都可以使用空的矩阵,默认值是0 1。J = imadjust(I,low_in; high_in,low_out; high_out,gamma)将图像 I 中的亮度值映射到 J 中的新值,其中 gamma指定描述值I和值J关系的曲线形状。如果gamma小于1,此映射偏重更高数值(明亮)输出,如果gamma大于1,此映射偏重更低数值(灰暗)输出,如果省略此参数,默认为(线性映射)。 newmap = imadjust(map,low_in; high_in,low_out; high_out,gamma)调整索引色图像的调色板map。如果low_in, high_in, low_out, high_out 和 gamma 都是标量,那么对 r,g,b 分量同时都做此映射。对于每个颜色分量都有唯一的映射,当 low_in 和 high_in 同时为1*3向量或者 low_out 和 high_out 同时为1*3向量或者 gamma 为1*3向量时。调整后的颜色矩阵 newmap 和 map 有相同的大小。RGB2 = imadjust(RGB1,.)对 RGB 图像 RGB1 的红、绿、蓝调色板分别进行调整。随着颜色矩阵的调整,每一个调色板都有唯一的映射值。专心-专注-专业