※ この記事は、米国 Esri 社のブログ記事「Turbulence Ahead – Using ArcGIS API for JavaScript to Design and Evaluate a 3D Web-Based Aviation We...」を翻訳したものです。
チューリッヒ工科大学は、航空気象に関する直観的な 3D 可視化表現の不足に対処するため、国際線を運行している航空会社と協力して、ArcGIS API for JavaScript を使用して気象予報データを 3D Web アプリケーションに表示するプロトタイプを開発しました。このブログ記事では、実装プロセスの詳細と、ArcGIS API for JavaScript が設計プロセスで使用された方法、およびパイロットがこんにち使用している 2D マップに対してプロトタイプを評価したユーザーテストについて紹介します。
可視化だけではなく、日々の業務で 3D データの利点をすでに実感し、探求している業界がますます増えています。航空業界も例外ではありません。Web 上の 3D グラフィックスやストリーミング サービスの分野における技術的な進歩により、大量の気象に関連する航空データを可視化する新しい可能性が広がりました。
民間航空会社のパイロットは、飛行計画のためにさまざまな気象プロダクトを使用し、大気中の乱気流の激しいエリアを避けています。これらの気象プロダクトの多くは、パイロットに対して乱気流の予測データを含む気象情報を 2D で表示しています(例えば、図2は 2D の Significant Weather Charts です)。過去数十年間で重大な航空機事故が大幅に減少した一方で、乱気流に起因する傷害および死亡事故の数は依然として増加しています。
図2:2D の Significant Weather Charts(ソース:https://www.aviationweather.gov/progchart)
乱気流は依然として民間航空の大きな脅威であり、予測データを 3D で可視化することは、チューリッヒ工科大学の地図学および地理情報の研究機関(Institute for Cartography and Geoinformation)の研究者に 3D Web ベースの航空気象ビジュアライザーを開発する動機となりました。4ヵ月にわたり、修士論文の範囲内で、プロトタイプが設計、実装され、最終的に64人のパイロットが参加したユーザー・スタディで評価されました。
プロトタイプに使用される元の乱気流予測データは、いわゆる Significant Weather Charts(SWC)です。これは、ロンドンとワシントンにある World Area Forecast Center(WAFC)によって1日に4回発行されます。2D の白黒マップは、ジェット気流、雲や晴天での中程度または深刻な乱気流のエリア、雷雨をともなう積乱雲および航空に関するそのほかの気象現象などの要素を示します。
2D 要素は、はじめに ArcGIS Proを使用してデジタイズし(ソース データが利用できないため)、注釈を付けたり、高度や追加情報を表すいくつかの属性(例えば、最小と最大の高さなど)を付与しました。いくつかのレイヤーは、飛行経路と乱気流エリアとの 3D 交差や、気流に沿って均等に配置されたポイント上のジェット気流の方向の判定などに利用するために、さらに処理が必要でした。
次のステップでは、Web アプリケーションが 3D 可視化のためにアクセスする Portal for ArcGIS にすべてのデータ レイヤーを公開することでした。図3に示したワークフローで、アプリケーションのプロトタイプを作成し、その後、パイロット・スタディでレビューを行いました。
図3:既存の 2D 気象予測データから 3D Web アプリケーションへのワークフロー
航空気象データを可視化する主な課題のひとつは、ほとんどの気象プロダクトが気象学者によって作成、維持され、パイロット向けに設計されていないことです。高水準のユーザビリティを備えたプロトタイプを実装するためには、経験豊富なパイロットという専門家からのフィードバックに基づき最適な設計が確認できるパイロット・スタディを行うことが重要でした。パイロット・スタディを行う動機は、気象オブジェクトのパイロットの感覚と可能な限り一致する 3D 表現を実装するという要件から生じました。
パイロット・スタディは、現場でのインタビューのために招かれた3名の専門家により実施されました。彼らは、最初のドラフト段階のアプリケーションでいくつかの設計パラメーターを選択することができました。パラメーターには、垂直方向の強調(太さ)、地面からのオフセット、要素とベースマップの色、レンダラーの種類などが含まれていました。アプリケーションの夜間モードについては、専門家が、図4のような異なる 3D 設計を考え出しました。彼らはまた、より明るい色を持つ日中モードのためのパラメーターを動的に選択することができました。ほとんどの航空機のディスプレイは、操縦席の照明が頻繁に変化するため、昼夜モードの切り替えができるようになっており、アプリケーションにもデュアルモードが実装されました。
図4:パイロット・スタディで開発された専門家からの設計提案
パイロット・スタディの情報と、専門家による3つの設計の追加レビューは、実際のプロトタイプを実装するために使用されました。
すでに説明したように、アプリケーションは、3D シンボル機能を備えた ArcGIS API 4.x for JavaScript を使用して実装されました。ここでは、3D の方向線の表示を必要とするジェット気流の可視化および現在の WebGL の制限のために必要な手動での透明度ソートの2つの実装の詳細を紹介します。
ジェット気流の可視化は図5に見ることができます。3D ラインとオーバーレイされた 3D パス両方の可視化が特徴です。3D ラインは縮小しないため大縮尺に適しており、3Dパスは近くにズームインしたときに適しています。また、3D パス シンボルは、ジェット気流のパイロットの感覚とよく似ています。さらに、風速は異なる色で可視化され、飛行高度はコールアウト付きのラベルとして表示されます。ジェット気流の難しいところは、気流の方向が重要で可視化する必要があるということです。ArcGIS API for JavaScript は、ArcGIS Pro のような方向に関するレンダラーが組み込まれていないため、回避策を設定する必要がありました。
図5:方向の 3D シンボルを使用した Web アプリケーションでのジェット気流の可視化
ジェット気流の方向は、白い円錐シンボルとして ObjectSymbol3DLayer(width = 75 km, height = 150 km)を使用して可視化しました。シンボルの回転は、オブジェクトの heading プロパティに可視化変数を設定し、気流に沿った各ポイントに適用しました。さらに、シンボルは、正しい初期配置と同様に横になるように 270° 傾けます。
以下は、シンボルのレンダラーです。
renderer = {
type: "simple",
symbol: {
type: "point-3d",
symbolLayers: [{
type: "object",
resource: { primitive: "cone" },
color: "white",
tilt: 270,
width: 75000,
height: 150000
}]
},
visualVariables: [{
type: "rotation",
field: "angle",
stops: [
{ value: 0, size: 180 },
{ value: 0, size: 180 }
],
axis: "heading",
rotationType: "geographic"
}]
}
色や形のような透過率は、特にデータ オーバーレイの 3D 可視化において効果的な可視化変数であることが証明されています。しかし、正しい透明度ソートをすることは、Web で 3D グラフィックスを表示する際の課題の1つであり、WebGLではサポートされていません。いくつかの気象オブジェクトは透明なスタイルでレンダリングされているため(例えば、気象オブジェクトを囲むオブジェクトを可視化するため)、プロトタイプには順序に依存する透明度ソートを手動で設定しました。実装は、直前の FeatureLayer の LayerView が読み込まれるまで待つ各レイヤーの promise を使用することで実現しました。その後、次のレイヤーまたはレイヤーのグループが読み込まれます。透明度ソートの結果は図6で見られます。
図6:手動の透明度ソートで Web アプリケーション内で積乱雲を可視化
以下は、レイヤー1がレイヤー2により囲まれており、レイヤー2がレイヤー3のアウトラインを表していることを想定したときに、どのように実装されるかを示したコードです。
view.whenLayerView(layer1).then(function () {
scene.add(layer2);
view.whenLayerView(layer2).then(function () {
scene.add(layer3);
});
});
実装に関するもうひとつの興味深いトピックは、このアプリケーションのターゲット デバイスが、パイロットによってコックピットに持ち込まれるタブレットであることです。タブレットなどのモバイル デバイスのサポートは、ArcGIS API for JavaScript のバージョン 4.6 から利用可能であり、この要件はプロトタイプの開発を満たしています。図7で、ブラウザーと比較してタブレットに表示されているWebアプリケーションを確認できます。
図7:ブラウザーとタブレットの Web アプリケーションのインターフェイス
このプロジェクトの研究課題は、データの 3D 表現がヒューマン・コンピューター・インタラクションの特定の側面を高めることができるのか、というアイディアを中心に展開したため、次のステップとしてユーザー・スタディの形式で評価が行われました。評価、比較された見地は、認知負荷、ユーザビリティ、空間認識でした。ユーザー・スタディの参加者は、2D の白黒マップと新しい 3D プロトタイプの両方で可視化された飛行計画に関連する一連のタスクを実行するように求められました。同じ航空会社の 64 名のパイロットがユーザー・スタディに参加しました。結果は、2つの条件の間で評価され、新しい Web ベースのアプリケーションを使用したときに、認知負荷が 18.3% 減少し、ユーザビリティが 29.4%、空間認識が 24.4% 改善されました。認知負荷とユーザビリティについては、標準的なアンケートを使用して相違を測定し、空間認識は、ArcGIS API for JavaScript を使用しました。
空間認識は、飛行経路とベースマップを参照して、4つのカテゴリの気象オブジェクト(ジェット気流、雲、積乱雲、晴天乱気流エリア)を描画するタスクによって評価されました。認知地図(cognitive maps)と感覚を評価するために使用されたスケッチ マップの描画は、方向感覚、つまり空間認識、に関する環境の認識を調査するための信頼できるソースであることが証明されています。ユーザー・スタディの参加者は、2D または 3D で表現されたデータを見て、第2ステップで記憶したものを描くことが求められました。記憶したものの描画は、マップと描画ウィジェットを使用したユーザー・スタディで実施されました。参加者が描いたフィーチャは結果レイヤーに新しいフィーチャとして保存されました。参加者のひとりの描画は、参加者が 2D または 3D で提示されたものと比較して、図8に見ることができます。
図8:空間的な類似を探すための実際の航空気象の要素(右)と参加者が描画したもの(左)
この研究プロジェクトは航空気象における 3D Web ベースの可視化の使用の大きな潜在的かつ有望な結果を示したもので、チューリッヒ工科大学は航空会社と協力して継続してプロジェクトを行っています。さらに、このプロジェクトは、ユーザーインターフェイスを中心とした研究コミュニティに貢献し、国際会議でも発表されています。詳細は、このプロジェクトに関する研究論文を参照してください。