SuperpixelSLIC 类
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.ximgproc.SuperpixelSLIC
-
public class SuperpixelSLIC extends Algorithm
实现SLIC(简单线性迭代聚类)超像素算法的类,该算法在CITE: Achanta2012中进行了描述。SLIC(简单线性迭代聚类)使用像素通道和图像平面空间对像素进行聚类,以高效地生成紧凑、近乎均匀的超像素。该方法的简单性使其极其易于使用,只需一个参数即可指定超像素的数量,并且算法的效率使其非常实用。SLIC类提供了一些优化:SLICO代表“零参数SLIC”,它是CITE: Achanta2012中描述的基线SLIC的优化版本。MSLIC代表“流形SLIC”,它是CITE: Liu_2017_IEEE中描述的基线SLIC的优化版本。
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protected
SuperpixelSLIC(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static SuperpixelSLIC
__fromPtr__(long addr)
void
enforceLabelConnectivity()
强制标签连接。void
enforceLabelConnectivity(int min_element_size)
强制标签连接。protected void
finalize()
void
getLabelContourMask(Mat image)
返回存储在SuperpixelSLIC对象中的超像素分割掩码。void
getLabelContourMask(Mat image, boolean thick_line)
返回存储在SuperpixelSLIC对象中的超像素分割掩码。void
getLabels(Mat labels_out)
返回图像的分割标签。int
getNumberOfSuperpixels()
计算在给定的SuperpixelSLIC对象中计算和存储的分割上超像素的实际数量。void
iterate()
使用SuperpixelSLIC对象中初始化的参数计算给定图像的超像素分割。void
iterate(int num_iterations)
使用SuperpixelSLIC对象中初始化的参数计算给定图像的超像素分割。-
继承自类 org.opencv.core.Algorithm 的方法
clear, empty, getDefaultName, getNativeObjAddr, save
-
-
-
-
方法详情
-
__fromPtr__
public static SuperpixelSLIC __fromPtr__(long addr)
-
getNumberOfSuperpixels
public int getNumberOfSuperpixels()
计算在给定的SuperpixelSLIC对象中计算和存储的分割上超像素的实际数量。- 返回值
- 自动生成
-
iterate
public void iterate(int num_iterations)
使用SuperpixelSLIC对象中初始化的参数计算给定图像的超像素分割。无需使用createSuperpixelSLIC()初始化算法即可再次调用此函数。这节省了为算法的所有结构分配内存的计算成本。- 参数
num_iterations
- 迭代次数。较高的数字会改善结果。该函数使用createSuperpixelSLIC()函数初始化的参数计算图像的超像素分割。该算法从超像素网格开始,然后通过提出边缘边界更新来细化边界。
-
iterate
public void iterate()
使用SuperpixelSLIC对象中初始化的参数计算给定图像的超像素分割。无需使用createSuperpixelSLIC()初始化算法即可再次调用此函数。这节省了为算法的所有结构分配内存的计算成本。该函数使用createSuperpixelSLIC()函数初始化的参数计算图像的超像素分割。该算法从超像素网格开始,然后通过提出边缘边界更新来细化边界。
-
getLabels
public void getLabels(Mat labels_out)
返回图像的分割标签。每个标签代表一个超像素,每个像素都分配给一个超像素标签。- 参数
labels_out
- 返回值:包含超像素分割标签的CV_32SC1整型数组。标签范围为[0, getNumberOfSuperpixels()]。该函数返回一个包含超像素分割标签的图像。标签范围为[0, getNumberOfSuperpixels()]。
-
getLabelContourMask
public void getLabelContourMask(Mat image, boolean thick_line)
返回存储在SuperpixelSLIC对象中的超像素分割掩码。- 参数
image
- 返回值:CV_8U1图像掩码,其中-1表示像素为超像素边界,否则为0。thick_line
- 如果为false,则边界只有一像素宽,否则边界上的所有像素都被屏蔽。该函数返回超像素分割的边界。
-
getLabelContourMask
public void getLabelContourMask(Mat image)
返回存储在SuperpixelSLIC对象中的超像素分割掩码。- 参数
image
- 返回值:CV_8U1图像掩码,其中-1表示像素为超像素边界,否则为0。都被屏蔽。该函数返回超像素分割的边界。
-
enforceLabelConnectivity
public void enforceLabelConnectivity(int min_element_size)
强制标签连接。- 参数
min_element_size
- 应吸收成较大超像素的最小元素大小(百分比)。给定结果平均超像素大小,有效值应在0-100范围内,25表示应吸收小于四分之一大小的超像素,这是默认值。该函数合并太小的组件,将先前找到的相邻标签分配给该组件。调用此函数可能会改变最终的超像素数量。
-
enforceLabelConnectivity
public void enforceLabelConnectivity()
强制标签连接。超像素。给定结果平均超像素大小,有效值应在0-100范围内,25表示应吸收小于四分之一大小的超像素,这是默认值。该函数合并太小的组件,将先前找到的相邻标签分配给该组件。调用此函数可能会改变最终的超像素数量。
-
-