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 相关文章推荐
Python爬虫模拟登录带验证码网站
Jan 22 Python
Python使用三种方法实现PCA算法
Dec 12 Python
基于python进行桶排序与基数排序的总结
May 29 Python
python实现俄罗斯方块
Jun 26 Python
python找出完数的方法
Nov 12 Python
python的xpath获取div标签内html内容,实现innerhtml功能的方法
Jan 02 Python
详解python selenium 爬取网易云音乐歌单名
Mar 28 Python
python安装requests库的实例代码
Jun 25 Python
使用Python合成图片的实现代码(图片添加个性化文本,图片上叠加其他图片)
Apr 30 Python
python判断字符串以什么结尾的实例方法
Sep 18 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
Sep 23 Python
python中not、and和or的优先级与详细用法介绍
Nov 03 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
smarty基础之拼接字符串的详解
2013/06/18 PHP
php遍历目录与文件夹的多种方法详解
2013/11/14 PHP
JavaScript实现禁止后退的方法
2006/12/27 Javascript
jquery简单体验
2007/01/10 Javascript
JavaScript 以对象为索引的关联数组
2010/05/19 Javascript
JQuery 操作/获取table具体代码
2013/06/13 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
js控制网页背景音乐播放与停止的方法
2015/02/06 Javascript
JS实现让访问者自助选择网页文字颜色的方法
2015/02/24 Javascript
nodejs微信公众号支付开发
2016/09/19 NodeJs
Javascript中判断一个值是否为undefined的方法详解
2016/09/28 Javascript
jQuery插件zTree实现清空选中第一个节点所有子节点的方法
2017/03/08 Javascript
angular 组件通信的几种实现方式
2018/07/13 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
JavaScript中构造函数与原型链之间的关系详解
2019/02/25 Javascript
微信小程序页面间传值与页面取值操作实例分析
2019/04/30 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
用python实现的去除win下文本文件头部BOM的代码
2013/02/10 Python
Python即时网络爬虫项目启动说明详解
2018/02/23 Python
python获取url的返回信息方法
2018/12/17 Python
python采集微信公众号文章
2018/12/20 Python
Python正则表达式和re库知识点总结
2019/02/11 Python
python中dict()的高级用法实现
2019/11/13 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
2020/04/03 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
2020/04/09 Python
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
html5 sessionStorage会话存储_动力节点Java学院整理
2017/07/06 HTML / CSS
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
世界上最大的餐具公司:Oneida
2016/12/17 全球购物
大一新生军训时的自我评价分享
2013/12/05 职场文书
土木工程师职业规划范文
2014/03/07 职场文书
培训讲师岗位职责
2014/04/13 职场文书
实验室的标语
2014/06/20 职场文书
人力资源管理专业自荐书
2014/07/07 职场文书
2019年个人工作总结范文
2019/03/25 职场文书