WEBVTT

00:00:01.480 --> 00:00:07.080
whoo okay look at that fan header that

00:00:05.920 --> 00:00:11.200
was mindblowing we use upscaling to enhance

00:00:09.360 --> 00:00:16.000
the quality of everything from photos to games to nonsensical movie plots but

00:00:14.120 --> 00:00:20.400
perhaps the most common use is the restoration of old or degraded videos

00:00:18.600 --> 00:00:24.920
now the most basic upscaling techniques work by sampling each pixel and then

00:00:22.720 --> 00:00:29.359
multiplying it to match the desired new resolution but that's only going to get

00:00:27.199 --> 00:00:34.960
you so far and it certainly won't generate the kind of result we saw with

00:00:31.000 --> 00:00:37.239
the 4K 60fps remastered upload of Rick

00:00:34.960 --> 00:00:43.800
asley is never going to give you up so to learn more about how a 720p 30fps

00:00:40.680 --> 00:00:46.120
video managed to look this good we

00:00:43.800 --> 00:00:50.239
reached out to Topaz makers of the machine learning assisted upscaling

00:00:47.920 --> 00:00:55.079
software used for that project and we used it to attempt a restoration of My

00:00:52.840 --> 00:01:01.039
First Youtube upload my name is l Sebastian and today we'll be looking at

00:00:56.719 --> 00:01:01.039
the Sunbeam Tech tunic Tower

00:01:05.799 --> 00:01:11.360
as you saw already the results are

00:01:09.280 --> 00:01:15.840
uneven but there are some really interesting reasons for that and on a

00:01:13.680 --> 00:01:21.200
slightly less challenging but equally classic video we managed some really

00:01:18.240 --> 00:01:26.360
amazing results and we did it on the MSI Creator z6p laptop that they provided

00:01:24.200 --> 00:01:31.280
along with a sponsorship of this fun and educational project you can check this

00:01:28.479 --> 00:01:36.000
puppy out down below Now using software like Photoshop to denoise and upscale a

00:01:33.439 --> 00:01:41.079
still image is relatively simple especially for a talented digital artist

00:01:38.000 --> 00:01:43.000
but video it's a whole other Beast not

00:01:41.079 --> 00:01:47.719
only are you now dealing with thousands or even tens of thousands of frames but

00:01:46.200 --> 00:01:51.799
if you want to Target a modern video resolution like 4K you could be

00:01:49.640 --> 00:01:57.240
attempting to create literally millions of pixels that weren't there before are

00:01:54.439 --> 00:02:03.560
you ready this is going to be fun I get to see it now 21

00:02:00.560 --> 00:02:06.680
gigs yeah but 21 gigs you're trying to

00:02:03.560 --> 00:02:08.920
take 5 megabytes and turn it into 21

00:02:06.680 --> 00:02:15.879
gigabytes this is the opposite of file compression szip needs this function we

00:02:12.000 --> 00:02:18.879
make your files 2,000 times bigger oh

00:02:15.879 --> 00:02:21.000
God this is Nightmare fuel I think a

00:02:18.879 --> 00:02:24.680
deep fake of a still might have actually been

00:02:21.959 --> 00:02:29.920
better it looks like it's um you know those Photoshop filters that

00:02:27.400 --> 00:02:35.760
turn it certain things into a painting what is my hand doing here fing what is

00:02:33.160 --> 00:02:42.000
this you know what it looks like it looks like Tomb Raider era Graphics were

00:02:39.080 --> 00:02:46.200
there lines on my shirt because it had no idea what to do my hands look like

00:02:44.720 --> 00:02:52.040
they're from halflife one my mouth is like over

00:02:48.959 --> 00:02:54.239
here what's not really fair though is

00:02:52.040 --> 00:03:00.840
I'm not actually comparing this to the original video a

00:02:57.239 --> 00:03:02.760
crap how catchy is that to techs my name

00:03:00.840 --> 00:03:07.440
is lus Sebastian you know looking at the original video makes me look at the

00:03:04.239 --> 00:03:10.640
upscaled one a lot more favorably it was

00:03:07.440 --> 00:03:13.720
really bad you know

00:03:10.640 --> 00:03:17.599
what the copper heat

00:03:13.720 --> 00:03:19.879
pipes look

00:03:17.599 --> 00:03:26.519
better and the shirt in certain spots to be clear I'm

00:03:23.799 --> 00:03:34.120
not I am not saying this is perfect in certain spots it is sharper this looks

00:03:31.439 --> 00:03:40.560
sort of better actually the one good thing I'm taking away from this is

00:03:37.000 --> 00:03:43.680
that I think my hairline was always this

00:03:40.560 --> 00:03:47.799
receded then

00:03:43.680 --> 00:03:49.760
whoo okay it has these little flashes of

00:03:47.799 --> 00:03:54.680
Brilliance where you're like oh no that actually looks a lot better you know if

00:03:51.959 --> 00:04:01.720
I'm back here you know I'm like watching or whatever from my Tel Vision it looks

00:03:58.879 --> 00:04:04.959
a lot better it really does look a lot better see if I can find a still where

00:04:04.000 --> 00:04:10.959
it's decent it looks pretty awful but let me

00:04:08.480 --> 00:04:15.880
explain why first up is the fact that our original footage is just

00:04:13.439 --> 00:04:22.880
240p that's a total of 76,800 pixels to work with which might

00:04:19.120 --> 00:04:25.800
sound like a lot of pixels but most of

00:04:22.880 --> 00:04:29.840
them are just a blank wall behind me for the things that matter like say for

00:04:27.919 --> 00:04:36.199
example capturing the expressions of of the human eye we've got about 20 pixels

00:04:33.240 --> 00:04:40.680
per eye so good luck with that making matters worse the original footage which

00:04:38.440 --> 00:04:44.360
we unfortunately no longer have was interlaced and it was rendered without a

00:04:42.759 --> 00:04:48.240
proper conversion for those of you who don't know interlacing was a technique

00:04:46.039 --> 00:04:53.280
broadcasters use to increase the perceived frame rate and resolution of

00:04:50.560 --> 00:04:57.880
older footage it works by drawing half of the picture first as a series of

00:04:55.039 --> 00:05:03.080
lines across the screen then drawing the second series of lines to fill in the

00:05:00.120 --> 00:05:08.080
gaps and back and forth and so forth CRTs and some plasma TVs were made with

00:05:05.720 --> 00:05:13.680
this in mind and when you see I instead of P next to resolution that means that

00:05:10.680 --> 00:05:17.400
it is interlaced by contrast progressive

00:05:13.680 --> 00:05:20.880
scan P refreshes the entire image with

00:05:17.400 --> 00:05:24.199
each cycle so I'm really sorry young

00:05:20.880 --> 00:05:26.199
lonus we tried but that handic cam you

00:05:24.199 --> 00:05:30.319
were using back then just ain't going to cut it ah it's okay buddy don't even

00:05:29.039 --> 00:05:38.000
worry about it luckily we don't have to go too far to find something that was shot at a higher

00:05:34.360 --> 00:05:40.400
resolution this is more along the lines

00:05:38.000 --> 00:05:46.520
of what video enhance AI is meant to work with now they say they can handle

00:05:42.280 --> 00:05:48.639
as low as 480i without too much of this

00:05:46.520 --> 00:05:53.000
but our famous firetr video happens to be available in 720p which should be

00:05:51.000 --> 00:05:57.720
even better than that now because I'm a digital packrat I actually have the

00:05:55.240 --> 00:06:00.800
original footage for this but we're going to just download it from YouTube

00:05:59.080 --> 00:06:05.680
to show you guys what you could do with a simple free trial of the vei software

00:06:03.759 --> 00:06:09.919
now of course beefy Hardware is going to result in significantly faster renders

00:06:07.880 --> 00:06:14.240
and those of you with older gpus are going to have a pretty hard time with

00:06:11.440 --> 00:06:19.560
this sort of workload but the 370 TI in our z6p managed to take our original

00:06:16.880 --> 00:06:23.199
footage and crank it up to 4K in just a couple of hours and we could even cut

00:06:21.360 --> 00:06:28.160
that down if we sprang for the max speec core I9 and RTX 380 TI configuration

00:06:26.759 --> 00:06:34.240
speaking of extra budget we've got swacket V2 in stock it's neither sweater

00:06:30.560 --> 00:06:36.360
nor jacket it's a swacket LTT Store.com

00:06:34.240 --> 00:06:40.479
now vei has tons of different modes and features so you might need to run it a

00:06:38.240 --> 00:06:45.039
few times to get exactly the result that you're looking for but you can also run

00:06:42.759 --> 00:06:48.400
a quick render preview beforehand to see how it's going to pan out watch out by

00:06:47.000 --> 00:06:51.960
the way because this type of heavy workload will make your components

00:06:50.000 --> 00:06:56.000
pretty toasty fortunately we didn't have a problem with the Creator z6p thanks to

00:06:54.240 --> 00:07:01.720
its Vapor chamber cooler which would have been pretty awkward if they sponsored this video and overheated we

00:06:59.560 --> 00:07:06.280
settled on Artemis medium quality with a constant rate factor of zero this

00:07:03.759 --> 00:07:09.919
adjusts the data rate the lower it is the higher the quality we turned off

00:07:08.199 --> 00:07:13.120
film grain although for footage that was originally shot on film you might

00:07:11.360 --> 00:07:17.240
actually find that a little bit of grain will help it look more natural and while

00:07:15.400 --> 00:07:22.840
you can set your target resolution to just scale up which is ideal for 4x3

00:07:20.319 --> 00:07:28.039
footage we selected specific pixel counts so we tried both 1080P and 4K one

00:07:26.240 --> 00:07:30.639
more housekeeping item we've got the 1 TB storage version of this machine

00:07:29.520 --> 00:07:37.199
machine and if you're planning to do a lot of this you might want to get one with more storage because the land Rider

00:07:34.639 --> 00:07:45.479
RC firetruck unboxing ended up at a whopping 35 GB and that's before the

00:07:42.160 --> 00:07:48.879
60fps conversion so for that we take our

00:07:45.479 --> 00:07:51.720
4K footage which is still at 30 FPS we

00:07:48.879 --> 00:07:57.280
switch from recommended to all modes in VII and then we use one of the four

00:07:54.000 --> 00:07:59.639
Kronos options we're going to go with V3

00:07:57.280 --> 00:08:05.560
and go oh um remember how the upscaling was

00:08:03.639 --> 00:08:10.400
Conjuring millions of pixels to add to our frames well now we're creating

00:08:08.000 --> 00:08:15.000
entirely new frames so as you guys can imagine this might take a while now the

00:08:13.159 --> 00:08:19.759
old way to do this was the frame blending method which doubled the

00:08:16.840 --> 00:08:23.720
original frames then Blended them together it's relatively simple to

00:08:21.720 --> 00:08:28.800
implement but it typically results in a lot of motion Jitter another option is

00:08:26.319 --> 00:08:33.719
Optical flow which analyzes the clips pixel by pixel frame by frame and then

00:08:31.199 --> 00:08:38.800
uses the directional changes between the two frames to create an in between it's

00:08:37.000 --> 00:08:44.200
pretty good but you end up with pixel occlusion when it gets things wrong and

00:08:41.240 --> 00:08:49.120
pixels from one frame can actually block existing pixels in the next one VA

00:08:47.080 --> 00:08:53.519
Chronos is sort of like a beefed up Optical flow it's using extensive

00:08:51.440 --> 00:08:57.160
machine learning to predict the best intermediate frame between the existing

00:08:55.399 --> 00:09:01.160
ones and they spent months training their neural network on tens of Millions

00:08:59.600 --> 00:09:05.120
of frames to alleviate the pixel occlusion issues we've got a few samples

00:09:03.600 --> 00:09:10.120
here so you guys can see them for yourself and we're going to have the full versions of these on float.com for

00:09:08.360 --> 00:09:16.000
all of our subscribers over there I've been told the results are good but not

00:09:13.320 --> 00:09:21.079
perfect and I think it's time to watch the fir trk video then all right okay

00:09:19.120 --> 00:09:27.480
I'm not going to do that yet though I'm going to enjoy this in its 4K

00:09:24.160 --> 00:09:31.360
remastered Glory oh it doesn't handle

00:09:27.480 --> 00:09:31.360
motion very well does it

00:09:31.880 --> 00:09:40.800
that is kind of crazy when it doesn't have to move and

00:09:36.839 --> 00:09:47.279
when we're not looking at a

00:09:40.800 --> 00:09:50.120
human it's kind of crazy sharp now I

00:09:47.279 --> 00:09:55.880
don't I don't actually have the original file next to it right now but that seems

00:09:53.480 --> 00:10:02.640
really good I think oh wow

00:09:59.560 --> 00:10:07.240
you know where you can really see it is

00:10:02.640 --> 00:10:10.680
the the lines on my shirt clearly alias

00:10:07.240 --> 00:10:13.360
in the original version and look at this

00:10:10.680 --> 00:10:19.480
blocking in the table here this just like low bit rate crappy blocking they

00:10:15.839 --> 00:10:21.839
have smoothed it out a lot oh yeah like

00:10:19.480 --> 00:10:27.279
right here that is undoubtedly a better viewing experience

00:10:24.720 --> 00:10:32.320
the real the shaky camera the handheld camera is killing it that's another big

00:10:29.880 --> 00:10:37.120
difference between this and the music video that fixed camera is a huge

00:10:35.000 --> 00:10:40.800
difference maker I'm impressed that it's handling it as well as it is like that

00:10:39.160 --> 00:10:44.480
shot right there where we just moved around the fir

00:10:42.320 --> 00:10:49.200
Tru yeah you could convince me that was 60 frames per

00:10:45.839 --> 00:10:53.000
second that shirt though you really see

00:10:49.200 --> 00:10:55.440
it in the shirt okay I've got it it can

00:10:53.000 --> 00:11:01.560
handle motion of the camera and it can handle motion of the host but not both

00:10:59.560 --> 00:11:07.000
look at that non-lt store water ballb get that out of here oh wow it really

00:11:04.040 --> 00:11:12.600
screwed up the carpet here though oh wow it bunged that up it's trying to smooth

00:11:08.839 --> 00:11:14.920
it and it's like bye-bye texture so it's

00:11:12.600 --> 00:11:18.320
not perfect but we also haven't spent a ton of time tuning this and it really

00:11:16.600 --> 00:11:22.560
comes down to your use case like if you've got really low resolution footage

00:11:20.600 --> 00:11:25.959
upscaling may not be the best option at all maybe you just want to see what

00:11:24.399 --> 00:11:30.600
improvements you can get through frame rate conversion or D noising without the

00:11:28.320 --> 00:11:34.560
upscale or maybe you've got some old interlaced footage that you want to fix

00:11:32.639 --> 00:11:38.519
um speaking of interlaced footage we've got a dvhs player on the way so make

00:11:37.200 --> 00:11:43.120
sure you're subscribed or you will miss our video on that little piece of Home

00:11:41.200 --> 00:11:46.519
Cinema history one of the coolest things about this is that the minimum

00:11:44.399 --> 00:11:52.120
requirements to do a job like this are actually pretty low but the stronger the

00:11:49.399 --> 00:11:57.959
hardware is the faster it'll be and that is where our sponsor MSI comes in with

00:11:54.320 --> 00:11:59.920
the z6p laptop on top of its high tier

00:11:57.959 --> 00:12:05.600
specs it's got a thin Light chassis weighs only 5 1/4 lb and that's with the

00:12:02.800 --> 00:12:11.560
16 by10 golden ratio display running at 165 HZ with 100% coverage of the dcip 3

00:12:08.920 --> 00:12:15.440
color space so thank you MSI again for sponsoring this video sending over this

00:12:13.440 --> 00:12:19.040
absolutely sick laptop if you guys want to learn more about it you can check it

00:12:17.120 --> 00:12:22.600
out at the link down below we're also going to have the software re use Link

00:12:20.519 --> 00:12:26.480
down below thank you for watching have you had better success upscaling 240p

00:12:24.600 --> 00:12:31.800
footage let us know what techniques you used in the comments and hey maybe throw

00:12:29.920 --> 00:12:35.040
uh throw your attempts at the Sunbeam tunic Tower video at us on social media

00:12:33.839 --> 00:12:44.480
I would love to see what you guys come up with if you're looking for another video to watch check out our capturing

00:12:38.120 --> 00:12:44.480
920k video video it's a lot of pixels
