PiCamera和CV2 imdecode始终返回非

2024-04-27 14:05:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个问题使用CV2在覆盆子派与PiCamera。这是我的代码:

camera = PiCamera()
camera.resolution = ( 320, 240 )
camera.framerate = 60
rawCapture = PiRGBArray( camera, size=( 320, 240 ) )
time.sleep(1)
start = time.time()

for frame in camera.capture_continuous(rawCapture, format="bgr", use_video_port=True):


    # and occupied/unoccupied text
    images = frame.array

    # show the frame
    cv2.imshow("Frame", images)


    cv_img = images.astype(np.uint8)

    gray  = cv2.imdecode(np.fromstring(cv_img, dtype=np.uint8), cv2.IMREAD_GRAYSCALE)
    image = cv2.imdecode(np.fromstring(cv_img, dtype=np.uint8), cv2.IMREAD_UNCHANGED)

    print("IMAGE: ",image)
    print("GRAY: ",gray)

“图像”和“灰度”始终为“无”,而“图像”和“cv”图像包含正确的帧。我真不明白为什么它不起作用,你能帮帮我吗?在

提前谢谢你。在


Tags: 图像imgtimenpcv2framecvcamera
1条回答
网友
1楼 · 发布于 2024-04-27 14:05:47

我发现picamera.array是在picamara和{}之间架起桥梁的可靠方法。docs中有一些与您的不远的例子。在

一旦你进入了cv2领域

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

是进行灰度转换的典型方法。用imdecode的方式做这件事太过分了。在

相关问题 更多 >