问题描述
OCR例子中通过img=pl.get_frame()获取当前帧,ulab.numpy.ndarray格式,为rgb888p_size,排布为CHW,可以直接交给ocr.run(img)进行推理,挺完美的,但有时帧我需要处理一下,通过锐化,灰度等处理,让其更清晰,再将给OCR推理,并且LCD上也同时显示处理过的图片,我为了实现这个功能,采用了sensor.snapshot()方式取到img,这个是Image格式,我一直没有办法转换成排布为CHW的ulab.numpy.ndarray,请问各技术大佬是否有办法?
以下是我的错误方法代码片断:
sensor = Sensor()
# 初始化摄像头
sensor.reset()
sensor.set_framesize(width=800,height=480)
sensor.set_pixformat(PIXEL_FORMAT_YUV_SEMIPLANAR_420)
#sensor.set_pixformat(sensor.RGB888)
sensor.set_framesize(width=800,height=480, chn=CAM_CHN_ID_2)
sensor.set_pixformat(PIXEL_FORMAT_RGB_888_PLANAR, chn=CAM_CHN_ID_2)
#sensor.set_pixformat(sensor.RGB888, chn=CAM_CHN_ID_2)
sensor.set_hmirror(True)
sensor.set_vflip(True)
sensor_bind_info = sensor.bind_info(x = 0, y = 0, chn = CAM_CHN_ID_0)
Display.bind_layer(**sensor_bind_info, layer = Display.LAYER_VIDEO1)
Display.init(Display.ST7701, width= 800, height = 480,fps=100,to_ide = True)
MediaManager.init()
sensor.run()
硬件板卡
K230
软件版本
CanMV K230 micropython