У меня есть несколько откалиброванных карт (с использованием 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 ... но любой совет был бы оценен.
То, что я пробовал, это некоторое линейное преобразование между калиброванными точками и каждым пикселем, но плитки получаются как-то немного смещенными в NW (несколько километров, судя по масштабу карты), и в зависимости от того, какие 2 калиброванные точки я использую, смещение будет больше или меньше.