我对编码和尝试进入计算机视觉还很陌生。我直接从github下载了一些代码以开始使用它,但是由于某种原因我无法使其运行。我安装了通过pip所需的所有模块,并且在代码的开头就很好地导入了cv2。每当使用内部功能之一时,它都会在此行中出错。
cnts = sorted(cnts, key=cv2.contourArea, reverse=True)
产生错误:
Traceback (most recent call last):
File "/Users/nikolaipeterson/Desktop/hairline_detection-master/source.py", line 59, in <module>
cnts = sorted(cnts, key=cv2.contourArea, reverse=True)
cv2.error: OpenCV(4.0.0) /Users/travis/build/skvark/opencv-python/opencv/modules/imgproc/src/shapedescr.cpp:272: error: (-215:Assertion failed) npoints >= 0 && (depth == CV_32F || depth == CV_32S) in function 'contourArea'
获得了代码
答案 0 :(得分:0)
请记住,在Opencv4中,cv2.findContour()
仅返回2个值:contours, hierachy
https://docs.opencv.org/master/d4/d73/tutorial_py_contours_begin.html。
应该是
cnts = cv2.findContours(mask,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)[0]