Computer Vision – Finger Puppets!

Computer vision is always a fun thing to play around with. In max the use of the Open CV package really makes this much much much more easier to manage, since you then don’t have to think about the crazy implementation and doing kalman filters, and doing the right integrals on the data and so on and so forth. I figured that It would be fun to use the point tracker template and give it a little bit more of a purpose and turn it into something that allows you to have digital finger puppets! Like so:

So as you can see its rather buggy, however what i essentially did was take the x y positional outputs of the original example and map them to the x y distance coordinates of the video out put. Then, at the same time i would take a second points x and y and subtracted the original points x and y from it. This creates some distance which I then scale and linearise to symbolizesome kind of size change, and it works fairly well. The only issue is that sometimes, depending on the contrast between your environment and you finger, the selected points get lost and disappear and you don’t get the results you were looking for.

If you are interested here is the following patch.

2 Comments Add yours

  1. Aidan Sensiba says:

    It’s very cool how you managed to get the images to change size proportional to an object’s distance to the camera. If you could just fix the minor bugs, it could practically be a real Snapchat filter.

  2. Han Liu says:

    Clever piece of work, very impressive how you bulit convert 2d layers into pesudo 3d scene with depth. I would be better with some sound effects integrated, specially when these sound effects are related to the distance between designated objects and camera.

Leave a Reply