A Survey of Mobile Computing for the Visually Impaired