我对本教程有疑问:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_imgproc/py_contours/py_contour_features/py_contour_features.html 实际上,当我尝试执行此代码时遇到此错误:
import numpy as np
import cv2
img = cv2.imread("onepoint.png", 0)
canny_img = cv2.Canny(img,150,200)
ret,thresh = cv2.threshold(canny_img,127,255,0)
contours,hierarchy = cv2.findContours(thresh, 1, 2)
cnt = contours[0]
M = cv2.moments(cnt)
print M
这是错误:
File "contours.py", line 13, in <module>
contours,hierarchy = cv2.findContours(thresh, 1, 2)
ValueError: too many values to unpack
我不明白为什么会出现这种错误。我知道cv2.findContours (thresh, 1, 2)
会给我回复3&#34;数组&#34;但为什么?如果一个人善意向我解释我是一个接受者:(
我试图勾勒出这个picture的字样。
我对OpenCV完全陌生,我想你会明白,
提前感谢
答案 0 :(得分:0)
您需要将其更改为
im, contours,hierarchy = cv2.findContours(thresh, 1, 2)
或者,如果你只关心轮廓:
(_, contours, _) = cv2.findContours(thresh, 1, 2)
OpenCV 3
中的功能已更改。