Here is a youtube video (my first :-) of the initial testing of the newer/better/more filtery-er BBTouch along with the BBTUIOTest app (now with more lightboxyness).
Apologies for the supreme craptacularness of the video quality. I don’t have a camcorder, so I just pointed my laptop’s built-in iSight at the table and used iMovie to capture. (while also running BBTouch in the background)
Anyhow, the BBTouch setup was like so:
BBTouch tracking, generating TUIO events, sending them via wifi to yet another machine running BBTUIOTest which is running the projector, and is running the lightbox code.
I know what you are all thinking: since when does BBTUIOTest have a lightbox feature?? and the answer to that would be since a few days ago when I added it. (no code up yet, it is still pretty raw)
I think it is also important to note that all this development comes with much thanks from Sandor’s development budget. I have been working with him on an MT app that he designed (more on that later :-) and now we are moving to the next step and getting BBTouch and some nice (yet to be made :-) cocoa/core image demo apps up to snuff so that he can use them for his own nefarious purposes :-) So! Everyone needs to buy Sandor a beer and thank him for his generous funding of BBTouch and Multitouch code development, and fastracking BBTouch improvements that I may never have gotten to otherwise! (thus saving me at least temporarily from some other, far less interesting jobs :-)
SO! BBTouch, now with more filters: It is still in a very raw state, and the code wont be stable for a few more days at the very least, but here is a sneak peek:
I know, everyone is wondering why I didnt add filtering sooner. Well, it is like this: I like to keep things as simple and minimal as possible (especially things that are generally very complex, like MT stuff). And before, when BBTouch was merely a pet project and I could optimize the blob detection algorithm to my heart’s content, that is what i did. I think it paid off in the end, because i think that just the blob detector pre new filtery goodness was about 85% there. All it was doing was a background subtraction and a simple threshold, and I got really good coverage across about 85% of my surface. However, I was getting the bane of all DI surfaces: false hits from you palm or curled fingers on the light areas and no hits for any blobs in the dark areas. These filters help with that immensely.
Now I have added basically two more filters: a High Pass and an Adaptive Threshold. (and a noise reducer for the highpass, so I guess technically 3 filters.) (all using the openCV image filters. more on that later too)
The High pass filter made all the difference. For anyone doing DI type setups, make sure that you are using a higpass, it will make your life so much easier.
Anyhow, enough for now, back to work for me!
Cheers!
-b












Ben, What do you have for light setup? Is any diffuser being used? I’m have a hard time getting my table kick started. I have a similar setup to yours. However I am getting large hot spots from my lights.
Thanks
Hey Pragma,
I am using Lee 216 diffusion gel for my surface diffuser (you can check it our here: http://benbritten.com/2008/08/02/new-table-day-4-3-5/
and I am using 4 little IR spotlights that are roughly covering the surface. However like you (and all DIers i think) they do make big hotspots. I used to use diffusion (same lee 216) right on the ir lights when they were closer to the surface in my older prototype table, but now they are far enough away that i dont need it anymore)
if you look closely you can alse see two of the little IR lights in the above post (first image, they are clamped to the front legs)
(and there is a closeup of them in an older post, but I am too lazy to go and find it)
However, I am about to check in some new code that will help with that by adding high pass filtering to the data stream. give me a few more hours :-) (I am actually at a conference right now, I am going to try and check the code in from here, we will see how it goes)
Cheers!
-b