温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C++ 中怎么利用OpenCV实现边缘检测

发布时间:2021-07-02 17:48:19 来源:亿速云 阅读:273 作者:Leah 栏目:大数据

这篇文章给大家介绍C++ 中怎么利用OpenCV实现边缘检测,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Canny边缘检测介绍

Canny边缘检测算子是一种多级检测算法。1986年由John F. Canny提出,同时提出了边缘检测的三大准则:

  1. 低错误率的边缘检测:检测算法应该精确地找到图像中的尽可能多的边缘,尽可能的减少漏检和误检。

  2. 最优定位:检测的边缘点应该精确地定位于边缘的中心。

  3. 图像中的任意边缘应该只被标记一次,同时图像噪声不应产生伪边缘。

Canny算法出现以后一直是作为一种标准的边缘检测算法,此后也出现了各种基于Canny算法的改进算法。时至今日,Canny算法及其各种变种依旧是一种优秀的边缘检测算法。而且除非前提条件很适合,你很难找到一种边缘检测算子能显著地比Canny算子做的更好。

代码演示

新建一个项目opencv-0016,配置属性(VS2017配置OpenCV通用属性),然后在源文件写入#include和main方法

C++ 中怎么利用OpenCV实现边缘检测

C++ 中怎么利用OpenCV实现边缘检测

我们在上面定义了一一个初始的阈值为40和最大阈值255,然后又增加了一个方法用于处理Canny的运算

C++ 中怎么利用OpenCV实现边缘检测

然后下面写Canny的方法

C++ 中怎么利用OpenCV实现边缘检测

其中我们的后面参数阈值就是第一个阈值*2即可。

然后在我们的循环里面增加方法处理,并且加上按u键增加阈值,按d键减少阈值

C++ 中怎么利用OpenCV实现边缘检测

关于C++ 中怎么利用OpenCV实现边缘检测就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI