书接上文,完成手机端部署的最后一步!
参考项目的搭建
首先完成参考项目的搭建:
- ios ncnn参考项目地址:https://github.com/cmdbug/YOLOv5_NCNN。
- 下载过来,然后用xcode打开项目。
- 下载的资源文件,默认目录是在安卓目录下,转到 android_YOLOV5_NCNN\app\src\main\assets目录下,将 .param 和 .bin 文件到 “iOS_YOLOv5NCNN\YOLOv5NCNN\res” 下,重复的资源可以直接跳过。
- 下载 ncnn.framework,官网,本文下载的是ncnn-20220420-ios.zip。先把项目中的ncnn.framwork openmp.framework删除。解压文件,然后把它们拉到项目中,如图:
- 下载 OpenCV.framework,官网,我下载的是opencv-4.6.0-ios-framework.zip,同理和上面操作一样。
- 运行项目,可能会报几个错:类似这样的
Expected identifier
,把enum { NO, GAIN, GAIN_BLOCKS, CHANNELS, CHANNELS_BLOCKS };
,把所有的NO改成NO_EXPOSURE_COMPENSATOR即可。 - 这就可以完成了手机上的部署。
按需魔改项目
魔改项目地址:https://github.com/TnoobT/lanedetect_ios_ncnn
该原始项目中有多个模型,我只修改了nanodet部分,点击nanodet按钮即可进入本文魔改的直线检测项目。
其实没啥修改的,准备自己工程的cpp文件,按照他们工程。添加一些头文件,改一下接口等。还有就是在这个文件(ViewController.mm)里修改一下返回画面。读者对照本文涉及的两个项目就可知需要修改什么文件。
手机部署完结喽👏👏👏👏👏👏