cv_lite 模块
概述
cv_lite 模块是针对某些特定任务、在底层基于 OpenCV 实现的轻量图像处理模块,提供了一些常见任务的加速版本方法,作为 openmv 的 image 模块中方法的补充。需要注意的是,它并不是完整的 OpenCV 库,仅提供部分任务的加速版本。
针对 cv_lite 模块中常见的数据格式,这里给出说明:
- 输入数据格式:
ulab.numpy.ndarray类型,一般通过image.to_numpy_ref()获取。 - ndarray 转回 image 实例:一般使用
img = image.Image(image_width, image_height, image.GRAYSCALE, alloc=image.ALLOC_REF, data=np_data)实现,构造时需注意 image 类型与数据量是否匹配。 - 零拷贝:上面两条操作没有重新分配内存,使用的是同一块物理内存,因此耗时不长。
- 与 openmv 混合使用:rgb888 格式数据若要和 openmv 的
image模块混合使用,可以使用to_rgb565()将其转换后再使用。
cv_lite 介绍
在前面的图像处理案例中,处理流程都是基于 openmv 移植实现的,大家可以发现部分案例的速度并不是很快。
为此,CanMV K230 官方针对某些特定场景提出了 cv_lite 的概念:针对某些特定任务在底层基于 OpenCV 实现轻量图像处理模块,提供常见任务的加速版本方法,作为 openmv 的 image 模块中方法的补充。