基于Python的opencv学习练习(十二) findContours()轮廓与绘制drawContours()
2019-05-21 15:11
363 查看
import cv2 #加载图像 img=cv2.imread('rectangle.jpg',1) #将RGB图像转化为灰度图像 img_gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY) #将灰度图像二值化 ret,thresh = cv2.threshold(img_gray, 127,255,0) contours,hierarchy = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE) img = cv2.drawContours(img,contours,-1, (0,0,255),3) cv2.imshow('img',img) cv2.waitKey(0)
findContours()第一个是输入图像,第二个是轮廓检索模式,第三个是轮廓近似方法
返回值有两个,第一个是(轮廓的)层析结构。第二个是轮廓。轮廓(第二个返回值)是一个 Python列表,其中存储这图像中的所有轮廓。每一个轮廓都是一个 Numpy 数组,包
含对象边界点(x,y)的坐标。
第三个参数如果被设置为 cv2.CHAIN_APPROX_NONE,所有的边界点
都会被存储。cv2.CHAIN_APPROX_SIMPLE 储存只需要这条直线
的两个端点而已。
函数 cv2.drawContours() 可以被用来绘制轮廓。它可以根据你提供
的边界点绘制任何形状。它的第一个参数是原始图像,第二个参数是轮廓,一
个 Python 列表。第三个参数是轮廓的索引(在绘制独立轮廓是很有用,当设
置为 -1 时绘制所有轮廓)。接下来的参数是轮廓的颜色和厚度等。
相关文章推荐
- 基于Python的opencv学习练习(十三)直方图绘制
- 【OpenCV3】图像轮廓查找与绘制——cv::findContours()与cv::drawContours()详解
- findContours轮廓提取函数与drawContours轮廓绘制函数的使用
- OpenCV——绘制填充轮廓drawContours
- 【基于C++和Python的Opencv3学习笔记之基本图形的绘制】
- 【opencv】findContours轮廓检测与画轮廓drawContours
- opencv教程(基于python)----图象轮廓(一)
- cvDrawContours:在图像上绘制外部和内部轮廓
- 自动车牌识别(ANPR)练习项目学习笔记1(基于opencv)
- 自动车牌识别(ANPR)练习项目学习笔记2(基于opencv)
- 图像表示-基于opencv和python的学习笔记(十六)
- OpenCV(3.2)+Python(3.6)学习(基于官方API)(三)
- 【OpenCV学习】基于轮廓寻找的视频流运动检测
- 自动车牌识别(ANPR)练习项目学习笔记3(基于opencv)
- python OpenCV学习笔记(十二):形态转换
- opencv学习(四十)之寻找图像轮廓findContours()
- opencv学习篇(8)轮廓的查找、表达、绘制、特性及匹配
- opencv查找轮廓---cvFindContours && cvDrawCountours 用法及例子
- 【OpenCV+Python】轮廓检测及绘制,可用以生成对应于不规则形状ROI区域的mask
- 基于Python3.6和Opencv3的活动轮廓模型--CV和RSF