Test produit · Effaceur vidéo · GUIDE PRATIQUE

Suppression des sous-titres, filigranes et commentaires d’une vidéo : test de huit cas d’occultation

Un logo fixe sur un fond simple est plus facile à supprimer qu’un texte sur un visage ou un tissu. Nous publions les huit résultats contrôlés, y compris les cas où la retouche améliore à peine l’image.

Il s’agit de l’export réel du navigateur pour un échantillon contrôlé de sous-titres. Les sous-titres ont été ajoutés pour l’expérience ; ils ne figuraient pas dans l’interview d’origine. Un extrait de deux secondes ne peut pas représenter n’importe quel média ni les vidéos longues. Images source et notes de test

Commencez par le résultat : la difficulté dépend de ce qui est masqué

« Supprimer des sous-titres » ne correspond pas à un seul niveau de difficulté. Il peut s’agir d’une marque fixe dans un coin sur un mur uni, d’un logo sur un visage, d’un texte translucide sur du tissu, de commentaires défilants, de sous-titres sur deux lignes ou d’un texte sur une scène qui change. Le résultat dépend de la présence ou non d’un arrière-plan propre dans d’autres images, de la surface masquée, du déplacement de la superposition et de la texture qui subsiste après la retouche.

Nous avons comparé l’inpainting classique de Telea à la configuration STTN sélectionnée dans le projet au moment du test. Les résultats se sont améliorés sur les fonds unis et les commentaires mobiles peu nombreux. Pour un filigrane difficile recouvrant un visage, le PSNR n’a augmenté que de 0,87 dB et le visage retouché restait visiblement déformé. Le gain n’était que de 1,12 dB pour un texte translucide sur du tissu. Ces échecs figurent dans le tableau : un résultat réussi avec un logo dans un coin ne représente pas toutes les vidéos.

Comment les huit scènes ont été conçues

Les tests contrôlés utilisent les mêmes images d’une interview de DVIDS relevant du domaine public, ramenées à deux secondes et normalisées à 640 × 360 pixels et 24 images par seconde, soit 48 images. Les testeurs ont ajouté des logos synthétiques dans les coins, du texte translucide, des sous-titres et des commentaires défilants sur des images sans retouche. L’image d’origine fournit donc une référence exacte pour les pixels masqués. Le modèle de retouche reçoit les images occultées et un masque, pas l’image sans retouche. Les huit cas sont des variantes d’une même source, et non huit vidéos tournées séparément ni un échantillon des fichiers envoyés par les utilisateurs.

La principale mesure est le PSNR dans la zone masquée synthétiquement. Une valeur plus élevée signifie que les pixels se rapprochent davantage de la référence propre connue. Le gain correspond à la configuration de retouche sélectionnée moins la valeur de référence de Telea. Les cas de sous-titres utilisent STTN avec des masques resserrés autour des glyphes ; les autres cas utilisent STTN. Le PSNR mesure la distance entre les pixels, pas le naturel de l’image aux yeux des personnes qui la regardent. Le tableau principal est calculé avant l’encodage final de la vidéo ; les effets de l’encodage sont présentés séparément.

Les huit cas contrôlés

Cas synthétiquePSNR de référence TeleaConfiguration sélectionnéeGainRappel du masque de superposition
Logo graphique fixe · fond uni33,87 dB41,94 dB+8,08 dB100 %
Logo graphique fixe · sur un visage11,98 dB12,85 dB+0,87 dB100 %
Filigrane de texte translucide · fond uni36,24 dB43,38 dB+7,15 dB100 %
Filigrane de texte translucide · texture de tissu15,52 dB16,64 dB+1,12 dB100 %
Commentaires défilants · une ligne simple16,49 dB33,34 dB+16,85 dB100 %
Commentaires défilants · deux lignes sur une personne17,44 dB28,15 dB+10,71 dB99,92 %
Sous-titres incrustés · une ligne simple16,44 dB22,29 dB+5,85 dB100 %
Sous-titres incrustés · cas difficile sur deux lignes17,64 dB22,17 dB+4,53 dB100 %

Un PSNR élevé signifie que, dans ces exemples synthétiques, les pixels masqués se rapprochent davantage d’une référence propre. Cela ne garantit pas un résultat visuellement réussi. Dans le cas du logo sur un visage, le rappel du masque était de 100 %, mais les détails du visage étaient visiblement abîmés : détecter tous les pixels de la superposition ne signifie pas les restaurer correctement. La comparaison ci-dessous utilise des images publiques avec un sous-titre synthétique et un résultat réel de retouche dans le navigateur.

Le cas difficile des commentaires défilants a également fait l’objet d’un essai facultatif avec un masque affiné : il a obtenu 24,91 dB et un rappel du masque de 99,60 %, contre 28,15 dB et 99,92 % avec le masque par défaut. Cette variante permet d’étudier le compromis entre une limite plus précise et la similarité des pixels, mais elle ne remplace pas les valeurs du tableau par défaut à huit cas. Ces deux valeurs restent des mesures faites sur une seule scène synthétique.

Comparaison d’images : référence sans texte, sous-titre synthétique et résultat de la suppression dans le navigateur.
Un échantillon de sous-titres contrôlé de deux secondes. Le sous-titre a été ajouté pour le test ; la personne et le lieu proviennent d’images publiques créditées.
Comparaison d’images : référence sans texte, commentaires défilants synthétiques et résultat de la suppression dans le navigateur.
Les commentaires mobiles posent un problème de détection image par image. Dans ce test à une seule ligne, la retouche fonctionne ; cela ne permet pas de conclure aux résultats pour des commentaires denses qui couvrent tout l’écran.

Contre-vérification sur des exports compressés réels du navigateur

Le principal test de référence mesure la sortie du modèle avant l’encodage. Nous avons également exporté quatre entrées de test en MP4 avec le traitement local dans le navigateur de QuietTake, puis mesuré les fichiers décodés ; le rapport ne repose donc pas uniquement sur les tenseurs internes du modèle. Chaque sortie dure deux secondes, fait 640 × 360 pixels et comprend 48 images. La vidéo et l’audio ont été décodés sans erreur, et l’export a conservé sa piste audio. Cet essai a utilisé Chromium WebGPU sur un appareil Apple Silicon avec 16 Gio de mémoire ; le modèle était déjà dans le cache du navigateur. Le téléchargement initial du modèle, d’environ 98,5 Mo dans cette version, n’est pas inclus dans les durées.

TypePSNR de la zone masquée après encodageMAE de la zone masquée (0–255)MAE hors de la zoneDurée dans le navigateur
Logo graphique38,58 dB2,472,3023,4 s
Filigrane de texte translucide30,25 dB4,612,3023,4 s
Sous-titres sur deux lignes21,99 dB14,502,3120,4 s
Commentaires défilants24,16 dB5,572,3023,0 s

Une MAE d’environ 2,3 hors de la zone provient surtout des différences dues à l’encodage H.264. Cela ne signifie pas que le modèle de retouche a régénéré toute l’image. En revanche, les résultats du tableau sur l’algorithme sont mesurés avant encodage, sur les mêmes pixels synthétiques. Les deux tableaux portent sur des étapes différentes et leurs valeurs ne doivent pas être soustraites les unes des autres. La durée dans le navigateur a été mesurée sur cet appareil, pour des échantillons de deux secondes et avec le modèle déjà en cache ; elle ne constitue pas une promesse de traitement en temps réel ni de vitesse universelle.

Les échantillons d’entrée et de sortie, ainsi que les crédits, sont décrits dans la fiche des médias de l’expérience. La vidéo ci-dessus est un MP4 produit par le navigateur ; les images de comparaison présentent côte à côte les images retouchées, les références sans retouche et les superpositions synthétiques.

Pourquoi un bon score peut aboutir à une image abîmée

Un logo fixe sur une surface unie est plus facile à supprimer, car les pixels voisins fournissent au modèle un contexte plausible. Lorsqu’un logo recouvre un visage, les yeux, le nez et les détails de peau masqués peuvent ne jamais apparaître dans une autre image ; le modèle doit alors les estimer. Un PSNR plus élevé sur ce petit échantillon ne restitue pas les véritables traits de la personne. Pour l’actualité, les archives ou les preuves, ne présentez pas les pixels générés comme des faits historiques.

Le texte translucide sur un vêtement est un autre cas difficile. Le filigrane se mélange à la couleur du tissu ; le supprimer modifie donc aussi la texture. Des commentaires mobiles peu nombreux peuvent laisser apparaître l’arrière-plan dans d’autres images. Si les lignes se chevauchent, si une personne bouge rapidement ou si l’arrière-plan change, la retouche peut laisser des fragments ou des traînées, ou provoquer du scintillement. Les sous-titres sur des vêtements, des feuilles ou des motifs fins sont sensibles à la largeur du masque et à la forme des glyphes.

Le rappel du masque repose sur un dénominateur restreint : cette mesure indique quelle part d’une superposition synthétique connue a été couverte par le masque généré. Ici, sa position et sa forme sont contrôlées. Les vrais sous-titres peuvent comporter des contours, des ombres, du bruit de compression et des arrière-plans mobiles. Un rappel de 99,6 % ne signifie pas que « 99,6 % des vidéos des utilisateurs seront corrigées ». Il s’agit du pourcentage de pixels couverts dans cette expérience, pas du taux de réussite du produit.

Comment vérifier votre propre extrait

Commencez par faire une copie et choisissez un passage représentatif d’environ deux à cinq secondes qui contient la superposition difficile à traiter. Incluez du mouvement, un changement de sous-titres ou une coupure de scène si c’est là que le problème se pose. Un aperçu qui ne montre que la première image ne suffit pas si le défaut apparaît à la fin. Vérifiez que la zone sélectionnée n’inclut pas aussi des visages, des panneaux, du texte présent dans la scène ou des objets importants : plus la zone est grande, plus le modèle doit inventer de pixels.

Regardez la vidéo une fois à vitesse normale, puis inspectez la zone retouchée. Mettez en pause pour examiner la texture et les contours du texte ; regardez la vidéo en continu pour repérer les restes, les images fantômes, le scintillement ou les changements brusques de forme. Vérifiez les changements en dehors du masque, notamment sur les visages, les mains, les vêtements et l’arrière-plan. Inspectez la première et la dernière image, puis faites défiler la vidéo jusqu’à des positions aléatoires au lieu de vous limiter à l’image d’aperçu choisie par l’application.

Vérifiez aussi l’audio. L’entrée contrôlée contient une tonalité de test synthétique et les exports du navigateur ont conservé une piste audio décodable. Cela confirme le fonctionnement de la chaîne d’export lors de cet essai ; cela ne garantit pas que tous les navigateurs ou codecs préserveront toutes les bandes-son. Écoutez l’export réel, vérifiez sa durée et la synchronisation labiale, et examinez tout résultat muet inattendu au lieu de déduire le comportement audio à partir d’un aperçu sans son.

Pour reproduire le test de référence de l’algorithme, exécutez le script du projet à huit cas avec les mêmes entrées, références sans retouche et masques d’évaluation. Les résultats bruts et la sortie locale du navigateur sont stockés séparément. Indiquez la configuration du modèle, l’utilisation ou non du resserrement autour des glyphes, la résolution, la fréquence d’images, la méthode de sélection des images de référence et l’étape d’encodage. Ne combinez pas des valeurs PSNR obtenues à différentes étapes. H.264 modifie les pixels décodés ; la MAE après encodage ne remplace donc pas la comparaison du modèle avant encodage.

Le score du test de référence n’est pas un taux de réussite pour les utilisateurs

Le PSNR de la zone recouverte mesure la distance par rapport aux pixels propres connus. Cela fonctionne pour les tests synthétiques avec des références exactes. Les vidéos des utilisateurs contiennent rarement une copie non masquée de chaque image recouverte ; le même score ne peut donc pas être calculé pour les téléversements ordinaires. Un score plus élevé signifie que, dans cette configuration, les pixels se sont rapprochés de la référence. Cela ne garantit ni un mouvement naturel ni la récupération réelle de la scène masquée.

Le rappel du masque a lui aussi son propre dénominateur : la proportion des pixels connus de la superposition qui sont inclus dans un masque. Les emplacements et les formes synthétiques sont contrôlés, tandis que les sous-titres incrustés comportent des contours, des ombres et des artefacts de compression. Ne transformez pas un taux de rappel de 99,6 % en affirmant que « 99,6 % des vidéos sont nettoyées avec succès ». Les questions pratiques sont de savoir s’il reste du texte, si des objets normaux ont été effacés et si la réparation scintille pendant la lecture.

Le temps d’exportation d’un extrait de deux secondes dans le navigateur ne mesure pas la vitesse en temps réel. La tâche complète peut inclure le décodage vidéo, le téléchargement ou la lecture en cache du modèle, la détection du texte, la réparation, l’encodage audio et le téléchargement du résultat. Les téléchargements de première utilisation sont distincts. Le GPU, le pilote, le navigateur, le codec et la mémoire disponible influencent tous la vitesse et les échecs. Les nouveaux tests internes devraient indiquer les exécutions avec cache froid et cache chaud, ainsi que les replis de précision, les images manquantes ou les erreurs du navigateur.

Conseils pratiques pour les créateurs

  • Petit logo fixe sur un arrière-plan uni : commencez par un court aperçu et examinez ses contours par rapport à l’image.
  • Sous-titres incrustés ou commentaires espacés : vérifiez les changements de ligne, les mouvements du sujet et les changements de scène pendant tout l’intervalle.
  • Marques sur un visage, un tissu ou un objet important : vérifiez si les détails sous-jacents sont déformés ; conservez l’original si les détails générés sont inacceptables.
  • Piste de sous-titres distincte ou commentaires du lecteur : désactivez ou supprimez d’abord cette couche ; reconstruire les pixels de l’image est inutile et peut réduire la qualité.
  • Interviews, actualités et archives : conservez la source, indiquez que la copie réparée a été modifiée et ne présentez pas l’arrière-plan généré comme l’enregistrement original.

Dans l’effaceur vidéo, prévisualisez un court intervalle qui comprend la partie la plus difficile. Examinez les contours, les personnes, les mouvements et la bande sonore avant l’exportation. De bons résultats sur des marques fixes simples ne permettent pas de prédire les résultats dans les cas difficiles concernant les visages et les tissus de ce test.

Méthode et limites

L’étude de huit cas utilise Python et OpenCV pour l’évaluation des pixels, ainsi que de véritables exportations locales dans le navigateur Chromium. Les métriques sont calculées dans des zones de masques synthétiques par rapport à des images de référence propres ; la MAE correspond à l’erreur absolue moyenne par canal. L’ensemble de réparations utilise une seule interview appartenant au domaine public comme source de base, avec des superpositions synthétiques. Il ne couvre pas tous les plans, toutes les polices, toutes les résolutions, les vidéos en mode portrait, le HDR ni les commentaires denses défilant sur tout l’écran.

L’exécution dans le navigateur a utilisé Chromium WebGPU sur Apple Silicon avec 16 Gio de mémoire. Un décodage réussi prouve que les fichiers sont lisibles sur le plan structurel, mais pas que chaque image soit parfaite. Les fichiers du modèle étaient déjà en cache ; la première utilisation nécessite un téléchargement plus important. Un GPU, un navigateur, un pilote ou un codec d’entrée différent peut modifier la vitesse ou provoquer un échec.

Ces tests ne constituent pas une estimation du taux de réussite pour n’importe quel fichier téléversé aujourd’hui et ne garantissent pas la récupération réelle de l’image masquée. Les superpositions denses et les détails humains doivent tout de même être vérifiés. Si les détails de scène générés risquent d’être plus trompeurs que le maintien d’une marque visible, conservez la source ou interrompez la réparation.

ÉTAPE SUIVANTE

Poursuivez avec vos fichiers multimédias

Retour aux guides pour les créateurs