Google Photos actually makes a reasonable estimation of your photo's location based on the content of the image (and the context of the photo, if it was available.)
For example, if I shoot with my non-GPS-enabled DSLR, those images are uploaded to Google Photos, which will reconcile my location history to apply a location to those shots. It'll also do that if it sees DSLR shots in between geotagged cameraphone shots.
But more to your use case, GPhotos will actually recognize landmarks and other information to tag photos, I believe, with a rough location (such that it'll match a location like "Paris" or "Eiffel Tower," but perhaps not lat/long... yet.)
Even more impressive, they're very nearly able to do exactly what you're describing, though my understanding is that it isn't in use in GPhotos yet: https://www.technologyreview.com/s/600889/google-unveils-neu...