Computer Vision con Alvik

Roni Bandini
3 min readJul 3, 2024

--

Computer Vision con el robot Alvik de Arduino

Después de los tres programas exploratorios de las capacidades del robot Alvik llegó el momento de agregarle Inteligencia Artificial.

La premisa, sobre la base de mi ubicación geográfica, es que este Alvik carece de los papeles para circular y querría evitar el control policial. Entrené entonces un modelo de Machine Learning capaz de reconocer la figura policial de Lego. Pero antes que nada ¿cómo fue implementado el Computer Vision en Alvik?

Figura a reconocer con IA

Computer Vision en Alvik

En las fotos promocionales del robot Alvik se ve una cámara Grove Vision Module de Xiao, pero como aun no está disponible la información desarrollé una integración casera con los recursos disponibles: los pines de alimentación y conectividad.

Create Impulse

Primero entrené un modelo de clasificación con Edge Impulse usando grey scale de46x46 pixels para el Impulse y lo exporté como librería de Arduino con EON compiler optimizado para RAM. Cargué el modelo en una placa Xiao ESP32S3. Le conecté una microcámara y escribí las funciones para enviar las inferencias al Alvik por medio de ESPNow.

Circuito de conexión de la cámara

Escribí en Alvik las rutinas en Micropython para monitorear ESPNow y ante la detección de la figura del policía con certeza mayor a un límite establecido, girar el robot y prender luces rojas.

MicroPython en Alvik

Soporte de la cámara

Encontré listo para usar un case de la placa y cámara muy bien modelado, pero tuve que diseñar un soporte para tornillos m3 en Alvik.

Soporte

Originalmente instalé el soporte en la parte delantera del robot, pero desbalanceaba la trompa así que decidí colocarlo en la parte trasera, donde la rueda giratoria hace contrapeso e invertí la dirección de avance.

Serial monitor mostrando inferencias (también entrené detección de una pelota)

TikTok

Demo

https://youtube.com/shorts/LUumWXJNUPo

Pronto voy a subir el tutorial, el código fuente y el modelo.

Prueba con civiles

Ver también

Alvik busca el estacionamiento

Alvik explora y reporta a pantalla remota

Alvik manejado por control remoto

--

--

Roni Bandini
Roni Bandini

Written by Roni Bandini

Contracultura maker 🛠️ Arte electrónico 💡Inteligencia Artificial 🚀 Embedded System developer