{"id":100,"date":"2019-10-22T21:28:29","date_gmt":"2019-10-22T19:28:29","guid":{"rendered":"http:\/\/christophe.valmir.name\/?page_id=100"},"modified":"2020-08-29T19:30:34","modified_gmt":"2020-08-29T17:30:34","slug":"reconnaissance-facial","status":"publish","type":"page","link":"https:\/\/christophe.valmir.name\/?page_id=100","title":{"rendered":"Reconnaissance facial"},"content":{"rendered":"\n<p>La reconnaissance facial existe depuis plusieurs dizaines ann\u00e9es. C&rsquo;est depuis 2011, o\u00f9 plusieurs services commencent \u00e0 utiliser ce syst\u00e8me \u00e0 grande \u00e9chelle, par exemple Facebook, <a href=\"https:\/\/findface.ru\/\">FindFace<\/a> ( le site russe interdit en France de m\u00e9moire ) ou google ( qui cache dans leurs barre de recherche &amp;imgtype=face )<\/p>\n\n\n\n<p>Faire une reconnaissance faciale c&rsquo;est simple pour un d\u00e9veloppeur junior de nos jours.<\/p>\n\n\n\n<p>Exemple: en 15 lignes de code:<\/p>\n\n\n\n<p><a href=\"https:\/\/realpython.com\/face-recognition-with-python\/\">https:\/\/realpython.com\/face-recognition-with-python\/<\/a><\/p>\n\n\n\n<p>Il y a 2 applications diff\u00e9rents:<\/p>\n\n\n\n<ul><li>Reconna\u00eetre un visage pour de la s\u00e9curit\u00e9.<\/li><li>Reconna\u00eetre un visage dans une foule.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Reconna\u00eetre un visage pour la s\u00e9curit\u00e9<\/h3>\n\n\n\n<p>La reconnaissance faciale pour la s\u00e9curit\u00e9 touche  l\u2019identit\u00e9 d&rsquo;une personne. Il est surtout utilis\u00e9 pour reconna\u00eetre des personnes dans une zone s\u00e9curit\u00e9 ou pour reconna\u00eetre un client ( Ca fait partie de ce qu&rsquo;on appel le <em>KYC<\/em> )<\/p>\n\n\n\n<p>Les d\u00e9fis<\/p>\n\n\n\n<ul><li>Savoir si c&rsquo;est r\u00e9ellement un visage et pas une photo ou un masque ( et oui des masques peuvent perturber la reconnaissance faciale )<\/li><li>Reconna\u00eetre des visages m\u00eame de profil<\/li><\/ul>\n\n\n\n<p>Les solutions<\/p>\n\n\n\n<ul><li>Ajouter d&rsquo;autre contr\u00f4le biom\u00e9trique.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Reconna\u00eetre un visage pour la foule<\/h3>\n\n\n\n<p>La reconnaissance faciale dans une foule peut \u00eatre utile. Il permettra de localiser des terroristes ou reconna\u00eetre des personnes qui subit des interdictions dans les festivals ou les match de foot. Une autre utilit\u00e9 permettra de compter les gens dans une manifestions en retirant les doublons ( il faut que ca soit autoris\u00e9 par la l\u00e9gislation).<\/p>\n\n\n\n<p>Les d\u00e9fis<\/p>\n\n\n\n<ul><li>Pouvoir analyser un flux vid\u00e9o<\/li><li>Pouvoir utiliser une image haute r\u00e9solution<\/li><li>Pouvoir trouver une personne dans une foule<\/li><li>Reconna\u00eetre des visages m\u00eame de profil<\/li><\/ul>\n\n\n\n<p>Les solutions<\/p>\n\n\n\n<ul><li>Trait\u00e9 une image sur 4<\/li><li>R\u00e9traissir les images<\/li><li>Reconna\u00eetre une t\u00eate sur 2<\/li><li>Multiplexer les taches <\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Comment reconna\u00eetre une t\u00eate?<\/h3>\n\n\n\n<p>La reconnaissance facial se d\u00e9coupe en plusieurs sous morceaux en python.<\/p>\n\n\n\n<ul><li>Trouver les t\u00eates<\/li><li>Reconna\u00eetre ses t\u00eates<\/li><\/ul>\n\n\n\n<p>Ce qui fait un algorithme comme ceci:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"185\" src=\"http:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-1.png\" alt=\"\" class=\"wp-image-175\" srcset=\"https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-1.png 627w, https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-1-300x89.png 300w\" sizes=\"(max-width: 627px) 100vw, 627px\" \/><\/figure>\n\n\n\n<p>Sur l&rsquo;ordinateur de nos jours se processus peut durer 0.3s en python sur des image de 8Mp avec la PXW-FS7M2. Ce qui fait pour un flux vid\u00e9o, ce n&rsquo;est pas bon pour avoir 24 images  par seconde. Pour corriger, ce soucis il faut afficher une image sur 3 ou 4.<\/p>\n\n\n\n<p>La vue sous Go est diff\u00e9rant:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"443\" src=\"http:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-1024x443.png\" alt=\"\" class=\"wp-image-173\" srcset=\"https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-1024x443.png 1024w, https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-300x130.png 300w, https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image-768x332.png 768w, https:\/\/christophe.valmir.name\/wp-content\/uploads\/2019\/10\/image.png 1061w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Chaque carr\u00e9 s&rsquo;occupe d&rsquo;une fonction et chaque \u00ab\u00a0face recogntion\u00a0\u00bb s&rsquo;occupe d&rsquo;une face. Le go va ex\u00e9cuter toutes les fonctions en m\u00eame temps. Du coups avec l\u2019impl\u00e9mentation facile sous Go, l&rsquo;analyse d&rsquo;une foule en temps r\u00e9el devient possible. A un petit d\u00e9tail, on a un d\u00e9calage de 0,6s  et avec aucune diminution de l&rsquo;image. <\/p>\n\n\n\n<p>Cette avantage peut \u00eatre  exploit\u00e9 que dans un cas. Celui d&rsquo;un flux vid\u00e9o dans une foule dans une manifestation ( dans les gradins d&rsquo;un sport, manifestation sociale ou les festivals)<\/p>\n\n\n\n<p>En conclusion, la reconnaissance faciale est une discipline r\u00e9cente. Les r\u00e9centes application montre qu&rsquo;il y a pas mal d&rsquo;erreur. C&rsquo;est pourquoi plusieurs startup se sont lanc\u00e9es dedans afin de ma\u00eetriser la technique. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>La reconnaissance facial existe depuis plusieurs dizaines ann\u00e9es. C&rsquo;est depuis 2011, o\u00f9 plusieurs services commencent \u00e0 utiliser ce syst\u00e8me \u00e0 grande \u00e9chelle, par exemple Facebook, FindFace ( le site russe interdit en France de m\u00e9moire ) ou google ( qui cache dans leurs barre de recherche &amp;imgtype=face ) Faire une reconnaissance faciale c&rsquo;est simple pour<\/p>\n<p><a href=\"https:\/\/christophe.valmir.name\/?page_id=100\" class=\"more-link\">Lire la suite<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":98,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/100"}],"collection":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=100"}],"version-history":[{"count":20,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/100\/revisions"}],"predecessor-version":[{"id":708,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/100\/revisions\/708"}],"up":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/98"}],"wp:attachment":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}