Python ret在下面的程序中有什么用途
如果我从img2gray代码行中删除ret,则以下错误将生成此ValueErrorPython ret在下面的程序中有什么用途,python,opencv,image-processing,Python,Opencv,Image Processing,如果我从img2gray代码行中删除ret,则以下错误将生成此ValueError import cv2 import numpy as np img1 = cv2.imread('p1.jpg') img2 = cv2.imread('p2.jpg') rows,cols,channels = img2.shape roi = img1[0:rows,0:cols] ret,img2gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY) mask =
import cv2
import numpy as np
img1 = cv2.imread('p1.jpg')
img2 = cv2.imread('p2.jpg')
rows,cols,channels = img2.shape
roi = img1[0:rows,0:cols]
ret,img2gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)
mask = cv2.threshold(img2gray,100,255, cv2.THRESH_BINARY_INV)
cv2.imshow('mask',mask)
cv2.waitKey(0)
cv2.destroyAllWindows()
回溯(最近一次呼叫最后一次):
文件“oc5.py”,第10行,在
ret,img2gray=cv2.CVT颜色(img2,cv2.COLOR\U BGR2GRAY)
ValueError:要解压缩的值太多(应为2个)
cv2.cvtColor返回两个值。Ret只是一个虚拟变量,用于保存第一个值cv2。cvtColor返回两个值。Ret只是一个用于保存第一个值的虚拟变量我认为您在这里犯了一个错误cv2.cvtColor()
只返回一个值。但另一方面,cv2.threshold()
返回两个值。请再检查一遍。我想你在这里搞错了cv2.cvtColor()
只返回一个值。但另一方面,cv2.threshold()
返回两个值。请再检查一遍。
Traceback (most recent call last):
File "oc5.py", line 10, in <module>
ret,img2gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)
ValueError: too many values to unpack (expected 2)