你将收获

掌握YOLOX的Android手机部署方法

学习YOLOX的Android手机部署代码

适用人群

希望学习YOLOX目标检测在Android(安卓)手机上部署方法的学员

课程介绍

YOLOX是旷视科技新近推出的高性能实时目标检测网络,性能超越了YOLOv3/YOLOv4 /YOLOv5 

本课程在Windowsa上详细演示YOLOX(YOLOX-nano和YOLOX-tiny)Android(安卓)手机进行部署过程。

内容包括:安装软件和PyTorch,克隆和安装YOLOX,导出ONNX模型,导出NCNN模型文件,安装Android Studio,准备android项目文件,手机连接电脑并编译软件,项目代码解析。

相关课程:

YOLOX目标检测实战:训练自己的数据集》https://edu.csdn.net/course/detail/35586

YOLOX目标检测实战:TensorRT加速部署》https://edu.csdn.net/course/detail/35716

YOLOX目标检测实战:OpenVINO部署》https://edu.csdn.net/course/detail/35791

 

YOLOX目标检测实战:Flask部署》https://edu.csdn.net/course/detail/35815

手机部署展示

课程内容

课程目录

讨论留言
73 条回复 进入帖子
切换为未回复评论
切换为时间正序
请发表友善的回复…
发表回复
oym0509220212023-06-08
  • 打赏
  • 举报
回复

您好,按照学习教程,我转出来的yolox_tiny.param中部分内容为:7767517
235 268
Input images 0 1 images
Split splitncnn_input0 1 2 images images_splitncnn_0 images_splitncnn_1
Crop /backbone/backbone/stem/Slice 1 1 images_splitncnn_1 /backbone/backbone/stem/Slice_output_0 -23309=1,0 -23310=1,2147483647 -23311=1,1
Split splitncnn_0 1 2 /backbone/backbone/stem/Slice_output_0 /backbone/backbone/stem/Slice_output_0_splitncnn_0 /backbone/backbone/stem/Slice_output_0_splitncnn_1
Crop /backbone/backbone/stem/Slice_1 1 1 /backbone/backbone/stem/Slice_output_0_splitncnn_1 /backbone/backbone/stem/Slice_1_output_0 -23309=1,0 -23310=1,2147483647 -23311=1,2
Crop /backbone/backbone/stem/Slice_2 1 1 /backbone/backbone/stem/Slice_output_0_splitncnn_0 /backbone/backbone/stem/Slice_2_output_0 -23309=1,1 -23310=1,2147483647 -23311=1,2
Crop /backbone/backbone/stem/Slice_3 1 1 images_splitncnn_0 /backbone/backbone/stem/Slice_3_output_0 -23309=1,1 -23310=1,2147483647 -23311=1,1
Split splitncnn_1 1 2 /backbone/backbone/stem/Slice_3_output_0 /backbone/backbone/stem/Slice_3_output_0_splitncnn_0 /backbone/backbone/stem/Slice_3_output_0_splitncnn_1
Crop /backbone/backbone/stem/Slice_4 1 1 /backbone/backbone/stem/Slice_3_output_0_splitncnn_1 /backbone/backbone/stem/Slice_4_output_0 -23309=1,0 -23310=1,2147483647 -23311=1,2
Crop /backbone/backbone/stem/Slice_5 1 1 /backbone/backbone/stem/Slice_3_output_0_splitncnn_0 /backbone/backbone/stem/Slice_5_output_0 -23309=1,1 -23310=1,2147483647 -23311=1,2
Concat /backbone/backbone/stem/Concat 4 1 /backbone/backbone/stem/Slice_1_output_0 /backbone/backbone/stem/Slice_4_output_0 /backbone/backbone/stem/Slice_2_output_0 /backbone/backbone/stem/Slice_5_output_0 /backbone/backbone/stem/Concat_output_0 0=0
Convolution /backbone/backbone/stem/conv/conv/Conv 1 1 /backbone/backbone/stem/Concat_output_0 /backbone/backbone/stem/conv/conv/Conv_output_0 0=24 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 15=1 16=1 5=1 6=2592
Swish /backbone/backbone/stem/conv/act/Mul 1 1 /backbone/backbone/stem/conv/conv/Conv_output_0 /backbone/backbone/stem/conv/act/Mul_output_0,按照教程,修改成yolov5focus时,后面数字携程concat倒数第2个数字,但这里倒数第二个不是数字,应该如何修改呢?

御清风zhou2023-09-15
  • 举报
回复
@oym050922021我也是同样的问题,解决了?
oym0509220212023-06-07
  • 打赏
  • 举报
回复

你好,我下载的ncnn-android-yolox中没有java,cpp等多个文件?

py_Blance2023-03-07
  • 打赏
  • 举报
回复

老师, CV::imwrite(), 保存图片会报错

Jos19452023-02-22
  • 打赏
  • 举报
回复

protobuf编译出错,请问老师如何解决
CMake Warning:
Ignoring extra path from command line:

"E:/protobuf-3.4.0/build-vs2022/DCMAKE_INSTALL_PREFIX"

CMake Warning:
Ignoring extra path from command line:

"Dprotobuf_MSVC_STATIC_RUNTIME=OFF"

CMake Error: Unknown argument -
CMake Error: Run 'cmake --help' for all supported options.

炼丹师小陈2023-05-15
  • 举报
回复
@Jos1945兄弟问题解决了么
一起搞学习2022-05-05
  • 打赏
  • 举报
回复
老师有课程的交流群吗,遇到了一些问题想咨询一下
一起搞学习2022-05-06
  • 举报
回复
@一起搞学习老师我加群了,帮忙通过一下
一起搞学习2022-05-06
  • 举报
回复
@一起搞学习老师我加群了,帮忙通过一下
一起搞学习2022-04-19
  • 打赏
  • 举报
回复
老师我在修改yolox_nano.param和yolox_tiny.param文件的时候,为什么contact那一行上面的数据和你课程上的是不一样的,我的是这样子的Concat Concat_40 4 1 onnx::Concat_652 onnx::Concat_672 onnx::Concat_662 onnx::Concat_682 input 0=0就修改不了,不管我是用683还是682去优化都不行。这是为什么
bai666ai2022-04-19
  • 举报
回复
@一起搞学习

是你用的YOLOX的权重文件是否是课程网盘上下载的?

伞థing2022-04-18
  • 打赏
  • 举报
回复
老师,只识别图片,不进行使用摄像头识别,如何调整代码呢
bai666ai2022-04-18
  • 举报
回复
@伞థing

那可以改下菜单部分的代码

一起搞学习2022-04-09
  • 打赏
  • 举报
回复
老师,我在安装ncnn的使用,在输入nmake代码之后,会出现这个错误是为什么 NMAKE : fatal error U1073: 不知道如何生成“D:\protobuf-3.4.0\build vs2019\install\lib\libprotobuf.lib” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop.
一起搞学习2022-04-09
  • 举报
回复
@一起搞学习是的,是使用了课程中的权重
bai666ai2022-04-09
  • 举报
回复
@一起搞学习

再重新按课程网盘上的版本做一下试试

_疯_2022-04-05
  • 打赏
  • 举报
回复
我运行出来的.param 文件格式好像跟课程上的不一样: Convolution Conv_41 1 1 input onnx::Sigmoid_1177 0=16 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 15=1 16=1 5=1 6=1728 Swish Mul_43 1 1 onnx::Sigmoid_1177 input.7 ConvolutionDepthWise Conv_44 1 1 input.7 onnx::Sigmoid_1180 0=16 1=3 11=3 2=1 12=1 3=2 13=2 4=1 14=1 15=1 16=1 5=1 6=144 7=16 课程中是这样的: Convolution Conv_41 1 1 683 1177 0=16 1=3 4=1 5=1 6=1728 Swish Mul_43 1 1 1177 687 ConvolutionDepthWise Conv_44 1 1 687 1180 0=16 1=3 3=2 4=1 5=1 6=144 7=16
bai666ai2022-04-06
  • 举报
回复
@_疯_

你是用的课程中的权重文件吗?

_疯_2022-04-05
  • 打赏
  • 举报
回复
将自己数据集训练好的pth文件转化为onnx文件报错 我输入的命令:python tools/export_onnx.py -n yolox-s -c weights/best_ckpt.pth --output-name weights/best_ckpt.onnx 报错内容:RuntimeError: Error(s) in loading state_dict for YOLOX: size mismatch for head.cls_preds.0.weight: copying a param with shape torch.Size([6, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([80, 128, 1, 1]). size mismatch for head.cls_preds.0.bias: copying a param with shape torch.Size([6]) from checkpoint, the shape in current model is torch.Size([80]). size mismatch for head.cls_preds.1.weight: copying a param with shape torch.Size([6, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([80, 128, 1, 1]). 我的解答思路:好像是我的数据集只有6种分类,但是export_onnx.py默认是80种分类。但是我不知道在哪改这个默认值
bai666ai2022-04-05
  • 举报
回复
@_疯_

你看下export_onnx.py中是否有语句涉及了类别数目

m0_462219822022-03-17
  • 打赏
  • 举报
回复
我用的是中文标签 识别图片不会出现乱码 但是开启摄像头就会乱码
m0_462219822022-03-17
  • 举报
回复
@m0_46221982请问要如何改进
bai666ai2022-04-09
  • 举报
回复
@m0_46221982

摄像头显示应该还不支持中文显示。可看下源码讲解部分并修改代码,尝试中文的支持

m0_462219822022-03-17
  • 打赏
  • 举报
回复
如何将标签改成中文的 我部署到安卓上中文标签全是乱码了
bai666ai2022-03-19
  • 举报
回复
@m0_46221982

可以在网上搜下如何在安卓上支持中文标签

weixin_419487402022-03-15
  • 打赏
  • 举报
回复
(py3.8) H:\vs\Community\protobuf-3.4.0\build-vs2019>cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake CMake Error at H:/cmake/share/cmake-3.23/Modules/CMakeDetermineSystem.cmake:181 (file): file failed to open for writing (No such file or directory): H:/vs/Community/protobuf-3.4.0/build-vs2019/CMakeFiles/CMakeOutput.log Call Stack (most recent call first): CMakeLists.txt:12 (project) CMake Error: Could not open file for write in copy operation H:/vs/Community/protobuf-3.4.0/build-vs2019/CMakeFiles/3.23.0-rc3/CMakeSystem.cmake.tmp CMake Error: : System Error: No such file or directory CMake Error at H:/cmake/share/cmake-3.23/Modules/CMakeDetermineSystem.cmake:193 (configure_file): configure_file Problem configuring file Call Stack (most recent call first): CMakeLists.txt:12 (project) CMake Error at H:/cmake/share/cmake-3.23/Modules/CMakeDetermineCompilerId.cmake:321 (file): file prob
bai666ai2022-03-15
  • 举报
回复
@weixin_41948740

好像是文件路径不对,按照课程中的步骤再检查一下

m0_462219822022-03-15
  • 打赏
  • 举报
回复
E/Surface: dequeueBuffer failed (No such device) E/Surface: Surface::unlockAndPost failed, no locked buffer
bai666ai2022-03-16
  • 举报
回复
@m0_46221982

再按课程的步骤检查一下

m0_462219822022-03-15
  • 打赏
  • 举报
回复
我用自己训练后的tiny模型替代了你的模型 但是什么结果都没有 没有替换的nano模型依旧正常 这是怎么回事 D/ZrHung.AppEyeUiProbe: not watching, wait.
bai666ai2022-03-16
  • 举报
回复
@m0_46221982

可能要改一些参数

m0_462219822022-03-14
  • 打赏
  • 举报
回复
自己的模型也没有预测结果
bai666ai2022-03-16
  • 举报
回复
@m0_46221982

再按课程的步骤检查一下

m0_462219822022-03-14
  • 打赏
  • 举报
回复
删掉原来的模型 换成自己的就会发生闪退
bai666ai2022-03-16
  • 举报
回复
@m0_46221982

再按课程的步骤检查一下

m0_462219822022-03-14
  • 打赏
  • 举报
回复
运行不了 发生闪退
bai666ai2022-03-16
  • 举报
回复
@m0_46221982

再按课程的步骤检查一下

m0_462219822022-03-14
  • 打赏
  • 举报
回复
不使用ncnn优化可以吗 我ncnn老是安装失败
bai666ai2022-03-14
  • 举报
回复
@m0_46221982

可以试试不使用ncnn优化

m0_462219822022-03-13
  • 打赏
  • 举报
回复
换成自己家的模型会发生闪退
bai666ai2022-03-13
  • 举报
回复
@m0_46221982

注意使用自己的模型时代码中是否有参数需要修改

_疯_2022-04-05
  • 举报
回复
@m0_46221982我的也发生闪退了,安卓代码中哪些参数需要修改呀?
加载更多回复