I have scanned map I know it scale and dpi. Is it possible if i know lon-lat cords of some point(X,Y) calculate lon-lat of another point (clicked) on this map? I have read some about georeferencing tools but I'm looking for programming functions to achieve such result.

  • 2
    What do you mean by programming functions?
    – wittich
    Mar 4 '16 at 12:54
  • I'mean simply i give X-Y mouse position over map and i recive lat-loncoordinates
    – whd
    Mar 4 '16 at 13:13

Due to the warping of the paper on which the map is printed and the scan procedure itself a scanned map will always contain distortions to some extent. That's why methods like georeferencing have been developed and should be applied in order to add a spatial reference to the map.

Of course you could try to map the pixel coordinates to a location on the scanned map based on the known parameters. But without transforming the map you are very likely to compute coordinates that are far away from the reality. However there are libraries like for example "GeoTools" which provide methods that could help you when looking for a programmatical solution.

  • Thanks for you answer! I have little additional question, how can i detect what projection has been used? On my map i dont have any lines just streets and buildings, i know only the scale, it is some kind of administrative map
    – whd
    Mar 7 '16 at 9:31
  • If you have an original map document there could/should be some information given somewhere. Otherwise you could maybe try to find out which projection is usually used for other administrative maps of the desired region.
    – TobsenB
    Mar 7 '16 at 9:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.