imregionalmax
区域最大值
说明
示例
在简单示例图像中寻找区域最大值
创建一个具有若干区域最大值的简单示例图像。
A = 10*ones(10,10); A(2:4,2:4) = 22; A(6:8,6:8) = 33; A(2,7) = 44; A(3,8) = 45; A(4,9) = 44
A = 10×10
10 10 10 10 10 10 10 10 10 10
10 22 22 22 10 10 44 10 10 10
10 22 22 22 10 10 10 45 10 10
10 22 22 22 10 10 10 10 44 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 33 33 33 10 10
10 10 10 10 10 33 33 33 10 10
10 10 10 10 10 33 33 33 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
查找区域最大值。请注意,结果包括在 (3,8) 处的区域最大值。
regmax = imregionalmax(A)
regmax = 10x10 logical array
0 0 0 0 0 0 0 0 0 0
0 1 1 1 0 0 0 0 0 0
0 1 1 1 0 0 0 1 0 0
0 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 1 0 0
0 0 0 0 0 1 1 1 0 0
0 0 0 0 0 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
输入参数
I
— 灰度图像
数值数组
灰度图像,指定为任意维度的数值数组。
示例: I = imread('cameraman.tif');
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
conn
— 像素连通性
4
| 8
| 6
| 18
| 26
| 由 0
和 1
组成的 3×3×...×3 矩阵
像素连通性,指定为下表中的值之一。对于二维图像,默认连通性是 8
,对于三维图像,默认连通性是 26
。
值 | 意义 | |
---|---|---|
二维连通 | ||
| 如果像素的边缘相互接触,则这些像素具有连通性。像素的邻域是水平或垂直方向上的相邻像素。 |
当前像素以灰色显示。 |
| 如果像素的边缘或角相互接触,则这些像素具有连通性。像素的邻域是水平、垂直或对角线方向上的相邻像素。 |
当前像素以灰色显示。 |
三维连通 | ||
| 如果像素的面接触,则这些像素具有连通性。像素的邻域是符合以下条件的相邻像素:
|
当前像素以灰色显示。 |
| 如果像素的面或边缘接触,则这些像素具有连通性。像素的邻域是符合以下条件的相邻像素:
|
当前像素是立方体的中心。 |
| 如果像素的面、边缘或角接触,则这些像素具有连通性。像素的邻域是符合以下条件的相邻像素:
|
当前像素是立方体的中心。 |
对于更高的维度,imregionalmax
使用默认值 conndef(ndims(I),"maximal")
。
也可以通过指定由 0
和 1
组成的 3×3×...×3 矩阵,以更通用的方式来定义任意维度的连通性。值为 1
的元素定义相对于 conn
的中心元素的邻域位置。请注意,conn
必须关于其中心元素对称。有关详细信息,请参阅指定自定义连通性。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
扩展功能
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
用法说明和限制:
imregionalmax
支持 C 代码生成(需要 MATLAB® Coder™)。请注意,如果您选择通用的MATLAB Host Computer
目标平台,imregionalmax
生成的代码将使用平台特定的预编译共享库。使用共享库可保留性能上的优化,但适用范围仅限于生成的代码所适用的目标平台。有关详细信息,请参阅Image Processing Toolbox 中代码生成支持的类型。生成代码时,可选的第二个输入参量
conn
必须为编译时常量。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
GPU 数组
通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。
版本历史记录
在 R2006a 之前推出R2022b: 支持基于线程的环境
imregionalmax
现在支持基于线程的环境。
另请参阅
conndef
| imextendedmax
| imhmax
| imreconstruct
| imregionalmin
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)