Hacer una mascota robotizada: descripción general
¡Ahora es el momento de hacer nuestra IA Robo-Pet! La mascota robot debe reconocer la cara, hacerla coincidir con la cara almacenada y, si coincide, debe seguirla.
¿Cómo? ¡Echemos un vistazo!
Entendiendo la lógica
Queremos que nuestra mascota robot siga nuestro rostro. Para eso, necesitamos definir los rangos de nuestro movimiento. Vamos a definirlos.
Si la posición x de nuestra cara es menor que -100, significa que nuestra cara está en el extremo izquierdo. Por lo tanto, nuestra mascota robot también debería moverse hacia la izquierda.
Si la posición x de nuestro rostro es mayor que 100, significa que nuestro rostro está en el extremo derecho. Por lo tanto, nuestra mascota robot también debería moverse a la derecha.
Si el ancho de nuestro rostro es inferior a 200, significa que nuestro rostro está lejos de la pantalla. Por lo tanto, nuestra mascota robot debe moverse hacia nosotros.
¡Ahora es el momento de codificar nuestra mascota robot!
¡Codifiquemos!
Continuaremos con el guión que hicimos para emparejar el rostro.
- Primero, crea un bloque personalizado. Vaya a la paleta Mis bloques y cree un bloque llamado Coincidencia de caras.
- A continuación, reemplace el bloque de sombreros cuando se hizo clic en la bandera con el bloque de sombreros de buscar rostro .
- Hasta ahora, hemos creado el guión para almacenar la cara y luego combinarla. Ahora es el momento de hacer que la diversión robot siga nuestra cara una vez que la cara se empareja. Por lo tanto, coloque un bloque de sombreros cuando se haga clic en la bandera de la paleta Eventos en el área de secuencias de comandos.
- Para que el reconocimiento facial sea más visible, mostraremos un cuadro delimitador alrededor del rostro del usuario. Pero al comienzo del script no debería haber ningún bloque delimitador, por lo tanto, desde la paleta de Detección de rostro, agregue () el bloque de cuadro delimitador y elija ocultar en el menú desplegable.
- A continuación, emparejaremos la cara, por lo tanto, soltaremos el bloque de pila Coincidencia de caras .
- Una vez que la cara coincide, necesitamos mostrar el cuadro delimitador, por lo tanto, suelte () el cuadro delimitador y seleccione mostrar en el menú desplegable.
- Como estamos trabajando con el robtot vertical, necesitamos establecer la orientación. Por lo tanto, en la paleta Robot , coloque la orientación del robot establecida como bloque () y seleccione vertical en el menú desplegable.
- Coloque un bloque para siempre de la paleta.
- Después de analizar la cara, suelte la imagen de análisis del bloque () y elija la cámara.
- Ahora, hagamos que la robo-mascota nos siga. Agrega un bloque si-si no .
- Luego, en su espacio en blanco, agregue un bloque () <() de la paleta Operadores .
- En el primer espacio del bloque () <() , agregue un bloque get () de face () de la paleta de Detección de rostro . En el segundo espacio, escriba – 100 . Si esta condición es cierta, entonces nuestra mascota robot debería moverse hacia la izquierda.
- Vaya a la paleta Robot y suelte un bloque go () a ()% de velocidad durante () segundos debajo del brazo si . Deje que la velocidad sea del 100%. Cambie la dirección hacia la izquierda y establezca el tiempo en 0,2 segundos.
- A continuación, agregue otro bloque si-si no debajo del brazo si no del primer bloque. En el espacio de este bloque si-si no , suelte un bloque ()> () .
- En el primer espacio del bloque ()> () , agregue un bloque get () de face () de la paleta de Detección de rostro . En el segundo espacio, escriba 100. Si esta condición es verdadera, entonces nuestra mascota robot debería moverse a la derecha.
- Vaya a la paleta Robot y suelte un bloque go () a ()% de velocidad durante () segundos debajo del brazo si . Deje que la velocidad sea del 100%. Cambie la dirección hacia la derecha y establezca el tiempo en 0,2 segundos.
- Ahora, agregue un bloque si debajo del brazo si no del segundo bloque si- si no . En su espacio en blanco, agregue un bloque () <() de la paleta Operadores .
- En el primer espacio del bloque () <() , agregue un bloque get () de face () de la paleta de Detección de rostro y seleccione el ancho en el primer menú desplegable. En el segundo espacio, escriba 200. Si esta condición es verdadera, entonces nuestra mascota robot debería moverse a la derecha.
- Vaya a la paleta Robot y suelte un bloque go () a ()% de velocidad durante () segundos debajo del brazo si . Deje que la velocidad sea del 100% y la dirección hacia adelante. Establezca el tiempo en 0,5 segundos.
Ahora, ejecute el script haciendo clic en la bandera verde y ¡disfrute!
Asignación
Antes de pasar a la siguiente lección, ¡le espera una pequeña tarea!
Haz un video del proyecto que realizaste en esta actividad y súbelo al sitio web.
Enviar la tarea es imprescindible para recibir el certificado después de completar el curso.
Siga los pasos a continuación para cargar su tarea:
- Primero, debe elegir el archivo de video, luego haga clic en Examinar .
- Seleccione su archivo de video.
- Y haga clic en el botón Cargar .
¡Buena suerte! ?