python+opencv轮廓检测代码解析


Posted in Python onJanuary 05, 2018

首先大家可以对OpenCV有个初步的了解,可以参考:简单了解OpenCV

轮廓(Contours),指的是有相同颜色或者密度,连接所有连续点的一条曲线。检测轮廓的工作对形状分析和物体检测与识别都非常有用。

在轮廓检测之前,首先要对图片进行二值化或者Canny边缘检测。在OpenCV中,寻找的物体是白色的,而背景必须是黑色的,因此图片预处理时必须保证这一点。

import cv2 
 
#读入图片 
img = cv2.imread("1.png") 
 
# 必须先转化成灰度图 
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 
 
# 二值化 
ret, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINAEY) 
 
# 寻找轮廓 
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) 
 
# 画出轮廓,-1,表示所有轮廓,画笔颜色为(0, 255, 0),即Green,粗细为3 
cv2.drawContours(img, contours, -1, (0, 255, 0), 3) 
 
# 显示图片 
cv2.namedWindow("Contours", cv2.NORMAL_WINDOW) 
cv2.imshow("Contours", img) 
 
# 等待键盘输入 
cv2.waitKey(0) 
cv2.destroyAllWindows()

总结

本文实例涉及对图片的一些简单处理,比如图片的读取,灰度显示,二值化等,大家可以参考。

以上就是本文关于python+opencv轮廓检测代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Eclipse中Python开发环境搭建简单教程
Mar 23 Python
Python Flask基础教程示例代码
Feb 07 Python
django 发送手机验证码的示例代码
Apr 25 Python
使用pycharm生成代码模板的实例
May 23 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 Python
使用python对excle和json互相转换的示例
Oct 23 Python
解决python中无法自动补全代码的问题
Dec 04 Python
利用PyCharm Profile分析异步爬虫效率详解
May 08 Python
python Pandas如何对数据集随机抽样
Jul 29 Python
python词云库wordCloud使用方法详解(解决中文乱码)
Feb 17 Python
Python创建简单的神经网络实例讲解
Jan 04 Python
Python中X[:,0]和X[:,1]的用法
May 10 Python
python selenium UI自动化解决验证码的4种方法
Jan 05 #Python
轻松实现TensorFlow微信跳一跳的AI
Jan 05 #Python
OpenCV-Python实现轮廓检测实例分析
Jan 05 #Python
django2 快速安装指南分享
Jan 05 #Python
Python实现改变与矩形橡胶的线条的颜色代码示例
Jan 05 #Python
用python制作游戏外挂
Jan 04 #Python
Python学习之Anaconda的使用与配置方法
Jan 04 #Python
You might like
使用swoole扩展php websocket示例
2014/02/13 PHP
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
JavaScript内核之基本概念
2011/10/21 Javascript
通过js动态操作table(新增,删除相关列信息)
2012/05/23 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
jQuery 如何实现一个滑动按钮开关
2016/12/01 Javascript
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
微信小程序之拖拽排序(代码分享)
2017/01/21 Javascript
Angular JS 生成动态二维码的方法
2017/02/23 Javascript
jQuery复合事件结合toggle()方法的用法示例
2017/06/10 jQuery
laydate时间日历插件使用方法详解
2018/11/14 Javascript
详解react组件通讯方式(多种)
2020/05/06 Javascript
python基础教程之Hello World!
2014/08/29 Python
Python3 正在毁灭 Python的原因分析
2014/11/28 Python
使用Python脚本对Linux服务器进行监控的教程
2015/04/02 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
Python实现读取json文件到excel表
2017/11/18 Python
利用Django-environ如何区分不同环境
2018/08/26 Python
新手学python应该下哪个版本
2020/06/11 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
生物技术毕业生自荐信
2013/10/23 职场文书
行政管理人员精品工作推荐信
2013/11/04 职场文书
客服服务心得体会
2013/12/30 职场文书
医院工作检讨书范文
2014/02/10 职场文书
党员批评与自我批评
2014/02/12 职场文书
开学典礼演讲稿
2014/05/23 职场文书
课程设计的心得体会
2014/09/03 职场文书
中学生检讨书范文
2014/11/03 职场文书
公司承诺函范文
2015/01/21 职场文书
员工辞退通知书
2015/04/17 职场文书
主题班会开场白
2015/06/01 职场文书
Python pandas读取CSV文件的注意事项(适合新手)
2021/06/20 Python
Python 数据结构之十大经典排序算法一文通关
2021/10/16 Python