StepByWatch: A smartwatch-based enhanced navigation system for visually impaired users