Skip To Content

滞在場所の検索

注意:

現在、この機能は Map Viewer Classic (旧名称 Map Viewer) でのみサポートされています。 新しい Map Viewer の今後のリリースで提供される予定です。

滞在場所の検索 [滞在場所の検索] ツールは、トラッキング内の時系列ポイントから滞在場所を特定します。 滞在場所は、一定の期間にわたって移動がほとんどないか、まったくない一連の観測点として定義されます。 利用分野によっては、滞在地やアイドル状態検出と呼ばれることもあります。 トラックは、1 つ以上のトラック フィールドで識別されます。 結果レイヤーには滞在場所がポイント、滞在場所の凸包、または滞在の地理的中心ポイントとして表示されます。 出力には、滞在場所内のフィーチャの数、滞在の開始時刻と終了時刻、滞在時間、計算されたその他の統計が含まれます。 各トラッキングには 0 個、1 個、または複数の滞在場所が含まれています。

ワークフロー図

滞在場所の検索のワークフロー図

解析での使用 GeoAnalytics Tools

GeoAnalytics Tools を使用した解析は、複数の ArcGIS GeoAnalytics Server コンピューターやコアにまたがる分散型処理を使用して実施されます。GeoAnalytics ToolsArcGIS Enterprise の標準的なフィーチャ解析ツールは、異なるパラメーターと機能を持ちます。これらの相違点については、「フィーチャ解析ツールの相違点」をご参照ください。

用語

用語説明

滞在場所

トラッキングが動作を停止した時点を指定された時間パラメーターと距離パラメーターで表すフィーチャ。 これは、このツールから生成される出力結果であり、滞在フィーチャがポイント、凸包、または地理的中心として表されます。

トラッキング

時間対応かつ時間のタイプが瞬間を示す一連のフィーチャ。 フィーチャはトラッキングを識別するフィールドに応じて順番が決定され、時間順に並びます。 たとえば、都市に 10 分ごとにその場所を記録する除雪トラックを配備できます。 車両 ID は、個別のトラックを示します。

比較結果

トラック上のポイント。

測地線

球体上に描画されたライン。 グローブ上に描画された測地線は、地球のジオイドの曲率を表します。

平面

平面 (デカルト平面) 上で計測される直線距離です。 ユークリッド距離とも呼ばれます。

インスタント

開始時間は指定されているが終了時間は指定されていない、ある特定の時点を指します。

間隔

開始時間と終了時間が指定されている期間のことを指します。

生態学者や保護運動家は、[滞在場所の検索] ツールを使用して、季節移動中のシカの安全性を高めることができます。 この結果を使用して、動物が多くの時間を過ごす場所に保護地域を設けたり保護地域を改善したりします。 シカが動いていない場所は、シカが食べたり眠ったりする場所である可能性があります。

運輸局はハイウェイ出口付近での交通渋滞を改善したいと考えています。 滞在場所の検索ツールを使用して、アナリストは一定期間、一定距離内に滞在している車両を識別することで、渋滞が発生している地域を特定できます。

使用上の注意

入力フィーチャは、特定時点を表す時間対応ポイント フィーチャでなければなりません。

結果は、時点を表すポイント フィーチャまたは時間間隔を表すエリア フィーチャになります。 間隔の始点と終点は、滞在に含まれている最初のフィーチャと最後のフィーチャの日時によって求められます。

トラッキングは、1 つ以上のトラッキング フィールドの一意の組み合わせで表されます。 [トラッキングの識別に使用する 1 つ以上のフィールドの選択] パラメーター チェックボックスをオンにして、トラッキング識別子を指定します。 たとえば、flightID フィールドと Destination フィールドがトラッキング識別子として使用される場合、フィーチャ「ID007, Solden」と「ID007, Tokyo」は 2 つの個別トラッキングになります。Destination フィールドの値が異なるからです。

時間 ([時間検索範囲の定義]) と距離 ([空間検索距離の定義]) の両方の値を使用して滞在場所が特定されます。 最初に、このツールは、一意識別子を使用してフィーチャをトラックに割り当てます。 トラックの順序は、フィーチャの時間によって決まります。 次に、トラッキング内の最初の観測と次の観測間の距離が計算されます。 時間的に連続した 2 つのポイントが、少なくとも所定の期間、所定の距離内にある場合、フィーチャは滞在場所の一部であると見なされます。

出力滞在場所は、4 通りの方法で表すことができます。 それぞれの例を以下の表に示します。 滞在結果はすべての出力タイプで dwellid フィールドを使用して一意に識別されます。

出力タイプ説明

すべてのフィーチャ

すべてのフィーチャが返されます。 結果として生成されるフィーチャの時間タイプはインスタントになります。

滞在に属しているフィーチャは青でレンダリングされます。 滞在に属していないフィーチャはグレーでレンダリングされます。

この出力タイプでは、カウント統計情報だけが算出されます。 このカウントは、1 つの滞在に属しているフィーチャの数を表します。 滞在以外のフィーチャのカウントは 0 になります。

滞在場所の検索ツールから返されるすべてのフィーチャの例

滞在フィーチャ

滞在の一部となっているフィーチャだけが返されます。 結果として生成されるフィーチャの時間タイプはインスタントになります。

この出力タイプでは、カウント統計情報だけが算出されます。 このカウントは、1 つの滞在に属しているフィーチャの数を表します。

滞在場所の検索ツールから返される滞在フィーチャの例

地理的中心

滞在ごとに、距離と時間で滞在の地理的中心を表す 1 つのポイントが返されます。 結果として生成されるフィーチャの時間タイプは間隔になります。

滞在に含まれているフィーチャの数が常に算出されます。 必要に応じて、このタイプの滞在フィーチャの統計情報を算出できます。 デフォルトでは、統計情報が算出されません。

滞在場所の検索ツールから返される地理的中心フィーチャの例

凸包

各滞在が滞在フィーチャの凸包で表されます。 結果として生成されるフィーチャの時間タイプは間隔になります。

滞在に含まれているフィーチャの数が常に算出されます。 必要に応じて、このタイプの滞在フィーチャの統計情報を算出できます。 デフォルトでは、統計情報が算出されません。

滞在場所の検索ツールから返される凸包フィーチャの例

滞在場所での基本的な計算は、滞在に集計されたフィーチャの個数カウントです。 統計情報 (個数、合計、最小、最大、範囲、平均、標準偏差、分散) は数値フィールドでも計算でき、統計情報 (個数、すべて) は文字列フィールドでも計算することができます。 文字列統計すべては、各トラックからサンプル文字列を返します。 統計情報は滞在場所ごとに計算されます。

入力レイヤー内のフィールドと指定された統計情報のサマリーだけでなく、次のフィールドもすべての出力フィーチャに含まれます。

フィールド名説明

count

滞在に含まれているフィーチャの数。

dwellid

該当するフィーチャが属している滞在に一意の ID。

meanx

滞在を構成している X 座標の平均値。

meany

滞在を構成している Y 座標の平均値。

meandistance

滞在場所内の連続するポイント間の平均距離。

instant_datetime

出力タイプが滞在フィーチャまたはすべてのフィーチャの場合に生成される個々のフィーチャの日時。

start_datetime

出力タイプが地理的中心または凸包の場合に生成される開始日時。

end_datetime

出力タイプが地理的中心または凸包の場合に生成される終了日時。

出力タイプが [すべてのフィーチャ] の場合、滞在に属している結果では、上記のフィールドの値が算出されます。 滞在に属していない結果では、count フィールドに値 0 が返され、date フィールドに入力フィーチャの時間値が返され、それ以外のすべてのフィールドに値 null が返されます。

デフォルトでは、測地線による方法を距離計算に使用して、滞在場所が作成されます。 次の場合には、測地線距離を使用することをお勧めします。

  • 国際日付変更線をまたぐトラック - 測地線による方法を使用する場合、国際日付変更線をまたぐ入力レイヤーには、国際日付変更線を正しく横断するトラックが含まれます。 これがデフォルトです。 入力レイヤーまたは処理空間参照は、国際日付変更線周辺の折り返しをサポートする空間参照に設定される必要があります (たとえば、正積円筒図法などのグローバル投影)。
  • データセットがローカル投影法でない - 入力データがローカル投影法の場合は、平面距離による方法を使用します。 たとえば、1 つの州内の滞在場所を調べる場合に平面による方法を使用します。 入力レイヤーまたは処理空間参照は、データセットに対してローカルの空間参照に設定する必要があります。

滞在場所を検出するパラメーターを選択する場合は、観測点のタイプと検出する滞在場所の縮尺を考慮してください。 移動データから滞在場所を検出できるようにパラメーターを変更する方法の例を次に示します。

  • 船舶フィーチャに vesselID フィールドと tripID フィールドがある。
    • 個別のルートに沿って滞在場所を検出する場合は、vessel ID フィールドと trip ID フィールドを識別子として使用します。
    • 船舶が 1 時間以上 1 海里以内に停泊していた場所を検出する場合は、1 時間の時間許容値と 1 海里の距離許容値を使用します。
  • 動物追跡に animalID フィールドがある。
    • 特定の動物の滞在場所を比較する場合は、animalID フィールドを識別子として使用します。
    • 動物の行動範囲を特定する場合は、3 日の時間許容値と 10 マイルの距離許容値を使用して、対象となる動物生息環境を検出します。
    • 対象地域が小規模な場合は、2 時間の時間許容値と 100 メートルの距離許容値を使用します。

時間間隔を適用すると、指定された間隔でトラッキングが行われます。 たとえば、時間間隔の境界値を 1 日に設定し、1990 年 1 月 1 日午前 9 時から開始した場合、各トラッキングは毎日午前 9 時に切り詰められることになります。 時間分割を使用すれば、分析を目的にとして小さなトラッキングを簡単に作成できるため、計算時間を高速化できます。 時間間隔の境界の繰り返しによる分割が解析で有効な場合は、ビッグ データ処理にこの方法を使用することをお勧めします。 このパラメーターは、10.8.1 で使用できます。

[現在のマップ範囲を使用] がオンの場合、現在のマップ範囲に表示されるフィーチャだけが解析されます。オフの場合、入力レイヤーのすべての入力フィーチャが、現在のマップ範囲内になくても解析されます。

制限事項

入力は、タイプが「インスタント」の時間対応フィーチャを含む、ポイント レイヤーでなくてはなりません。

時間を含まないフィーチャは、解析には含まれません。

凸包を算出する際に、滞在場所がまったく変化していない場合 (1 つの一意の場所) または同一線上の 2 つの一意のポイントで構成されている場合は、解析で使用されている空間参照の許容値に基づく小さい値が幅、高さ、直径として使用され、凸包の代わりに出力ポリゴンが生成されます。 このポリゴンは視覚化のために使用され、滞在場所の空間範囲を表していません。 これらのケースの例を次の表に示します。

入力ケース説明

一致 (1 つの空間的に一意のポイント)

入力フィーチャが重ねて表示されている場合 (一致)、結果として生成される凸包は無効なポリゴンになります。

この例では、一致する入力フィーチャは、黄色のポリゴンの中心にある赤色の点で表されています。 黄色のポリゴンは、一致するポイントの凸包の出力結果を表しています。 青色のポリゴンは、1 つの滞在場所に一致しない 4 つのポイントがある場合に、凸包がどのように表示されるかを示しています。

凸包を出力する場合に返される一致フィーチャの例

同一線 (2 つの空間的に一意のポイント)

入力フィーチャが 1 つのライン上にある場合 (2 つの空間的に一意のポイントでよく見られるケース)、結果として生成される凸包は無効なポリゴンになります。

この例では、同一線上のポイントは、黄色のポリゴン内の赤色の点で表されています。 黄色のポリゴンは、同一線上のポイントの凸包の出力結果を表しています。

凸包を出力する場合に返される同一線上のフィーチャの例

[滞在場所の検索] の詳細

以下では、[滞在場所の検索] ツールの機能について説明します。

計算

入力レイヤーは、一意の識別子を使用して滞在場所に集約されます。 すべての出力タイプで、滞在場所ごとにフィーチャ数と時間が計算されます。

集約出力オプション ([地理的中心] または [凸包]) を選択した場合、各トラックは、任意で数値統計情報 ([個数][合計][最小][最大][範囲][平均][標準偏差][分散][最初][最後]) または文字列統計情報 ([個数][すべて][最初][最後]) をトラッキング内で集約されるフィーチャに適用できます。

[最初][最後] の統計情報は、トラックの最初または最後の値を返します。 たとえば、時系列順のトラッキングで [Toronto,Guelph,Montreal] という値が指定されている場合、[最初] の値は Toronto、[最後] の値は Montreal です。 [最初][最後] の統計情報は、10.8.1 で使用できます。

計数統計 (文字列フィールドと数値フィールド) は、非 NULL の値を数えます。次の値の数は 5 です: [0, 1, 10, 5, null, 6] = 5。このセットの値の数は 3 です: [Primary, Primary, Secondary, null] = 3

ArcGIS API for Python の例

滞在場所の検索ツールは ArcGIS API for Python で使用できます。

この例では、船舶が一定期間、一定距離内に滞在している場所を検索しています。


# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS

# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password")
if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Find the point dataset containing track features to find dwell locations from
track_layer_search = portal.content.search("GPSPoints_Halifax_ships", "Feature Layer")
track_layer = track_layer_search[0].layers[0]

# Run the Find Dwell Locations tool
dwell_result = arcgis.geoanalytics.find_locations.find_dwell_locations(input_layer = track_layer, 
	    track_fields = "vessel_ID, shipping_zone",
					method = "Geodesic"
					distance_tolerance = .5,
					distance_unit = "NauticalMiles",
					time_tolerance = 6,
					time_unit = "Hours",
					summary_fields = [{'statisticType' : 'Maximum',
                        'onStatisticField' : 'Speed'}],
					dwell_type = "DwellMeanCenters",
					output_name = "ship_dwell_areas")

# Visualize the results if you are running Python in a Jupyter Notebook
processed_map = portal.map()
processed_map.add_layer(dwell_result)
processed_map

類似のツール

トラッキング フィーチャを滞在場所に集約するには、[滞在場所の検索] を使用します。 その他のツールは、類似した少し異なる問題を解決するのに効果的です。

Map Viewer Classic の解析ツール

ポイントまたはエリアをトラックに集約している場合、[トラックの再構築] ツールを使用します。

トラック データセット内で空間値または属性値に基づいてその他のリレーションシップを見つけるには、[インシデントの検出] ツールを使用します。

ArcGIS Pro の解析ツール

[滞在場所の検索] ツールは ArcGIS Pro でも使用できます。

あるフィーチャから次のフィーチャまでの距離を計算するには、[近接 (Near)] ジオプロセシング ツールを使用します。

ツールを ArcGIS Pro から実行するには、プロジェクトのアクティブなポータルで ArcGIS Enterprise 10.8 以上を実行している必要があります。 10.8 では、ポータルで空間解析を実行できる権限を持つアカウントで、ポータルにサイン インしている必要があります。