Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VirtualDub, VDubMod & AviDemux

Reply
 
Thread Tools Search this Thread Display Modes
Old 2nd October 2012, 05:53   #1  |  Link
bakonfreek
Registered User
 
Join Date: May 2012
Location: Council Bluffs, Iowa
Posts: 2
Bad idea (read all the way through before replying)

I have noticed that there are multiple algorithms in virtualdub to interpolate missing fields when deinterlacing. These seem to do very well (it almost looks like the original footage). I was wondering if it would be possible to make a filter that would use the same algorithms to make a video frame size bigger (fake HD). I figured that if the video looks close to the original when deinterlaced with these algorithms then why not do resizing in a similar way, don't stretch pixels, use the deinterlacing algorithms.

Before this is denounced as nonsense, I realize how stupid it is, I just thought it might be a possibility, but I haven't seen it implemented so maybe not.
bakonfreek is offline   Reply With Quote
Old 2nd October 2012, 12:45   #2  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,249
The deinterlacing methods in VirtualDub's built-in deinterlace filter are all rather simple. They discard one field and interpolate the missing lines. Much better results can be obtained with more sophisticated filters, such as QTGM, because they use information from both fieds as well as from previous/following frames ("motion estimation"). Anyway, the simple interpolation approach can indeed be used for upscaling the video. Just insert a blank line after each line (instead of discarding 1/2 of the lines) and interpolate those newly inserted lines. Of course you had to do it in both dimensions, so you'd have to rotate the video by 90, repeat the process and rotate it back.

Actually this method has been used to create an upscale filter from NNEDI3. It originally was a deinterlace filter that uses edge directed interpolation to fill in the missing lines, but it also works great for upscaling! Now there is the NNEDI3_rpow2() filter for exactly this purpose. As for VirtualDub: I'm not quite sure what interpolation method VirtualDub's "bob algorithm" uses, but if it's a Bilinear or Bicubic interpolation (which I suspect), you would get the same (or probably better) results by using the Resize filter in "Bilinear/Bicubic/Lanczos" mode right away, rather than abusing the deinterlacer filter! Using the Resize filter would also be much easier. Also I'm not sure if the "Yadif" interpolation method is suitable for upsizing at all. So if you want to try the approach of upscaling a video by interpolating the "missing" lines, use NNEDI3_rpow2()!

Still it should be clear that no interpolation filter will ever be able to create "fake hd". At best the video can be upscaled to a higher resolution while keeping the artifacts of resizing (aliasing, haloing, ringing, etc) at a minimum. However even the best interpolation filter cannot magically add detail that simply isn't present in the source...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 2nd October 2012 at 12:54.
LoRd_MuldeR is offline   Reply With Quote
Reply

Tags
deinterlace filters, uncommon uses

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 18:18.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.