1、imbothat----------------进行bottom-hat滤波
函数I=imbothat(IM,se) IM为二值图像,se为strel函数生成的结构元素,
代码:
I=imread('lena.jpg');
se=strel('disk',5);
J=imsubtract(imadd(I,imtophat(I,se),imbothat(I,se));
imshow(J0;
2、imclearborder------去除图像边界 就是二值图像的边界
I=imclearborder(IM,conn) ---------------------------conn代表及联通
imopen-----------对图像进行开运算
先腐蚀后膨胀
3、imclose------------------------------------------对图像进行形态学闭操作
就是先进行膨胀后进行服饰
I=imread('lean.jpg'); se=strel('disk',5); J=imclode(I,se); figure; imshow(J);
就是符合结构元素的像素进行添加对应的像素值
indilate(I,se) 按照相应 的结构元素对图像进行操作
I=imread('lena.jpg'); se=strel('disk',4); bw=imdilate(I,se); imshow(j);
imerode(I,se)
I=imread('lena.jpg'); se=strel('disk',4); bw=imerode(I,se); imshow(j);6\imextendedmax(I,H)-----------------------------------对图像进行极大值变换
bw=imextendmax(I,H) 对图像I进行扩展极大值变换,H为极大值变换的局部极大值,
bw=imextendmax(I,H,conn) ------按照conn联通域进行极大值变换
7、imfill---------------------------对图像区域和目标进行填充
bw=imfill(Bw,location ,'holes')
I=imread('coin.png'); bw=im2bw(I); bw1=imfill(bw,‘holes’); imshow(bw1);
当图像矩阵中的所有极大值减去指定h值,当极大值小于h,去除改极大值
a=zeros(10,10); a(2:4,2:4)=3; a(6:8,6:8)=8; a(7:9,2:4)=5; b=imhmax(a,4);
9、imreconstruct---------------进行形体学重建
im=imreconstrut(I,mask) 按照按摩对图像进行重建
10、watershed-----------------------------分水岭变换
l=watershed(a) 对矩阵进行分水岭标示,生成标示矩阵L,L为大于或者等于0的整数,0表示不属于任何一个分水岭区域,1表示属于第一个分水岭区域,2表示属于的二个分水岭区域,
11、bwarea------------------------------计算二值图像中目标的面积
计算的是全部和
bwarea(bw)
12、bwareaopen----------------移除小目标
对于像素个数小于p的目标进行移除
bwareaopen(bw.p)
13、bwdist-----------------计算二值图像距离变换
bwdist(bw,'chessboard','cityblock','euclidean',) 默认欧式距离、
14、belabel--------------标注二值图像中的目标物体
[L num ]=bwlabel(bw,n) 返回表示矩阵L(123455...)
14、bwperim--------------------------------------------确定图像的边界