ncnn-android-yolov7跑自己模型的注意事项

ncnn-android-yolov7


这是一个示例 ncnn android 项目,它依赖于 ncnn 库和 opencv

https://github.com/Tencent/ncnn

https://github.com/nihui/opencv-mobile

https://github.com/xiang-wuu/ncnn-android-yolov7

如何构建和运行


步骤1

https://github.com/Tencent/ncnn/releases

下载 ncnn-YYYYMMDD-android-vulkan.zip或自己构建 ncnn for android

将 ncnn-YYYYMMDD-android-vulkan.zip 提取到 app/src/main/jni 中,并在 app/src/main/jni/CMakeList 中将ncnn_DIR路径更改为您的路径.txt

步骤2

https://github.com/nihui/opencv-mobile

下载opencv-mobile-XYZ-android.zip

将opencv-mobile-XYZ-android.zip提取到app/src/main/jni中,并在app/src/main/jni/CMakeLists中将OpenCV_DIR路径更改为您的路径.txt

步骤3

使用Android Studio打开这个项目,构建它并享受!

一些注意事项

  1. 安卓 ndk 相机用于最佳效率
  2. 由于缺少HAL3相机接口,崩溃可能发生在非常旧的设备上
  3. 所有模型均手动修改以接受动态输入形状
  4. 大多数小型模型在 GPU 上的运行速度比在 CPU 上的运行速度慢,这很常见
  5. 由于相机曝光时间较长,在黑暗环境中的FPS可能较低

跑自己的模型


流程:pt->onnx->ncnn。

1、yolov7(pt->onnx)

下载代码和权重,这里用的是tiny。

代码用main分支的,权重手动下载release里的。

运行

复制代码
python export.py yolov7-tiny.pt --simplify

运行时要加simplify,不然onnx转ncnn会有不支持的算子。

2、ncnn(onnx->ncnn)

使用下面这个网站转换,要把三个勾都选上。

https://convertmodel.com

3、修改权重输入输出

进入Netron,上传自己的param文件查看权重输入输出(1个输入、3个输出),并更改代码后即可直接编译;

获取晚后在ncnn-android-yolov7/app/src/main/jni/yolo.cpp的Yolo::detect方法修改着几个地方:

复制代码
in0->images
out0->265
out1->279
out2->293

4、修改标注类别名称

不出意外,到这里重新编译一下就可以

由于部分设备不支持camera2,新增JNI方法,传图片进行识别


具体调用看MainActivity处理

THE END


感谢查阅

玉念聿辉:编辑

相关推荐
智驱力人工智能1 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
工程师老罗1 小时前
YOLOv1 核心结构解析
yolo
Lun3866buzha2 小时前
YOLOv10-BiFPN融合:危险物体检测与识别的革新方案,从模型架构到实战部署全解析
yolo
Katecat996632 小时前
YOLOv8-MambaOut在电子元器件缺陷检测中的应用与实践_1
yolo
Libraeking3 小时前
破壁行动:在旧项目中丝滑嵌入 Compose(混合开发实战)
android·经验分享·android jetpack
工程师老罗3 小时前
YOLOv1 核心知识点笔记
笔记·yolo
市场部需要一个软件开发岗位3 小时前
JAVA开发常见安全问题:Cookie 中明文存储用户名、密码
android·java·安全
JMchen1235 小时前
Android后台服务与网络保活:WorkManager的实战应用
android·java·网络·kotlin·php·android-studio
crmscs6 小时前
剪映永久解锁版/电脑版永久会员VIP/安卓SVIP手机永久版下载
android·智能手机·电脑
localbob6 小时前
杀戮尖塔 v6 MOD整合版(Slay the Spire)安卓+PC端免安装中文版分享 卡牌肉鸽神作!杀戮尖塔中文版,电脑和手机都能玩!杀戮尖塔.exe 杀戮尖塔.apk
android·杀戮尖塔apk·杀戮尖塔exe·游戏分享