Description du problème
En python, appelez la fonction findContours dans le package import cv2, et l'appel est le suivant:
# 寻找轮廓
bimg, contours, hier = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
Les problèmes suivants se produisent:
Traceback (most recent call last):
File "C:\Users\Y\Desktop\transformation_demo.py", line 9, in <module>
bimg, contours, hier = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
ValueError: not enough values to unpack (expected 3, got 2)
analyse du problème
Étant donné que la version opencv du problème, l'héritage de l' opencv
appel findContours
renvoyé lorsque la fonction est à trois valeurs, la nouvelle version de l' opencv
appel findContours
est renvoyée lorsque la fonction est à deux valeurs. La valeur de passage de la fonction findContours passe de trois valeurs à deux valeurs.
Donc, si votre version d'opencv est trop élevée et que vous passez trois valeurs, une erreur sera signalée.
problème résolu
Sera bimg, contours, hier = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
changé en contours, hier = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
, le problème est résolu avec succès.