python+opencv轮廓检测代码解析
2018-01-05 09:55
846 查看
首先大家可以对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-OpenCV人脸检测(代码)
- Python-OpenCV人脸检测(代码)
- Python-OpenCV 处理图像(五):图像中边界和轮廓检测
- OpenCV-Python实现轮廓检测实例分析
- Opencv-python接口:轮廓检测
- Python-OpenCV 处理图像:图像中边界和轮廓检测
- OpenCV实现图片轮廓检测(Python实现)
- Python-OpenCV 处理图像(五):图像中边界和轮廓检测
- Opencv检测交通中红色标识轮廓c++代码实例及运行结果
- Python-OpenCV人脸检测(代码)
- Python-OpenCV人脸检测(代码)
- Opencv检测交通中红色标识轮廓c++代码实例及运行结果
- Python OpenCV -- 轮廓检测 (十四)
- Python-OpenCV 处理图像(四)(五):图像直方图和反向投影 图像中边界和轮廓检测
- Python-OpenCV人脸检测(代码)
- Python-OpenCV轮廓检测
- 【OpenCV+Python】轮廓检测及绘制,可用以生成对应于不规则形状ROI区域的mask
- Opencv检测交通中红色标识轮廓c++代码实例及运行结果
- Opencv检测交通中红色标识轮廓c++代码实例及运行结果
- Python_人脸检测 (dlib库检测与opencv检测效果对比 含代码)