
Detector de movimiento sensacional en Scratch: el gato huye: chisme 100 del Lince
Jueves por la tarde en Sierra Bermeja. El Lince de la Noche ha instalado una cámara en la entrada de su madriguera para vigilar el sendero, pero tiene un problema: cada vez que pasa algo, debe quedarse mirando la pantalla. «Debería avisarme solo», dice. La Gata Montesa, desde la rama de un alcornoque, responde: «Pues que tu ordenador mire por ti». Vamos a hacer un detector de movimiento.
Introducción
En este chisme construimos un detector de movimiento con Scratch. La cámara del ordenador mira la escena, Scratch compara lo que ve y, cuando detecta movimiento, el gato reacciona. Todo con bloques, sin escribir código de texto.
Puedes hacerlo paso a paso en el tutorial del chisme 100, que incluye los pasos, un recuadro para el profesorado y retos.
Por qué este chisme
Detectar movimiento es una de las tareas más básicas de la visión por ordenador: alarmas, puertas automáticas, cámaras de fauna que se activan solas o juegos que se controlan con el cuerpo. Antes de llegar al reconocimiento de objetos, conviene entender cómo un ordenador percibe el cambio.
Cómo funciona
Una cámara es una sucesión de fotos muy rápidas, cada una formada por miles de píxeles. Para saber si algo se mueve, el programa compara la imagen actual con la anterior: si un píxel ha cambiado mucho, esa zona ha cambiado. Si la cantidad total de cambio supera un umbral, decimos que hay movimiento.
El umbral es la clave: si es demasiado bajo, la sombra de una nube dispara la alarma; si es demasiado alto, el lince puede pasar y no enterarse.
Qué necesitamos
- Un ordenador con cámara web y navegador (Chrome o Edge).
- Scratch (scratch.mit.edu) con la extensión de sensado de vídeo (Video Sensing).
- Un sprite de gato para reaccionar.
Construcción
El tutorial completo está en la página del chisme 100. Resumen de los pasos:
- Activa la cámara con el bloque de encender vídeo y ajusta la transparencia para ver la escena.
- Elige el sprite del gato y crea una variable para guardar la cantidad de movimiento.
- Usa el bloque de movimiento del vídeo para leer cuánto se mueve la escena.
- Con un bloque «si… entonces», comprueba si el movimiento supera el umbral.
- Si hay movimiento, el gato reacciona: se mueve a una posición aleatoria.
- Prueba con la mano delante de la cámara y ajusta el umbral.
Cómo probarlo
Pasa la mano frente a la cámara y comprueba que el gato reacciona. Después quédate quieto y mira si la alarma se apaga. Anota qué umbral funciona mejor con la luz de tu aula.
Qué estamos midiendo realmente
No medimos «personas» ni «animales»: medimos el cambio de luz entre dos imágenes. Por eso el detector no distingue un lince de una cortina que se mueve, ni una sombra de un intruso. La webcam tampoco es un instrumento de precisión: la luz, el ruido de la imagen y la calidad de la cámara cambian el resultado. Medir no significa necesariamente medir bien.
Para el aula
- ¿Qué variable estamos midiendo? ¿En qué unidades?
- ¿Cómo cambia el resultado si encendemos o apagamos la luz de la clase?
- ¿Qué umbral elegimos y por qué? Prueba tres valores y anota los falsos avisos y los movimientos no detectados.
- Si dos ordenadores dan resultados distintos con la misma escena, ¿qué puede explicarlo?
Retos
- Haz que funcione. Consigue que el gato reaccione a tu mano.
- Modifica algo. Cambia el umbral y observa el efecto.
- Añade un sensor. Combínalo con el micrófono, como en el vigilante del ruido.
- Guarda los datos. Anota cuántas veces salta la alarma en un minuto.
- Haz que otro participe. Prueba con un compañero moviéndose al fondo.
Qué hemos aprendido
Un ordenador no «ve» como nosotros: compara imágenes y decide con un umbral. Comparar, decidir y ajustar es la base de muchos sistemas de visión artificial.
Para seguir investigando
- Chisme 05: el vigilante del ruido, que usa el micrófono con la misma lógica de umbral.
- Chisme 06: el ojo del Lince.
- Documentación oficial de Scratch.
- Tutorial de FLL Casts sobre el bloque de movimiento del vídeo en Scratch.


Etiqueta:#AIDARAC, #IESMonterroso, #MONTESTEAM



