opencv 模板匹配

opencv 模板匹配我的其他文章 AKAZE 局部特征匹配级联分类器使用等比例缩放图片给图片加 logo 鱼眼校正智能答卷识别 opencv 滤镜效果灰度图像增强方式更多文章正在写作过程中 基础知识点模板匹配意思就是找一副已经存在的图片 从其他图片中查找近似的图片 接下来我们准备两幅大图 一副小图准备两幅大图 监控里面的截图并且时间不一样 角度也不一样图片一图片二可以看出两幅图片是不一样的 由于摄像头角度偏摆 部分图片并不一样 角度也不一致 showmethecod include lt

我的其他文章

更多文章正在写作过程中。

基础知识点

模板匹配意思就是找一副已经存在的图片,从其他图片中查找近似的图片,接下来我们准备两幅大图,一副小图

小图
准备两幅大图,监控里面的截图并且时间不一样,角度也不一样
图片一
大图一
图片二
在这里插入图片描述
可以看出两幅图片是不一样的,由于摄像头角度偏摆,部分图片并不一样,角度也不一致












show me the code

#include  
     #include  
     #include  
     #include  
     #include  
     using namespace std; using namespace cv; int main() { 
    Mat img,img2, templ, result,result2; img = imread("./big.jpg"); img2 = imread("./big2.jpg"); templ = imread("./temp.jpg"); imshow("t1", templ); int result_cols = img.cols - templ.cols + 1; int result_rows = img.rows - templ.rows + 1; result.create(result_cols, result_rows, CV_32FC1); //matchTemplate(img, templ, result, TM_SQDIFF_NORMED);//这里我们使用的匹配算法是标准平方差匹配 method=CV_TM_SQDIFF_NORMED,数值越小匹配度越好 matchTemplate(img, templ, result, TM_CCOEFF_NORMED);//数值越小匹配度越好 matchTemplate(img2, templ, result2, TM_CCOEFF_NORMED);//数值越小匹配度越好 normalize(result, result, 0, 1, NORM_MINMAX, -1, Mat()); normalize(result2, result2, 0, 1, NORM_MINMAX, -1, Mat()); double minVal = -1; double maxVal; Point minLoc; Point maxLoc; Point matchLoc; //cout << "匹配度:" << minVal << endl; minMaxLoc(result, &minVal, &maxVal, &minLoc, &maxLoc, Mat()); cout << "匹配度 min:" << minVal<<" max:" <<maxVal<< endl; //matchLoc = minLoc; matchLoc = maxLoc; rectangle(img, matchLoc, Point(matchLoc.x + templ.cols, matchLoc.y + templ.rows), Scalar(0, 255, 0), 2, 8, 0); imshow("img", img); minMaxLoc(result2, &minVal, &maxVal, &minLoc, &maxLoc, Mat()); cout << "匹配度 min:" << minVal << " max:" << maxVal << endl; matchLoc = maxLoc; rectangle(img2, matchLoc, Point(matchLoc.x + templ.cols, matchLoc.y + templ.rows), Scalar(0, 255, 0), 2, 8, 0); imshow("img2", img2); waitKey(0); return 0; } 

执行

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/228013.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午8:01
下一篇 2026年3月16日 下午8:01


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号