一、硬件环境
基于征程5的LS500 uSOM基础开发套件(EDK),摄像头模组为MIPI接口的摄像头模组,型号为淘宝买的30pin模组:SG2-IMX390C-5200-MIPI-H120H 自己手工DIY了一下环境,如下:


二、代码实现过程
首先来看一下我的代码目录,取文件夹名字为edk_rx3_imx390c_efficientnetb0,基于OE包V1.1.68版本修改的,目录如下:
这里由于基于工具链中的示例来移植导EDK开发板上,不进行模型替换的话,我们只需要修改配置文件即可,配置文件在configs目录下,看看目录树长这样:
我们可以看到配置文件夹下有三个文件夹codec,model和vin,分别是配置web显示的编码大小配置,模型文件以及模型配置文件,通路配置文件。下面来看看各配置json文件的参数:
j5_codec_config.json
j5_codec_config.json
下面配置文件配置模型文件路径和级别
inference_config.json
inference_config.json
这个配置文件很容易理解,就是用于后处理的配置文件,配置了步长,topk值,阈值还有分类的类别标签和ID值,可以看到有80种类别标签。
postprocess_config.json
postprocess_config.json
下面这个文件就是配置摄像头的文件了,dev就是设备的意思,容易理解
hb_j5dev.json
hb_j5dev.json
这是一个中间配置文件:
j5_camera_source.json
j5_camera_source.json
这里到了重要的配置部分了,配置金字塔处理图像,模型的输入图像大小从金字塔读取,可以看到模型的输入大小为512X512,金字塔分高斯和双线性用法都类似,通常是gs-->ds--model input或者bl-->ds-->model input,当然这个通路不是绝对的,因为如果你的模型数据直接用原图可以或者通过ISP处理之后就能满足模型的输入条件,那么就不用金字塔缩放图像了。PYM配置如下:
vpm_config.json
vpm_config.json
下面的配置文件就是模式选择用的,配置选择网路回灌还是摄像头数据作为输入,显然我这里"config_index": 2,就是选择imx390c摄像头的配置。
j5_vio_config.json
j5_vio_config.json
以上的配置文件简单介绍一下,起一个引导的左右,要是每个参数都去介绍,那篇幅就大了。
三、效果展示
测试效果如下:


