Анализировать движение с использованием стоимостных поверхностей с помощью инструмента «Расстояние до пути ArcGIS»?

9

Я хотел бы проанализировать гипотетическое движение (пешком) в ландшафте, основанное на расходе энергии, но я столкнулся с некоторыми проблемами, с которыми я надеюсь, что вы могли бы помочь мне. Я попытался сделать это, используя инструмент Path Distance в ArcGIS в Spatial Analyst, используя созданные мной стоимостные поверхности, но результат оказался не таким, как я ожидал.

Вот так выглядит моя поверхность возвышения (скачано с ASTER GDEM): Данные по высоте с областями белого / пурпурного цвета являются самыми высокими, а зеленые - самыми низкими.

На основании данных по высоте я создал поверхность затрат, которая должна содержать затраты энергии (скорость метаболизма в ваттах) на единицу карты (м). Для этого я использовал эту формулу: M = 1.5W + 2.0 (W + L) (L / W)2 + N (W + L) (1.5V2 + 0.35V * abs(G + 6))

Или введите в Растровый калькулятор условия: (1.5 * 60) + (2.0 * (60 + 3) * Square((3 / 60))) + (1.2 * (60 + 3) * (Square((1.5 * "movementspeed")) + (0.35 * "movementspeed") * Abs(("slopeinpercent" + 6))))

Где M - скорость метаболизма в ваттах, W - вес моделируемого человека, L - переносимая нагрузка человека, N - фактор, описывающий легкость передвижения по местности (для целей тестирования, установленный на 1,2), V - это индивидуум. скорость движения и G - это уклон в процентах. Это создало поверхность со значениями в диапазоне от 90 до 25000, с большинством значений между 90 и 1000 (что кажется правильным, абсурдно высокие значения, скорее всего, являются результатом неправильных значений наклона, которые можно легко исправить).

Скорость движения рассчитывалась по следующей формуле: V = 6e^(-3.5 * |s + 0.05|где s - наклон в градусах.

Или в терминах Raster Calculator: 6 * Exp( - 3.5 * Abs(Tan("slopeindegrees") + 0.05)) это создало поверхность со значениями от 0 до 5,9 км / ч, что кажется правильным и согласуется с тем, что я ожидал.

Теперь эти поверхности использовались в качестве входных данных в инструменте Path Distance; матрица высот в качестве входного растра поверхности (т. е. in_surface_raster), поверхность с расходом энергии в качестве растра затрат и матрица высот в качестве вертикального растра, чтобы инструмент мог рассчитать, движется ли моделируемый индивид вверх или вниз по склону. В целях тестирования в качестве исходных данных использовались две точки в северо-западном и юго-восточном углах матрицы высот (т.е. in_source_data). Вывод был таким (красный - это самые низкие значения, а синий - самые высокие): Расход энергии, когда красный цвет является самым низким значением

Моя интерпретация выходных данных заключается в том, что он в значительной степени игнорирует различия в высоте, а различия в значении просто связаны с различиями в расстоянии. Я ожидал бы, что поверхность будет следовать за более плоскими областями в западной части региона и избегать горных восточных частей, чего он явно не делает. Но я все еще довольно новичок в этих видах анализа и буду признателен за интерпретации других. Итак, кто-нибудь может указать на какие-либо недостатки в моей методологии / формулах, которые могут привести к странным результатам? Или ожидаемый результат, и я просто не понимаю, чего мне ожидать от анализа расстояния пути?

Oulah
источник
В «Инструменте расстояния пути» поле «Входные растровые данные или данные источника объекта» представляет одну или несколько точек, для которых вы рассчитываете путь. ESRI говорит: «Это набор растровых данных или набор классов объектов, который идентифицирует ячейки или местоположения, для которых рассчитывается расстояние наименьшей накопленной стоимости для каждого местоположения выходной ячейки. Использование матрицы высот для этого не имеет смысла, IMO. После этого шага следует Вычисление "кратчайшего пути" (инструменты были перетасованы в Arc10 и названы по-разному), в результате чего вы вводите точку ОТ ГДЕ вы вычисляете путь ДО ранее определенных местоположений источника
G-wizard
Я не использовал DEM в качестве исходного слоя, он использовался только в качестве входных данных в том, что ARCGIS называет «in_surface_raster». Я использовал две точки на северо-западе и юго-востоке в качестве исходного слоя. Извините за путаницу, я отредактирую свой пост, чтобы правильно провести различие между ними.
Ул

Ответы:

4

Это очень похоже на то, как выглядит наш вывод из инструмента «Траектория расстояния», который включает в себя спецификации демона, вертикального растра и вертикального фактора (что в основном то, что вы пытаетесь сделать со своим слоем сопротивления, но оно различает движение в гору и спуск). Это может быть только то, что ожидается, учитывая ваш диапазон высот и веса сопротивления. Но, основываясь на быстром взгляде на вашу матрицу высот и результаты, кажется, что есть ряд вещей, которые могут привести к тому, что ваши результаты не будут отображаться так, как вы могли бы пожелать, и что вы, возможно, захотите взглянуть еще раз, чтобы быть уверенным.

1) У вас есть значительный кусок в юго-западной части вашего района, который, по-видимому, был закодирован как нодата (либо в DEM, либо в слое сопротивления). В этой функции ГИС рассматривает пиксели узлов как имеющие бесконечное сопротивление. (Вот почему эта островная вещь имеет очень большое значение расстояния)

2) Если вы используете расстояние пути и задаете вертикальный растр, но не вертикальные факторы (или наоборот) или если какая-либо из этих двух частей неправильно задана или отформатирована, функция просто не сможет выполнить эту часть инструмента и использовать остальная часть алгоритма для получения выходных данных, но не будет выдавать никаких предупреждений или указаний на то, что части анализа в вертикальном или горизонтальном направлении не были выполнены должным образом. Кроме того, иногда программа будет использовать вертикальный или горизонтальный факторный файл ASCII в некоторых ситуациях, но не в других (например, это будет работать при использовании графического интерфейса, но не Python), независимо от форматирования. Это может затруднить устранение неисправностей этого инструмента. Обычно мы входим и сравниваем значения расстояния от пробега с вертикальными коэффициентами и без них, чтобы увидеть, отличаются ли они.

3) Возможно, вы сможете увидеть более подробную информацию о том, что делает инструмент, если вы запустите его на своих контрольных точках по одному (сейчас вы можете видеть только меньшее из двух расстояний в каждом пикселе, поскольку функция записывает только расстояния от каждого пикселя до одной из двух точек на входе)

4) Без значительных различий в высоте над зоной исследования и / или в широком диапазоне весовых коэффициентов для факторов VRMA результаты анализа, в котором учитывается стоимость перемещения вверх и вниз по склону, часто просто не сильно отличаются от евклидов анализ расстояния. Однако числа, которые вы получите, будут немного отличаться, и в некоторых случаях, если вы отобразите пути с наименьшей стоимостью, они выберут несколько другие маршруты.

5) Технически я думаю, что вы должны использовать растр с z-счетом вместо матрицы высот в качестве входных данных для вертикального растра, но оба они часто используются на форумах, и, по крайней мере для наших данных, различия в выходных данных минимальны.

Документация ESRI по этому вопросу немного разбросана, но это объяснение вертикальных факторов довольно хорошее: http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=Path%20Distance:%20adding%20more%20cost % 20complexity

Jezibelle
источник