IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Pour ou contre l'utilisation de la reconnaissance faciale ? La Hongrie va utiliser ladite technologie pour identifier les participants à la Marche des fiertés,
Dédiée à la défense des droits des homosexuels

Le , par Patrick Ruiz

8PARTAGES

8  0 
La Hongrie vient de devenir le premier pays de l'UE à interdire les manifestations de la Pride, dans le cadre de la dernière campagne de répression anti-LGBTQ de Viktor Orbán, en autorisant la reconnaissance faciale pour identifier et punir les participants. Des députés de l'opposition libérale ont protesté à l'intérieur du parlement en utilisant des grenades fumigènes. L’initiative ravive le débat sur les avantages et les inconvénients de l’utilisation de ladite technologie.



Les développeurs informatiques derrière de telles initiatives mettent à contribution des outils comme Libfacedetection, Openface ou encore Facenet

Libfacedetection permet de détecter jusqu’à 1562 images au format 128 pixels par 96 pixels, ce, en une seconde. Sur des formats plus imposants (640 pixels par 480 pixels), la vitesse de détection est de 60 images par seconde.

Le code de la lib peut générer un exécutable qui s’appuie sur des jeux d’instructions vectoriels. Pour le moment, l’auteur cite AVX2 pour les processeurs Intel et NEON pour les CPU ARM comme les choix disponibles pour les utilisateurs. C’est d’ailleurs dans ces conditions que la bibliothèque a permis d’atteindre ces performances qui, d’avis de certains internautes, « demeurent impressionnantes. »

« Il s'agit d'une bibliothèque open source pour la détection des visages sur des images à partir de réseaux de neurones à convolution. On s'est appuyé sur des variables statiques pour la conversion du modèle de réseau de neurones au sein des fichiers source en langage C. Le code source ne dépend d'aucune autre bibliothèque. Tout ce dont vous avez besoin c’est un compilateur C++. Vous pouvez compiler le code source sous Windows, Linux, ARM et toute autre plateforme avec un compilateur C++ », indique l’éditeur. La prise en main de la bibliothèque ne devrait pas poser de problème au lecteur à même d’exploiter l’exemple mis à disposition par l’auteur.

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
/*
By downloading, copying, installing or using the software you agree to this license.
If you do not agree to this license, do not download, install,
copy or use the software.


                  License Agreement For libfacedetection
                     (3-clause BSD License)

Copyright (c) 2018-2020, Shiqi Yu, all rights reserved.
shiqi.yu@gmail.com

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

  * Redistributions of source code must retain the above copyright notice,
    this list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

  * Neither the names of the copyright holders nor the names of the contributors
    may be used to endorse or promote products derived from this software
    without specific prior written permission.

This software is provided by the copyright holders and contributors "as is" and
any express or implied warranties, including, but not limited to, the implied
warranties of merchantability and fitness for a particular purpose are disclaimed.
In no event shall copyright holders or contributors be liable for any direct,
indirect, incidental, special, exemplary, or consequential damages
(including, but not limited to, procurement of substitute goods or services;
loss of use, data, or profits; or business interruption) however caused
and on any theory of liability, whether in contract, strict liability,
or tort (including negligence or otherwise) arising in any way out of
the use of this software, even if advised of the possibility of such damage.
*/

#include <stdio.h>
#include <opencv2/opencv.hpp>
#include "facedetectcnn.h"

//define the buffer size. Do not change the size!
//0x9000 = 1024 * (16 * 2 + 4), detect 1024 face at most
#define DETECT_BUFFER_SIZE 0x9000
using namespace cv;
using namespace std;

int main(int argc, char* argv[])
{
    if(argc != 2)
    {
        printf("Usage: %s <image_file_name>\n", argv[0]);
        return -1;
    }

	//load an image and convert it to gray (single-channel)
	Mat image = imread(argv[1]); 
	if(image.empty())
	{
		fprintf(stderr, "Can not load the image file %s.\n", argv[1]);
		return -1;
	}

	int * pResults = NULL; 
    //pBuffer is used in the detection functions.
    //If you call functions in multiple threads, please create one buffer for each thread!
    unsigned char * pBuffer = (unsigned char *)malloc(DETECT_BUFFER_SIZE);
    if(!pBuffer)
    {
        fprintf(stderr, "Can not alloc buffer.\n");
        return -1;
    }
	

	///////////////////////////////////////////
	// CNN face detection 
	// Best detection rate
	//////////////////////////////////////////
	//!!! The input image must be a BGR one (three-channel) instead of RGB
	//!!! DO NOT RELEASE pResults !!!
    TickMeter cvtm;
    cvtm.start();

	pResults = facedetect_cnn(pBuffer, (unsigned char*)(image.ptr(0)), image.cols, image.rows, (int)image.step);
    
    cvtm.stop();    
    printf("time = %gms\n", cvtm.getTimeMilli());
    
    printf("%d faces detected.\n", (pResults ? *pResults : 0));
	Mat result_image = image.clone();
	//print the detection results
	for(int i = 0; i < (pResults ? *pResults : 0); i++)
	{
        short * p = ((short*)(pResults + 1)) + 16*i;
		int confidence = p[0];
		int x = p[1];
		int y = p[2];
		int w = p[3];
		int h = p[4];
        
        //show the score of the face. Its range is [0-100]
        char sScore[256];
        snprintf(sScore, 256, "%d", confidence);
        cv::putText(result_image, sScore, cv::Point(x, y-3), cv::FONT_HERSHEY_SIMPLEX, 0.5, cv::Scalar(0, 255, 0), 1);
        //draw face rectangle
		rectangle(result_image, Rect(x, y, w, h), Scalar(0, 255, 0), 2);
        //draw five face landmarks in different colors
        cv::circle(result_image, cv::Point(p[5], p[5 + 1]), 1, cv::Scalar(255, 0, 0), 2);
        cv::circle(result_image, cv::Point(p[5 + 2], p[5 + 3]), 1, cv::Scalar(0, 0, 255), 2);
        cv::circle(result_image, cv::Point(p[5 + 4], p[5 + 5]), 1, cv::Scalar(0, 255, 0), 2);
        cv::circle(result_image, cv::Point(p[5 + 6], p[5 + 7]), 1, cv::Scalar(255, 0, 255), 2);
        cv::circle(result_image, cv::Point(p[5 + 8], p[5 + 9]), 1, cv::Scalar(0, 255, 255), 2);
        
        //print the result
        printf("face %d: confidence=%d, [%d, %d, %d, %d] (%d,%d) (%d,%d) (%d,%d) (%d,%d) (%d,%d)\n", 
                i, confidence, x, y, w, h, 
                p[5], p[6], p[7], p[8], p[9], p[10], p[11], p[12], p[13],p[14]);

	}
	imshow("result", result_image);

	waitKey();

    //release the buffer
    free(pBuffer);

	return 0;
}


La mise à contribution de ces outils ravive le débat sur les avantages et les inconvénients de l’utilisation de cette technologie

Primo, la technologie acquiert de manière intrusive certaines des données les plus intimes des internautes. Étant donné que nos données nous appartiennent (conformément au règlement général sur la protection des données, par exemple), nous avons le droit de savoir quand des informations personnelles sont obtenues à notre sujet et dans quel but.
Deuxio, les données biométriques comportent leur propre risque en matière de sécurité. Contrairement à un mot de passe, les données biométriques ne peuvent pas être modifiées. Si des empreintes digitales sont divulguées, l’on ne peut pas les réinitialiser comme un mot de passe. En sus, un visage peut être scanné à tout moment et en tout lieu, sans le consentement de l’individu concerné. Cela signifie que les données biométriques peuvent en fait être stockées dans une série de bases de données, dont les mesures de sécurité peuvent être inadéquates.

La technologie de reconnaissance faciale est également connue pour fonctionner relativement bien sur les visages blancs et masculins, alors qu'elle présente un taux élevé d'inexactitude sur les personnes de couleur, en particulier si elles sont de sexe féminin. Cela signifie...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de _toma_
Membre éclairé https://www.developpez.com
Le 24/03/2025 à 10:54
L’initiative ravive le débat sur les avantages et les inconvénients de l’utilisation de ladite technologie.
C'est simple, y'a que des inconvénients, pas d'avantages. Sauf pour les dictateurs. La techno est tellement intrusive que le moindre "avantage" est mis au tapis par les conséquences éventuelles de son utilisation.

la reconnaissance faciale est présentée comme un moyen de rendre notre vie plus pratique. Elle peut permettre d’éviter d’avoir à entrer un mot de passe dans notre téléphone ou de devoir montrer notre carte d'identité dans un aéroport. À Osaka, dans quatre gares, des systèmes de reconnaissance faciale ont été mis en place pour permettre aux gens de passer en scannant simplement leur visage, sans utiliser de billet ou de carte d'identité. Un responsable des transports a indiqué qu'ils "souligneraient comme un avantage le fait que les passagers avec de gros bagages pourront passer les portes en montrant simplement leur visage au lieu de chercher des billets".
Les commerciaux sont vraiment à court d'arguments marketing.
4  0 
Avatar de noremorse
Membre actif https://www.developpez.com
Le 24/03/2025 à 10:31
Le préfet de police de Paris « favorable » à une prolongation du recours à la vidéosurveillance algorithmique expérimentée pendant les JO

Laurent Nuñez a évoqué, mercredi devant les députés, un « bilan positif » de l’utilisation, durant les Jeux olympiques et paralympiques, de l’intelligence artificielle pour analyser les images issues de caméras de surveillance.
https://www.lemonde.fr/societe/artic...3125_3224.html

La vidéosurveillance algorithmique (VSA) a été légalisée en France à titre expérimental à l'occasion des Jeux olympiques et paralympiques de Paris. La légalisation de cette technologie est un pas de plus vers l'utilisation de la reconnaissance faciale. Dans ce contexte, nous appelons les parlementaires français à adopter au plus vite une loi visant à interdire la reconnaissance faciale à des fins d’identification dans l’espace public.

https://www.amnesty.fr/liberte-d-exp...-y-a-qu-un-pas
2  0