微信公众号:OpenCV学堂
关注获取更多计算机视觉与深度学习知识
算法说明
代码实现与演示
https://github.com/daxiaHuang/edge-template-match/tree/master
task.initailization(tpl);
task.detect(target, results);
for (auto item : results) {
for (auto pt : item.pts) {
cv::circle(result, pt, 1, cv::Scalar(0, 255, 0), 1, 8);
}
cv::RotatedRect rrt = cv::minAreaRect(item.pts);
cv::Point2f minbox[4];
rrt.points(minbox);
for (int r = 0; r < 4; r++)
{
cv::line(result, minbox[r], minbox[(r + 1) % 4], cv::Scalar(0, 0, 255), 2, 8);
}
std::cout << "conf: " << item.conf << std::endl;
cv::putText(result, cv::format("conf:%.2f, angle:%d", item.conf, item.angle), item.center, cv::FONT_HERSHEY_SIMPLEX, .5, cv::Scalar(255, 0, 0), 1, 8);
}
推荐阅读
OpenCV4.8+YOLOv8对象检测C++推理演示
总结 | OpenCV4 Mat操作全接触
三行代码实现 TensorRT8.6 C++ 深度学习模型部署
实战 | YOLOv8+OpenCV 实现DM码定位检测与解析
对象检测边界框损失 – 从IOU到ProbIOU
YOLOv8 OBB实现自定义旋转对象检测
初学者必看 | 学习深度学习的五个误区
YOLOv8自定义数据集训练实现安全帽检测