Object detection in ESP32-CAM

Good day, I’m new to edge impulse. May I know is it possible to train object detection of one class object for ESP32-CAM ? Because it shows the object detection can only for raspberry pi/ jetson nano based on image attached. Thank you ! I would be grateful if anyone can provide the steps and solutions.

Hi yes of course you can detect objects on ESP32 CAM.
Classification and object detection example

Hello @sio_yx,

Indeed this is possible using FOMO models.

I’ll ask our Studio engineers if they can fix the description of the Object Detection helper.

Best,

Louis

Hi @norik.badalyan @louis Thanks for the info.
I trained my FOMO model and deployed it to Ai Thinker ESP32-CAM using Arduino IDE.
I followed the instruction Running the impulse using a generated Arduino Library from Detect objects with centroids - Edge Impulse Documentation, but I get the error as shown below. How can I solve this issue?

C:\Users\Asus\AppData\Local\Temp.arduinoIDE-unsaved2022925-10496-1c1zf4b.nxnj\esp32_camera\esp32_camera.ino:116:20: error: ‘CAMERA_FB_IN_PSRAM’ was not declared in this scope
.fb_location = CAMERA_FB_IN_PSRAM,
^
C:\Users\Asus\AppData\Local\Temp.arduinoIDE-unsaved2022925-10496-1c1zf4b.nxnj\esp32_camera\esp32_camera.ino:117:18: error: ‘CAMERA_GRAB_WHEN_EMPTY’ was not declared in this scope
.grab_mode = CAMERA_GRAB_WHEN_EMPTY,
^
C:\Users\Asus\AppData\Local\Temp.arduinoIDE-unsaved2022925-10496-1c1zf4b.nxnj\esp32_camera\esp32_camera.ino:118:1: error: ‘camera_config_t’ has no non-static data member named ‘fb_location’
};
^

exit status 1

Compilation error: ‘CAMERA_FB_IN_PSRAM’ was not declared in this scope

Hello @sio_yx,

You would need to update your board:
https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html#installing-using-arduino-ide

I just followed that procedure (remove the board, changed the link in Additional Board Manager URLs, install ESP32 boards again with the latest version 2.0.5) and it is now working fine with two FOMO models:

Here is for FOMO 96x96 using MobileNetV2 with an alpha of 0.35:

Predictions (DSP: 8 ms., Classification: 785 ms., Anomaly: 0 ms.): 
    face (0.730469) [ x: 40, y: 32, width: 8, height: 8 ]

Here is for FOMO 64x64 using MobileNetV2 with an alpha of 0.1

Predictions (DSP: 3 ms., Classification: 250 ms., Anomaly: 0 ms.): 
    face (0.847656) [ x: 24, y: 16, width: 8, height: 8 ]

Also, make sure to replace the #define CAMERA_MODEL_ESP_EYE with #define CAMERA_MODEL_AI_THINKER

Best,

Louis

2 Likes

Thank you for being so helpful, @louis It works! :slight_smile: