観光情報学会第26回研究発表会にて発表しました「フライト情報を活用したプロジェクションマッピングのシステム開発と実証」(2024-11-09)
観光情報学会第26回研究発表会にて発表しました「フライト情報を活用したプロジェクションマッピングのシステム開発と実証」(2024-11-09) 初めまして,愛知工業大学小栗研究室4年の三浦笙哉です. https://gyazo.com/5ec9d48df289e1a40fc5de7ec36aa5aahttps://gyazo.com/1581fe374629e2299e7005fa4c4e4d2f
研究概要
2024年9月14日〜15日に愛知県常滑市で開催された地域観光イベント「Rinku Twilight」において,中部国際空港に離発着する航空機の情報を風景の一部として橋脚へ提示するプロジェクションマッピングシステムの開発を行いました.また開発する上で,航空機の情報を正しく推定し,イベント会場から航空機が見える適切なタイミングで自動で橋脚へ投影する手法の開発も合わせて行いました.「Rinku Twilight」は,イベント会場から見える「海・空・航空機」の3つの要素を組み合わせたダイナミックな企画体験が可能であり,企画の1つとして,綺麗な夕焼けを背景に航空機の情報を来場者へ届けるという目的で,常滑商工会議所よりシステムの開発を依頼され,共同で開発を行いました.
https://gyazo.com/82f3cf176d256a8e3ee401e2fd904d04https://gyazo.com/7ccb823ec106dba119c87cb8a9c87256
課題
会場のどこからでも空港や航空機を観れるが,その航空機に関する情報を来場者が簡単に知ることができない.
離発着のタイミングに合わせた投影に必要なリアルタイムなフライト情報を機械的に取得する方法が現状で提供されていない
イベントを開催するにあたって,上記のような課題が挙げられていました.実際にイベント会場を視察した際に,会場から航空機が見え始めて約90秒から120秒の間に着陸が完了することを確認していました.そのため,会場から航空機が見え始める前までに離着陸する航空機を推定,特定して投影を行わなければなりませんでした.
そこで本研究に先立ち,フライト情報を提供している「Flight Aware」の「AeroAPI」というサービスを試してみました.このAeroAPIは,特定の航空機の出発地や到着地,離着陸予想間,使用される機体情報などのリアルタイムなフライト情報をデータとして取得できるサービスであり,この情報をもとに航空機を推定し,投影を行おうと考えました.中部国際空港に離発着予定の直近のフライト情報を一覧として取得して超刺しました.しかしこのサービスでは,概ね正しいフライト情報や到着予想時間が検証されましたが,航空機の進みや遅れから到着予想時間の更新にバラつきが生じ,実際の到着順とデータ上の到着順に差が発生しました.
以上のことから,航空機が見え始める前までに航空機を正確に推定,特定するためには,AeroAPIだけでなく,複数のAPIを使用して航空機の離発着の順序を推定できるシステム構成が求められました.類似サービスであるOpenSky Network APIを調査すると,出発地や到着地,機体情報などの各航空機の詳細なフライト情報は取得できないが,地理上の範囲を指定することで,範囲内で信号を受信した航空機の緯度経度情報や高度などが簡単に取得できることがわかりました.
よって,下記の2つのAPIを組み合わせて互いの取得可能情報を補うことで,航空機を特定する手法とシステムを開発しました.
Flight Aware AeroAPI
OpenSky Network API
https://gyazo.com/0a7872050b02523f0540632e49894d6fhttps://gyazo.com/5bb658630a8fde6be9c0b223bcd7bdc5
システム構成
私が開発したシステムでは,大きくPC1とPC2,プロジェクターの3つに分かれています.
PC1とPC2は,それぞれ別の役割として動作しています.PC1は,APIから情報を取得してGoogleスプレッドシートへ保存し,保存された情報をもとに航空機を推定,フライトを特定します.PC2は,航空機が推定,特定されたかを10秒間隔で監視し,投影すべきフライト情報が存在した場合には,投影する映像を作成,設定し,プロジェクターを通して,橋脚部へ投影します.
[PC1]
① 各APIからフライト情報を取得
② 取得した情報をGoogleスプレッドシートへ保存し,Google Apps Scriptを使用して,航空機の推定処理を行う
[PC2]
③ 10秒間隔で特定されたフライトがないか確認
④ 特定されたフライト情報をProcessingを使用し,投影する映像を作成
⑤ MadMapperを使用し,投影する範囲を設定
⑥ プロジェクターを通して,橋脚へ投影
https://gyazo.com/928ff3f4095a3f4e047edde2672a388a
航空機の離発着タイミング推定方法
まずOpenSky Network APIで,指定した範囲内で受信した航空機の情報を取得した後,取得した航空機の情報が1機であるか,複数機であるかを判別します.もし1機だった場合は,AeroAPIで取得して蓄積されている直近の中部国際空港で離発着する予定のフライト情報の一覧と照合し,一致したフライトの情報を投影します.もし範囲内で受信した航空機が,複数機だった場合は,データの更新時間が最新のものでかつ,滑走路に最も近いものを次に到着するであろう航空機と推定し,投影を行います. https://gyazo.com/2ead56a74e2fbf58e4e2c34787c70ed3
イベントでの実証と考察
投影したコンテンツの一覧
https://gyazo.com/3178138cb4d6c747506fe2faeda6e073
実証結果
本イベントでは,2日間で90店舗以上の出店が並び,プロジェクションマッピングだけでなく,アートワークや音楽など複数の企画が展示されました.合計で9,700人もの来場があり,イベント会場は賑わいました.
本研究で開発したシステムは,綺麗な夕焼けを背景にしてコンテンツの投影ができ,来場者や主催者から高い評価を得ました.実証の結果,航空機の離発着のタイミングに合わせてフライト情報を自動で投影し,来場者に向けて適切な情報提供が行われたことを確認できました.しかし,離発着情報の投影に1分程度のズレが5回に1回ほど発生し,その際は手動でタイミングを図り投影を行いました.また,航空機が離発着を終えても,該当のフライト情報が投影され続けていたケースも見受けられました.
考察
以上の結果から,2つのAPIを使用して離発着する航空機を推定することで,来場者に対して適切な航空機のフライト情報を提示することができたと考えています.
しかし,航空機によってADS-B信号の送受信タイミングに違いがあり,そのタイミングが推定処理の時間に影響を与えたことや,各APIから情報を取得する際のネットワーク環境が影響して,情報の投影にズレが発生したと考えられます.また,ADS-B信号を受信する地点が異なり,推定処理時間に影響が及ぼしたことや,フライト情報が投影され続けてしまった要因の1つとして,本システムでは航空機の離発着が完了したことを確認する方法が確立されていなかったことが原因だと考えています.
https://gyazo.com/1e1822caecaa905173fac26c6e6f4262https://gyazo.com/ffc956f5114b2e27da669b8cabc19f7b
https://scrapbox.io/files/6735c9d7fcd397afb70cf0dd.mov
今後の展望
より正確な推定を行い,離着陸情報を適切なタイミングで提供できるようにしたい.
イベント終了後,Flightradar24の公式APIが公開されたため,正確な情報がより簡単に入手できる可能性が高まった.各APIの精査を再度行いたい.
全国の空港や,空港に関連するイベントでも利用できるようなシステム開発を目指したい.
感想
私は今回初めて,学会での発表を行いました.発表するにあたって,スライド作成や発表の仕方を練習しましたが,実際に登壇すると緊張が勝ってしまい,聞き入ってしまうような発表にはまだまだでした.他の方の研究を聞いて,興味が出たものや自分の研究に活用できそうな研究もあり,大変参考となりました.特に本研究を「星空」の分野にも活用できるのではといったご意見をいただいたことは,今後のシステム開発を進める上での貴重な参考となり,有意義な1日となりました.
今回の学会発表で,初めて静岡県熱海市を訪れました.海や山が綺麗で自然豊かな景観に心惹かれました.夜のビーチから見える街並みと海は,まさに息をのむような美しさでした。昼食には,日本一分厚いと言われるカツ丼を食べました!本当に肉が分厚くおいしかったです.
https://gyazo.com/22e7de4c5555b2cf77bd043374089047https://gyazo.com/2ea65635c9b07781f762ee42c8513a72