matlab 图像处理

链接至:http://hi.baidu.com/ilovejoy/blog/item/f8cf81d19969ca289b5027e5.html

originalBW = imread('circles.png');

se = strel('disk',11);

erodedBW = imerode(originalBW,se);

imview(originalBW), imview(erodedBW)

图像处理函数详解——imdilate

功能:对图像实现膨胀操作。

用法:IM2 = imdilate(IM,SE)

IM2 = imdilate(IM,NHOOD)

IM2 = imdilate(IM,SE,PACKOPT)

IM2 = imdilate(...,PADOPT)

IM2 = imdilate(IM,SE) 膨胀灰度二值压缩二值图像IM,返回IM2。参数SE为由strel函数返回的结构元素或者结构元素对象组。

IM2 = imdilate(IM,NHOOD)膨胀图像IM,这里NHOOD是定义结构元素邻域01的矩阵。

IM2 = imdilate(IM,SE,PACKOPT)定义IM是否是一个压缩的二值图像。

IM2 = imdilate(...,PADOPT)指出输出图像的大小。

例子

I = imread('cameraman.tif');

se = strel('ball',5,5);

I2 = imdilate(I,se);

imshow(I), title('Original')

figure, imshow(I2), title('Dilated')

图像处理函数详解——imresize

功能:改变图像的大小。

用法:B = imresize(A,m)

B = imresize(A,m,method)

B = imresize(A,[mrows ncols],method)

B = imresize(...,method,n)

B = imresize(...,method,h)

imrersize函数使用由参数method指定的插值运算来改变图像的大小。method的几种可选值:

'nearest'(默认值)最近邻插值

'bilinear'双线性插值

'bicubic'双三次插值

B = imresize(A,m)表示把图像A放大m倍

B = imresize(...,method,h)中的h可以是任意一个FIR滤波器(h通常由函数ftrans2、fwind1、fwind2、或fsamp2等生成的二维FIR滤波器)。

例子:I = imread('circuit.tif');

J =imresize(I,1.25);

%使用默认的最近邻插值法放大图像1.25倍

imshow(I)

figure, imshow(J)

图像处理函数详解——imnoise

功能:模仿噪声信息,相当于图像的相加运算。

用法:J = imnoise(I,type)

J = imnoise(I,type,parameters)

参数Type对应的噪声类型如下:

'gaussian'高斯白噪声

'localvar'0均值白噪声

'poisson'泊松噪声

'salt & pepper'盐椒噪声

'speckle'乘性噪声

例子:I = imread('eight.tif');

J = imnoise(I,'salt & pepper',0.02);

%密度0.02的盐椒噪声

imshow(I)

figure, imshow(J)

图像处理函数详解——imhist

功能:显示图像的直方图。

输入数据类型可以是无符号8位、16位、有符号16位、单精浮点、字符型、逻辑型等数据。

用法:

         imhist(I,n)   计算和显示图像I的直方图,n为指定的灰度级数目,默认为256。如果I是二值图像,那么n仅有两个值。

    imhist(X,map)   计算和显示索引图像x的直方图,map为调色板。

      [counts,x] = imhist(...)   返回直方图数据向量counts或相应的色彩值向量x。

举例:

         I=imread('rice.tif')

         imshow(I)

         figure,imhist(I)

你可能感兴趣的:(matlab 图像处理)