OpenCV找轮廓findContours报错
ValueError: not enough values to unpack (expected 3,got 2)
问题指向这行代码👇
binary, cnts, hierarchy = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE )
报错的意思是需要3个返回值但只给了两个,
检查代码没有问题之后,怀疑是类似版本不匹配的问题
是的,在OpenCV版本4.0以上findContours()函数的返回值由三个改为两个了
函数cv2.findContours()已更改为仅返回轮廓和层次结构,而不返回ret
所以,将代码改为👇,即去掉binary
cnts, hierarchy = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE )
原代码就可以正常运行了