Object tracking

Hi,

I want to track an object ie. a hand wit a webcam. I also want to get something like a grid of this object, where i can put some things on. I tried it with trautner but could only define some areas where I can recognize movement.

Could anyone give me a little hint which module could help me?

regards,
Lukas

Have you tried “Contour” ? Its the second built in freeframee plugin.
It detects edges and returns point coordinates and the order how they are connected.
what do you mean with grid? a 3d mesh? in this case you can use “Triangle DX9 Indexed” or the newer EX9.Geometry Nodes.

the diffcult part is how to connect the points to triangles in a way that only the inner parts of the hand contour are filled…

Anonymous:
Have you tried “Contour” ? Its the second built in freeframee plugin.
It detects edges and returns point coordinates and the order how they are connected.
what do you mean with grid? a 3d mesh? in this case you can use “Triangle DX9 Indexed” or the newer EX9.Geometry Nodes.

the diffcult part is how to connect the points to triangles in a way that only the inner parts of the hand contour are filled…

Thank you! Contour is exactly that what i want. I get the points of the contour of any object… But how can i say ie. “give me the edge points” or some other?

best regards

have a look at the node ConvexHull (2d) and its help file, it detects the outer points from a number of points …

tonfilm:
have a look at the node ConvexHull (2d) and its help file, it detects the outer points from a number of points …

Thank you that’s working great. If i have now a contour line of ie. my hand. And i want to get the four outer points of one finger or just of one area of the hand, how can I get them? I still don’t know how i can get some wanted points out of that contour line. I tried to get some points with getslice but it didn’t work.

can anyone give me a hint?

best regards

very, very difficult.
as a computer dont know what a hand is, its impossible to detect the fingers. the other thing is, that the contour node outputs an arbitrary number of points an they jump almost every frame, thats why the getslice dont work properly …

a hint: analyze the behavior of the points with your human mind, try to understand whats special on the points you want. then try to translate your results to the x/y coordinatesystem …

Can you describe your whole project? Maybe there are other way to achieve what you want.

some suggestions:

-paint your fingernails pink and track only for pink areas ;)

-Measure the angles between the points, the finger itself form a straight line while the end of the finger forms something like a circle… but i think this method has some real difficulties…

Anonymous:
Can you describe your whole project? Maybe there are other way to achieve what you want.

some suggestions:

-paint your fingernails pink and track only for pink areas ;)

-Measure the angles between the points, the finger itself form a straight line while the end of the finger forms something like a circle… but i think this method has some real difficulties…

First I want to track a hand under a webcam. In a second step I would like to track a Finger (e.g. the ringfinger) and put an object (a picture of a ring) on it.

I’m now trying to drive down the contour and mark the points in a coordinate system, where x is first getting lower and if x is getting bigger, this should be the point, where a finger ends /starts… but now I’m having difficulties getting the grid (dx9) and my finger (gdi renderer) together…

Has anyone a hint?

best regards,

Anonymous:
Can you describe your whole project? Maybe there are other way to achieve what you want.

some suggestions:

-paint your fingernails pink and track only for pink areas ;)

-Measure the angles between the points, the finger itself form a straight line while the end of the finger forms something like a circle… but i think this method has some real difficulties…

Your tip with fingernails brought me another idea. I just want one finger to be “tracked” so i could make the section, where you put on your hand white and the another with the shape of one finger red. So i should know the finger because it’s underlayed red.

But with witch module can i track the color. I tryed it with pipet but this can only differentiate black and white.

regards

I did a module for exactly that long time ago, but i think its better (Faster and more accurate) to filter out the color you want with an additional freeframefilter (there are tons around im sure there is one that fit your needs) and pass the result to the “Contour” Node.

You need the shape of the hole finger or just the finger tip. btw?

I tryed it with pipet but this can only differentiate black and white.

No Pipet works with color too fore sure…

cheers ele…

Anonymous:
I did a module for exactly that long time ago, but i think its better (Faster and more accurate) to filter out the color you want with an additional freeframefilter (there are tons around im sure there is one that fit your needs) and pass the result to the “Contour” Node.

You need the shape of the hole finger or just the finger tip. btw?

I tryed it with pipet but this can only differentiate black and white.

No Pipet works with color too fore sure…

cheers ele…

Ok i try it with pipet. But somehow, contour and pipet won’t work together and they both need the video source that can only used once.

I don’t understand too that pipet tells me the colour of the x,y pixel but how can i use a whole area like a big red one?

Thank you for your help,

kindly regards

maybe have a look and get inspired here:

http://iihm.imag.fr/demos/magicboard/movies/

I tried now solving my problem in getting the highest point of the x-axis and position a circle on it… and well it works slightly.

-> http://vvvv.org/tiki-browse_image.php?imageId=1117

Now I’ll try to only track in a pre defined area i.e. the area of the ringfinger. Can anyone give me a hint how i can define a area (ie. that contour only tracks the points in a quad.)

I’ve got the problem, that contour only allows an input of a videoIn. Isn’t it possible to lead the output of a scaled videotexture into contour somehow?

best regards

halo lookas.

try attached patch. its not a sollution but may be a hint. as soon as you paint a hand into the renderer you’ll see the areas of sharp changes of angle marked with a bigger quad. from that you may be able to patch on and extract the individual fingers…

also try the threshold iobox!

ringfinger.v4p (10.6 kB)

joreg:
halo lookas.

try attached patch. its not a sollution but may be a hint. as soon as you paint a hand into the renderer you’ll see the areas of sharp changes of angle marked with a bigger quad. from that you may be able to patch on and extract the individual fingers…

also try the threshold iobox!

Hi Joreg,

Thank you for providing us a patch. That’s exactly that what we needed. I’m now trying to integrate it with our contour coordinates btw. it is already working but needs some fine graining. Thanks!!

best regards,

Lukas

Hi, this is very old, but joreg, what do you mean by “paint a hand” into the renderer?

huh…

the patch above is so old, it misses the Group (EX9) node to work with recent versions ov ffff.

see attached patch. using the mouse draw a handlike contour in the renderer. or attach videoin->contour->… to see what i was pointing him towards.

ringfinger.v4p (11.2 kB)