They have gone round and taken a video of every street in a certain area, unpacked it, extracted salient points, reconstruct those points to get a 3d map.
From that, given any 2d image you should be able to extract a bunch of "salient points" or known points, which from their relationship to each other can tell where the camera is, and what direction its pointing.
The two hard parts are 1) collecting the data 2) searching the data in reasonable amount of time
They have gone round and taken a video of every street in a certain area, unpacked it, extracted salient points, reconstruct those points to get a 3d map.
From that, given any 2d image you should be able to extract a bunch of "salient points" or known points, which from their relationship to each other can tell where the camera is, and what direction its pointing.
The two hard parts are 1) collecting the data 2) searching the data in reasonable amount of time