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
ブラウザ上でリアルタイム画像認識と認識結果に連動した描画(MediaPipeとp5.js) / xTech ゆるっとLT (202109)
Search
you(@youtoy)
PRO
September 03, 2021
Technology
0
700
ブラウザ上でリアルタイム画像認識と認識結果に連動した描画(MediaPipeとp5.js) / xTech ゆるっとLT (202109)
you(@youtoy)
PRO
September 03, 2021
Tweet
Share
More Decks by you(@youtoy)
See All by you(@youtoy)
WebHID API で Joy-Con・DUALSHOCK 4 のセンサーをブラウザから利用する / IoTLT vol.109
you
PRO
0
63
UIFlow 2.0 で MQTT をやってみた! / IoTLT vol.108
you
PRO
0
1.5k
UIFlow 2.0 と ATOMS3 の組み合わせで LINE通知を試す / ビジュアルプログラミングIoTLT vol.16
you
PRO
0
140
技術コミュニティの中での生成AI(自身の観測範囲での事例について) / 23 Xmas Talk / 20231209
you
PRO
0
1.4k
AI・機械学習ライブラリを使ったWebアプリでワクワク体験! / Qiita Night~AI、機械学習 / 20231201
you
PRO
2
2.1k
p5.js・p5playを使った体験イベントに参加した子達が手を動かすこと・考えることを楽しんでくれた話 / p5.js勉強会(第九回) / 20231126
you
PRO
0
48
LINEでのコミュニケーションにマスコットキーホルダーを使ってみる / LINEを使ったLT大会 #5
you
PRO
0
2.3k
イベントで大活躍の電子ペーパー名札 〜M5PaperとUIFlow+α〜 / #ヒーローズリーグ 2023 予選 in 第二部
you
PRO
0
86
ハッカソンでWebの技術を使った作品を作ってみた 〜ブラウザで機械学習やデバイス制御など〜 / HTML5 9th Anniversary
you
PRO
0
110
Other Decks in Technology
See All in Technology
技術イベントはなんとかひねり出す 日経の技術広報の取り組み/techpr3
nishiuma
0
230
KTC_DBRE.pdf
_awache
1
290
期待しすぎずに取り組む両面 TypeScript
shozawa
4
540
ビジネスとコード品質の接合点 そしてコード品質がそこに及ぼす影響 / The Intersections of Business and Engineering, and The Impact of Code Quality There
mtx2s
11
1k
Azureコストは水道代/The_47th_Tokyo_Jazug
aeonpeople
3
390
これまでのキャリアとこれからMLエンジニアとしてどう動くか
masatakashiwagi
1
700
生成AIサービスPanorama AIご説明資料
sdt
0
300
あらゆる商品を扱う商品データベースを再設計した話 / product db re-architecture
rince
8
3.8k
エバンジェリスト活動を7年やってきて見えてきた、コミュニティとエバンジェリストの関係
soracom
PRO
1
200
イチから学ぶdbt / Learn dbt from scratch
shinyaa31
0
150
中学生でもわかる深層学習
e869120
10
3k
LLMプロダクト事業の立ち上げにおける挑戦
layerx
PRO
7
1.5k
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
42
6.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
75
4.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
644
57k
Mobile First: as difficult as doing things right
swwweet
215
8.5k
Web development in the modern age
philhawksworth
201
10k
Faster Mobile Websites
deanohume
296
30k
Automating Front-end Workflow
addyosmani
1353
200k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
Done Done
chrislema
178
15k
Building Applications with DynamoDB
mza
88
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
Transcript
ブラウザ上でリアルタイム画像認識と 認識結果に連動した描画(MediaPipeとp5.js) 2021年9月3日 (金) xTech ゆるっとLT: Fukuoka.php and AR_Fukuoka @オンライン
豊田 陽介 ( @youtoy )
豊田陽介(@youtoy) 自己紹介 普段は、某通信会社の研究所勤務 自宅にたくさん ビジュアルプログラミング、 IoT関連、その他の複数の コミュニティを主催 ガジェット好き その他 IT系イベント主催、登壇や運営なども
子ども向けの活動いろいろ(IT系以外も) プライベートでの活動
技術雑誌で連載中(機械学習関連) ・Googleさんの Teachable Machine に関する記事 ⇒ 全4回のうち 2回目まで月刊I/O に掲載済
いきなり余談から
最近作ってみたものの1つ ビジュアルプログラミング を使って刀(ダイソーで 200円)を光らせる
イベント中にさくっと試作したもの Scratch 3.0 のビデオ モーションセンサーを 使って花火を打ち上げ
以前、雑にピクトグラムになってみたやつ ビジュアルプログラミング を使って(Scratch 3.0+独自 拡張「PoseNet2Scratch」)
ガジェットを使うものとか インタラクティブな作品が好き
面白そうと思うものに 幅広く手を出してみたりする
ちょこちょこ動画をアップしています ここ 2ヶ月の間に作ってアップしたもの
ここ2ヶ月の動画に関連するキーワード p5.js、MediaPipe Holistic、Scratch 3.0、M5stamp Pico、MQTT、 micro:bit、MakeCode、Grove、LEDテープ、Alexa、toio、 アルファチャンネル付動画、色画用紙の工作あそび・しかけ付カード、 Arduino MKR Wifi
1010、MediaPipe Selfie Segmentation、 Handtrack.js、MediaPipe Pose、PoseNet2Scratch、Node-RED、 はじめてゲームプログラミング、MediaPipe Hands、M5Stack、UIFlow
その中で頻出している「MediaPipe」 p5.js、MediaPipe Holistic、Scratch 3.0、M5stamp Pico、MQTT、 micro:bit、MakeCode、Grove、LEDテープ、Alexa、toio、 アルファチャンネル付動画、色画用紙の工作あそび・しかけ付カード、 Arduino MKR Wifi
1010、MediaPipe Selfie Segmentation、 Handtrack.js、MediaPipe Pose、PoseNet2Scratch、Node-RED、 はじめてゲームプログラミング、MediaPipe Hands、M5Stack、UIFlow
今日の本題の1つ
「MediaPipe」とは? ・Googleさんが提供している機械学習を使った仕組み ・Python用やスマホ用、C++用などが提供されている ・MediaPipe の JavaScript版(TensorFlow.jsベース) ・Face Mesh ・Face Detection
・Hands ・Holistic ・Pose ・Selfie Segmentation など...
認識できる対象の例(一部抜粋) Hands Face Mesh
認識できる対象の例(一部抜粋) Holistic Selfie Segmentation
自分がよく使う機械学習系の技術 (Teachable Machine も好き)
JavaScript版は ブラウザ上で動作
実現できることの例
人と背景とを分離(Selfie Segmentation) 普通の PC内蔵カメラで 撮った画像で人と背景を 分離、その間に描画
背景分離の別パターン 人と背景との間への描画
両手のキーポイントを認識(Hands) 両手の位置と距離によって 立方体の描画位置と 大きさが変化
手のキーポイント認識の別パターン 動画の中に動画 + 指先の位置に...
手のキーポイント認識の別パターン2 指を曲げているか 伸ばしているかによって 画像表示を ON/OFF
顔・手・姿勢の認識(Holistic) 目・口の動きと体の 揺れをイラストに反映 (ほぼ顔の認識しか...)
デモ動画に共通すること
認識の処理と一緒に使っているのは...
今日の本題のもう1つ 描画(p5.js)
JavaScriptの描画ライブラリ「p5.js」 メディアアート系などで有名な Processing の JavaScript版 •home | p5.js https://p5js.org/
•p5.js Web Editor https://editor.p5js.org/ •OpenProcessing https://openprocessing.org/ オンラインで開発 できる環境も
2Dだけでなく3Dも 公式リファレンス
3D描画の例
余談2: ブラウザで動くので...
JavaScriptで外部デバイスとの通信 ブラウザ上で実行 Node.js ・Web Serial ・Web Bluetooth ・Fetch API ・axios等を利用
・WebSocket API ・MQTT.js等を利用 ・Node Serialport ・noble・bleno ・Fetch API ・axios等を利用 ・ws等を利用 ・MQTT.js等を利用 シリアル通信 BLE HTTPリクエスト WebSocket MQTT
JavaScriptで外部デバイスとの通信 ブラウザ上で実行 Node.js ・Web Serial ・Web Bluetooth ・Fetch API ・axios等を利用
・WebSocket API ・MQTT.js等を利用 ・Node Serialport ・noble・bleno ・Fetch API ・axios等を利用 ・ws等を利用 ・MQTT.js等を利用 シリアル通信 BLE HTTPリクエスト WebSocket MQTT
BLEと組み合わせると、例えば... カメラでとらえた人の動き (手の動き)とガジェット の動きを連動
ブラウザのデバイス系APIでの通信 ・ブラウザから BLE・シリアル通信で制御 ⇒ toio・M5Stack・micro:bit 等に対して使った例 手の動きに連動した 6台の toio の同時制御
M5Stack Core2 へ 文字送信・表示、 画面の色変更 micro:bit の加速度 (XYZ)のグラフ化
終わり!