Це не так старомодно: я пам’ятаю, що потрібно було вирішити саме цю проблему ще в 80-х, коли у нас не було легко доступних сканерів і довелося піднімати координати та висоти з широкоформатних друкованих карт для геостатистичного аналізу.
Насправді ви вже можете точно читати довготу на будь-якій лінії довготи на карті. Ви хочете інтерполювати ці вимірювання в чотири конкретні точки (кути). Дітто для широти. Таким чином, ця проблема є окремим випадком інтерполяції між контурами на будь-якій контурній карті . Тому вам не потрібно нічого знати про проекцію чи дату, щоб це зробити.
Оскільки це передбачається зробити просто, ми не можемо легко використати той факт, що у нас є повні контури. Досить буде виділити кілька дискретних точок по кожному контуру та використовувати їх. Це робить проблему еквівалентною наступному:
З огляду на набір точок на карті, кожен з яких позначений (плавно змінюється) числовим значенням, щоб оцінити значення в іншій зазначеній точці на карті.
Для того, щоб вирішити це, нам потрібно створити систему координат для самої карти. Вибір не має значення, якщо ізолінії координат рівномірно розташовані (вони навіть не повинні бути взаємно перпендикулярними!) Простий спосіб досягти цього - використовувати лінійку для вимірювання відстаней від лівого краю (х) і нижній край (у) карти. (Якщо у вас відскановане зображення, просто використовуйте індекси рядків і стовпців пікселів.)
Інтерполяцію можна здійснити, встановивши тенденцію до даних.
Ми знаємо, що лише подивившись на карту (тобто спостерігаючи за локальними регулярними проміжками контурів), лінійний оцінювач буде працювати досить добре, а квадратичний оцінювач працюватиме ще краще. Можливо, надмірне (і надто багато роботи) використовувати будь-який оцінювач вищого порядку. Для квадратичного оцінювача потрібно не менше шести контрольних точок. Використовуйте набір точок, кластеризованих біля точки оцінки: це забезпечить високу точність. Використовуйте більше мінімуму: це дає корисні перехресні перевірки і навіть може дати оцінку помилок.
Це призводить до наступної процедури , яку слід зробити для широти і повторити для кожної точки кута, а потім повторити знову за довготу:
Позначте більше шести точок уздовж відповідних контурних ліній поблизу кутової точки. Використовуйте кілька різних рівнів контуру.
Виміряйте (x, y) у позначених точках та в кутовій точці.
Запишіть (x, y, залежне значення) у кожній позначеній точці.
Обчисліть найменше розміщення квадратів даних за допомогою моделі:
(lat or lon) = a + b*x + c*y + d*x*x + e*x*y + f*y*y + error
Застосуйте встановлену модель до значення (x, y) для кутової точки.
Люди обчислюють розміри найменших квадратів набагато довше, ніж у них були доступні механічні калькулятори. Якщо у вас дійсно немає комп'ютера чи калькулятора, погоджуйтесь на лінійну тенденцію і для (простих) розрахунків зверніться до будь-якого підручника з регресії, опублікованого до 1970 року. або (найкращий і найпростіший) будь-який повнофункціональний статистичний пакет. Останній зможе надати вам інтервал прогнозування для оцінки невизначеності в оцінках.
Наприклад , я двічі застосував цю процедуру, щоб знайти (lat, lon) у верхньому лівому куті, використовуючи позначені точки (червоний для довготи, синій для широти, жовтий для кута):
Використовуючи очевидні імена змінних, я отримав передбачувані значення з двома командами Stata 11 для кожного обчислення:
regress lat x y c.x#c.y c.x#c.x c.y#c.y if lat!=0
predict lathat
regress lon x y c.x#c.y c.x#c.x c.y#c.y if lon!=0
predict lonhat
Орієнтовна (лат., Лон) кутової точки дорівнює (61,05, -136,80). Очікувана помилка напрочуд велика (приблизно 0,04 градуса), приблизно вдвічі більша, ніж я б очікував від роздільної здатності екранного зображення. Ці контурні лінії можуть бути не дуже точно розміщені.