可将深度学习算法轻松移植到移动平台高效执行,开发人工智能APP。该项目是为手机端极致优化的前向计算框架,无第三方依赖、跨平台,手机端CPU速度快于已知开源框架,支持多网络模型与GPU加速。【此简介由AI生成】
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 7 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 6 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 8 年前 | ||
| 4 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 4 年前 |
以下内容由 AI 翻译,如有问题请 点此提交 issue 反馈

ncnn
ncnn 是一款专为移动平台优化的高性能神经网络推理框架。从设计之初便充分考虑手机端的部署需求,无第三方依赖,跨平台性能卓越,在移动端 CPU 上的运行速度超越所有已知开源方案。开发者可基于 ncnn 轻松将深度学习算法移植至移动端高效执行,打造智能应用,让人工智能触手可及。目前 ncnn 已广泛应用于腾讯多款产品,如 QQ、QQ空间、微信、天天P图等。
技术交流QQ群:637093648(大佬云集) 入群暗号:卷卷卷卷卷
Pocky群(MLIR YES!): 677104663(高手如林)
Telegram 群组 https://t.me/ncnnyes
Discord 频道 https://discord.gg/YRsxgmF
当前构建状态矩阵
支持主流 CNN 网络架构
兼容绝大多数常用 CNN 模型
- 经典 CNN: VGG AlexNet GoogleNet Inception ...
- 实用 CNN: ResNet DenseNet SENet FPN ...
- 轻量 CNN: SqueezeNet MobileNetV1/V2/V3 ShuffleNetV1/V2 MNasNet ...
- 人脸检测: MTCNN RetinaFace scrfd ...
- 目标检测: VGG-SSD MobileNet-SSD SqueezeNet-SSD MobileNetV2-SSDLite MobileNetV3-SSDLite ...
- 目标检测: Faster-RCNN R-FCN ...
- 目标检测: YOLOV2 YOLOV3 MobileNet-YOLOV3 YOLOV4 YOLOV5 YOLOX ...
- 目标检测: NanoDet
- 图像分割: FCN PSPNet UNet YOLACT ...
- 姿态估计: SimplePose ...
使用指南
Linux/Windows/macOS/树莓派3/Android/NVIDIA Jetson/iOS/WebAssembly/全志D1/龙芯2K1000 平台编译指南
- Linux/NVIDIA Jetson/树莓派3 编译
- Windows x64 VS2017 编译
- macOS 编译
- ARM Cortex-A 系列交叉编译
- 海思平台交叉编译
- Android 编译
- macOS Xcode iOS 编译
- WebAssembly 编译
- 全志 D1 编译
- 龙芯 2K1000 编译
- Android Termux 编译
AlexNet 模型使用教程 含详细步骤,新手必读 😃
ncnn 组件使用指北 AlexNet 篇 附带完整操作流程,入门首选 😃
常见问题
核心特性
- 支持卷积神经网络,兼容多输入与多分支结构,可选择性计算部分分支
- 零第三方库依赖,无需 BLAS/NNPACK 等计算框架支持
- 纯 C++ 实现,跨平台运行,完美支持 Android/iOS 等移动端
- ARM NEON 汇编级深度优化,计算效率行业领先
- 精细内存管理与数据结构设计,内存占用极致压缩
- 支持多核并行计算,智能调度 ARM big.LITTLE 异构架构
- 基于新一代低开销 Vulkan API 的 GPU 加速支持
- 高扩展性模型设计,支持 8bit 量化和半精度浮点存储,可导入 caffe/pytorch/mxnet/onnx/darknet/keras/tensorflow(mlir) 模型
- 支持内存零拷贝直接引用加载模型
- 允许注册自定义算子实现功能扩展
- 没错,就是这么强悍,无惧内卷 QvQ
平台兼容矩阵
- ✅ = 已验证流畅运行且深度优化
- ✔️ = 已验证兼容但未充分优化
- ❔ = 理论兼容待验证
- / = 不适用
| Windows | Linux | Android | macOS | iOS | |
|---|---|---|---|---|---|
| intel-cpu | ✔️ | ✔️ | ❔ | ✔️ | / |
| intel-gpu | ✔️ | ✔️ | ❔ | ❔ | / |
| amd-cpu | ✔️ | ✔️ | ❔ | ✔️ | / |
| amd-gpu | ✔️ | ✔️ | ❔ | ❔ | / |
| nvidia-gpu | ✔️ | ✔️ | ❔ | ❔ | / |
| qcom-cpu | ❔ | ✔️ | ✅ | / | / |
| qcom-gpu | ❔ | ✔️ | ✔️ | / | / |
| arm-cpu | ❔ | ❔ | ✅ | / | / |
| arm-gpu | ❔ | ❔ | ✔️ | / | / |
| apple-cpu | / | / | / | ✔️ | ✅ |
| apple-gpu | / | / | / | ✔️ | ✔️ |
示例项目
- https://github.com/nihui/ncnn-android-squeezenet
- https://github.com/nihui/ncnn-android-styletransfer
- https://github.com/nihui/ncnn-android-mobilenetssd
- https://github.com/moli232777144/mtcnn_ncnn
- https://github.com/nihui/ncnn-android-yolov5
- https://github.com/nihui/ncnn-android-scrfd 🤩
