MeowMotion es un proyecto en Python que usa la camara web para detectar gestos con la mano mediante MediaPipe. Cuando detecta un puño cerrado, abre el video del gato. Cuando detecta la palma abierta, detiene el video. Toma como referencia la posicion de la punta de los dedos respecto a la base de la mano para detectar el puno cerrado. Toma en cuenta la punta de los dedos con referente a la base para detectar el puño cerrado.
- Windows
- Camara web
- Python 3.10 (Obligatorio)
- Buena iluminacion frontal, preferiblemente luz blanca clara
- Archivo
gato.mp4en la misma carpeta quemain.py
Importante: este proyecto debe ejecutarse con Python 3.10. Versiones mas nuevas, como Python 3.14, pueden causar errores con MediaPipe.
El proyecto usa estas librerias:
opencv-pythonmediapipe==0.10.14
Si no tienes Python 3.10 instalado desde la web, puedes instalarlo con uv:
uv python install 3.10Luego crea un entorno virtual para el proyecto:
uv venv .venv310 --python 3.10Instala las dependencias dentro del entorno:
uv pip install --python .\.venv310\Scripts\python.exe opencv-python mediapipe==0.10.14Desde la carpeta del proyecto, ejecuta:
.\.venv310\Scripts\python.exe main.pyNo es necesario activar el entorno virtual. Ejecutar directamente el Python de .venv310 evita problemas con la politica de scripts de PowerShell.
- Puno cerrado: enciende el video del gato.
- Palma abierta: apaga el video del gato.
- Tecla
Esc: cierra el programa.
Para que Esc funcione, primero haz clic sobre la ventana de la camara principal y luego presiona Esc.
- Usa luz blanca clara y suficiente.
- Evita luz roja, muy calida o muy baja, porque la camara puede cambiar de color o MediaPipe puede confundir los gestos.
- Entre mejor sea la luz y la camara detectará mejor los movimientos.
- Coloca la mano completa dentro del cuadro de la camara.
- Muestra los gestos de forma clara durante al menos un segundo.
- No acerques demasiado la mano a la cara, porque la deteccion puede confundirse.
Usa py -m pip o instala con uv pip, por ejemplo:
uv pip install --python .\.venv310\Scripts\python.exe opencv-python mediapipe==0.10.14No uses:
.\.venv310\Scripts\activateUsa directamente:
.\.venv310\Scripts\python.exe main.pyEse error suele pasar si se usa una version incorrecta de Python o MediaPipe. Asegurate de usar Python 3.10 y mediapipe==0.10.14.
Esto ocurre si la deteccion confunde puno y palma entre frames. Usa mejor iluminacion y manten el gesto quieto. El codigo incluye un filtro de varios frames para que el gesto sea mas estable.