一、填充轮廓
#_*_ encoding=utf-8 _*_
import numpy as np
import cv2
img=cv2.imread('leilei.jpg')
imggray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
#二值化图片,将灰度图片中>127的像素修改为255(白色)
ret,thresh=cv2.threshold(imggray,127,255,0)
# cv2.imshow('thresh',thresh)
#在二值化图像中找轮廓,参数(输入图像,轮廓检索模式,轮廓近似方法),返回值(原图像,轮廓,轮廓的层析结构——轮廓之间的关系)
#具体返回值含义见https://blog.csdn.net/jjddss/article/details/73527990
image,contours,hierarchy=cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
# cv2.imshow("image",image)
# print("轮廓的数量:",np.size(contours))
# print("第一个轮廓的所有点的坐标:",contours[0])
# print("hierarchy",hierarchy)
contourlist=[]
#绘制轮廓
for contour in contours:
if cv2.contourArea(contour)>200:
contourlist.append(contour)
#根据最后的参数不同,可以选择填充轮廓,还是
img=cv2