Herramientas de reconocimiento facial de la biblioteca de medios
Para construir dlib y otros
sudo apt-get install build-essential cmake python3-pip
sudo apt-get install python3-opencv
La instalación de bibliotecas con CUDA no es tan fácil y puede diferir para diferentes versiones del sistema operativo. Algunos enlaces útiles para la configuración de CUDA
https://developer.nvidia.com/cuda-downloads
https://medium.com/@sb.jaduniv/how-to-install-opencv-4-2-0-with-cuda-10-1-on-ubuntu-20-04-lts-focal-fossa-bdc034109df3
https://www.pyimagesearch.com/2019/12/09/how-to-install-tensorflow-2-0-on-ubuntu/
pip3 install deepface
Instale mi clon Face_Recognition (hay algunas modificaciones para admitir caras combinadas exteranales)
git clone https://github.com/sashacmc/face_recognition.git ; cd face_recognition ; pip3 install . ; cd ..
git clone https://github.com/sashacmc/face-rec-tools.git ; cd face-rec-tools ; pip3 install . ; cd ..
Use uno de archivos de configuración predefinidos o prepare su propio.
Archivos de configuración predefinidos ubicados en la carpeta CFG del paquete (por ejemplo, ~/.local/lib/python3.6/sitio-packages/face_REC_Tools/CFG/)
Copiéelo a la ubicación de configuración predeterminada (~/.face-rec.cfg) o especifique con el interruptor de línea de comandos "-c"
cp ~ /.local/lib/python3. ? /site-packages/face_rec_tools/cfg/frontal.cfg ~ /.face-rec.cfg
# recognize single image and print output (useful for debug)
face-rec-cli -a recognize_image -i imagefile.jpg
# recognize single video and print summary output (useful for debug)
face-rec-cli -a recognize_video -i videofile.mp4
# recognize folder and store the result in the database
face-rec-cli -a recognize_folder -i /folder/with/images
# remove folder recognition the result from the database
face-rec-cli -a remove_folder -i /folder/with/images
# match/rematch unmatched faces in database
face-rec-cli -a match_unmatched
# match/rematch all faces in database
face-rec-cli -a match_all
# match/rematch faces from folder in database
face-rec-cli -a match_folder -i /folder/with/images
# save faces from folder (must be previously recognized)
# cachedb must be disabled (otherwise they will saved inside cachedb)
face-rec-cli -a save_faces -i /folder/with/images -o /folder/for/faces
# find face from image in database and save them in folder
# cachedb must be disabled (otherwise they will saved inside cachedb)
face-rec-cli -a get_faces_by_face -i image_with_one_face.jpg -o /folder/for/faces
Ejecute el servidor desde la línea de comandos
face-rec-server
Abra el navegador con su nombre de host/ip_adress y puerto 8081
Para reconocer una nueva carpeta, haga clic en "Reconocimiento"-> "Agregar archivos nuevos ...". Y especifique una carpeta que desee reconocer.
La primera vez que el reconocimiento llevará un tiempo, debido a la carga de los modelos necesarios.
Después del primer reconocimiento, obtendrá todas las caras como desconocidas.
Haga clic en la cara (o seleccione varios con Shift/Ctrl) para agregarlo como patrón.
Los nombres agregados previamente se guardarán, y no necesita ingresarlo nuevamente. Si desea cambiar el logotipo de cara predeterminado, puede agregarlo como 0_face.jpg para cada subcarpeta de persona.
Después de la adición de patrones, comience el partido nuevamente (por ejemplo, "coincidencia"-> "carpeta de reparación ...")
Después de coincidir con los patrones, tendrá a personas coincidentes y personas coincidentes "débiles", significa que no coincide completamente y no se usará para sincronizar o buscar. Debe verificarlos y agregar a los patrones.
Si necesita información adicional sobre la cara, puede hacer clic en el icon to see the source file, or the Para ver el patrón al que se ha combinado.
Si tiene una gran cantidad de caras, puede simplificar la separación de patrones por media de clúster en la agrupación de menú Se separará de las caras cercanas a los grupos y permitirá agregarla a los patrones juntos.
Las herramientas de reconocimiento facial permiten la sincronización de resultados de reconocimiento con Plex Media Server por medio de etiquetas. Los archivos reconocidos etiquetarán con etiquetas "persona: [persona_name]"
# set all tags to the Plex database
face-rec-plexsync -a set_tags
# clear all tags from the Plex database
face-rec-plexsync -a remove_tags
# recognize all files which present in the Plex database
# but not recognized yet and store the result in the database
face-rec-plexsync -a sync_new
# delete from database all files which not present in the Plex database
face-rec-plexsync -a sync_deleted
Si no tiene PLEX o desea usar una búsqueda más compleja, puede usar el comando de seguir
(Buscará todos los archivos en la carpeta 2020 que contiene caras de las personas Name1 y Name2)
face-rec-db -a find_files_by_names -f 2020 -n Name1,Name2
Gracias a todos los que probaron y dieron consejos.
¡Los informes de errores, las sugerencias y la solicitud de extracción son bienvenidos!