esp-dl  by espressif

Lightweight NN inference framework for ESP series chips in AIoT

created 6 years ago
767 stars

Top 46.4% 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

2 days ago

Responsiveness

1 day

Pull Requests (30d)
2
Issues (30d)
6
Star History
71 stars in the last 90 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), Jeff Hammerbacher Jeff Hammerbacher(Cofounder of Cloudera), and
10 more.

open-r1 by huggingface

0.2%
25k
SDK for reproducing DeepSeek-R1
created 6 months ago
updated 3 days ago
Feedback? Help us improve.