NASAのオープンデータで何を作る?ハッカソンで開発された作品紹介
NASAのデータを使って行うハッカソンで開発された、宇宙のデータを使った作品をご紹介します!
2019年10月18~20日、NASAのデータを使って行うハッカソンNASA Space Apps Challenge 2019が世界各所で開催されました。
なかでも、和歌山県は串本で開催されたNASA Space Apps Challenge KUSHIMOTO 2019では、さくらインターネットの牟田が審査員として参加し、衛星データプラットフォームTellusのプレゼンも行いました。
串本会場が特徴的なのは、全9チームのうち、6チームが高校生チーム(うち1チームは小学生含む)とのこと。
実行委員の若林健一さんに、各チームがどのようなプロジェクトに取り組んだのかをまとめていただきました。
NASA Space Apps Challengeとは?
こんにちは、NASA Space Apps Challenge KUSHIMOTO 2019に実行委員&当日の技術メンターとして参加しました若林です。
NASA Space Apps Challengeとは年に一回、世界中で同時開催されるNASA主催のハッカソンイベントで、今回が8回目の開催となります。
今年は80以上の国において230箇所以上で開催され、29,000人が参加しました。これは過去最大の規模だそうです。
ハッカソンというのは、ある決まったテーマに沿って短期間で開発を行う開発イベントで、NASA Space Apps Challengeでは
・NASAのオープンデータと使用すること
・あらかじめ定められたChallengeと呼ばれるテーマの中のいずれかに該当していること
の2つが条件として決まっていて、この2つを満たしていれば技術的にはどんなものを作っても構いません。
NASAのオープンデータは以下のサイトにまとめられています。
NASA’s Open Data Portal
https://data.nasa.gov/
また、APIも公開されています
NASA {APIs}
https://api.nasa.gov/
NASAのデータは基本的にロゴ以外はPublic domainと呼ばれる、制約条件なく使えるデータポリシーになっています。ただし、参照先はきちんと掲示をする必要があります。
ルールさえ守れば、ハッカソンの期間中以外でもだれでも無料でデータにアクセスできますので、興味のある方はデータを探して見てはいかがでしょうか?
では、実際のハッカソンではこれらのデータを使ってどんなアプリケーションを作ったのか、各チームの開発内容について発表順に紹介していきます。
地球上の災害イベントの監視と衛星写真の地図データ化
チーム名:GEOLONIA(一般)
使用データ:
・EONET(Earth Observatory Natural Event Tracker)
NASAが衛星データを使って発見した災害情報を配信するAPI
・visible eartch Collection: Blue Marble(衛星画像)
作品概要:
発表された作品は2つで、ひとつはEONET(Earth Observatory Natural Event Tracker)というAPIとチーム名でもあるGEOLONIA社の地図サービスを組み合わせて地球上の自然災害イベントを監視するシステム。
https://eonet-clinent.netlify.com/
もうひとつは、衛星で撮影された全球写真をラスタータイル(地球を正方形のタイルで分割したもの)に加工して、地図データとして誰でもが自由に使えるようにするというものでした。
https://geolonia.github.io/blue-marble/tiles/leaflet.html
若林さんコメント:
さすが、オープンソースの世界で活動するプロのエンジニアの作品。アプリケーションとしての完成度が高く、さらにオープンソース(データ)として誰もが自由に使える形での作り込みまでできているというのは素晴らしいの一言です。
模擬人工衛星のためのロケット打ち上げ場探し
チーム名:チーム海南(和歌山県立海南高等学校)
使用データ:
・Landsat 8の衛星写真(Tellus上で閲覧)
・MapExpertが提供する「用途地域マップ」
・国土交通省が提供する「航空路データ」
作品概要:
メンバーが普段取り組んでいる缶サットは、小型ロケットを使って小型模擬人工衛星を約100mの高さまで打ち上げることから、どこでも自由に上げられるというわけではありません。衛星データを始めとする複数のデータを重ね合わせて必要なスペースの平地で人が入ることのできる場所を探すことに挑戦しました。
若林さんコメント:
自分たちがやりたいこと(缶サット)にテーマを結びつけたことが、完成度を高められた理由だと思います。
プログラミングもデータも道具でしかありません、それらの道具を使って自分たちが成し遂げたいことを実行する、もしくは実行しやすくする。これが本来のプログラミングやオープンデータの用途であると再認識させられました。
自分だけの星座投稿サービス
チーム名:CONSTELLATOR!(大阪、東京の高校生・小学生)
使用データ:
・Deep Star Maps(星のカタログ)
作品概要:
このチームが開発したのはCONSTELLATOR!というオリジナルの星座が作って共有できるアプリ。
NASAが提供する位置、明るさ、色が載っている星のカタログから星を識別し、星をクリックしていくと星と星の間に線が引かれ、自分だけの星座を作ることができるというものです。
若林さんコメント:
メニュー画面、星座作成画面、ギャラリー(みんなが投稿した星座を見る画面)はもちろん、投稿した星座の情報を再編集するところまで作り込まれており、アプリとして必要な機能がすべてそろった文句のつけようがない完成度が優勝の決め手になったのではないかと思います。
このチームはNASAのグローバル審査へ進みますが、その内容はこちらで見ることができます。英語のページ、動画もすべてチームメンバーだけで作ったものです。
宇宙ステーションの接近を教えてくれるアプリ
チーム名:GET YOUR CHANCE(和歌山県立田辺高等学校・和歌山県立串本古座高等学校)
使用データ:
・NASAが提供する宇宙ステーションの現在位置を取得するAPI
・ブラウザから取得できる現在位置情報
作品概要:
宇宙ステーションが自分がいる場所(住んでいるところ)でいつ通過するのを知ることができるアプリです。
若林さんコメント:
宇宙ステーションが見える日時の算出はもちろん、ブラウザからの現在位置情報の取得といった基本的なことから初めて、発表時点ではローカルのwebサーバーを立てるまでになっていたのが素晴らしかったです。この2日間に大きな進歩を遂げたチームのひとつです。
模擬人工衛星からのデータの可視化ツール
チーム名:SHADE OF PAULOWNIA(和歌山県立桐蔭高等学校)
使用データ:
・OpenMCT(Mission Control Center用オープンソースソフトウェア)
作品概要:
缶サットから取得したデータのリアルタイムによる可視化を行うことにより、成果取りまとめの効率化と高度化を目指して開発しました。
若林さんコメント:
このチームもまた、自分たちの好きな缶サットをテーマに取り組んだことが開発のモチベーションとなり、今までとは違う分野の世界を見ることができたと思います。
残念ながら完成には至りませんでしたが、これが完成してオープンソースソフトウェアとして公開されれば、全世界の缶サットチームにとって福音になることでしょう。これにめげずにチャレンジを続けていって欲しいと思います。
火災の起こりやすい場所を調査するアプリ
チーム名:Yukari(和歌山信愛高等学校)
使用データ:
・FIRMS(衛星データから解析した過去の火事が起こった場所が分かるデータ)
作品概要:
過去10年間の火事の場所を調べて火事が起こりやすい場所を予測し、実際の地図にデータを重ねて火事が起こりやすい場所の可視化に挑戦。
若林さんコメント:
実際に動作するアプリの形にすることはできませんでしたが、開発の過程において人工知能の活用やデータの意味を知る良い経験になったと思います。
「女性の働き方」というテーマがあまりにもシリアスだったため、審査員のみなさんもシリアスに反応しやや厳しい評価になったのではないかと思います。しかし、それはある意味において彼女たちの姿勢が評価されたことの現れだと感じました。
模擬人工衛星による火災現場の状況把握
チーム名:Ex_combipesination(和歌山県立向陽高等学校)
使用データ:
・FIRMS(衛星データから解析した過去の火事が起こった場所が分かるデータ)
作品概要:
衛星データで過去24時間に火災が発生している箇所を探し、模擬人工衛星を投下して現地の様子を撮影する。
若林さんコメント:
模擬人工衛星の打ち上げ高さやブラジルで発生する森林火災の広さを考えれば、現時点ではまだまだ現実的な解ではないかもしれませんが、自分たちの活動を社会的に意味のあるものにしたいという想いのこもったプロジェクトでした。
信愛高校とともに難しいテーマではありましたが、両校とも最後までやりきったことが間違いなく次につながると思います。
Tellusのデータを使ってオリジナルの醤油皿を作ろう
チーム名:Tellus-Sashimi(一般)
使用データ:
・AVNIR-2(衛星画像)※TellusのAPIを使用
作品概要:
Tellusの衛星データから潮岬の地形を取得。Tellus開発環境のJupyterLabを使って、輝度データに変換し高さデータを適用して作ったデータから3Dモデルを作成。これを3Dプリンタで出力した判を、粘土で作った皿にこの押すとお皿に潮岬の形に凹凸のついた醤油皿ができあがります。
お皿に醤油を入れると凹凸で醤油の濃淡がつき、お皿の上に潮岬が浮かび上がるというギミックです。
若林さんコメント:
ユニークな発想とそれをガチの技術で実現してしまうというギャップに会場内は大笑い。すべての発表が終わった後に「Tellus-Sashimiが一番よかった」「Tellus-Sashimiしか覚えてない、全部持っていかれた」という感想が聞かれるほどの人気プロジェクトでしたが、残念ながらNASAのデータを使っていない(使ったのは、Tellusのデータと開発環境)という根本的な問題があったためグローバル進出候補の審査対象外となりました(笑)。
しかし、今回の人気No.1のプロジェクトであったこと、学生のみなさんに大人のガチ技術を見せつけたことは間違いなかったです。
オーロラ出現予測プログラム
チーム名:KAWAMO55(一般)
使用データ:
・DONKI web service API
作品概要:
太陽活動データを使って指定の日時・場所からオーロラが出る可能性があるかどうかの予測を表示する。
若林さんコメント:
本来、太陽活動データは磁気嵐や宇宙飛行士の船外活動の計画に利用されているのですが、これをオーロラの予測に利用しようという発想がすごい。
私自身は、なんでそんなことができるのかまったく理解できていませんが、データというのは、それを使う人によって新しい用途が生まれるものなのだと感じました(醤油皿のプロジェクトも含め)。
実行委員の若林さんから一言
参加した学生さんの多くは、缶サットなどの活動を通して機構やデバイス制御技術において高いスキルを有していたものの、web技術に不慣れなこともあって、急遽web技術とGitHubの勉強会を開催するなどチーム間で競うことよりも全体のスキルアップを目指したハッカソンになったと思いますし、発表内容を見てもそれぞれが学んだことをきちんと自分のものにしてくれていることがよくわかりました。
今回は、web技術に一日の長があるチームが優勝となりましたが、今年web技術を身に付けた他のチームが力を伸ばしてくれば来年はどうなるかわかりません、今からすでに来年が楽しみです。
NASA Space Apps Challengeを含め、これまでいくつかのハッカソンに参加してきましたが、ここまで全体的にレベルの高いハッカソンは初めて経験しました。今回は、運営スタッフとして裏方をやってきましたが、久しぶりに自分も参加者として加わりたいと思える、そんな2日間でした。
最後になりましたが、当日の発表の様子をYoutTubeで公開しておりますので、よろしければご覧ください。
衛星データAPIを楽しむという発想
今回のハッカソンでは宇宙に関連するデータを使って、様々な作品が生まれました。
「宇宙のデータ」というと難しく考えてしまいそうですが、アマゾンの森林火災など社会的意義の高いものから、オリジナルの醤油皿という身近なものまで色々な作品を作ることができます。
再掲になりますが、NASAでは様々なデータを公開しており、APIが公開されているものも多くあります。
●NASA’s Open Data Portal
https://data.nasa.gov/
● NASA{APIs}
https://api.nasa.gov/
また、衛星データプラットフォームTellusでも衛星データを始めとする様々なデータのAPIを公開しています。
https://www.tellusxdp.com/ja/dev/api
無料でアカウント登録ができ、さらに申し込めば、Tellus内のクラウド上にJupyter Labがプリインストールされた開発環境が無料で提供されます。ぜひ、チャレンジしてみてください。
皆さんも宇宙のデータを使って、オリジナルな作品を作ってみませんか。
「Tellus」で衛星データを触ってみよう!
日本発のオープン&フリーなデータプラットフォーム「Tellus」で、まずは衛星データを見て、触ってみませんか?
★Tellusの利用登録はこちらから