Thank you very much for the zip... I look forward to nosing through it.

Andrei Thomaz wrote:
hello Anthony,
you can set some parameters when using the library, to get what you want.
For example:

- you can set what will be the maximum size of a blob. If the blob is
greater than the maximum size, the algorithm checks if there is really a
large blob, or several small blobs. If the blob is smaller them maximum
size, the algorithm stops there. Of course, smaller the maximum size, slower
the blob detection will run;
- you can set if you want edges or just the bounding rectangles;

So, the library can see fingers as several blobs, or as just one blob, based
on parameters given.


I've also written some classes to make blob tracking, but I haven't
published them in my blog yet because I want to write some docs and
examples. But I think they can be useful for you, so you can grab them here:
http://www.andreithomaz.com/arquivos/blob_tracking.zip

best,
andrei




On Thu, Jan 8, 2009 at 12:47 PM, Anthony Pace <anthony.p...@utoronto.ca>wrote:

great info...

Before I peruse through your library, I have a few questions.  Do you test
for the largest circle or rectangle that can fit in the blob?  Or for the
centre point of the blob? or do you look for a circle or rectangle that
encapsulates the blob, and then possibly locate an approximate centre.

I would think just locating the centre point of a rectangle or circle would
be faster to track than looking for edges.  What happens when the fingers
are placed together? do you count them as one finger and then add a size
restriction? Do you restrict actions based on the size of a blob?  if so how
has that worked out?

I am definitely going to pick through it; yet, I would love some insight.


Andrei Thomaz wrote:

and, of course, don't miss the NUI group forum:
http://nuigroup.com/forums/viewforum/33/

and the original version of blobDetection
http://v3ga.net/processing/BlobDetection/


best,
andrei


On Thu, Jan 8, 2009 at 12:10 PM, Andrei Thomaz <andreitho...@gmail.com
wrote:

hello,
I've ported a blob detection Processing library, blobDetection, to AS3.
It
is slow, but maybe you can optimise it.
http://andreithomaz.com/labs/?p=8

Using BitmapData.getBoundsRect(), I started BitmapBlobDetection. It works
faster:
http://andreithomaz.com/labs/?cat=4

I've also developed a kind of register of visual objects to be affected
by
blobs movements. I need to make some examples before publishing it, but
feel
free to ask me the files privately. I have used the register in the
touchscreen jukebox (http://andreithomaz.com/labs/?p=21).


best,
andrei



On Thu, Jan 8, 2009 at 8:58 AM, Piers Cowburn <m...@pierscowburn.com>
wrote:



There's good stuff by Grant Skinner too:
http://incomplet.gskinner.com/index2.html#camwriter

Piers



On 8 Jan 2009, at 10:35, Ian Thomas wrote:

 Yeah, I absolutely get the idea (as I said, we were discussing it


yesterday - with reference to an infra-red camera, but same
principle). Check out Mario's stuff, there are areas-of-colour
recognition algorithms there which will be of help, I think.

Cheers,
 Ian

On Thu, Jan 8, 2009 at 10:08 AM, Anthony Pace <
anthony.p...@utoronto.ca>
wrote:



To my knowledge all flash integration for multi-touch has been made
possible
by using flosc by ben chun, or with OpenCV and touchLib; however, what
I
am
proposing is that it is possible directly through the use of the flash
player and a simple cam rig.  I think that it should be possible, and
at
least somewhat comparably fast, considering the player doesn't have to
parse
xml socket data on a continuous basis, and all image conversions are
done by
the player.  I do concede that doing in c++ will most likely prove to
be
faster; however, I figure why not try it out.

Since I know c++ somewhat I figure I will probably look at their
libraries
if I get stuck; yet, in the meanwhile, this is a nifty experiment.

Here is the video that sparked it...
http://www.youtube.com/watch?v=pQpr3W-YmcQ

Colour tracking would be efficient in a system where you have multi
coloured
thimbles or reflective tape, which is what I was thinking of when I
came
up
with this idea.


http://anthony-pace.deviantart.com/art/add-VR-to-current-FPS-GAMES-91091960

Ian Thomas wrote:



I was actually thinking of Mario's lecture at FoTB 2008 where he used
very similar algorithms to read square barcodes (whatever those
things
are called) from a webcam. Not multitouch, but there's a lot of
similar code (spotting areas of colour, eliminating noise).

Worth a look, Anthony.

Funnily enough we were talking about exactly the same system for
multitouch here yesterday - spotting areas of colour. One of our
developers had seen some demo of a similar system on TV over the
weekend...

Ian

On Thu, Jan 8, 2009 at 9:12 AM, Glen Pike <g...@engineeredarts.co.uk
wrote:




Hi,

Mario Klingemann demo'd something like this at FlashOnTheBeach 2007
-
have
a look at quasimondo.com to see the "2D or not 2D lecture" - not
sure
if
he
released any code though?

http://lectures.quasimondo.com/

Glen

Anthony Pace wrote:




I have figured out how to make flash work as a multi-touch
system...
I
am
coding it now...

it is so darn simple...
it just came to me after watching a video on how to make your own
multi-touch input device using a webcam a piece of white paper and
a
box
to
block most of the light so the cam only sees light and dark.

Since it is all based on blobs, and processing the image through a
filter
to break down the logic, and flash has access to web cams, I can
just
convert the image to black and white, threshold the image to find
the
blobs,
average out a hit test area based on the finger positions, and all
that
would come after is putting together the finger gesturing logic.

for instance if two blobs exist around their averaged points and
have
not
moved too much or at all, yet there is a third blob that is moving
a
significant amount, perform a specific function based on its
direction
(directional logic through tracking input fed into basic physics
equations
and Pythagorean concepts)

If someone has beaten me to it, I would love to know; however, if
you
beat
me to it, after reading my post, tell me about it and show me your
source so
my life is made easier.
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders






_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders





_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders





_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

 _______________________________________________


Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to