我正在用OpenCV库拍照:
def display_frame(self, frame, dt):
texture = Texture.create(size=(frame.shape[1], frame.shape[0]), colorfmt='bgr')
texture.blit_buffer(frame.tobytes(order=None), colorfmt='bgr', bufferfmt='ubyte')
texture.flip_vertical()
self.image.texture = texture
cv2.imwrite('/home/mark/frontend/picture_taken.jpg', self.image)
cam.release()
cv2.destroyAllWindows()上面的抛出:
cv2.imwrite('/home/mark/frontend/picture_taken.jpg', self.image)
TypeError: Expected Ptr<cv::UMat> for argument 'img'我没有包括代码的所有部分,但上面的内容让你知道我想要在磁盘上写什么类型的图像。在GitHub上,我发现当我们试图编写一个以错误形式传入的图像时,通常会抛出这个错误。在某些情况下,可以通过在我编写图像的行上包含img = numpy.array(self.image)来解决这一问题。然而,这对我来说并不起作用。
如何解决这个问题?
发布于 2020-10-26 23:18:53
嗨,这只是一个猜测,但根据我自己的经验,我认为你的图像变量是一个None类型。如果您的self.image有任何值,您可以尝试并打印出来吗
https://stackoverflow.com/questions/64539865
复制相似问题