Log in

View Full Version : How is it possible to use a resizer with a good anti-ringing filter ?


SuperLumberjack
12th March 2019, 21:40
Hello :)

I need help, because I want to upscale a VHS rip of my personal childhood, but the video is in a really bad resolution of 352 x 288 pixels.

The only positive point is that the video is uncompressed !

My goal is to upscale it in a 1080p resolution and to put it on a AVCHD DVD.


-------------


But I want the best possible quality, or rather avoid some defaults like ringing.

Because with the bad resolution of the source, I found that it's sometimes unforgivable and not very esthetic :scared:

To be honest, I find that the best quality that I can achieve is with Media Player Classic and madVR with the Jinc resizer and the anti-ringing filter for luma and chroma upscaling :)

Unfortunately, it's not possible to do that with an AviSynth script :(

The only plugin that allows to use some classics resizers with an anti-ringing filter, is the Resize8 plugin :

http://avisynth.nl/index.php/Resize8

But firstly, there isn't the Jinc filter while I find it's the best. Secondly, the anti-ringing filter, even if it's a bit more efficient that the AR filter of madVR (question of point of view), creates more visible defaults in the image.

So we get other defaults instead of the ringing. Not very interesting ! :o


-------------


I will show you some of these differences with screenshots.

I voluntarily used an other source than the one that I want to work on, because it's about me and my family, so it's private ! :p

So I used a video with a similar resolution. Maybe it's even better, because it's more easy to see the impact of the filters on the image ;)


This is the source image, with a resolution of 320 x 192 (it's a bit less that my VHS rip, but I think it's comparable) :

https://i.lensdump.com/i/WZG09z.md.png (https://lensdump.com/i/WZG09z)

I think the best result is with madVR and the Jinc filter associated with the anti-ringing filter for luma and chroma upscaling (even if it's a bit blurry):

https://i.lensdump.com/i/WZGILT.md.png (https://lensdump.com/i/WZGILT)

I tried with the plugin "Resize8" and the "Spline36" resizer with AR filter, but it's not as good :

https://i.lensdump.com/i/WZGZGb.md.png (https://lensdump.com/i/WZGZGb)

It's a bit sharper, and there is less ghosting with the black bars, but there are like some big pixels that don't look clean !

We can see better the result of madVR and the Jinc AR with the picture zoomed to +100% :

https://i.lensdump.com/i/WZGrk7.md.png (https://lensdump.com/i/WZGrk7)

It's a bit blurry, but clean !

Here is the same image upscaled with the "Resize8" plugin and the Spline36 AR :

https://i.lensdump.com/i/WZG1XF.md.png (https://lensdump.com/i/WZG1XF)

Without the AR filter, it gives this :

https://i.lensdump.com/i/WZGkND.md.png (https://lensdump.com/i/WZGkND)

It's almost better ! :(

It's too bad, because the AR filter is very efficient !


-------------

So, how can I do to get the same quality that madVR with the Jinc filter associated with the AR filter, or even better ?

I hope that you could help me, because it would be cool if I could upscale this video of my childhood and put it on a AVCHD DVD (I will create a menu too) ready to be played on a Blu-Ray player ! :)

I would like to give this to my parents, like a souvenir !

:thanks: for your help !

(sorry for my bad English)

ChaosKing
12th March 2019, 21:50
Have you looked at nnedi or Waifu2x?

SuperLumberjack
12th March 2019, 21:55
Hello. Thank yor you answer ! ;)

Yes, I already tried Nnedi3, but I think this filter is not good with straight lines. They are sometimes distored.

Waifu2x, it seems that it's very slow ! :( And I want 1080p ! :)

ChaosKing
12th March 2019, 22:20
1080p won't give you better quality, just a bigger file.

ChaosKing
12th March 2019, 22:27
Since your video is some old school cgi? you could try the PointSize collection https://forum.doom9.org/showthread.php?t=154674

EDIT
A small sample would be good.

SuperLumberjack
12th March 2019, 22:54
1080p won't give you better quality, just a bigger file.

Yes, I know. But it will adapted the my parent's screen. As I said, I want to put the video on a AVCHD DVD ;)

It's not a very long video. 2 min 30.


Since your video is some old school cgi? you could try the PointSize collection https://forum.doom9.org/showthread.php?t=154674

EDIT
A small sample would be good.

But the screenshots were for the examples :p Because the resolution is close of my real source.
But in fact, my real goal is to upscale a VHS rip to the 1080p resolution.

It's one of the only video we have, where my brother and I were filmed when we were little childs ! :) It's why I can't show you a sample :D

And it's why I want to upscale the video and put it on a AVCHD DVD. It's for a gift to my parents. It's more simple for them to watch the video on the TV than on a computer.

lansing
12th March 2019, 23:34
Your best option is to recapture the vhs again at higher resolution. Native resolution for old camcorder should be 720x576i for PAL and 720x480i for NTSC.
There aren't much you can do with 352 x 288.

SuperLumberjack
13th March 2019, 00:20
Thanks for you answer lansing ! :)

The problem is that we asked someone to rip the VHS some years ago :(

I must see if my parents still have this VHS. But unfortunately, even if they still have it, I haven't the equipement to rip it.

I know it's not a good idea to upscale a video like that, but it's everything I have.

But if at least I could have a quality equivalent to MPC with madVR, I think it would be enough.

It's too bad we can't use madVR to encode videos, because I think we can't hardly do better in terms of quality... !

ChaosKing
13th March 2019, 01:39
JincResize https://forum.doom9.org/showthread.php?t=169813
A bit buggy, but looks not bad.

OR

https://forum.doom9.org/showthread.php?p=1702323#post1702323
eedi3_rpow2 (2)
nnedi3_rpow2 (2)
Spline36Resize(1920,1080)

SuperLumberjack
13th March 2019, 11:41
https://forum.doom9.org/showthread.php?p=1702323#post1702323

This is very good ! :) Thank you so much ! :thanks:

I got good results with my video ! I would like to show you, but it would be embarassing, because, we see me playing at 4 years old with 2 other childs of the same age, and my brother who was 1 year old... ! :D

https://i.lensdump.com/i/Wg1kfA.md.jpg (https://lensdump.com/i/Wg1kfA)


But I can show you with the old school CGI ! :p

I will wrote the script below this time.


Here is the result of your proposition with "eedi3", "nnedi3" and "Spline36" ;) :

https://i.lensdump.com/i/Wg1r6F.md.png (https://lensdump.com/i/Wg1r6F)

eedi3_rpow2 (2)
nnedi3_rpow2 (2)
Spline36Resize(1920,1152)
Crop(0, 36, 0, -36)


Just some questions : Why the eedi3 ? Isn't it for deinterlacing ? What exactly the difference with nnedi3 ?


Here is the result with "Jinc36" resizer :

https://i.lensdump.com/i/Wg1tz3.md.png (https://lensdump.com/i/Wg1tz3)

ConvertToYV24
Jinc36Resize(1920, 1152)
Crop(0, 36, 0, -36)


In fact, I already tried the nnedi3 and Jinc resizers some time ago, when I wanted to upscale some videos of old video games (Super Nes) and tired everybody on this forum with this...:p

I'm still sorry ! :o I was looking for perfection... :(

But now, I understand better the limits of all this.


Yes, so I tried nnedi3, but I remember that I had some distortions with straight lines, particularly with this picture :

https://i.lensdump.com/i/Wg1TtD.md.png (https://lensdump.com/i/Wg1TtD)

I tried with this at that time :

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

I put in red the defaults that I saw. But in fact, I note now that these defaults aren't as important that I remember. I think I have really exagerated everything. Perfectionism... ! :p


But with the Jinc resizer, I really noticed real defaults, like a big ringing and 2 lines which are cutting the picture (when the output resolution isn't a multiple of the source resolution I think) :

https://i.lensdump.com/i/Wg1EKq.md.png (https://lensdump.com/i/Wg1EKq)

ConvertToYV24
Jinc36Resize(1234, 1080)


But with your script, I think it's really good ! ;)

https://i.lensdump.com/i/Wg11w0.md.png (https://lensdump.com/i/Wg11w0)

eedi3_rpow2 (2)
nnedi3_rpow2 (2)
Spline36Resize(1234, 1080)


I didn't expect something as good, so thanks ! :thanks:

SuperLumberjack
13th March 2019, 13:35
I just noticed a shift of pixels when I zoomed. Apparently, I just have do add this :) :

string cshift =

Sets the resizer used for correcting the image center shift that nnedi3_rpow2 introduces. This can be any of Avisynth's internal resizers, such as "Spline36Resize", "LanczosResize", etc...
If not specified the shift is not corrected. The correction is accomplished by using the subpixel cropping capability of Avisynth's internal resizers.

SuperLumberjack
13th March 2019, 14:24
Thank you very much ChaosKing ! You helped me a lot ! :)

Your script is perfect ! I never tried Eedi3. It's what I needed first, because the Nnedi3 is a bit too strong to begin.

With the cshift="Spline36Resize" it's really good ! ;)

:thanks: