CommencezCommencez gratuitement

Segmentation et détection de visages

Vous avez vu précédemment comment rendre les traitements plus efficaces grâce à la segmentation non supervisée en superpixels. Dans cet exercice, vous allez mettre cela en pratique!

En utilisant la fonction slic() pour la segmentation, prétraitez l'image avant de la transmettre au détecteur de visages.

Autoportrait d'une jeune femme
Image préchargée sous le nom profile_image.

La classe Cascade, la fonction slic() du module segmentation et la fonction show_detected_face() pour la visualisation ont déjà été importées. Le détecteur est déjà initialisé et prêt à l'emploi sous le nom detector.

Cette activité fait partie du cours

Traitement d'images en Python

Voir le cours

Instructions de l’exercice

  • Appliquez la segmentation en superpixels et obtenez les segments, c.-à-d. les étiquettes, avec slic().
  • Obtenez l'image segmentée avec label2rgb(), en passant segments et profile_image.
  • Détectez les visages à l'aide du détecteur avec la méthode multi-échelle.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Obtain the segmentation with default 100 regions
segments = ____

# Obtain segmented image using label2rgb
segmented_image = ____(____, ____, kind='avg')

# Detect the faces with multi scale method
detected = detector.____(img=____, 
                                       scale_factor=1.2, 
                                       step_ratio=1, 
                                       min_size=(10, 10), max_size=(1000, 1000))

# Show the detected faces
show_detected_face(segmented_image, detected)
Modifier et exécuter le code