尝试从图像中提取数字,但我有0,8等问题,因为封闭的部分。
使用cv.drawContours(black_img, [contour_num], -1, (255, 255, 255), thickness=cv.FILLED)
时
它显然也填充了轮廓的内部。我如何防止这种情况?我如何只画出数字的“外部”部分?谢谢
drawn contourorig image
尝试从图像中提取数字,但我有0,8等问题,因为封闭的部分。
使用cv.drawContours(black_img, [contour_num], -1, (255, 255, 255), thickness=cv.FILLED)
时
它显然也填充了轮廓的内部。我如何防止这种情况?我如何只画出数字的“外部”部分?谢谢
drawn contourorig image
2条答案
按热度按时间jw5wzhpr1#
要在OpenCV中绘制轮廓而不填充它,可以使用
cv2.drawContours()
函数,并传入要绘制的轮廓的contour
和索引,以及所需的轮廓的color
和thickness
。还可以将filled
参数设置为False
以禁用填充。以下示例说明如何使用
cv2.drawContours()
绘制单个轮廓而不填充:cqoc49vn2#
cv.FILLED
等于-1
,是绘制填充轮廓的原因。您应该指定一个大于零的值,如
thickness=1
、thickness=2
等。