# Determining the transformation between a satellite image and long/lat

I'm trying to overlay some data onto a satellite image of the UK.

The image is a hi-resolution version of the image below (originally from dundee university): http://www.bbc.co.uk/news/uk-scotland-18239311

However, I'm unable to determine the mapping between longitude/latitude and points on the image, i.e. given a long/lat pair what is the relevant point on the image. Along the way I created a table of landmarks round the edge of the UK and recorded their position on the image (with top-left being (0,0)) together with their longitude and latitude values: https://gist.github.com/pci/4945162 . Sadly I don't know the location of the satellite or the direction the camera was pointing when the shot was taken.

I've tried affine transforms, perspective transforms and planar projections from a sphere, all with very little success.

Any help is greatly appreciated.

Once we get a Satellite Image, we need to georeference it. What this means, is that we need to modify and recitify the image and set a lat long (or X Y Coordinate in general) for each pixel of the image.

This is usually done, by setting the lat-longs for known points on the image(Just as you have done). But to actually modify the image, so that it becomes geographic aware, we need a GIS software, and run the Georeferencing Process in it.

I would suggest that you download QGIS, and georeference in it. Here are two tutorials which Show how Georeferencing can be done:

• Thanks guys, thought I was going down a well trodden path but didn't know the terminology. I'll have a look at the links and report back.
– Phil
Feb 13, 2013 at 16:38
• Glad to help out. We all began somewhere... Feb 13, 2013 at 16:53
• QGIS did a very nice job! Had to adjust the number of points / polynomial order of the interpolation but it's done a nearly perfect mapping. Thanks again.
– Phil
Feb 14, 2013 at 9:25