Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forum DivX Video Ripp-it After Me Ri4m _ Filtres avisynth.... _ Denoise film HD et espaces de couleur

Écrit par : eoudmax 02/03/2012 23:18

Bonjour an_coucou.gif
Voilà, j'ai un film hyper bruité evil.gif
à chaque fois que j'essaye de le débruiter, j'suis obligé de régler hyper fort, donc ça floute beaucoup, et quand j'essaye de sharper, j'suis donc obligé d'également régler très fort, et après ça donne un résultat BIZARRE gloups.gif Les visages sont toujours aussi flouts, sauf que y a des artefacts en plus et l'apparition des DCT evil.gif evil.gif
Comment faire interro1.gif
Après j'au aussi le blème que beaucoup de débruiteurs spatio-temporel, tel que convolution 3D, nécessitent des espaces de couleurs YUY2 et autres, je vois pas du tout la différence entre tous ces espaces de couleur
Comment faire ?
Merci cling.gif

Écrit par : SG1 03/03/2012 10:19

Bonjour,

LE spécialiste AviSynth, c'est Léon...

Afin de faire avancer le Schmilblick avant son arrivée, affiche une capture avant et après et un lien pour récupérer un petit bout de vidéo d'origine d'un passage très bruité...

@+

PS : J'ai fermé l'autre post presque identique pour éviter de répondre à 2 endroits pour la même question...


Écrit par : eoudmax 03/03/2012 11:59

Ok Merci Sg1
J'm'étais trompé sur le titre
Comment est-ce qu'on poste un bout de vidéo sans passer par youtube

Écrit par : SG1 03/03/2012 14:35

Bonjour,

Citation
Comment est-ce qu'on poste un bout de vidéo sans passer par youtube

Regarde si tu as l'option Fichier joint dans l'espace de réponse :



Sinon, tu as des services d'envoi de fichier du type Free :
http://dl.free.fr/
Ou
RapidShare ...

Ou bien encore ton espace Perso qui est très souvent fourni gratuitement par le FAI et que bien souvent, on ne pense pas à utiliser...

@+

Écrit par : eoudmax 03/03/2012 15:02

OK
Mais j'y arrive pas avec le forum lui même, li me marque "Erreur L'envoi a échoué. Vous n'êtes pas autorisé à envoyer ce type de fichier." ouin.gif
Bah c'est pas grave, je vais utiliser le service dl de free
Voici ma source :
http://dl.free.fr/lqTTM85Pj

La vidéo ayant subi la commande "SoftSharpen(DeBr=60)" :
http://dl.free.fr/rPpRbGYaL

La vidéo ayant subi la commande "SoftSharpen(DeBr=60,sharp=70)" :
http://dl.free.fr/rpEjqWnUl

Toujours et encore merci de m'aider

Écrit par : eoudmax 03/03/2012 15:57

Et juste, c'est pas dans le sujet mais, où est-ce que je peux avoir LimitedSharpen, s'il vous plaît ?
Et ça, qu'est-ce que c'est et à quoi ça sert :
# LimitedSharpen() ( a modded version, 29 Oct 2005 )
#
# A multi-purpose sharpener by Didée
#
#
# Changes in this mod:
#
# - RemoveGrain >= v0.9 IS REQUIRED!!
# ==================================
#
# - Smode=4 / sometimes does the magic wink.gif
# - a separate "undershoot" parameter, to allow for some line darkening in comic or Anime
# - Lmode=3 / on edges, limited sharpening with zero OS & US. On not-edges, limited sharpening with specified OS + LS
# - "soft" acts different now: no more boolean true/false, but instead integer 0 - 100 (or -1 -> automatic)
# instead of blurring before finding minima/maxima, it now softens the "effect-of-sharpening"
# - edgemode=-1 now shows the edgemask. (scaling still not implemented na1.gif )
#
## - MODIFIED version using MaskTools 2.0

function LimitedSharpenFaster( 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", int "undershoot",
\ int "soft", int "edgemode", bool "special", int "exborder" )
{
ox = clp.width
oy = clp.height

Smode = default( Smode, 3 )
ss_x = (Smode==4)
\ ? default( ss_x, 1.25)
\ : default( ss_x, 1.5 )
ss_y = default( ss_y, ss_x)
Assert(ss_x >= 1.0 && ss_y >= 1.0,"ss_x and ss_y must be at least 1.0!")
dest_x = default( dest_x, ox )
dest_y = default( dest_y, oy )
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)
undershoot= default( undershoot, overshoot)
softdec = default( soft, 0 )
soft = softdec!=-1 ? softdec : sqrt( (((ss_x+ss_y)/2.0-1.0)*100.0) ) * 10
soft = soft>100 ? 100 : soft
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.spline36resize(xxs,yys) : last
tmp = last

edge = mt_logic( tmp.mt_edge(thY1=0,thY2=255,"8 16 8 0 0 0 -8 -16 -8 4")
\ ,tmp.mt_edge(thY1=0,thY2=255,"8 0 -8 16 0 -16 8 0 -8 4")
\ ,"max") .mt_lut("x 128 / 0.86 ^ 255 *") #.levels(0,0.86,128,0,255,false)

tmpsoft = tmp.removegrain(11,-1)
dark_limit1 = tmp.mt_inpand()
bright_limit1 = tmp.mt_expand()
dark_limit = (wide==false) ? dark_limit1 : dark_limit1 .removegrain(20,-1).mt_inpand()
bright_limit = (wide==false) ? bright_limit1 : bright_limit1.removegrain(20,-1).mt_expand()
minmaxavg = special==false
\ ? mt_average(dark_limit1, bright_limit1)
\ : mt_merge(dark_limit,bright_limit,tmp.removegrain(11,-1),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)
\ : Smode==3 ? mt_lutxy(tmp,minmaxavg,yexpr="x x y - "+Str+" * +")
\ : mt_lutxy(tmp,tmpsoft,"x y == x x x y - abs 16 / 1 2 / ^ 16 * "+Str+
\ " * x y - 2 ^ x y - 2 ^ "+Str+" 100 * 25 / + / * x y - x y - abs / * + ?")

OS = string(overshoot)
US = string(undershoot)
mt_lutxy( bright_limit, normsharp, yexpr="y x "+OS+" + < y x y x - "+OS+" - 1 2 / ^ + "+OS+" + ?")
mt_lutxy( dark_limit, last, yexpr="y x "+US+" - > y x x y - "+US+" - 1 2 / ^ - "+US+" - ?")

Lmode==1 ? mt_clamp(normsharp, bright_limit, dark_limit, overshoot, undershoot) : last

normal = last
zero = mt_clamp(normsharp, bright_limit, dark_limit, 0,0)

Lmode==3 ? mt_merge(normal,zero,edge.mt_inflate()) : normal

edgemode==0 ? last
\ : edgemode==1 ? mt_merge(tmp,last,edge.mt_inflate().mt_inflate().removegrain(11,-1),Y=3,U=1,V=1)
\ : mt_merge(last,tmp,edge.mt_inflate().mt_inflate().removegrain(11,-1),Y=3,U=1,V=1)

AMNT = string(soft)
AMNT2 = string(100-soft)
sharpdiff=mt_makediff(tmp,last)
sharpdiff2=mt_lutxy(sharpdiff,sharpdiff.removegrain(19,-1),
\ "x 128 - abs y 128 - abs > y "+AMNT+" * x "+AMNT2+" * + 100 / x ?")

soft==0 ? last : mt_makediff(tmp,sharpdiff2)

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

ex=blankclip(last,width=smx,height=smy,color=$FFFFFF).addborders(2,2,2,2).coloryuv(levels="TV->PC")
\.removegrain(mode=19).mt_inpand().removegrain(mode=19).bicubicresize(dest_x,dest_y,1.0,.0)
tmp = clp.spline36resize(dest_x,dest_y)

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

(edgemode!= -1) ? last : edge.spline36resize(dest_x,dest_y).greyscale

return last
}

Merci de m'aider

Écrit par : SG1 03/03/2012 16:06

Bonjour,

Citation
Mais j'y arrive pas avec le forum lui même, li me marque "Erreur L'envoi a échoué. Vous n'êtes pas autorisé à envoyer ce type de fichier."

Tu mets le fichier dans un RAR ou tu le renommes en .txt, par exemple (En l'indiquant dans le post)...

Pour LimitedSharpen, fais peut-être une recherche sur le forum...
Edit :
C'est ancien, mais tu auras peut-être des liens :
http://forum.ripp-it.com/LimitedSharpen-Script-d-importation-AviSynth-t16507.html&hl=LimitedSharpen

@+

Écrit par : eoudmax 03/03/2012 16:15

J'y ai déjà cherché, j'ai pas trouvé

Écrit par : SG1 03/03/2012 16:41

Google est ton ami (comme disent certains) :
http://avisynth.org/mediawiki/LimitedSharpen

Écrit par : eoudmax 03/03/2012 16:44

J'y ai également cherché, y a pas de liens de téléchargement

Écrit par : SG1 03/03/2012 16:47

interro1.gif


Écrit par : eoudmax 03/03/2012 17:00

Le lien download affiche ça
# LimitedSharpen() ( a modded version, 29 Oct 2005 )
#
# A multi-purpose sharpener by Didée
#
#
# Changes in this mod:
#
# - RemoveGrain >= v0.9 IS REQUIRED!!
# ==================================
#
# - Smode=4 / sometimes does the magic wink.gif
# - a separate "undershoot" parameter, to allow for some line darkening in comic or Anime
# - Lmode=3 / on edges, limited sharpening with zero OS & US. On not-edges, limited sharpening with specified OS + LS
# - "soft" acts different now: no more boolean true/false, but instead integer 0 - 100 (or -1 -> automatic)
# instead of blurring before finding minima/maxima, it now softens the "effect-of-sharpening"
# - edgemode=-1 now shows the edgemask. (scaling still not implemented na1.gif )
#
## - MODIFIED version using MaskTools 2.0

function LimitedSharpenFaster( 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", int "undershoot",
\ int "soft", int "edgemode", bool "special", int "exborder" )
{
ox = clp.width
oy = clp.height

Smode = default( Smode, 3 )
ss_x = (Smode==4)
\ ? default( ss_x, 1.25)
\ : default( ss_x, 1.5 )
ss_y = default( ss_y, ss_x)
Assert(ss_x >= 1.0 && ss_y >= 1.0,"ss_x and ss_y must be at least 1.0!")
dest_x = default( dest_x, ox )
dest_y = default( dest_y, oy )
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)
undershoot= default( undershoot, overshoot)
softdec = default( soft, 0 )
soft = softdec!=-1 ? softdec : sqrt( (((ss_x+ss_y)/2.0-1.0)*100.0) ) * 10
soft = soft>100 ? 100 : soft
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.spline36resize(xxs,yys) : last
tmp = last

edge = mt_logic( tmp.mt_edge(thY1=0,thY2=255,"8 16 8 0 0 0 -8 -16 -8 4")
\ ,tmp.mt_edge(thY1=0,thY2=255,"8 0 -8 16 0 -16 8 0 -8 4")
\ ,"max") .mt_lut("x 128 / 0.86 ^ 255 *") #.levels(0,0.86,128,0,255,false)

tmpsoft = tmp.removegrain(11,-1)
dark_limit1 = tmp.mt_inpand()
bright_limit1 = tmp.mt_expand()
dark_limit = (wide==false) ? dark_limit1 : dark_limit1 .removegrain(20,-1).mt_inpand()
bright_limit = (wide==false) ? bright_limit1 : bright_limit1.removegrain(20,-1).mt_expand()
minmaxavg = special==false
\ ? mt_average(dark_limit1, bright_limit1)
\ : mt_merge(dark_limit,bright_limit,tmp.removegrain(11,-1),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)
\ : Smode==3 ? mt_lutxy(tmp,minmaxavg,yexpr="x x y - "+Str+" * +")
\ : mt_lutxy(tmp,tmpsoft,"x y == x x x y - abs 16 / 1 2 / ^ 16 * "+Str+
\ " * x y - 2 ^ x y - 2 ^ "+Str+" 100 * 25 / + / * x y - x y - abs / * + ?")

OS = string(overshoot)
US = string(undershoot)
mt_lutxy( bright_limit, normsharp, yexpr="y x "+OS+" + < y x y x - "+OS+" - 1 2 / ^ + "+OS+" + ?")
mt_lutxy( dark_limit, last, yexpr="y x "+US+" - > y x x y - "+US+" - 1 2 / ^ - "+US+" - ?")

Lmode==1 ? mt_clamp(normsharp, bright_limit, dark_limit, overshoot, undershoot) : last

normal = last
zero = mt_clamp(normsharp, bright_limit, dark_limit, 0,0)

Lmode==3 ? mt_merge(normal,zero,edge.mt_inflate()) : normal

edgemode==0 ? last
\ : edgemode==1 ? mt_merge(tmp,last,edge.mt_inflate().mt_inflate().removegrain(11,-1),Y=3,U=1,V=1)
\ : mt_merge(last,tmp,edge.mt_inflate().mt_inflate().removegrain(11,-1),Y=3,U=1,V=1)

AMNT = string(soft)
AMNT2 = string(100-soft)
sharpdiff=mt_makediff(tmp,last)
sharpdiff2=mt_lutxy(sharpdiff,sharpdiff.removegrain(19,-1),
\ "x 128 - abs y 128 - abs > y "+AMNT+" * x "+AMNT2+" * + 100 / x ?")

soft==0 ? last : mt_makediff(tmp,sharpdiff2)

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

ex=blankclip(last,width=smx,height=smy,color=$FFFFFF).addborders(2,2,2,2).coloryuv(levels="TV->PC")
\.removegrain(mode=19).mt_inpand().removegrain(mode=19).bicubicresize(dest_x,dest_y,1.0,.0)
tmp = clp.spline36resize(dest_x,dest_y)

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

(edgemode!= -1) ? last : edge.spline36resize(dest_x,dest_y).greyscale

return last
}
Comment je fais ?

Écrit par : eoudmax 03/03/2012 22:07

Est-ce que c'est un "script d'importation", si oui à quoi ça sert ?
Edit : C'est bon je l'ai trouvé dans le mask tool v2 an_ouarf.gif
Merci beaucoup SG1 cling.gif

Écrit par : eoudmax 03/03/2012 22:20

Si on en revenait au sujet initial glass.gif
Quelles sont les différences entre les espaces de couleur YV12, YUY2 (tout le bordel quoi) et comment passer de l'un à l'autre interro1.gif
Est-il possible d'appliquer un débruitage très puissant sans trop trop flouter, au moins pour qu'on puisse sharper et retrouver la netteté de départ interro1.gif
Merci à tous pour votre aide précieuse cling.gif gniark.gif glass.gif

Écrit par : leon1789 03/03/2012 23:26

YUY2 , YV12, RGB24, etc.. sont des manières différentes de coder les couleurs.
On passe des uns aux autres par les commandes "ConvertTo" :
voir http://avisynth.org/mediawiki/ConvertToRGB24 pour la liste de toutes les conversions possibles .

Cela paraît compliqué de fortement débruiter sans flouter.

J'ai des difficultés pour voir ta vidéo source :
il y a du bruit certes, mais je crois qu'il y a surtout du blocking (bloc de DCT)
Donc il faut commencer par utiliser l'option "debl" de softsharpen.

Et DeBr = 60 est beaucoup trop fort : DeBr = 15 devrait suffire ...

Quant à Sharp=70, c'est beaucoup trop !! Sharp=20 pour commencer...

Bref, essaie quelque chose comme SoftSharpen(deBr=15, deBl=10, sharp=20)

Écrit par : leon1789 03/03/2012 23:44

c'est bien un problème de blocking apparemment. Utilise simplement
SoftSharpen(deBl=20,deBr=10)
sans forcer les valeurs de débruitage et sharp...

ta source : http://leon1789.perso.sfr.fr/tmp/eoudmax1.jpg
après traitement : http://leon1789.perso.sfr.fr/tmp/eoudmax2.jpg

Écrit par : SG1 04/03/2012 00:25

Heureusement Léon est un couche tard...
Perso je rentre d'un repas... J'ai bien ######é et j'ai bien bu, j'ai la peau du ventre bien tendue (Comme dit le chanson)...
...En clair, bonne nuit et à demain !

euh.gif

Rol, c'est pas normal, on est censuré, lorsque l'on à trop bouffé... an_what.gif

Écrit par : eoudmax 04/03/2012 00:46

Merci Leon cling.gif
Je vais tester ça demain gniark.gif

Et oui SG1, heureusement, Bonne nuit an_coucou.gif

Écrit par : eoudmax 04/03/2012 01:39

Eh y a un blème
Avant de poster ma vidéo, y avait pas du tout de blocks, juste du bruit
D'ailleurs, je fais un petit comparatif, est-ce que tu saurais quel filtre utiliser, autre queSoftSharpen, pour débruiter cette vidéo, j'ai essayé FluxSmooth, NoMoSmooth et Convolution 3D, que dalle que des artéfacts en plus et l'image n'est même pas floutée comme elle devrait l'être dans ce cas.
Merci

Écrit par : leon1789 04/03/2012 08:24

il y a aussi Deen, hqdn3d, etc... il y a plein de débruiteurs.

Je suis étonné que cela ne fasse rien, car convolution3D poussé à fond floute, c'est certain !

Écrit par : eoudmax 04/03/2012 09:01

hqdn3d, faut que je teste
Deen, je l'ai dans le zip softsharpen que tu as posté, après j'ai trouvé un fichier txt pour le paramétrer, mais il semble que ce soit pas les même versions, pas lorsque j'utilise le parmaètre mode=c3d, il reconnaissait pas l'argument.
il faut que j'essayer de retester convolution3d

Écrit par : eoudmax 04/03/2012 17:22

C'est bon j'ai réussi avec convolution 3D et hqdn3d, alors après j'ai sharpé compenser le floutage causé par le débruitage, l'image est bien mais le blème c'est la texture des couleurs, on dirait qu'il sont un peu trop "crémeux" et blanc par rapport à la normal, est-ce qu'on peut faire quelque chose pour ça ?
Les couleurs sont également un peu trop homogènes, comment faire ?
Merci

Écrit par : leon1789 04/03/2012 17:57

Pour moi, c'est difficile de dire sans voir vraiment.

Écrit par : Subbat36 07/03/2012 23:54

Citation (SG1 @ dimanche 04 mars 2012 à 00:25) *
Heureusement Léon est un couche tard...
Perso je rentre d'un repas... J'ai bien ######é et j'ai bien bu, j'ai la peau du ventre bien tendue (Comme dit le chanson)...
...En clair, bonne nuit et à demain !

euh.gif

Rol, c'est pas normal, on est censuré, lorsque l'on à trop bouffé... an_what.gif


Sans doute parce que bouffé en bon français s'écrit m.a.n.g.é... et que ça pourrait faire penser à un autre logiciel... on frôle le régime totalitaire ici...

Écrit par : eoudmax 08/03/2012 00:38

ouais Leon je te poste ça ce week-end, depuis la rentrée, j'ai le temps que pendant le week; désolé.

Écrit par : leon1789 08/03/2012 20:10

Citation (Subbat36 @ jeudi 08 mars 2012 à 00:54) *
Citation (SG1 @ dimanche 04 mars 2012 à 00:25) *

Rol, c'est pas normal, on est censuré, lorsque l'on à trop bouffé... an_what.gif


Sans doute parce que bouffé en bon français s'écrit m.a.n.g.é... et que ça pourrait faire penser à un autre logiciel... on frôle le régime totalitaire ici...

Effectivement, la censure est assez désagréable. Et c'est même un comble quand on ne propose pas ce qu'on avait annoncé haut et fort il y a des années.

Écrit par : eoudmax 10/03/2012 12:52

Désolé pour le retard
En fait c'est bon ma vidéo est plutôt bonne j'ai pas besoin de la sharper
Merci beaucoup

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