Spatial Analyst のライセンスで利用可能。
このトピックで扱われる概念は、[可視領域 (Viewshed)] ツールおよび [観測ポイント (Observer Points)] ツールに適用されます。可視解析ツール [可視領域 (詳細設定) (Viewshed 2)] はこれらのツールに似ていますが、ツールの動作が一部異なっています。[可視領域 (詳細設定) (Viewshed 2)] ツールは、観測点プロパティの任意の数値フィールドを受け取りますが、[可視領域 (Viewshed)] ツールと [観測ポイント (Observer Points)] ツールは、入力観測点フィーチャ属性テーブルの固定フィールド名 (OFFSETA、OFFSETB など) のみを使用します。
可視領域は、1 つ以上の観測位置から見える入力ラスター内のセルを示します。出力ラスターの各セルに、各位置から見える観測点の数を示す値が割り当てられます。観測点が 1 つしかない場合、その観測点を見ることができる各セルには 1 の値が与えられます。観測点を見ることができないすべてのセルには、0 の値が与えられます。観測点フィーチャクラスにはポイントまたはラインを含めることができます。ラインのノードと頂点が、観測点として使用されます。
可視領域を計算する目的
可視領域解析ツールは、オブジェクトがどのように見えるかを知りたいときに便利です。たとえば、給水塔をこの位置に設置したときに、地形のどの位置から見えるか、または道路からの景色はどうか、などです。
次の例では、観測塔からの可視領域が特定されます。標高ラスターは土地の高さを表示し (明るい影は高い標高を示す)、観測塔は緑の三角として示されています。解析で、観測塔の高さを指定できます。緑のセルが観測塔から見えます。赤のセルは見えません。
レイヤーを透過表示すると、標高ラスターの下にある陰影起伏ラスターを表示し、可視領域解析の出力と組み合わせて、視界とテレインとの関係を視覚化できます。
複数の観測点がある場合、観測塔から見えるセルを特定できるだけでなく、どの観測点が各観測位置を見ることができるかも特定できます。どの観測点がどの位置を見ることができるかが分かれば、意志決定に影響することがあります。たとえば、埋め立て地を選定するための景観調査では、提案する埋め立て地が未舗装道路からのみ見ることができ、上位の幹線道路からは見えない場合、望ましい位置と見なすことができます。
可視領域と観測ポイントの解析ツール
可視解析に使用できるツールは複数あります。このトピックでは、主に [可視領域 (Viewshed)] と [観測ポイント (Observer Points)] について説明します。どちらも出力可視領域ラスターを作成するのに使用できます。[観測ポイント (Observer Points)] の出力では、各ラスター サーフェス位置からどの観測ポイントが見えるかも正確に特定されます。
可視領域 (Viewshed) ツール
[可視領域 (Viewshed)] ツールは、入力ポイントまたはポリラインの観測フィーチャ位置から各エリアが見えた数を記録して、ラスターを作成します。この値は、出力ラスターのテーブルの VALUE アイテムに記録されます。入力ラスターで NoData が割り当てられたセル位置はすべて、出力ラスターでも NoData が割り当てられます。
- ポリライン入力を使用すると、各入力アークに沿ったすべてのノードと頂点が、個別の観測ポイントとして処理されます。出力ラスターの VALUE アイテムの値は、各セルから見えるノードと頂点の数を表します。
- 入力観測点フィーチャ テーブルに SPOT 属性アイテムが存在しないと、共一次内挿法を使用して各観測点の標高が決定されます。観測点または頂点に最も近いラスター セルが NoData 値を持つ場合は、標高を決定できません。この場合、その観測点は可視領域解析から除外されます。
- 観測点と他のセルの間にある NoData セルは、見えないものと評価され、視界をさえぎることはありません。
可視領域の応用例
[可視領域 (Viewshed)] ツールで回答が可能な種類の質問の例を以下の表に示します。
質問 | [可視領域 (Viewshed)] のオプション |
---|---|
高さ 15 メートルの火の見やぐらから見える範囲はどれぐらいですか? | ポイント データ、OFFSETA |
ごみ埋立処分場の候補地は、既存の高速道路からどの程度の頻度で見えますか? | ライン |
次の通信中継塔はどこに設置すべきですか? | ポイント データ、OFFSETA、OFFSETB、VERT1、VERT2、AZIMUTH1、AZIMUTH2 |
可視領域の例
[可視領域 (Viewshed)] ツールの応用例として、調査対象地域のなかで、提案された送電線の送電塔が見える場所を特定する例を考えてみます。解析の入力は次のとおりです。
- サーフェス標高ラスター
- 樹冠の高さを記録したラスター (各位置における植生頂上部の地面からの高さ)
- ケーブルを支える塔の位置を各ラインの頂点が表すライン フィーチャクラス
ステップ 1: [Plus] ツールを使用して、植生の高さラスターをサーフェス標高ラスターに追加します。
[入力ラスター、または定数値 1]: canopy_height
[入力ラスター、または定数値 1]: elev_surface
[出力ラスター]: elev_canopy
ステップ 2: [可視領域 (Viewshed)] ツール内で可視領域解析を実行します。
[入力ラスター]: elev_canopy
[入力観測ポイント、またはライン フィーチャ]: powerline
[出力ラスター]: elev_viewshed
[Z 係数] :{デフォルト}
[地球の曲率を使用]: {デフォルト}
[屈折係数]: {デフォルト}
この処理により、可視領域ラスターが作成されます。
観測ポイント (Observer Points) ツール
[観測ポイント (Observer Points)] ツールは、どの観測ポイントから各ラスター セルが見えるかについてバイナリ値で情報を格納します。この情報は VALUE アイテムに格納されます。
特定の観測点 (たとえば、観測点 3) だけから見えるラスターの地域をすべて表示するには、出力ラスターの属性テーブルを開いて、観測点 3 (OBS3) の値が 1 で、その他の観測点の値が 0 の行を選択します。観測点 3 だけから見えるラスターの地域がマップ上でハイライト表示されます。
[観測ポイント (Observer Points)] でリニア データを使用するには、[データ管理] > [フィーチャ] ツールセットの [フィーチャの頂点 → ポイント (Feature Vertices To Points)] ツールを使用して、ライン フィーチャクラスを変換します。16 ポイントまでという制限があります。
フィーチャ属性テーブルに SPOT 属性アイテムが存在しないと、共一次内挿法を使用して各観測点の標高が決定されます。観測点に最も近い入力ラスター セルが NoData 値を持つ場合は、標高を決定できません。この場合、その観測点は可視領域解析から除外されます。
観測点と他のセルの間にある NoData セルは、見えないものと評価され、視界をさえぎることはありません。
観測ポイント (Observer Points) ツールの詳細
[観測ポイント (Observer Points)] は、どの観測ポイントから各ラスター セルが見えるかについてバイナリ値で情報を格納します。この情報は VALUE アイテムに格納されます。
観測点 3 だけから見えるラスターの地域をすべて表示するには、出力ラスターの属性テーブルを開いて、観測点 3 (OBS3) の値が 1 で、その他の観測点の値が 0 の行を選択します。観測点 3 だけから見えるラスターの地域は、マップ上でハイライト表示されます。
ラスター OBSn アイテム
ラスター属性テーブルの標準アイテムである VALUE と COUNT に加えて、入力ポイント データセットの各観測点に相当する新しいアイテムが作成されます。それらのアイテムは、OBS1、OBS2、...OBSn です。ここで、n は観測点の番号です。これは次のように定義されています。
ITEM NAME WIDTH OUTPUT TYPE N.DEC OBSn 2 2 B -
これらのアイテムは、あらゆる入力ポイント観察点フィーチャ観察点によって各セルの視界を記録します。たとえば、観測点 8 (featurename# = 8) から見えるラスター セルは、OBS8 という名前のアイテムの値が 1 になります。観測点から見えないセルには、0 の値が与えられます。入力ラスターに NoData を割り当てられたセル位置は、出力ラスターに NoData が割り当てられます。
OBSn アイテムを使用して、特定の観測点から見えるラスター セルを特定できます。これは、VALUE パラメーターに基づいて選択した以前の例とは少し異なります。今回は、観測点 1 と観測点 8 から見えるセルは他の観測点からも見える可能性があります (その場合、それぞれ異なる値を持ちます)。
たとえば、観測点 1 と観測点 8 から見える地域をすべて表示するには、ラスター属性テーブルを開いて、観測点 1 (OBS1) と観測点 8 (OBS8) の値がどちらも 1 で、その他の観測点の値が 0 の行を選択します。
景観の定量化
ツールで出力された情報は、景観の調査を実行するときに使用することもできます。たとえば、入力ラスターの範囲内の重要な視覚フィーチャそれぞれに観測点を配置することによって、サーフェス上のすべての場所の景観を決定することができます。そのようなポイントとしては、ゴミ捨て場、解体した車の回収所、地域の公園、地域の各送電塔などが考えられます。
[観測ポイント (Observer Points)] の実行後、出力ラスターのテーブルにある OBSn アイテムを使用して、各視覚フィーチャが見えるセル位置を選択します。他のツールを使用して、各観測点の景観と重みに応じて、正または負のスコアを累積します。すべての観測点についての検討が終わった後、最高のスコアを得たセル位置は最高の景観を持つことになります。
観測ポイント (Observer Points) の応用例
[観測ポイント (Observer Points)] ツールで回答が可能な種類の質問の例を以下の表に示します。
質問 | [観測ポイント (Observer Points)] のオプション |
---|---|
火の見やぐらの位置がわかっているとして、調査対象領域全体を見渡すのに必要な火の見やぐらの数は最低いくつですか? | ポイント データ、OFFSETA |
ごみ埋立処分場と送電塔 3 だけが見えるラスター上の位置はどこですか? | ポイント データ |
どのサーフェス位置の景観が一番いいか判断するにはどうすればいいですか?景観に基づいて可視領域内の各風景フィーチャに異なる重みを与えたいと思っています。 | ポイント データ |
可視領域解析の制御
観測点の標高値、高度オフセット、スキャンの水平角と垂直角、スキャンの距離など、フィーチャ属性データセットのさまざまなアイテムを指定して、調査するラスターの地域を制限することができます。全部で 9 つのアイテムがあります。SPOT、OFFSETA、OFFSETB、AZIMUTH1、AZIMUTH2、VERT1、VERT2、RADIUS1、RADIUS2 です。
以下の図に、可視領域解析の制御方法を視覚的に示します。観測点は、左の山頂 (図の OF1) にあります。可視領域の方向は、右側に広がる円錐内部にあります。観測点のオフセット量 (塔の高さなど)、観測方向、および水平方向から観測する上下の高さを制御できます。
観測点フィーチャ データセットがポイント フィーチャクラスの場合、各観測点は属性テーブルに独自の観測制約を持つことができます。ポリライン フィーチャクラスの場合は、入力ポリラインに沿ったすべての頂点は、属性テーブル内のポリラインのレコードに含まれるものと同じ観測制約を使用します。
これらのアイテムの定義は、それらが数値である限り、さまざまです。アイテムが存在しない時には常に、デフォルト値が適用されます。
SPOT
SPOT アイテムは、観測点または頂点のサーフェスの標高を定義するのに使用されます。
オフセット
オフセットは、サーフェス位置の Z 値に加算する垂直距離 (サーフェス単位) です。
オフセット アイテムは 2 つあります。1 つは観測位置に加算する標高を定義し、もう 1 つは可視領域を検討する各セルに何が加算されるかを定義します。
OFFSETA
OFFSETA アイテムは、観測点の Z 値に加算する垂直距離をサーフェス単位で示します。
フィーチャ属性テーブルに OFFSETA が存在する場合、その値は SPOT 標高に加算されます。存在しない場合、内挿されたサーフェス Z 値に加算されます。 OFFSETA 値は正の数でなければなりません。OFFSETA が存在しない場合、デフォルト値は 1 です。
OFFSETB
OFFSETB アイテムは、可視領域が検討される各セルの Z 値に加算する垂直距離をサーフェス単位で示します。
フィーチャ属性テーブルに OFFSETB が存在する場合、セルが可視領域解析の対象になると、その値は各セル位置の Z 値に加算されます。その値は正の数でなければなりません。フィーチャ属性テーブルに OFFSETB アイテムが存在しない場合、デフォルト値は 0 です。
相対的位置
光源方位アイテムは、スキャンを制限する水平方向の角度を定義します。スイープは、最初の光源方位から次の光源方位へ時計回りに進みます。角度の値は、0 を北の方向として度単位の 0 〜 360 で示されます。
AZIMUTH1
AZIMUTH1 アイテムはスキャン範囲の始点角度を定義します。
このアイテムがフィーチャ属性テーブルに存在しない場合、デフォルト値は 0 です。
AZIMUTH2
AZIMUTH2 アイテムはスキャン範囲の終点角度を定義します。AZIMUTH2 の値は AZIMUTH1 より大きくする必要があります。
このアイテムがフィーチャ属性テーブルに存在しない場合、デフォルト値は 360 です。AZIMUTH1 および AZIMUTH2 の両方が定義されていない場合、デフォルトは 360 度のフル スイープになります。
垂直方向の角度
垂直方向の角度は、スキャンを制限する垂直方向の角度を定義します。角度は 90 〜 -90 の範囲の角度で表されます。正の値は水平面より上の角度を、負の値は水平面より下の角度を表します。水平面 (0 度) は、観測点の Z 値と OFFSETA の値によって定義されます。どちらの垂直方向の角度も負にできます。
VERT1
VERT1 アイテムは、スキャンを制限する垂直方向の角度の上限を定義します。
このアイテムがフィーチャ属性テーブルに存在しない場合、デフォルト値は 90 です。
VERT2
VERT2 アイテムは、スキャンを制限する垂直方向の角度の下限を定義します。VERT2 の値は VERT1 より小さくする必要があります。
このアイテムがフィーチャ属性テーブルに存在しない場合、デフォルト値は -90 です。
半径
半径アイテムは、各観測点から見えるエリアを特定するときに、検索距離を制限します。特定の距離より遠いセルは解析から除外できます。
RADIUS1
RADIUS1 アイテムは、可視領域を決定する開始距離を定義します。RADIUS1 の検索半径より近いセルは、出力ラスター内には表示されませんが、RADIUS1 と RADIUS2 の間のセルの視界をさえぎることはできます。
RADIUS1 のデフォルト値は 0 です。
RADIUS2
RADIUS2 の検索半径を超えるセルは、解析から除外されます。RADIUS2 の値は RADIUS1 より大きくする必要があります。
RADIUS2 のデフォルト値は無限遠です。
2 次元距離と 3 次元距離
デフォルトでは、制限距離の RADIUS1 と RADIUS2 は、3 次元の見通し線の距離として解釈されます。傾斜角の距離が正しく計算されることを保証するには、地表単位とサーフェス Z 単位の両方が同じ測定単位でなければなりません。RADIUS1 と RADIUS2 を2 次元の平面距離として処理するには、マイナス記号 (-) を値の頭に挿入します。
たとえば、RADIUS1 を -1000 に設定し、RADIUS2 を -9000 に設定すると、[可視領域 (Viewshed)] ツールは、観測点から平面的に測定された地表単位で 1,000 と 9,000 の間のサーフェス リージョンの解析を行います。
デフォルト設定
以下の表に、可視領域解析を制御するオプションのデフォルト設定を示します。
オプション | デフォルト設定 |
---|---|
SPOT | 共一次内挿法を使用して推定 |
OFFSETA | 1 |
OFFSETB | 0 |
AZIMUTH1 | 0 |
AZIMUTH2 | 360 |
VERT1 | 90 |
VERT2 | -90 |
RADIUS1 | 0 |
RADIUS2 | 無限 |
曲率と大気差の補正
[地球の曲率を使用] オプションを使用して、地球の曲率と大気差を補正します。補正が行われるのは、サーフェスの投影情報が存在する場合です。さらに、地表単位とサーフェス Z 単位は、フィート、メートル、または単位/メートルにする必要があります。補正に使用される式は次のとおりです。
Dist2 Dist2
Zactual = Zsurface - --------- + Rrefr * ---------
Diamearth Diamearth
- ここで
Dist: 観測フィーチャと観測される位置の間の平面距離
Diam: 地球の直径
Rrefr: 光の屈折係数
地球の直径 (Diamearth) のデフォルト値は 12,740,000 メートルと定義されており、屈折係数 (Rrefr) のデフォルト値は 0.13 です。視界に対する大気の条件の変動を考慮して、Rrefr には別の値を使用できます。