Доступно с лицензией Image Analyst.
Доступно с лицензией Spatial Analyst.
Сводка
Группирует по сегментам сходные пикселы, у которых похожи спектральные характеристики.
Использование
Входными данными может быть любой поддерживаемый Esri растр с любой глубиной пикселов.
Параметр Индекс каналов представляет собой список из трех каналов, разделенных пробелом.
Для достижения оптимального результата, используйте вкладку Символы в свойствах набора данных для интерактивной растяжки вашего Входного растра, чтобы объекты, которые вы хотите выделить в сегмент, были отчетливо видны. Затем используйте оптимальные настройки растровой функции Растяжка для обработки вашего изображения для получения оптимального результата и укажите Выходной тип пиксела как 8 bit unsigned на вкладке Общие.
Выходной слой из ранее выполненной функции Растяжка может быть Входным растром инструмента Сегментация методом среднего сдвига.
Синтаксис
SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail}, {min_segment_size}, {band_indexes}, {max_segment_size})
Parameter | Объяснение | Тип данных |
in_raster | Набор растровых данных для сегментации. Это может быть мультиспектральное изображение или изображение в оттенках серого. | Mosaic Layer; Raster Layer |
spectral_detail (Дополнительный) | Уровень важности для спектральных различий между объектами в вашем изображении. Действительные значения находятся в диапазоне от 1.0 до 20.0. Можно использовать более высокое значение, когда есть объекты, которые вы хотите классифицировать отдельно, но которые имеют схожие спектральные характеристики. При использовании малых значений создаются растры с более плавным спектром. Например, при высоком качестве спектральных данных на изображении леса вы сможете более четко увидеть разницу между разными породами деревьев. | Double |
spatial_detail (Дополнительный) | Уровень важности для близости между объектами в вашем изображении. Действительные значения находятся в диапазоне от 1.0 до 20. Более высокое значение подходит для сцены, в которой интересующие вас объекты малы и сгруппированы вместе. При использовании малых значений создаются растры с более плавными пространственными характеристиками. Например, на снимке города можно использовать меньшее значение пространственного разрешения для асфальта, а для разделения на отдельные классы объектов зданий и дорог использовать более высокое значение. | Long |
min_segment_size (Дополнительный) | Минимальный размер сегмента. Объединяет сегменты, которые будут меньше этого размера, с наиболее подходящим соседним сегментом. Напрямую связан с минимальной единицей картографирования вашего проекта. Единицы измерения в пикселах. | Long |
band_indexes (Дополнительный) | Каналы, которые будут использоваться для сегментации изображения, разделенные пробелами. Если не указаны индексы каналов, они будут определены по следующим критериям:
Порядок каналов не влияет на результат. Выберите каналы, обеспечивающие наибольшие различия между между интересующими вас объектами. | String |
max_segment_size (Дополнительный) | Максимальный размер сегмента. Сегменты больше указанного размера будут разделены. Используйте этот параметр для предотвращения артефактов в выходном растре, появляющихся от больших сегментов. Единицы измерения в пикселах. Значением по умолчанию является -1, что означает отсутствие ограничений на размер сегмента. | Long |
Значение отраженного сигнала
Name | Объяснение | Тип данных |
out_raster_dataset | Укажите имя и расширение выходного набора данных. Если в качестве входных данных использовалось мультиспектральное изображение, выходными данными будет 8-битовое RGB-изображение. Если в качестве входных данных использовалось изображение в оттенках серого, выходными данными будет 8-битовое изображение в оттенках серого. | Raster |
Пример кода
В данном примере создаются выходные данные с минимальным размером сегмента в 20 пикселов, и используются ближний инфракрасный, красный и зеленый каналы.
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
seg_raster = SegmentMeanShift("c:/test/moncton.tif", "15", "10",
"20", "4 3 2")
seg_raster.save("c:/test/moncton_seg.tif")
В данном примере выполняется SegmentMeanShift для создания выходных данных с минимальным размером сегмента в 20 пикселов, и используются ближний инфракрасный, красный и зеленый каналы.
# Import system modules
import arcpy
from arcpy.ia import *
"""
Usage: SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail},
{min_segment_size}, {band_indexes})
"""
# Set local variables
inRaster = "c:/test/moncton.tif"
spectral_detail = "14.5"
spatial_detail = "10"
min_segment_size = "20"
band_indexes = "4 3 2"
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
seg_raster = SegmentMeanShift(inRaster, spectral_detail, spatial_detail,
min_segment_size, min_segment_size)
# Save the output
seg_raster.save("c:/output/moncton_seg.tif")
Environments
Информация о лицензиях
- Basic: Требуется Image Analyst or Spatial Analyst
- Standard: Требуется Image Analyst or Spatial Analyst
- Advanced: Требуется Image Analyst or Spatial Analyst