网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C++OpenCV特征提取之如何实现自定义角点检测器

小编给大家分享一下C++ OpenCV特征提取之如何实现自定义角点检测器,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

成都创新互联专业为企业提供南雄网站建设、南雄做网站、南雄网站设计、南雄网站制作等企业网站建设、网页设计与制作、南雄企业网站模板建站服务,十载南雄做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

自定义角点检测器简介

  • 基于Harris与Shi-Tomasi角点检测

  • 首先通过计算矩阵M得到C++ OpenCV特征提取之如何实现自定义角点检测器两个特征值根据他们得到角点响应值

  • 然后自己设置阈值实现计算出阈值得到有效响应值的角点设置

相关API

C++: void cornerEigenValsAndVecs(

       InputArray src,       --单通道输入8位或浮点图像

       OutputArray dst,    --输出图像,同源图像或CV_32FC(6)

       int blockSize,         --邻域大小值

       int apertureSize,    --Sobel算子的参数

       int borderType=BORDER_DEFAULT --像素外插方法

)

C++: void cornerMinEigenVal(

       InputArray src,     --单通道输入8位或浮点图像

       OutputArray dst,  --图像存储的最小特征值。类型为CV_32FC1

       int blockSize,       --邻域大小值

       int apertureSize=3,   --Sobel算子的参数

       int borderType=BORDER_DEFAULT  --像素外插方法

)


代码演示

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

C++ OpenCV特征提取之如何实现自定义角点检测器

这章我们试试Harris自定义检测

首先定义相关的参数

C++ OpenCV特征提取之如何实现自定义角点检测器

我们要先定义输出的最大最小值,一个响应图,还有创建Trackbar用到的值和方法。都定义在上面是因为需要在TrackBar里调用。

C++ OpenCV特征提取之如何实现自定义角点检测器

然后在运行项目里面定义基本邻域,能过我们的API  cornerEigenValsAndVecs获得到输出图像

C++ OpenCV特征提取之如何实现自定义角点检测器

再根据输出的图像计算响应值,并且计算出最大最小值。

C++ OpenCV特征提取之如何实现自定义角点检测器

然后在目标窗口中增加一个TrackBar

C++ OpenCV特征提取之如何实现自定义角点检测器

上面是TrackBar的滑动事件。


输出结果

C++ OpenCV特征提取之如何实现自定义角点检测器

C++ OpenCV特征提取之如何实现自定义角点检测器

看完了这篇文章,相信你对“C++ OpenCV特征提取之如何实现自定义角点检测器”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前名称:C++OpenCV特征提取之如何实现自定义角点检测器
标题链接:http://bjjierui.cn/article/gdssgi.html

其他资讯