Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
バスあと何分ミニサイネージ
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Satoshi Gachi Fujimoto
January 20, 2023
Technology
100
1
Share
バスあと何分ミニサイネージ
UXプロジェクト オープンデータソン2022のLT資料です
Satoshi Gachi Fujimoto
January 20, 2023
More Decks by Satoshi Gachi Fujimoto
See All by Satoshi Gachi Fujimoto
忘年会LT(2025)
satoshirobatofujimoto
0
56
バスあと何分ミニサイネージ
satoshirobatofujimoto
0
140
高専で制御を、大学でセンシングを学び、次は脳みそ
satoshirobatofujimoto
0
330
画像生成AIを使って勝負しよう
satoshirobatofujimoto
1
170
ガチマナ会 vol.1
satoshirobatofujimoto
0
270
画像生成AIを使って勝負しよう
satoshirobatofujimoto
0
320
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム@AIミーティング
satoshirobatofujimoto
0
220
VPS研究者が語る”VPS概論”
satoshirobatofujimoto
0
470
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム
satoshirobatofujimoto
0
250
Other Decks in Technology
See All in Technology
エムスリーテクノロジーズ株式会社 エンジニア向け紹介資料 / M3 Technologies Company Deck
m3_engineering
0
170
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
200
AWS運用におけるAI Agent活用術 / JAWS-UG 神戸 #11 LT大会
genda
1
280
(きっとたぶん)人材育成や教育のような何かの話
sejima
0
750
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
250
20260513_生成AIを専属DSに_AI分析結果の検品テクニック_ハンズオン_交通事故データ
doradora09
PRO
0
230
毎日の作業を Claude Code 経由にしたら、 ノウハウがコードになった
kossykinto
1
1.4k
Oracle Cloud Infrastructure presents managed, serverless MCP Servers for Oracle AI Database
thatjeffsmith
1
350
PdM・Eng・QAで進めるAI駆動開発の現在地/aidd-with-pdm-eng-qa
shota_kusaba
0
250
AI-Assisted Contributions and Maintainer Load - PyCon US 2026
pauloxnet
1
160
R&D 祭 2024 UE5で絵コンテ・作画の制作支援ツールをつくる話
olmdrd
PRO
0
170
O'Reilly Infrastructure & Ops Superstream: Platform Engineering for Developers, Architects & the Rest of Us
syntasso
0
210
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
520
Test your architecture with Archunit
thirion
1
2.2k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
340
Odyssey Design
rkendrick25
PRO
2
620
Code Reviewing Like a Champion
maltzj
528
40k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
740
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Site-Speed That Sticks
csswizardry
13
1.2k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
170
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
170
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Transcript
2023/01/20 UXプロジェクト オープンデータソン2022 バスあと何分ミニサイネージ
⾃⼰紹介 藤本賢志(ふじもとさとし) ニックネーム︓がちもとさん Co-founder KumaMCN 株式会社ナレッジコミュニケーション R&D戦略チームマネージャー ⾼専で制御を、⼤学でセンシングを学び、次は脳みそ。 ARナビゲーションや電動⾞いすの⾃動運転に関する研究開発。 専⾨は、コンピュータビジョン、画像処理、制御⼯学。
Twitterフォローお願いします︕ 👉 @sotongshi
こんなことありませんか︖ 熊本市の渋滞箇所数・平均速度は全国ワースト1位💦 ⽬の前をバス が通り過ぎた しかも2台同時に 次のバスは 30分後 https://www.city.kumamoto.jp/common/UploadFileDsp.aspx?c_id=5&id=24672&sub_id=1&flid=174687
⾃分専⽤のちっちゃなミニサイネージを作りました • ⾃宅やオフィスに⾃分だけのサイネージが欲しい • 時刻や〇停前ではなく「あと何分」だけが知りたい • 2021年11⽉ごろにGTFSリアルタイムの公開 https://twitter.com/sotongshi/status/1471274080100040705
GTFS(General Transit Feed Specification)とは︖ • 標準的なバス情報フォーマット • バスきたくまさんで使⽤しているデータをオープンデータ化 • GTFS(静的)︓経路情報や便情報など(CSV形式)
• GTFSリアルタイム︓⾞両の移動状況に関する情報や⾞両の位置情報など(JSON形式) https://km.bus-vision.jp/kumamoto/view/opendataKuma.html 事業者情報 agency.txt 事業者追加情報 agency_jp.txt 運⾏区分情報 calendar.txt 運⾏⽇情報 calendar_dates.txt 運賃属性情報 fare_attributes.txt 運賃定義情報 fare_rules.txt 提供情報 feed_info.txt 営業所情報 office_jp.txt 経路情報 routes.txt 経路追加情報 routes_jp.txt 通過時刻情報 stop_times.txt 停留所・標柱情報 stops.txt 翻訳情報 translations.txt 便情報 trips.txt GTFS(静的) GTFSリアルタイム
システムの流れ 1. 運⾏前にGTFS(静的)からデータを更新 2. M5StackのSDカードにWiFi設定、乗⾞停留所と降⾞停留所を書き込んでおく 3. M5Stackを起動すると1分おきにAPIを叩き、「あと何分」の情報を取得 GTFS リアルタイム Lambda
S3 API Gateway EventBridge M5Stack GTFS(静的) Lambda 停留所 あと何分
M5Stack • ディスプレイ付きマイコン • WiFiに繋がる • 様々なセンサーやアクチュエータを取り付け可能 https://docs.m5stack.com/en/core/basic_v2.6 https://www.switch-science.com/products/7363
運⾏前にGTFS(静的)からデータを⾃動更新 • EventBridgeを⽤いて毎朝4:15~5:30の間に15分おきにLambda関数(update)を実⾏ • Lambda関数(update) 1. GTFS(静的)データを取得 2. 提供情報(feed_info.txt)のfeed_versionが更新されていたらS3に保存 •
停留所情報(stops.csv)→ バス停⼀覧(stop_names.csv)を作成 • 経路情報(routes.csv) • 便情報(trips.csv) • 通過時刻情報(stop_times.csv) • 運⾏区分情報(calendar.csv) • 運⾏⽇情報(calendar_dates.csv) 3. 更新したか/最新かを返す S3 EventBridge GTFS(静的) Lambda
「あと何分」の情報を返すAPI • Lambda関数(minutes) 1. 乗⾞停留所→降⾞停留所の時刻表を作成 • 停留所情報(stops)から⼀致するバス停名のstop_idを取得 • stop_idに対応する通過時刻情報(stop_times)を取得 •
trip_idに対応する便情報(trips)を取得 2. service_idと⼀致する運⾏区分(calendar)と運⾏⽇情報(calendar_dates)から運⾏状況を確認 3. GTFSリアルタイムのTrip_Updateからtrip_idとstop_idが⼀致する通過時刻を取得 4. 通過時刻から現在時刻を引いて「あと何分」のリストを返す GTFS リアルタイム Lambda S3 API Gateway
M5Stackを起動すると1分おきにAPIを叩き、「あと何分」の情報を取得 • 必要な情報だけを取得できるAPIを作っておけば、簡単に連携できる • ノーコードでプログラミング • ユーザーはWiFi、乗⾞停留所、降⾞停留所の情報をSDカードに書き込んでおくだけ • ボタンが3つあるので、ページの切り替えが可能
https://togetter.com/li/1817346
AR(拡張現実)バージョン • 熊本駅周辺を3Dスキャン • バーチャル空間にナビゲーションを設計 • リアルとバーチャルの位置合わせ、ナビ表⽰ • バス停にはバーチャルサイネージを表⽰ https://twitter.com/sotongshi/status/1492760083503398915
オープンデータを活⽤するために • データの標準化(使いやすいCSVやJSON)と公開 • データを使って、必要な情報を提供するAPIを作成 • APIを実⾏することで様々なアプリ間での連携 • ノーコードでプログラミングをはじめよう
ご清聴ありがとうございました