[AVISYNTH] : Les filtres à utiliser.

Résoudre un problème, apprendre comment créer un AMV, se perfectionner et découvrir de nouvelles techniques, consulter les tutoriels
Avatar de l’utilisateur
Snowcrash
Messages : 4272
Inscription : lun. 7 juil. 2008 13:32
Localisation : Dans la campagne jurassienne, mon gars !
Contact :

[AVISYNTH] : Les filtres à utiliser.

Messagepar Snowcrash » jeu. 28 août 2008 15:19

Voilà je pense que ce sujet pourra être utile à tout le monde.
Il s'adresse plutôt déjà à ceux qui connaissent Avisynth.

En fait il serait intéressant de recenser les filtres utiles pour traiter les sources vidéos. Libium en avait parlé sur defans.
Par exemple Neat Video existe pour VD mais qu'en est-il pour avisynth ?
La plupart des personnes utilise avisynth seulement pour ouvrir leur vidéo sous VD ou Zarx264GUI mais il peut être utile à pleins d'autres choses.

J'éditerais ce post au fur et à mesure que vous proposerez vos filtres.
Image

Avatar de l’utilisateur
Libium
Messages : 2333
Inscription : dim. 6 avr. 2008 00:32
Localisation : pour me trouver, c'est facile : la deuxième étoile à droite et tout droit jusqu'au matin
Contact :

Re: Avisynth : Filtres

Messagepar Libium » jeu. 28 août 2008 18:25

Déjà pour tout débutants sur AVS, la base est là quand même : http://www.bde.enseeiht.fr/clubs/japanim/trad/avisyntha.html

Sinon, j'avais posté ça, je vous le donne brut de pomme. C'était surtout un comparatif de filtres de désentrelacement, je donne pas les codes pour les utiliser !!

Voici quelques filtres avs pour le désentrelacement (hésitez pas à me contredire si je sors une connerie) :

#SangNom et Tomsmocomp qui a déjà été nommé plus haut.
J'ajouterai juste que SangNom a tendance à rajouter du bruit donc, quand je l'utilise, je rajoute Undot() derrière, ça fait pas de mal. Mais j'utilise surtout ce filtre comme anti-aliasing. D'ailleurs, faut penser à toujours baisser la valeur de l'aa, car sa valeur de base est super élevé (plus de 30 il me semble)

#Tdeint(), perso, j'aime bien ce filtre.. C'est efficace ! Mais mon galère un peu parfois.

# Sinon quand, j'ai une source PAL, j'aime bien utiliser LeakKernelDeint()

Au moins avec Leak, mon pc me fait jamais (ou presque pas) la gueule. Mais ça me donne pas toujours la qualité que je souhaite.

Sinon, en vrac, mais que je n'ai pas testé : il y TIVTC et decomb.


Par contre, sur mon DD, je garde ça, c'est un post de Chambeyc sur le fofo du MF que j'avais trouvé en cherchant des infos sur google et c'est bien utile :


1 - Desentrelacer / inverse telecine



Code : Tout sélectionner

#-----------Ouverture
mpeg2source("D:\bordel\MEP AMVdeFans\DVD1\dvd1.d2v")
SangNom(order=1,aa=32)


Filtre puissant mais très gourmant, désentrelace parfaitement, mais pas parfait pour le téléciné par contre.

Il existe aussi:

Code : Tout sélectionner

LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\avisynth_c.dll")
LoadCPlugin("C:\Program Files\AviSynth 2.5\plugins\C Plugins\SmartDecimate.dll")
#-----------Ouverture
mpeg2source("D:\bordel\MEP AMVdeFans\DVD1\dvd1.d2v")
AssumeTFF() # or AssumeBFF()
SmartDecimate()



Note:
A priori les dvds ont pour standards 25 fps, mais si vous avez besoin de changer, avant de désentrelacer utiliser:

Code : Tout sélectionner

AssumeFPS(25, 1, true)



2 - Recadrage

Les dvds sont en général en 720*576 (format 4:3), ont va d'abord se mettre en 640 / 4:3:

Code : Tout sélectionner

LanczosResize(640,480)


Si comme moi votre source contient des bandes noires, vous pouvez recadrer avec les arguments optionnels:

Code : Tout sélectionner

#LanczosResize(clip,target-width,target-height,source-left,source-top,source-width,source-height)
LanczosResize(640,480,12,8,696,568)



Maintenant on passe en 16:9 (régler le "top" comme vous le sentez le mieux)

Code : Tout sélectionner

#Crop(clip,left,top,width,height)
Crop(0,46,640,360)



3 - Nettoyage

C'est optionnel, mais ça peut bien arranger votre vidéo:

Undot supprime le "bruit", les petits points qui n'ont rien a faire là (filtre médian)

Code : Tout sélectionner

Undot()


Deen est un filtre lisseur assez agressif, vous pouvez avoir plus d'infos dans la doc d'avisynth:
C:/Program Files/AviSynth 2.5/Docs/english/ExternalFilters/deen.htm

Code : Tout sélectionner

Deen("a3d",3,4,8 )


Il existe un "clean" particulierement efficace sinon mais il faut convertir l'espace en YUV avant:

Code : Tout sélectionner

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



4 - les niveaux

Si vous travailler en espace YUV, vous aurez l'impression d'avoir des couleurs plus ternes par rapport a vos VOB. Pour compenser:

Code : Tout sélectionner

Levels(16, 1, 235, 0, 255, coring=false)

Avatar de l’utilisateur
chambeyc
Messages : 1706
Inscription : ven. 30 mai 2008 14:54
Localisation : Antibes

Re: Avisynth : Filtres

Messagepar chambeyc » jeu. 28 août 2008 22:17

Arf! Je me disais bien que j'avais déja lu ça quelque part !

Juste a titre d'exemple de ce qu'a marquer Libium au dessus, voici à quoi ressemblera les .avs pour mon prochain projet:

Code : Tout sélectionner

#-----------Ouverture
DirectShowSource("raw1280x720ep1.avi", audio=false)

#-----------Recadrage
LanczosResize(1024,576)

#-----------Nettoyage
Undot()
Convolution3D(preset="animeHQ")
Undot()

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

#------------retablissement des couleurs
Levels(16, 1, 235, 0, 255, coring=false)

- Noter juste l'utilisation de DirectShowSource qui permet d'ouvrir a peu pres tous les formats y compris les mp4.
- que j'ai préféré rabaisser la resolution a par 1024*576 (meme ratio) car si comme moi vous n'avez pas un matériel très haut de gamme, en huffyuv apres le disque dur ne suis plus ...
- Qu'il faut pas hésiter a faire plusieurs Undot() de suite, tant le filtre est peu puissant.
Image

Avatar de l’utilisateur
Libium
Messages : 2333
Inscription : dim. 6 avr. 2008 00:32
Localisation : pour me trouver, c'est facile : la deuxième étoile à droite et tout droit jusqu'au matin
Contact :

Re: Avisynth : Filtres

Messagepar Libium » jeu. 28 août 2008 23:26

En parlant de Undot() et plus largement de Débruitage (denoising), je vais rajouter quelques filtres :

- Fluxsmooth

assez simple à utiliser

Code : Tout sélectionner

FluxSmooth(A,B)


A et B sont les paramètres à entrer, si vous n'entrez rien [Fluxsmooth()] les valeurs par défaut sont de 7.
A correspond à la valeur de filtrage temporel. (bruit d'une image à l'autre)
B correspond à la valeur de filtrage spatial. (bruit dans l'image)

Si vous ne voulez utiliser qu'un filtrage sur les deux, donnez la valeur -1 à A ou B.

exemple : Fluxsmooth(-1,7) => filtrage spatial standard.

Convolution3d
Lui, il a 7 paramètres différents. A configurer, ça peut être chiant MAIS il est super pour les débutants car il a des configurations de bases (ENJOY)

Code : Tout sélectionner

Convolution3d(preset="movieHQ")

Je connais pas toutes les configs mais celles là vous seront utiles :
"movieHQ" pour des sources de bonne qualités
"movieLQ" pour source de qualité moyenne
"animeHQ" pour anime de bonne qualité (DVD, raw)
"animeLQ" pour DA de qualité moyenne (DBZ style xD)

Et vous pouvez rajouter Undot() avec si vous le voulez, il bouffe peu en ressources et altère quasiment pas la qualité vidéo.

Bien évidemment, les débruiteurs sont pas des formules magiques ! Y a des filtres plus adaptés à tel ou tel source. Donc la plupart du temps, faut faire des tests et comparer les rendus.

Avatar de l’utilisateur
Snowcrash
Messages : 4272
Inscription : lun. 7 juil. 2008 13:32
Localisation : Dans la campagne jurassienne, mon gars !
Contact :

Re: Avisynth : Filtres

Messagepar Snowcrash » ven. 29 août 2008 10:07

Merci Libium et Chameyc pour vos posts.

Voilà un lien qui vous sera très utile si vous voulez télécharger des plugins avisynth :
http://avisynth.org/warpenterprises/
Image

Avatar de l’utilisateur
razorks
Messages : 511
Inscription : lun. 7 juil. 2008 16:12

Re: Avisynth : Filtres

Messagepar razorks » ven. 29 août 2008 17:08

Hey sympa comme topic, sa me permettra de mieux comprendre avisynth et mieux l'utiliser.
"Le sage ne se soucie pas de l'avenir; il boit, chante, mange et profite des joies de ce monde tant qu'elles s'offrent à lui"

Avatar de l’utilisateur
Slamdink
Messages : 20
Inscription : jeu. 4 déc. 2008 11:48
Contact :

Re: Avisynth : Filtres

Messagepar Slamdink » jeu. 4 déc. 2008 12:15

Snowcrash:Voilà j’ai besoin d’aide si vs voulais bien, on ma recommandé d’utiliser le filtre TIVTC.dll et Decomb.dll pour faire un IVTC (inverse Telecine) on utilisant cette formule :
conditionalfilter(last,last.nnedi,last,"IsCombedTIVTC() && !IsCombed(threshold=14)","=","true") et franchement c’est pas très clair les “last” et last.nnedi” et « && !iscombed » alors si tu peux bien me donné des explication ou m’indiqué un tutorial bien détailler je serais très reconnaissant et aussi s’il y a d’autres filtres efficace que tu peux me conseiller à la place du TIVTC.

Remarque : nnedi est un filtre. On ma dit le conditionalfilter est utilisé pour enlevé les « blended frames » qui reste dans un IVTC parce qu’il ne disparaît pas du premier coup en utilisant tfm.
A strong man stands for himself, but a stronger man stands for the others.

Avatar de l’utilisateur
Neb
Messages : 9289
Inscription : mer. 14 mai 2008 07:45
Localisation : Région lyonnaise.
Contact :

Re: Avisynth : Filtres

Messagepar Neb » jeu. 4 déc. 2008 13:58

Bonjour slamdink,

Chaque chose en son temps!

Il y a effectivement des personnes sur le forum qui connaissent bien cet outil (avisynth).
Elles pourront te renseigner sans nul doute (ce qui n'est pas mon cas ;) )

Ce qui me fait intervenir, c'est le faites que ce soit ton premier message sur le forum, et que tu ne te soit pas présenté en premier lieu.

Tu pourras le faire à cette endroit :
bar-presentation-et-discussions-de-comptoir-f31/presentations-allez-n-ayez-pas-peur-t166.html

Bonne balade sur le forum. ;)
Image
Image

Avatar de l’utilisateur
Neb
Messages : 9289
Inscription : mer. 14 mai 2008 07:45
Localisation : Région lyonnaise.
Contact :

Re: Avisynth : Filtres

Messagepar Neb » ven. 5 déc. 2008 00:29

Image
Image

Avatar de l’utilisateur
Slamdink
Messages : 20
Inscription : jeu. 4 déc. 2008 11:48
Contact :

Re: Avisynth : Filtres

Messagepar Slamdink » ven. 5 déc. 2008 11:29

2iéme et 3iéme liens ne marche pas, en attendant je vais lire ce qu'est écrit sur les autres sites.
PS: pour plus de précision je fais mes teste sur une source DVD, je l'ai ripper, et c'est un NTSC 4:3; vachement Téléciné.pour plus de détaille je suis ici, je vais squatté ce forum.
A strong man stands for himself, but a stronger man stands for the others.

Avatar de l’utilisateur
chambeyc
Messages : 1706
Inscription : ven. 30 mai 2008 14:54
Localisation : Antibes

Re: Avisynth : Filtres

Messagepar chambeyc » ven. 5 déc. 2008 14:03

Yop,

Je suis au boulot donc j'ai juste fait une recherche rapide.
J'avoue que je ne connaissais pas du tout cette methode, qui utilise des filtres plus recents que dans les posts cites plus haut. Ya des chances pour qu'ils soient plus performants donc ^^.

Tout d'abord, repartons du debut:
- conditionalfilter : http://avisynth.org/ConditionalFilter
Syntaxe: ConditionalFilter(clip testclip, clip source1, clip source2, string function, string operator, string value [, bool show])
C'est un filtre standard d'avisynth qui utilise la source 1 si une condition particuliere est remplie, sinon il utilise la source 2.
Dans ton cas, on a:
- last.nnedi comme source1: c'est la video nommee last dans le script, a laquelle on applique un filtre nnedi.
- last comme source 2 (meme video sans filtre)
Attention, pour "definir" last il faut utiliser auparant une ligne du genre last = AviSource("TonFichier.avi")

- nnedi : http://forum.doom9.org/showthread.php?t=129953
Syntaxe: video2 = video1.nnedi
Pour resumer l'idee, ca desentrelace en virant un des champs de la frame qui apparait comme dedoublee, et reinterprete le champ restant pour en deduire l'image totale.

- IsCombedTIVTC : http://avisynth.org.ru/docs/english/ext ... dtivtc.htm
Syntaxe: IsCombedTIVTC (clip, int "cthresh", int "MI", bool "chroma", int "blockx", int "blocky")
Determine si oui on non une image est dedoublee a cause du telecine (IVTC = Inverse Telecine) en se basant sur un seuil.


Maintenant qu'on sait tout ca, si on reprend ta ligne de commande:
conditionalfilter(last,last.nnedi,last,"IsCombedTIVTC() && !IsCombed(threshold=14)","=","true")
Signifie =>
Si la condition "l'image actuelle est consideree comme dedoublee" et "elle ne l'est pas non plus au dela d'un certain seuil", est vraie, alors utiliser la source filtree, sinon utiliser la source classique.
A mon avis, la 2eme condition est rajoutee pour eviter que les simples changements de plans soient pris en compte.

Voila ^^.
Image

Avatar de l’utilisateur
Slamdink
Messages : 20
Inscription : jeu. 4 déc. 2008 11:48
Contact :

Re: Avisynth : Filtres

Messagepar Slamdink » ven. 5 déc. 2008 17:41

donc il faut que les deux conditions soient remplie pour pour appliquer le filtre. mais dans la deuxième condition comment on peut détecté la bonne seuil ???? et encore une chose quand j'applique "nnedi" sur certain frames combé (combing frames) il laisse un effet bizarre je dirais que c'est du "dot crowl" mais si il y a d'autres filtres qui peuvent garantir le même résultat ou bien mieux je suis preneur. actuellement je teste YATTA.
A strong man stands for himself, but a stronger man stands for the others.

Avatar de l’utilisateur
chambeyc
Messages : 1706
Inscription : ven. 30 mai 2008 14:54
Localisation : Antibes

Re: Avisynth : Filtres

Messagepar chambeyc » ven. 5 déc. 2008 18:33

D'apres la page de IsCombedTIVTC:
Valid settings are from -1 (every pixel will be detected as combed) to 255 (no pixel will be detected as combed). This is basically a pixel difference value. A good range is between 8 to 12.

Apres, il faudra peut etre ajuster la valeur en fonction de tes tests et de tes sources.

Concernant le filtre .nnedi, je n'ai aucune idee des resultats que l'on peut esperer en tirer ... donc pour ce probleme de "dots", tu peux peut-etre essayer d'utiliser plusieurs filtres Undot() consecutifs. Mais j'avoue j'ai pas trop d'idee la dessus.

En faisant un petit tour vite fait sur le forum de doom9, j'ai trouve quelque chose de tres interessant:
AnimeIVTC
Tout ce qu'il faut savoir dessus ici: http://forum.doom9.org/showthread.php?t=138305
Comme son nom l'indique, c'est du inverse telecine dediee particulierement aux animes. Et d'apres ce qu'on peut lire, il est aussi efficace que simple a utiliser. Je te conseillerai plutot de fouiller de ce cote la ;).
la preuve:
HymnToLife a écrit :DGDecode_mpeg2source("blah.d2v")
AnimeIVTC(mode=1, aa=2)

And that's that, I got a nice 23.976 clip with all the combing/blends/etc. removed.
Image

Avatar de l’utilisateur
Slamdink
Messages : 20
Inscription : jeu. 4 déc. 2008 11:48
Contact :

Re: Avisynth : Filtres

Messagepar Slamdink » ven. 5 déc. 2008 22:14

chambeyc je t'aime toi vraiment, t'es entrain de te cassé la tête avec moi alors que d'autre gars de la team se fout complètement. sur ce je go testé ton filtre et je te donne le résultat. THX
A strong man stands for himself, but a stronger man stands for the others.

Avatar de l’utilisateur
Neb
Messages : 9289
Inscription : mer. 14 mai 2008 07:45
Localisation : Région lyonnaise.
Contact :

Re: Avisynth : Filtres

Messagepar Neb » sam. 6 déc. 2008 01:48

Slamdink a écrit :calors que d'autre gars de la team se fout complètement.


:nono: tsssss !

Ne dis pas de telle chose!
Si peu de gens sont intervenu sur ta question c'est qu'avisynth n'est utilisé que par une partie de nos membres (infime partie)
C'est cette infime partie dont Chambeyc en fait partie.

Pour ta gouverne AMV FRANCE n'est pas du tout une TEAM mais une association. ::x:
Image
Image


Revenir vers « Aide - Tutos - Résolution de problèmes »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invités