c++ opencv 模板匹配
时间: 2023-11-20 12:59:32 浏览: 52
模板匹配是一种在图像中寻找给定图像模板的方法。OpenCV提供了cv::matchTemplate函数来实现模板匹配。该函数需要三个参数:输入图像、模板图像和输出结果。此外,还需要指定匹配方法,例如cv::TM_SQDIFF、cv::TM_SQDIFF_NORMED、cv::TM_CCORR、cv::TM_CCORR_NORMED、cv::TM_CCOEFF、cv::TM_CCOEFF_NORMED。其中,cv::TM_SQDIFF和cv::TM_SQDIFF_NORMED方法是最简单的匹配方法,而cv::TM_CCOEFF和cv::TM_CCOEFF_NORMED方法则是最复杂的匹配方法。
以下是一个简单的C++ OpenCV模板匹配的例子:
```c++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("image.jpg", IMREAD_COLOR);
Mat templ = imread("template.jpg", IMREAD_COLOR);
Mat result;
matchTemplate(img, templ, result, TM_CCOEFF_NORMED);
double minVal, maxVal;
Point minLoc, maxLoc;
minMaxLoc(result, &minVal, &maxVal, &minLoc, &maxLoc);
Point matchLoc = maxLoc;
rectangle(img, matchLoc, Point(matchLoc.x + templ.cols, matchLoc.y + templ.rows), Scalar::all(0),2, 8, 0);
imshow("img", img);
waitKey(0);
return 0;
}
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)