Publicado por

Aplicación odontológica Healthysmile- «El dentista oveja»

Publicado por

Aplicación odontológica Healthysmile- «El dentista oveja»

El Dentista Oveja Autora: Nathalia Carolina Padrón Bavutti Titulo: Aplicación Odontológica, «El dentista Oveja» Preview Página en vivo Click para acceder a…
El Dentista Oveja Autora: Nathalia Carolina Padrón Bavutti Titulo: Aplicación Odontológica, «El dentista Oveja» Preview Página en vivo Click…

El Dentista Oveja

Autora: Nathalia Carolina Padrón Bavutti
Titulo: Aplicación Odontológica, «El dentista Oveja»

Preview

Página en vivo

Click para acceder a la Versión Live

Github:https://github.com/NattyDCI/ml5-facemesh-project

Sobre el proyecto

Este proyecto explora experiencias interactivas para la primera infancia utilizando detección facial en tiempo real para fomentar hábitos de higiene a través del juego.

En el laboratorio HealthySmile, nos enfocamos en diseñar experiencias digitales que combinan aprendizaje, emoción e interacción.

Concepto y diseño del personaje

– La oveja se percibe como un animal suave, tranquilo y amigable, ideal para niños de 2 a 4 años.
– Sus formas simples funcionan bien en filtros faciales.
– Evoca ideas de limpieza y cuidado (lana blanca, suavidad).
– La estética de Halloween se plantea como un “terror seguro”, evitando generar miedo.
– Su diseño ligeramente extraño (cicatriz, herida) genera curiosidad sin rechazo.

La oveja funciona como un puente entre la fantasía y el aprendizaje.

Bocetos
Este fue mi boceto inicial

Screenshot

⚙️¿Cómo funciona?

1.Pantalla de carga

Una barra de progreso se completa mientras se cargan los recursos.

2. Activación de cámara

El usuario debe activar la cámara para comenzar la experiencia.

3. Interacción facial

– Aparece un filtro facial de oveja con temática de Halloween.

Cuando el niño/a abre la boca:

– Aparecen partículas similares al jabón
– Elementos decorativos se animan (dientes y calabazas)
– Salen burbujas de la boca

4.Sistéma de feedback

Cada 5 segundos de interacción correcta:

– Aparece un mensaje motivador
– Un temporizador visual se llena y se vuelve verde
– Un icono de “pulgar arriba” refuerza el logro
– Esta burbuja fue pensaba principalmente como feedback visual, ya que los niños aún no leen.


5.Fin de interacción

Cuando se cierra la boca:

– Las animaciones se detienen y las burbujas desaparecen.

Acerca de la implementación
He desarrollado este proyecto utilizando p5.js y ml5.js.
Con p5.js gestiono toda la parte visual e interactiva, incluyendo el renderizado, la interfaz, las animaciones y el uso de WEBGL para trabajar con una malla facial.

Para la detección facial en tiempo real utilizo FaceMesh de ml5.js, que me permite identificar puntos clave del rostro. A partir de estos datos, detecto cuándo la boca está abierta y activo una lógica interactiva basada en tiempo, generando feedback visual como mensajes, contador y animaciones de burbujas.

Además, utilizo una malla facial triangulada con coordenadas UV para aplicar una textura que se adapta al movimiento y orientación de la cara en tiempo real.

En conjunto, combino visión por computador y gráficos interactivos para crear una experiencia educativa y gamificada.

Tecnología

– ml5.js (FaceMesh) – para reconocimiento facial en tiempo real
– p5.js – for visualizaciiones creativas y sketches
– Electron – para empacar el proyecto como una plataforma para uso en Desktop y Mobile

Recursos

FaceMesh (ml5.js)

– https://learn.ml5js.org/#/reference/facemesh

Utilizado para la detección de puntos faciales en tiempo real.

Learning Resource (Coding Train)

– Daniel Shiffman – The Coding Train

Este tutorial fue fundamental para implementar FaceMesh.

Technologies Used Tecnologías utilizadas

– p5.js 1.9.x
– ml5.js 1.2.2

– https://beta.p5js.org/
– https://p5js.org/reference/

Debate0en Aplicación odontológica Healthysmile- «El dentista oveja»

No hay comentarios.

Publicado por

Reto 2. Desktop App – Interacción con cámara

Publicado por

Reto 2. Desktop App – Interacción con cámara

Índice Introducción y objetivo Decisiones técnicas librería de reconocimiento Arquitectura y estructura del código Decisiones estéticas Flujo de desarrollo 1.     Introducción y objetivo En esta práctica, se ha desarrollado una aplicación de escritorio interactiva con el objetivo de fomentar buenos hábitos de salud dental en niños. La idea principal es la siguiente: el usuario debe mantener la boca abierta el máximo tiempo posible, simulando el gesto de tener la boca abierta mientras un dentista o mientras se realizan ejercicios de…
Índice Introducción y objetivo Decisiones técnicas librería de reconocimiento Arquitectura y estructura del código Decisiones estéticas Flujo de desarrollo…

Índice

  1. Introducción y objetivo
  2. Decisiones técnicas librería de reconocimiento
  3. Arquitectura y estructura del código
  4. Decisiones estéticas
  5. Flujo de desarrollo

1.     Introducción y objetivo

En esta práctica, se ha desarrollado una aplicación de escritorio interactiva con el objetivo de fomentar buenos hábitos de salud dental en niños. La idea principal es la siguiente: el usuario debe mantener la boca abierta el máximo tiempo posible, simulando el gesto de tener la boca abierta mientras un dentista o mientras se realizan ejercicios de limpieza dental.

La aplicación se ha construido con p5.js para la parte visual y de partículas, MediaPipe FaceLandmarker para la detección facial en tiempo real, y Electron para empaquetar todo como una aplicación de escritorio.

2.     Decisiones técnicas

Dentro de las diferentes opciones se planteó utilizar las siguientes:

  • js (la sugerida por el enunciado)
  • MediaPipe Task Vision código abierto de Google

Finalmente se escogió MediPipe por dos razones de peso una de ellas abordando las capacidades tecnológicas del modelo y la otra de capacidad de trabajo. Y es que la primera son los 478 puntos de referencia que MediaPipe coge de la cara lo que da un grado mucho mayor de precisión y la segunda es la capacidad de delegar el trabajo a la CPU creando programas mucho más factibles a nivel de rendimiento.

3.     Arquitectura y estructura del código

Para no entrar en detalle muy técnico voy a indicar de forma general la estructura de este código:

  • Tenemos el archivo man.js que es la entrada de Electron quien gestiona las ventanas, permisos y arranca el proyecto como tal.
  • html carga la HUD es decir la parte visual y los diferentes scripts.
  • css solicitado por el enunciado independiente y desarrollado por nosotros, con fuentes de Google fonts de Halloween, por ejemplo.
  • js y particleSystem.js gestionan los estilos, timings y condicionales de las partículas
  • js se encarga de definir las constantes globales, como por ejemplo el parámetro de obertura de boca.

4.     Decisiones estéticas

La paleta de colores y el estilo del proyecto se han establecido en base a diferentes referencias que he encontrado por internet, de todas estas he localizado los colores comunes que son los siguientes y los que se han utilizado finalmente en el proyecto.

  1. Malva / Violeta (#6B2D7B, #4A1D5C) — color principal de fondo y elementos de la UI
  2. Naranja dorado (#E8A030) — color secundario, presente en el HUD y en los elementos de calabaza.
  3. Crema (#FFF5E6) — color base del texto y de los fantasmas, aporta calidez y contraste suave.
  4. Coral (#E85D3A) — usado en botones y acentos, da vida y energía a la interfaz.
  5. Amarillo (#F5C518) — para los detalles brillantes y las chispas.

5. Flujo de desarrollo

Durante la creación de este proyecto se ha ido iterando en diferentes ideas y conceptos para acabar teniendo una propuesta completa como la de ahora.

Por ejemplo, en un principio se propuso la idea de crear una serie de minijuegos llegados a un porcentaje de progreso, estos minijuegos estaban pensados para utilizar otras características de MediaPipe como son detectar el movimiento de los ojos o las diferentes formas que podía crear la boca. Esto en un inicio me pareció una buena idea, pero luego vi que rompía con el principio de la idea propuesta y la desestimé.

Otra idea que tuve y que si que esta en la propuesta final es el uso de recompensas visuales para tener al usuario activo y animarle a seguir con la actividad. A este recurso le llamo “anillos dinámicos” y funciona de la siguiente forma: se trata de un círculo que decrece alrededor de la boca del usuario y que al hacerse completamente pequeño explotan muchas partículas dando ese subidón para seguir jugando.

6. Enlaces

GitHub: https://github.com/Ramonet02/PEC-2.git

p5.js Editor: p5.js Web Editor | Halloween smiles

 

 

Debate0en Reto 2. Desktop App – Interacción con cámara

No hay comentarios.

Publicado por

Healthy Smile – Sketch interactivo con detección facial

Publicado por

Healthy Smile – Sketch interactivo con detección facial

Este proyecto es una pieza interactiva creada con p5.js, pensada para jugar con la cámara y generar una experiencia visual divertida y reactiva. El sketch detecta el rostro del usuario y responde a sus gestos mediante animaciones, partículas y elementos gráficos que se activan cuando la boca se abre, se mueve o cambia de forma. La idea es transformar un gesto cotidiano en una pequeña experiencia creativa. El desarrollo lo realicé inicialmente en Visual Studio Code, donde organicé todo el…
Este proyecto es una pieza interactiva creada con p5.js, pensada para jugar con la cámara y generar una experiencia…

Este proyecto es una pieza interactiva creada con p5.js, pensada para jugar con la cámara y generar una experiencia visual divertida y reactiva. El sketch detecta el rostro del usuario y responde a sus gestos mediante animaciones, partículas y elementos gráficos que se activan cuando la boca se abre, se mueve o cambia de forma. La idea es transformar un gesto cotidiano en una pequeña experiencia creativa.

El desarrollo lo realicé inicialmente en Visual Studio Code, donde organicé todo el código, los recursos visuales y sonoros, y preparé la versión empaquetada con Electron para convertirlo en una aplicación de escritorio. Una vez finalizado, subí el sketch al editor online de p5.js para generar el enlace FullScreen que permite visualizarlo directamente desde el navegador.

¿Cómo funciona?

  • Activa la cámara y detecta tu rostro.
  • Analiza la posición de la boca mediante FaceMesh.
  • Cuando detecta que la boca se abre, se activan animaciones y elementos sonoros.

Es una experiencia sencilla, inmediata y pensada para que cualquiera pueda probarla sin instalar nada.

https://editor.p5js.org/mamoresp/full/QU6rThfQ0

Debate0en Healthy Smile – Sketch interactivo con detección facial

No hay comentarios.