If I have a photo that shows a mountain range, is there an algorithm or methodology to try to search and find that mountain range? For example, let's say I have an old photo like this one (fragment):
So here we can see 3 distinct mountain ranges in the background, and by hand we could outline their profile against the sky or against the range behind it.
Given these profile lines as input is there an algorithm that will match this to a DEM? The overall goal would be to find out where the photo was taken.
Such algorithms do exist, at least for constrained areas. See for example the paper:
User-Driven Geolocation of Untagged Desert Imagery Using Digital Elevation Models, Tzeng, E. et al, Computer Vision and Pattern Recognition Workshops (CVPRW), 23-28 June 2013, Portland OR.
(Abstract): We propose a system for user-aided visual localization of desert imagery without the use of any metadata such as GPS readings, camera focal length, or field-of-view. The system makes use only of publicly available digital elevation models (DEMs) to rapidly and accurately locate photographs in non-urban environments such as deserts. Our system generates synthetic skyline views from a DEM and extracts stable concavity-based features from these skylines to form a database. To localize queries, a user manually traces the skyline on an input photograph. The skyline is automatically refined based on this estimate, and the same concavity-based features are extracted. We then apply a variety of geometrically constrained matching techniques to efficiently and accurately match the query skyline to a database skyline, thereby localizing the query image. We evaluate our system using a test set of 44 ground-truthed images over a 10, 000 km2 region of interest in a desert and show that in many cases, queries can be localized with precision as fine as 100 m2.
The full paper is also available.
How far this technique scales (e.g. worldwide) is a different matter of course...
Another relevant paper is:
Large Scale Visual Geo-Localization of Images in Mountainous Terrain, Georges Baatz et al, Proc. European Conference on Computer Vision, 2012
Abstract. Given a picture taken somewhere in the world, automatic geo-localization of that image is a task that would be extremely useful e.g. for historical and forensic sciences, documentation purposes, organization of the world’s photo material and also intelligence applications. While tremendous progress has been made over the last years in visual location recognition within a single city, localization in natural environments is much more difficult, since vegetation, illumination, seasonal changes make appearance-only approaches impractical. In this work, we target mountainous terrain and use digital elevation models to extract representations for fast visual database lookup. We propose an automated approach for very large scale visual localization that can efficiently exploit visual information (contours) and geometric constraints (consistent orientation) at the same time. We validate the system on the scale of a whole country (Switzerland, 40000km 2 ) using a new dataset of more than 200 landscape query pictures with ground truth.