python drawcontours_使用cv2.drawContours()Python3绘制特定轮廓时出现问题

我在使用python的cv2.drawContours()时遇到问题

问题:我不能显示单个轮廓。我只想要那条赛道

代码如下:original_image = np.array(ImageGrab.grab(bbox))

crop_img = original_image[200:307, :, :]

# Convert BGR to HSV

hsv = cv2.cvtColor(crop_img, cv2.COLOR_BGR2HSV)

# define range of track (grey) color in HSV

lower_grey = np.array([0, 0, 0])

upper_grey = np.array([255, 40, 150])

# Threshold the HSV image to get only gery colors

grey_mask = cv2.inRange(hsv, lower_grey, upper_grey)

grey_mask2 = grey_mask.copy()

_, contours, heir = cv2.findContours(grey_mask2, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

cv2.drawContours(grey_mask2, contours, 0, (0, 255, 0), 3)

cv2.imshow('Orig Image', crop_img)

cv2.imshow('Grey Mask', grey_mask2)

if cv2.waitKey(25) & 0xFF == ord('q'):

cv2.destroyAllWindows()

break

但是如果我把轮廓的数目设置为-1(所有的轮廓),它似乎得到了一些轮廓

我已经尽力解决这个问题,任何建议都将不胜感激

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值