GithubHelp home page GithubHelp logo

Comments (5)

diablodale avatar diablodale commented on August 21, 2024

The working area (also known as user position) feature of OpenNI was never successfully implemented by the OpenNI group. Unfortunately, they have abandonded the v1.x code and that limitation will never be fixed.

The output that you get from the depthmap and the skeleton output can both be filter by you in Max. For example, you could use a jit.op object to filter out data you don't want in the depthmap by filtering Z values less/greater than the trampoline. You can do the same with the X and Y.

The same could be done on the skeletons. You probably don't want to filter individual joints. So a better method might be to filter a whole skeleton based on the user CoM(center of mass). If the center of mass is in the region of the trampoline, then you could use that CoM directly...or...use the joints that have a skeleton # that matches the CoM

from jit.openni.

sqrtmo avatar sqrtmo commented on August 21, 2024

Thanks for your replay!

In my patch I am using only head coordinates. I have made a rectangle to use this head inside the rectangle only.
It works fine. The problem becomes when there are many people in front of the kinect. Openni found four random skeletons and it is a great luck if this one in the rectangle is one of them.

So what should I do, except to cover a part of kinect eye with sticker...

from jit.openni.

diablodale avatar diablodale commented on August 21, 2024

I still believe that the CoM would be the approach to use. You, the creator, need to choose which person. OpenNI doesn't have the knowledge of your trampoline and other parts of your installation. I recommend you develop some logic/code that will choose the person you want to watch using the CoM. Then use the ID number of that CoM to lookup the head joint for that same ID.

If you can use the CoM for everything, I recommend doing that. OpenNI can find CoM faster and more reliably than joints. However, you might have a need for the head coordinate that makes that joint necessary. Having lots of people moving and jumping on a trampoline is probably difficult for OpenNI to detect and recognize. haha.

If you are on Windows, I recommend you use dp.kinect instead. The Microsoft SDK is more reliable and accurate than OpenNI.

from jit.openni.

sqrtmo avatar sqrtmo commented on August 21, 2024

:)
I am on mac actually.
Ok I think that one piece of duck tape on the half of the kinect eye will slove the problem for now. :)
I can use CoM instead of the head...
I have thinked about something with cv.jit and depth cam picture, but maby it will not be stable enough for me because I need to track when somewone jumps. I am not shure in this blobs.

Thanks a lot for the patience.

from jit.openni.

diablodale avatar diablodale commented on August 21, 2024

I continue to believe that you do not need to cover the laser or the sensor. You can do all the filtering with math based on the coordinates in Max. Naturally, you are welcome to do whatever works for you and I wish you best of luck. :-)

I do want to additionally caution you that tape might leave a residue or damage the plastic covers on the Kinect. When you need to remove it, you might have permanently damaged it. Perhaps you can cover it with something more easily removed like a thick paper and use Gaff tape (a tape made for theater hot lights) to secure it to the Kinect.

from jit.openni.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.