C++中怎么利用OpenCV实现平面对象识别

今天就跟大家聊聊有关C++中怎么利用 OpenCV实现平面对象识别,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了汉南免费建站欢迎大家使用!

代码演示

我们再新建一个项目名为opencv--findobject,按照配置属性(VS2017配置OpenCV通用属性),然后在源文件写入#include和main方法

C++中怎么利用 OpenCV实现平面对象识别

然后我们把前一节课FLANN的匹配方法都拷贝过来《C++ OpenCV特征提取之FLANN特征匹配》

C++中怎么利用 OpenCV实现平面对象识别

还记得当时的运行效果吧

这次我们换一张图片,直接把大头照显示出来

C++中怎么利用 OpenCV实现平面对象识别


在上次代码结尾我们开始编码

首先从最坐匹配中找对应的点

C++中怎么利用 OpenCV实现平面对象识别

生成透视变换的矩阵

C++中怎么利用 OpenCV实现平面对象识别

定义两张图的角点,然后进行透视变换

C++中怎么利用 OpenCV实现平面对象识别

在输出图像上进行画线

C++中怎么利用 OpenCV实现平面对象识别

上面的显示图像加上位置是因为我们两张图片因为放在同一起,所以需要有个数据的偏移计算。

显示图像

C++中怎么利用 OpenCV实现平面对象识别


接下来我们看一下运行的结果

可以看到,我们匹配到的图像已经画在上面了。

如果我们直接在第二张图上画,可以不用上面的画线加上偏移量了

C++中怎么利用 OpenCV实现平面对象识别

看完上述内容,你们对C++中怎么利用 OpenCV实现平面对象识别有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


分享题目:C++中怎么利用OpenCV实现平面对象识别
本文来源:http://pwwzsj.com/article/iieihh.html