Python с GDAL и PostGIS в качестве замены ArcGIS


9

Несколько раз назад я работал со спутниковыми снимками суточной температуры поверхности суши, размером с Аляску.

Мне пришлось обработать около тысячи изображений. Я загрузил их, наложил мозаику, спроецировал, обрезал до границ шейп-файла, извлек средства из обрезанных растров и нанес их на график температуры-времени. График время-температура был конечным результатом. Я сделал все это в ArcGIS, и хотя я создал скрипт ArcPy, который помог автоматизировать часть работы, он все еще был кропотливым.

Теперь я хочу создать программу, которая делает то же самое, но на 100% автоматически. Я просто хочу ввести в программу координаты углов, чтобы определить интересующую область и получить сгенерированный окончательный результат, который представляет собой график время-температура.

Как вы думаете, это возможно, используя Python с библиотекой GDAL и PostGIS в качестве хранилища растровых данных?

Ответы:


6

Да, это короткий ответ. Я думаю, что вам понадобятся NumPy и SciPy как часть вашего решения Python. Посмотрите на модуль scipy.ndimage, когда дело доходит до вычисления средних (это зональные средние?), Так как это будет намного быстрее, чем просто NumPy. Кроме того, используя многопроцессорный модуль Python , вы получите значительное увеличение скорости. Однако уменьшите количество подпроцессов, поскольку растровая обработка может потребовать много ресурсов процессора, и в конечном итоге вы можете замедлить работу компьютера, а не ускорить его. Я предлагаю на 1 процесс меньше, чем ядер на вашей машине.


Как насчет загрузки данных? В общем, какую информацию вам нужно знать?
Дчабоя

@dchaboya: я не уверен, что вы имеете в виду. Я думаю, что библиотека ftplib выполнит задачу загрузки.
MultiGoodverse

Ах да, это то, что я имел в виду. Не был уверен, какой модуль \ библиотека использовался для выполнения этой части задачи.
Дчабоя
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.