Motion Deblurring
La déconvolution du flou de mouvement reconstruit des images nettes à partir de photos et de vidéos brouillées par le mouvement, améliorant les détails pour la vision par ordinateur et la détection d’objets.
Le défloutage de mouvement consiste à reconstruire une image plus nette à partir d’une photo ou d’une image vidéo floutée par un mouvement pendant l’exposition. Les mouvements de caméra ou d’un sujet répartissent les détails visuels sur les pixels voisins et transforment les contours en traînées. Le défloutage estime la façon dont cette dispersion s’est produite et reconstitue les structures sous-jacentes, ce qui rend les images plus utiles pour la vision par ordinateur, notamment la détection d’objets et la reconnaissance optique de caractères. « Défloutage de mouvement » est un autre nom pour cette même opération.
Formation du flou de mouvement#
Une caméra accumule la lumière pendant toute la durée d’exposition. Les mouvements survenus pendant cet intervalle fusionnent différentes positions de la scène en une seule image. Un noyau de flou, également appelé fonction d’étalement du point (PSF), décrit la manière dont un point unique s’étale. Un mouvement rectiligne à vitesse constante produit un noyau approximativement linéaire ; la rotation de la caméra et les objets se déplaçant indépendamment produisent un flou variant selon la position. Un modèle mathématique courant représente l’image floue comme la combinaison d’une image nette avec un noyau par convolution, à laquelle s’ajoute du bruit.
Le défloutage de mouvement relève de la restauration d’image. La netteté augmente le contraste local des contours, tandis que le défloutage estime l’image avant sa dégradation. Le défloutage de défocalisation traite le flou dû à une mise au point incorrecte ; la super-résolution reconstruit une image avec une résolution spatiale supérieure. Ces tâches peuvent être combinées dans des pipelines de restauration.
Approches classiques et neuronales#
Le défloutage non aveugle utilise un noyau de flou fourni. Le défloutage aveugle estime le flou inconnu en même temps que l’image nette. Les méthodes classiques utilisent la déconvolution pour inverser la dispersion. Le filtrage de Wiener équilibre la récupération des détails et l’amplification du bruit au moyen de la régularisation, une contrainte qui favorise des estimations d’image stables.
Un réseau neuronal peut apprendre à restaurer des images à partir de paires d’images floues et nettes grâce à l’apprentissage supervisé. En 2016, Ayan Chakrabarti a présenté A Neural Approach to Blind Motion Deblurring, une méthode qui prédit des filtres de restauration pour des zones d’image qui se chevauchent, combine leurs sorties, estime un noyau de flou global et effectue une déconvolution non aveugle. Cette approche associe une structure d’image apprise à un modèle explicite du flou de mouvement.
Exemple de déconvolution exécutable#
Installe scikit-image et scipy avec pip install scikit-image scipy. Cet exemple applique un flou de mouvement horizontal à une image fournie, puis utilise la déconvolution de Wiener–Hunt avec le noyau connu.
import numpy as np
from scipy.signal import convolve2d
from skimage import data, img_as_float, restoration
from skimage.metrics import peak_signal_noise_ratio
image = img_as_float(data.camera())
# Model uniform horizontal movement over 15 pixels.
psf = np.zeros((15, 15))
psf[7, :] = 1 / 15
blurred = convolve2d(image, psf, mode="same", boundary="wrap")
restored = restoration.wiener(blurred, psf, balance=0.005)
before = peak_signal_noise_ratio(image, blurred, data_range=1)
after = peak_signal_noise_ratio(image, restored, data_range=1)
print(f"PSNR: {before:.2f} dB blurred -> {after:.2f} dB restored")La sortie compare la qualité de la reconstruction avant et après le défloutage. Le rapport signal/bruit de crête (PSNR) mesure la concordance des pixels avec l’image d’origine ; une valeur supérieure indique une erreur de reconstruction plus faible.
Applications et données d’entraînement#
- Traitement de documents : le défloutage reconstitue les traits des caractères dans les photos de texte. En 2014, Jinshan Pan, Zhe Hu, Zhixun Su et Ming-Hsuan Yang ont présenté une méthode de défloutage adaptée au texte qui utilise les propriétés d’intensité et de contour pour estimer le flou et retrouver les limites du texte.
- Photographie de scènes dynamiques : le jeu de données GoPro de défloutage, présenté par Seungjun Nah, Tae Hyun Kim et Kyoung Mu Lee en 2017, associe des images nettes à des images floues générées en moyennant des images vidéo à haute vitesse. Ces paires fournissent des données d’entraînement pour apprendre à restaurer le mouvement de la caméra et des objets.
Le flou de mouvement affecte également la détection avec Ultralytics YOLO26 : une entrée floue peut provoquer des objets manqués en mode predict, tandis que des images restaurées au préalable par une étape de défloutage distincte peuvent être transmises au modèle comme n’importe quelle autre image. Sur l’image d’exemple Ultralytics bus.jpg, un flou de mouvement horizontal de 61 pixels a fait passer de quatre à deux le nombre de personnes détectées par YOLO26n.
Qualité de reconstruction et artefacts#
La qualité du défloutage se mesure notamment à la fidélité des contours, à la préservation des textures et à la stabilité des résultats d’une image vidéo à l’autre. La cohérence temporelle désigne cette stabilité entre les images. Les méthodes vidéo peuvent utiliser les images voisines comme éléments supplémentaires pour la restauration.
La déconvolution peut amplifier le bruit ou introduire des oscillations, visibles sous forme de bandes claires et sombres alternées près des contours. En restauration fondée sur la transformée de Fourier, une différence brusque entre les bords opposés de l’image crée un contenu artificiel à haute fréquence et produit des oscillations aux bords ; l’atténuation des bords réduit cette discontinuité avant la déconvolution.










