742|0

386

帖子

10

TA的资源

一粒金砂(高级)

楼主
 

嵌入式工程师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\

转换文件

convert.py (1.7 KB, 下载次数: 0)
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/5 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表