繁体   English   中英

cv2.imshow()参数格式?

[英]cv2.imshow() argument format?

我正在修改通过相机读取的图像的像素,并尝试使用imshow()在屏幕上看到它,但是每次最终都会出现黑屏。 唯一有效的方法是,如果我先保存它(使用imwrite() ,然后再次读取它(使用imread() ))

这会产生黑屏:-

def foo(im):
    cv2.show(im)
    cv2.waitKey(10)

ret_im = some_fn(some_image)
foo(ret_im)

而这给出了正确的图像:

def foo(im):
    cv2.show(im)
    cv2.waitKey(10)

ret_im = some_fn(some_image)
cv2.write("some_name.png",ret_im)
ret_im = cv2.read("some_name.png")
foo(ret_im)

原始图像也像魅力一样起作用。 例如:

def foo(im):
    cv2.show(im)
    cv2.waitKey(10)

foo(some_image)

我认为,这与输入数据格式有关。 我尝试通过修改图像将其与some_image类型匹配。

我必须在这里提到,我正在修改将其视为列表的图像,最后使用以下numpy.array(list_name)将其转换为numpy数组: numpy.array(list_name)

因此,可以将其视为与:

def foo(im):
    cv2.show(im)
    cv2.waitKey(10)

ret_im = numpy.array(some_fn(some_image))
foo(ret_im) 

图像格式需要“ uint8”数字。 我使用的是导致问题的int32数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM