Обратное геокодирование (Геокодирование)

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

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

Для выполнения операций геокодирования с помощью ArcGIS World Geocoding Service необходима учетная запись организации ArcGIS, при этом расходуются кредиты. Учетная запись организации должна иметь достаточное количество кредитов для выполнения всего запроса на геокодирование.

Примечание:

В верхней части инструмента доступна оценка кредитов, если активным является портал ArcGIS Online, а входным локатором адресов - ArcGIS World Geocoding Service.

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

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

  • Выходной класс объектов будет содержать такое же количество записей, что и входной класс объектов. Дополнительные поля, содержащие полученные адреса или места, добавляются к классу пространственных объектов. Имена полей включают префикс REV_. Если соответствующее место или адрес невозможно найти, поля будут содержать пустые значения.

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

  • Если для точки во входном классе объектов не удалось сопоставить место или адрес, это значит, что в локаторе нет объектов, которые можно связать с входной точкой. Ниже приведены наиболее распространенные причины для несопоставленных точек:

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

  • Для обратного геокодирования класса объектов с помощью ArcGIS World Geocoding Service необходима подписка ArcGIS Online для организаций.

Параметры

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

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

Feature Layer
Входной локатор адресов

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

Address Locator
Выходной класс пространственных объектов

Выходной класс объектов.

Примечание:

Сохранение результатов в формате шейп-файлов не поддерживается в связи с ограничениями шейп-файлов.

Feature Class
Тип выходных адресных данных
(Дополнительный)
Прежние версии:

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

String
Расстояние поиска
Прежние версии:

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

Linear Unit
Тип объекта
(Дополнительный)

Задает возможные типы возвращаемых сопоставлений. Можно выбрать как одно, так и несколько значений. Если выбрано единичное значение, допуск поиска для типа входного объекта – 500 метров. Если включено несколько значений, будут применены расстояния поиска, указанные в таблице иерархии типов объектов. См. в разделе типы объектов более подробно о параметре Тип объекта для обратного геокодирования.

Этот параметр не поддерживается всеми видами локаторов.

  • СубадресСопоставление будет ограничено уличным адресом на основании точек, представляющих местоположения субадреса домов и строений. Для этой опции необходим локатор, созданный в ArcGIS Pro 2.8 или позднее и ArcGIS Enterprise 10.8.1 или позднее, если он опубликован как сервис.
  • Адрес точкиСопоставление будет ограничено уличным адресом на основании точек, представляющих местоположения домов и строений.
  • УчастокСопоставление будет ограничено участком земли, который считается реальным владением и может включать один или несколько домов и других строений. Этот тип сопоставления обычно имеет адрес и связанный идентификационный номер участка.
  • УлицаСопоставление будет ограничено уличным адресом, который отличается от Point Address, так как номер дома интерполируется на основе диапазона номеров. Совпадения Street Address включают диапазон номеров домов для сопоставленного отрезка улицы, а не интерполированное значение номера дома.
  • Пересечение улицСопоставление будет ограничено уличным адресом, состоящим из перекрестка, города и, дополнительно, штата и почтового индекса. Он извлекается из базовых данных Street Address, например, Redlands Blvd & New York St, Redlands, CA, 92373.
  • Название улицыСовпадение будет ограничено уличным адресом, похожим на Street Address, но без номеров домов и с административным делением и почтовым индексом, например, W Olive Ave, Redlands, CA 92373.
  • МестностьСопоставление будет ограничено названием местоположения, обозначающее населенный пункт.
  • ПочтовыйСопоставление будет ограничено почтовым индексом. Базовые данные – это почтовый индекс, например, 90210 USA.
  • Точка интересаСопоставление будет ограничено точкой интереса. Базовые данные могут состоять из имен административных районов, достопримечательностей и географических объектов, например, Starbucks.
  • Указатель расстоянияСопоставление будет ограничено адресом улицы, который представляет собой линейное расстояние вдоль улицы, обычно, в километрах или милях, от указанной исходной точки, например, Mile 25 I-5 N, San Diego, CA.
String
Предпочитаемый тип местоположения
(Дополнительный)

Задает предпочитаемую выходную геометрию для сопоставления Точечного адреса. Варианты этого параметра - сторона улицы, которую можно использовать для построения маршрутов, либо местоположение, находящееся на крыше здания либо в центре земельного участка. Если предпочитаемое местоположение не присутствует в данных, вместо него будет возвращено местоположение по умолчанию. Для результатов геокодирования с Addr_type=PointAddress, атрибутивные значения x,y соответствуют координатам адреса вдоль улицы, а значения DisplayX и DisplayY описывают координаты верхней точки крыши или центроида здания.

Этот параметр не поддерживается всеми видами локаторов.

  • Местоположение адресаБудет возвращена геометрия для результатов геокодирования, которая представляет местоположения адреса таких элементов, как верхняя точка крыши, центроид здания или входная дверь.
  • Местоположение маршрутаБудет возвращена геометрия для результатов геокодирования, которая представляет местоположения, близкие к стороне улицы и использующиеся для построения маршрутов транспорта. Это значение по умолчанию
String

arcpy.geocoding.ReverseGeocode(in_features, in_address_locator, out_feature_class, {address_type}, search_distance, {feature_type}, {location_type})
ИмяОписаниеТип данных
in_features

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

Feature Layer
in_address_locator

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

Address Locator
out_feature_class

Выходной класс объектов.

Примечание:

Сохранение результатов в формате шейп-файлов не поддерживается в связи с ограничениями шейп-файлов.

Feature Class
address_type
(Дополнительный)
Прежние версии:

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

String
search_distance
Прежние версии:

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

Linear Unit
feature_type
[feature_type,...]
(Дополнительный)

Задает возможные типы возвращаемых сопоставлений. Можно выбрать как одно, так и несколько значений. Если выбрано единичное значение, допуск поиска для типа входного объекта – 500 метров. Если включено несколько значений, будут применены расстояния поиска, указанные в таблице иерархии типов объектов. См. в разделе типы объектов более подробно о параметре feature_type для обратного геокодирования.

Этот параметр не поддерживается всеми видами локаторов.

  • SUBADDRESSСопоставление будет ограничено уличным адресом на основании точек, представляющих местоположения субадреса домов и строений. Для этой опции необходим локатор, созданный в ArcGIS Pro 2.8 или позднее и ArcGIS Enterprise 10.8.1 или позднее, если он опубликован как сервис.
  • POINT_ADDRESSСопоставление будет ограничено уличным адресом на основании точек, представляющих местоположения домов и строений.
  • PARCELСопоставление будет ограничено участком земли, который считается реальным владением и может включать один или несколько домов и других строений. Этот тип сопоставления обычно имеет адрес и связанный идентификационный номер участка.
  • STREET_ADDRESSСопоставление будет ограничено уличным адресом, который отличается от POINT_ADDRESS, так как номер дома интерполируется на основе диапазона номеров. Сопоставления STREET_ADDRESS включают диапазон номеров домов для соответствующего отрезка улицы, а не интерполированное значение номера дома.
  • STREET_INTERSECTIONСопоставление будет ограничено уличным адресом, состоящим из перекрестка, города и, дополнительно, штата и почтового индекса. Он извлекается из базовых данных STREET_ADDRESS, например, Redlands Blvd & New York St, Redlands, CA, 92373.
  • STREET_NAMEСопоставление будет ограничено адресом, похожим похожий на STREET_ADDRESS, но без номеров домов, а также административным округом и, дополнительно, почтовым индексом, например, W Olive Ave, Redlands, CA 92373.
  • LOCALITYСопоставление будет ограничено названием местоположения, обозначающее населенный пункт.
  • POSTALСопоставление будет ограничено почтовым индексом. Базовые данные – это почтовый индекс, например, 90210 USA.
  • POINT_OF_INTERESTСопоставление будет ограничено точкой интереса. Базовые данные могут состоять из имен административных районов, достопримечательностей и географических объектов, например, Starbucks.
  • DISTANCE_MARKERСопоставление будет ограничено адресом улицы, который представляет собой линейное расстояние вдоль улицы, обычно, в километрах или милях, от указанной исходной точки, например, Mile 25 I-5 N, San Diego, CA.
String
location_type
(Дополнительный)

Задает предпочитаемую выходную геометрию для сопоставления POINT_ADDRESS. Варианты этого параметра - ROUTING_LOCATION, сторона улицы, которую можно использовать для построения маршрутов, либо ADDRESS_LOCATION, местоположение, находящееся на крыше здания или в центре земельного участка. Если предпочитаемое местоположение отсутствует в данных, вместо него будет возвращено местоположение ROUTING_LOCATION по умолчанию. Для результатов геокодирования с Addr_type = "PointAddress", атрибутивные значения x,y соответствуют координатам адреса вдоль улицы, а значения DisplayX и DisplayY описывают координаты верхней точки крыши или центроида здания. См. справочную онлайн-систему REST API для получения подробной информации о параметре locationType для reverseGeocode.

Этот параметр не поддерживается всеми видами локаторов.

  • ADDRESS_LOCATIONБудет возвращена геометрия для результатов геокодирования, которая представляет местоположения адреса таких элементов, как верхняя точка крыши, центроид здания или входная дверь.
  • ROUTING_LOCATIONБудет возвращена геометрия для результатов геокодирования, которая представляет местоположения, близкие к стороне улицы и использующиеся для построения маршрутов транспорта. Это значение по умолчанию
String

Пример кода

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

В следующем скрипте окна Python показано, как используется функция ReverseGeocode в режиме прямого запуска.

import arcpy

arcpy.env.workspace = "C:/data/locations.gdb"

# Set local variables:
input_feature_class = "customers"
address_locator = "e:/StreetMap/data/Street_Addresses_US.loc"
result_feature_class = "customers_with_address"

arcpy.geocoding.ReverseGeocode(input_feature_class, address_locator, 
                               result_feature_class, "ADDRESS")
ReverseGeocode, пример 2 (автономный скрипт)

В следующем скрипте Python показано, как использовать функцию ReverseGeocode в автономном скрипте.

# Description: 
# Reverse Geocode customer point locations using a locator created with
# the Create Locator tool.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "c:/data/Atlanta.gdb"

# Set local variables
input_features = "MyCustomers"
locator = "c:/data/Atlanta/Atlanta_StreetAddress.loc"
reverse_output = "MyCustomers_Reverse_Streets"
addr_type = "ADDRESS"
feature_type = "STREET_INTERSECTION;STREET_ADDRESS"
location_type = "ROUTING_LOCATION"

# Run ReverseGeocode
arcpy.geocoding.ReverseGeocode(input_features, locator, reverse_output, 
                               addr_type, None, feature_type, location_type)
ReverseGeocode, пример 3 (автономный скрипт)

Следующий скрипт Python демонстрирует использование функции ReverseGeocode c ArcGIS World Geocoding Service в автономном скрипте.

Примечание:

Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.

# Description: 
# Reverse Geocode customer point locations using the ArcGIS World Geocoding Service.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "c:/data/Atlanta.gdb"

# Set local variables
input_features = "MyCustomers"
locator = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
reverse_output = "MyCustomers_Reverse_Streets"
addr_type = "ADDRESS"
feature_type = "STREET_INTERSECTION;STREET_ADDRESS"
location_type = "ROUTING_LOCATION"

# Run ReverseGeocode
arcpy.geocoding.ReverseGeocode(input_features, locator, reverse_output, 
                               addr_type, None, feature_type, location_type)

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

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