Вопрос: Каков наилучший способ вычисления интерполяции с инвертированным расстоянием (IDW) в Python для местоположений точек?
Некоторые сведения: В настоящее время я использую RPy2 для взаимодействия с R и его модулем gstat. К сожалению, модуль gstat конфликтует с arcgisscripting, с которым я столкнулся, запустив анализ на основе RPy2 в отдельном процессе. Даже если эта проблема будет решена в недавней/будущей версии, и эффективность может быть улучшена, я все равно хочу удалить свою зависимость от установки R.
Сайт gstat предоставляет автономный исполняемый файл, который легче упаковывать с моим python script, но я все еще надеюсь на решение Python, которое не требует многократной записи на диск и запуска внешних процессов. Количество вызовов функции интерполяции, отдельных наборов точек и значений, может приблизиться к 20 000 в обработке, которую я выполняю.
Мне особенно нужно интерполировать точки, поэтому использование функции IDW в ArcGIS для генерации растровых звуков еще хуже, чем использование R, с точки зрения производительности..... если только не существует способа эффективно маскировать только точки я необходимость. Даже с этой модификацией я бы не ожидал, что производительность будет такой замечательной. Я рассмотрю этот вариант как еще одну альтернативу. ОБНОВЛЕНИЕ: проблема заключается в том, что вы привязаны к размеру ячейки, которую используете. Если вы уменьшите размер ячейки, чтобы получить лучшую точность, обработка занимает много времени. Вам также нужно следить за извлечением по пунктам..... по всему уродливому методу, если вы хотите значения для определенных точек.
Я просмотрел скудную документацию, но не похоже, что есть прямой способ расчета IDW.
Я думаю о том, чтобы выполнить мою собственную реализацию, возможно, используя некоторые функциональные возможности для поиска ближайших точек и вычисления расстояний.
Я пропустил что-то очевидное? Есть ли модуль python, который я не видел, который делает именно то, что я хочу? Является ли создание моей собственной реализации с помощью scipy мудрым выбором?