module inscription newsletter haut de page forum mobile

Rejeter la notice

Nouvelle Formation Prise de son : les inscriptions sont ouvertes !
Maîtrisez la qualité de vos prises de son avec notre formation théorique et pratique de 3 jours ! Du 14 au 16 mai 2024 à Paris.

[Résolu] J'aimerais pouvoir utiliser le filtre de redimensionnement Jinc

Discussion dans 'Les formats' créé par SuperLumberjack, 14 Mai 2016.

Tags:
  1. arnuche

    Points Repaire:
    3 470
    Recos reçues:
    8
    Messages:
    1 270
    Appréciations:
    +1 / 9 / -1
    Elle fait peut-être pareil, à savoir un petit étirement, mais pourquoi ?
     
  2. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Justement, je ne comprends pas :perplexe:

    J'ai d'ailleurs comparé Higan et Snes9x.

    Voici une capture d'Higan :

    higan original.png

    Par la même occasion, j'ai pu me rendre compte que tout ce temps je me suis trompé :suspicious:La résolution de Higan est de 585x480 et non pas 584x480. En gros, tous mes scripts sont un peu faux ! :D

    Mon dernier script c'est plutôt ça donc :

    AviSource()
    Spline16Resize(1410, 1234)
    BicubicResize(1410, 1080)
    nnedi3_rpow2(rfactor=2, nsize=0, nns=4, qual=1, etype=0, pscrn=2, threads=0, opt=0, fapprox=0)
    BicubicResize(b=0, c=0.5, 1410, 1080)


    Bref.

    J'ai upscalé l'image de Higan en 1080p (avec le filtre ClearIQZ d'ACDSee) :

    higan upscalé en 1080p.png

    Et voici ce que ça donne en 1080p avec Snes9x :

    snes9x 1080p.png

    On peut constater que l'image de Snes9x est un peu plus large :sad:

    Là je suis un peu largué. Ou alors la majorité des émulateurs se trompe de résolution de sortie en 4/3.

    En tout cas on a d'un côté un émulateur qui émule soi-disant à 100% le hardware de la Super Nes et qui ne sort pas complétement du 4/3 en aspect ratio, et de l'autre côté tout un tas d'autres émulateur qui sortent du 4/3 sans aucune ambiguité.

    J'ai plutôt envie de croire que Higan a juste, plutôt que les autres, mais bon, j'aimerais quand même bien en savoir plus.
     
  3. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Je pense que c'est Higan qui a juste ! Car après avoir refait mon script, mon image a évidemment légèrement changé, mais c'est comme si chaque pixel s'était enfin mis à sa place, comme à l'époque :)

    C'est comme si tout s'ajustait comme il faut quoi. On voit que tout était vraiment pensé en fonction des spécifications matérielles à l'époque. Il n'y avait pas de hasard. Personnellement je choisis de me fier à ce que je vois. Je pense que les autres émulateurs font juste une vulgaire transposition d'un aspect ratio 8/7 en 4/3. Mais ça devait sans doute être un peu plus compliqué que ça ;-)

    Higan ne doit pas être l'émulateur le plus précis pour rien !
     
  4. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Je viens de comprendre pourquoi mes anciennes captures de Higan étaient dans une résolution de 584x480 (Video Scale sur Small) et en 1168x960 (Video Scale sur Large). C'est parce que j'ai fait les captures avec Fraps :idea:

    Et pourtant, lorsque j'ai fait la capture avec la touche "Imp.écr", j'ai vérifié plusieurs fois, en coupant l'image sous Paint j'obtiens soit une résolution de 585x480, soit 1170x960.

    Bizarre quand même ! o_O
     
  5. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
  6. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
  7. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Bon, je pense que je vais résumer très rapidement les grandes lignes de ce qu'on a pu voir d'utile ;-) Je mettrai un lien à la fin sur la 1ère page. Ça permettra de retrouver ça plus facilement pour ceux qui ne voudraient pas ce taper tout le topic :D De plus, ça mettra mieux en évidence le fait qu'ici il n'est pas uniquement question de jeux vidéo, mais bien de vidéo et de redimensionnement d'image :) On rappelle qu'il est principalement question d'utiliser les scripts AviSynth (merci à arnuche qui m'a appris :good:) en passant ensuite par VirtualDub

    Le filtre de redimensionnement Jinc :

    On peut le trouver ici : JincResize - Avisynth wiki

    Pour cet exemple (comme tous les autres d'ailleurs :laugh:) on part d'une image toute rikiki de résolution 256x224 dont on veut changer l'aspect ratio (du presque 4/3, équivalent à 585x448 si on double la résolution) et l'agrandir dans une résolution de 1410x1080 :

    Image toute rikiki.png

    Le Jinc dans MadVR, pour ceux qui connaissent, c'est top, car on peut y associer un filtre anti-ringing. Dans AviSynth, ce n'est pas encore parfait comme on va le voir o_O

    [Je rappelle aussi que le filtre n'est pas comaptible avec l'espace de couleur RGB24, mais par contre ça marche avec le YV24, donc dans le script, il faudra ajouter cette ligne :

    ConvertToYV24()

    ]

    Convert - Avisynth wiki

    Déjà pour commencer, sans filtre anti-ringing, ça créé des doubles contours :

    AviSource()
    ConvertToYV24()
    Jinc36Resize(1410, 1080)


    Jinc36 - 1410x1080 (=doubles contours).png

    Deuxièmement, ça créé des lignes verticales qui cisaillent l'image lorsqu'on agrandit dans des résolutions qui devraient aboutir à des nombres décimaux au lieu d'entiers (même si on rentre des nombres entiers dans le script) :

    Jinc36 - 1410x1080 (lignes verticales qui apparaissent).png

    Et je pense que le fait de changer d'aspect ratio n'arrange rien.

    On peut éviter ces problèmes de doubles contours et de lignes verticales en commençant par un filtre comme le Bicubic, le Catmull-Rom (qui est en fait un filtre Bicubic) ou du Spline16.

    Toutes les autres versions du Spline (Spline36, Spline64), les filtres (très sharpés) comme le Lanczos, le Sinc, Le Blackman, etc., créent ces doubles contours, même si ça permet d'éviter les lignes verticales.

    Resize - Avisynth wiki

    AviSource()
    ConvertToYV24()
    BicubicResize(b=0, c=0.5, 512, 448)
    Jinc36Resize(1410, 1080)


    Catmull-Rom + Jinc36 (pas de doubles contours, ni de lignes verticales).png

    (Ici j'ai commencé par du Catmull-Rom, suivi du Jinc 3 taps)

    Le dernier souci avec le Jinc, c'est que même dans ce cas là, ça rajoute une petite ligne de pixels en bas, et parfois une d'un côté :

    AviSource()
    ConvertToYV24()
    BicubicResize(b=0, c=0.5, 585, 448)
    Jinc36Resize(1410, 1080)


    Problème du Jinc (une ligne horizontale s'ajoute).png

    (J'ai ajouté des bords noirs pour que l'on voit mieux)

    La vérité, c'est que cette ligne apparait sans doute parce qu'il y a une légère déformation de l'image. La seule solution pour éviter cette déformation est d'ajouter des bords noirs avant d'utiliser le filtre Jinc, puis ensuite de les enlever (avec le filtre Catmull-Rom, j'ai cette fois-ci choisi une résolution qui fait la moitié de la résolution finale, car c'est moins compliqué pour l'ajout/suppression des bords noirs) :

    AviSource()
    ConvertToYV24()
    BicubicResize(b=0, c=0.5, 705, 540)
    AddBorders(4, 4, 3, 4)
    Jinc36Resize(1424, 1096)
    Crop(8, 4, -6, -8)


    Problème du Jinc (problème de déformation de l'image).png

    AddBorders - Avisynth wiki

    crop function for avisynth

    Là on peut voir plus clairement la déformation de l'image du Jinc sans l'ajout de ces bandes noires à gauche, alors qu'en en ajoutant, tout va bien à droite.

    Et sinon, je tiens à finir en disant que le Jinc64, le Jinc144 et le Jinc256 n'ont aucun intérêt vu que la netteté augmente mais que plus de défauts apparaissent.

    (J'ajouterai la suite progressivement... :))
     
  8. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Le filtre de redimensionnement Nnedi3 :

    On peut le trouver ici : Nnedi3/nnedi3 rpow2 - Avisynth wiki

    Déjà pour commencer, ça n'agrandit que l'image par 2, 4, 8...
    Que des multiples de 2.

    Donc, dans mon cas, je dois forcément l'associer à un autre filtre, vu que je veux changer l'aspect ratio et aboutir à une résolution de 1410x1080.

    D'autant plus que sans aucun autre filtre, les lignes peuvent apparaitre assez déformées :

    AviSource()
    nnedi3_rpow2(rfactor=4, nsize=0, nns=4, qual=1, etype=0, pscrn=2, threads=0, opt=0, fapprox=0)


    Nnedi3 (X4).png

    Voici ce que ça donne en l'associant à un autre filtre (mon fameux script final :laugh:!) :

    AviSource()
    Spline16Resize(1410, 1234)
    BicubicResize(1410, 1080)
    nnedi3_rpow2(rfactor=2, nsize=0, nns=4, qual=1, etype=0, pscrn=2, threads=0, opt=0, fapprox=0)
    BicubicResize(b=0, c=0.5, 1410, 1080)


    Nnedi3 associé à d'autres filtres.png

    Évidemment, si on compare comme ça ça semble moins propre, mais pour moi c'est tout de même plus proche de l'original, et les lignes sont moins déformées. Après, tout est question de goûts ;) Mais c'est vrai que pour du pixel art, le Nnedi3 est franchement pas mal !

    Voilà, c'est tout ce que j'ai à dire concernant le Nnedi3 :approb:
     
    #173 SuperLumberjack, 27 Août 2016
    Dernière édition: 28 Août 2016
  9. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Le filtre de redimensionnement SimpleResize :

    On peut le trouver ici : SimpleResize - Avisynth wiki

    Par contre, les seuls espaces de couleurs supportés sont le YV12 et le YUY2.

    Mais il y a moyen d'utiliser le YV24, grâce à cette petite astuce qu'on m'a donnée sur le forum Doom9 :)

    ## Last=YV24
    YToUV(
    \ UToY.SimpleResize(
    largeur, hauteur)
    \ , VToY.SimpleResize(
    largeur, hauteur)
    \ , Last.SimpleResize(
    largeur, hauteur)
    \ )

    Évidemment, il faut d'abord mettre la ligne suivante dans le script :

    ConvertToYV24()

    Ce filtre n'est pas le plus indiqué pour faire de gros agrandissement, mais par contre il est relativement intéressant pour faire des redimensionnement en restant dans des résolutions très proches :good:

    Voici un exemple :


    Original

    Image toute rikiki le retour.png

    Image redimensionnée en 292x224 (585/2 ça fait malheureusement 292,5, donc j'ai choisi 292)

    SimpleResize - 292x224.png

    Bon, comme vous pouvez le voir, ça engendre tout de même un léger flou horizontalement, comme avec tous les filtres, mais le résultat reste néanmoins assez naturel.

    Ça peut être bien lorsque l'on l’utilise en dernier. D'abord rester dans une résolution multiple de la résolution d'origine, et finir avec ce filtre pour aboutir à la résolution désirée. Tout dépend du résultat que l'on recherche.

    AviSource()
    ConvertToYV24()
    Spline16Resize(1024, 896)
    ## Last=YV24
    YToUV(
    \ UToY.SimpleResize(1410, 1080)
    \ , VToY.SimpleResize(1410, 1080)
    \ , Last.SimpleResize(1410, 1080)
    \ )


    Spline16 + SimpleResize.png

    Ce qui est sûr, c'est qu'avec tous ces filtres, beaucoup de résultats sont possibles ! :D

    Voilà, j'ai fini ! :bravo:

    Merci encore à arnuche, Alcoriza et ogt pour leur aide ! :jap:
     
    #174 SuperLumberjack, 27 Août 2016
    Dernière édition: 28 Août 2016
  10. SuperLumberjack

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    251
    Appréciations:
    +0 / 0 / -0
    Hello les amis ! :hello:

    Ça fait un bail hein ? :D


    Je reviens ici, car voilà... j'ai fait une rechute ! o_O Je me suis remis du jour au lendemain à vouloir faire de l'upscale de vidéo de jeux Super Nintendo de résolution 256x224, mais pour cette fois-ci les rendre en 2160p ooo

    Je sais, c'est insensé ! :rolleyes:

    Et c'est aussi ce que j'aime dans tout ça ! :D


    Donc voilà, je partage ma dernière trouvaille :good:

    Script pour jeux avec aspect ratio 4/3 :

    AviSource()
    Spline16Resize(5120, 1920)
    GaussResize(2560, 1920, p=50)
    nnedi3_rpow2(rfactor=2, nsize=0, nns=4, qual=1, etype=0, pscrn=2, threads=0, opt=0, fapprox=0)
    BicubicResize(2820, 2160)

    Original

    Donkey Kong Country 3 - Original.png

    Upscalé en 2160p

    Donkey Kong Country 3 - Remastering (AR 4-3).png

    Script pour jeux avec aspect ratio 8/7 :

    AviSource()
    GaussResize(2560, 1920, p=50)
    nnedi3_rpow2(rfactor=2, nsize=0, nns=4, qual=1, etype=0, pscrn=2, threads=0, opt=0, fapprox=0)
    BicubicResize(2468, 2160)

    Original

    Mr. Nutz - Original.png

    Upscalé en 2160p

    Mr. Nutz - Remastering (AR 8-7).png

    Alors, qu'en pensez vous ? :)

    Voici encore une vidéo pour comparer la vidéo d'origine avec la version upscalée avec mon script (à regarder idéalement en 1080p ou 2160p en plein écran) :love: :



    J'ai recherché à faire quelque chose de moderne tout en essayant de recréer un peu le relief très particulier que l'on avait à l'époque sur écran CRT (mais donc sans scanlines, etc.). La vidéo upscalée n'est donc pas censée être une copie conforme de l'originale, mais plutôt quelque chose de repensée légèrement. Je me suis donc un peu émancipé de tout.

    A part ça, j'ai aussi eu quelques discussions intéressantes avec des gens très calés sur le forum Doom9 : I want to upscale a Super Nes video in HD - Page 7 - Doom9's Forum

    N'hésitez pas à me dire ce que vous pensez de leurs précieux conseils ! :o

    Merci :) Bonne journée.
     
    #175 SuperLumberjack, 19 Avril 2018
    Dernière édition: 19 Avril 2018
  11. ogt

    ogtx Regretté conseiller technique
    So

    Points Repaire:
    17 700
    Recos reçues:
    546
    Messages:
    23 514
    Appréciations:
    +712 / 1 396 / -41
    Que vos 2 images sont identiques : même définition (mediainfo) : 250*218 pixels.
    Difficile de comparer dans ce cas !

    Olivier
     
  12. arnuche

    Points Repaire:
    3 470
    Recos reçues:
    8
    Messages:
    1 270
    Appréciations:
    +1 / 9 / -1
    Pas de souci chez moi, j'ai bien 2 résos différentes.
     
  13. ogt

    ogtx Regretté conseiller technique
    So

    Points Repaire:
    17 700
    Recos reçues:
    546
    Messages:
    23 514
    Appréciations:
    +712 / 1 396 / -41
    Ah bon,
    Quand je fais propriétés sur chacune des images, j'ai la même résolution.
    Idem si je télécharge les 2 images.

    Olivier
     

    Fichiers attachés:

  14. Alcoriza

    So

    Points Repaire:
    8 200
    Recos reçues:
    97
    Messages:
    5 202
    Appréciations:
    +291 / 696 / -5
    Olivier, tu compares la taille des aperçus, pas la taille des images postées.
     
  15. ogt

    ogtx Regretté conseiller technique
    So

    Points Repaire:
    17 700
    Recos reçues:
    546
    Messages:
    23 514
    Appréciations:
    +712 / 1 396 / -41
    Ah oui, désolé, j'ai des problèmes de santé actuellement, et j'ai du mal à me concentrer.

    Bon j'a regardé les 2 images, avec MPC-HC, qui fait aussi du resize bicubique (sans se prendre le choux), il n'y a pratiquement aucune différence de qualité en plein écran, sauf que dans l'image re-sizée par le script, les couleurs sont légèrement plus saturées.

    Olivier
     

Dernières occasions

 

Partager cette page