View Full Version : A nice resizing/degraining/sharpening challenge
videoFred
14th March 2008, 09:13
Hello everybody,
I'm transfering old 8mm films to digital, using home build units with a machine vision camera.
I am working on a very special film for now: a 1958 double-8mm Kodachrome film. This film was made with a so called 'anamorphic' lens. The trick was one had to use that same lens on the film projector. The result was.. widescreen! Very modern in 1958 for an amateur!
My machine cam has a max. resolution of 1024x768.
I capture to uncompressed RGB24.
A machine cam does not change anything on the picture.
It looks very flat, but that's an advantage in this case.
The trick with film is to try to capture the entire dynamic range.
Everything else can be done in post.
The original anamorphic picture on the film looks like this:
http://users.pandora.be/ho-slotcars/expo/expo_031.jpg
The original anamorphic lens was not a sharp lens.... So I need lots of post sharpening.
But this is also sharpening film grain... So I need lots of degraining before sharpening.
I am using MT-MVdegrain2 followed by LimitedsharpenFaster and I do the resizing with LimitedsharpenFaster.
The result looks like this:
http://users.pandora.be/ho-slotcars/expo/expo_001.jpg
I am very happy with the results...
MVDegrain2() is one of the best degrainers if you ask me. :)
And Limitedsharpen() is incredible.....
I have cleaned the 50 years old film with Isopropyl alcohol.
Then I have applied a coat of Filmguard to hide the scrathes.
And I am using a Led backlight source with diffuser.
Some more pics:
http://users.pandora.be/ho-slotcars/expo/expo_004.jpg
http://users.pandora.be/ho-slotcars/expo/expo_020.jpg
But I can always use good advice of cource.
How would you deal with this footage?
Fred.
halsboss
14th March 2008, 10:02
Very impressive, Fred. Congratulations.
Tried MVdegrain3 ? Also could try a custom version of MC_SPUDS with a mid strength. I'm happy to try a couple of 1-15 sec clips if you can post them somewhere with your original script, it's up to you. I guess it's progressive PAL capture ? I especially look forward to Didee's and scharfi's suggestions if and when they arrive :)
Dark Shikari
14th March 2008, 10:03
Tried TemporalDegrain()?
videoFred
14th March 2008, 10:11
Very impressive, Fred. Congratulations.
Thank you!
I'm happy to try a couple of 1-15 sec clips if you can post them somewhere with your original script, it's up to you. I guess it's progressive PAL capture ?
No, it's uncompressed RGB24 1024x768 progressive... H-u-g-e files!
I especially look forward to Didee's and scharfi's suggestions if and when they arrive :)
Me too... and Fizick too of cource :)
Fred.
videoFred
14th March 2008, 10:13
Tried TemporalDegrain()?
No, I will give it a try.
Thank you for the suggestion!
Fred.
*.mp4 guy
14th March 2008, 15:01
I would use better sharpeners, I would use them before denoising, I would use a nonlinear color curve, and I would correct the white point
Using the 512*384 100KB jpeg you posted as a source, this (http://img337.imageshack.us/img337/3967/sharpc2mi0.jpg) was my result.
[edit] The image looks a little rough around the edges because I couldn't use any temporal denoisers.
videoFred
14th March 2008, 16:46
That already looks very fine, mp4 guy!
Considering it's from a highly compressed Jpeg...
Here's the original uncompressed frame:
http://img520.imageshack.us/my.php?image=expo001sp2.png
Here's another one:
http://img405.imageshack.us/my.php?image=expo004jj7.png
Thank you for the efford, :)
Fred.
rfmmars
14th March 2008, 18:34
You always get that great footage to work with. You should see the crap I get.
Yes I too find that LSF is the best sharpner around but is much slower than SeeSaw. The link shows a picture from a 720p video stream and is sharpen with LSF.
http://img150.imageshack.us/img150/2860/personyx3.th.jpg (http://img150.imageshack.us/my.php?image=personyx3.jpg)
You may want to try "AVScurveflow" using it with Seesaw, it come fairly close to LSF.
Keep the great work coming.
Richard
photorecall.net
*.mp4 guy
14th March 2008, 19:24
script:
ImageReader("C:\Documents and Settings\redacted\Desktop\expo004jj7.png")
converttoyv12()
addborders(8,8,8,8) # reduce border artifacts from sharpening
unsharp(vary=1.5, varc=1.5, strength=3) #manual deconvolution, not as good as true deconvolution, but very very fast for the results it gives
unsharp(vary=.75, varc=.75, strength=2) # see above
unsharp(vary=.1875, varc=.1875, strength=3) # ditto
awarpsharp(depth=19.99, cm=0, blurlevel=1, thresh=0.7) # makes lines look nice, slight loss of detail (in this case, pretty much just noise)
crop(8,8,-8,-8)
automttap3(1024, 576) # replace with prefered resizer
tnlmeans(ax=8, ay=8, sx=16, sy=16, bx=1, by=1, sse=true, a=1, h=12) # replace with strong motion compensated denoiser
addborders(8,8,8,8) # reduce border artifacts from sharpening, again
limitedsharpenfaster(smode=2, strength=100, ss_x=1.1, ss_y=1.1) # uses a modified frequency sharpening kernel, not standard lsf, not strictly needed, but definately nice
crop(8,8,-8,-8)
converttorgb24() # perform color correction last, so that noise strength is constant over different areas of the picture
gicocu("C:\huh") #
converttoyv12() #
tweak(sat=1.5) #
GiCoCu curve file (copy and paste into a txt file, then load with GiCoCu):
# GIMP Curves File
0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 255 255
-1 0 19 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 254 232 255 -1 254
-1 0 16 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 255 -1 0 -1 220
-1 0 18 0 -1 32 -1 32 -1 30 -1 26 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 255 -1 255 -1 255
0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 255 255
image1 (http://img146.imageshack.us/img146/3435/sharp12jx5.png)
image2 (http://img397.imageshack.us/img397/7007/sharp13ww7.png)
[edit] Spatial denoising is so pathetic sometimes :(, it will look much, much better with some good temporal filtering.
[edit2] equivelent resolution to first post for more a more apples to apples comparison.
[edit3] used a better denoiser and fixed aspect ratio.
[edit4] better color correction.
image1 (http://img299.imageshack.us/img299/1173/s14zi9.png)
image2 (http://img329.imageshack.us/img329/6298/s15hc3.png)
Socio
14th March 2008, 23:34
Fred those results are fantastic could you share your script so we can see how you accomplished it? :thanks:
*.mp4 guy
15th March 2008, 03:08
if its not too much to ask, could you post a 30 second sample encoded with lagarith in yv12 colorspace, it should be less then 100mb.
Zep
15th March 2008, 16:55
Hello everybody,
I'm transfering old 8mm films to digital, using home build units with a machine vision camera.
I am working on a very special film for now: a 1958 double-8mm Kodachrome film. This film was made with a so called 'anamorphic' lens. The trick was one had to use that same lens on the film projector. The result was.. widescreen! Very modern in 1958 for an amateur!
Fred.
I just have to say WOW. amazing results so far!
Zep
15th March 2008, 17:01
if its not too much to ask, could you post a 30 second sample encoded with lagarith in yv12 colorspace, it should be less then 100mb.
I second your request ;)
I want to also try some stuff on it and I want to see what you and others can do .mp4 guy!
Zep
15th March 2008, 17:04
addborders(8,8,8,8) # reduce border artifacts from sharpening
excellent tip
videoFred
17th March 2008, 09:50
if its not too much to ask, could you post a 30 second sample encoded with lagarith in yv12 colorspace, it should be less then 100mb.
Of cource it is not too much to ask :)
I have made a few lagarith clips.
34 -47 -87 and 93 MB.
Where do I find good free webspace to upload them? :confused:
*EDIT*:
http://rapidshare.com/files/100177830/Expo_58_001.avi
Fred.
videoFred
17th March 2008, 09:54
You always get that great footage to work with. You should see the crap I get.
Of cource I do not show the crap I get :p
I have recently found some very interesting things when it comes to film transfering!
I will talk about this with you later, Richard.
Fred.
videoFred
17th March 2008, 10:00
Fred those results are fantastic could you share your script so we can see how you accomplished it? :thanks:
Nothing spectacular realy:
MVDegrain2() + LimitedsharpenFaster()
The resizing is done with LimitedSharpenFaster().
I have a new dual core Dell, so I use MT for MVDegrain()
(It almost doubles the render speed :) )
Thank you too for appreciating my work, :)
Fred.
Boulder
19th March 2008, 09:33
I have a new dual core Dell, so I use MT for MVDegrain()
(It almost doubles the render speed :) )If you use MT(), remember to set a large enough overlap value so that motion is detected correctly also in the area where the frame is split.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.