写一个opencvsharp 模板匹配的实例
时间: 2023-05-10 14:55:07 浏览: 212
移动物体识别追踪(C#opencvsharp源码实例
好的,下面是一个简单的 OpencvSharp 模板匹配的实例代码:
```csharp
using OpenCvSharp;
class Program
{
static void Main(string[] args)
{
// 读取原始图像和模板图像
Mat src = Cv2.ImRead("src.jpg");
Mat tpl = Cv2.ImRead("tpl.jpg");
// 创建结果图像
Mat result = new Mat();
// 进行模板匹配
Cv2.MatchTemplate(src, tpl, result, TemplateMatchModes.CCoeffNormed);
// 获取匹配结果
double minVal, maxVal;
Point minLoc, maxLoc;
Cv2.MinMaxLoc(result, out minVal, out maxVal, out minLoc, out maxLoc);
// 绘制匹配结果
Cv2.Rectangle(src, new Rect(maxLoc.X, maxLoc.Y, tpl.Width, tpl.Height), Scalar.Red, 2);
// 显示结果图像
Cv2.ImShow("Result", src);
Cv2.WaitKey(0);
}
}
```
这个例子演示了如何使用 OpencvSharp 进行模板匹配。我们首先读取原始图像和模板图像,然后调用 `MatchTemplate` 函数进行匹配。匹配结果保存在 `result` 中,我们可以使用 `MinMaxLoc` 函数获取最佳匹配位置。最后,我们使用 `Rectangle` 函数在原始图像上绘制匹配结果,并显示结果图像。
希望这个例子能够帮助你理解 OpencvSharp 的模板匹配功能。
阅读全文