strel


形态结构要素
strel代表平坦的形态构造元素,这是形态扩张和侵蚀操作的重要组成部分。
平面结构元素是二维或二维的二进制值邻域,其中在形态计算中包含真实像素,而不包含错误像素。 结构元素的中心像素(称为原点)标识正在处理的图像中的像素。 使用strel函数(如下所述)创建平面结构元素。 可以对二进制图像和灰度图像使用平面结构元素。 下图说明了平面结构元素。
在这里插入图片描述
要创建非平面结构元素,请使用offsetstrel。

Syntax

SE = strel(nhood)
SE = strel('arbitrary',nhood)
SE = strel('diamond',r)
SE = strel('disk',r,n)
SE = strel('octagon',r)
SE = strel('line',len,deg)
SE = strel('rectangle',[m n])
SE = strel('square',w)
SE = strel('cube',w)
SE = strel('cuboid',[m n p])
SE = strel('sphere',r)

Description

SE = strel(nhood)创建具有指定邻域nhood的平面结构元素。
还可以使用语法SE = strel('arbitrary',nhood)创建具有指定邻域的平面结构元素。

SE = strel('diamond',r)创建一个菱形的结构元素,其中r指定从结构元素原点到钻石点的距离。

SE = strel('disk',r,n)创建一个圆盘形结构元素,其中r指定半径,n指定用于
近似圆盘形状的线形结构元素的数量。当结构化元素使用近似值时,使用圆盘近似值的形态运算的运行
速度要快得多。

SE = strel('octagon',r)创建一个八边形结构元素,其中r指定沿水平轴和垂直轴测量的从结构
元素原点到八边形侧面的距离。 r必须是3的非负倍数。

SE = strel('line',len,deg)创建一个线性结构元素,该元素相对于邻域中心对称,
长度为len,角度为deg。

SE = strel('rectangle'[m n])创建一个大小为[m n]的矩形结构元素。

SE = strel('square',w)创建一个宽度为w像素的正方形结构元素。

SE = strel('cube',w)创建一个宽度为w像素的3-D立方结构元素。

SE = strel('cuboid'[m n p])创建大小为[m n p]3-D长方体结构元素。

SE = strel('sphere',r)创建一个半径为r个像素的3-D球形结构元素。
兼容性
以下语法仍然有效,但是offsetstrel是创建这些非平面结构元素形状的首选方法:

SE = strel('arbitrary',nhood,h)

SE = strel('ball',r,h,n)

以下语法仍然有效,但不建议使用:

SE = strel('pair',offset)

SE = strel('periodicline',p,v)

Examples

创建方形结构元素
创建一个11乘11的正方形结构元素。

SE = strel('square', 11)
SE = 
strel is a square shaped structuring element with properties:

      Neighborhood: [11x11 logical]
    Dimensionality: 2

创建线形结构元素
以45度角创建长度为10的线形结构元素。

SE = strel('line', 10, 45)
%View the structuring element.
SE.Neighborhood
SE = 
strel is a line shaped structuring element with properties:

      Neighborhood: [7x7 logical]
    Dimensionality: 2

View the structuring element.
ans = 7x7 logical array

   0   0   0   0   0   0   1
   0   0   0   0   0   1   0
   0   0   0   0   1   0   0
   0   0   0   1   0   0   0
   0   0   1   0   0   0   0
   0   1   0   0   0   0   0
   1   0   0   0   0   0   0

创建磁盘形结构元素
创建一个半径为15的盘状结构元素。

SE3 = strel('disk', 15)
figure
imshow(SE3.Neighborhood)
SE3 = 
strel is a disk shaped structuring element with properties:

      Neighborhood: [29x29 logical]
    Dimensionality: 2

在这里插入图片描述
创建3D球形结构元素

SE = strel('sphere', 15)
figure
isosurface(SE.Neighborhood)
SE = 
strel is a sphere shaped structuring element with properties:

      Neighborhood: [31x31x31 logical]
    Dimensionality: 3

在这里插入图片描述

Algorithms

对于除“任意”形状之外的所有形状,结构元素都是使用称为结构元素分解的一系列技术来构造的。 原理是,通过使用一系列较小的结构元素进行膨胀,可以更快地计算出一些大型结构元素的膨胀。 例如,可以通过首先用1×11结构元素然后通过11×1结构元素进行膨胀来实现11×11正方形结构元素的膨胀。 尽管在实践中实际的性能改进要少一些,但这会导致理论性能提高5.5倍。 用于“圆盘”形状的结构元素分解是一个近似值,所有其他分解都是精确的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值