Skip to content

Flouter les objets en utilisant Ultralytics YOLO11 🚀

Qu'est-ce que le flou artistique ?

Le flou d'objet avec Ultralytics YOLO11 consiste à appliquer un effet de flou à des objets spécifiques détectés dans une image ou une vidéo. Pour ce faire, les capacités du modèle YOLO11 permettent d'identifier et de manipuler des objets dans une scène donnée.



Regarder : Floutage d'objets à l'aide de Ultralytics YOLO11

Avantages du flou d'objet

  • Protection de la vie privée: Le flou artistique est un outil efficace pour protéger la vie privée en dissimulant les informations sensibles ou personnellement identifiables dans les images ou les vidéos.
  • Mise au point sélective: YOLO11 permet un flou sélectif, permettant aux utilisateurs de cibler des objets spécifiques, assurant un équilibre entre le respect de la vie privée et la conservation d'informations visuelles pertinentes.
  • Traitement en temps réel: YOLO11 L'efficacité du système permet de brouiller les objets en temps réel, ce qui le rend adapté aux applications nécessitant des améliorations de la confidentialité à la volée dans des environnements dynamiques.
  • Conformité réglementaire: Aide les organisations à se conformer aux réglementations sur la protection des données telles que le GDPR en anonymisant les informations identifiables dans le contenu visuel.
  • Modération de contenu: Utile pour estomper les contenus inappropriés ou sensibles sur les plateformes médiatiques tout en préservant le contexte général.

Floutage d'objets avec Ultralytics YOLO

# Blur the objects
yolo solutions blur show=True

# Pass a source video
yolo solutions blur source="path/to/video.mp4"

# Blur the specific classes
yolo solutions blur classes="[0, 5]"
import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("object_blurring_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Initialize object blurrer object
blurrer = solutions.ObjectBlurrer(
    show=True,  # display the output
    model="yolo11n.pt",  # model for object blurring i.e. yolo11m.pt
    # line_width=2,  # width of bounding box.
    # classes=[0, 2],  # count specific classes i.e, person and car with COCO pretrained model.
    # blur_ratio=0.5,  # adjust percentage of blur intensity, the value in range 0.1 - 1.0
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()

    if not success:
        print("Video frame is empty or processing is complete.")
        break

    results = blurrer(im0)

    # print(results")  # access the output

    video_writer.write(results.plot_im)  # write the processed frame.

cap.release()
video_writer.release()
cv2.destroyAllWindows()  # destroy all opened windows

ObjectBlurrer Arguments

Voici un tableau avec les ObjectBlurrer arguments :

Argument Type Défaut Description
model str None Chemin d'accès au fichier modèleYOLO d'Ultralytics .
line_width None or int None Spécifie la largeur de ligne des boîtes de délimitation. Si les NoneLa largeur de la ligne est automatiquement ajustée en fonction de la taille de l'image. Permet une personnalisation visuelle pour plus de clarté.
blur_ratio float 0.5 Règle le pourcentage de l'intensité du flou, avec des valeurs comprises entre 0.1 - 1.0.

Le ObjectBlurrer Cette solution prend également en charge une série d'outils de gestion de l'information et de la communication. track arguments :

Argument Type Défaut Description
tracker str 'botsort.yaml' Spécifie l'algorithme de suivi à utiliser, par exemple, bytetrack.yaml ou botsort.yaml.
conf float 0.3 Définit le seuil de confiance pour les détections ; des valeurs plus faibles permettent de suivre plus d'objets mais peuvent inclure des faux positifs.
iou float 0.5 Définit le seuil d'intersection sur l'union (IoU) pour le filtrage des détections qui se chevauchent.
classes list None Filtre les résultats par indice de classe. Par exemple, classes=[0, 2, 3] ne suit que les classes spécifiées.
verbose bool True Contrôle l'affichage des résultats du suivi, fournissant une sortie visuelle des objets suivis.
device str None Spécifie le dispositif d'inférence (par ex, cpu, cuda:0 ou 0). Permet aux utilisateurs de choisir entre CPU, un GPU spécifique ou d'autres dispositifs de calcul pour l'exécution du modèle.

En outre, les arguments de visualisation suivants peuvent être utilisés :

Argument Type Défaut Description
show bool False Si Trueaffiche les images ou vidéos annotées dans une fenêtre. Utile pour un retour d'information visuel immédiat pendant le développement ou les tests.
line_width None or int None Spécifie la largeur de ligne des boîtes de délimitation. Si les NoneLa largeur de la ligne est automatiquement ajustée en fonction de la taille de l'image. Permet une personnalisation visuelle pour plus de clarté.

Applications dans le monde réel

Protection de la vie privée dans le cadre de la surveillance

Les caméras de sécurité et les systèmes de surveillance peuvent utiliser YOLO11 pour flouter automatiquement les visages, les plaques d'immatriculation ou d'autres informations d'identification tout en capturant des activités importantes. Cela permet de maintenir la sécurité tout en respectant le droit à la vie privée dans les espaces publics.

Anonymisation des données de santé

Dans le domaine de l'imagerie médicale, les informations relatives aux patients apparaissent souvent dans les scans ou les photos. YOLO11 peut détecter et estomper ces informations afin de se conformer à des réglementations telles que l'HIPAA lors du partage de données médicales à des fins de recherche ou d'enseignement.

Rédaction de documents

Lors du partage de documents contenant des informations sensibles, YOLO11 peut automatiquement détecter et flouter des éléments spécifiques tels que des signatures, des numéros de compte ou des détails personnels, rationalisant ainsi le processus de rédaction tout en préservant l'intégrité du document.

Création de médias et de contenu

Les créateurs de contenu peuvent utiliser YOLO11 pour brouiller les logos des marques, les documents protégés par des droits d'auteur ou les contenus inappropriés dans les vidéos et les images, ce qui permet d'éviter les problèmes juridiques tout en préservant la qualité globale du contenu.

FAQ

Qu'est-ce que le flou artistique avec Ultralytics YOLO11 ?

Le flou d'objet avec Ultralytics YOLO11 consiste à détecter et à appliquer automatiquement un effet de flou à des objets spécifiques dans des images ou des vidéos. Cette technique renforce la protection de la vie privée en dissimulant les informations sensibles tout en conservant les données visuelles pertinentes. YOLO11 Grâce à ses capacités de traitement en temps réel, le système convient aux applications nécessitant une protection immédiate de la vie privée et des ajustements sélectifs de la mise au point.

Comment puis-je mettre en place un flou d'objet en temps réel en utilisant YOLO11?

Pour mettre en œuvre le flou d'objet en temps réel avec YOLO11, suivez l'exemple fourni par Python . Il s'agit d'utiliser YOLO11 pour la détection d'objets et OpenCV pour l'application de l'effet de flou. Voici une version simplifiée :

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

# Video writer
video_writer = cv2.VideoWriter("object_blurring_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Init ObjectBlurrer
blurrer = solutions.ObjectBlurrer(
    show=True,  # display the output
    model="yolo11n.pt",  # model="yolo11n-obb.pt" for object blurring using YOLO11 OBB model.
    blur_ratio=0.5,  # set blur percentage i.e 0.7 for 70% blurred detected objects
    # line_width=2,  # width of bounding box.
    # classes=[0, 2],  # count specific classes i.e, person and car with COCO pretrained model.
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = blurrer(im0)
    video_writer.write(results.plot_im)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

Quels sont les avantages de l'utilisation de Ultralytics YOLO11 pour le floutage d'objets ?

Ultralytics YOLO11 offre plusieurs avantages pour le floutage d'objets :

  • Protection de la vie privée: Masquer efficacement les informations sensibles ou identifiables.
  • Mise au point sélective: Ciblez des objets spécifiques pour les rendre flous, tout en conservant le contenu visuel essentiel.
  • Traitement en temps réel: Exécution efficace du floutage d'objets dans des environnements dynamiques, adaptée à l'amélioration instantanée de la protection de la vie privée.
  • Intensité personnalisable: Ajustez le taux de flou pour équilibrer les besoins de confidentialité et le contexte visuel.
  • Flou par classe: Flouter sélectivement certains types d'objets tout en laissant les autres visibles.

Pour des applications plus détaillées, consultez la section sur les avantages du flou d'objet.

Puis-je utiliser Ultralytics YOLO11 pour brouiller les visages dans une vidéo pour des raisons de confidentialité ?

Oui, Ultralytics YOLO11 peut être configuré pour détecter et rendre flous les visages dans les vidéos afin de protéger la vie privée. En entraînant ou en utilisant un modèle pré-entraîné pour reconnaître spécifiquement les visages, les résultats de la détection peuvent être traités avec OpenCV pour appliquer un effet de flou. Reportez-vous à notre guide sur la détection d'objets avec YOLO11 et modifiez le code pour cibler la détection de visages.

Comment YOLO11 se compare-t-il à d'autres modèles de détection d'objets tels que Faster R-CNN pour les objets flous ?

Ultralytics YOLO11 est généralement plus rapide que des modèles tels que Faster R-CNN, ce qui le rend plus adapté aux applications en temps réel. Bien que les deux modèles offrent une détection précise, l'architecture de YOLO11 est optimisée pour une inférence rapide, ce qui est essentiel pour des tâches telles que le floutage d'objets en temps réel. Pour en savoir plus sur les différences techniques et les mesures de performance, consultez notre documentation surYOLO11 .

📅C réé il y a 1 an ✏️ Mis à jour il y a 8 jours

Commentaires