实验:

import cv2 as cv
import numpy as np# 1.读入圆环
img = cv.imread('circle_ring.jpg')
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
_, thresh = cv.threshold(img_gray, 0, 255, cv.THRESH_BINARY + cv.THRESH_OTSU)# 2.使用cv.RETR_CCOMP寻找轮廓
contours, hierarchy = cv.findContours(thresh, cv.RETR_CCOMP, 2)# 3.找到内层轮廓并填充
# hierarchy的形状为(1,6,4),使用np.squeeze压缩一维数据,变成(6,4)
hierarchy = np.squeeze(hierarchy)for i in range(len(contours)):# 存在父轮廓,说明是里层if(hierarchy[i][3] != -1):# 参数5:-1表示填充cv.drawContours(img, contours, i, (180, 215, 215), -1)# 4.显示结果
cv.imshow('fill', img)
cv.waitKey(0)
cv.destroyAllWindows()

有不懂的地方请参考:
opencv 绘制图像轮廓
opencv cv.findContours详解
opencv官方文档 cv.findContours函数

opencv 利用图像轮廓函数填充圆环内部 图像轮廓函数应用小例子相关推荐

  1. opencv 利用傅里叶变换获取低频和高频部分图像-07

    1. 效果 2. 代码 # -*- coding: utf-8 -*- import cv2 import cv2 as cv import numpy as np from matplotlib i ...

  2. opencv补全边缘_为什么OpenCV中绘制的轮廓不能填充图像边缘的轮廓?

    编辑:我绕过了这个问题,在图像中添加了一个2位帧,然后使用我的代码,最后剪切图像以删除多余的帧.这是一个丑陋的解决方案,但它的工作! 我遇到了一个问题,我不确定这是一个错误还是我缺乏经验.我会尽量把它 ...

  3. 利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】

    利用OpenCV的函数matchTemplate()实现在图像中寻找.检索.搜索模板图像[图像模板匹配] 在博文 https://www.hhai.cc/thread-220-1-1.html 中我们 ...

  4. 图像的形态学开操作(开运算)和闭操作(闭运算)的概念和作用,并用OpenCV的函数morphologyEx()实现对图像的开闭操作

    大家看这篇博文前可以先看一看下面这篇博文,下面这篇博文是这篇博文的基础: 详解图像形态学操作之图形的腐蚀和膨胀的概念和运算过程,并利用OpenCV的函数erode()和函数dilate()对图像进行腐 ...

  5. 【图像处理】——Python+opencv实现二值图像的轮廓边界跟踪以及轮廓面积周长的求解(findcontours函数和contourArea函数)

    目录 一.函数 cv.findContours 二.轮廓层级(返回参数hierarchy) 三.轮廓寻找方式 1. RETR_LIST 2. RETR_TREE 3. RETR_EXTERNAL 4. ...

  6. cvDrawContours:在图像上绘制外部和内部轮廓

    转自:http://www.aiseminar.cn/html/18/t-618.html?action-uchimage 函数cvDrawContours用于在图像上绘制外部和内部轮廓.当thick ...

  7. OpenCV精进之路(八):图像轮廓和图像分割修复——轮廓查询和多边形包围轮廓

    Canny一类的边缘检测算法可以根据像素之间的差异,检测出轮廓边界的像素,但它没有将轮廓作为一个整体.所以要将轮廓提起出来,就必须将这些边缘像素组装成轮廓. OpenCV中有一个很强大的函数,它可以从 ...

  8. Opencv:图像旋转,cv2.getRotationMatrix2D 和 cv2.warpAffine 函数

    学习记录如何使用opencv实现对图像的旋转操作. 1 cv2.getRotationMatrix2D(center, angle, scale) 图像的旋转矩阵一般为: 但是单纯的这个矩阵是在原点处 ...

  9. OpenCV图像旋转,指定填充背景颜色边界颜色

    OpenCV图像旋转,指定填充背景颜色边界颜色 OpenCV与图像旋转有关的函数: (1)warpAffine函数 void cv::warpAffine ( InputArray  src,     ...

最新文章

  1. linux hexo写博客,自己centos7架设hexo网站
  2. 有人说:穷学IT富搞金融!程序员究竟是不是一帮苦孩子在做?
  3. 深入理解 C# 协变和逆变【转】
  4. faster rcnn源码解读(三)train_faster_rcnn_alt_opt.py
  5. [react-router] React-Router怎么获取历史对象?
  6. java禁止修改map_Java中实现不可变Map
  7. JQMeter进度条动态加载演示
  8. Linux设备驱动模型-Driver
  9. java.lang.stringind_为什么越界了? java.lang.StringIndexOutOfBoundsException
  10. 【人脸姿态】2D人脸姿态估计的两种方式:solvePnP与3DMM参数
  11. 计算机连接华为路由器5g变慢,华为企业级路由器 HUAWEI AR101W-S系列无线功能特别慢?...
  12. nginx.conf中的fastcgi_pass
  13. rap技术原理_RAP_表观遗传_北京晶莱华科生物技术有限公司
  14. Python玫瑰花绘制
  15. 苹果授权登录Sign In With Apple亲测通过版[100%成功]
  16. intern string java_聊聊java String的intern
  17. vim 安装插件及常用插件
  18. 神经网络训练的一般步骤,神经网络是怎么训练的
  19. 4G卡的linux机器充当路由器(Ubuntu16 设置iptables NAT )
  20. 深入 delphi (转)

热门文章

  1. 为什么黑客都用python-终于发现为什么黑客都用python
  2. python编程入门经典-Python编程入门经典PDF文档免费下载
  3. python编程入门-python编程入门(第3版)
  4. Android实现语音识别代码
  5. 1.零基础Java基础教程9天入门
  6. 关于计算机实验的英语作文,关于实验的英语作文
  7. 魔天记服务器维护,魔天记3月23日维护公告
  8. jQuery DOM操作之查找结点
  9. element ui 邮箱非必填校验
  10. Web API-定时器