I have committed all of my most current changes to the repository and uploaded a binary for those who are compiler-averse. The links are in the sidebar. I am putting together a BBTouch quickstart kinda tutorial now, but if you follow along with the last few posts you should be able to get it all working. Let me know if (when) there are problems!
Cheers!
-b
Hello Ben,
you are making very good progress on the BBTouch project.
I will check the software out by the end of this week and try it with my small prototype. Currently it is lacking of a beamer, so I’m using the MacBook as projection and the small FTIR device I built as input.
I think I need to get a beamer soon and build a real table.
Thanks for sharing your code with us,
Michael.
Ben, this looks great, I just fired it up and I have a couple of first impressions.
Very slick. I’m a sucker for a good looking interface, and I really enjoy how you have the 3 different views and handle switching between them.
As soon as I detect blobs, it slows down considerably. I’m on a dual 3GHz intel xeon Mac Pro with 4 gigs of ram. I’m using the xbox 360 (usb) webcam.
The only thing I found in the logs that is relevant to your app is this:
BBTouch[99354]: sample time too long throw it out: 0.402801
and I was wondering if that’s related.
I’ll keep testing with a fresh restart and get back to you on this. Thanks for all the hard work on this. I hope this helps, if there is a anything specific you want me to test I’m here to help.
Hey Drills,
you are a dark blob guy right? I think i know exactly what the problem is.
I thought about this last night as I was getting in bed :-) I think the issue is that the detector is going off into the weeds because the ROI for a dark blob detection needs to be light colored, and right now it is putting in a dark colored ‘pixel fence’ to keep the detector corralled in the ROI.
I changed the way the detector handles the invert pref and i must’ve busted it then. Anyway, i have found a few other niggly little bugs in my own testing, i will try and get a fix out later today (it should be a quick fix)
Sorry about that! (i know, you dark blob guys always get the short stick :-)
Cheers!
-b
Hey Michael,
apologies, i got so caught up in the Drills bug that i forgot to mention: thanks for your comment! Let me know how it goes and if you find any bugs or have any troubles!
Cheers!
-b
Hey Drills,
I just committed the dark blob fixes, update your source and recompile and you should be good to go.
Cheers!
-b
btw: the binaries are still without dark blobby goodness. I am going to fix a few more little bits before i do a whole new binary.
Ben,
I finally got a chance to try out r120. It is definitely improved. As soon as I hit “detect blobs” there is no noticeable change in responsiveness. However, when the size of the blob grows (like when I use my whole fist), it slows down again considerably. If I go back to just fingers, it runs very smoothly.
I really don’t have the ideal setup because I do most of my testing from work with a small mtmini (I’m sure you realized that). I say this because one of the problems with it is I haven’t found the ideal camera setting for it, so there is a lot of false detections that result in many very small blobs. When there are many small blobs, it doesn’t slow down, but the moment I get a large blob, even if it is the only one it slows it down until the blob size is reduced.
Thanks!
Hey Drills,
yeah, that makes sense (i get the same behavior here).
Basically with the big blob, you are causing the detector to send wayyy more pixels ‘the long way through’ to be classified as part of a big blob. This makes the responsiveness slow down (obv :-)
the detector is currently optimized presuming that the vast majority of pixels will be ‘not blobs’. Once your start to get enough blobs that their combined pixel mass are a significant fraction of the total, it starts to bog down a bit. If you find you want to use bigger blobs as a general rule, just reduce the video size, reducing the total number of pixels that need to be looked at (you lose precision, but if the blobs are bigger, then that doesn’t matter. ) Now if your surface is physically kinda small (in relation to your fingers) then reducing the video size makes sense because even finger sized blobs will be kinda big.
(note, currently if you change your video size you will need to recalibrate your camera mesh. I should make that all automagic, but right now it is a manual thing)
groovy!
-b
Hey Ben,
I hope your work is going well. Id love to get tangled up in some of those motion capture rigs!
It seems to me that there is a small quantity of us out there who would like very much for the little mouse app you made to become more functional.
I hope that this is something that you have in mind. I think i mentioned before a gesture learning function.
Any way just thought id post a bit of a beg!
Oh mighty panda grace us with that wisdom of a bamboo diet! (No taurine i might add!)
Cheers!