Топо в растр (Topo to Raster) (Spatial Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

Интерполирует гидрологически корректную растровую поверхность по точечным, линейным и полигональным данным.

Более подробно о том, как работает инструмент Топо в растр (Topo to Raster)

Использование

Синтаксис

TopoToRaster (in_topo_features, {cell_size}, {extent}, {Margin}, {minimum_z_value}, {maximum_z_value}, {enforce}, {data_type}, {maximum_iterations}, {roughness_penalty}, {discrete_error_factor}, {vertical_standard_error}, {tolerance_1}, {tolerance_2}, {out_stream_features}, {out_sink_features}, {out_diagnostic_file}, {out_parameter_file}, {profile_penalty}, {out_residual_feature}, {out_stream_cliff_error_feature}, {out_contour_error_feature})
ПараметрОбъяснениеТип данных
in_topo_features
topo_input

Класс Топо (Topo) указывает входные пространственные объекты, содержащие z-значения, путем интерполяции которых будет построен растр поверхности.

В классе Топо (Topo) допустимы девять типов входных данных: TopoPointElevation (Высоты точек), TopoContour (Изолинии), TopoStream (Водотоки), TopoSink (Локальные понижения), TopoBoundary (Граница), TopoLake (Озера), TopoCliff (Обрывы), TopoExclusion (Исключения), TopoCoast (Берег).

  • TopoPointElevation ([[входные_объекты,{поле}],...])

    Класс точечных объектов, представляющих поверхности высот.

    Параметр Поле (field) содержит высоты точек.

  • TopoContour ([[входные_объекты,{поле}],...])

    Класс линейных объектов, который представляет изолинии с высотами.

    Параметр Поле (Field) содержит высоты изолиний (горизонталей).

  • TopoStream ([входные_объекты,...])

    Класс линейных объектов, представляющий положение водотоков. Все дуги должны быть ориентированы вниз по течению. Класс пространственных объектов должен содержать только одиночные дуги водотоков.

  • TopoSink ([[входные_объекты,{поле}],...])

    Класс точечных объектов, который представляет известные топографические понижения. Инструмент Топо в Растр (Topo to Raster) не будет пытаться убрать из анализа точки, которые явно определены как локальные понижения.

    Параметр Поле (field) должен указывать поле, в котором хранятся высоты допустимых локальных понижений. Если выбрана опция NONE (НЕТ), используется только положение локального понижения.

  • TopoBoundary ([входные_объекты,...])

    Граница – это класс пространственных объектов, содержащий единственный полигон, который представляет внешний контур выходного растра. Ячейки в выходном растре, которые лежат за этой границей, будут иметь значение Нет данных (NoData). Эта опция может быть использована для удаления водных объектов вдоль береговых линий до построения выходного растра.

  • TopoLake ([входные_объекты,...])

    Класс полигональных объектов, который задает местоположение озер. Всем ячейкам выходного растра, попадающим внутрь озера, будет присвоено минимальное значение высоты из всех высот всех ячеек, расположенных вдоль береговой линии.

  • TopoCliff ([входные_объекты,...])

    Класс линейных объектов, представляющий обрывы. Линейные объекты-обрывы должны иметь направление, при этом левая стороны линии должны соответствовать низкой стороне обрыва, а правая – высокой.

  • TopoExclusion ([входные_объекты,...])

    Класс полигональных объектов, содержащий области, в которых входные данные будут игнорироваться. Такие полигоны позволяют исключить некоторые данные высот из процесса интерполяции. Чаще всего они используются для исключения данных, связанных с дамбами и мостами. При этом возможна интерполяция нижележащей долины со связанной структурой речного бассейна.

  • TopoCoast ([входные_объекты,...])

    Класс полигональных объектов, содержащий очертания береговой линии. Ячейки в завершающем выходном растре, расположенные вне этих полигонов, принимают значение меньшее, чем указанный пользователем минимальный предел высоты.

Классы пространственных объектов типа Высоты точек (PointElevation), Изолинии (Contour) и Локальные понижения (Sink) могут иметь поле, содержащее z-значения. Параметр поля не применяется для входных типов Граница (Boundary), Озера (Lake), Обрывы (Cliff), Берег (Coast), Исключения (Exclusion) и Водотоки (Stream).

TopoInput
cell_size
(дополнительно)

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

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

Analysis Cell Size
extent
(дополнительно)

Класс Экстент (Extent) определяет экстент выходного набора растровых данных.

Интерполяция будет выполняться до границ по x и y, и ячейками вне этого экстента будет присвоено значение Нет данных (NoData). Для лучших результатов интерполяции вдоль краев выходного растра, границы по x и y должны быть меньше, чем экстент входных данных, по крайней мере, на 10 ячеек с каждой стороны.

Форма класса Экстент (Extent):

  • Extent (XMin, YMin, XMax, YMax)

    , где:

    • XMin – По умолчанию это наименьшая из всех входных координат X.
    • YMin – По умолчанию это наименьшая из всех входных координат Y.
    • XMax – По умолчанию это наибольшая из всех входных координат X.
    • YMax – По умолчанию это наибольшая из всех входных координат Y.

Экстент по умолчанию – это наибольший из всех экстентов входных данных объектов.

Extent
Margin
margin
(дополнительно)

Расстояние в ячейках, определяющее на сколько будет расширена интерполяция за пределы заданного выходного экстента и границы.

Значение должно быть больше или равно нулю. Значение по умолчанию равно 20.

Если наборы пространственных объектов Экстент (Extent) и Граница (TopoBoundary) совпадают с границами входных данных (по умолчанию), то значения вдоль краев ЦМР, полученные в результате интерполяции, не будут в точности совпадать с краями смежных ЦМР. Это происходит из-за того, что они интерполируются с использованием только половины точек, которые задействованы в интерполяции для точек, расположенных в середине растра и окруженных входными данными со всех сторон. Опция Поля (Margin) позволяет использовать при интерполяции входные данные, расположенные за этими границами.

Long
minimum_z_value
(дополнительно)

Минимальное z-значение, используемое в интерполяции.

Значение по умолчанию на 20 процентов ниже минимального из всех входных значений.

Double
maximum_z_value
(дополнительно)

Максимальное z-значение, используемое в интерполяции.

Значение по умолчанию на 20 процентов выше максимального из всех входных значений.

Double
enforce
(дополнительно)

Тип применяемого принудительного заполнения.

Может быть определена опция принудительного заполнения, которая попытается удалить все локальные понижения или депрессии с целью создания гидрологически корректной ЦМР. Если точки локальных понижений были однозначно определены в качестве входных топографических объектов, эти депрессии не будут заполняться.

  • Принудительное заполнение (ENFORCE) Алгоритм предпримет попытку удалить все выявленные локальные понижения, независимо от того, являются ли они действительными или ложными. Это значение используется по умолчанию.
  • Нет принудительного заполнения (NO_ENFORCE) Локальные понижения не будут заполнены.
  • Принудительное заполнение с учетом локальных понижений (ENFORCE_WITH_SINK) Точки, определенные в качестве локальных понижений во входных данных, принимаются за реальные топографические впадины и не меняются при работе инструмента. Все локальные понижения, не указанные во входных данных, будут считаться фиктивными, и алгоритм предпримет попытку их заполнить.Наличие более 8 000 фиктивных локальных понижений даст сбой в работе инструмента.
String
data_type
(дополнительно)

Доминирующий тип данных по высотам.

  • Изолинии (CONTOUR) Доминирующим типом входных данных будут горизонтали рельефа (изолинии по высотам). Это значение используется по умолчанию.
  • SPOT Доминирующим типом данных будут точки.

Определение подходящей выборки оптимизирует метод поиска, используемый при построении водотоков и водоразделов (линий хребтов).

String
maximum_iterations
(дополнительно)

Максимальное число повторений процесса интерполяции.

Число итераций должно быть больше нуля. Предлагаемое по умолчанию значение, равное 20, как правило, является адекватным как для изолиний, так и для линейных данных.

Значение, равное 30, удалит меньшее количество ложных локальных понижений. В редких случаях, более высокие значения (45-50) могут быть полезны для удаления большего количества локальных понижений или для определения большего количества водоразделов и водотоков. Процесс итерации останавливается для каждого расширения грида после достижения максимального числа итераций.

Long
roughness_penalty
(дополнительно)

Интегрированный квадрат второй производной как мера шероховатости поверхности.

Поправка за шероховатость должна быть больше или равна нулю. Начальный тип входных данных – изолинии (CONTOUR), значение по умолчанию равно нулю. Если основной тип входных данных – Точки (SPOT), значение по умолчанию равно 0,5. Значения больше этого, как правило, не рекомендуются.

Double
discrete_error_factor
(дополнительно)

Коэффициент ошибки разделения используется для настройки величины сглаживания при преобразовании входных данных в растр.

Значение должно быть больше нуля. Обычный диапазон значений для уравнивания – от 0,5 до 2, а значение по умолчанию равно 1. Более низкое значение приводит к меньшему сглаживанию данных; более высокие значения приводят к большему сглаживанию.

Double
vertical_standard_error
(дополнительно)

Размер случайной погрешности в z-значениях входных данных.

Значение должно быть больше или равно нулю. Значение по умолчанию равно нулю.

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

Double
tolerance_1
(дополнительно)

Этот допуск отражает точность и плотность точек высот по отношению к дренажным характеристикам поверхности.

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

Значение должно быть больше или равно нулю. Значение по умолчанию – 2,5, если тип данных – ИЗОЛИНИЯ (CONTOUR); и ноль, если тип данных – ТОЧКА (SPOT).

Double
tolerance_2
(дополнительно)

Этот допуск препятствует движению стока через нереально высокие барьеры.

Значение должно быть больше нуля. Значение по умолчанию равно 100, если тип данных – ИЗОЛИНИЯ (CONTOUR), и 200, если тип данных – ТОЧКА (SPOT).

Double
out_stream_features
(дополнительно)

Выходной класс линейных объектов водотоков и хребтов (водоразделов).

Линейные объекты создаются в начале процесса интерполяции. Он обеспечивает общую морфологию поверхности для интерполяции. Данный класс может использоваться для проверки корректности дренажной системы и морфологии рельефа путем сравнения с существующими данными по водотокам и водоразделам.

Полилинейные объекты имеют следующие коды:

  1. Входная линия водотока не выше скалы.
  2. Входная линия водотока выше скалы (водопад).
  3. Принудительное заполнение, очищающее случайный сток.
  4. Линия водотока, определенная по углу изолинии.
  5. Линия гребня, определенная по углу изолинии.
  6. Код не используется.
  7. Дополнительные условия данных линии водотока.
  8. Код не используется.
  9. Линия, указывающая на большой промежуток в данных высоты.
Feature Class
out_sink_features
(дополнительно)

Выходной класс точечных объектов, состоящий из оставшихся точек локальных понижений.

Это локальные понижения, которые не были заданы во входных векторных данных локальных понижений и не были удалены при выполнении принудительного заполнения. Настройка значений допусков, допуска tolerance_1 и допуска tolerance_2, может сократить число остаточных локальных понижений. Остающиеся локальные понижения зачастую указывают на ошибки во входных данных, которые не могут быть исправлены алгоритмом принудительного заполнения локальных понижений. Это может служить эффективным способом выявления неявных ошибок в высотах.

Feature Class
out_diagnostic_file
(дополнительно)

Выходной файл диагностики, в котором перечислены все использованные входные данные и параметры, а также количество локальных понижений, исправленных при каждом разрешении и при каждой итерации.

File
out_parameter_file
(дополнительно)

Выходной файл параметров, в котором перечислены все использованные входные данные и параметры и который может применяться с инструментом Топо в растр по параметрам (Topo to Raster by File) для повторного проведения интерполяции.

File
profile_penalty
(дополнительно)

Фактор шероховатости кривизны профиля ― это локальный адаптивный фактор, который может использоваться для частичного замещения общей кривизны.

В сочетании с изолиниями высокого качества его использование может привести к отличным результатам, но с плохими данными результаты могут быть нестабильны. Значение 0,0 соответствует отсутствию кривизны профиля (по умолчанию); 0,5 – средней кривизне профиля; 0,8 – наибольшей кривизне профиля. Значения, превышающие 0,8, настоятельно не рекомендуются в применении.

Double
out_residual_feature
(дополнительно)

Класс выходных точечных объектов для всех крупных остатков высоты с масштабом по локальной погрешности дискретизации.

Все измеренные остатки, имеющие значение больше 10, должны быть проверены на возможные ошибки во входных данных высоты и водотока. Крупномасштабные остатки указывают на конфликты между входными данными высоты и водотока. Они также могут быть связаны с ошибками, выявленными при автоматическом принудительном заполнении речного бассейна. Эти конфликты могут быть устранены при помощи дополнительной линии водотока и/или дополнительных значений высот точек, но сначала следует проверить и исправить ошибки в существующих входных данных. Большие остаточные смещения вне масштаба обычно указывают на ошибки в высотах входных данных.

Feature Class
out_stream_cliff_error_feature
(дополнительно)

Выходной точечный класс объектов для расположений, в которых возможно появление ошибок для водотоков и скал.

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

Точки кодируются следующим образом:

  1. Настоящий контур в сети данных водотока.
  2. Контур в сети водотока, закодированный в выходном растре.
  3. Контур в сети водотока через связующие озера.
  4. Точка рукавов.
  5. Водоток выше скалы (водопад).
  6. Точки, указывающие на множество точек выхода водотока из озер.
  7. Код не используется.
  8. Точки около скал, чья высота не соответствует направлению скал.
  9. Код не используется.
  10. Кольцевой рукав удален.
  11. Рукав без впадающего водотока.
  12. Растеризованный рукав в выходной ячейке, отличной от той, в которой разделилась линия водотока.
  13. Дополнительные условия ошибок обработки – индикатор очень сложных данных водотока.
Feature Class
out_contour_error_feature
(дополнительно)

Выходной точечный класс объектов для возможных ошибок, связанных с входными данными изолиний.

Изолинии с наклоном в высоте, в пять раз превышающим стандартное отклонение значений изолинии, как показано в выходном растре, заносятся в данный класс объектов. Изолинии, соединяющие другие изолинии с отличной высотой, отмечены в этом классе объектов кодом 1, это явный признак ошибки надписи изолинии.

Feature Class

Возвращено значение

ИмяОбъяснениеТип данных
out_surface_raster

Выходной растр интерполированной поверхности.

Raster

Пример кода

Топо в растр. Пример 1 (окно Python)

В этом примере создается гидрологически корректная поверхность по точечным, линейным и полигональным данным.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outTTR = TopoToRaster([TopoPointElevation([['spots', 'spot_meter']]), 
                       TopoContour([['contours', 'spot_meter']]),
                       TopoCliff(['cliff'])], 60, 
                       "#", "#", "#", "#", "NO_ENFORCE")
outTTR.save("C:/sapyexamples/output/ttrout.tif")
Топо в растр. Пример 2 (автономный скрипт)

В этом примере создается гидрологически корректный растр поверхности Grid из точечных, линейных и полигональных данных.

# Name: TopoToRaster_Ex_02.py
# Description: Interpolates a hydrologically correct surface 
#    from point, line, and polygon data.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inPointElevations = TopoPointElevation([['spots.shp', 'spot_meter'], 
                                        ['spots2.shp', 'elev']])
inBoundary = TopoBoundary(['boundary.shp'])
inContours = TopoContour([['contours.shp', 'spot_meter']])
inLake = TopoLake(['lakes.shp'])
inSinks = TopoSink([['sink1.shp', 'elevation'], ['sink2.shp', 'none']])
inStream = TopoStream(['streams.shp'])
inCliff = TopoCliff(['cliff.shp'])
inCoast = TopoCoast(['coast.shp'])
inExclusion = TopoExclusion(['ignore.shp'])
                    
inFeatures = ([inPointElevations, inContours, inLake, inStream, inBoundary, inSinks, inCliff, inCoast, inExclusion])

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute TopoToRaster
outTTR = TopoToRaster(inFeatures)

# Save the output 
outTTR.save("C:/sapyexamples/output/ttrout03")

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Требует Spatial Analyst или 3D Analyst
ArcGIS for Desktop Standard: Требует Spatial Analyst или 3D Analyst
ArcGIS for Desktop Advanced: Требует Spatial Analyst или 3D Analyst
9/11/2013