Gaussian Blur
Le flou gaussien est un filtre de lissage d’image qui réduit le bruit et les détails fins grâce à des moyennes pondérées des pixels, pour la vision par ordinateur et le prétraitement.
Le flou gaussien est une technique de lissage d’image qui remplace chaque pixel par une moyenne pondérée des pixels proches, en accordant plus d’importance aux voisins les plus proches. Les poids suivent une distribution gaussienne en forme de cloche, produisant un flou doux qui réduit le bruit et les détails fins. Également appelé lissage gaussien, il est largement utilisé en vision par ordinateur et en prétraitement des données pour préparer les images à l’analyse.
Fonctionnement du flou gaussien#
Le filtre déplace une petite grille de poids, appelée noyau, sur l’image. À chaque position, il multiplie les valeurs des pixels voisins par leurs poids, puis additionne les résultats. Cette opération est une convolution. La somme des poids est égale à un : un pixel reste donc inchangé lorsque toutes les valeurs échantillonnées par son noyau ont la même luminosité. Le flou gaussien agit comme un filtre passe-bas : il atténue les variations rapides d’un pixel à l’autre, notamment le bruit, la texture et les contours nets.
Deux paramètres déterminent le résultat. Sigma, l’écart-type de la distribution gaussienne, contrôle l’étalement des poids ; une valeur sigma plus élevée produit un lissage plus marqué. La taille du noyau détermine la portion de l’image environnante prise en compte. Un noyau plus grand peut contenir une gaussienne plus étendue, tandis qu’un noyau trop petit en tronque les extrémités. Le rayon du noyau désigne la distance entre le centre et le bord du noyau : un rayon de trois pixels donne un noyau de sept pixels de large.
Aux bords de l’image, une partie du noyau se trouve en dehors des pixels disponibles. Le reflet de l’image prolonge le contenu adjacent ; remplir la zone manquante avec des zéros introduit des valeurs sombres qui peuvent assombrir le bord. Le traitement des limites modifie donc le résultat filtré près des bords de l’image.
Applications en vision par ordinateur et en apprentissage automatique#
Le lissage gaussien facilite l’extraction de caractéristiques en contrôlant l’échelle spatiale à laquelle la structure de l’image est analysée. Son utilisation à plusieurs échelles trouve son origine dans les travaux de Taizo Iijima sur l’espace des échelles gaussien menés de 1959 à 1962, qui ont posé les bases de la représentation des images à différents niveaux de flou.
Dans l’implémentation de la détection de contours de Canny de scikit-image, le lissage gaussien réduit le bruit avant l’estimation du gradient avec l’opérateur de Sobel. Sans lissage, le bruit produit des variations d’intensité supplémentaires qui rivalisent avec les contours des objets. L’augmentation de l’échelle de lissage élimine également les contours fins, ce qui modifie les contours qui subsistent après la détection.
Pour la segmentation d’images de documents, les moyennes locales pondérées par une gaussienne facilitent le seuillage adaptatif. Chaque pixel reçoit un seuil calculé à partir de la moyenne pondérée de son voisinage, diminuée d’un décalage. Cette méthode sépare le texte des arrière-plans soumis à un éclairage inégal, comme dans le seuillage local d’une page numérisée.
En tant qu’augmentation des données, le flou gaussien crée des versions adoucies des images d’entraînement tout en préservant les coordonnées des boîtes englobantes et des points clés. Ultralytics YOLO prend en charge A.GaussianBlur via ses transformations Albumentations personnalisées, ce qui permet d’intégrer des variations contrôlées du flou à l’entraînement de YOLO26.
Comparaison du flou gaussien avec d’autres filtres#
Le choix de la méthode de lissage détermine quelles informations de l’image sont préservées :
- Le flou moyen, également appelé flou par boîte, attribue le même poids à chaque pixel de sa fenêtre. Le flou gaussien privilégie les pixels proches, produisant une moyenne pondérée de façon plus progressive.
- Le flou médian remplace un pixel par la valeur médiane de son voisinage. Il est particulièrement efficace contre le bruit sel et poivre, constitué de pixels isolés clairs et sombres.
- Le filtrage bilatéral utilise à la fois la distance spatiale et la similarité d’intensité pour réduire le bruit tout en préservant les contours nets. Le flou gaussien pondère les pixels uniquement selon leur position et adoucit donc aussi les contours.
Appliquer un flou gaussien en Python#
OpenCV fournit cv2.GaussianBlur pour le lissage gaussien. Installe son paquet Python avec pip install opencv-python, puis enregistre une comparaison côte à côte :
from urllib.request import urlopen
import cv2
import numpy as np
with urlopen("https://ultralytics.com/images/bus.jpg") as response:
image_bytes = np.frombuffer(response.read(), dtype=np.uint8)
image = cv2.imdecode(image_bytes, cv2.IMREAD_COLOR)
blurred = cv2.GaussianBlur(image, (15, 15), sigmaX=3)
comparison = cv2.hconcat([image, blurred])
cv2.imwrite("gaussian_blur_comparison.jpg", comparison)L’image enregistrée place l’originale à gauche et le résultat lissé à droite. Le noyau de 15 x 15 utilise un sigma de trois pixels dans les deux directions, car sigmaY omis prend la valeur de sigmaX.
Les noyaux gaussiens sont séparables : des filtres unidimensionnels horizontaux et verticaux produisent le flou bidimensionnel correspondant. Pour un noyau de 7 x 7, cela réduit de 49 à 14 le nombre de contributions des poids du noyau par pixel.










