1
$\begingroup$

Do you know of a formula or function that can calculate the real world height of a satellite image in degrees?

The image is from Google Static Maps and the image uses Mercator projection which makes calculating the height very difficult. I can successfully calculate the width but I don't know of a formula to calculate the height of the satellite image in degrees.

enter image description here
For the above image I know this information:

  • Width= 400px
  • Height= 400px
  • Central mid point is: -32 Lat 151 Long
  • Google's zoom value is 14

This is how I calculate the width which works:

// The reason I use 256 is because in google the whole earth fits inside 256 pixels // when the zoom value is 0(zoom can be 0 > zoom < 25) float meshWidthDeg = (imgWidth/256f)*(360f / Math.Pow(2f,zoom)); 

3 Answers 3

1

After a quick look at the Wikipedia entry for the Mercador projection, I believe that for short distances, the horizontal and vertical scales are the same (on a printed map). Scroll down to Formulae for distance. Pixels are usually not square, so you have to allow for that, and it could vary between devices.

There is a comment there that Google uses a variant of the Mercador.

0

map a matrix over the image, and find the actual coordinate points of the grid points of your matrix. fill a second matrix with calculations of the coordinate points with the information of your picture. with two values in every gridpoint you can figure out a matrix of slopes.

make a list of functions using the respective slopes and actual coordinate points.

find the convergence point of these functions. with the convergence point you can construct a pyramidoid from which you can find whatever angle you want.

0

If you know the location of the satellite and the time of the photo, you can measure the length of shadows to determine height of the objects casting them.