目标检测通过下面5个步骤得出结果
- 读取图像 Cv2.ImRead();
- 使用模板匹配函数 cv2.matchTemplate();
- 获取匹配结果的最大值和最小值的位置 Cv2.MinMaxLoc();
- 绘制矩形框标记匹配结果
- 显示匹配结果
图例(上个扑克牌玩一下)

// 1、读取图像
Mat image = Cv2.ImRead("01.jpg", ImreadModes.Color);
Mat template = Cv2.ImRead("0102.jpg", ImreadModes.Color);
// 2、 使用cv2.matchTemplate()函数进行模板匹配
Mat resultImage = new Mat();
Cv2.MatchTemplate(image, template, resultImage, TemplateMatchModes.CCoeffNormed);
//3、 获取匹配结果的最大值和最小值的位置
double minVal, maxVal;
Point minLoc, maxLoc;
Cv2.MinMaxLoc(resultImage, out minVal, out maxVal, out minLoc, out maxLoc);
//4、绘制矩形框标记匹配结果
Rect rect = new Rect(maxLoc.X, maxLoc.Y, template.Width, template.Height);
Cv2.Rectangle(image, rect, Scalar.Red, 2);
//5、显示匹配结果
Cv2.ImShow("Result", image);
Cv2.WaitKey(0);
看结果

文章详细介绍了使用C#和OpenCvSharp库进行目标检测的五个步骤,包括读取图像、模板匹配、获取匹配结果位置、绘制矩形标记和显示结果。涉及了`cv2.matchTemplate()`、`Cv2.MinMaxLoc()`和`Cv2.Rectangle()`等关键函数的应用。
最低0.47元/天 解锁文章
1381

被折叠的 条评论
为什么被折叠?



