emgu cv MatchTemplate(smallTemplate, TemplateMatchingType.Ccorr) 示例
时间: 2024-12-10 20:38:38 浏览: 13
在Emgu CV中,`MatchTemplate`函数接受两个参数:一个小图`smallTemplate`和一个匹配类型的枚举`TemplateMatchingType`。`TemplateMatchingType.Corr`表示Correlation Coefficient(相关系数)匹配模式。这种模式计算的是模板与大图区域之间像素间的相关度,常用于寻找精确匹配。
以下是一个具体的示例,展示如何使用`Corr`模式进行模板匹配:
```csharp
using Emgu.CV;
using Emgu.CV.Structure;
// 加载大图和小图
Image<Bgr, byte> bigImage = new Image<Bgr, byte>("path_to_big_image.jpg");
Image<Bgr, byte> smallTemplate = new Image<Bgr, byte>("path_to_small_template.jpg");
// 进行模板匹配
Mat result = new Mat();
bigImage.MatchTemplate(smallTemplate, result, TemplateMatchingType.Corr);
// 获取相关系数最高的位置,这通常是匹配点
double maxCorrelation = result.MaxValue;
Point matchLocation = result.LocationOfMaxValue;
Console.WriteLine($"最高相关系数位置: ({matchLocation.X}, {matchLocation.Y})");
阅读全文