【matlab】Strel函数--结构元素

###Date:2018.3.28

===========================================================================

Strel函数

主要用来构建形态学运算中的结构元素,使用的语法为strel(shape,parameters)。shape为形状参数,即设置什么样的结构元素;parameters为控制形状参数大小方向的参数。

 

例:   建立一个负向45°,长度为6的结构元素,采用直接输入的方法,太过麻烦,采用strel()函数则能够快速地构建如上所示的结构元素。

 

使用方法:

SE = strel('arbitrary',NHOOD)

SE = strel('arbitrary',NHOOD,HEIGHT)

SE = strel('ball',R,H,N)

SE = strel('diamond',R)

SE = strel('disk',R,N)

SE = strel('line',LEN,DEG)

SE = strel('octagon',R)

SE = strel('pair',OFFSET)

SE = strel('periodicline',P,V)

SE = strel('rectangle',MN)

SE = strel('square',W)

 

常用算子举例:

SE =STREL('arbitrary',NHOOD)   创建一个指定领域的平面结构化元素。NHOOD是一个包含1/0的矩阵;1的位置定义了领域的形态学操作。NHOOD的中心就是它的中心元素,位置在FLOOR((SIZE(NHOOD) + 1)/2)。你也可以忽略参数串'arbitrary'而只使用STREL(NHOOD)

 

SE =STREL('ball',R,H,N)    创建一个空间椭球状的结构元素,其X-Y平面半径为R,高度为HR必须为非负整数,H是一个实数。N必须为一个非负偶数,当N>0时此球形结构元素由一系列空间线段结构元素来近似;当N=0时不需要近似,结构化元素的成员由所有中心距圆点>R的元素组成,相应的高度值可由R/H指定的椭球中提取。如果N未指定,缺省值8,并且。注:使用球体近似的形态学操作N>0的情况要比N=0的情况快许多。

 

se_disk =strel('disk',5,4)  创建一个指定半径5的平面圆盘形的结构元素。这里R必须是非负整数. N须是0, 4, 6, 8.N大于0,圆盘形结构元素由一组N(N+2)个周期线结构元素来近似。当N等于0,不使用近似,即结构元素的所有像素是由到中心像素距离小于等于R的像素组成。N可以被忽略,此时缺省值是4。注:形态学操作在N>0情况下要快于N=0的情形。

 

se_diamond =strel('diamond',4)创建一个菱形的结构元素4是从结构化元素原点到其点的距离,必须为非负整数。

se_octagon=strel('octagon',3)创建一个八边形的结构元素,参数为3的倍数


se=strel('rectangle',[25])创建一个2*5的矩形结构元素

 

se1 =strel('square',11)创建一个长度为11*11的方形结构元素

 

se_line =strel('line',10,45) 为构造的线性结构元素,6为长度(size),45为角度


参考:

https://blog.csdn.net/qq_26093511/article/details/53761624

https://blog.csdn.net/qwerasdf_1_2/article/details/54376657

posted @ 2018-03-28 21:18  SoaringLee_fighting  阅读(7263)  评论(0编辑  收藏  举报