Détection de visage avec OpenCV à l’aide de la webcam

Qu’est-ce que la détection faciale ?

La détection de visages à l’aide d’un ordinateur est l’une des applications de la vision par ordinateur (Computer Vision).

Il consiste à localiser des visages dans des images ou des vidéos, capturés par une caméra ou enregistrés sur le disque dur, grâce à l’utilisation d’algorithmes d’apprentissage automatique (Machine Learning).

Détection de visage avec Python, OpenCV et Haar Cascades

OpenCV est une bibliothèque open source de vision par ordinateur et d’apprentissage automatique prenant en charge Python, C++ et Java.

Il propose plus de deux mille algorithmes conçus pour effectuer diverses tâches, notamment la détection et la reconnaissance des visages.

Ses modèles pré-entraînés, basés sur la technique Haar Cascades, permettent la détection des visages et des yeux avec une vitesse acceptable.

Ensuite, nous vous montrons l’installation des logiciels et bibliothèques nécessaires à la mise en place d’un système de détection de visage à l’aide de la webcam du PC avec OpenCV et Haar Cascades.

Nous vous fournirons ensuite le code ainsi qu’une brève explication des commandes utilisées.

Installez Python, NumPy et OpenCV

Installez Python

La première chose à faire est d’installer Python. Pour cela, vous pouvez télécharger son fichier d’installation depuis le lien suivant : Télécharger Python pour Windows

Une fois l’installation terminée, ouvrez l’invite de commande. Pour ce faire, appuyez sur les touches Windows + R et cliquez sur OK.

Tapez la commande suivante et appuyez sur Entrée :

python --version

Si vous voyez la version de Python, cela signifie que l’installation a réussi.

Assurez-vous également que le gestionnaire de packages pip a été correctement installé. Pour ce faire, exécutez la commande :

pip -v

Installez NumPy

Une fois Python installé, il faudra installer la librairie NumPy, puisque OpenCV utilise sa structure de données de type tableau.

Pour l’installation de NumPy, vous pouvez utiliser le gestionnaire de packages pip. Pour ce faire, ouvrez l’invite de commande et exécutez la commande suivante :

pip install numpy

Installez OpenCV

Pour installer OpenCV, ouvrez l’invite de commandes Windows et exécutez la commande suivante :

pip install opencv-contrib-python

Téléchargez des modèles de détection de visage pré-entraîné

La dernière chose à faire est de télécharger depuis GitHub les modèles pré-entraîné qu’OpenCV utilisera pour la détection des visages et des yeux. Cliquez sur ce lien.

Recherchez et cliquez sur le fichier haarcascade_frontalface_default.xml. Ensuite, cliquez avec le bouton droit sur le bouton Raw et sélectionnez l’option Enregistrer le lien sous. Le fichier sera téléchargé sur votre disque dur.

Téléchargez le fichier haarcascade_eye.xml de la même manière.

Pour terminer, copiez les deux fichiers avec l’extension XML dans le dossier d’installation de Python. Si vous ne savez pas où il se trouve, ouvrez l’invite de commande et exécutez la commande where python.

Code pour détecter les visages et les yeux à l’aide de la webcam du PC

import numpy as np
import cv2

face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')

webcam = cv2.VideoCapture(0)

while True:
    ret, frame = webcam.read()
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    faces = face_cascade.detectMultiScale(gray, 1.3, 5)

    for (x,y,w,h) in faces:
        cv2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = gray[y:y+h, x:x+w]
        roi_color = frame[y:y+h, x:x+w]

        eyes = eye_cascade.detectMultiScale(roi_gray)
        for (ex,ey,ew,eh) in eyes:
            cv2.rectangle(roi_color,(ex,ey),(ex+ew,ey+eh),(0,255,0),2)

    cv2.imshow('Face Detection',frame)
    p = cv2.waitKey(28)
    if p == 27:
        break

webcam.release()
cv2.destroyAllWindows()

Pour exécuter le programme :

Tapez Python dans la barre de recherche Windows et cliquez sur IDLE (Python xxx) dans la liste des correspondances.

Dans Python IDLE, cliquez sur File > New File. Dans la fenêtre qui s’ouvre, cliquez sur File > Save As. Tapez un nom et enregistrez le fichier avec une extension .py sur votre disque dur.

Copiez et collez le code, cliquez sur File > Save. Cliquez ensuite sur Run > Run Module. La caméra de votre ordinateur s’activera et une boîte apparaîtra autour de votre visage et de vos yeux.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut