【问题标题】:how can i fix python contour problems?如何解决 python 轮廓问题?
【发布时间】:2020-04-22 15:38:29
【问题描述】:
import cv2
image= cv2.imread('1.png', cv2.IMREAD_GRAYSCALE)
ret, thesh = cv2.threshold(image, 127, 255, 0)
countours= cv2.findContours(thesh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)[1]
image = cv2.drawContours(image, countours,-1, (0,255, 0), 4)
cv2.imshow('', image)
cv2.waitKey()

结果是

Traceback(最近一次调用最后一次):文件 “C:/Users/robin/PycharmProjects/untitled/hello”,第 5 行,在 image = cv2.drawContours(image, countours,-1, (0,255, 0), 4) cv2.error: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgproc\src\drawing.cpp:2509: 错误:(-215:断言失败)npoints > 0 in function 'cv::drawContours'


我正在编写一个脚本来查找轮廓,但错误仍然出现,我该如何解决?

【问题讨论】:

  • findcontour 末尾的 [1] 是什么?
  • 根据 OpenCV 版本,findContours 有不同的返回签名。在 OpenCV 3.4.X 中它返回 3 个项目,而 OpenCV 4.1.X 返回 2 个项目。查看this post了解更多信息

标签: python opencv contour


【解决方案1】:

cv2.findContours 中尝试使用 [0] 而不是 [1]。

【讨论】:

    猜你喜欢
    • 2013-09-15
    • 2011-04-05
    • 2016-09-25
    • 1970-01-01
    • 2018-07-09
    • 2021-01-21
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    相关资源
    最近更新 更多