我有一些校准过的地图(使用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
如何计算任意像素的负载/长度?
PS1。这是一张旅游地图,从一个足够小的地区(不知道什么投影类型使用)。
PS2。我在Java编码…但是任何提示都会很感激。
我所尝试的是校准点和每个像素之间的一些线性变换,但是瓷砖以某种方式稍微向西北移动(通过地图比例尺判断几公里),并且根据我使用的哪两个校准点,偏移量或大或小。
我明白了。线性变换已经足够好了
问题是地理坐标的原点在左下角,而像素在左上角。(我把Y坐标弄乱了,在另一个点进行符号反转后,结果看起来几乎不错……D)