最近在学习如何yolo项目部署移动端的安卓手机上面,做一个学习分享部署过程中遇到了很多问题,其中android studio环境配置算是耗时最长的,经过一番曲折,并没有柳暗花明,最后部署效果并不佳,不知道自己过程哪里出现了问题,希望有大佬指点,以下是我的部署过程。 

1.github下载yolov8的项目源码

https://github.com/ultralytics/ultralyticsicon-default.png?t=N7T8https://github.com/ultralytics/ultralytics1.1  创建属于yolov8的虚拟环境

参考:深度学习之YOLO8】环境部署_春马与夏的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_43376286/article/details/131838647直接使用 pip install ultralytics可以安装项目所需的所有包

1.2 下载官方的预训练权重https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pticon-default.png?t=N7T8https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt1.3 yolov8训练自己数据

1.3.1 创建数据加载配置文件

1.3.2 训练自定义数据

yolo task=detect mode=train model=yolov8n.pt data=数据配置文件路径 batch=16 epochs=100 imgsz=640 workers=16 device=0

完成训练后会runs的weights目录下会生成最好的权重文件

2.模型转换

要想自己训练的模型在移动部署,就需要生成pt文件转换android支持的ncnn格式的文件,转换过程分为以下两个步骤

2.1 将pt文件转为onnx

2.1.1 修改ultralytics/ultralytics/nn/modules/block.py中的class C2f(nn.Module)如下:

2.1.2 修改ultralytics/ultralytics/nn/modules/head.py中的class Detect(nn.Module)改动如下:

2.1.3 创建运行pt-to-onnx文件

运行成功就会生成best.pt对应onnx形式的模型文件

2.1 将onnx文件转为ncnn格式

访问一键生成网站一键转换 Caffe, ONNX, TensorFlow 到 NCNN, MNN, Tengineicon-default.png?t=N7T8https://convertmodel.com/

 选择上述生成best.onnx文件,并勾选产生fp16模型

 

转换之后会生成如下两个文件

 

3.准备android项目

GitHub – FeiGeChuanShu/ncnn-androidyolov8: Real time yolov8 Android demo by ncnnicon-default.png?t=N7T8https://github.com/FeiGeChuanShu/ncnn-android-yolov8

3.1 放置ncnn模型文件

3.2 修改yolo.cpp

3.2.1 修改调用的模型名格式

3.2.2 修改模型的输入输出层名字

3.2.3 如下修改自己类别名称

3.2.4 类别的数量 

3.3 修改 yolov8ncnn.cpp

3.3.1 添加模型

3.3.2 添加如下:

3.4 strings.xml

添加移动端模型选择文件

修改完毕,我们可以连接真机,查看模型的部署效果

部署效果

我的部署过程是按照b站这个人流程来的:yolov8部署Android安卓ncnn 全流程 一镜到底,一定行_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV1du411577U/?spm_id_from=333.337.search-card.all.click&vd_source=f37acd6c5a247f45905f51875e5d19e7不知道是哪里出了问题,导致我最后部署的效果是这样的

一直卡在这里,希望有大佬指点。

原文地址:https://blog.csdn.net/weixin_50585794/article/details/132823525

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_13319.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注