Log in

View Full Version : New motion compensated deinterlace filter (TomsMoComp)


Pages : 1 [2] 3

manono
20th July 2002, 07:18
Hi-

Until Tom gets back to correct-amend this response, I can fill in.

1. When you use an .avs, you are using AviSynth. And the answer is yes, you can manually edit the .avs created by GKnot.

2. When you frameserve using the .avs, you are using AviSynth.

3. Read the help file included when you downloaded it. The first number is top or bottom field first. The second number is motion search precision. The third number is whether or not to add in his vertical filter. And I believe TomsMoComp should be placed after crop, but before resize (like in with the Deinterlacer stuff of your GKnot generated .avs).

4. Yes-look at your "mpeg2source("D:\VHD\opening.d2v")" line in the .avs.

5. A big question I'm sure not going to answer fully. You might start by searching the AviSynth Docs (http://math.berkeley.edu/~benrg/avisynth.html) and the Language Tutorial (http://math.berkeley.edu/~benrg/avisynth-tutorial.html) and Luke's Guide (http://www.lukesvideo.com/avisynth.html). As for additional commands-plugins, see question 21 of the AviSynth Q&A At The Top Of This Page (http://forum.doom9.org/showthread.php?s=&threadid=25002) where you should have started in the first place.

trbarry
20th July 2002, 10:17
Billy|B-A

manano's pretty much covered it better than I could. I'll just elaborate on #4 a bit since it is not always obvious at first what goes on here.

Avisynth loads the mpeg2dec.dll filter. Then when the mpeg2source("D:\VHD\opening.d2v") command is encountered in the script Avisynth calls that function within mpeg2dec.dll. The mpeg2source() functions reads the .d2v file to find out how to randomly read and process the real mpeg2 file, passing back uncompressed records to Avisynth as requested.

- Tom

Billy|B-A
20th July 2002, 14:12
Cool, thanks for the help!! It really helped out alot.

trbarry
20th July 2002, 14:58
By default the end of the script is supposed to return the result of the last function. But I've had problems ending on some commands and so often put in an explicit return. But I don't think it is supposed to be needed.

- Tom

Billy|B-A
20th July 2002, 15:07
Heh...I kinda found that out myself. Then edited the post to only find out that you had answered my question when the page refreshed.

Thanks for the awsome filter. I am having the best results I have seen yet!!:D

edit:type-o

1loser
1st August 2002, 05:20
I'm a newbie at DVD encoding and my first conversion was from an interlaced source. I used the filter TomsMoComp(1,15,1). Does this filter change the video from interlaced to progressive? Not that I truely understand what that means.

LoadPlugin("C:\Program Files\DVD2SVCD\MPEG2Dec\MPEG2DEC.dll")
LoadPlugin("C:\Avisynth\temporalSoften2\TemporalSoften2.dll")
LoadPlugin("C:\Avisynth\TomsMoComp\Avisynth\TomsMoComp.dll")
LoadPlugin("C:\Avisynth\unfilter\UnFilter.dll")
mpeg2source("Croupier.d2v")
ConvertToYUY2()
TomsMoComp(1,15,1) not sure how to determine if the last value should be 0 or 1
BicubicResize(448,448,0.0,0.0,0,0,720,480)
UnFilter(60,60)
TemporalSoften2(2,5,5)
AddBorders(16,16,16,16)
ResampleAudio(44100)

Do the below results show that the encoding was done correctly? An example would be frame type changing from interlaced to progressive.

Vob file
Field topfirst: yes
DCT type: field
Quantscale: nonlinear
Scan type: alternate
Frame type: interlaced

Encoded video
Field topfirst: yes
DCT type: frame
Quantscale: nonlinear
Scan type: zigzag
Frame type: progressive

WarpEnterprises
1st August 2002, 07:35
Interlace is easy to explain: if you see those combed areas then it's interlaced, if not, the it's progressive.

All those flags you mentioned can be set arbitralily - the mean nothing how it really is! (of course often they are correct if YOU used the correct encode settings. e.g. you can encode interlaced even if the source is progressive and that results in more bitrate need,.
Take a look at http://www.100fps.com/ Good explanation.

And yes TomsMoComp is a very good deinterlacer (if you really need!)
The 1/0 gives little effect, set it to 1.

Care on those telecined videos. They look interlaced but can be made progressive again without "filtering", but only shifting the fields the right way (see decomb.dll from donald graft)

And if you are NTSC then there are pulldown topics (I'm PAL-only)

manono
1st August 2002, 12:25
Hi-

Yeah, I agree-I'm not sure you should be using it at all. It's meant for pure interlaced sources, not movies where you can Force Film or IVTC and return the progressive frames. If the source is pure interlace, there are no progressive frames to begin with or finish with. Maybe hakko504's Sticky (http://forum.doom9.org/showthread.php?s=&threadid=23776) will be useful.

1loser
1st August 2002, 20:34
Originally posted by manono
Yeah, I agree-I'm not sure you should be using it at all. It's meant for pure interlaced sources, not movies where you can Force Film or IVTC and return the progressive frames. If the source is pure interlace, there are no progressive frames to begin with or finish with. Maybe hakko504's Sticky (http://forum.doom9.org/showthread.php?s=&threadid=23776) will be useful. I opened a different file "jackson brown going home" in DVD2AVI and I get 98 % interlaced and I used the TomsMoComp filter, it seems I shouldn't have. I will check out the Sticky you mentioned. Thanks.

Originally posted by WarpEnterprises
Interlace is easy to explain: if you see those combed areas then it's interlaced, if not, the it's progressive.

Take a look at http://www.100fps.com/ Good explanation.

And yes TomsMoComp is a very good deinterlacer (if you really need!)
The 1/0 gives little effect, set it to 1.

Care on those telecined videos. They look interlaced but can be made progressive again without "filtering", but only shifting the fields the right way (see decomb.dll from donald graft)

And if you are NTSC then there are pulldown topics (I'm PAL-only) I have this http://www.100fps.com/ on my computer saved from a while ago and everytime I look at it I get confused. Maybe I'm trying to take in to many news things at once but I'll take another look. Looks like I need to look into "decomb.dll from donald graft" I didn't know that "TomsMoComp filter" is for pure interlaced and didn't even know it could be both progressive and interlaced.

When converting a DVD to a SVCD is the idea to always get the output to be progressive? That was my main concern here. I have a GUI interface for PulldownBatchFE and it has an option to NOT perform a pulldown BUT you can select progessive frames - mark each frame as progessive or interlaced. Will that option be useful here? It was easier converting DivX to SVCD I guess because I already had a progressive source.

Really appreciate your help here.

droolian01
1st August 2002, 21:32
Hi tom and all.

I got a rather nasty result using your tomsmocomp deinteralcer (i was late for work and just threw together a quick .avs - need to encode the cap again as the crop was wrong anyway!!) which is totally due to me being stupid and trying to use it on a telecined source. I even got the field order wrong!!! When used appropriately your deinterlacer gives excelent results.

The cap i was encoding kept changing field order (from editing??), had blured fields, you know the usual mix, and this got me thinking - why not use telecide to sort the field order followed by tomsmocomp to clean up what telecide left over.

I've tried this script with a couple of tiny test caps and the results seem very good:

telecide(post=false)
TomsMoComp(1,15,0)
crop(xxxxxxx)
simpleresize(464,368)

In the couple of very small tests i've done setting topfield=1 (true) was the correct setting both times. I'm hoping that this setting can be left permanently at 1 following telecide.

Hope this is ok (i think encoding time will be dramatically increased - have yet to do an encode of more than a few seconds) if this is just dumb on a theoretical basis please tell me and i can then abort the (probably massively long) encode now, as i have got a backlog of several buffy/enterprise/6 feet unders to do (again!).

What do you all think?

Thanks.

Richard Berg
1st August 2002, 23:38
If time is a concern I'd crop before doing the rest of the processing, but other than that I'll just have to try & see how it works.

trbarry
1st August 2002, 23:44
The above might work but I don't know enough about Telecide internal workings to be able to predict the results. If the field order is constantly changing then maybe there is no other good choice.

Please let us know. ;)

- Tom

manono
1st August 2002, 23:49
Hi-

I opened a different file "jackson brown going home" in DVD2AVI and I get 98 % interlaced and I used the TomsMoComp filter, it seems I shouldn't have.

I was talking about Croupier when I said it should probably be Force Filmed or IVTC'd and TomsMoComp maybe shouldn't be used. In the case of the Jackson Browne DVD, many concert DVDs are pure interlace and are prime candidates for TomsMoComp. There's an easy way to find out though. Make the .d2v with no Force Film, and then either open it in GKnot or make an .avs without Decomb and open that in VDub. Then scroll to some places where movement is easily seen. Then advance one frame at a time. If every frame is interlaced, then it's pure interlace, should be kept at 29.97fps, and TomsMoComp used on it.

1loser
2nd August 2002, 01:28
Originally posted by manono
[I]Make the .d2v with no Force Film, and then either open it in GKnot or make an .avs without Decomb and open that in VDub. Then scroll to some places where movement is easily seen. Then advance one frame at a time. If every frame is interlaced, then it's pure interlace, should be kept at 29.97fps, and TomsMoComp used on it. I'm not sure what "force filmed means" but I loaded this script into virtualdub and in every 5 frames 2 are interlaced and 3 are not.

LoadPlugin("C:\Program Files\DVD2SVCD\MPEG2Dec\MPEG2DEC.dll")
mpeg2source("jacksonbrown.d2v")
ConvertToYUY2()
BicubicResize(448,448,0.3,0.3,0,0,720,480)
AddBorders(16,16,16,16)
ResampleAudio(44100)

This is the exact script I used with a bitrate of 2120 and got execellent results.
LoadPlugin("C:\Program Files\DVD2SVCD\MPEG2Dec\MPEG2DEC.dll")
LoadPlugin("C:\Avisynth\TomsMoComp\Avisynth\TomsMoComp.dll")
LoadPlugin("C:\Avisynth\unfilter\UnFilter.dll")
LoadPlugin("C:\Avisynth\temporalSoften2\TemporalSoften2.dll")
mpeg2source("jacksonbrown.d2v")
ConvertToYUY2()
TomsMoComp(1,5,0)
TemporalSoften2(2,5,5)
BicubicResize(448,448,0.3,0.3,0,0,720,480)
UnFilter(40,40)
AddBorders(16,16,16,16)
ResampleAudio(44100)

I still would like my main question answered please. When converting a DVD to a SVCD is the idea to always get the output to be progressive?I'm still confused about this

droolian01
2nd August 2002, 13:33
Hi everyone.

Just encoded a capture of '6 feet under' using telecide(post=false) followed by TomMoComp(1,15,0). Firstly the encoding time increased about 1.5-1.75 that of using telecide alone, but the outcome did seem better. It is difficult to tell but tomsmocomp seemed to reduce the effect of the blurred fields always present in these american tv programs (when watched/capped in the uk) better than the postprocessing usually done with telecide. It is subtle but it seems that instead of geting mostly 50:50 blended fields, there are many fewer of these, most blends seem to be 75:25.
If i can afford the longer encode times in the future i may well use this again, or for 'special' encodes. Combining these two features (field matching and motion compensated deinterlacing) into one - hopefully quicker filter - may help with the curse of blended fields which i try sort nearly everyday capping us tv stuff.

Hope this is of any use/interesting.
Thanks again.

trbarry
2nd August 2002, 16:38
droolian01 -

Cool. I didn't know whether it would work or not. And I'll bet it would be a heck of a lot faster if we could talk Donald Graf into adding a "Telecide(Post=TomsMoComp(,,)" option somehow.

- Tom

Guest
5th August 2002, 06:23
The problem with using TomsMoComp after Telecide is that it will degrade good progressive frames. FieldDeinterlace is specially designed to totally leave alone frames that it decides are not combed. I don't know if TomsMoComp has combing detection that would prevent it from ever being spoofed by content of a progressive frame, but I would guess not.

That is not to say that TomsMoComp could not be enhanced to work like this; but I am just getting clear of the personal issues that have kept me away from video and it is some time still before I can begin to think about that.

droolian01
5th August 2002, 07:02
Hello neuron2!

I'd hoped that the progressive frames wouldn't get affected by TomsMoComp. I only tried it on one encode, and the effect did seem subtle (more likely the filters in my brain connected with visio-spacial discrimination were more active than any avisynth script!!)

Anyway thanks for the explanation, glad to see you post again - we (well me anyway!) need your guidance!!

See Ya

Guest
5th August 2002, 07:32
Thank you, droolian01, for your kind words. It is good to be back.

trbarry
5th August 2002, 09:20
The problem with using TomsMoComp after Telecide is that it will degrade good progressive frames. FieldDeinterlace is specially designed to totally leave alone frames that it decides are not combed. I don't know if TomsMoComp has combing detection that would prevent it from ever being spoofed by content of a progressive frame, but I would guess not.

Hi Donald -

Glad to see you back.

It was concern for the above that prompted me to suggest being able to all TomsMoComp only on interlaced frames. This filter is optimized ONLY for interlaced video source, unlike Decomb or GreedyHMA. I made a choice to give up the generality to hopefully get better deinterlacing.

It should still give decent results, better results than bad pulldown processing, but it definitely won't be as good as proper IVTC on well mastered progressive or telecined source.

And I wasn't intending to try to make it more general purpose in the future either. This one is for video.

- Tom

Guest
5th August 2002, 14:23
Hi Tom,

Yes, of course. I fully understand. I was responding to the person who suggested replacing FieldDeinterlace with yours as the post processor to Telecide.

I will have some feedback for you on TomsMoComp shortly.

Belgabor
7th August 2002, 23:45
Hi Tom,

nice piece of work. :D

Unfortunately I found a few artefacts for you :/

(left is original, right after TomsMoComp(1,5,1). I tried diffrent searcheffords, no diffrence)

Cheers
Belgabor

trbarry
8th August 2002, 04:12
Yikes! What is that? Are you sure it is even video source or is that a blended frame? Or both?

For search effort you should be ok, though you might check the TopFirst parm. But I found out today that SearchEffort=5 or less will have fewer artifacts, at least for some sources. Above that level TomsMoComp will start also doing vertical motion comp which seems more vulnerable to video noise for some reason I don't yet understand.

Is is possible you could post or send me about 10 frames or so? (no more). Or if not, could you at least try it with SearchEffort=0 (no motion search) and let me know the results? Note TopFirst does not matter (much) in that case .

- Tom

Belgabor
10th August 2002, 00:13
Gosh, I should have been more specific, sorry. I dun mind the blending that much (and yes, your're right, the source has blended fields. you gotta love such anime on PAL -.-). What I meant where those pixels that shoulndt be there.

I made the clip, its about 3.5Mb. How can I get this to you?

Setting Motion search to 0 gets rid of the pixels.

[EDIT] Damn, i just realized how f**ked up this source really is. Almost every interlaced frame has a blended field :(

Cheers
Belgabor

trbarry
10th August 2002, 00:51
Belgabor -

Hopefully that is small enough you can just email it to me, though I'm not sure what my limit there is anymore.

But try trbarry@trbarry.com

Please send the input clip though, not the results. Maybe I can figure out what is going on.

- Tom

Belgabor
10th August 2002, 00:56
What your filter most seems to hate are only slightly blended fields as you can see in the attached picure (which is left to right: original, separated fields, TomsMoComp(1,0,1), TomsMoComp(1,1,1)) You have to look a bit carefully to notice the small blending.

Cheers
Belgabor

trbarry
10th August 2002, 05:04
Belgabor -

I've got the clip but probably can't offer any more help. It is not something that can be deinterlaced. I don't know how certain blends can cause those artifacts but maybe it will become obvious over time.

I even have a newer version I was testing but it did not help any.

All I can suggest with very blended or pathological material is to try both (1,0,1) and (0,0,1), which I guess you already have. The first will use only top fields and the second only the bottom fields. I even thought I had a solution for you at first because your short clip starts out with only bottom blended fields, but then it switched to both.

Sorry I can't offer anything more useful.

- Tom

Belgabor
12th August 2002, 17:41
Doh, doh, doubledoh! The only thing i never tried was trying the other field order! Sorry ^^'

Kinda thought if that would have been wrong, nothing should have worked.

Anyways, :stupid:

Works like charm with (0,...)

Cheers & tanks for your efford
Belgabor

cweb
10th January 2004, 12:48
Tomsmocomp with these parameters
video=TomsMoComp(video,-1,5,1)

gave me good results with an interlaced PAL dvb-s source clip...

I hadn't tried it before and I was surprised to see the quality of the result.

mf
10th January 2004, 13:16
Man, talk about digging up an old thread there! This one's about 1,5 years old!

cweb
10th January 2004, 14:11
Yes, that's true, but I wanted to point out a use I found for it.
It was a recording of a news clip which had some 'noise' (moving areas).
It worked on it like magic....

trbarry
11th January 2004, 17:04
Heck, I was pleasantly surprised. When I saw this thread bubble to the top I was afraid it was someone reminding me I'm still procrastinating on a new version. ;)

- Tom

mf
11th January 2004, 19:16
Originally posted by trbarry
Heck, I was pleasantly surprised. When I saw this thread bubble to the top I was afraid it was someone reminding me I'm still procrastinating on a new version. ;)

- Tom
A new version would of course be nice. If you could make one that can retighten combing from field-separated upsizing, I would be very thankful :). Current TomsMoComp drops most of the second field when I try that.

trbarry
12th January 2004, 17:46
A new version would of course be nice. If you could make one that can retighten combing from field-separated upsizing, I would be very thankful . Current TomsMoComp drops most of the second field when I try that.

Sorry. I'm not sure what you mean by that. Could you elaborate a bit. As long as SearchEffort > 0 it should use the second field when the motion is still or slow enough to compensate.

- Tom

Soulhunter
12th January 2004, 18:34
Psst ...and remember the 3D version of AddGrain !!!

Bye

mf
12th January 2004, 19:45
Originally posted by trbarry
Sorry. I'm not sure what you mean by that. Could you elaborate a bit. As long as SearchEffort > 0 it should use the second field when the motion is still or slow enough to compensate.

- Tom
Okay.

Original frame:
http://lsoust.hypermart.net/sntmc/sntmc-original.png

Interpolated first field:
http://lsoust.hypermart.net/sntmc/sntmc-field1.png

Interpolated second field:
http://lsoust.hypermart.net/sntmc/sntmc-field2.png

Interpolated fields weaved:
http://lsoust.hypermart.net/sntmc/sntmc-weaved.png

Weaved image downsized (equivalent of a field blend):
http://lsoust.hypermart.net/sntmc/sntmc-blend.png

Weaved image processed with TomsMoComp(0,15,0):
http://lsoust.hypermart.net/sntmc/sntmc-weaved-tmc.png

Now here is where it gets interesting. Already you can see a lot of vertical resolution is lost. I see vertical pixelation as if the image was pointsized. Now to make my above point clear,

TomsMoComp'ed image downsized:
http://lsoust.hypermart.net/sntmc/sntmc-weaved-tmc-sizedback.png

Looks pretty much identical to our field 1 interpolation that we originally had, which forces me to conclude most of the second field was thrown away. This is what I mean with "re-tightening combing from field-separated interpolation". TomsMoComp or at least something motion-compensated is the only proper way to do this properly. As you can see the interpolation of the fields alone is already very good, but for fine details you really need the second field too.

trbarry
12th January 2004, 21:29
mf -

I'm not sure what you are doing here but there is no way that TomsMoComp(0,15,0) will make a 960 line frame out of a 480 line frame. So something else is going on.

Could you post your script?

- Tom

PS - I don't recommend ever using SE > 5 anymore. It causes single stray pixel artifacts in a way I don't completely understand. So maybe use TomMoComp(0,5,0) instead. I'm probably going to just disable SE > 5.

mf
12th January 2004, 21:42
Originally posted by trbarry
mf -

I'm not sure what you are doing here but there is no way that TomsMoComp(0,15,0) will make a 960 line frame out of a 480 line frame. So something else is going on.
It's not TomsMoComp that's doing the interpolation, I just want to use TomsMoComp on the interpolated picture (which worked before for SSTomsMoComp (http://forum.doom9.org/showthread.php?s=&threadid=66540&highlight=sstomsmocomp), so don't tell me I'm trying to do impossible things :D)

Could you post your script?
Sure.

sn = last
sn.SangNom(0)
sn1 = last

sn.SangNom(1)
sn2 = last

Interleave(sn1, sn2)
Assumefieldbased().Weave()

TomsMoComp(0,15,0)
LanczosResize(input.width, input.height)

trbarry
13th January 2004, 00:48
I have no idea what SangNom means. Should I? ;)

- Tom

Kurosu
13th January 2004, 01:52
mf is acting "l33t" (elite) because he got on a french board a new MarcFD's plugin. It's said to be edge-directed. Seeing how it was implemented (Avery Lee's resizer was maybe a start point) could be interesting.

As for the name, which mf may not have figured, let's spoil the fun: it means Blood(y)Name (ie the heck if I have an idea of a name for that filter - or maybe WithoutName with a pun intended).

mf
13th January 2004, 11:31
Originally posted by Kurosu
mf is acting "l33t" (elite) because he got on a french board a new MarcFD's plugin. It's said to be edge-directed. Seeing how it was implemented (Avery Lee's resizer was maybe a start point) could be interesting.
Would l33t in this context be positive or negative (I will have to suspect the latter)? I'm just experimenting. I wanted to recycle my idea for SSTMC (replacing SangNom as the interpolator, in SSTMC I use TMC's internal interpolation) for SangNom but it seems there are some problems, which is why I posted here. As for the french board: it's not my fault that MarcFD doesn't post here anymore. And about the name: I couldn't care less what name it has. As long as it just does what it does now, which is nice and pretty interesting.

trbarry
13th January 2004, 19:19
so don't tell me I'm trying to do impossible things

Well, I won't. But I can't resist commenting that you don't seem to be very happy with the results and there is no way I can help from info available in the posted script. ;)

- Tom

mf
13th January 2004, 21:15
Originally posted by trbarry
Well, I won't. But I can't resist commenting that you don't seem to be very happy with the results and there is no way I can help from info available in the posted script. ;)
What further info do you need?
French info on SangNom (http://atlas2.tgv.net/~media-video/forum2/viewtopic.php?t=3655)
Direct download link for SangNom (http://mf.creations.nl/avs/filters/SangNom.dll)
What it does: it's an edge-directed interpolator that throws away the second field (based on parity), much like TMC with motion search -1. I don't want it to throw away the second field :D.

Sigmatador
13th January 2004, 21:39
Originally posted by mf I don't want it to throw away the second field :D. [/B]

Encode at 60fps :p

bilu
13th January 2004, 22:32
Originally posted by mf
What it does: it's an edge-directed interpolator that throws away the second field (based on parity), much like TMC with motion search -1. I don't want it to throw away the second field :D. Looks very good. Maybe good enough to discar a field? :D


Bilu

mf
13th January 2004, 23:35
Actually, you are both right. The interpolation is good enough to actually use it in Bob-mode, there is virtually no real bobbing going on except on the edges. With a comb mask it'd be great. However, if it were motion-compensated, you wouldn't even need a comb mask, in theory :D. Of course, that's in theory, so if you'd use a comb mask with it being motion-compensated, you'd have even better results :p. Bah, I'll stop fantasizing. Nobody's gonna make a motion compensator that's good enough :rolleyes:.

Yes trbarry, you may interpret that as a challenge to prove me wrong if you want.

billou2k
2nd March 2004, 17:13
Hello there,
I captured some dvb stuff that I reencoded in xvid interlaced 720*576.
I'm looking for a good way to play it back on a computer screen.
I've had a look at several filters that can operate at the player side (I'm using mpc): decomb looks to be one fo the best at 25fps playback (not showing the stroboscopic effect than some others do by blending fields).
Smoothdeinterlace at 50fps looks like one of the best method but it looks like it requires a huge processing power (and it doesnt work with latest avisynth 2.5)
I've had a look at Dscaler too although some plugins look quite good the app doesnt look very stable and playback just freezes from time to time and using dscaler option in ffdshow doesnt look very stable either.
However I'd really like to have the playback at 50fps without complicated processing or motion search so that it could be played on my machine. Is it possible?
As we are quite happy with the way TV playback interlaced stuff I was wondering if there was a method simulating the way TV handles that..
Now there is the question of how TV is doing:
Is it just displaying a new field every 1/50th second on top of the previous one? or is it displaying it between the lines of the last displayed field? or something else?
In the first case "scalerbob" in Dscaler would do a similar job as tv wouldnt it?
Thanks

kassandro
3rd March 2004, 00:28
Originally posted by billou2k
Is it just displaying a new field every 1/50th second on top of the previous one? or is it displaying it between the lines of the last displayed field? or something else?
Thanks
It is displayed between the lines of the last displayed field and the human eye has the impression of seeing both fields without any combs at once. That's the magic of interlace.

billou2k
3rd March 2004, 10:52
thanks Kassandro
I guess it's been answered ages ago but I couldnt find it on the forum: so is it possible to simulate it with our monitors? or does it exist? They all have high refresh rates so we could think we should be able to simulate it in an efficient way couldnt we?
Now I guess that's not as easy as it seems as most of the 50fps solutions I found are high complexity deinterlacers that do motion estimation etc...

mf
3rd March 2004, 12:11
I've thought about this many full moons :D. It's not only a trick of the eye but also of slow phosphor. Phosphor keeps its lit state for a short period after being shot by electrons. This makes for a kind of natural field combination with a temporal bias. Combine that with slow human vision, and you have a display that retains its full resolution (both fields) when the picture is static but only half when the picture is moving. Because of the nature of basic (bilinear, bicubic, lanczos) interpolation, the image is greatly distorted between fields. Bob doesn't have the natural advantage of the interlaced screen, but only relies on the eye trick. This makes for a very instable image even in static picture. I've been thinking of an adaptive Bob that uses either point resampling (just like a real interlaced screen) or edge-directed resampling (after seeing the approximation of SangNom being so accurate), and run an adaptive smoother with a temporal radius of two frames (fields), with the field alignment altering constantly (meaning that pixels get evaluated between frame 0 field 1 and frame 1 field 0, and frame 1 field 0 and frame 1 field 1, etc). I have no idea how this would work out even in theory, but it was my idea anyway :).