我只是尝试使用python中的opencv将图像从BGR转换为RGB。 但这样做时,我会收到以下错误消息:
line 62, in getRep\n rgbImg = cv2.cvtColor(imgFrame,
cv2.COLOR_BGR2RGB)\nTypeError: src data type = 17 is not supported\n
我看到图像作为一个参数被传递,它在BGR中如我所料,但它不起作用:
def getRep(self, imgFrame, multiple=False):
bgrImg = imgFrame.copy()
cv2.imshow('debug', imgFrame) #this line does show a BGR image
cv2.waitKey(0)
rgbImg = cv2.cvtColor(imgFrame, cv2.COLOR_BGR2RGB)
def recognize(self, imgFramePath):
imgFrame= cv2.imread(imgFramePath)
imgFrame = np.array(imgFrame)
reps = self.getRep(imgFrame, False)
这些都是正在解释的台词,也是唯一与我面临的问题相关的台词。有人知道我做错了什么吗?
谢谢
您的图像是一个} 上的文档:
CV_8S
图像(8位有符号整数)。This site显示从数字数据类型到实际类型的转换,类型17对应于8位带符号int。这是因为cvtColor()
不接受8位带符号int图像作为输入。从^{因此,您的输入图像必须是
CV_8U
(numpy.uint8
)或CV_16U
(numpy.uint16
)或CV_32F
(numpy.float32
)类型,并具有用于颜色转换的适当通道数。相关问题 更多 >
编程相关推荐