grayscale_bilateral_filter.py
# Ce travail est publié sous licence MIT.
# Copyright (c) 2013-2023 OpenMV LLC. Tous droits réservés.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Exemple de filtre bilatéral en niveaux de gris
#
# Cet exemple montre l'utilisation du filtre bilatéral sur des images en niveaux de gris.
import csi
import time
csi0 = csi.CSI()
csi0.reset() # Initialiser le capteur de la caméra.
csi0.pixformat(csi.GRAYSCALE) # ou csi.RGB565
csi0.framesize(csi.QQVGA) # ou csi.QVGA (ou autres)
csi0.snapshot(time=2000) # Laisser les nouveaux réglages prendre effet.
clock = time.clock() # Suit le FPS.
while True:
clock.tick() # Suivre les millisecondes écoulées entre les snapshots().
img = csi0.snapshot() # Prendre une photo et renvoyer l'image.
# color_sigma contrôle à quel point les pixels doivent être proches en couleur pour être
# flous ensemble. Une valeur plus petite signifie qu'ils doivent être plus proches.
# Une valeur plus grande est moins stricte.
# space_sigma contrôle à quel point les pixels doivent être proches spatialement pour être
# flous ensemble. Une valeur plus petite signifie qu'ils doivent être plus proches.
# Une valeur plus grande est moins stricte.
# Exécute le noyau sur chaque pixel de l'image.
img.bilateral(3, color_sigma=0.1, space_sigma=1)
# Notez que le filtre bilatéral peut introduire des défauts d'image si vous réglez
# color_sigma/space_sigma de manière trop agressive. Augmentez les valeurs sigma jusqu'à ce que
# les défauts disparaissent si vous les observez.
print(clock.fps()) # Remarque : votre OpenMV Cam fonctionne environ deux fois moins vite lorsqu'elle est
# connectée à votre ordinateur. Le nombre d'images par seconde (FPS) devrait augmenter une fois déconnectée.