bwperim
找出二值图像中对象的边界
说明
示例
找出二值图像中对象的边界
将二值图像读入工作区。
BW = imread('circles.png');
计算图像中对象的周长。
BW2 = bwperim(BW,8);
并排显示原始图像和周长。
imshowpair(BW,BW2,'montage')
找出二值图像中的边界像素
此示例说明如何使用 bwperim
函数在二值图像中查找边界像素。
将二值图像读入工作区。
BW1 = imread('circbw.tif');
找出图像中对象的边界。
BW2 = bwperim(BW1);
并排显示原始图像和显示边界的图像。
montage({BW1,BW2},'BackgroundColor','blue','BorderSize',5)
输入参数
BW
— 输入二值图像
数值数组 | 逻辑数组
输入二值图像,指定为任意维度的数值或逻辑数组。对于数值输入,任何非零像素都被视为 1
(true
)。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
conn
— 像素连通性
4
| 8
| 6
| 18
| 26
| 由 0
和 1
组成的 3×3×...×3 矩阵
像素连通性,指定为下表中的值之一。对于二维图像,默认连通性是 4
,对于三维图像,默认连通性是 6
。
值 | 意义 | |
---|---|---|
二维连通 | ||
| 如果像素的边缘相互接触,则这些像素具有连通性。如果两个相邻像素都为 on 并在水平或垂直方向上连通,则它们是同一对象的一部分。 |
当前像素以灰色显示。 |
| 如果像素的边缘或角相互接触,则这些像素具有连通性。如果两个相邻像素都为 on 并在水平、垂直或对角线方向上连通,则它们是同一对象的一部分。 |
当前像素以灰色显示。 |
三维连通 | ||
| 如果像素的面接触,则这些像素具有连通性。如果两个相邻像素都为 on 并以如下方式连通,则它们是同一对象的一部分:
|
当前像素是立方体的中心。 |
| 如果像素的面或边缘接触,则这些像素具有连通性。如果两个相邻像素都为 on 并以如下方式连通,则它们是同一对象的一部分:
|
当前像素是立方体的中心。 |
| 如果像素的面、边缘或角接触,则这些像素具有连通性。如果两个相邻像素都为 on 并以如下方式连通,则它们是同一对象的一部分:
|
当前像素是立方体的中心。 |
对于更高的维度,bwperim
使用默认值
。conndef
(ndims(BW),"minimal")
也可以通过指定由 0
和 1
组成的 3×3×...×3 矩阵,以更通用的方式来定义任意维度的连通性。值为 1
的元素定义相对于 conn
的中心元素的邻域位置。请注意,conn
必须关于其中心元素对称。有关详细信息,请参阅指定自定义连通性。
数据类型: double
| logical
输出参数
BW2
— 仅包含对象的边界像素的输出二值图像
逻辑数组
仅包含对象的边界像素的输出图像,以逻辑数组形式返回。
数据类型: logical
扩展功能
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
用法说明和限制:
bwperim
支持 C 代码生成(需要 MATLAB® Coder™)。请注意,如果您选择通用的MATLAB Host Computer
目标平台,bwperim
生成的代码将使用平台特定的预编译共享库。使用共享库可保留性能上的优化,但适用范围仅限于生成的代码所适用的目标平台。有关详细信息,请参阅Image Processing Toolbox 中代码生成支持的类型。bwperim
仅支持二维图像。bwperim
不支持无输出参数的语法。连接矩阵输入参数
conn
必须为常量。
GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。
用法说明和限制:
bwperim
仅支持二维图像。bwperim
不支持无输出参数的语法。连接矩阵输入参数
conn
必须为常量。
版本历史记录
在 R2006a 之前推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)