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
Javascriptで試作した様々な仕組みの話(機械学習・物理・画像や音など) / Saita...
Search
you(@youtoy)
PRO
October 14, 2021
Technology
0
1.7k
Javascriptで試作した様々な仕組みの話(機械学習・物理・画像や音など) / Saitama.js vol.0
you(@youtoy)
PRO
October 14, 2021
Tweet
Share
More Decks by you(@youtoy)
See All by you(@youtoy)
もくはりでのモノ作りと自身のモノ作り活動 / もくはり文化祭2024 オープン記念イベント
you
PRO
0
35
"かわいい" がテーマのハッカソンでWebの技術を使って魔法の世界を作った話など / HTML5 10th Anniversary
you
PRO
0
85
ブラウザで AI・機械学習が扱える TensorFlow.js が使われているライブラリなどの話 / #さくらのAI Meetup vol.4「ブラウザ」
you
PRO
0
180
Blynk と Raspberry Pi Pico W で IoT 〜 MQTT・HTTPリクエストの組み合わせも 〜 / IoTLT vol.114
you
PRO
0
2.5k
AIを活用したWebアプリのプロトタイプを作ってコンテストや展示に出してみた話 / 大阪工業大学 ネットワークデザイン学科 LT大会 2024v2
you
PRO
0
100
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
620
WebHID API で Joy-Con・DUALSHOCK 4 のセンサーをブラウザから利用する / IoTLT vol.109
you
PRO
0
2.4k
UIFlow 2.0 で MQTT をやってみた! / IoTLT vol.108
you
PRO
0
5.1k
UIFlow 2.0 と ATOMS3 の組み合わせで LINE通知を試す / ビジュアルプログラミングIoTLT vol.16
you
PRO
1
2.7k
Other Decks in Technology
See All in Technology
“常に進化する”開発現場へ! SHIFTが語るアジャイルQAの未来/20250306 Yuma Murase
shift_evolve
0
100
OPENLOGI Company Profile
hr01
0
60k
アジリティを高めるテストマネジメント #QiitaQualityForward
makky_tyuyan
1
400
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership, regardless of position
madoxten
15
8.4k
エンジニアの健康管理術 / Engineer Health Management Techniques
y_sone
4
890
20250309 無冠のわたし これからどう先生きのこれる?
akiko_pusu
1
150
エンジニアのキャリアパスと、 その中で自分が大切にしていること
noteinc
3
280
開発組織を進化させる!AWSで実践するチームトポロジー
iwamot
2
550
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.6k
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
300
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
120
事業モメンタムを生み出すプロダクト開発
macchiitaka
0
110
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Typedesign – Prime Four
hannesfritz
41
2.5k
Building Applications with DynamoDB
mza
93
6.2k
GraphQLとの向き合い方2022年版
quramy
44
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
115
51k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Transcript
Javascriptで試作した様々な仕組みの話 (機械学習・物理・画像や音など) 2021年10月14日 (木) Saitama.js vol.0 @オンライン 豊田 陽介 (
@youtoy )
豊田陽介(@youtoy) 自己紹介 普段は、某通信会社勤務 Microsoft MVP (2021年10月より ) ガジェット好き その他 IT系イベント主催、運営や登壇なども
子ども向けの活動いろいろ(IT系以外も) プライベートでの活動 ビジュアルプログラミング・ IoTに関するコミュニティなど
今日の話題
JavaScript を使い ブラウザ上でこれらを扱う
JavaScript 画像の機械学習 音の機械学習 VTuber的なこと 物理演算エンジン WebAR IoT系 ガジェット系
ここから、 技術の話と実例と
【技術の部分の話1】 人を対象にした画像認識系
MediaPipe ・Googleさんが提供している機械学習を使った仕組み ・Python用やスマホ用、C++用などが提供されている ・MediaPipe の JavaScript版(TensorFlow.jsベース) ・Face Mesh ・Face Detection
・Hands ・Holistic ・Pose ・Selfie Segmentation など...
認識できる対象の例(一部抜粋) Hands Face Mesh
認識できる対象の例(一部抜粋) Holistic Selfie Segmentation
【技術の部分の話2】 2D・3D描画
p5.js メディアアート系などで有名な Processing の JavaScript版 •home | p5.js https://p5js.org/
•p5.js Web Editor https://editor.p5js.org/ •OpenProcessing https://openprocessing.org/ オンラインで開発 できる環境も
MediaPipe + p5.js = ?
ブラウザ上の処理でVTuber的なこと MediaPipe Holistic(人の顔や 姿勢の認識) + p5.js(画像表示系の処理)
ブラウザ上で両手の認識と3D描画 MediaPipe Hands(両手の認識) + p5.js(WebGLベースの3D描画)
ブラウザ上での人物と背景の分離+描画 MediaPipe Selfie Segmentation (人物と背景の分離) + p5.js(2D・3D描画)
MediaPipe の 最近のアップデート
ブラウザ上で虹彩の位置まで検出できる! MediaPipe Face Mesh (人の顔の検出) + p5.js(2D描画)
【技術の部分の話3】 音の機械学習モデル作成 +推論
Teachable Machine(画像・音声・ポーズ) Googleさんがオンラインで提供している仕組み ⇒ ブラウザ上の操作で学習ができて推論のお試しも
【技術の部分の話4】 Bluetooth通信(BLE)
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
デバイス系のAPIについてはこんな話も •Appleがプライバシ上の理由から、NFC、Bluetooth、他14のWeb APIの実装を拒否 https://www.infoq.com/jp/news/2020/07/apple-fingerprinting-privacy/ •Mozilla Specification Positions https://mozilla.github.io/standards-positions/ 自分に閉じて使うパターンではない場合、特に注意! (ユーザが許可する操作なしに利用できないもの
ではあるものの...)
Teachable Machine + Web Bluetooth API = ?
ブラウザで音の認識とBluetooth通信 Teachable Machine(音を対象) + Web Bluetooth API
共同主催しているコミュニティで出展して 終了後 モノ作り系イベント(Maker Faire Tokyo 2020)で展示 体験:子どもも大人も
実例メイン
【技術の部分の話5】 リアルタイム通信(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
MQTT + p5.js = ?
2台のスマホの描画連動
物理演算エンジン + 画像認識 + p5.js = ?
物理演算エンジンエンジン+手の認識
ARマーカー認識 + p5.js = ?
ARマーカー認識+2D描画
イベントの話 x 2 (connpass に掲載)
ビジュアルプログラミング x IoT 再来週 10/28(木)20:00 から(視聴は YouTube にて)
ビジュアルプログラミング全般 3週間後、 11/2(火)19:30 から(視聴は YouTube にて)
終わり!