Подпись | Описание | Тип данных |
Входной растр поверхности | Входной растр поверхности. | Raster Layer |
Выходные полилинейные объекты | Выходной класс объектов, который будет содержать идентифицированные водотоки. | Feature Class |
Входные растровые или векторные данные понижений (Дополнительный) | Дополнительный набор данных, который идентифицирует реальные понижения. Понижения могут задаваться как растровым, так и векторным слоем. Если входные данные представлены растром, ячейки понижений должны содержать корректные значения, включая ноль, а области, которые не являются понижениями, должны иметь значения NoData. | Composite Geodataset |
Входной растр суммарных весов (Дополнительный) | Дополнительный входной растр, определяющий долю стока, которая участвует в суммарном стоке в каждой ячейке. Вес применяется тольок к суммарному стоку. Если не задано растра суммарных весов, каждой ячейке будет присвоен вес, равный единице, который используется по умолчанию. | Raster Layer |
Пороговое значение суммарного стока (Дополнительный) | Пороговое значение определяет, является ли данная ячейка частью водотока при определении общей площади ячеек, сток из которых осуществляется в эту ячейку. | Areal Unit |
Метод определения порядка водотоков (Дополнительный) | Определяет способ присвоения уникальных значений или порядковых номеров водотоков в выходной таблице атрибутов.
| String |
Упростить объекты (Дополнительный) | Указывает, будут ли выходные линии водотоков сглажены для более простой формы.
| Boolean |
Доступно с лицензией Spatial Analyst.
Краткая информация
Создает линейные объекты водотоков на основе входного растра поверхности без принудительного заполнения локальных понижений.
Использование
Входным растром поверхности может быть цифровая модель рельефа (ЦМР) без предварительно заполненных локальных понижений, или гидрологически корректная ЦМР. Инструмент не чувствителен к ошибкам в растре поверхности, которые интерпретируются как впадины или локальные понижения, в которых поток останавливается - принудительное заполнение не требуется.
Параметр Выходные объекты водотоков создает выходные полилинейные объекты, соответствующие линиям водотоков, где сток выше равен пороговому значению, указанному в параметре Пороговое значение суммарного стока (accumulation_threshold в Python). Если Пороговое значение суммарного стока не указано, по умолчанию для порогового значения вычисляется значение площади на основании размера входной растровой поверхности (0.2 процента от общего числа ячеек). Хотя направление потока и пороговое значение будут рассчитываться внутри для получения потоков, они не являются выходными данными. Чтобы получить растры направления стока и суммарного стока тем же методом, используйте инструмент Получить непрерывный поток.
Если поверхность, представленная входным растром, содержит истинные локальные понижения, их необходимо указать в параметре Входные растровые или векторные данные понижений (in_depressions_data в Python), чтобы идентифицировать ячейки, в которые поток может стекать, но не вытекать наружу. Информация о локальных понижениях может быть представлена либо классом объектов, либо растром. Класс объектов может быть точечный, полилинейный или полигональный.
Можно указать значение Входного растра суммарных весов (in_weight_raster в Python), чтобы применить к каждой ячейке вес при расчете суммарного стока в промежуточном шаге. Если применен растр весов, выберите подходящий порог суммарного стока в параметре Пороговое значение суммарного стока (accumulation_threshold в Python).
Укажите Пороговое значение суммарного стока (accumulation_threshold в Python) которое отражает сложность потока по поверхности в пределах области изучения или соответствует размеру области сбора, которую вы обозначаете. Например, если пороговое значение установлено на 20 гектаров, то выше по течению должна быть область ячеек, площадью 20 и более гектаров, из которых осуществляется сток, и только в этом случае будет определен выходной растр водотока.
Если используются параметры Входные растровые или векторные данные понижений, Входной растр суммарных весов или данные в параметрах среды, значение Пороговое значение суммарного стока будет пересчитано на основании площади пересечения входных данных. Но если вы указали параметр Пороговое значение суммарного стока, он не пересчитывается из-за изменений во входных данных. Та же ситуация может возникнуть при запуске инструмента в пакетном режиме, с указанием значения Входного растра поверхности как пакетного параметра, в котором Пороговое значение суммарного стока будет вычислено по первой входной поверхности и не будет меняется при добавлении остальных растровых слоев к пакетной обработке.
Используйте параметр Метод идентификации водотоков для назначения уникального идентификатора секции водотока между пересечениями или порядка сегментов водотоков. Опция Константа установлена по умолчанию и всем водотокам будет назначено одинаковое значение 1. Если задано Уникальное, то каждой секции водотока между пересечениями будет присвоено уникальное значение. Дополниельные методы определения порядка водотоков - Стахлер, Шреве и Хак. По методу Стахлера порядок водотока увеличивается, когда пересекаются водотоки одного порядка. По методу Шреве порядок водотоков определяется в зависимости от амплитуды. Всем сегментам, не имеющим притоков, присваивается величина (порядок), равная единице. Величины суммируются при движении вниз по склону. При слиянии двух сегментов, их порядки складываются, а новое значение присваивается образуемому сегменту, расположенному ниже по склону. Порядок водотоков по Хаку увеличивает порядок водотока на единицу по отношению к порядку водотока, в который он стекает. Главному руслу реки назначается амплитуда 1, водотокам, впадающим в него, присваивается значение 2 и так далее.
Когда включена опция Упростить объекты (simplify в Python), характерные линии выходного водотока будут упрощены за счет удаления вершин с использованием алгоритма Дугласа-Пекера с допуском sqrt(0,5) * размер ячейки. Алгоритм сохраняет критические точки путем выявления и удаления относительно излишних вершин.
Ячейки со значением NoData всегда рассматриваются каккак шум и по определению не могут иметь связанное значение. Инструмент будет игнорировать эти ячейки при идентификации направления самого крутого уклона в окрестности, а также определении направления стока и суммарного стока.
Если параметр Сток из крайних ячеек направлен наружу не отмечен (force_flow = "NORMAL" в Python), сток из ячейки по ребру растра поверхности будет осуществляться к внутренней ячейке с максимальным снижением в z-значении. Если снижение меньше или равно нулю, сток из ячейки будет «вытекать» с растра поверхности.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Ссылки:
Douglas, David H., and Thomas K. Peucker. 1973. "Algorithms for the Reduction of the Number of Points Required to Represent a Digitised Line or its Caricature." The Canadian Cartographer, 10(2): 112–122.
Ehlschlaeger, C. R. 1989. "Using the AT Search Algorithm to Develop Hydrologic Models from Digital Elevation Data." International Geographic Information Systems (IGIS) Symposium 89: 275-281.
Hack, J. T. 1957. "Studies of Longitudinal Stream Profiles in Virginia and Maryland." Geological Survey Professional Paper 294: 45–95.
Jenson, S. K., and Domingue, J. O. 1988. "Extracting Topographic Structure from Digital Elevation Data for Geographic Information System Analysis." Photogrammetric Engineering and Remote Sensing 54 (11): 1593–1600.
Metz, M., Mitasova, H., & Harmon, R. S. 2011. "Efficient extraction of drainage networks from massive, radar-based elevation models with least cost path search." Hydrology and Earth System Sciences 15(2): 667-678.
Shreve, R. 1966. "Statistical Law of Stream Numbers" Journal of Geology.74: 17-35
Strahler, A. N. 1957. "Quantitative analysis of watershed geomorphology" Transactions of the American Geophysical Union8 (6): 913-920
Параметры
DeriveStreamAsLine(in_surface_raster, out_stream_features, {in_depressions_data}, {in_weight_raster}, {accumulation_threshold}, {stream_designation_method}, {simplify})
Имя | Описание | Тип данных |
in_surface_raster | Входной растр поверхности. | Raster Layer |
out_stream_features | Выходной класс объектов, который будет содержать идентифицированные водотоки. | Feature Class |
in_depressions_data (Дополнительный) | Дополнительный набор данных, который идентифицирует реальные понижения. Понижения могут задаваться как растровым, так и векторным слоем. Если входные данные представлены растром, ячейки понижений должны содержать корректные значения, включая ноль, а области, которые не являются понижениями, должны иметь значения NoData. | Composite Geodataset |
in_weight_raster (Дополнительный) | Дополнительный входной растр, определяющий долю стока, которая участвует в суммарном стоке в каждой ячейке. Вес применяется тольок к суммарному стоку. Если не задано растра суммарных весов, каждой ячейке будет присвоен вес, равный единице, который используется по умолчанию. | Raster Layer |
accumulation_threshold (Дополнительный) | Пороговое значение определяет, является ли данная ячейка частью водотока при определении общей площади ячеек, сток из которых осуществляется в эту ячейку. | Areal Unit |
stream_designation_method (Дополнительный) | Определяет способ присвоения уникальных значений или порядковых номеров водотоков в выходной таблице атрибутов.
| String |
simplify (Дополнительный) | Указывает, будут ли выходные линии водотоков сглажены для более простой формы.
| Boolean |
Пример кода
В этом примере показано, как использовать DeriveStreamAsLine для создания объектов линий водотоков на основе входной растровой поверхности без принудительного заполнения локальных понижений.
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapy/examples/data"
DeriveStreamAsLine("surface.tif", "C:/sapyexamples/output/streams.shp", "", "", "", "")
В этом примере создаются объекты линий водотоков на основе входной растровой поверхности без принудительного заполнения локальных понижений. Водотоки начинаются в местоположениях, где суммарный сток собирается с площади в 2 и более гектара.
# Name: DeriveStreamAsLine_standalone.py
# Description: Generates stream lines from an input surface raster without prior sink filling.
# The streams start from locations where the accumulated flow is collected from an area
# larger or equal to 2 Hectares considering depressions (polygons).
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Set the analysis environments
env.workspace = "C:/sapyexamples/data"
# Set the local variables
in_surface_raster = "surface.tif"
in_depressions_data = "depressions.shp"
in_weight_raster = ""
out_streams = "C:/sapyexamples/output/streams.shp"
area_threshold = "2 Hectares"
stream_designation_method = "CONSTANT"
# Execute
DeriveStreamAsLine(in_surface_raster, out_streams, in_depressions_data,
in_weight_raster, area_threshold, stream_designation_method)
Параметры среды
Информация о лицензиях
- Basic: Обязательно Spatial Analyst
- Standard: Обязательно Spatial Analyst
- Advanced: Обязательно Spatial Analyst