2019-7-23 opencv图像处理9-轮廓1(Contours)概述/绘制/近似方法

本文介绍了OpenCV中的轮廓检测概念,包括轮廓的概述、轮廓的绘制以及轮廓近似方法。在轮廓检测前通常需要进行阈值处理和Canny边缘检测。在OpenCV 3.2及以后版本,`findContours()`函数不会改变原图像。`drawContours()`函数用于绘制轮廓,可以通过设置参数选择绘制特定轮廓。轮廓近似方法通过`findContours()`的`method`参数实现,例如`CHAIN_APPROX_SIMPLE`可以有效压缩轮廓,减少内存占用。
摘要由CSDN通过智能技术生成

1.概述

官网参见https://docs.opencv.org/3.4.1/d4/d73/tutorial_py_contours_begin.html

轮廓 可以解释为连接着所有沿着边界连接点的曲线,这些连接点具有相同的颜色和强度。轮廓在形状分析,目标检测和识别中很有用。

  • 为了更加准确,应该使用二进制图像。在发现轮廓之前,要进行阈值处理和Canny边界检测。
  • 从opencv3.2开始,findContours()不再修改原图像,它会返回3个值,第1值是修改后的图像。
  • 在opencv中,查找轮廓就像在黑色背景中找白色物体。请记住,要找的物体应该是白色的,而背景应该是黑色的。

findContours()函数如下,使用参见https://mp.csdn.net/mdeditor/93378329#

image, contours, hierarchy = cv.findContours(image, mode, method[, contours[, hierarchy[, offset]]])

2.轮廓绘制

opencv中轮廓绘制使用的是cv.drawContours()函数,它可以根据你提供的边界点绘制任何形状。

image = cv.drawContours(image, contours, contourIdx, color[, thickness[, lineType[, hierarchy[, maxLevel[, offset]]]]])

关于cv.drawContours()函数的使用参见使用参见https://mp.csdn.net/mdeditor/93378329#。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值