There is an app in the works, I happen to know the crew behind it, and the functionality is unbelievable. It is based on computer vision and AI. The tests showed it can even track which ball was hit first on "split" hits, or whether the cue ball hit the cushion before the object ball or vice versa.I’ve been lazy, but I think a mobile port of this would be great to easily diagram a table layout from a photo;
GitHub - sgrieve/PoolTable: Using openCV to identify pool balls on a pool table.
Using openCV to identify pool balls on a pool table. - sgrieve/PoolTablegithub.com
Edit: this looks even more promising:
Pool Table Analytics Using Object Detection
In this guide, Abirami Vina shows how to build a pool table analytics system with object detection.blog.roboflow.com
There is an app in the works, I happen to know the crew behind it, and the functionality is unbelievable. It is based on computer vision and AI. The tests showed it can even track which ball was hit first on "split" hits, or whether the cue ball hit the cushion before the object ball or vice versa.
Looks very very promising.
There are a couple methods I know of :That’s great. I think the technology is there (as with the upcoming digiball), someone has to put it together
@Pubo : can you share more details on your method if you don’t mind?
There are a couple methods I know of :
1. My primary method is HSV color detection, which is quite basic because it only detects balls with solid colors. Tracking striped balls using HSV is difficult because the stripes wobble, and the ball might look completely different in the next frame.
I have a GitHub Page that's not updated for a long time. It contains some code that tracks a solid ball pretty well. https://github.com/PubohH/Billiard-Ball-Tracking
2. I recently found out After Effect's Motion Track feature. A simple illustrationI've not tested this on pool balls though.
3. I think the best way to do ball tracking is incorporating AI (along with traditional algorithms) to recognize, specifically, striped balls due to its changing appearances in a footage.
If I have time I'll try to make my method more suitable and robust for pool, maybe adding more thoughts on balls' collision and tracking multiple balls at the same time.
So far method 1 and 2 serve me well because I'm more interested in analyzing a single object at the moment.
VP can be used to test and diagram shots too, with excellent physics. How do you think it's limited?Virtual Pool would be the perfect platform except they only sell games.
Haven't delved into the faults. For research, no interface would be the main problem. If coders could harness the modeling, then we'll see.VP can be used to test and diagram shots too, with excellent physics. How do you think it's limited?
pj
chgo
I’ve been lazy, but I think a mobile port of this would be great to easily diagram a table layout from a photo;
GitHub - sgrieve/PoolTable: Using openCV to identify pool balls on a pool table.
Using openCV to identify pool balls on a pool table. - sgrieve/PoolTablegithub.com
Edit: this looks even more promising:
Pool Table Analytics Using Object Detection
In this guide, Abirami Vina shows how to build a pool table analytics system with object detection.blog.roboflow.com