現在、関西のいわゆる観光地と言われる場所では、オーバーツーリズムの問題や、来る万博による観光客の増加による課題があります。一方で、地方の田舎では観光客の減少や過疎化の問題があります。 我々の作成するアプリは、上記のような問題を改善すべく、今までスポットの当たらなかった観光名所に行く契機とすることを目的としています。 関西にはまだあまり知られていない観光地がたくさんありますが、普通に検索したのではなかなか出会えません。ダーツという偶然性を利用することで、マイナーな観光地に興味を持ってもらうきっかけとしたいと考えています。
画面に向かってダーツを投げるモーションをすると、関西のどこかに着地します。着地地点では、指定したジャンルに応じたおすすめ観光スポットが表示されます、また、飛んだ場所に応じて、ダーツ熟練度が表示される仕掛けもあります。
最初の画面で「ダーツを投げる」を選択するとフロントカメラが起動します。起動画面で画面の指示に従い、ダーツを構える->投げるという動きをすると矢を投げたことが検知され、画面上で矢が飛んで行きます
ダーツを構えたことの検知はgoogleが提供するmediapipeというライブラリを用い、手首、肘、肩の3点について画面上のxyz座標を取得し、腕の角度や3点の位置関係から構えや投げた位置を検知し、結果に反映しています。
ダーツが飛ぶ先をマップで表示する機能の実現のために、Google mapsを用いています。飛び先の緯度経度に応じた住所を取得し、場所に行くボタンを表示します。
場所に行くボタンを押すと、旅行サイトのじゃらんから取得した観光スポットの情報が表示されます。表示される情報は「誰と行くか(子連れ・カップル・友達・シニア・一人旅)」や「ジャンル(観光・グルメ)」に応じた観光スポットを切り替えることができます。スポット名または画像をクリックすると、観光名所の詳細ページ(じゃらん)に遷移します。 また、投げたスポットに応じて、ダーツ熟練度が表示される仕掛けもあります。
ダーツは何度でも投げることができます。
偶然性を生むためにダーツというUIを採用しました。ダーツについて、画面上の操作ではなく、実際の動きをカメラで認識し、結果に反映させました。
実際に矢が飛んでいくような動きをgooglemapのフォーカスで実現しました。
大手旅行サイト(じゃらん)から情報を取ってくることで、どこに着弾しても自動で最新の情報が表示されるように実装しました。
- Android Studio
- googlemap API
- mediapipe
- jsoup
- kotlin
- java