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
p5.jsを使ったクリエイティブコーディングに機械学習やデバイス連携などを組み合わせている話 ...
Search
you(@youtoy)
PRO
December 18, 2022
Technology
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
p5.jsを使ったクリエイティブコーディングに機械学習やデバイス連携などを組み合わせている話 / Creative Coding作品の周辺を語る会 03
you(@youtoy)
PRO
December 18, 2022
More Decks by you(@youtoy)
See All by you(@youtoy)
toio・myCobotでフィジカルAIっぽいことを行うための検討(とりあえず調査) / フィジカルAI LT(IoTLTによる開催)
you
PRO
0
340
Webの技術とガジェットで子どもも大人も楽しめるワクワク体験を提供する / Qiita Tech Festa Day 2026
you
PRO
1
360
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
160
クラウドファンディング版StackChan 3体(4体)をインタラクティブな体験型作品にして展示もした話 / スタックチャンお誕生日会2026
you
PRO
0
330
イベントで大活躍する電子ペーパー名札 〜その3〜 / ビジュアルプログラミングIoTLT vol.23
you
PRO
0
320
AI時代だけど、わりと力業で追いかけている技術情報収集の話 / 20260518
you
PRO
0
29
最近の技術系の話題で気になったもの色々(IoT系以外も) / IoTLT 花見予定会(たぶんBBQ) @都立潮風公園バーベキュー広場
you
PRO
1
420
Babylon.js を使って試した色々な内容 / Various things I tried using Babylon.js / Babylon.js 勉強会 vol.5
you
PRO
0
530
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
340
Other Decks in Technology
See All in Technology
SmartHR Engineering Team Deck
smarthr
1
3.3k
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
270
Kiro Crew入門 - 常駐エージェントの仕組みと使いどころ / Intro to Kiro Crew
k_adachi_01
1
740
AI画像認識を活用したゲーム内決済処理検証の自動化
gree_tech
PRO
0
110
現場回帰したデータエンジニアが考える AI 時代のキャリア開発 / Career Development in the Age of AI Perspectives from a Hands-on Data Engineer
medley
0
300
2026-08-15 JAWS-UG 茨城 #16 Secrets ManagerにおけるSecret値の管理(Terraformの場合) / Secrets Manager Secrets
masasuzu
0
490
【GCC2026】鉄拳8でのVFX開発事例
bandainamcostudios
PRO
0
220
フィジカルAIの知識ゼロの僕でも AIを使えばここまでできた
tatsuya1970
0
130
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
360
地震情報アプリを作ってみた
yama3133
1
110
2027年のMetricKit
kantacky
0
150
自宅NWにISR4331を導入してみた話
okaits
0
120
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
380
The Cost Of JavaScript in 2023
addyosmani
55
10k
Marketing to machines
jonoalderson
1
5.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
660
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Designing for Performance
lara
611
70k
Building an army of robots
kneath
306
46k
Optimising Largest Contentful Paint
csswizardry
37
3.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
480
Transcript
p5.jsを使ったクリエイティブコーディングに 機械学習やデバイス連携などを組み合わせている話 2022年12月18日 (日) Creative Coding作品の周辺を語る会 03 @オンライン 豊田陽介( )
@youtoy
自己紹介 豊田陽介( ) @youtoy ・IT系イベント主催、登壇や運営なども ・子ども向けの活動いろいろ ・ Microsoft MVP(2021/10 から)
プライベートでの活動 ・ガジェット大好き ・今年、本2冊出したり、メーカーフェア出展3回 好きなことなど 3月発売 (共著) 7月発売 (単著)
p5.js と組み合わせている、 p5.js以外のライブラリやモノ
「画面の中」と「画面の外」 がつながる話
自己紹介に出てきたものでも機械学習の話が 豊田陽介( ) @youtoy ・IT系イベント主催、登壇や運営なども ・子ども向けの活動いろいろ ・ Microsoft MVP(2021/10 から)
プライベートでの活動 ・ガジェット大好き ・今年、本2冊出したり、メーカーフェア出展3回 好きなことなど 3月発売 (共著) 7月発売 (単著) ブラウザ上でできる機械学習 と「p5.js」の話など ビジュアルプログラミング + IoT の作例を執筆
自己紹介に出てきたものでモノとつながる話 豊田陽介( ) @youtoy ・IT系イベント主催、登壇や運営なども ・子ども向けの活動いろいろ ・ Microsoft MVP(2021/10 から)
プライベートでの活動 ・ガジェット大好き ・今年、本2冊出したり、メーカーフェア出展3回 好きなことなど 3月発売 (共著) 7月発売 (単著) 仙台での展示(途中): センサー + ロボットトイ +α の組み合わせ 最終的には、画面描 画でなくマット上に プロジェクション
p5.jsの描画に人・ロボットトイの動きが影響 p5.js公式サンプルの 「Kaleidoscope」の 入力や描画の色などを 変更 ▪ マウス操作の軌跡 を入力にする部分 ⇒
ランダムに動く ロボットトイの軌跡に (センサーで手が近づく のを認識して、動き の規則を変えたりも)
大垣のイベント出展の際に 「透明マント・光学迷彩の人 ですよね」と言われる
画面内の描画と画面外の人の動きがつながる p5.js の描画に「MediaPipe Hands」という仕組みを組み合わせ
思いついたことを 作って試すのが好きです (そして SNS などで共有したり)
p5.js を使おうと思ったきっかけ: とある機械学習の仕組みの サンプルコードで出てきた
つくばでのイベント出展準備で触れた技術 ブラウザ上で「画像・音・ポーズ(人の姿勢)」 を対象にした機械学習モデルが作成できたりする 「Teachable Machine」 の公式実装サンプルの中で登場
描画ではない部分でp5.js(+α)が使われる形 ▪制作途中のものの動画 異なる音色・音の鳴らし方 を学習(鳴らす楽器類は ダイソーで安く仕入れた) 機械学習モデルを使い、 音によってロボットトイの 動きを変える仕組みを作成
この時も大人から子どもまでを対象に 物品選定や体験を設計、小さい子にも楽しんでもらえた!
この後も技術の話ではなく 事例集的な話が続きます
ハーフミラーを使った スマートミラー的なもの
ハーフミラーの後ろでp5.jsの描画 ハーフミラーの後ろに モバイルディスプレイなど を置いて描画を出力 黒背景の部分は鏡になって 明るい色の部分は鏡の上で 描画内容が見える
100均の透明下敷きで 擬似ホログラム
ペッパーズ・ゴーストと呼ばれるものを 透明下敷きで逆さまのピラ ミッドのようなものを作成 画面(iPad)の 4箇所に同 じ内容の方向違いの描画を 表示させて透明ピラミッド にうつす
デバイスの間をIoTの通信 でつなげてみる
2台のスマホ上のキャンバスをつなぐ 2台のスマホに別々に p5.js のキャンバスを用意 デバイス間で跳ね回る ボールの位置座標を IoT の 通信(MQTT)で共有 ※
画面のつながりを縦 or 横方向に変える仕組み も入れてみた
ブラウザでできるマーカーを 使うARとの組み合わせ
WebARのマーカー上に描画を重ねる 専用マーカーを使うARの ブラウザで動くものを利用 ボールが跳ねる描画をして いるキャンバスをARマー カーに重ねる (マーカーが回転すると 重力の方向も回転)
しゃべった内容を文字にして 画面の中で落下させてみる
しゃべった声が実体化して落下する ブラウザ内蔵の音声認識を 連続稼働させたり、文字に 対して物理演算を適用 声の大きさを文字の大きさ に反映させたりも
画面上の描画の動き・速度が LEDの点灯状態に連動
p5.jsで計算した位置・速度をLEDに反映 p5.jsで描画した動く円の 位置・速度を、USB接続し たデバイス(micro:bit) に送信 USB経由で受けとった数字 を元に LED の点灯位置を 変える
デバイス上のLEDの点灯位置と p5.jsでの図形描画位置が連動
傾きで移動するLEDの点灯位置を使った描画 micro:bit の傾き具合に よって LED の点灯位置を 変更 USB経由で受けとった点灯 位置の情報を使ってp5.js でブラウザ上の描画を実行
MIDIコントローラーでの操作を 描画に反映
スライダー・ノブの操作で色などを変える USB接続のMIDIコントロー ラーの操作結果をブラウザ で取得 取得した数値データを p5.jsの描画に反映させる
引き続き お試しを続けていきたい!
今日の話の中で使っていた技術の抜粋 ブラウザの API や JavaScriptライブラリ ・Web Serial ・Web Bluetooth ・Web
MIDI ・Teachable Machine ・MediaPipe シリアル通信 BLE MIDIデバイス 機械学習 (他にもいろいろ便利なものがあります!)
終わり!
ゲームのコントローラーや 電子工作ができるボードを 組み合わせてみる
2台のスマホ上のキャンバスをつなぐ