机器视觉康耐视VisionPro多模板匹配工具(二)
多模板匹配工具(CogPMAlignMultiTool)理论
运行时参数详细
CogPMAlignMultiTool的运行时参数是CogPMAlignRunParams的扩展,使所有CogPMAlignTool搜索功能都可用。CogPMAlignRunParams
作为CogPMAlignMultiRunParams类的属性公开,并且使用相同的值来定位所有模式。
其他的多模型运行时参数如下:
ØRuntimeMode-一种模式,用于指定将对队列中的模式执行的搜索类型。
ØStopSequentialThreshold-一个阈值,用于控制顺序搜索的停止条件。
ØReportResultsFromOnePatternOnly-一个布尔值,用于选择返回的结果是否来自单个模式。
ØUseXYOverlapBetweenPatterns-是否在模式之间使用CogPMAlignRunParams的XYOverlap的布尔值。
定位每个模式返回的结果由CogPMAlignMultiTool处理。这意味着返回的结果数可能大于roximateNumbertofind,并且结果可能包含得分小于AcceptThreshold的结果。
运行模式
Multi-Model在4种不同的操作模式下运行,以提高搜索效率。
顺序的
在顺序模式下,模式以预定义的顺序(队列)运行,直到满足停止条件为止。当使用以下条件从单个模式中找到足够的结果时,将满足停止条件:
Ø每个结果的分数必须大于或等于StopSequentialThreshold。
Ø找到的结果总数必须大于或等于roximatenumbertofind。
返回的结果将取决于ReportResultsFromOnePatternOnly值以及是否满足停止条件。下表描述了结果:
ReportResultsFromOnePatternOnly | 假 | 真正 |
满足停止条件 | 返回满足停止条件时的累积结果。 | 仅返回满足停止条件的单个模式的结果。 |
不满足停止条件 | 返回得分最高的模式的结果。 | 将返回得分大于或等于AcceptThreshold的结果最多的模式。如果出现平局,则将返回单得分最高的模式的结果。 |
为了说明运行时参数之间的交互,可以考虑以下示例:
Ø多模型工具包含2种训练有素的图案:一个圆形和一个正方形。
Ø队列顺序是在正方形之前尝试圆形。
Ø运行时图像具有三个圆圈和五个正方形。
1.如果ReportResultsFromOnePatternOnly设置为false并且满足了停止条件,则返回累积结果。
停止条件指定如下:
Øroximatenumbertofind设置为4。
ØStopSequentialThreshold设置为默认值0.5。
以下结果处理如下:
Ø第一个模式“圆圈”不符合停止条件的两个标准:不满足roximateNumberToFind ==4。
Ø第二个模式满足停止条件,因此搜索停止。
Ø返回累积的结果。
2.在将ReportResultsFromOnePatternOnly设置为false且不满足停止条件的情况下,将返回得分最高的模式的结果。
停止条件指定如下:
Øroximatenumbertofind设置为4。
ØStopSequentialThreshold设置为0.98。
以下结果处理如下:
Ø第一个模式“圆圈”不符合停止条件。
Ø第二个模式“正方形”不满足停止条件。
Ø圆的得分高于方形,因此返回“圆”的结果。
3.在将ReportResultsFromOnePatternOnly设置为true并满足停止条件的情况下,将返回满足停止模式的结果。
停止条件指定如下:
Øroximatenumbertofind设置为4。
ØStopSequentialThreshold设置为默认值0.5。
以下结果处理如下:
Ø第一个模式“圆圈”不符合停止条件:不满足roximateNumberToFind == 4。
Ø第二个模式满足停止条件,因此搜索停止。
Ø返回“正方形”模式的结果。
4.在将ReportResultsFromOnePatternOnly设置为true且不满足停止条件的情况下,将返回得分大于或等于AcceptThreshold的结果最多的模式。如果出现平局,则将返回单得分最高的模式的结果。
停止条件指定如下:
Øroximatenumbertofind设置为4。
ØStopSequentialThreshold设置为0.98。
以下结果处理如下:
Ø第一个图案“圆圈”不满足停止条件(找到3个)。
Ø第二个模式“正方形”不满足停止条件(在StopSequentialThreshold下找到4个)。
Ø由于存在更多的结果,因此返回“正方形”模式的结果。


夜雨聆风