OpenCV之图像轮廓

什么是图像轮廓?
具有相同颜色(在彩色图片中)或强度(灰度图像要转变为二值化图像)的连续点的曲线

图像轮廓的作用:
1.可以用于图形分析
2.物体的识别与检测
以下这张图中被红色线描出部分都可以称之为轮廓
在这里插入图片描述
注意点:
1.为了检测的准确性,需要先对图像进行二值化或Canny操作
2.画轮廓是会修改输入图像,所以为了不避免破坏原来图像可以先进行深拷贝
轮廓查找api :
findContours (img, mode, ApproximationMode…),两个返回值 :contours(查找到所有轮廓的列表,不会绘制出来,只是以列表的形式存储所有轮廓的点)和 hierarchy(层级。表示查找到的所有轮廓有无层级或前后关系)。

mode : 对查找到的轮廓进行如何的组织.可以分级,也可以把所有的轮廓放在一个列表里,或者将轮廓按照树形结构进行存储。
RETR_EXTERNAL = 0, 表示只检测外轮廓(只检测最大的外圈轮廓,一般用于只想检测大物体)
RETR_LIST = 1,检测的轮廓不建立等级关系,所有轮廓放在一个列表中。
RETR_CCOMP = 2,有层级,每层最多两级
RETR_TREE = 3, 按照树形存储轮廓,从右到左一层一层检测(常用)

ApproximationMode:近似查找轮廓。
CHAIN_APPROX_NONE,保存所有轮廓上的点
CHAIN_APPROX_SIMPLE,只保存角点(常用)

绘制轮廓api :
drawContours(img, contours, contoursIdx, color, thickness,…)
img:在哪张图片上进行展示

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值