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
ブラウザ上でファンタジー・SF的な映像表現に挑んでみる / エンジニアの自由研究発表会vol.7
Search
you(@youtoy)
PRO
September 01, 2022
Technology
0
520
ブラウザ上でファンタジー・SF的な映像表現に挑んでみる / エンジニアの自由研究発表会vol.7
you(@youtoy)
PRO
September 01, 2022
Tweet
Share
More Decks by you(@youtoy)
See All by you(@youtoy)
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
180
Deno・Bunの標準機能やElysiaJSを使ったWebSocketサーバー実装 / ラーメン屋を貸し切ってLT会! IoTLT 2026新年会
you
PRO
0
330
M5Stack Chain DualKey を UIFlow 2.0 + USB接続で試す / ビジュアルプログラミングIoTLT vol.22
you
PRO
2
190
ローカルLLMをJavaScriptで(少しAIエージェントSDKなどの話も) / 冬のJavaScript祭り @Pleasanter Lounge
you
PRO
0
960
Webの技術で「特殊なゲーム用コントローラーや他デバイスなど」とブラウザを連携させる / HTML5 11th Anniversary
you
PRO
0
93
ブラウザのAPIで Nintendo Switch用の特殊なゲーム用コントローラーを体験型コンテンツに / IoTLT @ストラタシス・ジャパン
you
PRO
0
210
ローカルLLMとLINE Botの組み合わせ その2(EVO-X2でgpt-oss-120bを利用) / LINE DC Generative AI Meetup #7
you
PRO
1
920
生成AIとM5Stack / M5 Japan Tour 2025 Autumn 東京
you
PRO
0
480
子ども向けの活動や自身のモノづくり活動などでやったこと / micro:bit ファンの集い
you
PRO
0
57
Other Decks in Technology
See All in Technology
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
tarappo
3
310
Visional 28新卒プロダクト職(エンジニア/デザイナー)向け 会社説明資料 / Visional Company Briefing for Newgrads 28
visional_engineering_and_design
1
110
めちゃくちゃ開発するQAエンジニアになって感じたメリットとこれからの課題感
ryuhei0000yamamoto
0
240
The Rise of Browser Automation: AI-Powered Web Interaction in 2026
marcthompson_seo
0
280
既存アプリの延命も,最新技術での新規開発も:WebSphereの最新情報
ktgrryt
0
110
君はジョシュアツリーを知っているか?名前をつけて事象を正しく認識しよう / Do you know Joshua Tree?
ykanoh
2
110
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
730
SSoT(Single Source of Truth)で「壊して再生」する設計
kawauso
1
220
AlloyDB 奮闘記
hatappi
0
190
2026年もソフトウェアサプライチェーンのリスクに立ち向かうために / Product Security Square #3
flatt_security
1
740
Tebiki Engineering Team Deck
tebiki
0
27k
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
450
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.2k
Abbi's Birthday
coloredviolet
2
5.6k
Evolving SEO for Evolving Search Engines
ryanjones
0
170
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Utilizing Notion as your number one productivity tool
mfonobong
4
270
Practical Orchestrator
shlominoach
191
11k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
4 Signs Your Business is Dying
shpigford
187
22k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
92
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Transcript
ブラウザ上でファンタジー・SF的な 映像表現に挑んでみる 2022年9月1日 (木) エンジニアの自由研究発表会vol.7 @オンライン 豊田陽介( ) @youtoy
自己紹介 豊田陽介( ) @youtoy ・IT系イベント主催、登壇や運営なども ・子ども向けの活動いろいろ ・ Microsoft MVP(2021/10 から)
プライベートでの活動 ・ガジェット大好き ・今年、本を2冊出しました 好きなことなど 3月発売 (共著) 7月発売 (単著)
何をやったか? ブラウザ上(JavaScript)の処理で SF的な映像表現
いきなりデモ動画 4連続
試作したもの:カメラ映像を使ったもの 光学迷彩・透明 マント的な表現
試作したもの:カメラ映像を使ったもの 指先に炎が順番に 灯っていく
試作したもの:カメラ映像を使ったもの 透明マント・光学迷彩 のような表現 指先に炎などがともる
試作したもの:カメラ映像を使ったもの 手から出現した円 が溶けて流れる
試作したもの:カメラ映像を使ったもの 画面が燃える、 手から稲妻が発生
試作したもの:カメラ映像を使ったもの 画面が燃える、手から 稲妻が発生 手から発生した丸が 液体状に溶けて流れる
動画のURL(QRコード) 透明マント 指先から炎 溶けて流れる 画面に炎・稲妻
どんな技術を使ってる?
処理のおおまかな流れ 透明マント 指先から炎 溶けて流れる 画面に炎・稲妻 キー押下に 反応 エフェクト用 動画を画像合成 手の位置・
状態を認識 大量の円を描画、 物理演算と フィルタ処理 指の位置・ 状態を認識 パーティクルを 指先から発生、 画像合成 両手を認識 背景取得 映像の一部を 背景画像に
順番に説明
機械学習による画像認識(手の認識) 利用した仕組みとの対応関係 Google の MediaPipe Hands Handtrack.js
画像認識で使った情報 MediaPipe Hands Handtrack.js 手のキーポイントの位置 (複数) ※ 指を立てたかどうかの判定は 位置座標などから自前で計算
手の位置と状態(手を開 いているかどうか)
描画まわりの概要:「p5.js」での特徴的な処理 パーティクル システム 画像・描画合成 指先ごとにパーティクル を発生させている ※ さらに以下の合成処理も 単純な重畳ではない合成 処理(Photoshop
などに もある仕組み)
パーティクル・システムとは? ゲーム物理、モーショングラフィックス、コンピュータ グラフィックなどで使われる技術のひとつで、たくさん の細かいスプライト画像、3Dモデル、またはその他のCG オブジェクトを使って、ある種の「ファジー」な現象を シミュレートするもの 出典: Wikipedia「パーティクル・システム」より
円が吹き出す仕組みに手を加えると... 透明度付き PNG画像に 置きかえ 煙が 吹き出す 色の 加算処理 (合成) 炎の
ゆらめき? 円が出てくる
画像合成に 関する話
単純な重ね合わせではない描画 p5.js の「blendMode()」 ADD SCREEN 重ねた色は明るくなる 重ねた色は明るくなるが ADD より少し弱め 単純な
重畳 ADD SCREEN ※ Canvas の「globalCompositeOperation」 という API による
合成処理を使うと 指先から炎 画面に炎・稲妻 自前で炎っぽいものを描画できる 映像編集用に使われるエフェクト用 動画を、カメラ映像が見える状態で 重畳できる
残りの部分 溶けて流れる 手の位置・ 状態を認識 大量の円を描画、 物理演算と フィルタ処理
描画・動き関連の2つの仕組み 物理演算 フィルタ 物理演算エンジンの 「Matter.js」 ※ 円同士・円と床の衝突や 重力などの計算 溶けるような見た目は
SVGフィルタの複合 ※ ぼかし(feGaussianBlur)、 色の処理(feColorMatrix) などの複合
イベントの告知
【約1ヶ月後】IoTLT のスピンオフ! https://iotlt.connpass.com/event/256929/ 9/13(火) オンライン開催
【10月下旬】enebular developersコラボ https://enebular.connpass.com/event/250779/ 10/27(木) オンライン開催 「ガジェット」に興味がある方へ!
終わり!