We are testing developing a bowling ball tracking system using the Zed 2 camera because the specs advertised. Specifically, the depth range of 20m. The idea is to have a single Zed 2 camera at a location capable of viewing multiple lanes and tracking the ball with relatively low latency (e.g., < 300 ms) and fairly accurate ( about 2 inches off of the position at the furthest viewing distance of around 60 feet ).
We’ve attempted the zed-sdk/object detection/concurrent detections/cpp at master · stereolabs/zed-sdk (github.com) with adjustments as a proof of concept. Adjustments included:
- removing all other detections object class filters and using only sport
- setting the coordinate_units to meters
- increasing the depth_maximum_distance to 18.3 (60 feet)
- for looping the retrievedObjects for positional information logging
- reducing the confidence level via the GUI after running
- depth modes ULTRA and NEURAL
- using only OBJECT_CLASS::SPORT object class filter
Unfortunately, we didn’t manage to get the bowling ball tracked past roughly 10 feet directly straight ahead of the camera. Are we doing something wrong? Why is the ball not being detected at greater distances. 10 feet out the expected 65 feet is a rather large discrepancy from what we had expected.
Thanks in advance for any insight or advice.