我有一些校准的地图(使用MapCalibrator),我需要找到相应的OSM样式图块。
虽然我找到了一些从地理坐标(纬度/经度)计算瓷砖的算法,但我仍然坚持找到像素位置(在纬度/经度上),基于我所拥有的几个校准点。
对于Ex,我的图像为3758/5751像素,并遵循校准点:
- x y lon lat
- 1897 2224 26.3256 46.2311
- 3303 2708 26.43678 46.20419
- 2297 306 26.3577 46.3365
- 2135 4648 26.3423 46.0967
- 1885 1764 26.3236 46.2561
- 2091 2806 26.3386 46.1995
- 3613 2922 26.4604 46.1921
如何计算任意像素的loat / lon?
PS1。地图是一个旅游地图,来自一个足够小的区域(不知道投影类型使用什么)。
PS2。我在Java编码..但任何提示都将不胜感激。
我所尝试的是校准点和每个像素之间的一些线性变换,但是瓷砖以某种方式稍微移动到NW(通过地图比例判断几公里),并且取决于哪两个校准点我使用,偏移量更大或更小。
答案 0 :(得分:0)
我明白了。线性变换足够好了。
问题是地理坐标的左下角有原点,而左上角有像素。 (我弄乱了Y坐标,在另一个点反转后,结果看起来差不多......但不知何故转移了:D)