本文主要是介绍opencv——实现目标模板匹配,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
#include <opencv2\opencv.hpp>
#include <stdio.h>int main( int agrc,char* argv[])
{//templat为目标模板图像,为彩色图像
IplImage* templat = cvLoadImage("1.jpg",1);
//src为被搜索图像,也为彩色图像
IplImage* src = cvLoadImage("2.jpg",1);cvNamedWindow("src",1);
cvShowImage("src",src);
cvNamedWindow("templat",1);
cvShowImage("templat",templat);/*因为templat和src均为彩色图像
所以把它们转变为灰度图像,然后再进行二值化
同时要对图像中进行腐蚀,以便提取图像特征*///创建腐蚀模板
IplConvKernel* element =0;
int cols=4,rows=4,anchor_x=2,anchor_y=2;
int values[16]={0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0};
element=cvCreateStructuringElementEx(cols,rows,anchor_x,anchor_y,CV_SHAPE_CUSTOM,values);/*把templat和src转换为灰度图像,再进行二值化*/IplImage* src_gray = cvCreateImage(cvGetSize(src),8,1); /*创建src_gray灰度图像的空间大小*/
IplImage* templat_gray = cvCreateImage(cvGetSize(templat),8,1); /*创建templat_gray灰度图像的空间大小*
这篇关于opencv——实现目标模板匹配的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!