图像处理函数大全.docx
《图像处理函数大全.docx》由会员分享,可在线阅读,更多相关《图像处理函数大全.docx(20页珍藏版)》请在冰豆网上搜索。
图像处理函数大全
图像显示
colorbar显示彩条
getimage由坐标轴得到图像数据
ice(DIPUM)交互彩色编辑
image创建和显示图像对象
imagesc缩放数据并显示为图像
immovie由多帧图像制作电影
imshow显示图像
imview在ImageViewer中显示图像
montage将多个图像帧显示为矩阵蒙太奇
movie播放录制的电影帧
rgbcube显示一个彩色RGB立方体
subimage在单个图形中显示多幅图像
truesize调整图像的显示尺寸
warp将图像显示为纹理映射的表面
图像文件输入/输出
Dicominfo从一条DICOM消息中读取元数据
Dicomread读一幅DICOM图像
Dicomwrite写一幅DICOM图像
Dicom-dict.txt包含DICOM数据字典的文本文件
Dicomuid产生DICOM唯一的识别器
Imfinfo返回关于图像的文件的信息
Imread读图像文件
Imwrite写图像文件
图像算术
Imabsdiff计算两幅图像的绝对差
Imadd两幅图像相加或把常数加到图像上
Imcomplement图像求补
Imdivide两幅图像相除,或用常数除图像
Imlincomb计算图像的线性组合
Immultiply两幅图像相乘或用常数乘图像
Imsubtract两幅图像相减,或从图像中减去常数
几何变换
Checkerboard创建棋盘格图像
Findbounds求几何变换的输出范围
Fliptform颠倒TFORM结构的输入/输出
Imcrop修剪图像
Imresize调整图像大小
Imrotate旋转图像
Imtransform对图像应用几何变换
Intline整数坐标线绘制算法
Makersampler创建重取样器结构
Maketform创建几何变换结构(TFORM)
Pixeldup(DIPUM)在两个方向上复制图像的像素
Tformarray对N-D数组应用几何变换
Tformfwd应用正向几何变换
Tforminv应用反向几何变换
Vstformfwd(DIPUM)可视化正向几何变换
图像匹配
Cpstruct2pairs将CPSTRUCT转换为有效的控制点对
Cp2tform由控制点对推断几何变换
Cpcorr使用互相关校准控制点位置
Cpselect控制点选择工具
Normxcorr2归一化二维互相关
像素值及统计
Corr2计算二维相关系数
Covmatrix(DIPUM)计算向量族的协方差矩阵
Imcontour创建图像数据的轮廓线
Imhist显示图像数据的直方图
Impixel确定像素的彩色点
Improfile计算沿着线段的像素值横截面
Mean2计算矩阵元素的均值
Pixval显示关于像素的信息
Regionprops测量图像区域的属性
Statmoments(DIPUM)计算一幅图像直方图的统计中心距
Std2计算矩阵元素的标准偏差
图像分析(包括分割、描述和识别)
Bayesgauss(DIPUM)高斯模式的贝叶斯分类器
Bound2eight(DIPUM)将4连接边界转换为8连接边界
Bound2four(DIPUM)将8连接边界转换为4连接边界
Bwboundaries追踪区域边界
Bwtraceboundary追踪单个边界
Bound2im(DIPUM)将边界转换为图像
Boundaries(DIPUM)追踪区域边界
Bsubsamp(DIPUM)对边界二次取样
Colorgrad(DIPUM)计算一幅RGB图像的向量梯度
Colorseq(DIPUM)分割一幅彩色图像
Connectpoly(DIPUM)连接多边形的顶点
Diameter(DIPUM)测量图像区域的直径
Edge(DIPUM)在一幅亮度图像中寻找边缘
Fchcode(DIPUM)计算边界的freeman链码
Frdescp(DIPUM)计算傅里叶描绘子
Graythresh使用Ostu方法计算图像的全局阈值
Hough(DIPUM)Hough变换
Houghlines(DIPUM)基于Hough变换提取线段
Houghpeaks(DIPUM)在Hough变换中检测峰值
Houghpixels(DIPUM)计算属于Hough变换bin的图像像素
Ifrdescp(DIPUM)计算逆傅里叶描绘子
Imstack2vectors(DIPUM)从图像堆栈提取向量
Invmoments(DIPUM)计算图像不变距
Mahalanobis(DIPUM)计算Mahalanobis距离
Minperpoly(DIPUM)计算最小周长多边形
Polyangles(DIPUM)计算多边形内角
Princomp(DIPUM)得到主分量向量和相关量
Qtdecomp执行四叉树分解
Qtgetblk得到四叉树分解中的块值
Qtsetblk在四叉树中设置块值
Randvertex(DIPUM)随机置换多边形顶点
Regiongrow(DIPUM)由区域生长来执行分割
Signature(DIPUM)计算边界的标记
Specxture(DIPUM)计算图像的谱纹理
Splitmerge(DIPUM)使用分离-合并算法分割图像
Statxture(DIPUM)计算图像中纹理的统计度量
Strsimilarity(DIPUM)两个串间的相似性度量
X2majoraxis(DIPUM)以区域的主轴排列坐标x
图像压缩
Compare(DIPUM)计算和显示两个矩阵间的误差
Entropy(DIPUM)计算矩阵的熵的一阶估计
Huff2mat(DIPUM)解码霍夫曼编码矩阵
Huffman(DIPUM)为符号源建立一个变长霍夫曼码
Im2jpeg(DIPUM)使用JPEG近似压缩一幅图像
Im2jpeg2k(DIPUM)使用JPEG2000近似压缩一幅图像
Imratio(DIPUM)计算两幅图像或变量中的比特率
Jpeg2im(DIPUM)解码IM2JPEG压缩的图像
Jpeg2k2im(DIPUM)解码IM2JPEG2K压缩的图像
Lpc2mat(DIPUM)解压缩一维有损预测编码矩阵
Mat2huff(DIPUM)霍夫曼编码矩阵
Mat2lpc(DIPUM)使用一维有损预测编码矩阵
Quantize(DIPUM)量化UINT8类矩阵的元素
图像增强
Adapthisteq自适应直方图量化
Decorrstretch对多通道图像应用去相关拉伸
Gscale(DIPUM)按比例调整输入图像的亮度
Histeq使用直方图均衡化来增强对比度
Intrans(DIPUM)执行亮度变换
Imadjust调整图像亮度值或彩色映射
Stretchlim寻找对比度拉伸图像的限制
图像噪声
Imnoise给一幅图像添加噪声
Imnoise2(DIPUM)使用指定的PDF生成一个随机数数组
Imnoise3(DIPUM)生成周期噪声
线性和非线性空间滤波
Adpmedian(DIPUM)执行自适应中值滤波
Convmtx2计算二维卷积矩阵
Dftcorr(DIPUM)执行频率域相关
Dftfilt(DIPUM)执行频率域滤波
Fspecial创建预定义滤波器
Medfilt2执行二维中值滤波
Imfilter滤波二维和N维图像
Ordfilter2执行二维顺序统计滤波
Spfilt(DIPUM)执行线性和非线性空间滤波
Wiener2执行二维去噪滤波
线性二维滤波器设计
Freqspace确定二维频率响应间隔
Freqz2计算二维频率响应
Fsamp2使用频率取样设计二维FIR滤波器
Ftrans2使用频率变换设计二维FIR滤波器
Fwind1使用一维窗法设计二维滤波器
Fwind2使用二维窗法设计二维滤波器
Hpfilter(DIPUM)计算频率域高通滤波器
Lpfilter(DIPUM)计算频率域低通滤波器
图像去模糊(复原)
Deconvblind使用盲去卷积去模糊图像
Deconvlucy使用Lucy-Richardson方法去模糊
Deconvreg使用规则化滤波器去模糊
Deconvwnr使用维纳滤波器去模糊
Edgetaper使用点扩散函数锐化边缘
Otf2psf光传递函数到点扩散函数
Pst2otf点扩散函数到光传递函数
图像变换
Dct2二维离散余弦变换
Dctmtx离散余弦变换矩阵
Fan2para将扇形束投影变换为并行射束
Fanbeam计算扇形射束变换
Fft2二维快速傅里叶变换
FftnN维快速傅里叶变换
Fftshift颠倒FFT输出的象限
Idct2二维逆离散余弦变换
Ifanbeam计算扇形射束逆变换
Ifft2二维快速傅里叶逆变换
IfftnN维快速傅里叶逆变换
Iradon计算逆Radon变换
Para2fan将并行射束投影变换为扇形射束
Phantom生成头部仿真模型的图像
Radon计算Radon变换
小波
Wave2gray(DIPUM)显示小波分解系数
Waveback(DIPUM)执行多灰度级二维快速小波逆变换
Wavecopy(DIPUM)存取小波分解结构的系数
Wavecut(DIPUM)在小波分解结构中置零系数
Wavefast(DIPUM)执行多灰度级二维快速小波变换
Wavefilter(DIPUM)构造小波分解和重构滤波器
Wavepaste(DIPUM)在小波分解结构中放置系数
Wavework(DIPUM)编辑小波分解结构
Wavezero(DIPUM)将小波细节系数设置为零
领域和块处理
Bestblk为块处理选择块大小
Blkproc为图像实现不同的块处理
Col2im将矩阵列重排为块
Colfilt按列邻域操作
Im2col将图像块重排为列
Nlfilter执行一般的滑动邻域操作
形态学操作(亮度和二值图像)
Conndef默认连通性
Imbothat执行底帽滤波
Imclearborder抑制与图像边框相连的亮结构
Imclose关闭图像
Imdilate膨胀图像
Imerode腐蚀图像
Imextendedmax最大扩展变换
Imextendedmin最小扩展变换
Imfill填充图像区域和孔洞
ImhmaxH最大变换
ImhminH最小变换
Imimposemin强制最小
Imopen打开图像
Imreconstruct形态学重构
Imregionalmax局部最大区域
Imregionalmin局部最小区域
Imtophat执行顶帽滤波
Watershed分水岭变换
形态学操作(二值图像)
Applylut使用查表法执行邻域操作
Bwarea计算二值图像中的对象面积
Bwareaopen打开二值区域(删除小对象)
Bwdist计算二值图像的距离变换
Bweuler计算二值图像的欧拉数
Bwhitmiss二值击不中操作
Bwlabel在二维图像中标记连接分量
Bwlabeln在N维二值图像中标记连接分量
Bwmorph对二值图像执行形态学操作
Bwpack打包二值图像
Bwperim确定二值图像中的对象的周长
Bwselect选择二值图像中的对象
Bwulterode最终腐蚀
Bwunpack解包二值图像
Endpoints(DIPUM)计算二值图像的端点
Makelut构建applylut使用的查找表
结构元素(STREL)的创建和操作
Getheight得到strel的高度
Getneighbors得到strel邻域的偏移位置和高度
Getnhood得到strel邻域
Getsequence得到分解的strel序列
Isflat对平坦的strel返回值
Reflect以其中心反射strel
Strel创建形态学结构元素
Translate变换strel
基于区域的处理
Histroi(DIPUM)计算图像中的ROI的直方图
Poly2mask将ROI多边形转换为掩膜
Roicolor基于颜色选择ROI
Roifill在任意区域内平稳地内插
Roifilt2对ROI进行滤波
Roipoly选择多边形ROI
彩色映射处理
Brighten加亮或加暗彩色映射
Cmpermute在彩色映射中重排颜色
Cmunique寻找唯一的彩色映射颜色和相应的图像
Colormap设置或得到彩色查找表
Imapprox以很少的颜色近似被索引的图像
Rgbplot绘制RGB彩色映射分量
彩色空间转换
Applyform应用独立于设备的彩色空间变换
Hsv2rgb将HSV值转换为RGB彩色空间
Iccread读ICC彩色配置文件
Lab2double将L*a*b*彩色值转换为double类
Lab2uint16将L*a*b*彩色值转换为uint16类
Lab2uint8将L*a*b*彩色值转换为uint8类
Makecform创建独立于设备的彩色空间变换结构
Ntsc2rgb将NTSC值转换为RGB彩色空间
Rgb2hsv将RGB值转换为HSV彩色空间
Rgb2ntsc将RGB值转换为NTSC彩色空间
Rgb2ycbcr将RGB值转换为YCBCR彩色空间
Ycbcr2rgb将YCBCR值转换为RGB彩色空间
Rgb2hsi(DIPUM)将RGB值转换为HSI彩色空间
Hsi2rgb(DIPUM)将HSI值转换为RGB彩色空间
Whitepoint返回标准照明的XYZ值
Xyz2double将XYZ彩色值转换为double类
Xyz2uint16将XYZ彩色值转换为uint16类
数组操作
Circshift循环地移位数组
Dftuv(DIPUM)计算网格数组
Padarray填充数组
Paddedsize(DIPUM)计算用于FFT的最小填充尺寸
图像类型和类型转换
Changeclass改变一幅图像的类
Dither使用抖动转换图像
Gray2ind将亮度图像转换为索引图像
Grayslice通过阈值处理从亮度图像创建索引图像
Im2bw通过阈值处理将图像转换为二值图像
Im2double将图像数组转换为双精度
Im2java将图像转换为Java图像
Im2java2d将图像转换为Java缓存的图像对象
Im2uint8将图像数组转换为8比特无符号整数
Im2uint16将图像数组转换为16比特无符号整数
Ind2gray将索引图像转换为亮度图像
Ind2rgb将索引图像转换为RGB图像
Label2rgb将标记矩阵转换为RGB图像
Mat2gray将矩阵转换为亮度图像
Rgb2gray将RGB图像或彩色映射转换为灰度图像
Rgb2ind将RGB图像转换为索引图像
其他函数
Conwaylaws(DIPUM)对单个像素应用Conway的遗传定律
Manualhist(DIPUM)交互地生成2模式直方图
Twomodegauss(DIPUM)生成一个2模式高斯函数
Uintlut基于查找表计算新数组值
工具箱参数
Iptgetpref获得图像处理工具箱参数的值
Iptsetpref设置图像处理工具箱参数的值
Otus算法进行二值化(可省略为level=graythresh(K);I2=im2bw(I1,level);)
G=imread('1.jpg');
I=rgb2gray(G);
[m,n]=size(I);
Hist=zeros(255);%直方图
dHist=zeros(255);
variance=zeros(255);%方差
PXD=0;
fori=1:
m
forj=1:
n
Hist(uint8(I(i,j)))=Hist(uint8(I(i,j)))+1;
end
end
fori=1:
255
dHist(i)=Hist(i)/(m*n);
end
forPXD=1:
255
w0=0;
w1=0;
g0=0;
g1=0;
fori=1:
PXD
g0=g0+i*dHist(i);
w0=w0+dHist(i);
end
fori=PXD+1:
255
g1=g1+i*dHist(i);
w1=w1+dHist(i);
end
variance(PXD)=w0*w1*(g0-g1)*(g0-g1);
end
PXD=1;
fori=1:
255
ifvariance(PXD)PXD=i;
end
end
fori=1:
m
forj=1:
n
ifI(i,j)>PXD
I(i,j)=255;
else
I(i,j)=0;
end
end
end
imagBW=I;
matlab图像处理形态学操作相关函数及用法实例
下面是算法实现的程序代码:
I1=imread('tire.tif');%读灰度图tire.tif
I2=imnoise(I1,'salt&pepper');%在图像上加入椒盐噪声
figure,imshow(I2)%显示加椒盐噪声后的灰度图像
I3=im2bw(I1);%把加椒盐噪声后的灰度图像二值化
figure,imshow(I3)%显示二值化后的图像
I4=bwmorph(I3,'open');%对二值噪声图像进行二值形态学开运算
figure,imshow(I4)%显示开运算后的图像
I5=bwmorph(I4,'close');%对上述图像进行形态学闭运算
figure,imshow(I5)%显示最终处理后的图像
1、dilate函数
该函数能够实现二值图像的膨胀操作,有以下形式:
BW2=dilate(BW1,SE)
BW2=dilate(BW1,SE,…,n)
其中:
BW2=dilate(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行膨胀操作。
输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。
BW2=dilate(BW1,SE,…,n)表示执行膨胀操作n次。
2、erode函数
该函数能够实现二值图像的腐蚀操作,有以下形式:
BW2=erode(BW1,SE)
BW2=erode(BW1,SE,…,n)
其中:
BW2=erode(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行腐蚀操作。
输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。
BW2=erode(BW1,SE,…,n)表示执行腐蚀操作n次。
3、bwmorph函数
该函数的功能是能实现二值图像形态学运算。
它的格式如下:
①BW2=bwmorph(BW1,operation)
②BW2=bwmorph(BW1,operation,n)
其中:
对于格式①,bwmorph函数可对二值图像BW1采用指定的形态学运算;对于格式②,bwmorph函数可对二值图像BW1采用指定的形态学运算n次。
operation为下列字符串之一:
‘clean’:
除去孤立的像素(被0包围的1)
‘close’:
计算二值闭合
‘dilate’:
用结构元素计算图像膨胀
‘erode’:
用结构元素计算图像侵蚀
4、imclose函数
该函数功能是对灰度图像执行形态学闭运算,即使用同样的结构元素先对图像进行膨胀操作后进行腐蚀操作。
调用格式为:
IM2=imclose(IM,SE)
IM2=imclose(IM,NHOOD)
5、imopen函数
该函数功能是对灰度图像执行形态学开运算,即使用同样的结构元素先对图像进行腐蚀操作后进行膨胀操作。
调用格式为:
IM2=imopen(IM,SE)
IM2=imopen(IM,NHOOD)
3用MATLAB编程实现图像去噪
3.1二值形态学消除图像噪声
用二值形态学方法对图像中的噪声进行滤除的基本思想[4]是:
使用具有一定形态的结构元素去度量和提取图像中的对应形状,以达到消除图像噪声的目的。
下面是二值形态学消除图像噪声的一个实例。
首先将tire.tif图像加入椒盐噪声,这种噪声前面已经介绍过,它在亮的图像区域内是暗点,而在暗的图像区域内是亮点,再对有噪声图像进行二值化操作,再对有噪声图像进行开启操作,由于这里的结构元素矩阵比噪声的尺寸要大,因而开启的结果是将背景上的噪声点去除了,最后对前一步得到的图像进行闭合操作,将轮胎上的噪声点去掉了。
下面是算法实现的程序代码:
I1=imread('tire.tif');%读灰度图tire.tif
I2=imnoise(I1,'salt&pepper');%在图像上加入椒盐噪声
figure,imshow(I2)%显示加椒盐噪声后的灰度图像
I3=im2bw(I1);%把加椒盐噪声后的灰度图像二值化
figure,imshow(I3)%显示二值化后的图像
I4=bwmorph(I3,'open');%对二值噪声图像进