Self Balancing Robot using Computer Vision
I have worked with self balancing robots in my bachelor and master thesis.
Ad hoc I see these problems, that will very likely get in your way.


Self balancing robots are instable by definition. You have to collect data from your sensors (the camera) fast enough, to react to changes in the attitude of the robot. So the question is: can you process the information from the camera fast enough to stabilize the system (dead-time)?
Gyros will give you the angular acceleration along the axis. But with your camera you have something that correspond to the angle. To clarify this, you can not get the angular velocity or even angular acceleration with just one picture. You have to do some processing based on multiple pictures. That means you need more time => greater dead-time. Also this processing will probably introduce noise, which will complicate the controller design.