Сегментация методом среднего сдвига (Image Analyst)

Доступно с лицензией Image Analyst.

Доступно с лицензией Spatial Analyst.

Краткая информация

Группирует по сегментам сходные пикселы, у которых похожи спектральные характеристики.

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

  • Входными данными может быть любой поддерживаемый Esri растр с любой глубиной пикселов.

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

  • Для достижения оптимального результата, используйте вкладку Символы в свойствах набора данных для интерактивной растяжки вашего Входного растра, чтобы объекты, которые вы хотите выделить в сегмент, были отчетливо видны. Затем используйте оптимальные настройки растровой функции Растяжка для обработки вашего изображения для получения оптимального результата и укажите Выходной тип пиксела как 8 bit unsigned на вкладке Общие.

    Выходной слой из ранее выполненной функции Растяжка может быть Входным растром инструмента Сегментация методом среднего сдвига.

Параметры

ПодписьОписаниеТип данных
Входной растр

Набор растровых данных для сегментации. Это может быть мультиспектральное изображение или изображение в оттенках серого.

Mosaic Layer; Raster Layer
Спектральное разрешение
(Дополнительный)

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

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

Double
Пространственное разрешение
(Дополнительный)

Уровень важности для близости между объектами в изображении.

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

Long
Минимальный размер сегмента в пикселах
(Дополнительный)

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

Единицы измерения в пикселах.

Long
Индексы каналов
(Дополнительный)

Каналы, которые будут использоваться для сегментации изображения, разделенные пробелами. Если не указаны индексы каналов, они будут определены по следующим критериям:

  • Если растр трех-канальный, эти три канала и будут использованы
  • Если растр содержит более 3х каналов, инструмент назначит красный, зеленый и синий каналы в соответствии со свойствами растра.
  • Если красный, зеленый и синий каналы не идентифицируются свойствами набора растровых данных, будут использованы каналы 1, 2 и 3.

Порядок каналов не влияет на результат.

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

String
Максимальный размер сегмента в пикселах
(Дополнительный)

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

Единицы измерения в пикселах.

Значением по умолчанию является -1, что означает отсутствие ограничений на размер сегмента.

Long

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

ПодписьОписаниеТип данных
Выходной набор растровых данных

Укажите имя и расширение выходного набора данных.

Если в качестве входных данных использовалось мультиспектральное изображение, выходными данными будет 8-битовое RGB-изображение. Если в качестве входных данных использовалось изображение в оттенках серого, выходными данными будет 8-битовое изображение в оттенках серого.

Raster

SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail}, {min_segment_size}, {band_indexes}, {max_segment_size})
ИмяОписаниеТип данных
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
(Дополнительный)

Каналы, которые будут использоваться для сегментации изображения, разделенные пробелами. Если не указаны индексы каналов, они будут определены по следующим критериям:

  • Если растр трех-канальный, эти три канала и будут использованы
  • Если растр содержит более 3х каналов, инструмент назначит красный, зеленый и синий каналы в соответствии со свойствами растра.
  • Если красный, зеленый и синий каналы не идентифицируются свойствами набора растровых данных, будут использованы каналы 1, 2 и 3.

Порядок каналов не влияет на результат.

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

String
max_segment_size
(Дополнительный)

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

Единицы измерения в пикселах.

Значением по умолчанию является -1, что означает отсутствие ограничений на размер сегмента.

Long

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

ИмяОписаниеТип данных
out_raster_dataset

Укажите имя и расширение выходного набора данных.

Если в качестве входных данных использовалось мультиспектральное изображение, выходными данными будет 8-битовое RGB-изображение. Если в качестве входных данных использовалось изображение в оттенках серого, выходными данными будет 8-битовое изображение в оттенках серого.

Raster

Пример кода

SegmentMeanShift, пример 1 (окно Python)

В данном примере создаются выходные данные с минимальным размером сегмента в 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, пример 2 (автономный скрипт)

В данном примере выполняется 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")

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

  • Basic: Обязательно Image Analyst или Spatial Analyst
  • Standard: Обязательно Image Analyst или Spatial Analyst
  • Advanced: Обязательно Image Analyst или Spatial Analyst

Связанные разделы