嵌入式工程师AI挑战营RV1106人脸识别+流水记录(5)
[复制链接]
本帖最后由 90houyidai 于 2024-12-15 21:54 编辑
从这里开始感觉没啥头绪,就去翻了数字识别的帖子,提到数据集,训练模型,然后在insightface工程文件夹里一通乱找
发现一个model_zoo的文件夹,readme中提供了下载链接,可是都好大好大,还是G盘的,网路不稳定根本下载不了
转而发现本次好像没有要求自己训练模型,所以就想着buffalo_l的模型是ONNX的是不是可以直接拿来使用
那就先试试
det_10g Retinaface detection
w600k r50 ResNet50 Recognition
2d106det 2d106 & 3d68 Alignment
1k3d68 2d106 & 3d68 Alignment
genderage Gender&Age Attributes
这里我使用miniconda3,为了防止出现环境错误,我就将insightface和RKNN-toolkit2的环境安在一起
然后按照RKNN 推理测试 | LUCKFOX WIKI转换RKNN模型
脚本文件可在前面下载的Luckfox的网盘文件中找到
1、E:\BaiduNetdiskDownload\Luckfox Pico\示例程序\RKNN示例程序\luckfox_rknn.zip\luckfox_rknn\scripts\luckfox_onnx_to_rknn\convert\
rknn.config修改target_platform、dynamic_input
rknn.config(mean_values=[[104, 117, 123]], std_values=[[1, 1, 1]], target_platform='rv1106',remove_reshape=True,
quantized_algorithm="normal", quant_img_RGB2BGR=True,optimization_level=0,dynamic_input=[[[1,3,224,224]]])
python convert.py ../model/det_10g.onnx ../dataset/retinaface_dataset.txt ../model/det_10g.rknn Retinaface
2、 else:
rknn.config(mean_values=[[0, 0, 0]], std_values=[[255, 255, 255]], target_platform='rv1106',dynamic_input=[[[1,3,112,112]]])
python convert.py ../model/w600k_r50.onnx ../dataset/retinaface_dataset.txt ../model/w600k_r50.rknn ResNet50
3、 else:
rknn.config(mean_values=[[0, 0, 0]], std_values=[[255, 255, 255]], target_platform='rv1106',dynamic_input=[[[1,3,192,192]]])
python convert.py ../model/2d106det.onnx ../dataset/retinaface_dataset.txt ../model/2d106det.rknn 2d106
转换det_10g模型是提示下面dynamic_input错误,这咋整呢?
卡了好几天,想着能不能修改ONNX模型文件呢?又去安装了onnx-simplifier和onnx-modifier,将onnx模型简化一下并且更改了输入层
pip install onnx-simplifier
python simplified.py
python -m onnxsim det_10g.onnx simp_sim.onnx --overwrite-input-shape 1,3,640,640
然后转换了一下,发现并无卵用,依然报错(可能我不会用)
E inference: The input(ndarray) shape (1, 640, 640, 3) is wrong, expect 'nchw' like (1, 3, 640, 640)!
outputs = rknn.inference(inputs=[infer_img],data_format='nhwc')
所以按照提示去rknn.config中去配置了动态输入参数,嘿,竟然过了
转换好像没问题了,但是真的能用了吗?那就在PC试试先
打开网盘的压缩包Luckfox Pico\示例程序\RKNN示例程序\luckfox_rknn.zip\luckfox_rknn\scripts\luckfox_onnx_to_rknn\sim\retinaface\
cd sim/retinaface
以retinaface修改测试
转换文件路径
Luckfox Pico\示例程序\RKNN示例程序\luckfox_rknn.zip\luckfox_rknn\scripts\luckfox_onnx_to_rknn\convert\
转换文件
|