/awesome-ncnn

😎 A Collection of Awesome NCNN-based Projects

Awesome-NCNN

Awesome

NCNN is a high-performance neural network inference framework optimized for the mobile platform. This repo lists some awesome ncnn-based projects. Welcome Star & Fork & Pull Requests!

NCNN 是一个为手机端极致优化的高性能神经网络前向计算框架。本仓库 收集了基于NCNN的很棒的项目。欢迎 Star & Fork & Pull Request 一键三连!

Contents

Application projects

Detection

General object detection, face detection (and landmark) projects on Android platform.

  • ncnn-android-nanodet NanoDet object detection android project with Android ndk camera for best efficiency. Tutorial: android camera nanodet 实时物体检测的高效实现总结

  • thundernet_ncnn The C++ version of thundernet with ncnn.

  • ncnn_nanodet_hand Hand detection on android platform with ncnn (安卓平台人手检测)

  • RobotVision2 Real-time fatigue driving detection on the mobile platform (移动端实时疲劳驾驶检测)

  • hayoou_safe_driving_android Lane detection (with FCW and LDW) android demo based on Yolov4 and Ultra fast lane detection, runs at 8 fps on HONOR 20PRO Kirin 980 phone.

  • nanodet NanoDet, a Super fast and lightweight anchor-free object detection model. 🔥Only 1.8mb and run 97FPS on cellphone, with training and NCNN based inference inside.

  • YOLOv5_NCNN by WZTENG Android/iOS camera preview with YOLOv5 (移动端目标检测,当前项目使用的是YOLOv5的5s模型,摄像头实时捕获视频流进行检测)

  • Face-Mask-Detection-Raspberry-Pi-64-bits Face mask detection on Rasberry Pi (树莓派上的口罩检测)

  • YOLOV5_NCNN_Android by sunnyden YOLOv5 NCNN implementation on Android platform.

  • PFLD-pytorch Practical Facial Landmark Detector with PyTorch and NCNN implementation. (PFLD pytorch Implementation ,自带 ncnn 推理实现)

  • LFFD-with-ncnn LFFD ( A Light and Fast Face Detector for Edge Devices )'s implementation in NCNN.

  • Iris_Landmarks_PyTorch Iris landmarks localization 瞳孔定位,有转ncnn模型脚本

  • ncnn-android-ultraface ultraface android project

  • DBface_ncnn_demo dbface ncnn 人脸检测

  • darknet_face_with_landmark 借鉴AlexeyAB大神的 darknet 做适量修改,用于人脸检测以及关键点检测,支持ncnn推理

  • ncnn_android_face_vehicle ncnn在Android的一个测试,包含了人脸检测(face detection),人脸属性(face attributes),人脸识别(face recognition);车辆检测(Vehicle detection),车牌检测(plate detection),车牌识别(plate recognition);人头检测(head detection)的流程

  • centernet_ncnn Objects as Points, ncnn implementation

  • centerface-ncnn centerface android project

  • PCN-ncnn Progressive Calibration Networks (PCN) is an accurate rotation-invariant face detector running at real-time speed on CPU (CVPR 2018), with ncnn based inference.

  • Ultra-Light-Fast-Generic-Face-Detector-1MB 1MB lightweight face detection model (1MB轻量级人脸检测模型)

Super Resolution

Video Frame Interpolation

  • flowframes Flowframes Windows GUI for video interpolation - Supports DAIN NCNN as well as RIFE Pytorch and NCNN implementations.

  • rife-ncnn-vulkan ncnn implementation of RIFE, Real-Time Intermediate Flow Estimation for Video Frame Interpolation.

  • cain-ncnn-vulkan ncnn implementation of CAIN, Channel Attention Is All You Need for Video Frame Interpolation.

  • dain-ncnn-vulkan ncnn implementation of DAIN, Depth-Aware Video Frame Interpolation.

Wasm

Other

Tools

Model convert tools and wrapper/bindings of ncnn (模型转换工具、对ncnn封装等相关项目)

Wrappers

  • ros_ncnn ROS wrapper for NCNN neural inference framework

  • pyncnn python wrapper of ncnn with pybind11 (Note: now updated in ncnn official repo's python directory)

  • ncnn-lite NCNN lite without C++ support (Note: There is ncnn C API now)

  • NcnnDotNet ncnn .NET wrapper written in C++ and C# for Windows, MacOS and Linux

Optimization

Source Analysis