édité le 12 - 08 - 11
Je vous propose cette fonction avisynth SoftSharpen dont le but initial était de traiter l'image en jouant sur l'aspect flou-net (soft-sharp) en fonction du mouvement des différentes scènes de la vidéo. L'objectif essentiel de ce script est de garder toute la compressibilité du film dans son ensemble : les objets statiques sont "sharpés", tandis que ceux en mouvement sont "blurés" en fonction de la vitesse de déplacement... Lorsqu'on veut concerver la compressibilité d'un film lent, il faut limiter le niveau de "sharp". En revanche, sur les films rapides et de bonne qualité originale, le "sharp" peut être régler assez fort, à condition d'en faire autant avec le "blur" (c'est du donnant-donnant ;-) ).
------
SoftSharpen(Video, "Flou", "Net", "Larg", "Haut", "Fast", "Preset", "Mouv", "DeBr", "DeBrT", "DeBan", "DeRin", "DeBl", "Line", "DCT", "AA", "Overlap", "Verbose", "Show" )
Voici les principales étapes du script :
Débruitage temporel,
Hausse (limitée) de la netteté dans les zones statiques,
Floutage (adaptatif) dans les zones en mouvement,
Débruitage spatial (évitant si possible le lessivage des visages),
Gain en compressibilité par DCT.
------
Les deux paramètres principaux sont "Net" (force du sharp, entre 0 et 30) et "DeBr" (niveau de débruitage, raisonnablement entre 0 et 10, mais peut être supérieur). On peut faire varier très progressivement ces deux paramètres, ou utiliser des presets, plus particulièrement preset="film" ou preset='light".
A part le sharpening (netteté), le bluring (flou) et le denoising (débruitage), d'autres procédés sont également disponibles :
resize ("Larg", "Haut" ), deringing ("derin" ), deblocking ("debl" ), debanding ("deban" ), et antialiasing ("AA" ) (ce dernier est assez expérimental...)
Lorsqu'on veut conserver la compressibilité d'un film lent, il faut limiter le niveau de "Net". En revanche, sur les films rapides et de bonne qualité originale, le "Net" peut être régler assez fort.
Exemples :
Code :
- video.SoftSharpen()
- video.SoftSharpen(Preset="light" )
- video.SoftSharpen(Preset="film", line=15)
- video.SoftSharpen(Net=22, Fast=true)
- video.SoftSharpen(Larg=1024, Haut=432)
- ...
- video.SoftSharpen(show=true) pour voir les zones traitées par le script
- video.SoftSharpen(verbose=true) pour voir les constantes du script
|
Dernière précision : le script requiert des filtres MSharpen, ASharp, DGDecode (ou mpeg2dec3), Deen, GradFun2db, RemoveGrain, DCTFilter, MaskTools v2 (ou v1) et MVTools2.
Les librairies dll nécessaires sont jointes dans ce zip : http://www.megaupload.com/?d=FHPOWR2Q
(570 Ko, Softsharpen.avsi et fichier "lisez moi" inclus)