Page 3 sur 7

Re: Avisynth : Filtres

Publié : lun. 19 janv. 2009 18:29
par Slamdink
Image

ylevels(2,1.02,255,0,255).tweak3(sat=1.02,bright=-10.0,cont=1.0,coring=false)
gaussianblur(border=-10,integrate=true)
limiter()
Undot()
Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.3, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)
et pour le sharping j'utilise le LSF compiné avec avec seesaw mais le résultat n'est pas très satisfaisant .
bon je suis larguer là je sais plus où donner la tête si il ya des proposition ça sera la bienvenu !!!MERCI d'avance

Re: Avisynth : Filtres

Publié : mer. 21 janv. 2009 16:00
par Lunyz
bjs

Petite question : comment tester de la meilleur des manière avant/après avoir utilisé les filtres avisynth ?

Re: Avisynth : Filtres

Publié : mer. 21 janv. 2009 16:17
par Laharl
Slamdink -> Tu utilise les filtres MSU ? ^^"

Lunyz -> Pas vraiment compris ta question mais si tu veux testez bah commence avec 1 fichiez mp4 ou .mkv ^^"

Re: Avisynth : Filtres

Publié : mer. 21 janv. 2009 16:20
par Lunyz
Comment voit on qu'un filtre fonctionne bien ou mieux qu'un autre :crazy:

Re: Avisynth : Filtres

Publié : jeu. 22 janv. 2009 03:04
par Slamdink
bjs

Petite question : comment tester de la meilleur des manière avant/après avoir utilisé les filtres avisynth ?

Lunyz a écrit :Comment voit on qu'un filtre fonctionne bien ou mieux qu'un autre :crazy:


dsl Lunz G pas vu ton poste; et pour te répondre, moi PERSO j''ouvre deux fichiers .avs dans deux fenêtres de VD (virtualdub); le premier avs avec le premier filtre que je veux tester et le deuxième sans ou bien avec un autre filtre si je veux comparer et pour voir quel effet ça ajoute à ma vidéo.

LinkinRPG Slamdink -> Tu utilises les filtres MSU ? ^^"



NON, j'utilise pas des filtres MSU, d'ailleur j'en ai pas testé bcp.

Re: Avisynth : Filtres

Publié : jeu. 22 janv. 2009 16:06
par chambeyc
Yo,

Ca fait un moment que j'ai pas mis les pieds dans ce topic tiens.

Pour revenir un peu en arriere:
- Le blur, ca veut dire en effet le flou en anglais, donc tous les filtres dont le nom contient blur, il faut s'attendre a ce qu'ils floutent l'image.
- TEdgeMask: Libium etait pas loin, mais a mon avis c'est pas ca :p . D'apres ce site , ca cree un bord tout autour de l'image avec un degrade (gradient), et ou tu peux modifier la luminosite et la couleur pour chacun des 4 bords. Ca equivaut plus ou moins au "BevelEdge" de Premiere je pense.




Sinon Slamdink, pour ton anime, si j'ai bien compris tu cherches surtout a avoir des bords de personnages plus nets.
Dans ce cas, tu devrais enlever tout d'abord de ton script la fonction gaussianblur => Ca applique un flou "gaussien", le contraire de ce qu'il te faut donc.

Si je reprends tes lignes:
- la premiere avec ylevels et tweak, ca corrige les couleurs et la luminance. Je sais pas trop comment on en regle les parametres, mais globalement le mieux c'est de rehausser toujours un peu les couleurs et la luminosite. Ca ne joue pas sur le flou.

-limiter, c'est quelque chose qui permet d'eviter d'avoir des noirs trop noirs, et des blancs trop blancs (ce qui apparamment peut poser probleme sur certains televiseurs). En gros si la luminosite d'un pixel est < 16, alors on lui donne la valeur 20, et si > 240 alors on lui donne 235 (alors que normalement on peut aller de 0 a 255). La encore, pas d'influence sur la nettete, que sur la luminosite.

- Le Undot et le LRemoveDust a la ligne d'apres, ca sert a enlever les petits points, le bruit numerique. Generalement, ca ne floute pas l'image tant que l'on en abuse pas (c'est des filtres "median"), ca la "nettoie" sans la rendre pour autant plus nette.

- Le FFT3DFilter, c'est pas mal mais pas top pour ce qu'il te faut: j'ai trouve pas mal de details ici:http://avisynth.org.ru/fft3dfilter/fft3dfilter.html.
En fait, c'est un "temporal denoiser", en gros on enleve du bruit .... ca a donc tendance a encore enlever des details a l'image! MAIS, heureusement, ya une option sharpen qui permet de compenser son effet et de re-rendre le tout plus net. D'apres mon lien:

Code : Tout sélectionner

good values about 0.3 to 1.0 (negative values results in reverse effect)

Toi tu es a 0.3, tu peux par exemple monter cette valeur jusqu'a 1.0 pour essayer de re-rendre nette l'image.

- Enfin, Soothe, c'est bien pour eviter les artifacts apres un fort sharpen. Ici le FFT3DFilter, il fait qu'un faible sharpen en fait.




J'ai trouve ce tres bon lien, tout en francais, qui explique le fonctionnement de plein de filtres:
http://www.unite-video.com/phpbb/archiv ... synth.html
Honnetement, je te conseille de ne pas utiliser plus que ces filtres la: ils font deja a peu pres tout ce qu'il faut et sont souvent plus simples a utiliser.


Enfin pour revenir sur ton script, essaye ca (les lignes avec des # sont des commentaires, tu peux les laisser dans le .avs):

Code : Tout sélectionner

# Petit nettoyage + retouche des couleurs
Undot()
Tweak(0,1.1,1,1.2)

# Ensuite on fait vraiment le "sharp", c'est lui qui rend vraiment l'image plus nette
Asharp(2,4,0.25,true)

# on garde ce bout de ton script: il permet une meilleure compression
Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

Re: Avisynth : Filtres

Publié : jeu. 22 janv. 2009 17:55
par Lunyz
Merci pour ta réponse sa m'a bien éclairer.

Je voudrais qu'on m eclaire sur ce petit bout de code. Je n'ai pas compris ce qu'il fesai :


# on garde ce bout de ton script: il permet une meilleure compression
Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

#-----------
ConvertToYUY2()

#-----------_2dcleanYUY2(0=interlaced filtering off, 6=strength, 2=blurring radius (x), 3=blurring radius (y))
_2dcleanYUY2(0,3,2,3)

Sinon mon script ressemble a sa :

#-----------Ouverture
DirectShowSource("F:\Mes documents\Kurokami.mkv", fps=25, audio=false)
AssumeTFF() # or AssumeBFF()
SmartDecimate()

#-----------Recadrage
LanczosResize(640,360)
Undot()

#-----------Débruitage
Convolution3D(preset="movieHQ")
Undot()

#-----------Affinage couleur
Asharp(2,4,0.25,true)
Undot()

Si on peut m dire s'il y a mieux ou si j'ai oublier quelque chose :
::?:

Re: Avisynth : Filtres

Publié : ven. 23 janv. 2009 14:40
par Lunyz
help up dsl :siffler:

Re: Avisynth : Filtres

Publié : sam. 24 janv. 2009 00:13
par chambeyc
Dis donc, tu as posté hier, pas la peine de faire un up :nonono: ....

A propos du code suivant:

Code : Tout sélectionner

Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

Comme je le disais avant, le FFT3DFilter est un filtre qui enlève le bruit sur les images, ET celui qui apparait d'une image a la suivante (d'où le "temporal" smoother). Pourquoi FFT? Parce que ça utilise la transformée de Fourier (Fast Fourier Transform): c'est un nom barbare je sais ^^", mais le principe derrière est simple: on traduit l'image en "fréquences", et on vire les hautes fréquences qui correspondent aux brusque changement dans l'image. Conséquence directe: on vire le bruit, mais on floute un peu tous les bords des personnages et objets. C'est pour ça qu'en plus il est appelé avec l'option sharpen, pour re-corriger un peu le tir.
A la fin de la ligne, le LRemoveDust (cf mon post précédent) est appliqué a l'image qui résulte du filtre FFT3DFilter: C'est ce que signifie le "." entre les 2 filtres. De la même façon Slamdink avait appelé tweak3 et ylevel l'un a la suite de l'autre en écrivant ylevel().tweak3()

Enfin pour que le Soothe s'applique a la bande vidéo, on la range dans une valeur à la ligne précédente (dans notre cas, c'est "Sm") puis on file cette valeur en premier argument dans la parenthèse de Soothe.

Les 2 autres lignes:

Code : Tout sélectionner

ConvertToYUY2()
_2dcleanYUY2(0,3,2,3)

ConvertToYUY2 et _2dcleanYUY2(0,3,2,3), c'est là encore, pour nettoyer: ça nettoie plus efficacement je trouve meme que plusieurs undot a la suite. Si on monte trop les valeur pour 2dcleanYUY2, on a un peu l'effet d'une aquarelle.
Le ConvertToYUY2, ça convertit l'image d'un format RGB (Rouge,Vert, Bleu) vers un format YUY2 (Sans rentrer dans le détail, c'est un autre espace de couleurs, avec la luminosite et les chrominances). C'est indispensable car 2dcleanYUY2 ne marche qu'avec cet "espace" la.



Pour revenir sur ton script, j'ai 3 trucs à pointer du doigt:
1/
D'abord, les 2 lignes:
AssumeTFF() # or AssumeBFF()
SmartDecimate()
C'est pour des-entrelacer: tu ne devrais pas en avoir besoin ... si tu utilises des fansubs (et c'est le cas vu le DirectShowSource au dessus), les sources ne sont jamais entrelacées. Ca ne sert que quand tu utilises des DVDs comme sources.
2/
Pour le convolution, tu utilises le preset movieHQ, mais vu qu'il existe un preset animeHQ, je te conseille plutot celui là, ça sera plus adapté(en fait, ça devrait pas changer grand chose ^^")
3/
le Asharp n'affine pas les couleurs (le commentaire est pas bon), il accentue les bords, et essaie de rendre plus net. Pour les couleurs c'est Tweak ou Levels qu'il faut utiliser.

Re: Avisynth : Filtres

Publié : mar. 27 janv. 2009 17:18
par Lunyz
yep

Le code que j'utilise :
DirectShowSource("F:\Mes documents\Kurokami.mkv", fps=25, audio=false)
LanczosResize(640,360)
undot()
Convolution3D(preset="animeHQ")
undot()
Tweak(0,1.1,1,1.2)
Asharp(2,4,0.25,true)
ConvertToYUY2()
_2dcleanYUY2(0,3,2,3)

J'ai essayé ce petit bout de code

Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

- Cela me retourne l'erreur suivante :
echec de l'ouverture de Avisynth:
Script error : there is no function named "FFT3DFilter"
:cry2:

- Sauriez-vous comment je pourrais lisser les bords noirs dans les sources? J'ai un tout petit effet d'escalier genant.

merci beaucoup

:crutch:

Re: Avisynth : Filtres

Publié : sam. 7 févr. 2009 17:37
par Slamdink
Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

- Cela me retourne l'erreur suivante :
echec de l'ouverture de Avisynth:
Script error : there is no function named "FFT3DFilter"


il faut avoir le "FFT3Filter.dll" ds ton script avs et tu dois l'appeler par un LoadPlugin("chemin du fichier où t'as mis tes Plugin\FFT3DFilter.dll"). tu dois avoir qlque chose ds le genre loadplugin("C:\Plugin\FFT3DFilter.dll")

pour ta 2iéme question il faut attendre quelque'un pour y répondre car le pose la mm question ^^"

Re: Avisynth : Filtres

Publié : mar. 17 févr. 2009 19:56
par Lunyz
Slamdink a écrit :
Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

- Cela me retourne l'erreur suivante :
echec de l'ouverture de Avisynth:
Script error : there is no function named "FFT3DFilter"


il faut avoir le "FFT3Filter.dll" ds ton script avs et tu dois l'appeler par un LoadPlugin("chemin du fichier où t'as mis tes Plugin\FFT3DFilter.dll"). tu dois avoir qlque chose ds le genre loadplugin("C:\Plugin\FFT3DFilter.dll")

pour ta 2iéme question il faut attendre quelque'un pour y répondre car le pose la mm question ^^"


Merci pour ta réponse.
Apres plusieurs test je noter que j'avais plus de résultat satisfaisant en ne méttant que :

DirectShowSource("F:\Mes documents\Ippo 03.mp4", fps=25, audio=false)
LanczosResize(640,360)
undot()
Convolution3D(preset="animeHQ")
undot()
ConvertToYUY2()
_2dcleanYUY2(0,3,2,3)

Re: Avisynth : Filtres

Publié : mar. 6 oct. 2009 10:58
par Snowcrash
Je deterre ce topic car j'ai besoin d'aide pour nettoyer mes sources.
Chambeyc, Libium votre aide est la bienvenue.

Bon j'ai relu les premiers posts quand meme.

En fait que me conseillez vous pour nettoyer une source sombre?
Pour les sequences les plus sombres de mes sources, on a souvent des blocs de pixels qui apparaissent.
Il y a un filtre efficace pour traiter ca ?

Apparement 2dclean semble interessant...

Allez les coupains, je vous en serais reconnaissant. :)

Re: Avisynth : Filtres

Publié : mar. 6 oct. 2009 11:55
par chambeyc
Tu as du bol, pour une fois que je passe dans les topics d'aide ^^" ....

Tout d'abord, une petite note si tes sources sont trop sombres: c'est le filtre Levels qui permet de retoucher tout ca.

Mais bon la ton probleme, c'est apparamment plutot des macroblocks qui font tache: c'est liee au pricinpe meme de fonctionnement des codecs, ils decoupent les images en blocs pour avoir moins de donnees a conserver.
Apres une petite recherche, il me semble que le filtre le plus adapte est : Deblock_QED. Pour en faire, une extension, suis les indications decrites ici (changer l'extension du fichier .avs fourni en .avsi pour en faire un plugin).

EDIT: evidemment j'ai oublie de mettre l'url ici et je ne retrouve plus la page ...
Concrètement il suffit de récupérer ce fichier, avec l'extension .avsi, et de le copier dans le répertoire plugin d'avisynth pour qu'il soit chargé automatiquement.

J'ai jamais teste par contre, je pourrais pas t'aider plus que ca sur les parametres ;)

Re: Avisynth : Filtres

Publié : mer. 7 oct. 2009 16:02
par Kyden
Lunyz a écrit :yep

Le code que j'utilise :
DirectShowSource("F:\Mes documents\Kurokami.mkv", fps=25, audio=false)
LanczosResize(640,360)
undot()
Convolution3D(preset="animeHQ")
undot()
Tweak(0,1.1,1,1.2)
Asharp(2,4,0.25,true)
ConvertToYUY2()
_2dcleanYUY2(0,3,2,3)

J'ai essayé ce petit bout de code

Sm=FFT3DFilter(sigma=2.0, plane=0, bw=48, bh=48, bt=3, ow=16, oh=16, sharpen=0.6, interlaced=false).LRemoveDust(17,2)
Soothe0(Sm,last)

- Cela me retourne l'erreur suivante :
echec de l'ouverture de Avisynth:
Script error : there is no function named "FFT3DFilter"
:cry2:

- Sauriez-vous comment je pourrais lisser les bords noirs dans les sources? J'ai un tout petit effet d'escalier genant.

merci beaucoup

:crutch:


Putain on dirait un bot qui parle... :crazy: