Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
【授業スライド】教員リムーバー
Search
Yuiga Wada (和田唯我)
October 05, 2022
Technology
79
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【授業スライド】教員リムーバー
慶應義塾⼤学 B3 和田唯我 / Yuiga Wada
-
About me
-
Blog
Yuiga Wada (和田唯我)
October 05, 2022
Transcript
31 slides
クラウドコンピューティング実験 『教員リムーバー』 4班 • XXXXXXX 和田唯我 • YYYYYYY • ZZZZZZZ
• UUUUUU
『教員リムーバー』 ・自動で板書を撮り, webから各授業の板書を閲覧することができるシステム ・画像処理で教員を抹消する!! (opencv + numpy)
特徴 ・時間割から板書を閲覧できる ・画像処理で教員を抹消する!! (opencv + numpy) ・PDF化して板書をダウンロードできる
センシング概要
アーキテクチャダイアグラム
Demo
None
None
None
None
アーキテクチャダイアグラム
センシング
システムで用いたセンサ USBカメラ 障害物センサ ボタンセンサ
センシング • Button 起動 • IR Obstacle Avoidance Module(障害物センサ) 物体の有無を検知
◦ 物体(黒板消し)有→60秒ごとに撮影 ◦ 物体(黒板消し)無→5秒ごとに撮影 撮影した画像をMQTTで送信 黒板消し有 黒板消し無
MQTTでの通信 ・画像サイズを1280×720と指定したので、1度にデータを送れない(128 kBが上限らしいです) →base64にして画像を適当なサイズにばらして送信し、いったんS3に格納 →最後のデータが送られてきたらS3のデータを集めて、再構築しS3保存 ・通信がうまくいかないときがある →データの再送
カメラ 得られた画像を4種類に分類 ・background→ 起動時に1枚撮影 ・normal → 黒板消しがある状態で60秒ごとに撮影 ・erasing → 黒板消しがない状態で5秒ごとに撮影
・finish → 黒板消しが置かれたタイミングで撮影
Web: index (時間割)
None
Web: index (時間割) • 教室名を指定して, DynamoDBから時間割を取得 • 授業名からsid(後述)を計算し, 板書表示用のページ(presenter)に飛ばす (CSS-FrameworkはBulmaを使用)
Web: index → presenter name: 授業名 sid: 授業名をutf-8→SHA256でハッシュ化 ⇒ Query-StringとしてURLに付加
Web: presenter (板書表示)
None
Web: presenter (板書表示) • Web上にアップロードされた画像ではないため、ファイルの場所を指定できない → 画像のバイナリデータをbase64でエンコード → imgタグのsrc要素にエンコード結果を指定すると画像が表示できる •
画像をスライドにして表示 → スライダーが作れるJavaScriptライブラリ(Swiper)を利用 • Download!ボタンを押すと、PDF化 → 極力lambda上でやりたくない ⇒ javascriptで行う. (jsPDF)
Download: 教員のいない板書
画像処理 (CloudWatchで定期実行)
画像処理: 背景差分 背景差分 Gray Scale
画像処理: 背景差分 背景差分 (gray) 収縮 (次のスライド)
画像処理: モルフォロジー変換 収縮 (Erosion) → 黒板の文字だけ消す 膨張 (Dilation) → 線を潰して面積を増やす
画像処理: 教員抹消 一次元に写像. 教員を抹消するmaskを生成
画像処理 ハマった点 • Lambda上でOpenCVを使うとドツボにハマる → opencv-python はOpenCV のビルドが必要 → ビルド環境と実行環境を一致させる必要がある
( localでpip&zipだけではダメ) ⇒ Docker上でOpenCVをビルド ⇒ ビルドしたOpenCV + numpy + opencv-pythonを zipでlambdaに. ⇒ LambdaのLayer (Lambda Layers)を作成
ありがとうございました ページのURL: https://uaby7jdky5.execute-api.us-east- 1.amazonaws.com/index
More Decks by Yuiga Wada (和田唯我)
See All by Yuiga Wada (和田唯我)
機械学習基礎 TAレクチャー回「学部二年生はどう生きるべきか」
yuigawada
1
200
【AIC】Image Captioningにおける自動評価の最前線
yuigawada
0
89
未踏ブースト会議資料
yuigawada
0
260
論文速読24
yuigawada
0
130
【授業スライド】Well-beingとカルトの関係
yuigawada
0
390
論文速読23
yuigawada
0
210
自己紹介スライド
yuigawada
0
2.1k
【ミニハッカソン】 arXiv Slider
yuigawada
0
390
【輪読資料】多次元正規分布でGibbs Sampling (情報工学機械学習9.3.4)
yuigawada
0
99
Other Decks in Technology
See All in Technology
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
4
1.1k
これからのデータエンジニアの役割について考える / Rethinking the Role of Data Engineers in the AI Era
okiyuki99
0
490
小さなエージェントから始めてみよう!実践コンテキストエンジニアリング
iwamot
PRO
0
120
Quick Automate | 目指せ Quick マスター 12
inariku
PRO
1
110
思考過程から秘密が漏れる:Amazon Bedrock上のKimi K3を5つの方法で攻めたら、25回中22回漏洩した話
yama3133
1
160
2026-11-11 Tamachi.sre#7 PaCにインフラリソースの命を救われました。 / PaC saves the infra resource life
masasuzu
1
170
常時稼働エージェントの作り方(Claude公式ブログを資料化)
minorun365
PRO
5
4.1k
Claude Codeで新規事業を伸ばせるか? Zennの試行錯誤の記録
wadayusuke
2
180
農夫は秘伝のタレを知らない - NOBODY KNOWS THE HIDDEN SOURCE - Kaggriculture 3rd Place Solution
masspeaks
0
320
AI時代に求められる優秀なTechLeadの振る舞い
pospome
11
16k
81天的 AI Agent 軟體開發團隊治理實務分享
regionbbs
0
170
JAWS_FESTA2026_オンプレ-AWS間プロキシサーバの移行_性能_障害対応で得た実践ノウハウ_高島一晃.pdf
tkazuaki0820
1
120
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
10k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
380
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
640
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
A Soul's Torment
seathinner
9
3.9k
WCS-LA-2024
lcolladotor
0
1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
610
A Tale of Four Properties
chriscoyier
163
24k
Git: the NoSQL Database
bkeepers
PRO
433
67k
The agentic SEO stack - context over prompts
schlessera
0
1k