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中os和shutil模块实用方法集锦
May 13 Python
Python修改MP3文件的方法
Jun 15 Python
Python编程之微信推送模板消息功能示例
Aug 21 Python
Python排序搜索基本算法之插入排序实例分析
Dec 11 Python
python实现redis三种cas事务操作
Dec 19 Python
python爬虫 使用真实浏览器打开网页的两种方法总结
Apr 21 Python
python3 pygame实现接小球游戏
May 14 Python
python numpy 常用随机数的产生方法的实现
Aug 21 Python
python 正则表达式贪婪模式与非贪婪模式原理、用法实例分析
Oct 14 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
Dec 04 Python
Python日期格式和字符串格式相互转换的方法
Feb 18 Python
使用python实现时间序列白噪声检验方式
Jun 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
DC动漫人物排行
2020/03/03 欧美动漫
PHP生成HTML静态页面实例代码
2008/08/31 PHP
php获取地址栏信息的代码
2008/10/08 PHP
通达OA公共代码 php常用检测函数
2011/12/14 PHP
php使用cookie实现记住登录状态
2015/04/27 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
HR vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
Javascript中查找不以XX字符结尾的单词示例代码
2013/10/15 Javascript
Asp.Net alert弹出提示信息的几种方法总结
2014/01/29 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
2014/12/20 Javascript
js实现最短的XML格式化工具实例
2015/03/12 Javascript
Vue实现双向绑定的方法
2016/12/22 Javascript
浅谈vue项目重构技术要点和总结
2018/01/23 Javascript
对angularjs框架下controller间的传值方法详解
2018/10/08 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
jQuery实现朋友圈查看图片
2020/09/11 jQuery
vue中封装axios并实现api接口的统一管理
2020/12/25 Vue.js
jQuery实现手风琴特效
2021/01/11 jQuery
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
Python编程中用close()方法关闭文件的教程
2015/05/24 Python
Python实现在线音乐播放器
2017/03/03 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
python创建文件时去掉非法字符的方法
2018/10/31 Python
Django+python服务器部署与环境部署教程详解
2020/03/30 Python
如何在Win10系统使用Python3连接Hive
2020/10/15 Python
大学生简单自荐信
2013/11/10 职场文书
心理咨询专业自荐信
2014/07/07 职场文书
龙门石窟导游词
2015/02/02 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
python cv2图像质量压缩的算法示例
2021/06/04 Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
2021/06/07 Python
关于HTML编码导致的乱码问题
2021/09/04 HTML / CSS
Redis实现订单过期删除的方法步骤
2022/06/05 Redis