ScanSegment 类
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.ximgproc.ScanSegment
-
public class ScanSegment extends Algorithm
该类实现了 Loke SC 等人提出的 F-DBSCAN(使用并行 DBSCAN 算法的加速超像素图像分割)超像素算法。引文: loke2021accelerated(原始论文)。该算法使用并行化的 DBSCAN 聚类搜索,该搜索具有抗噪性,在分割质量方面具有竞争力,并且比现有的超像素分割方法更快。在伯克利分割数据集上进行测试时,平均处理速度为 175 帧/秒,边界召回率为 0.797,可实现的分割精度为 0.944。计算复杂度为二次 O(n2),更适合较小的图像,但仍然可以比 OpenCV 中的 SEEDS 算法更快地处理 2MP 彩色图像。当处理线程数固定时,输出是确定性的,并且要求源图像为 Lab 颜色格式。
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protected
ScanSegment(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static ScanSegment
__fromPtr__(long addr)
protected void
finalize()
void
getLabelContourMask(Mat image)
返回存储在 ScanSegment 对象中的超像素分割掩码。void
getLabelContourMask(Mat image, boolean thick_line)
返回存储在 ScanSegment 对象中的超像素分割掩码。void
getLabels(Mat labels_out)
返回图像的分割标签。int
getNumberOfSuperpixels()
返回使用 iterate 处理的最后一张图像的实际超像素分割结果。void
iterate(Mat img)
使用 ScanSegment 对象中初始化的参数计算给定图像的超像素分割。无需使用 createScanSegment() 初始化算法即可对其他图像再次调用此函数。这节省了为算法的所有结构分配内存的计算成本。-
从类 org.opencv.core.Algorithm 继承的方法
clear, empty, getDefaultName, getNativeObjAddr, save
-
-
-
-
方法详情
-
__fromPtr__
public static ScanSegment __fromPtr__(long addr)
-
getNumberOfSuperpixels
public int getNumberOfSuperpixels()
返回使用 iterate 处理的最后一张图像的实际超像素分割结果。如果未处理任何图像,则返回零。- 返回值
- 自动生成
-
iterate
public void iterate(Mat img)
使用 ScanSegment 对象中初始化的参数计算给定图像的超像素分割。无需使用 createScanSegment() 初始化算法即可对其他图像再次调用此函数。这节省了为算法的所有结构分配内存的计算成本。- 参数
img
- 输入图像。支持格式:CV_8UC3。图像大小必须与使用函数 createScanSegment() 初始化的图像大小匹配。它必须在 Lab 颜色空间中。
-
getLabels
public void getLabels(Mat labels_out)
返回图像的分割标签。每个标签代表一个超像素,每个像素都分配给一个超像素标签。- 参数
labels_out
- 返回值:包含超像素分割标签的 CV_32UC1 整数数组。标签范围为 [0, getNumberOfSuperpixels()]。
-
getLabelContourMask
public void getLabelContourMask(Mat image, boolean thick_line)
返回存储在 ScanSegment 对象中的超像素分割掩码。该函数返回超像素分割的边界。- 参数
image
- 返回值:CV_8UC1 图像掩码,其中 -1 表示像素为超像素边界,0 表示否则。thick_line
- 如果为 false,则边界只有一像素宽,否则边界上的所有像素都被屏蔽。
-
getLabelContourMask
public void getLabelContourMask(Mat image)
返回存储在 ScanSegment 对象中的超像素分割掩码。该函数返回超像素分割的边界。- 参数
image
- 返回值:CV_8UC1 图像掩码,其中 -1 表示像素为超像素边界,0 表示否则。
-
-