Recent developments in mobile techniques have enabled a great variety of Location Based Services (LBS). A high positioning accuracy is a fundamental requirement for precision LBS applications, e.g., precise LBS marketing in shopping malls or indoor emergency evacuation services with mobile devices. However, most offerable commercial positioning systems, such as GPS/GNSS and RF-based systems, can not provide positioning accuracy within one meter. In this work, a new positioning approach is proposed for mobile devices, Called Photo Positioning, it can provide a high accuracy positioning service. The 'positioning' here means to find the location where a photo was taken by investigating the geometric relations between the images of points of interest (POI) in the photo and their location in the real world based on the principle of photo imaging. To implement a photo positioning system, three major components are needed, including a POI database, a method to recognize and locate POIs in a photo and an algorithm to calculate the position where the photo was taken from the POI information. A positioning algorithm based on the geometric similarity in photo imaging is presented in this work, and a prototype system is developed for Android smartphone platforms. Our experimental results shows that the average positioning error of the proposed photo positioning approach can be as low as 74.34 cm.