Offre d’HalloweenDes bonbons, ou on répare le film !Les trois offres baissent. La licence perpétuelle économise $30Jusqu’au 2 nov., 23:59 (heure du Pacifique)

Voir les tarifs

Cohérence temporelle en vidéo : pourquoi une vidéo restaurée scintille, fourmille et laisse des fantômes

Vidéo traitée qui scintille, fourmille, laisse des traînées ou des images doubles après interpolation : causes, mesures et corrections FFmpeg testées.

L’essentiel

La cohérence temporelle, c’est le fait qu’un objet garde le même aspect d’une image à la suivante tant qu’il ne change pas vraiment. Le traitement vidéo la casse de quatre façons courantes : un scintillement de luminosité, une texture fine qui fourmille ou rampe, des traînées derrière les objets en mouvement, et des images doubles dues à l’interpolation. Chacun de ces défauts a sa propre cause, et donc sa propre correction.

  • La cohérence temporelle, c’est le fait qu’un objet garde le même aspect d’une image à l’autre tant qu’il ne change pas vraiment. Le traitement la casse de quatre façons : scintillement, fourmillement, traînées et images doubles.
  • Traiter chaque image isolément est la cause première de la plupart des scintillements et fourmillements, car de petites différences entre images entraînent des décisions différentes.
  • Moyenner les images retire le bruit mais étale tout ce qui bouge. Dans notre test, une simple moyenne sur un plan de drone en mouvement a fait moins bien que l’entrée bruitée ; un filtre adaptatif a gagné 2,7 dB.
  • Mélanger les images pour l’interpolation produit des images doubles ; l’interpolation à compensation de mouvement a obtenu 35,5 dB sur un plan de drone fluide, contre 29,6 dB pour le mélange, et a perdu son avance sur un plan tremblé.
  • Jugez les problèmes temporels à la cadence de la source, en mouvement. Une image fixe les masque tous.

Ce que veut dire cohérence temporelle

Une image fixe n’a besoin d’être juste qu’une fois. Une image de vidéo doit être juste et s’accorder avec celles qui l’entourent, car l’œil est très sensible au changement : une texture immobile sur une image et décalée sur la suivante se lit comme un fourmillement, même si chaque image paraît correcte prise à part.

DéfautCe que vous voyezCause typique
Scintillement de luminositéToute l’image pulse, plus claire puis plus sombreÉclairage qui pulse, exposition d’un vieux film, réglages automatiques image par image
Fourmillement de textureLes détails fins bouillonnent ou flottent alors que la scène est immobileUn modèle qui reconstruit la texture indépendamment sur chaque image
TraînéesLes objets en mouvement traînent une copie pâle derrière euxMoyenne d’images sans tenir compte du mouvement
Images doubles et déformationsDeux copies superposées, ou des bords tordus, dans les nouvelles imagesInterpolation par mélange ou mal appariée
SaccadesLe mouvement saute au lieu de coulerConversion de cadence ou images perdues

Les saccades et les images perdues sont des problèmes de timing plus que de cohérence ; comment corriger une vidéo saccadée les traite.

Pourquoi le traitement image par image scintille

Les modèles et filtres d’image ne savent pas que l’image 101 suit l’image 100. Appliqués à chaque image séparément, ils repartent d’une décision neuve à chaque fois. Le bruit, la compression et les petits mouvements diffèrent d’une image à l’autre, donc les décisions aussi : un filtre d’accentuation renforce des bords légèrement différents, un modèle génératif invente des pores et des feuilles légèrement différents, et un étalonnage automatique choisit des niveaux légèrement différents. Lai et ses collègues l’ont résumé dans leur article de 2018 : appliquer des algorithmes de traitement d’image à chaque image indépendamment donne souvent des résultats incohérents dans le temps.

Il y a trois façons d’en sortir :

  • Utiliser un modèle qui voit plusieurs images. Les modèles de restauration multi-images et récurrents alignent les images voisines et réutilisent ce sur quoi elles s’accordent : un détail apparaît une fois puis reste en place. Pourquoi la restauration IA donne un rendu plastique explique leur fonctionnement et leurs points faibles.
  • Stabiliser le résultat après coup. Les travaux sur la cohérence temporelle aveugle prennent la vidéo d’origine et le résultat image par image, et en tirent une version plus stable. La méthode de Lai entraîne un réseau récurrent avec des pertes temporelles à court et à long terme ; Deep Video Prior entraîne un réseau sur la seule vidéo concernée, sans grand jeu de données ni flux optique.
  • Baisser l’intensité. Moins un traitement image par image modifie l’image, moins il y a de matière à scintiller. C’est pourquoi des réglages légers paraissent souvent plus calmes en mouvement que des réglages forts, même quand les forts sont plus beaux sur une image fixe.

Pour les clips issus de générateurs vidéo, où la texture qui rampe est fréquente, voir comment réduire le scintillement d’une vidéo générée par IA.

Le scintillement de luminosité et le filtre deflicker

Le scintillement de toute l’image vient en général de la source, pas du traitement :

  • L’éclairage. Le guide de Sony sur le scintillement indique que les anciens tubes fluorescents scintillent 100 ou 120 fois par seconde, alors que les éclairages LED peuvent scintiller des centaines ou des milliers de fois par seconde. Quand la vitesse d’obturation ne correspond pas au cycle, les images captent la lumière à des moments différents.
  • Le film. Chaque image d’un scan de film a été exposée séparément, et de petites différences d’exposition et de densité pulsent à la lecture ; numériser et restaurer des films 8 mm et 16 mm couvre tout le nettoyage.
  • Les réglages automatiques. L’exposition automatique, la balance des blancs automatique ou tout filtre de niveaux automatiques appliqué image par image peut osciller d’une image à l’autre.

Le filtre deflicker de FFmpeg mesure la luminosité moyenne de chaque image, calcule une moyenne glissante sur les images voisines et ramène chaque image vers cette moyenne. Nous avons ajouté un fort scintillement à un clip d’exemple fourni avec KwaFlux et mesuré de combien la luminosité moyenne sautait entre deux images consécutives :

VersionSaut d’une image à l’autre (écart type)
Clip d’origine0,27
Scintillement ajouté8,71
deflicker=size=5:mode=pm1,30
deflicker=size=9:mode=am1,22
deflicker=size=15:mode=pm0,67
Luminosité moyenne par image pour le clip d’origine, la version qui scintille et la version traitée par deflicker

Une fenêtre plus large lisse davantage, mais elle aplatit aussi les variations de luminosité voulues, comme un fondu, un nuage qui passe ou une lampe qu’on allume. Commencez avec la taille par défaut de 5 images :

ffmpeg -i input.mp4 -vf "deflicker=size=5:mode=pm" -c:v libx264 -crf 18 -c:a copy deflickered.mp4

Deflicker égalise l’image entière. Il ne corrige pas les bandes qui défilent dans l’image, dues à un obturateur roulant (rolling shutter) qui saisit la lumière au milieu d’une pulsation ; dans ce cas, la vraie solution est d’accorder la vitesse d’obturation à l’éclairage au moment du tournage.

Débruitage temporel et traînées fantômes

Le débruitage temporel est efficace parce que le bruit change d’une image à l’autre et que la scène, pour l’essentiel, ne change pas. Tout le problème est dans « pour l’essentiel » : partout où quelque chose bouge, moyenner la même position de pixel sur plusieurs images mélange un objet qui s’est déplacé, et laisse un fantôme derrière lui.

Nous avons ajouté du bruit à un plan de drone fluide et comparé une simple moyenne d’images avec un filtre temporel adaptatif qui cesse de moyenner là où un pixel change trop :

FiltrePSNR par rapport au clip propre
Entrée bruitée30,3 dB
tmix=frames=3 (simple moyenne de 3 images)29,8 dB
tmix=frames=5 (simple moyenne de 5 images)28,1 dB
hqdn3d=8:6:12:9 (spatial et temporel)33,0 dB
atadenoise (moyenne temporelle adaptative)33,1 dB

La simple moyenne a fait moins bien que ne rien faire : le bruit a baissé, mais l’étalement du paysage en mouvement a coûté plus qu’il n’a rapporté. Sur un sujet plus rapide, les traînées sautent aux yeux.

La même image du dragon avec du bruit, après une moyenne sur 3 images avec traînées fantômes, et après le filtre adaptatif atadenoise sans traînées

Utilisez donc des filtres temporels qui s’adaptent au mouvement, gardez une intensité temporelle modérée, et vérifiez les bords en mouvement, pas seulement l’arrière-plan uni :

ffmpeg -i input.mp4 -vf "atadenoise=0a=0.1:0b=0.2:1a=0.1:1b=0.2:2a=0.1:2b=0.2" -c:v libx264 -crf 18 -c:a copy denoised.mp4

Les seuils déterminent à partir de quand atadenoise considère qu’un pixel a changé et cesse de le moyenner. Des seuils plus élevés retirent plus de bruit, au risque de plus de traînées. Pour le volet spatial du débruitage, voir débruiter, débloquer, accentuer, corriger les couleurs.

Interpolation d’images : duplication, mélange, compensation de mouvement, IA

L’interpolation d’images crée des images que la caméra n’a pas enregistrées, pour augmenter la cadence ou ralentir le mouvement. Il existe quatre façons de fabriquer l’image intermédiaire :

  • La duplication répète l’image précédente. Rien n’est inventé, mais le mouvement reste aussi saccadé qu’avant.
  • Le mélange fusionne les deux images voisines. Tout ce qui bouge apparaît deux fois, à moitié d’intensité : c’est l’image double.
  • L’interpolation à compensation de mouvement estime où se déplace chaque bloc de pixels et le dessine à mi-chemin de ce trajet. Bien faite, elle donne un seul objet net au bon endroit ; là où l’estimation échoue (bords, occultations, motifs répétés), les bords se tordent et des fragments se déchirent.
  • L’interpolation IA estime le mouvement avec un réseau et synthétise l’image. RIFE estime directement les flux intermédiaires et tourne en temps réel sur GPU ; FILM utilise un réseau unique conçu pour les grands mouvements entre images.

Pour mesurer les trois premières, nous avons supprimé des images de deux clips d’exemple fournis avec KwaFlux, les avons reconstruites avec FFmpeg, puis avons comparé les images reconstruites aux vraies :

MéthodePlan de drone fluide, 4× (6 à 24 fps)Plan à main levée tremblé, 2× (15 à 30 fps)
Duplication (fps)26,9 dB24,2 dB
Mélange (framerate)29,6 dB25,5 dB
Compensation de mouvement (minterpolate, mci)35,5 dB25,2 dB
Une image intermédiaire d’un clip à 5 fps obtenue par duplication, par mélange et par compensation de mouvement, avec un graphique des scores ci-dessus

Deux leçons. Sur un mouvement fluide, la compensation de mouvement a pris une nette avance : environ 6 dB de plus que le mélange. Sur un plan à main levée tremblé, toutes les méthodes ont peiné, car l’interpolation suppose que le mouvement entre deux images est régulier, alors que le tremblement change de sens d’une image à l’autre. Si la caméra tremble, stabilisez d’abord le plan avec la Stabilisation vidéo ou un autre stabilisateur, puis interpolez.

Le mode à compensation de mouvement de FFmpeg, avec détection des changements de plan pour éviter les morphings à travers les coupes :

ffmpeg -i input.mp4 -vf "minterpolate=fps=60:mi_mode=mci:mc_mode=aobmc:me_mode=bidir:vsbmc=1:scd=fdiff" -c:v libx264 -crf 18 -c:a copy smooth60.mp4

C’est lent sur CPU : sur notre ordinateur portable, convertir 5 secondes de 1080p à 24 fps en 60 fps a pris 134 secondes. La version par mélange est rapide, et suffit pour les panoramiques lents où les images doubles se voient peu :

ffmpeg -i input.mp4 -vf "framerate=fps=60" -c:v libx264 -crf 18 -c:a copy blend60.mp4

Les artefacts d’interpolation se concentrent à des endroits prévisibles : mains et pieds rapides, roues qui tournent, clôtures et autres motifs répétés, objets qui passent l’un devant l’autre, et changements de plan. Pour savoir s’il faut vraiment monter la cadence, voir comment convertir une vidéo en 60 fps.

Comment vérifier la cohérence temporelle

Aucun de ces défauts ne se juge sur une image fixe. Trois contrôles en attrapent la plupart :

  1. Regardez à la cadence de la source, à 100 %. Observez les zones unies pour repérer une texture qui rampe, les bords en mouvement pour les traînées et les nouvelles images pour les images doubles.
  2. Tracez la luminosité moyenne de chaque image. Une courbe régulière, c’est bon signe ; une courbe en dents de scie, c’est du scintillement :
ffmpeg -i input.mp4 -vf "signalstats,metadata=print:key=lavfi.signalstats.YAVG:file=yavg.txt" -f null -

Le fichier texte liste la luminance moyenne (YAVG) de chaque image, prête pour un graphique dans un tableur.

  1. Regardez la différence entre images consécutives. Dans une scène immobile, un clip traité ne devrait pas changer davantage que la source. Le fourmillement ressort sous forme de mouchetures dans les zones unies :
ffmpeg -i input.mp4 -vf "tblend=all_mode=difference,eq=contrast=4" -c:v libx264 -crf 18 -an diff.mp4

Lancez les mêmes commandes sur la source et sur le résultat, puis comparez.

Ce qui change

  • Les modèles vidéo remplacent les modèles d’image. La super-résolution et la restauration vidéo propagent désormais l’information sur de nombreuses images au lieu de traiter des paires, et les upscalers à diffusion ajoutent des couches temporelles ou partent de générateurs vidéo pour que les détails soient générés de façon cohérente dans le temps.
  • L’interpolation gagne en vitesse et gère des mouvements plus grands. L’estimation de flux en temps réel (RIFE) et les réseaux uniques conçus pour les grands mouvements (FILM) ont fait passer l’interpolation des expériences hors ligne aux lecteurs et aux logiciels de montage.
  • La cohérence se mesure au lieu d’être supposée. Les travaux sur la cohérence temporelle aveugle ont donné au domaine des moyens de quantifier le scintillement, qui devient une métrique publiée à côté de la netteté.

Ce que fait KwaFlux

  • La Réparation intelligente s’appuie sur les images voisines. Dans Réparation de qualité, Réparation intelligente puise dans les images voisines au lieu de reconstruire chaque image à partir de rien. Les types de Réparation par scène travaillent image par image : prévisualisez-les en mouvement avant d’exporter.
  • L’Interpolation d’images passe en dernier. L’atelier Réparation de qualité enchaîne Désentrelacement, puis Réparation de qualité, puis Interpolation d’images : les nouvelles images sont fabriquées à partir de l’image réparée. Choisissez 2x (par défaut), 3x, 4x ou une cible Personnalisé de 30 à 144 fps, en mode Général ou Rapide.
  • La détection de qualité note la fluidité. Son axe Fluidité couvre « Saccades, tremblements, scintillement, et si la cadence est suffisante », et elle peut suggérer une cadence cible pour l’interpolation.
  • Prévisualisez à la vraie cadence. Les aperçus IA sont limités par défaut à 15 fps ; choisissez Suivre la source avant de juger le scintillement ou le fourmillement. Les aperçus avec interpolation sont lus à la cadence de sortie.
  • Corrigez d’abord le scintillement de la source. Pour un scintillement de luminosité dû à l’éclairage ou au film, lancez la commande deflicker ci-dessus avant l’import, puis réparez et interpolez.

Problèmes courants

ProblèmeCause probableSolution
La texture restaurée bouillonne dans les zones uniesTraitement image par image qui invente des détailsUtilisez un restaurateur multi-images, baissez l’intensité, jugez à la cadence de la source
Toute l’image pulseScintillement d’éclairage ou d’exposition dans la sourcedeflicker avec une fenêtre de 5 images ; la prochaine fois, accordez l’obturation à l’éclairage
Des copies pâles traînent derrière le mouvementMoyenne temporelle sans gestion du mouvementPassez à un filtre adaptatif comme atadenoise ; baissez l’intensité temporelle
Images doubles dans les nouvelles imagesInterpolation par mélangeUtilisez une interpolation à compensation de mouvement ou IA
Bords tordus ou fragments déchirés dans les nouvelles imagesL’estimation du mouvement a échoué sur des occultations ou des motifs répétésBaissez le multiplicateur, ou renoncez à l’interpolation sur ce plan
Un morphing entre deux plansInterpolation à travers une coupeActivez la détection des changements de plan, ou coupez d’abord le clip
L’interpolation est pire sur un plan trembléLe mouvement change de sens entre les imagesStabilisez d’abord, puis interpolez

Les limites

  • Aucune interpolation ne récupère un mouvement que la caméra n’a pas enregistré. Les nouvelles images sont des estimations, et les mouvements rapides ou masqués sont devinés.
  • Deflicker ne corrige pas les bandes d’obturateur roulant ni les variations de luminosité qui diffèrent selon les zones de l’image.
  • Le lissage temporel ne sait pas séparer un mouvement rapide du bruit. Poussez-le assez loin et les détails en mouvement s’étalent.
  • Les modèles multi-images réduisent le fourmillement sans pouvoir le supprimer là où l’alignement échoue, par exemple sur l’eau, la fumée ou les foules.

Conclusion

La cohérence temporelle fait la différence entre une vidéo qui a l’air traitée et une vidéo qui a l’air filmée. Corrigez le scintillement à la source, choisissez des filtres et des modèles qui regardent au-delà d’une seule image, gardez une intensité modérée, et jugez chaque résultat en mouvement, à la cadence de la source.

KwaFlux exécute l’Interpolation d’images sur votre propre GPU. Le traitement IA tourne sur votre propre GPU et vos fichiers média ne sont pas envoyés pour être traités. KwaFlux fonctionne sous Windows 10 (64 bits, version 1809 ou plus récente), Windows 11 et macOS 12 ou plus récent sur Apple Silicon. Les aperçus ne demandent pas de compte : rendez un aperçu de 1, 3 ou 5 secondes sur n’importe quel clip. Une connexion avec un forfait payant n’est requise que pour exporter, convertir, réparer un fichier ou télécharger un fichier depuis un lien.

Testez sur vos propres images

Téléchargez KwaFlux et prévisualisez gratuitement les effets sur vos propres images avant de payer — sans compte, traitement sur votre GPU, sans envoi de vos médias. Les aperçus vidéo durent 1, 3 ou 5 secondes, ceux de la stabilisation 5, 15 ou 30 secondes.

Questions fréquentes

Pourquoi une vidéo améliorée par IA scintille-t-elle ?

Parce que le modèle traite chaque image isolément et prend à chaque fois des décisions légèrement différentes : la texture et la luminosité changent donc d’une image à l’autre. Les modèles multi-images, qui réutilisent les images voisines alignées, l’atténuent, et baisser l’intensité aide.

FFmpeg peut-il supprimer le scintillement d’une vidéo ?

En partie. Le filtre deflicker égalise les variations de luminosité de l’image entière et a réduit d’environ 85 % les sauts d’une image à l’autre dans notre test, mais il ne corrige ni les bandes qui défilent ni une texture qui fourmille. Pour cela, il faut une source plus stable ou un restaurateur multi-images.

Pourquoi l’interpolation d’images crée-t-elle des images fantômes ?

Parce que mélanger deux images montre deux fois un objet en mouvement, et que les méthodes à compensation de mouvement déchirent ou tordent les bords là où elles se trompent sur le mouvement, par exemple aux occultations ou sur des motifs répétés. Les mouvements rapides, tremblés ou en partie masqués sont les cas les plus difficiles ; voir comment convertir une vidéo en 60 fps.

Débruitage temporel ou spatial : lequel choisir ?

Ça dépend du mouvement. Sur les zones statiques, moyenner les images retire le bruit sans adoucir les détails ; sur le mouvement, la simple moyenne laisse des traînées et, dans notre test, a fait moins bien que l’entrée bruitée. Les filtres temporels adaptatifs combinent les deux et ont obtenu les scores les plus élevés.

Faut-il stabiliser avant ou après l’interpolation d’images ?

Avant. L’interpolation suppose que le mouvement entre deux images est régulier, et le tremblement de la caméra casse cette hypothèse. Dans notre test à main levée, la compensation de mouvement a perdu son avance sur le simple mélange ; stabiliser d’abord lui donne un mouvement régulier sur lequel travailler.

Sources

  1. Lai et al., "Learning Blind Video Temporal Consistency," ECCV 2018 (per-frame processing is inconsistent over time; short-term and long-term temporal losses) (consulté le 2026-10-22)
  2. Lei, Xing, and Chen, "Blind Video Temporal Consistency via Deep Video Prior," NeurIPS 2020 (trained on one video pair, no optical flow) (consulté le 2026-10-22)
  3. Huang et al., "Real-Time Intermediate Flow Estimation for Video Frame Interpolation" (RIFE) (consulté le 2026-10-22)
  4. Reda et al., "FILM: Frame Interpolation for Large Motion" (single network for large motion) (consulté le 2026-10-22)
  5. Chan et al., "BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment" (propagation across frames) (consulté le 2026-10-22)
  6. Zhou et al., "Upscale-A-Video: Temporal-Consistent Diffusion Model for Real-World Video Super-Resolution" (temporal layers in a diffusion upscaler) (consulté le 2026-10-22)
  7. Sony, "Understanding flicker" (fluorescent lights at 100 or 120 Hz, LED lighting faster; shutter speed and the flicker cycle) (consulté le 2026-10-22)
  8. FFmpeg Filters Documentation (`deflicker`, `tmix`, `atadenoise`, `framerate`, `minterpolate`, `signalstats`, `tblend`) (consulté le 2026-10-22)
  • interpolation d’images
  • qualité vidéo
  • restauration vidéo

Auteur et éditeur chez KwaFlux. Les articles sont relus par la rédaction de KwaFlux et s’appuient sur nos notes de recherche produit et les spécifications publiées.