移动端NCNN部署,项目支持YOLOv5s、YOLOv4-tiny、MobileNetV2-YOLOv3-nano、Simple-Pose、Yolact、ChineseOCR-lite、ENet、Landmark106、DBFace、MBNv2-FCN与MBNv3-Seg-small模型,摄像头实时捕获视频流进行检测。
- Xcode 11.5
- macOS 10.15.4
- iPhone 6sp 13.5.1
- Android Studio 4.0
- Win10 1909
- Meizu 16x 8.1.0 (CPU:Qualcomm 710 GPU:Adreno 616)
安卓已经增加权限申请,但如果还是闪退请手动确认下相关权限是否允许。
iOS
从界面中选择需要测试的模型。
Android
从界面中选择需要测试的模型。
model | android | iOS | from |
---|---|---|---|
YOLOv5s | yes | yes | Github |
YOLOv4-tiny | yes | yes | Github |
YOLOv3-nano | yes | yes | Github |
YOLOv5s_custom_op | yes | yes | zhihu |
NanoDet | yes | yes | Github |
YOLO-Fastest-xl | yes | bug | Github |
Simple-Pose | yes | yes | Github |
Yolact | yes | yes | Github zhihu |
ChineseOCR_lite | yes | cancel | Github zhihu |
ENet | bug | cancel | Github |
Landmark106 | yes | yes | Github |
DBFace | yes | yes | Github |
MBNv2-FCN | yes | yes | Github |
MBNv3-Seg-small | yes | yes | Github |
- 从 "android_YOLOV5_NCNN\app\src\main\assets" 复制 .param 和 .bin 文件到 "iOS_YOLOv5NCNN\YOLOv5NCNN\res" 下。
- iOS如果提示 net.h 找不到的需要去ncnn官网下载或自行编译.framework替换到工程中,opencv2.framework如果有用到也需要重新下载并替换到工程。
- iOS默认使用的库不包含vulkan与bitcode。
- 由于手机性能、图像尺寸等因素导致FPS在不同手机上相差比较大。该项目主要测试NCNN框架的使用,具体模型的转换可以去NCNN官方查看转换教程。
- 由于opencv库太大只保留 arm64-v8a/armeabi-v7a 有需要其它版本的自己去官方下载。
- ncnn暂时使用vulkan版本,在加载前需要打开加速,本项目中没有打开。如果要用ncnn版本需要修改CMakeLists.txt配置。
- AS版本不一样可能编译会有各种问题,如果编译错误无法解决、建议使用AS4.0以上版本尝试一下。
懒人本地转换(不会上传模型): [xxxx -> ncnn] https://convertmodel.com/
🎨 截图
Android
mbnv2-yolov3-nano | yolov4-tiny | yolov5s |
---|---|---|
![]() |
![]() |
![]() |
simple_pose | yolact | chineseocr_lite_01 |
---|---|---|
![]() |
![]() |
![]() |
chineseocr_lite_02 | ENet | yoloface500k-landmark106 |
---|---|---|
![]() |
![]() |
![]() |
dbface | mbnv2_fcn | mbnv3_seg_small |
---|---|---|
![]() |
![]() |
![]() |
yolov5s_custom_op | nanodet | yolo-fastest-xl |
---|---|---|
none | none | none |
iOS
mbnv2-yolov3-nano | yolov4-tiny | yolov5s |
---|---|---|
![]() |
![]() |
![]() |
yolov5s_custom_op | nanodet | yolo-fastest-xl |
---|---|---|
none | none | none |
mbnv2_fcn | mbnv3_seg_small | simple_pose |
---|---|---|
none | none | none |
yolact | yoloface500k-landmark106 | dbface |
---|---|---|
none | none | none |
感谢:
- sunnyden, dog-qiuqiu, ..., nihui
- https://github.com/Tencent/ncnn