Il y a quelques années, j'ai construit un classificateur d'images simples de masque facial à l'aide de Keras et TensorFlow, formé localement sur mon propre matériel. Récemment, j'ai décidé de revoir ce projet pour plusieurs raisons:
Voici les trois approches que j'ai testées:
✅ Apprentissage en profondeur classique: exécuter mon cahier de jupyter original à l'intérieur d'une instance JupyterLab SageMaker Studio, recyclant le modèle avec Tensorflow, puis l'hébergeant pour une démo frontale utilisant Tensorflow.js + S3.
⚙️ Low-Code / No-Code: Utilisation du canevas SageMaker AWS, qui vous permet de télécharger des images et de créer des modèles via une interface utilisateur de points et de clic, sans écrire de code.
🧠 Service pré-formé entièrement géré: L'utilisation de l'API d'analyse faciale d'AWS Rekognition pour voir s'il peut détecter directement les masques - aucune formation requise.
Pour chaque méthode, je voulais évaluer:
Dans le reste de cet article, je vais traverser chaque méthode, comparer leurs résultats et partager ce que j'ai appris en cours de route.
Le point de départ de cette méthode est mon ancien projet: 👉 Alexretana / facemaskClassifier sur github
Il s'agissait d'un petit projet de vision par ordinateur que j'ai créé il y a quelques années pour explorer l'apprentissage du transfert et des modèles pré-entraînés. L'objectif était de construire un pipeline qui pouvait détecter les visages dans une image et de classer si chaque visage portait un masque. Pour ce faire, j'ai combiné un modèle Yolov3 (pré-entraîné pour détecter les visages) avec un classificateur personnalisé formé pour reconnaître les masques.
Le flux de travail était simple: étant donné une image d'entrée, le modèle YOLOV3 identifierait et dessinerait des boîtes de délimitation autour des faces. Chaque visage détecté serait ensuite recadré et transmis au classificateur de masque, qui prédisait «masque» ou «pas de masque» ainsi qu'un score de confiance. Enfin, le pipeline a superposé les étiquettes sur l'image pour montrer les résultats.
J'ai beaucoup appris au cours de ce processus, en particulier sur le chargement et les modèles pré-entraînés, l'extr...
[Courte citation de 8% de l'article original]