esp-dl  by espressif

Lightweight NN inference framework for ESP series chips in AIoT

Created 6 years ago
793 stars

Top 44.3% on SourcePulse

GitHubView on GitHub
Project Summary

ESP-DL is a lightweight neural network inference framework tailored for Espressif's AIoT applications, enabling developers to deploy AI models on ESP series chips. It provides APIs for model loading, debugging, and execution, integrating seamlessly with Espressif's SDKs.

How It Works

ESP-DL utilizes a custom .espdl model format, a FlatBuffers-based alternative to ONNX, for efficient, zero-copy deserialization. It features optimized operator implementations (Conv, Gemm, Add, Mul), a static memory planner for optimal RAM allocation, dual-core scheduling for compute-intensive operations (Conv2D, DepthwiseConv2D), and 8-bit LUT activations to accelerate inference.

Quick Start & Requirements

  • Install: Requires ESP-IDF release/v5.3 or above. Quantization tool esp-ppq can be installed via pip install git+https://github.com/espressif/esp-ppq.git.
  • Prerequisites: ESP-IDF, Python. ONNX, PyTorch, or TensorFlow models must be converted to ONNX first for quantization.
  • Resources: Quantization and deployment details are available in the ESP-DL Operator Support State.

Highlighted Details

  • Supports quantization of ONNX, PyTorch, and TensorFlow models via ESP-PPQ.
  • Offers pre-trained models for tasks like pedestrian detection, face detection/recognition, and image classification (MobileNetV2).
  • Includes recent support for YOLO11n and ESPDet-Pico (cat detection).
  • Features automatic dual-core scheduling and 8-bit LUT activations for performance.

Maintenance & Community

The project is actively maintained by Espressif, with recent updates including YOLO11n support and ESPDet-Pico. Contributions are welcomed.

Licensing & Compatibility

The repository does not explicitly state a license in the provided README. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The .espdl model schema was updated in v3.1.0, with new models not compatible with previous versions. Users must ensure their models' operators are supported by ESP-DL.

Health Check
Last Commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
5
Star History
19 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Luis Capelo Luis Capelo(Cofounder of Lightning AI), and
3 more.

LitServe by Lightning-AI

0.3%
4k
AI inference pipeline framework
Created 1 year ago
Updated 1 day ago
Feedback? Help us improve.