Your plan is generally OK, but it is lacking detail.
Have you thought about how you'll use OpenCV to do tracking? Blob tracking is easiest, but it depends on a single color of the blob. You're changing ball color... Will you change the OpenCV color being tracked as you change ball color? Will they be synchronized enough for that? How fast will the tracking be? If it lags too much (e..g half a second), then what you can do with respect to coordinating changes in ball color is quite limited.
The hardware is key for all of this. I'm not yet convinced this is all possible within a ball form factor. Don't forget about thermals in the ball... How expensive will the radio be? Within budget?
We have OpenCV basically down on blob non colored images and are theorizing that by having light up ball colors they will show up as very bright on a gray scale image when compared to their surroundings, which we can use to differentiate them from their surroundings. But you are absolutely right that figuring out openCV's limits is essential for understanding what we can use it for.
So the XBee radio modules cost 17.95 each with a usb dongle that costs 25.95 and would be nice to have and a breakout board for each ball to make soldering it less of a hassle which costs $2.95. Pricing with these (and juggling props in general) is hard because it might be cheap for each module but we need at least 3 in order to do something cool with it, which puts us at $62.70 for the ball's radios alone plus the usb dongle and one for the controller sets us at $106.60. I would argue however that because the radios are very reusable and easy to work with they can be used in later iterations of the class and shouldn't be put towards our costs. Or at least the $44 for the controller parts which don't have a chance of being dropped and breaking :-)
Your plan is generally OK, but it is lacking detail.