【python入门】基于opencv的分水岭算法

2024-11-01 16:34:46

1、由于兔脒巛钒图像背景颜色比较简单,所以可以直接二进制处理:img=cv2.imread(r'0.jpg')gray=cv2.cvtColor(img,cv2.COLOR_BGR2GR帆歌达缒AY)ret,t=cv2.threshold(gray,0,255, cv2.THRESH_BINARY_INV+cv2.THRESH_OTSU)

【python入门】基于opencv的分水岭算法

4、进行距离变换:d=cv2.distanceTransform(a,cv2.DIST_L2 ,5)ret,f=cv2.threshold(d,0.7*d.max(),255,0)

【python入门】基于opencv的分水岭算法

6、用分水岭算法制作掩膜:ret,m=cv2.connectedComponents(酆璁冻嘌f)m=m+1m[u==255]=0m = cv2.watershed(img,m)cv2.imwrite('result0.png',(m+1)*255)

【python入门】基于opencv的分水岭算法
猜你喜欢