ESP32 / Edge Impulse / Embedded AI
ESP32 AI Camera Web Server
An embedded AI computer vision project using an ESP32 camera, a live web streaming interface, and an Edge Impulse image classification model to recognize objects in real time.
Live browser streamOn-device inferenceESP32 prototype
Overview
This project combines live camera streaming with edge AI object recognition. The ESP32 hosts a local web server so the camera feed can be viewed directly in a browser, while a quantized Edge Impulse model runs alongside the stream and classifies objects through the Serial Monitor.
The result is a compact embedded AI pipeline that covers data collection, training, deployment, streaming, and real-time inference on constrained hardware.
What It Recognizes
- apple
- orange
- cucumber
- manette/controller
- background
Technologies Used
- ESP32 Wrover Module
- ESP32 Camera
- Arduino IDE
- Edge Impulse
- Python
- WiFi camera web server
- Image classification model
- Quantized int8 Arduino deployment
Key Features
- Live camera stream accessible from a browser
- Object classification directly on the ESP32
- Custom dataset collected using the ESP32 camera
- Python script to automatically capture dataset images
- Edge Impulse model trained on custom object classes
- Static IP configuration for stable local access
- Real-time recognition demo with browser streaming
How It Works
- 1. The ESP32 camera captures images and hosts a local web server for the video stream.
- 2. A Python script was used to collect training images from the ESP32 camera endpoint.
- 3. The dataset was uploaded to Edge Impulse and used to train an image classification model.
- 4. The model was exported as a quantized int8 Arduino library.
- 5. The exported model was integrated into the ESP32 CameraWebServer code.
- 6. The final system streams video in the browser while running AI predictions on the ESP32.
Results
- The final demo successfully shows the ESP32 camera recognizing multiple objects in real time.
- The project demonstrates a complete embedded AI pipeline: dataset collection, model training, deployment to microcontroller, live inference, and web streaming.
Demo Video
Watch the demo directly on this page.