Git Product home page Git Product logo

mnn_demo's Introduction

🚀 如果有帮助,点个star!⭐

移动端MNN部署,摄像头实时捕获视频流进行检测。

iOS:

  • Xcode 12.4
  • macOS 11.2.3
  • iPhone 6sp 13.5.1

Android:

  • Android Studio 4.1.1
  • Win10 20H2
  • CPU:Qualcomm 710 GPU:Adreno 616

安卓已经增加权限申请,但如果还是闪退请手动确认下相关权限是否允许。

Android

从界面中选择需要测试的模型。

iOS

从界面中选择需要测试的模型。

模型

model android iOS from other
NanoDet yes yes Github NCNN TNN

Android:

  • 由于手机性能、图像尺寸等因素导致FPS在不同手机上相差比较大。该项目主要测试MNN框架的使用,具体模型的转换可以去MNN官方查看转换教程。
  • 由于opencv库太大只保留 arm64-v8a/armeabi-v7a 有需要其它版本的自己去官方下载。
  • AS版本不一样可能编译会有各种问题,如果编译错误无法解决、建议使用AS4.0以上版本尝试一下。

iOS:

  • 如果缺少模型请从 "android_MNN_Demo\app\src\main\assets" 复制 .mnn 文件到 "iOS_MNN_Demo\MNNDemo\res" 下。
  • iOS如果opencv2.framework有用到也需要重新下载并替换到工程。

由于MNN不同版本可能会出现功能异常请注意版本,当前使用的是1.0版本。

懒人本地转换(不会上传模型): xxxx -> mnn

轻量级OpenCV:opencv-mobile

🎨 截图

Android iOS

Android

nanodet

iOS

NanoDet

感谢:

mnn_demo's People

Contributors

cmdbug avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

mnn_demo's Issues

使用nanodet训练自己模型,移植到安卓demo中出现闪退报错

  • 参照项目nanodet
  • 修改代码如下:
// NanoDet.h  75行
    std::vector<HeadInfo> heads_info{
            // cls_pred|dis_pred|stride
//            {"792", "795", 8},
//            {"814", "817", 16},
//            {"836", "839", 32},
            {"cls_pred_stride_8", "dis_pred_stride_8", 8},
            {"cls_pred_stride_16", "dis_pred_stride_16", 16},
            {"cls_pred_stride_32", "dis_pred_stride_32", 32},
    };

// MainActivity 315行
    protected void initModel() {
        String path = this.getFilesDir() + File.separator;
        if (USE_MODEL == NANODET) {
//            NanoDet.init("nanodet_320.mnn", path, USE_GPU);
            NanoDet.init("nanodet_jpq_mm.mnn", path, USE_GPU);
        }
    }

// 模型输出label及num_class均有修改
  • 模型转换使用项目中懒人转换工具 流程为torch->onnx->mnn
  • 报错信息如下:
I/WZT_MNN: model path:/data/user/0/com.wzt.mnn/files/nanodet_jpq_mm.mnn
A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 9811 (com.wzt.mnn), pid 9811 (com.wzt.mnn)

请问该如何解决呢?谢谢

大佬求联系

大佬,看了您写的MNN教程,感觉写得很不错,很有帮助。我是知识星球【CV技术指南】的编辑,想问问您能否允许我转载到知识星球中?另外,CV技术指南有上万的计算机视觉相关研究者和从业者,一直在为促进CV行业的发展贡献力量,有很多大佬都在积极参与维护这个社区或组织。目前正在计划对计算机视觉的各种技术做一个完整的技术教程系列,包括CUDA、tensorRT、TVM、openVINO、MNN、openMM、PaddlePaddle、Pytorch源码解读、caffe源码解读、libtorch、Oneflow、Detectron等,计划每个教程由一位大佬来完成,教程将声明作者,以提高您的行业影响力,期望该教程成为大家公认的只要学这个技术就来看这个教程的口碑与影响力,就像视觉SLAM十四讲那样。所以想邀请您为了我们MNN的技术教程进行投稿,当然其他教程也可以,我们也可以一起梳理下写的内容一起交流。此外,我们也有一定的稿费。如果您有兴趣的话,可以考虑一下或者了解更详细的情况。

What is MNN version do u use in this repo

HI thanks for your great works, but I'm wondering what is MNN version do u use in this repo, I tried to load model converted using MNN 1.2.0 this repo keep crashing, thank you

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.