Vision based localization for mobile robots