Un millón de fotos de casas: caras, caras, caras

Por lo tanto, todas las fotos están organizadas en carpetas y se volvió rápido y conveniente encontrar fotos de Año Nuevo o cumpleaños. Las fotos de vacaciones también se pueden encontrar relativamente rápido, pero quería más. Es decir, busque por personas y no solo por personas, sino por un conjunto de personas, por ejemplo, para encontrar todas las fotos conjuntas de niños o fotos con abuela, etc.





Así que decidí profundizar un poco más en el llamado reconocimiento facial .





¿Es así de simple?

, , , : , , , , , , ; ( , , ) « ». , . , ( , , ..). , . ( ).





, , , . , , « » : , ., , , , , opensource.





, , , , .





.





?

, , , , , , . 





, , , , , .





« » , - . , - .





, , :





https://azure.microsoft.com/en-us/services/cognitive-services/face/





https://cloud.google.com/vision/docs/face-tutorial





https://aws.amazon.com/rekognition/





, . , , .





CPU -> GPU

, , CNN (. ) CPU. 





1000 , . , , , , .





, , , GPU. , Face Recognition . , , GeForce GTX 1050 Ti. , , … ! , , . .





: CUD. … CUD? , , , GPU .





— ( ), .





, , , CPU GPU , .





:





  1. (face detection)





  2. (landmarks detection)





  3. (face encoding)





  4. (face matching)





, :





  • (HOG).





  • (CNN).





HOG , CPU, .





CNN GPU, .





face_recognition ( , , . ). dlib.





8 , : «» , , , , 4 GB . 1000 (max_image_size



, ), , ( , , , )





. — , , , . , .





, , , .





«» : face_recognition ( dlib), face-alignment.





, -, , , . «». «» , , «». :





, - .





, « » , 10000 / … 80%, , . , , , , .





. … . , , . , , . , , , , .





, , , -, , , -, , , . , , , , .





( deepface) , ( face_recogintion, dlib).









( ) , . . . , , .





«» .





.





( , 10) , , . , /, , . , , , . , - , « » (weak match) , , .





«-»

, , , , . . , , .





, . , ( - ) , , . , - , ( ) , frontal.cfg .





?

, , , , ? , , , , , , - . , .





« »: , , , .





-, (max_video_frames



) , , . -, , (video_frames_step



) , . , , (min_video_face_count



) , , .





( ), . , . , , , , , , , , , .





- , .









, , README .





. :





«Recognition» -> «Add new files…»





( , )





:





( ) , :





, , ( 0_face.jpg). 





, , , . , , (trash).





, , , . «Bad encoding», , .





: «Match» -> «Rematch folder…».





, «weak», .. , . . , , Shift Ctrl. 





«weak» «unknown» .





« » , , -, ( ), -,





.









( , ).





, ?

? , . ! ? Plex, , . , API , , , sqlite . . ( Plex, , - , plexdb.py).





. , .





face-rec-plexsync -a set_tags







! !





, - Plex . , ( , .. ). , , . , , . (Up: , - )





, , 2020





face-rec-db -a find_files_by_names -f 2020 -n ,







, , -





| xargs -I{} ln -s {} /mnt/multimedia/query/ 







, , .





, - , «» , , plexsync.py, .





, , , , , . ( ?). Plex. ..





.





, , «», - :





  • . , , .





  • : , .





  • , : , , ..





  • , : , , , , .





A veces me parece, mirando hacia atrás y evaluando el tiempo invertido, que sería más fácil pagar por algún sistema en la nube, como Google Photos, que proporciona algún tipo de funcionalidad similar, pero, en primer lugar, almacenamiento local (con respaldo, en sí mismo en sí) es más seguro y más rápido, y, en segundo lugar, obtuve una experiencia invaluable y esto es lo principal.





¡Gracias por la atención!








All Articles