admin 管理员组文章数量: 887021
一、下载 & 配置
1.1 下载源文件
- 【ncnn-android-yolov5下载传送门】
- 【Tencent/ncnn下载传送门】
下拉
下载该版本是因为自带vulkan加速
- Android studio安装
【Android studio下载传送门】
建议是不要安装在c盘
正常安装完成后,customize---->Configure
接着Appearance & Behavior----->System Settings---->Android SDK
(1)SDK Tools
(2)SDK Platforms
我个人选择的是Android 11.0
进入到license Agreement直接accept
【参考文档】Android studio安装
1.2 配置AS
Step1:解压并移动文件
解压文件夹之后,打开ncnn-xxxxx-android-vulkan-shared全选复制到ncnn-android-yolov5-master\app\src\main\jni
Step2:打开文件 并 开始构建
在 Android studio选择ncnn-android-yolov5-master\build.gradle打开该项目
报错1:cmake版本问题
CMake '3.10.2' was not found in PATH or by cmake.dir property.
- CMake '3.22.1' found in SDK did not match requested version '3.10.2'.
- CMake '3.24.1' found in PATH did not match requested version '3.10.2'.
解决办法
:下载对应版本
报错2:文件路径问题
By not providing "Findncnn.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "ncnn", but
CMake did not find one.
修改cmake中的路径
报错3:应该是版本问题
解决方法:
1.访问 https://services.gradle/distributions/,并查看最新版的gradle。
2.修改项目中”gradle/wrapper/gradle-wrapper.properties”里下面属性值
(这篇博客是11.1写的,时间比较靠近的话可以直接抄作业)
同时build.gradle中classpath和gradle文件夹下gradle-wrapper.properties文件里的distributionUrl配置需要匹配
各个 Android Gradle 插件版本所需的 Gradle 版本
最后模型就构建好了
Step3:连接安卓手机
以oppo findx2为例
- 在设置中搜索版本号,多次点击进入开发者模式
- 系统设置—>开发者选项
开发者选项 和 USB调试 都打开 - 手机连接上后会弹出 密钥之类的东西 全部确认。
- 选择传输文件/Android Auto
最终在Android studio右上角就会出现手机的型号
报错:INSTALL_FAILED_TEST_ONLY
Caused by: org.gradle.api.internal.provider.AbstractProperty$PropertyQueryException: Failed to calculate the value of task ':app:compileDebugJavaWithJavac' property 'options.generatedSourceOutputDirectory'.
【参考方案】编译安装App报错INSTALL_FAILED_TEST_ONLY终极解决方案
我的源文件是没有gradle.properties的,直接创建之后拖到文件夹下就可以了
android.useAndroidX=true
android.enableJetifier=true
android.injected.testOnly=false
包含着这三行就可以正常下载了,结果如下图
可能是手机原因。cpu居然比gpu快
二. 使用自己的权重
2.0 环境
我的环境是
可以直接
pip install 名称== 版本号
2.1 导出onnx模型
在yolov5文件夹中
python export.py --weights 权重路径 --include onnx
简化onnx文件
python -m onnxsim 上一步导出的onnx文件路径 yolov5s-sim.onnx
2.2 将权重文件转化为bin文件和paras文件
建议直接参考该文档,我就不重复造轮子了
cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install -DProtobuf_INCLUDE_DIR=G:\model_compression_quantization\protobuf-3.4.0\build_vs2019\install\include -DProtobuf_LIBRARIES=G:\model_compression_quantization\protobuf-3.4.0\build_vs2019\install\lib\libprotobuf.lib -DProtobuf_PROTOC_EXECUTABLE=G:\model_compression_quantization\protobuf-3.4.0\build_vs2019\install\bin\protoc.exe -DNCNN_VULKAN=OFF ..
【参考文档】ONNX2NCNN
路径上一定不要有中文不然会出错
2.3 AS
三.其他操作
3.1连接手机摄像头:
python detect.py --source http://admin:admin@10.xxx.xxx.xxx:xxxx
【参考文件】yolov5通过ncnn在安卓平台部署
【参考文件】Windows环境下yolov5移植到Android手机上的详细步骤
版权声明:本文标题:yolov5模型在安卓android平台上部署(一)demo运行 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1726385841h950087.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论