Home

Awesome

Official repository is now located here: https://github.com/edgeimpulse/example-esp32-cam

ESP32 Cam and Edge Impulse

How to run custom inference on a ESP32 cam using Edge Impulse.

Material

esp32-cam

This code has been tested the AI Thinker ESP32 Cam module. It should work the same with the Wrover board or an board that has PSRAM.

To use this board, please select your board in the Arduino code the following lines:

// Select camera model

#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
//#define CAMERA_MODEL_ESP_EYE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_PSRAM // Has PSRAM
//#define CAMERA_MODEL_M5STACK_V2_PSRAM // M5Camera version B Has PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_ESP32CAM // No PSRAM
//#define CAMERA_MODEL_AI_THINKER // Has PSRAM
//#define CAMERA_MODEL_TTGO_T_JOURNAL // No PSRAM

Steps

Due to the board limitations, you may need to train your model with 96x96 images and use the MobileNetV1 0.01:

creat-impulse

Basic Image Classification Example

Note: On Sept 9th 2021, the issue predicting always the same classes has been fixed

Advanced Image Classification Example (Deprecated)

Note: Deprecated since Basic Example has been fixed and also support bilinear interpolation technique to resize the frame.

Note 2: Here we use the ESP SDK to resize the image in RGB888 format using the bilinear interpolation technique. You can see the funtion declaration on Espressif's Github repository.

Ressources

Note: Theses tutorials / repositories have been used to create this project: