Tracking a thrown ball and determining when it hits a wall RRS feed

  • Question

  • I'm new to this so trying to find out what I need to do, so much info out there!

    I'd like to set up my camera pointing at a wall - I'd then like to track a thrown ball (or balls) and work out when they collided with the wall.

    After some searching/asking colleagues, I've come across Kinect, v2 SDK, OpenCV, Emgu and OpenNI - having looked at these I'm a bit confused as to what would be the bare minimum I need to achieve my goal!

    Would just the Kinect 2 and SDK v2 be enough - I understand it has Depth capabilities but would these suffice? Do I need to use OpneCV (and if so why?) - would you recommend OpenCV instead of the SDK?

    What would be your recommendations

    Appreciate any advice/pointers

    Thanks in advance


    Thursday, May 11, 2017 12:17 PM

All replies

  • Hi Ian,

    A few ideas for you to consider. The Kinect/SDK route would just give you access to color and depth information, you would have to write your own 'ball tracking' algorithms. You would probably end up using openCV built in functions anyway, so I would recommend trying just simple openCV + webcam first. There are many youtube examples of ball tracking in openCV, and you can go into them with C++, python, or C# (with emgu). 

    If you find that after using just a normal camera, that you really need the depth information that the Kinect can provide, then I would look at using unaNancyOwens excellent work which shows you how to get openCV Mats filled with Kinect data. 

    Note that the Kinect is limited to 30 fps which may be a little slow for very fast moving balls. You could get creative with the raw IR 300 Hz data, but then you would have to go to the openSource libfreenect2 backend.

    Friday, May 12, 2017 9:27 AM
  • Hi Phil

    Thanks for that and much appreciated - you've given me some interesting things to look at for the weekend!



    Friday, May 12, 2017 10:35 AM