使用Display.show_image(img)显示后,再调用pl.show_image()显示时候白屏

Viewed 47

问题描述


使用Display.show_image(img)显示后,再调用pl.show_image()显示时候白屏

import time
import os
import sys
from libs.PipeLine import PipeLine, ScopedTiming
from media.sensor import *
from media.display import *
from media.media import *
import gc                        # 导入垃圾回收库 / Import garbage collection library
import ybUtils.YbKey as YbKey


#初始化pl
sensor = Sensor(width=640, height=480)
rgb888p_size=[640, 480]
display_mode='lcd'
display_size=[640,480]
sensor.reset()
sensor.set_framesize(width=640, height=480, chn=CAM_CHN_ID_1)
sensor.set_pixformat(Sensor.RGB565, chn=CAM_CHN_ID_1)

pl=PipeLine(rgb888p_size=rgb888p_size,display_size=display_size,display_mode=display_mode)
pl.create(sensor = sensor)

while True:
    img = sensor.snapshot(chn=CAM_CHN_ID_1)
    Display.show_image(img)
    key = YbKey.YbKey()
    # 按键检测和图片保存逻辑
    # Button detection and image saving logic
    if key.is_pressed() == 1:
        break


pl.osd_img.clear()
print("afdf")
while True:
#        with ScopedTiming("total", 1):
    img = pl.get_frame()
    print("afdf")
#    pl.show_image()
#    gc.collect()

复现步骤


我是想同时使用Sensor和PipeLine,但是使用我是想同时使用Sensor和PipeLine显示完后,PipeLine显示就只是白屏了,需要添加什么指令呢

硬件板卡


亚博k230

软件版本


CanMV_K230_YAHBOOM_micropython_V1.4.3-3.img

1 Answers

参考在另一个帖子给的代码,直接用sensor的snapshot,不使用绑定