Transcription
Hola, soy Dave. En este video, vamos a adentrarnos en la función de reconocimiento facial de Frig, que es una continuación de mi video anterior sobre reconocimiento de matrículas. No voy a cubrir la instalación o la configuración de la cámara esta vez. Asumimos que ya tienes Frigot funcionando con una transmisión en vivo. En cambio, te mostraré cómo habilitar el reconocimiento facial, dónde subir caras para entrenar y crear una automatización divertida que se active cuando se detecten personas específicas. [música] Ahora, solo una advertencia rápida, algunos de los temas que toco se superponen ligeramente con lo que cubrí en mi video de reconocimiento de matrículas. Por lo tanto, he intentado no repetir nada de lo que ya hayas visto allí. Si necesitas ayuda para habilitar RTSP en tu cámara Real Link o equivalente, o para probar si la transmisión de video funciona en VLC player, he enlazado tanto las secciones anteriores de un video de reconocimiento de matrículas como un artículo escrito que te guía a través de esos pasos en detalle en la sección de descripción. Antes de empezar, solo asegúrate de que estás ejecutando la versión 0.1 o posterior de Frig, ya que esa es la primera versión con soporte de reconocimiento facial integrado. Puedes verificar la versión en la interfaz de usuario de Frig en configuración, métricas del sistema, o si lo estás ejecutando a través del add-on, puedes verificar la versión allí también. Así que, abramos Frig y empecemos habilitando el reconocimiento facial. Así que, si vamos a Frigot, y puedes ver que tengo dos transmisiones de cámara. La de la derecha es mi grabación previa de un pasillo falso. Grabé esto usando una cámara RioLink solo para que la calidad sea la misma que en la vida real. Ahora, si vas a configuración, luego haces clic en configuración de nuevo, luego seleccionas la pestaña de enriquecimientos. Y si te desplazas hacia abajo, vamos a querer activar el reconocimiento facial, y también te da la opción en términos de modelo. Así que, tienes pequeño o grande. Voy a dejarlo en pequeño y rápidamente iré a la documentación oficial donde te da un poco más de información. Así que pequeño usa más la CPU. Estoy usando una PC de factor de forma pequeño. Así que lo dejaré así. Y el grande es para hardware basado en GPU. Ahora, en términos de especificaciones de hardware, tiene un enlace aquí al que te voy a llevar. Sin embargo, es un poco vago en términos de lo que considera adecuado para uso de GPU. Una cosa a tener en cuenta, mientras me desplazo un poco más hacia abajo, menciona sobre las TPU Google Coral, que solo son útiles para la detección de objetos. Y desafortunadamente, no ayudarán en términos de reconocimiento facial. Algo que es una pena porque tengo uno de estos dispositivos USB y realmente no va a ayudar mucho. De vuelta en Home Assistant. Así que, voy a desplazarme hacia abajo y justo antes de hacer clic en guardar, si mantienes tus ojos atentos alrededor de esta área, verás aparecer otro botón llamado biblioteca de caras. Así que, al seleccionar guardar, ahora puedes ver que la biblioteca de caras ha aparecido. Ahora, esto es algo que me pilló desprevenido porque cuando estaba leyendo la documentación, pensé que las bibliotecas de caras iban a estar entre las primeras aquí, y estuve aproximadamente una hora intentando entender por qué no estaban allí, y en realidad resultó que estaban en la barra lateral. Eso probablemente te ha ahorrado unas horas porque a mí me las ahorró. Y recibirás una notificación sobre reiniciar. Así que, voy a ir a configuración. y reiniciar Frig para que los cambios se apliquen. Una vez que Frig se reinicie, subiremos algunas caras desde la biblioteca de caras. Inicialmente, estará completamente en blanco y no mostrará nada. Pero una vez que hayas agregado la primera cara, cada vez que empiece a detectar caras, mostrará una serie de retratos donde podrás asignarlos a un nombre particular. Así que, si empezamos, vamos a hacer agregar cara. Y la voy a llamar Dave. Luego haré clic en siguiente. Ahora, en este ejemplo, solo subiré una foto mía. Y luego esperaré a que construya un retrato y empiece a usar esas para construir el entrenamiento. Creo que esta es una mejor manera de avanzar porque tiene más sentido que las fotos provengan de la cámara real que está haciendo el reconocimiento facial en lugar de simplemente tomar 30 selfies de tu cara y luego esperar que funcione. Así que, estoy seleccionando esta cara. Y para que lo sepas, no necesitas recortarlas. Si tienes una foto de cuerpo entero, está bien. La recortará automáticamente por ti. Ahora seleccionaré siguiente. Luego hecho. Y deberías ver aquí que ahora tienes una cara, que es la que acabo de agregar. Y puedes ver que ya la ha recortado. Y luego entrenar. Lo que sucederá es que construirá una selección de fotos que son desconocidas o no lo suficientemente reconocidas donde podrás asignarla a una persona o crear una nueva persona más tarde. Ahora que el reconocimiento facial ha sido habilitado y he subido una cara de muestra mía, voy a ir a la transmisión en vivo y ver qué sucede cuando un video mío pasa por la cámara. Ahora, obviamente, esto será muy poco fiable ya que solo tiene una fuente, pero esta es la parte donde podemos empezar a usar retratos. Ahora, voy a activar una transmisión falsa mía caminando y veremos. ¿Me detecta? Así que, ha detectado a una persona. Oh, y ya ha visto a alguien. Y puede ver a Dave. Eso es bastante impresionante para una sola foto. Pero, ¿qué tan fiable es eso? Probablemente no. Pero esta es la parte donde puedes usar los retratos que genera. Así que, ahora, si volvemos a la biblioteca de caras, puedes ver que ahora tiene una colección de fotos. Y también puedes ver algunas de ellas, como esta, sabe que es 93% yo. Así que eso es realmente bueno. Donde otras tiene un 61% yo y muestra desconocido. La razón por la que muestra desconocido es porque por defecto el reconocimiento es del 90%, de lo contrario no me identificará. Así que, lo que puedo hacer ahora es hacer clic en eso y puedo crear una nueva cara y asignarla a una persona diferente o simplemente seleccionar Dave. Así que, voy a hacer zoom hacia afuera y voy a usar todas estas como ejemplos. Y a lo largo del tiempo, mi precisión será cada vez mejor porque acumularé más y más fotos. Y aquí es donde personalmente, creo que es mejor construir ese catálogo de fotos a partir de los retratos que ves en Frigot en sí, en lugar de simplemente tomar un montón de selfies aleatorias. Y me veo bastante sospechoso en algunas de estas fotos. Casi puedo imaginarme en la lista de los más buscados del FBI. Quizás por hacer videos terribles de YouTube. Así que, voy a agregar muchas de estas. Terminarlas. Dejaré esa. Esa del 5% 46. Esa se ve bien. Y cada vez que haga otra transmisión de video, obtendré más y más fotos con las que jugar, lo que solo aumentará la precisión del reconocimiento facial para mí. Ahora, algo más que mencionar porque ChatGPT me mintió al respecto, estos retratos solo aparecerán una vez que se haya subido al menos una foto. Lo que yo pensaba originalmente es que si solo podía habilitar el reconocimiento facial, pasar por delante de la cámara varias veces, luego ver el retrato y empezar a seleccionar los que soy yo. No puedes hacer eso hasta que se haya subido al menos una cara. Solo quería mencionarlo porque es algo que me pilló desprevenido. Voy a volver a la página de documentación y cubriré la configuración de detección y reconocimiento. Ahora, solo para aclarar esto porque es algo que me pilló desprevenido antes. El umbral de detección es "he visto una cara" y el umbral de reconocimiento es "sé que esta cara es de tal persona". Así que, podría ser que he detectado una cara y luego es, "oh, he reconocido esa cara. Es Dave". Así que, solo para aclarar eso porque no fue inmediatamente obvio cuando estaba leyendo la descripción. Ahora, para el área mínima, lo que eso significa es que si estás usando una resolución más baja, cuanto más bajo sea el valor que establezcas, más sensible será a la detección, pero puede tener el costo de posibles falsos positivos. Por defecto será 500. Déjalo así y ve cómo funciona. Ahora, en términos de configuración de reconocimiento, establecí el modelo en pequeño porque solo estoy usando una PC de factor de forma pequeño. Ahora, estas dos configuraciones, puntuación desconocida y umbral de reconocimiento, incluso al leer la descripción, todavía no tenían mucho sentido. Así que, haré lo mejor que pueda para explicar las diferencias entre estas dos. Ahora, para hacerlo un poco más fácil, digamos que hemos establecido la puntuación desconocida en 0.2 y hemos establecido el reconocimiento en 0.9. Si ve tu cara y solo tiene un 80% de certeza, entonces seguirá diciendo tu nombre, pero estará en naranja. Y si hubiéramos establecido la puntuación desconocida en 0.2, no te mostrará como desconocido. Solo es cuando el umbral de reconocimiento está por debajo de lo que has establecido y está dentro del valor de la puntuación desconocida. Si vuelvo a la parte del retrato. Así que, lo que he hecho es establecer la puntuación desconocida en 0.2. Así que, puedes ver aquí que muestra Dave, pero tiene un 70%. Porque no me ha reconocido verdaderamente porque necesita ser 90%. Si miras esa, tiene un 99%. Así que, eso muestra Dave y eso es verde. Donde estas mostrarán Dave, pero es naranja. Pero si eso cae por debajo de la puntuación desconocida, entonces en lugar de decir Dave, en realidad mostrará desconocido. Espero que eso tenga sentido porque no creo que la documentación fuera lo suficientemente clara al explicar esos detalles. De vuelta a la documentación de nuevo. Mínimo de caras significa que cuando mira a través de las fotos de muestra que ya ha identificado como tú, solo necesita ver una de ellas y decir, "Sí, hay un intento que se ha hecho". Sabemos que eres tú y funcionará. Por defecto es uno. Puedes aumentarlo, pero esencialmente disminuirás la sensibilidad. Ahora, esta es la parte donde se guardan los retratos. Y voy a abrir otra carpeta desde el servidor que aloja Frigot, en tu carpeta de medios. Deberías ver una carpeta de Frig. Y luego en clips, luego tienes caras y tienes entrenar. Aquí es donde se guardarán todos los intentos. Y esta carpeta no será mayor de 100 fotos. Tan pronto como supere las 100, empezará a sobrescribir. De lo contrario, lo que sucederá es que tendrás un gran catálogo de fotos y eventualmente empezará a consumir tu almacenamiento. Por defecto, solo guardará 100 fotos, lo cual probablemente esté bien. Puedes dejarlo así. Pero si quieres cambiarlo, quizás quieras establecerlo en algo un poco más alto. Así que, eso son intentos guardados. El filtro de contenido borroso solo tiene en cuenta que la imagen podría no ser muy nítida y por defecto es verdadero a menos que lo establezcas en ninguno. Voy a volver al YAML y te mostraré estos valores establecidos. Así que, vamos a ir a configuración, editor de configuración. Ahora, inicialmente, todo lo que tendrás es reconocimiento facial habilitado y el tamaño del modelo, que es lo que establecí desde la GUI antes. Voy a cambiar eso. Y voy a agregar algunos espacios para que sea un poco más legible. Así que, todas esas configuraciones de las que estaba hablando antes. Todas ellas son en realidad los valores predeterminados, así que realmente no hay mucho sentido en que las agregue. Pero si luego quieres empezar a experimentar y cambiarlas. Esa es la puntuación desconocida. Quizás quieras, en lugar de tener ese 08, quizás quieras que sea un poco más bajo. Para ser claro también, la puntuación desconocida debe ser un valor inferior al umbral de reconocimiento. De lo contrario, no funcionará correctamente. Así que, sea cual sea el límite del umbral de reconocimiento que establezcas, la puntuación desconocida debe ser un valor más bajo. Mínimo de caras lo dejaré en uno. Intentos guardados es donde se guardarán esos retratos. Y tan pronto como llegue a 100, empezará a sobrescribir las fotos más antiguas. Así que, es posible que quieras jugar con algunas de estas configuraciones. Y solo tendrás que guardar y reiniciar para que los cambios surtan efecto, lo cual voy a hacer ahora. Ahora, cuando habilitas el reconocimiento facial en Frig, hay una entidad que creará automáticamente llamada última cara reconocida. Esto es realmente útil porque puedes usarlo para rutinas. Si vas a configuración, luego vas a dispositivos y servicios, buscas Frig, y voy a seleccionar pasillo falso, que es una cámara con la que he estado trabajando. Y deberías ver aquí que tienes última cara reconocida. Ahora, a veces esto no aparece automáticamente. Y si falta, si vuelves un paso atrás, haces clic en estos tres puntos y seleccionas recargar y luego vuelves allí. Ahora, lo que me gusta de esto es que si haces clic en última cara reconocida y luego en configuración, tiene un ID de entidad, que puedes usar para activar automatizaciones porque podría tener una automatización donde si la última cara reconocida cambia a una persona específica, puedo activar una notificación de alerta en mi teléfono o hacer que mi Amazon Echo transmita una notificación. Y eso es lo que estamos a punto de hacer. Así que, si vas a configuración, vas a automatizaciones y escenas, luego seleccionas crear automatización, seleccionas crear nueva automatización. Y si haces clic en estos tres puntos y seleccionas editar en YAML. Ahora, voy a pegar este código de ejemplo. Y lo que hará es que cuando la puerta del armario pase de cerrada a abierta, y comprobará la última cara reconocida, y verá si es Gorilla Man. Tengo este problema de que por alguna razón alguien entra en mi piso de vez en cuando, se pone exactamente la misma ropa que yo, y luego anda por ahí. Así que, estoy intentando atraparlo y ver qué está haciendo. Así que, va a notificar a mi móvil. He seleccionado notify.notify porque de esa manera todos los teléfonos con la aplicación Home Assistant Companion recibirán esa notificación en lugar de un teléfono específico. Me enviará este mensaje en la pantalla y también usaré mi Amazon Echo y enviará otro mensaje. Ahora, hay un problema con esta automatización, ¿qué pasa si la puerta se abre antes de que Frig identifique o cambie el estado de la última cara reconocida a Gorilla Man? Así que, he agregado una condición adicional si me desplazo un poco más abajo, donde lo que hará es esencialmente comprobar si ese valor no es igual a Gorilla Man y luego esperará 5 segundos adicionales y ejecutará la automatización de nuevo. Luego comprobará si esa última cara conocida es esa persona y si lo es, entonces ejecutará las mismas acciones de nuevo, donde enviará una notificación a mi teléfono y también enviará una notificación a mi Amazon Echo. Así que, voy a guardar eso. Luego hago clic en renombrar. Y ahora tenemos esa rutina configurada. Ahora, algo como esto podría ser útil si quizás tienes una oficina privada y si se detecta a una persona específica allí, podrías clasificarla como intrusa y podrías querer transmitir una notificación o advertencia. Pero pensé en divertirme un poco con esta automatización. De vuelta a Frigot. Ahora voy a demostrar que esta automatización funciona. Tenemos la transmisión de la cámara aquí a la derecha. Actualmente me estoy escondiendo en mi habitación porque estoy aterrorizado en caso de que este intruso salga. Y voy a ver si soy capaz de atraparlo hoy en esta transmisión de cámara. Oh, alguien ha aparecido. ¿Qué está haciendo? Oh no, está abriendo la puerta del armario. ¿Y qué ha encontrado? Ha cogido mis plátanos. Dave, ese tipo raro que usa tu ropa y se pone una máscara de gorila acaba de entrar en tu piso y ha abierto el armario. Creo que ha encontrado tu alijo secreto de plátanos. Vaya, este tipo tiene agallas. Entra y roba mis plátanos. Y eso es todo. Ahora tienes Frig reconociendo caras y activando automatizaciones cuando aparece gente. O en mi caso, eso significó recibir una alerta cuando alguien decidió asaltar el armario. Si encontraste útil este video o te hizo reír, no olvides darle al botón de me gusta y suscribirte para más tutoriales de automatización del hogar inteligente. Gracias por ver y te veré en el próximo. Adiós por ahora.