Yukino8
Yukino8
具体应该怎样在工程中重新配置ncnn呢?
dalao我看到注释里写需要使用YOLOV5_CUSTOMLAYER的话需要重新编译 ncnn 或去掉 opencv 照着wiki重新编译了ncnn 得到了build-android-aarch64 build-android-armv7两个文件夹 该怎么使用呢? 另一种去掉opencv的话,我尝试了单纯删除掉\android_YOLOV5_NCNN\app\src\main\cpp\opencv 文件夹,结果会在部署时出现以下问题 Build command failed. Error while executing process E:\Android with arguments {Studio\SDK\cmake\3.10.2.4988404\bin\ninja.exe -C E:\YOLOv5_NCNN-master\android_YOLOV5_NCNN\app\.cxx\cmake\debug\arm64-v8a yolov5} ninja: Entering directory `E:\YOLOv5_NCNN-master\android_YOLOV5_NCNN\app\.cxx\cmake\debug\arm64-v8a' ninja: error:...
是下release,然后替换 android_YOLOV5_NCNN\app\src\main\cpp\ncnn 和ncnnvulkan两个文件夹里面的东西吗?
在linux环境下重新编译了ncnn,替换了ncnnvulkan内的所有内容,还是不能run,还有哪些地方需要修改吗? 错误代码:Build command failed. Error while executing process E:\Android with arguments {Studio\SDK\cmake\3.10.2.4988404\bin\ninja.exe -C E:\YOLOv5_NCNN-master\YOLOv5_NCNN-master\android_YOLOV5_NCNN\app\.cxx\cmake\debug\arm64-v8a yolov5} ninja: Entering directory `E:\YOLOv5_NCNN-master\YOLOv5_NCNN-master\android_YOLOV5_NCNN\app\.cxx\cmake\debug\arm64-v8a' [1/1] Linking CXX shared library E:\YOLOv5_NCNN-master\YOLOv5_NCNN-master\android_YOLOV5_NCNN\app\build\intermediates\cmake\debug\obj\arm64-v8a\libyolov5.so FAILED: E:/YOLOv5_NCNN-master/YOLOv5_NCNN-master/android_YOLOV5_NCNN/app/build/intermediates/cmake/debug/obj/arm64-v8a/libyolov5.so cmd.exe /C "cd...
替换为自己编译的ncnn,再打开YoloV5CustomLayer.h 里面设置为 1,可以正常使用YoloV5CustomLayer了。 谢谢dalao!!
虽然能够正常使用YoloV5CustomLayer了,但是还是不能用自己按照nihui大佬的教程https://zhuanlan.zhihu.com/p/275989233?utm_source=qq 训练出来的模型替换(修改了项目中的.cpp和.h文件,包括labels和output)。 观察模型文件发现不管是nihui大佬的还是项目中的.param 文件中都有HardSwish 和 ReLU层,以及yolov5项目中export.py文件中也含有相关的语句 if isinstance(m.act, nn.Hardswish): m.act = Hardswish() elif isinstance(m.act, nn.SiLU): m.act = SiLU() 但是自己最后的模型文件只有Swish层且没有ReLU层,这是最主要的差别。 请问这会是onnx导出过程中的问题吗?
问题解决了!原来是修改labels的时候,错误修改了.h文件,应该修改java目录下的box文件。 修改了labels和.h文件里面的三个output,就可以使用自己的模型文件进行预测了!完美 再次感谢dalao的无私帮助!respect!
> > 问题解决了!原来是修改labels的时候,错误修改了.h文件,应该修改java目录下的box文件。 修改了labels和.h文件里面的三个output,就可以使用自己的模型文件进行预测了!完美 再次感谢dalao的无私帮助!respect! > > 替换自己的YoloV5CustomLayer是下面的步骤吗: 1.下载[cmdbug]dalao的工程,ncnnvulkan是已经编译好了还是需要重新去官网下载并编译?2.修改YoloV5CustomLayer.param的output和.h 里面设置为 1,3.运行安卓工程。 问题:opencv是怎么删除的?我安装作者YoloV5CustomLayer.h文件里面的说明总是报错,[yukinolove8]能不能说明一下实现步骤。 看一下后一个issue。ncnn编译可以去看官方项目页面的how to build
好的谢谢dalao 👍
我是用的u版yolov5s,替换demo里面的yolov5s_customlayer.param .bin ,需要改一下cmakelist.txt,前一个issue里面作者有提供新的cmakelist.txt文件,其次需要自己编译ncnn打开rtti选项,替换ncnnvulkan文件夹里的ncnn库,最后把.h文件里的输出换成自己模型的输出把ENABLE_CUSTOM_LAYER 改为 1修改java目录下box文件里面的labels改成自己的。就可以部署了