Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forum DivX Video Ripp-it After Me Ri4m _ Filtres avisynth.... _ LimitedSharpen - Script d'importation AviSynth

Écrit par : shudji 14/07/2007 16:20

LimitedSharpen - Script d'importation AviSynth

===> Le script "LimitedSharpen"

# LimitedSharpen()
#
# A multi-purpose sharpener by Didée
#

function LimitedSharpen( clip clp,
\ float "ss_x", float "ss_y",
\ int "dest_x", int "dest_y",
\ int "Smode" , int "strength", int "radius",
\ int "Lmode", bool "wide", int "overshoot",
\ bool "soft", int "edgemode", bool "special",
\ int "exborder" )
{
ox = clp.width
oy = clp.height
ss_x = default( ss_x, 1.5 )
ss_y = default( ss_y, 1.5 )
dest_x = default( dest_x, ox )
dest_y = default( dest_y, oy )
Smode = default( Smode, 3 )
strength = Smode==1
\ ? default( strength, 160 )
\ : default( strength, 100 )
strength = Smode==2&&strength>100 ? 100 : strength
radius = default( radius, 2 )
Lmode = default( Lmode, 1 )
wide = default( wide, false )
overshoot= default( overshoot, 1)
overshoot= overshoot<0 ? 0 : overshoot
soft = default( soft, false )
edgemode = default( edgemode, 0 )
special = default( special, false )
exborder = default( exborder, 0)
#radius = round( radius*(ss_x ss_y)/2) # If it's you, Mug Funky - feel free to activate it again
xxs=round(ox*ss_x/8)*8
yys=round(oy*ss_y/8)*8
smx=exborder==0?dest_x:round(dest_x/Exborder/4)*4
smy=exborder==0?dest_y:round(dest_y/Exborder/4)*4

clp.isYV12() ? clp : clp.converttoyv12()

ss_x != 1.0 || ss_y != 1.0 ? last.lanczosresize(xxs,yys) : last
tmp = last

edge = logic( tmp.DEdgeMask(0,255,0,255,"5 10 5 0 0 0 -5 -10 -5", divisor=2)
\ ,tmp.DEdgeMask(0,255,0,255,"5 0 -5 10 0 -10 5 0 -5", divisor=2)
\ ,"max").levels(0,0.86,128,0,255,false)

bright_limit = (soft == true) ? tmp.blur(1.0) : tmp
dark_limit1 = bright_limit.inpand()
bright_limit1 = bright_limit.expand()
dark_limit = (wide==false) ? dark_limit1 : dark_limit1 .inflate.deflate.inpand()
bright_limit = (wide==false) ? bright_limit1 : bright_limit1.deflate.inflate.expand()
minmaxavg = special==false
\ ? yv12lutxy(dark_limit1,bright_limit1,yexpr="x y 2 /")
\ : maskedmerge(dark_limit,bright_limit,tmp,Y=3,U=-128,V=-128)

Str=string(float(strength)/100.0)
normsharp = Smode==1 ? unsharpmask(strength,radius,0)
\ : Smode==2 ? sharpen(float(strength)/100.0)
\ : yv12lutxy(tmp,minmaxavg,yexpr="x x y - " Str " * ")

OS = string(overshoot)
Lmode == 1 ? yv12lutxy( bright_limit, normsharp, yexpr="y x " OS " < y x " OS " ?")
\ : yv12lutxy( bright_limit, normsharp, yexpr="y x " OS " < y x y x - " OS " - 1 2 / ^ " OS " ?")
Lmode == 1 ? yv12lutxy( dark_limit, last, yexpr="y x " OS " - > y x " OS " - ?")
\ : yv12lutxy( dark_limit, last, yexpr="y x " OS " - > y x x y - " OS " - 1 2 / ^ - " OS " - ?")

edgemode==0 ? NOP
\ : edgemode==1 ? MaskedMerge(tmp,last,edge.inflate.inflate.blur(1.0),Y=3,U=1,V=1)
\ : MaskedMerge(last,tmp,edge.inflate.inflate.blur(1.0),Y=3,U=1,V=1)

(ss_x != 1.0 || ss_y != 1.0)
\ || (dest_x != ox || dest_y != oy) ? lanczosresize(dest_x,dest_y) : last

ex=blankclip(last,width=smx,height=smy,color=$FFFFFF).addborders(2,2,2,2).coloryuv(levels="TV->PC")
\.blur(1.3).inpand().blur(1.3).bicubicresize(dest_x,dest_y,1.0,.0)
tmp=clp.lanczosresize(dest_x,dest_y)

clp.isYV12() ? ( exborder==0 ? tmp.mergeluma(last)
\ : maskedmerge(tmp,last,ex,Y=3,U=1,V=1) )
\ : ( exborder==0 ? tmp.mergeluma(last.converttoyuy2())
\ : tmp.mergeluma( maskedmerge(tmp.converttoyv12(),last,ex,Y=3,U=1,V=1)
\ .converttoyuy2()) )

return last
}


===>Requiert
Une source video en YV12 soit la commande ConvertToYV12(true) doit etre appliquée avant si votre source video est en RGB
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fhome.arcor.de%2Fkassandro%2FRemoveGrain%2FRemoveGrain.rar
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.avisynth.org%2Fwarpenterprises%2Ffiles%2Fwarpsharppackage_25_dll_20031103.zip
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fmasktools_25_dll_20060606.zip
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.tsp.person.dk%2FMT_041.zip
Et copier/ecraser ce http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.avisynth.org%2Ftsp%2Favisynth256MT3.zip dans votre repertoire C:\Windows\system32\ Tres Important

===>Examples
Normal

limitedsharpen denoiser3d


===>Exemples de ligne de commande
LimitedSharpen(ss_x=1.0, ss_y=1.0, Smode=3, strength=40)
#ou encore
LimitedSharpen(ss_x=1.0, ss_y=1.0, Smode=3, strength=40, overshoot=7, undershoot=3)


D'autres informations plus precises sont disponibles http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fforum.doom9.org%2Fshowthread.php%3Fs%3D%26amp%3Bthreadid%3D84196

Écrit par : leon1789 14/07/2007 16:31

C'est marrant, aujourd'hui même je regardais de la doc sur ce même "filtre" !!! aga.gif

As-tu un avis sur le meilleur "sharper" (traduction en français svp ! wink.gif ) entre MSharpen et LimitedSharpen ?

Écrit par : shudji 14/07/2007 18:06

LimitedSharpen utilise plusieurs plugins donc ne peut etre comparé avec MSharpen.

Ceci dit Limitedsharpen est tres performant accompagné d'un ou deux autres plugin suivant l'effet souhaité.
Personnellement je conseille de toujours lui joindre Colormatrix

Sinon pour MSharpen, j'ai toujours preferé Xsharpen mais une fois encore tout depends des autres plugins.
Montre-moi ton script, je pourrais peux etre t'en dire plus.

Écrit par : leon1789 14/07/2007 18:39

Je ne sais pas si ma réponse à la place dans ton topic...

(shudji @ samedi 14 juillet 2007 à 19:06) *
LimitedSharpen utilise plusieurs plugins donc ne peut etre comparé avec MSharpen.

Ils ne sont peut-être pas du même type, mais ils visent quand même le sharpen (même si LimitedSharpen peut faire du redimensionnement en même temps).

(shudji @ samedi 14 juillet 2007 à 19:06) *
Ceci dit Limitedsharpen est tres performant accompagné d'un ou deux autres plugin suivant l'effet souhaité.
Personnellement je conseille de toujours lui joindre Colormatrix

pour des animations, ok, mais pour des films ?
En plus, je crois que je ne peux pas l'utiliser avec MPEG2Dec3.dll ....

(shudji @ samedi 14 juillet 2007 à 19:06) *
Sinon pour MSharpen, j'ai toujours preferé Xsharpen mais une fois encore tout depends des autres plugins.

Je pensais que Xsharpen faisait plein d'escaliers !? MSharpen en fait aussi je trouve...

(shudji @ samedi 14 juillet 2007 à 19:06) *
Montre-moi ton script, je pourrais peux etre t'en dire plus.


Ah ben, si tu veux ! C'est au niveau de la Netteté et du lissage que je me tate : MSharpen puis FluxSmooth... Est-ce que tout cela vaut le coup ???

#########################
# **** UTILISATEUR **** #
#########################

# SOURCE  <============
Source = "C:\riam\proj\VTS_01_1.d2v"
Source = "C:\riam\sw\VTS_01_1.d2v"
#Source = "C:\riam\sw3\VTS_01_1.d2v"
#Source = "C:\riam\vis\VTS_01_1.d2v"

# RESIZE  <============
# 0 pour largeur d'image origine
Largeur = 720

# ENCODAGE à ?? %  <------------
# 100 pour la video entière
Pourcent = 5

# FORMAT DVD  <------------
Format = 16/9.0  # ou bien 4/3.0  (plus rare)


##################################################
# **** Ripp-it , VirtualDub , AVIsynth 2.5x **** #
##################################################


# SOURCE  
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MPEG2Dec3.dll")
Source = MPEG2Source(Source)


# EXTRACTION (cf. test de compressibilité)
Bande = 150   # 150 ou davantage pour éviter un nombre anormal d'images clés
NBImages = Framecount(Source)
Intervalle = Bande*100.0/Pourcent
Intervalle = Intervalle*30 > NBImages ? NBImages/30.0 : Intervalle
Intervalle = NBImages / Floor(NBImages/Intervalle)
Bande = Round(Intervalle*Pourcent/100.0)
Source = SelectRangeEvery(Source, Intervalle, Bande, (Intervalle-Bande)/2)


# AUTO-ROGNAGE
Video = AutoCrop(Source,0)


# REDUCTION DU BRUIT
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\unDot.dll")
Video = unDot(Video)


# REDIMENSIONNEMENT avec conservation de l'aspect de l'image
WV = Width(Video)
HV = Height(Video)
Largeur = Largeur == 0 ? WV : Largeur
Largeur = Largeur/4 *4
RatioY = Width(Source)/Format/Height(Source)
Hauteur = Round(RatioY*Largeur*HV/WV/2)*2
Video = Hauteur > HV ? BicubicResize(Video,Width(Video),Hauteur,0,0.5) : Video
Video = Largeur > WV ? BicubicResize(Video,Largeur,Height(Video),0,0.5) : Video
Video = Hauteur < HV ? BilinearResize(Video,Width(Video),Hauteur) : Video
Video = Largeur < WV ? BilinearResize(Video,Largeur,Height(Video)) : Video
# Largeur multiple de 4, Hauteur multiple de 2 --> compatibilité DivX 6


Video1 = Video

poids = float(WV)/Largeur + float(Largeur)/WV
poids = float(HV)/Hauteur + float(Hauteur)/HV + poids - 4
poids = 30*poids > 20 ? 20 : round( 30*poids )

# NETTETE
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MSharpen.dll")
Video = MSharpen(Video,20-poids,55+10*poids)

# LISSEUR
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\FluxSmooth.dll")
Video = FluxSmooth(Video, 5+2*poids, 5+poids)

# TESTS & COMPARAISONS
#Video = SubTract(Video1,Video)
Video = StackVertical(Video1,Video)

Return(Video)

Écrit par : YannBresil 14/07/2007 18:52

épinglé

Écrit par : leon1789 14/07/2007 18:59

Je peux pas ajouter d'image !!! ... bof.gif

Écrit par : sykes2477 14/07/2007 20:24

(leon1789 @ samedi 14 juillet 2007 à 18:59) *
Je peux pas ajouter d'image !!! ... bof.gif

http://forum.ripp-it.com/sujet_t4242.htm

Écrit par : shudji 14/07/2007 20:49

Je voudrais effectivement bien voir une ou deux screens.
mais sinon d'apres ton script, j'ai impression que tu effectues deux redimenssionnement:

[...]Video = Hauteur > HV ? BicubicResize(Video,Width(Video),Hauteur,0,0.5) : Video
Video = Largeur > WV ? BicubicResize(Video,Largeur,Height(Video),0,0.5) : Video
Video = Hauteur < HV ? BilinearResize(Video,Width(Video),Hauteur) : Video
Video = Largeur < WV ? BilinearResize(Video,Largeur,Height(Video)) : Video[...]


tu devrais laisser qu'une des deux, Bicubicresize me semble un bon choix.

et aussi peux-etre tu devrais essayer de placer le debruitage juste apres le sharpener ou bien juste avant.

Sinon RI4M utilise decomb.dll de base comme source de redimenssionement?

Écrit par : leon1789 14/07/2007 21:30

(shudji @ samedi 14 juillet 2007 à 21:49) *
Je voudrais effectivement bien voir une ou deux screens.

Voilà, par l'intermédiaire de http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimageshack.us%2F (merci Sykes) (...c'est aussi du star wars cling1.gif...)
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg115.imageshack.us%2Fmy.php%3Fimage%3Descalierskd4.jpg

Ci-dessous, cela n'a plus grand chose à voir avec le sujet gloups.gif
(shudji @ samedi 14 juillet 2007 à 21:49) *
mais sinon d'apres ton script, j'ai impression que tu effectues deux redimenssionnement:
[...]
Video = Hauteur > HV ? BicubicResize(Video,Width(Video),Hauteur,0,0.5) : Video
Video = Largeur > WV ? BicubicResize(Video,Largeur,Height(Video),0,0.5) : Video
Video = Hauteur < HV ? BilinearResize(Video,Width(Video),Hauteur) : Video
Video = Largeur < WV ? BilinearResize(Video,Largeur,Height(Video)) : Video
[...]

tu devrais laisser qu'une des deux, Bicubicresize me semble un bon choix.

J'ai lu sur un truc officiel de avisynth que bicubic était meilleur que linear pour augmenter la résolution, et inversement quand il faut la descendre... Alors j'ai suivi... mais bon...

Quant au nombre de redimensionnements, oui j'en fait deux quand la hauteur et la largeur doivent changer. Mais cela revient exactement au même que du classique resize bilinear ou bicubic !

En effet, ces deux fonctions bilinear & bicubic changent la résolution en deux temps : un temps pour la hauteur, et un autre pour la largeur. De plus, si l'une des dimensions ne change pas, alors la fonction ne fait rien sur cette dimension (c'est logique !). Or c'est ce que je demande à chaque fois : ne changer qu'une seule dimension. En résumer, je crois que je demande deux fois de faire "la moitié" d'un redimensionnement, ce qui au final fait la même chose qu'un entier... non ?

Je ne sais pas si je suis limpide dans mes explications.

(shudji @ samedi 14 juillet 2007 à 21:49) *
et aussi peux-etre tu devrais essayer de placer le debruitage juste apres le sharpener ou bien juste avant.

Normalement, FluxSmooth débruite. J'ai mis "Lissage" dans mon script à cause de "smooth", mais c'est un peu faux...

Oui, j'ai essayé de mettre FluxSmooth avant ou après : je préfère largement après, car le bruit du MSharpen peut être important.

(shudji @ samedi 14 juillet 2007 à 21:49) *
Sinon RI4M utilise decomb.dll de base comme source de redimenssionement?

Je croyais que c'était linear/bicubic resize !? ou bien je ne comprends pas ta question...

Enfin, je voudrais ajouter que tout mon bazard avec la variable poids dans mon script, c'est pour gérer de manière automatique la netteté lors d'un changement de résolution (hausse ou baisse), comme cela (ici, j'ai redimensionné en 360 au lieu de 720)
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg261.imageshack.us%2Fmy.php%3Fimage%3Descalierssmalltk3.jpg

Écrit par : shudji 15/07/2007 10:22

desolé je ne connais pas du tout les script de RI4M, tout ce que je connais viens de ce que j'ai testé.
d'apres ce que j'ai rencontré, l'effet en dents de scie provient du type de redimenssionnement (et/ou desentrelacement) avec un filtre sharpener.
(Il est peut-etre possible d'attenuer cette effet en augmentant la largeur, enfin je pense...)

_Colormatrix m'a permis d'enlever une sorte de voile blanc ceci est certainement causé par le travail des autres filtres. La aussi peux-etre RI4M recupère et utilise ces informations de lui-meme.

Pour tes paramettres de redimenssionnement je n'y connais rien une fois encore an_ouarf.gif ce type de script m'est totalement inconnu.

Donc pour tout dire, http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fsangnom_25_dll_20040118.zip en desentrelacement et http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fhqdn3d_25_dll_20050125.zip pour le denoiser fonctionnent bien ensembles. Enfin moi j'ai trouvé^^
Dis-moi ce que tu en penses euh.gif

Écrit par : leon1789 15/07/2007 11:16

(shudji @ dimanche 15 juillet 2007 à 11:22) *
d'apres ce que j'ai rencontré, l'effet en dents de scie provient du type de redimenssionnement (et/ou desentrelacement) avec un filtre sharpener.
(Il est peut-etre possible d'attenuer cette effet en augmentant la largeur, enfin je pense...)

Je vais essayé de faire un truc perso dans ce genre là... mais c'est pas gagné ! rolleyes.gif

(shudji @ dimanche 15 juillet 2007 à 11:22) *
Donc pour tout dire, http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fsangnom_25_dll_20040118.zip en desentrelacement et http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fhqdn3d_25_dll_20050125.zip pour le denoiser fonctionnent bien ensembles. Enfin moi j'ai trouvé^^
Dis-moi ce que tu en penses euh.gif

Merci de les avoir mis à disposition !! c'est agréable de ne pas avoir à les chercher aga.gif J'ai testé très (trop) rapidement... Il faudrait que j'y passe du temps.
Le problème, c'est que je n'ai pas de vidéo intrelacée. Sangnom donne un effet assez prononcé d'un genre spécial :

http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg521.imageshack.us%2Fmy.php%3Fimage%3Dsangnomch6.jpg

Je n'ai pas encore d'avis sur hqdn3d.

Écrit par : shudji 15/07/2007 11:41

Colormatrix("D:\files.d2v, interlaced=true") pourra peux-etre le faire

Écrit par : leon1789 15/07/2007 11:47

(shudji @ dimanche 15 juillet 2007 à 12:41) *
Colormatrix("D:\files.d2v, interlaced=true") pourra peux-etre le faire

J'ai déjà essayé, mais je crois que je ne peux pas l'utiliser avec MPEG2Dec3.dll .... Je n'ai pas DGDecode. ColorMatrix fonctionne avec DGDecode ? je dis une grosse bêtise ?

Écrit par : shudji 15/07/2007 13:22

Oui c'est ca.
Pour DGDecode l'important est d'utiliser la meme version du soft que tu as utilisé pour créer le .d2v que le .dll
Tu peux trouver toutes les versions http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.neuron2.net%2Fdgmpgdec%2F

Sinon j'ai fait quelques tests, j'espere que ca pourra t'aider:


Image Seule.

LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
mpeg2source("C:\Ghost Of Mae Nak\VIDEO_TS\Sample.d2v", idct=0)




SangNom
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\SangNom.dll")

mpeg2source("C:\Ghost Of Mae Nak\VIDEO_TS\Sample.d2v", idct=0)
SangNom(order=3,aa=15)




SangNom + Hqn3d
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\SangNom.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\hqdn3d\hqdn3d.dll")

mpeg2source("C:\Ghost Of Mae Nak\VIDEO_TS\Sample.d2v", idct=0)
SangNom(order=3,aa=15)
hqdn3d(6)




SangNom + MSharpen
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\SangNom.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\MSharpen.dll")

mpeg2source("C:\Ghost Of Mae Nak\VIDEO_TS\Sample.d2v", idct=0)
SangNom(order=3,aa=15)
MSharpen(15,100,true,false,false)




ColorMatrix, SangNom + hqn3d
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
Loadplugin("D:\Logiciels\Rip-it After me\Filtres AVS\Colormatrix\Release\ColorMatrix.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\SangNom.dll")
LoadPlugin("D:\Logiciels\Rip-it After me\Filtres AVS\hqdn3d\hqdn3d.dll")

mpeg2source("C:\Ghost Of Mae Nak\VIDEO_TS\Sample.d2v", idct=0)
ColorMatrix(mode="Rec.601->Rec.709", interlaced=true)
SangNom(order=3,aa=15)
hqdn3d(6)


Écrit par : leon1789 15/07/2007 14:50

En fait, je me suis fait mon "petit lisseur après sharping"... Voilà comment il fonctionne, c'est très basique.

On se donne :
-- une video originale, nommée VideoOrig (c'est orignal comme nom de variable wink.gif )
-- une vidéo (très) sharpée, nommée VideoSharp

L'effet escalier est particulièrement visible dans les zones claires, donc je demande à repérer les lignes en zones claires dans la video sharpée :
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg510.imageshack.us%2Fmy.php%3Fimage%3Dmaskki5.jpg
En dessous de l'image, vous voyez des lignes brisées (l'effet du sharp) et des points plus ou moins noirs qui désignent les lignes en zones claires. On constate que l'aliasing au bas de la fenêtre est fortement repéré...

Ensuite, il suffit de remplacer (mixer) les parties ainsi répérées de la vidéo sharpée par celles de la vidéo originale.

En résumé, il suffit de placer ces quelques lignes dans le script avs :

# VideoOrig est la vidéo avant le sharping
# VideoSharp est la vidéo après le sharping

LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MaskTools.dll")    # si ce n'est déjà fait avant...
Mask = EdgeMask(Video,0,127,0,0,type="line").undot.expand
Video = MaskedMerge(VideoSharp, VideoOrig, Mask)

# Video est la vidéo sharpée lissée

Le code est assez rapide a l'exécution, et visuellement assez efficace pour moi !

Voici le résultat mrgreen2.gif
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg242.imageshack.us%2Fmy.php%3Fimage%3Dmasklissehw0.jpg
en haut video sharpée, et en bas video sharpée lissée.

Écrit par : leon1789 15/07/2007 15:01

Autre exemple :
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg101.imageshack.us%2Fmy.php%3Fimage%3Dex1vk8.jpg
Ci-dessus, la vidéo sharpée et le repérage des lignes problématiques... on voit bien que la table pose problème...

http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fimg254.imageshack.us%2Fmy.php%3Fimage%3Dex2hk9.jpg
Ci-dessus, la vidéo originale (sans aucune retouche) et la vidéo sharpée lissée... Y a pas photo comme on dit cling1.gif

Écrit par : shudji 15/07/2007 16:56

Bien vu^^ et sacrément bien appliqué
Source: Doom9 forum
Edgemask et maskedmerge, je me souviens l'avoir vu dans le script de limitedsharpen. c'est de la que t'es venu cette idée?

tu vas y ajouter Fluxsmooth ou bien undot?

Écrit par : leon1789 15/07/2007 17:40

(shudji @ dimanche 15 juillet 2007 à 17:56) *
Edgemask et maskedmerge, je me souviens l'avoir vu dans le script de limitedsharpen. c'est de la que t'es venu cette idée?

Oui, j'ai vu cette page, cela m'a donné envie d'aller regarder dans les MaskTools. Du coup, j'ai vu comment filtrer la lumière en escalier, et j'ai essayé de mélanger toutes les idées : prendre le meilleur de chaque partie.

(shudji @ dimanche 15 juillet 2007 à 17:56) *
tu vas y ajouter Fluxsmooth ou bien undot?

Ben les deux mon capitaine ! mrgreen2.gif

Undot, c'est un débruiteur spacial qui ne mange pas de pain, rapide, qui ne dégrade rien, mais qui a une efficacité assez limitée... mais il est toujours bon à prendre. Je le place au début du traitement, mais on pourrait le placer plusieurs fois un peu partout !

Quant à FluxSmooth, débuiteur spatio-temporel, je le place en dernier pour essayer de regagner un peu dans le bitrate perdu avec le sharping si je peux dire... J'ai constaté que pour un rétrécissement suivi d'un sharping, il est obligatoire de mettre un debruiteur après le sharping (et non avant).

Écrit par : shudji 15/07/2007 21:34

voici ma nouvelle ligne de commande pour LimitedSharpen:

LimitedSharpen(ss_x=1.5,ss_y=1.5,Smode=3,strength=160, Lmode=2, overshoot=6, edgemode=1, special=true, exborder=1)

Strengh agit sur la puissance de sharpening
Overshout, edgemode et exborder sont, comme tu l'as bien expliqué, ce qui permet une decoupe moins incisive des pixels.
Et ce pourquoi je post, "Special" applique une tres belle effet de contrast. Je ne l'ai pas encore testé mais je suis persuadé que ca devrait avoir un tres bonne effet sur un film. J'aimerais bien que tu me dises ce que tu en penses?

Écrit par : leon1789 16/07/2007 00:24

(shudji @ dimanche 15 juillet 2007 à 22:34) *
J'aimerais bien que tu me dises ce que tu en penses?

Le problème est que je n'ai pas encore fait tout ça ...
===>Requiert
Une source video en YV12 soit la commande ConvertToYV12(true) doit etre appliquée avant si votre source video est en RGB
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fhome.arcor.de%2Fkassandro%2FRemoveGrain%2FRemoveGrain.rar
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.avisynth.org%2Fwarpenterprises%2Ffiles%2Fwarpsharppackage_25_dll_20031103.zip
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Favisynth.org%2Fwarpenterprises%2Ffiles%2Fmasktools_25_dll_20060606.zip
http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.tsp.person.dk%2FMT_041.zip
Et copier/ecraser ce http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.avisynth.org%2Ftsp%2Favisynth256MT3.zip dans votre repertoire C:\Windows\system32\ Tres Important

Écrit par : shudji 16/07/2007 08:38

Tu veux dire de l'utiliser dans un script RIAm ?

Écrit par : leon1789 20/07/2007 21:03

(shudji @ lundi 16 juillet 2007 à 09:38) *
Tu veux dire de l'utiliser dans un script RIAm ?

...Pardon pour ce retard important de réponse... euh.gif

En fait, je préfère utiliser uniquement les librairies livrées avec Riam. Il n'y en a pas des tonnes, mais suffisament pour se débrouiller très correctement je pense (et j'imagine que les concepteurs de riam le pensent aussi cling1.gif )

Après quelques tests, je préfère MSharpen : plus efficace que le simple Sharpen, il est plus progressif que ASharp, et moins "constricteur" que AWarpSharp.

Écrit par : Darkshaka 28/07/2007 13:15

Hello les gens,

Por ma part j'avais déjà essayé limited sharpen avec de bons résultats mais beaucoup trop lent pour ma vieille machine.

Donc du coup, j'a voulé m'essayer au petit nouveau limitedsharpenfaster. Par contre là je n'arrive pas à le lancer correctement.

Un message d'erreur me dit que la fonction mt_edge ne fonctionne pas. En gros, il semble q'une valeur contenue dans le script avs limitedsharpenfaster ne fonctionne pas. J'ai pourtant bien installé tous les filtres nécessaires :
> MaskTools 1.5x
> MaskTools2 2a21+
> Removegrain 1.0-pre
> Warpsharp for UnsharpMask

Quelqu'un pourrait-il m'aider ?

Voici le script que j'utilise (un script de comparaison entre deux versions, trouvé sur ce forum)

# **** Ripp-it & AVIsynth 2.5x script **** pass 2+
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\undot.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\decomb.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\TIVTC.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\vinverse.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\deen.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\motion.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MSharpen.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MaskTools.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MvTools.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\unfilter.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\MPEG2Dec3.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\decomb.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\RemoveGrainS.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\FluxSmooth.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\FFT3dGPU.dll")
Import("C:\PROGRA~1\RIPP-I~1\dlls\LimitedSharpenFaster.avs")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\depan.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\TIVTC.dll")
LoadPlugin("C:\PROGRA~1\RIPP-I~1\dlls\warpsharp.dll")

# Video codec   : Xvid
# Video bitrate : 1627675

Source="D:\DARKSH~1\EDITIO~1\FMA\DVD7~1\VTS_01_1.d2v"
Largeur=656
Hauteur=496
ratio  =1.322581
vratio =1.322581
Crop_g=8
Crop_d=-8
Crop_h=8
Crop_b=-8
Indice=0.220768

Video=mpeg2Source(Source, idct=7)
V1=Video
V2=Video

#Use IVTC method 1 (d)
V1=TFM(V1)
V1=TDecimate(V1, mode=1)
V1=VInverse(V1, 1.6)

V1=Undot(V1)
V1=BiCubicResize(V1, Largeur, Hauteur, 0.0, 0.5)
V1=Crop(V1, crop_g, crop_h, crop_d, crop_b)

#PERSO
V2=TFM(V2)
V1=TDecimate(V2, mode=1)
V2=VInverse(V2, 1.6)

V2=Undot(V2)
V2=BiCubicResize(V2, Largeur, Hauteur, 0.0, 0.5)
V2=Crop(V2, crop_g, crop_h, crop_d, crop_b)
V2=LimitedSharpenFaster(v2)

V1=V1.Subtitle("Normal").Trim(0,24000)
V2=V2.Subtitle("Limited speed").Trim(0,24000)

StackVertical(V1, V2)
SelectEvery(last, 300, 0)

ConvertToRGB24()
ImageWriter(last, file="D:\Darkshaka Fansub\Edition video\FMA\", start=0, end=0, type="png")
crop(0,0,8,8)


Merci d'avance pour votre aide !

Écrit par : leon1789 24/08/2007 21:21

(shudji @ samedi 14 juillet 2007 à 21:49) *
tu devrais laisser qu'une des deux, Bicubicresize me semble un bon choix.

Je ne sais pas si tu verras ce petit mot (tu ne viens plus, malheureusement...), mais sache que tu avais raison ! merci cling1.gif

Écrit par : Code Name 47 28/06/2009 20:35

Bonjour,

Je n'ai jamais réussi à utiliser ce plugin j'ai chaque fois une erreur est ce que quelqu'un peut il m'expliquer comment l'utiliser ?

Un grand merci !

Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)