Leaper Vision Toolkit
中文 / English 2.x
Public 成员函数
ILBlobFilter接口 参考

该接口提供过滤斑点的功能 更多...

类 ILBlobFilter 继承关系图:
ILObject LBlobFilter

Public 成员函数

BOOL Filter (ILBlob *blob)
 
ILBlobResultsFilterResults (ILBlobResults *blobResults)
 
void GetFilterFeature (LPVBlobFeatures feature, double *lowerBound, double *upperBound)
 
void SetFilterFeature (LPVBlobFeatures feature, double lowerBound, double upperBound)
 
- Public 成员函数 继承自 ILObject
ILObjectCopy ()
 
LPVErrorCode Load (LString filename)
 
void Reset ()
 
LPVErrorCode Save (LString filename)
 
BOOL Valid ()
 

额外继承的成员函数

- 属性 继承自 ILObject
LString Name [get, set]
 对象的名称,默认为空。
大多数情况下,LPV 算法类并不使用这个名称。
ILDrawable::SetDrawName() 启用,该名称将被绘制在对象的附近 更多...
 

详细描述

该接口提供过滤斑点的功能

斑点过滤器用于按照属性特征过滤出合适的斑点对象。可按如下两种方法使用斑点过滤器:

  1. 配置过滤器再将其绑定到斑点分析算法上,通过 ILBlobAnalysis::AddBlobFilter().
  2. 自行调用过滤器的 ILBlobFilter::FilterResults() 接口,过滤斑点分析结果生成一个新的斑点集合。

支持在斑点分析算法中配置多个斑点过滤器,对于每一个候选斑点,若满足任意一个过滤器,则输出为最终的斑点分析结果。
支持在单个斑点过滤器中定义多个属性过滤,对于每一个候选斑点,若满足所有属性过滤设置,则是为满足该过滤器。

使用这个接口,需要创建一个 LBlobFilter 对象。

示例代码

成员函数说明

◆ Filter()

BOOL Filter ( ILBlob blob)

在一个斑点对象上应用当前过滤器。

参数
[in]blob输入的斑点对象
返回值
val若斑点对象满足当前过滤器,返回 True,否则返回 False。

◆ FilterResults()

ILBlobResults* FilterResults ( ILBlobResults blobResults)

过滤一个斑点集合,生成符合过滤条件的一个新的斑点集合

参数
[in]blobResults输入的斑点集合
返回值
filterResults返回过滤后的新的斑点集合

◆ GetFilterFeature()

void GetFilterFeature ( LPVBlobFeatures  feature,
double *  lowerBound,
double *  upperBound 
)

获取过滤器中指定属性特征的过滤上下限。

参数
[in]feature需过滤的数值属性特征,查看 LPVBlobFeatures
[out]lowerBound返回过滤值的下限,负值表示没有下限。若上下限均为负值且相等,则表示该属性特征无任何过滤设置。
[out]upperBound返回过滤值的上限,负值表示没有上限。

◆ SetFilterFeature()

void SetFilterFeature ( LPVBlobFeatures  feature,
double  lowerBound,
double  upperBound 
)

配置过滤器中的数值属性特征及其上下限。可在一个过滤其中定义多个联合的过滤配置。

参数
[in]feature需过滤的数值属性特征,查看 LPVBlobFeatures
[in]lowerBound过滤值的下限,负值表示没有下限(除 LPVBlobCenterX、LPVBlobCenterY)
[in]upperBound过滤值的上限,负值表示没有上限。