Learning Image Classification on embedding devices (ESP32-CAM)
More and more, we are facing an embedding machine learning revolution. And when we talk about Machine Learning (ML), the first thing that comes to mind is Image Classification, a kind of ML Hello World!
One of the most popular and affordable development boards that already integrates a camera is the ESP32-CAM, which combines an Espressif ESP32-S MCU chip with an ArduCam OV2640 camera.

The ESP32 chip is so powerful that it can even process images. It includes I2C, SPI, UART communications, and PWM and DAC outputs.
Parameters:
- Working voltage: 4.75-5.25V
- splash: Default 32Mbit
- RAM: Internal 520KB + external 8MB PSRAM
- Wi-Fi: 802.11b/g/n/e/i
- Bluetooth: Bluetooth 4.2BR/EDR and BLE standard
- Support interface (2Mbps): UART, SPI, I2C, PWM
- Support TF card: maximum support 4G
- IO port: 9
- Serial port rate: default 115200bps
- Spectrum range: 2400 ~2483.5MHz
- Antenna form: onboard PCB antenna, gain 2dBi
- Image output format: JPEG (only OV2640 support), BMP, GRAYSCALE

Below, the general board pinout:

Note that this device has not a USB-TTL Serial module integrated, so to upload a code to the ESP32-CAM will be necessary a special adapter as below:

Or a USB-TTL Serial Conversion Adapter as below:

If you want to learn about the ESP32-CAM, I strongly recommend the books and tutorials of Rui Santos.
Continue lendo…