Leaper Vision Toolkit
结构体 | 枚举
LPVBlobLib 模块参考手册

LPV 斑点分析模块,用于提供斑点分析相关功能。 更多...

结构体

interface  ILBlob
 该接口对应一个斑点,提供斑点的属性计算、转换和绘制等功能 更多...
 
interface  ILBlobAnalysis
 该接口提供斑点分析的功能。 更多...
 
interface  ILBlobFilter
 该接口提供过滤斑点的功能 更多...
 
interface  ILBlobResults
 该接口提供一组斑点分析结果的集合,包含一个或多个斑点。 更多...
 
class  LBlob
 
class  LBlobAnalysis
 
class  LBlobFilter
 
class  LBlobResults
 

枚举

enum  LPVBlobContourType { LPVBlobContourExternal = 0 , LPVBlobContourHole = 1 }
 该枚举表示斑点轮廓的类型 更多...
 
enum  LPVBlobDrawFlags {
  LPVBlobDrawContour = 1 , LPVBlobDrawHole = 2 , LPVBlobDrawCenter = 4 , LPVBlobDrawBoundingRect = 8 ,
  LPVBlobDrawRegion = 16 , LPVBlobDrawIndex = 32 , LPVBlobDrawDefault = LPVBlobDrawContour + LPVBlobDrawCenter , LPVBlobDrawAll = 0xff
}
 该枚举用于控制斑点对象绘制的行为 更多...
 
enum  LPVBlobFeatures {
  LPVBlobArea = 0 , LPVBlobPerimeter = 1 , LPVBlobWidth = 2 , LPVBlobHeight = 3 ,
  LPVBlobCircularity = 4 , LPVBlobConvexity = 5 , LPVBlobInertia = 6 , LPVBlobAspectRatio = 7 ,
  LPVBlobSharpness = 8 , LPVBlobLuminance = 9 , LPVBlobContrast = 10 , LPVBlobCenterX = 11 ,
  LPVBlobCenterY = 12 , LPVBlobColorV0 = 13 , LPVBlobColorV1 = 14 , LPVBlobColorV2 = 15
}
 该枚举表示斑点的数值类型的属性特征 更多...
 
enum  LPVBlobMergeType {
  LPVBlobMergeFromCenter = 0 , LPVBlobMergeFromLargest = 1 , LPVBlobMergeFromSmallest = 2 , LPVBlobMergeFromBrightest = 3 ,
  LPVBlobMergeFromDarkest = 4
}
 该枚举表示用于斑点合并的方法,尤其是指定起点的方法 更多...
 

详细描述

LPV 斑点分析模块,用于提供斑点分析相关功能。

该模块提供一些算法类,用于斑点分析任务。使用该模块中的类和算法,需按照以下方式引用该模块:

示例代码

枚举类型说明

◆ LPVBlobContourType

该枚举表示斑点轮廓的类型

枚举值
LPVBlobContourExternal 

使用图像中的外级轮廓作为斑点的外轮廓,内嵌轮廓为孔洞轮廓

LPVBlobContourHole 

使用图像中的内嵌轮廓作为斑点的外轮廓,外轮廓为孔洞轮廓,忽略最外层轮廓

◆ LPVBlobDrawFlags

该枚举用于控制斑点对象绘制的行为

枚举值
LPVBlobDrawContour 

绘制斑点的外轮廓

LPVBlobDrawHole 

绘制斑点的孔洞

LPVBlobDrawCenter 

绘制斑点的中心点

LPVBlobDrawBoundingRect 

绘制斑点的包围旋转矩形

LPVBlobDrawRegion 

绘制斑点内的所有像素

LPVBlobDrawIndex 

绘制斑点的索引,在其中心点的右下方

LPVBlobDrawDefault 

默认值,绘制斑点的中心点和外轮廓

LPVBlobDrawAll 

绘制所有部分

◆ LPVBlobFeatures

该枚举表示斑点的数值类型的属性特征

枚举值
LPVBlobArea 

斑点的面积,属于该斑点的总像素个数

LPVBlobPerimeter 

斑点外轮廓的周长

LPVBlobWidth 

斑点的旋转包围盒的长轴长度

LPVBlobHeight 

斑点的旋转包围盒的短轴长度

LPVBlobCircularity 

斑点的圆度形状特征,定义为:

\[ \frac{4 \pi A }{ P^2 } \]

其中, \( A \) 为斑点的面积, \( P \) 为斑点的外轮廓周长。该属性值在 (0, 1) 范围内,数值越接近 1 则斑点越圆。

LPVBlobConvexity 

斑点的凸度形状属性,定义为:

\[ \frac{ A }{ A_{conv} } \]

其中, \( A \) 为斑点的面积, \( A_{conv} \) 为斑点的包围凸多边形的面积。 该属性值在 (0, 1) 范围内,数值越接近 1 则斑点越接近一个凸多边形。

LPVBlobInertia 

斑点轮廓的惯性矩,通常被用作描述截面抵抗弯曲的性质。

LPVBlobAspectRatio 

斑点的包围旋转矩形的长宽比,该属性值在 (0, 1) 范围内,若斑点为正方形,则该属性数值为 1.

LPVBlobSharpness 

斑点内像素的清晰度

LPVBlobLuminance 

斑点内像素的平均亮度

LPVBlobContrast 

斑点内像素的平均对比度

LPVBlobCenterX 

斑点中心点的 x 坐标

LPVBlobCenterY 

斑点中心点的 y 坐标

LPVBlobColorV0 

斑点内像素的平均 0 通道值,用于彩色斑点分析

LPVBlobColorV1 

斑点内像素的平均 1 通道值,用于彩色斑点分析

LPVBlobColorV2 

斑点内像素的平均 2 通道值,用于彩色斑点分析

◆ LPVBlobMergeType

该枚举表示用于斑点合并的方法,尤其是指定起点的方法

枚举值
LPVBlobMergeFromCenter 

从检测区域的中心开始

LPVBlobMergeFromLargest 

从面积最大的斑点开始

LPVBlobMergeFromSmallest 

从面积最小的斑点开始

LPVBlobMergeFromBrightest 

从最亮的斑点开始,其平均亮度数值最大

LPVBlobMergeFromDarkest 

从最暗的斑点开始,其平均亮度数值最小