[Justin] sent in his Digitally Assisted Billiards project. Using a web cam, a computer and a projector, these guys have set up a system that shows you the trajectories of your current shot. It detects the angle of the cue and displays a glowing blue line showing where each ball would go and where the collisions would be. It is a bit slow right now, and made somewhat less accurate by a low resolution web camera. This could be a fantastic teaching tool if it were to get some more polish. The source code is available on the site, so you could try this one out at home.
29 thoughts on “Digitally Assisted Billiards”
Leave a Reply
Please be kind and respectful to help make the comments section excellent. (Comment Policy)
Oh….my….god
Projector
Webcam
Computer
Pool
Throw in a half naked lady and I’m in heaven
This looks great!May be change to play carrom ?
the easiest way to become a pool shark, ever.
Nah. What you need is a projector that sends the lines down in IR or UV and then sunglasses that let only you see the lines. THEN will you become the worlds greatest poolshark ;)
Well the idea certainly cool, but it did a worse job estimating the shots than I do. Did you notice the part of the video where the estimated trajectory changed by like 5 degrees just from noise in the web cam image?
Take the same idea though with a high res camera and projector, a beefier computer, and morden’s half naked lady and then your in action.
Well it never has a hope of working with just one camera, because it is impossible to get the direction of the cue unambiguously. This obvious massively affects what follows. It looks like they don’t take into account the fact that bounces off the cushions aren’t mirror-like either.
Anyway, since the outcome is so sensitive to the initial conditions, I doubt this will work well even if they have two high quality cameras.
brilliant
Granted it is not going to handle ball english either. The concept is more fun then practical if you are trying to train with it (I do pool tournies and this wouldn’t help me train at all).
That being said though it would be fun just to have, even more so if you incorporated ball tracking and had particle trails behind them when they moved. Also for pure line of sight tracking it could really help with 2 or 3 bank shots, giving you a center line to adjust off of.
ir laser
special glasses
profit
“Granted it is not going to handle ball english either.”
With sufficient resolution, you could handle english, since you could just track the angle of the cue and the impact point on the ball. The physics becomes a lot harder, though.
What really limits you is that you can’t handle ball velocity at all, since there’s no way to predict what that will be just from the angle of the cue.
You might be able to improve that by projecting a series of lines, color-coded to represent the strength of the hit. Then you would just need to train yourself to recognize what each color represents.
regardless of how beneficial this particular implementation is… the concept is awesome.
I could imagine a system with a better camera and sensors in the cue so the computer knows the exact placement of the cue in relation to the table. That would allow it to determine English and more accurate trajectory, still no velocity but it’d be a whole lot closer.
heck even a projection of the computer’s recommendation would be beneficial.
excellent! great idea ;o) someone should give you better cameras/equipment!!!
just to point out a random fact. This kind of system was used in an episode of Quantum Leap called Pool Hall Blues on March 14, 1990. It seemed to work out pretty well for him. The idea was a lot like strider_mt2k’s idea because only Sam could see the beams.
“what really limits you is that you can’t handle ball velocity at all, since there’s no way to predict what that will be just from the angle of the cue.”
It’s spin velocity you mean? Because yes that is why you can’t predict english on the ball. Maybe with a dotted ball and a really good algorithm for spotting revolutions. I can see a laser pointer cue also being used to assist in showing the exact location where the strike will land.
With a high speed camera you could technically predict velocity by gaining the size of the pool stick and tracking it’s motion across a known length of the table frame by frame before impact. Of course you are introducing massive framerates into the equations then and slowing the entire thing down even more unless you sample every few frames or so.
Next project idea:
Dynamic lighting and table tilting to throw off the opponent.
Or how about augmented reality pool balls.
This is cool, but slow… why program it on an embedded device? It seems like speed could have been vastly improved with a run of the mill laptop.
@alcoholic
it was a project for an embedded systems class.
This is a great concept! The accuracy could probably get improved with a special cue, one that has an accelerometer in it or maybe ir lasers.
how aboutu an accelerometer in each ball, so it can track proper movements, and then modify future predictions based on them
soo cool!
@mark
Well ideally a system like this would be entirely independent of the pool game itself wouldn’t it? I thought of an accelerometer in the cueball itself but decided suggesting a modification to the cue is less intrusive.
Does anyone else rember an episode of quantum leap that featured this very idea! Or has everyone elses minds been swiss cheesed by now!!!
The point of this is to provide a guide as to where the balls the balls will go before you take the shot. It can only do this based on your alignment with the cue ball it doesn’t know how hard you’re goinh to hit it, or where you’re going to hit it. So it has to assume no english (spin) on the ball and a fixed rate of acceleration.
All this talk of putting accelerometers in the cue and spotted cue balls to sense where the cue strikes and superfast computers to calculate the spin would only take effect WHEN the shot was actaully played, By then it’s too late ! the whole point of it is to predict what is going to happen beore you do it not AS you do it.
@Glen
Real time updates of the trajectory is cooler then static prediction though. Might as well go for the real thing eh?
some things i was thinking when i watched this, and might make it simpler and more effective:
1) get a higher res single shot camera, then attach a simple wireless switch to the stick at the base. line up the shot, hit the switch, and the camera takes a much better picture without as much noise ONCE instead of adjusting constantly.
2)multiple cameras for better 2-d accuracy, as they seemed to be off a bit.
3)i know it would require a lot more programming, but making an algorithm so the computer calculates the best single shot output (makes the ball go into the pocket) and setup for the next shot, and display the force require to do so as a color coded horizontal line just in front of the cue ball. (i hope that makes sense) – i know english is hard (or impossible) to program and predict, but it might be possible to program this idea for straight shots.
“but it might be possible to program this idea for straight shots.”
Even straight shots pick up spin (topspin, or follow, specifically) – that’s what rolling is. How hard you hit the ball (which you can’t predict) partially determines how much follow it picks up. And topspin changes the behavior of any impact that the ball has, *including* the impact angle.
So even a straight shot won’t be simple. I still think the best way would be to have a “weak, medium, and strong” predictions colored with, say, green, yellow, red. Then you have to take into account spin and friction, and you’d be able to make a decent guess.
I doubt the problem with the accuracy is the webcam – if you look at the video, you’ll note that the most accurate ones are the shallow-angle shots, which are the ones which depend least on spin.
If you need to purchase a bumper billiards table but aren’t sure where to get one, you can either search online or in a billiards supply store or other recreational outlet. They vary in price, and some companies may send you the bumper billiards table in pieces that you’ll need to assemble. If you don’t know quite what you want, try to look at some tables in a show room before you make a purchase. That way, if you purchase it online, you can know what to expect when the box arrives.
Jeepers…how geeky.
Just play the bloody game guys!
Well,Billiards is a fast growing leisure sport played on a billiard table, with a stick known as cue stick, usually 58 inches in length, and weighing 18 to 21 ounces. The cue stick is used to hit the balls, moving around the table.