opencv-contours轮廓提取
1、cv::findContours(cv::InputOutputArray image,cv::OutputArrayOfArray contours, cv::OutputArray hierarchy, int method, cv::Point offset = cv::Point())
主要用于找到轮廓
eg: vector<vector<Point>>contours;
vector<Vec4i>hireachy;
findContours(dst, contours, hireachy,RETR_TREE, CHAIN_APPROX_SIMPLE, Point());
第一个参数:输入图像,通常是预处理后的二值图像
第二个参数:是一个双重向量,一个轮廓就是contours里的一个元素,有多少个轮廓就有多少个元素,一个轮廓里的点集是一个元 素里的数值
第三个参数:hireachy里面的参数分别表示当前轮廓的后一个轮廓、前一个轮廓、父轮廓、内轮廓
第四个参数:轮廓的检索方式(常用):
CV_RETR_EXTERNAL:只检测外轮廓
CV_RETR_LIST:检测所有轮廓,包括内轮廓和外轮廓
CV_RETR_CCOMP:检测所有轮廓
CV_RETR_TREE:检测所有轮廓(常用)
第五个参数:保存轮廓参数方法(常用):
CV_CHAIN_APPROX_NONE:保存所有轮廓的点到conours中
CV_CHAIN_APPROX_SIMPLE:仅保存轮廓拐点到conours中
第六个参数:轮廓图像偏移量
Point():不偏移
2、double cv::contourArea(cv::InputArray contour,bool oriented=false)
主要用于计算轮廓面积
第一个参数:输入轮廓点
第二个参数:默认值false,可不写
3、void cv::drawContours(cv::InputOutputArray image, cv::InputArrayOfArrays contours, int contourIdx, const Scalar& color, int thickness=1, int lineType=8,cv:: InputArray hierarchy=noArray(), int maxLevel=INT_MAX, Point offset=Point() )
主要用于画出轮廓
eg: drawContours(result, contours, -1, Scalar(0, 0, 255), 2, 8, Mat(), 0, Point());
第一个参数:目标图像
第二个参数:contours
第三个参数:要画第几个轮廓,如果是负值,则画全部轮廓
第四个参数:画轮廓的颜色
第五个参数:轮廓的线宽一般为1
第六个参数:线的连通性一般为8
第七个参数:只绘制部分轮廓有用一般为hireachy
第八个参数:一般为0
第八个参数:偏移量
opencv-contours轮廓提取相关推荐
- 《OpenCv视觉之眼》Python图像处理十二 :Opencv图像轮廓提取之基于一阶导数的Roberts算法、Prewitt算法及Sobel算法
本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...
- 《OpenCv视觉之眼》Python图像处理十四 :Opencv图像轮廓提取之Scharr算法和Canny算法
本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...
- pythonopencv提取轮廓区域_Python + Opencv 实现轮廓提取,轮廓区域面积计算
Python + Opencv2 实现轮廓提取,轮廓区域面积计算: 对图像处理时,会遇到这样一个场景:找到图像主体轮廓,这是其一,可能为了凸显轮廓,需要用指定的颜色进行标记:轮廓标记完可能任务还没有结 ...
- 【OpenCV】轮廓提取——findContours()
轮廓是图像的重要特征之一,有些时候,很容易将其和边缘混淆.因此查阅了关于轮廓和边缘的词条,以此加深对轮廓和边缘这两个概念的认识和理解.边缘是图像差异变化比较显著的地方,而轮廓则是构成图形和物体的边缘线 ...
- 图像轮廓提取算法(Opencv基于C++实现)
Opencv图像轮廓提取 0. 实现结果如下: 1. 打开图像代码 2. 轮廓提取函数 3. 代码实现 本文主要实现了图像的轮廓提取,首先先给出直观的轮廓实现结果: 0. 实现结果如下: 1. 打开图 ...
- Opencv 图像处理-Contours函数提取轮廓及感兴趣区域ROI的必用且实用操作技巧-(涵盖Contours的一切使用基础,附代码段)
需求目的:一般都是做项目时使用opencv的findcontours和drawcontours搭配使用抓取图像内感兴趣区域. 1.Contours函数轮廓点大小排序 当使用findco ...
- python opencv轮廓提取_Python + Opencv2 实现轮廓提取,轮廓区域面积计算
对图像处理时,会遇到这样一个场景:找到图像主体轮廓,这是其一,可能为了凸显轮廓,需要用指定的颜色进行标记:轮廓标记完可能任务还没有结束,还需对轮廓所勾勒的像素面积区域统计计算. 本篇文章的主要内容就是 ...
- opencv 轮廓提取文字
基于轮廓提取图像文字 内容: 使用你上一篇博客图像透视变换的结果,将A4纸上的线条单独识别出来. 输入图像: 输出图像: Python使用opencv实现 实验环境:Window下使用Pyt ...
- OpenCV实践之路——opencv玩数独之一九宫格轮廓提取与透视变换
本文由@星沉阁冰不语出品,转载请注明作者和出处. 文章链接:http://blog.csdn.net/xingchenbingbuyu/article/details/50783585 微博:http ...
- OpenCV学习笔记(六)之轮廓提取与角度测量
查找图像的轮廓在图像处理及应用中扮演着重要的角色.openCV 中的轮廓指的是由一系列点组成的点的集合,不同的轮廓可以有不同的点集.openCV中,轮廓是由STL风格的vector<> ...
最新文章
- 2021年甘肃省副高考试成绩查询,2021年甘肃卫生资格考试成绩查询-中国卫生人才网...
- 20210903 惯性环节1/(s+1)的各种响应
- 关于站库分离渗透思考总结
- windows10大瘦身 - Chrome文件夹下可以删除的临时js文件
- VSTO 得到Office文档的选中内容(Word、Excel、PPT、Outlook)
- (一)开始使用混合边缘AI进行面部识别
- [USACO09HOL]假期绘画Holiday Painting
- python数值计算速度_提高python数值计算速度
- 鸿蒙os系统使用技巧,鸿蒙OS系统的四大技术特性介绍
- Java NIO之缓冲区Buffer
- php 深入,深入PHP解耦的三重境界(浅谈服务容器)
- 微信小程序 vs 支付宝小程序(钉钉小程序) 区别 api大全
- 学习计算机英语的重要性
- wpsa4排版_WPS表格 排版 成a4纸 能打印格式 ! 大神们求教
- APP界面设计规范:如何定义视觉规范
- 知乎首页实战之下载知乎App模块
- linux任务调度框架,任务调度框架Hangfire 简介
- 基于STM32F103HAL库的声音定位系统
- [置顶] 我奋斗了18年才和你坐在一起喝咖啡
- 为四川汶川大地震遇难者默哀