リバース ジオコーディングの基礎

ポイント位置から読み取れる住所または地名を特定する処理をリバース ジオコーディングと呼びます。 リバース ジオコーディングを使用すると、最適化された距離の値に基づいて、近隣の住所、ストリート名、交点、場所、区画 (近郊地域、郡、州、郵便番号など) を特定することができます。 リバース ジオコーディングは、マップをクリックするか、フィーチャのコレクションを含むバッチ モードで対話的に行えます。

注意:

ArcGIS World Geocoding ServiceArcGIS World Geocoder、新しい ArcGIS StreetMap Premium などのロケーターや、[ロケーターの作成 (Create Locator)] ツールで作成されたロケーターでは、最適化された距離の値を使用します。

対話的なリバース ジオコードの結果

リバース ジオコードの詳細

リバース ジオコーディングの目的は、「この場所の情報」や、位置がフィーチャの真上にない場合は「この場所の近くにあるもの」といった問いに答えることです。 この問いに答えるために、リバース ジオコーディングでは、入力位置の近くにある最も関連性が高いフィーチャを、フィーチャ タイプの優先的な階層に基づいて返します。 一部の例外を除き、場所や住所を検索することで返されるのと同じフィーチャ タイプは、リバース ジオコーディングでも返すことができます。たとえば、[リバース ジオコード (Reverse Geocode)] ジオプロセシング ツールや、[この場所の情報] ツールを使用した対話的なリバース ジオコーディングを使用する場合などです。 位置がロケーターの構築に使用される参照データの範囲内であれば、その位置がストリートや場所から離れた場所にあっても、常に 1 つのフィーチャが返されます。 入力位置の近くにストリートがない場合、公園、大学、動物園、または空港など、大規模なエリア フィーチャが返されることがあります。 その位置がこのタイプのフィーチャの境界内にない場合は、郵便番号または行政区画 (市など) が返されます。

注意:

ロケーターのプライマリ参照データに、公園、動物園、都市、郵便番号などの大規模なフィーチャを表すポリゴン ジオメトリを使用すると、最適なリバース ジオコーディング結果が返されます。

階層は、優先順位の高いものから順番に、以下の表にまとめてあります。 別途明記されない限り、各フィーチャ タイプは、入力位置とフィーチャとの間の距離が検索許容値列で指定された許容範囲内である場合にのみ返されます。 階層テーブルに示す検索許容値は複数ロールのロケーターで使用され、単一のフィーチャ タイプをサポートする単一ロールのロケーターと、[フィーチャ ロケーターの作成 (Create Feature Locator)] ツールで作成されたロケーターは、500 メートルの検索距離を使用します。 [ロケーターの作成 (Create Locator)] ツールには、サブアドレス フィーチャを返す [ポイント住所] のように複数のフィーチャ タイプをサポートするロールや、StreetInt を返す「ストリート住所」ロールがあります。

注意:

StreetAddress のラベルの一致には、内挿された番地の値ではなく、一致するストリート セグメントの番地範囲が含まれます。 たとえば、「-117.196324,34.059217」という位置をリバース ジオコーディングすると、StreetAddress の一致がラベル 1001-1199 W Park Ave とともに返されます。 つまり、一致するセグメントには、1001 から 1199 までの番地の範囲が考えられるということです。

注意:

リバース ジオコード位置と交差する位置に、同じ x,y 値を持つ複数のサブアドレス フィーチャが互いに重なり合っている場合、Subaddress の候補のラベルには、スタック内のすべてのサブアドレス レコードのユニット番号の範囲が含まれます。 たとえば、「151.073457,-33.916374」という位置をリバース ジオコーディングすると、[サブアドレス] の一致がラベル 28 Hampden Rd, Unit 1-8 とともに返されます。 つまり、Unit 1、Unit 2、Unit 3... から Unit 8 までのユニット番号を持つ位置に、複数のサブアドレスが存在します。

注意:

ロケーターのプロパティで指定される「優先都市名」と「優先道路名」プロパティ オプションは、リバース ジオコードの結果に適用されます。

フィーチャ タイプ

フィーチャ タイプは、リバース ジオコーディングによって返される一致タイプを制限するために使用されます。 有効な値は、フィーチャ タイプの階層テーブルにリストされます。 リクエストには、単一または複数の値を含めることができます。 単一の値を含める場合、入力フィーチャ タイプの検索許容値は 500 メートルです。 複数の値が含まれる場合、フィーチャ タイプの「階層テーブル」で指定されているデフォルトの検索距離が適用されます。 ローカルのロケーターがリバース ジオコーディングに使用できる、サポートされているフィーチャ タイプを確認するには、[ジオコーディング オプション] ページの [ロケーターのプロパティ] ダイアログ ボックスの「リバース ジオコーディングでサポートされるフィーチャ」設定をご参照ください。

注意:

すべてのロケーターで、すべてのフィーチャ タイプがサポートされるわけではありません。

フィーチャ タイプ階層

階層は、優先順位の高いものから順番に、以下の表にまとめてあります。 別途明記されない限り、各フィーチャ タイプは、入力位置とフィーチャとの間の距離が検索許容値列で指定された許容範囲内である場合にのみ返されます。 階層テーブルに示す検索許容値は複数ロールのロケーターで使用され、単一のフィーチャ タイプをサポートする単一ロールのロケーターと、[フィーチャ ロケーターの作成 (Create Feature Locator)] ツールで作成されたロケーターは、500 メートルの検索距離を使用します。 [ロケーターの作成 (Create Locator)] ツールには、サブアドレス フィーチャを返す [ポイント住所] のように複数のフィーチャ タイプをサポートするロールや、[ストリート交点] を返す [ストリート住所] ロールがあります。

フィーチャ タイプ検索許容値コメント

StreetInt

10 メートル

交点は、ツールまたは [ロケーターのプロパティ] ダイアログ ボックスで [フィーチャ タイプ] [ストリート交点] が選択されている場合にのみ返されます。

StreetAddress」(最近接)、「DistanceMarker」または「StreetName

3 メートル

StreetName タイプの候補は、ツールまたは [ロケーターのプロパティ] ダイアログ ボックスで [フィーチャ タイプ] [ストリート名] が選択されている場合にのみ返されます。

POI」の重心

25 メートル

ポイントで表現できるビジネスまたはランドマーク。

パーセル」の重心

25 メートル

ポイントで表現できる土地区画。

サブアドレス

10 メートル

集合住宅や建物のフロアといったフィーチャを含む [サブアドレス] 候補は、複数のサブアドレスが同じ x,y 位置に存在し、次のいずれかの条件が満たされる場合には返されません。

  • サブアドレス単位は、連続する範囲に折りたたむことはできません。
  • サブアドレスには、異なるストリート住所、郵便番号、または行政区域値があります。

PointAddress

50 メートル

PointAddress の一致は、入力位置から 50 メートル以内にある場合でも、ストリートの反対側にある場合は返されません。

StreetAddress」(遠方)、「DistanceMarker」、または「StreetName

100 メートル

StreetName タイプの候補は、ツールまたは [ロケーターのプロパティ] ダイアログ ボックスで [フィーチャ タイプ] [ストリート名] が選択されている場合にのみ返されます。

POI」のエリア

境界内

大規模な公園や大学など、面積で表現できるビジネスまたはランドマーク。 ロケーターを構築するために使用されるデータでサポートされていない限り、使用できません。

パーセル」のエリア

境界内

パーセルや課税ロットなど、面積で表現できる土地区画。 ロケーターを構築するために使用されるデータでサポートされていない限り、使用できません。

郵便」または「ローカル」のエリア

境界内

入力位置が複数の境界と交差している場合は、面積が最も小さいフィーチャが返されます。

フィーチャ タイプ階層の視覚化

以下の図で、リバース ジオコーディングのフィーチャ タイプ階層を視覚化します。

次の図は一般的なマップの一部であり、ここでリバース ジオコーディングのためにポイントをクリックまたは追加できます。

リバース ジオコーディングの例の位置を示す、ストリート マップの図

次の図は、同じマップでリバース ジオコーディングで利用可能なフィーチャをハイライト表示した状態を示します。青いドットは StreetInt フィーチャ、ピンクのドットは POI 重心、緑のドットは PointAddress フィーチャ、赤のラインはストリート セグメント、茶色のポリゴンは POI エリア フィーチャを表します。

リバース ジオコーディングが可能なフィーチャがハイライト表示されます。

次の図では、「階層テーブル」の検索許容値に基づいて、フィーチャの周辺にバッファーが作成されています。これは、さまざまなリバース ジオコーディングの入力位置に対して返される一致タイプを示します。 画像内の入力位置に対して予期される一致については、以下の例をご参照ください。

リバース ジオコーディングのさまざまなフィーチャ タイプの検索許容値を示すバッファー

上の図の番号吹出しには、同じ番号で対応する例があります。

入力位置の例 1: POI 重心の一致を返す

この例 (上の画像の吹出し 1 に対応) では、入力位置が POI フィーチャおよび PointAddress フィーチャの両方の検索許容値内にあるが、優先度が高い POI 重心への一致が返されます。

入力位置の例 2: POI エリアの一致を返す

この例 (上の画像の吹出し 2 に対応) では、入力位置は POI エリア フィーチャの範囲内にあるため、POI の一致が返されます。

入力位置の例 3: StreetAddress の一致を返す

この例 (上の画像の吹出し 3 に対応) では、入力位置は POI エリア フィーチャおよび StreetAddress バッファーと交差します。 POI エリアよりも優先度が高いため、StreetAddress の一致が返されます。

入力位置の例 4: PointAddress の一致を返す

この例 (上の画像の吹出し 4 に対応) では、入力位置は PointAddress フィーチャの検索許容値内にあるため、PointAddress の一致が返されます。

入力位置の例 5: ローカル一致を返す

この例 (上の画像の吹出し 5 に対応) では、入力位置は住所および POI フィーチャの許容範囲外なので、その位置が交差する (面積が) 最小の行政区域または郵便番号境界フィーチャとの一致が返されます。 この場合、Live Oak Canyon の近傍との一致が返されます。

入力位置の例 6: StreetAddress の一致を返す

この例 (上の画像の吹出し 6 に対応) では、入力位置は StreetInt フィーチャと StreetAddress フィーチャの両方の許容範囲内にあります。 StreetInt の優先度は StreetAddress よりも高いですが、StreetAddress の一致が返されます。 これは、交点の一致は [フィーチャ タイプ] パラメーターで [ストリート交点] が選択されている場合にのみ [リバース ジオコード (Reverse Geocode)] ツールによって返されるためです。

特定の出力フィーチャを返す

[ロケーターの作成 (Create Locator)] ジオプロセシング ツールで構築されたロケーターは、所定のリバース ジオコード入力位置に対して最も関連性の高い住所か場所を返すよう構成されています。 しかし、リバース ジオコードの結果をより柔軟に制御したい場合もあります。 たとえば、位置をリバース ジオコーディングするときに、返されるフィーチャを選択したい場合などです。 あるいは、前の表で示した検索許容値が十分ではなく、より遠方の住所を返してほしいこともあるでしょう。 ストリート交点の一致が返されることが望ましいこともあります。 このような要件を満たすには、[リバース ジオコード (Reverse Geocode)] ツールの [フィーチャ タイプ] パラメーターを使用して、リバース ジオコードの結果を調整します。 「この場所の情報」ツールを使用して対話的にリバース ジオコーディングを行うときに、複数ロールのロケーターから返されたリバース ジオコーディング結果を絞り込むには、[ジオコーディング オプション] ページの [ロケーター プロパティ] ダイアログ ボックスの「リバース ジオコーディングでサポートされるフィーチャ」の設定を変更します。

[フィーチャ タイプ] パラメーターを使用し、[リバース ジオコード (Reverse Geocode)] ツールによって返される 1 つ以上の一致タイプを指定します。 [フィーチャ タイプ] に単一の値が含まれる場合、検索許容値は 500 メートルに拡張されます。 ロケーターが単一のフィーチャ タイプのみをサポートする 1 つのロールのロケーターである場合 (「パーセル」や「距離マーカー」ロールなど)、500 メートルの検索許容値が対話的なリバース ジオコーディングまたは一括リバース ジオコーディングのいずれかで使用されます。 [フィーチャ タイプ] パラメーターに複数の値が含まれる場合、上記のフィーチャ タイプの「階層テーブル」で定義された検索許容値が使用されます。 [フィーチャ タイプ] パラメーターで使用されるロジックについては、以下で詳しく説明します。

注意:

ロケーターが単一のフィーチャ タイプのみをサポートする 1 つのロールのロケーターである場合、[フィーチャ タイプ] パラメーターは [リバース ジオコード (Reverse Geocode)] ツールに表示されません。 これは、[フィーチャ ロケーターの作成 (Create Feature Locator)] ツールで構築されたロケーターにも該当します。

フィーチャ タイプの一致条件

次の一致条件は、ロケーターによってサポートされるロールとフィーチャ タイプに基づいています。

  • フィーチャ タイプが選択されていない場合、一致はフィーチャ タイプの「階層テーブル」で定義されたデフォルトのフィーチャ タイプ階層と検索許容値に基づきます。ただし、ストリート交点は除きます。 ストリート交点の一致は、リバース ジオコードの操作にストリート交点が含まれている場合にのみ返されます。 ロケーターのプロパティを変更し、ストリート交点が [この場所の情報] ポップアップで返されるようにし、[ストリート交点][リバース ジオコード (Reverse Geocode)] ジオプロセシング ツールにパラメーターとして渡すことで、その操作の結果にフィーチャ タイプが確実に含まれるようになります。
  • ロケーターでサポートされているフィーチャ タイプが 1 つしかない、または [ロケーターのプロパティ] ダイアログ ボックスで有効になっているフィーチャ タイプが 1 つしかない場合は、500 メートルの検索許容値を使用し、入力フィーチャ タイプだけが検索対象となります。
    • 入力フィーチャ タイプが入力位置から 500 メートル圏内にある場合、そのフィーチャへの一致が返されます。
    • 入力位置から 500 メートルの範囲内に入力フィーチャ タイプへの一致がない場合は、リバース ジオコード操作に対する一致は返されません。
  • 複数のフィーチャ タイプが有効になっている場合、フィーチャ タイプ階層テーブルで定義された入力フィーチャ タイプのデフォルトの検索許容値を使用し、一致が決定されます。
    • 入力位置が単一の入力フィーチャ タイプの検索許容値内にある場合、そのフィーチャ タイプへの一致が返されます。
    • 入力位置が複数の入力フィーチャ タイプの検索許容値内にある場合、優先度が最も高い入力フィーチャ タイプへの一致が返されます。
    • 入力位置がどの入力フィーチャ タイプの検索許容値内にもない場合は、一致は返されません。

関連トピック