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
WebAR
Search
Kaneko Takeshi
June 16, 2017
Technology
0
37
WebAR
Kaneko Takeshi
June 16, 2017
Tweet
Share
More Decks by Kaneko Takeshi
See All by Kaneko Takeshi
オープンソースライセンスについて勉強する定期
tkckaneko
0
28
Eye Tracking on the Browser
tkckaneko
0
84
IEEE754を完全に理解した
tkckaneko
1
75
CSSのトレンドをみんなで見よう -2021年-
tkckaneko
0
92
多分これが一番早いと思います
tkckaneko
0
25
暗黒面の話
tkckaneko
0
23
CSR / SSR / SSG / JAMstack
tkckaneko
0
68
BOLT
tkckaneko
0
29
CSS Logical Properties and Values
tkckaneko
0
33
Other Decks in Technology
See All in Technology
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
6
2.9k
内部品質・フロー効率・コミュニケーションコストを悪化させ現場を苦しめかねない16の組織設計アンチパターン[超簡易版] / 16 Organization Design Anti-Patterns for Software Development
mtx2s
2
190
メタプログラミングRuby問題集の活用
willnet
2
760
Pythonで構築する全国市町村ナレッジグラフ: GraphRAGを用いた意味的地域検索への応用
negi111111
8
3.4k
ソフトウェア品質を支える テストとレビュー再考 / 吉澤 智美さん
findy_eventslides
1
960
[Oracle TechNight#94] Oracle AI World 2025 Oracle Database関連フィードバック
oracle4engineer
PRO
0
310
これからアウトプットする人たちへ - アウトプットを支える技術 / that support output
soudai
PRO
16
5.1k
AIエージェントは「使う」だけじゃなくて「作る」時代! 〜最新フレームワークで楽しく開発入門しよう〜
minorun365
10
1.6k
エンジニアにとってコードと並んで重要な「データ」のお話 - データが動くとコードが見える:関数型=データフロー入門
ismk
0
450
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
510
AI時代に必要なデータプラットフォームの要件とは by @Kazaneya_PR / 20251107
kazaneya
PRO
4
960
【AWS reInvent 2025 関西組 事前勉強会】re:Inventの“感動と興奮”を思い出してモチベ爆上げしたいです
ttelltte
0
130
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.2k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Typedesign – Prime Four
hannesfritz
42
2.9k
Bash Introduction
62gerente
615
210k
Scaling GitHub
holman
463
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Statistics for Hackers
jakevdp
799
220k
A Tale of Four Properties
chriscoyier
161
23k
Building an army of robots
kneath
306
46k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.1k
Transcript
WEB AR
なぜWebARの話をするかというと
Safari 11からカメラにアクセスできます (Androidは前からできます)
まだベータ版ですが 新機能として公式に紹介されています https://developer.apple.com/library/content/releasenotes/General/WhatsNewI nSafari/Safari_11_0/Safari_11_0.html
New in Safari 11.0 – Camera and microphone access. -
Added support for the Media Capture API. - Websites can access camera and microphone streams from a user's device (user permission is required.)
Media Capture Stream API って規格です
規格については難しので、 W3Cで読んでください https://www.w3.org/TR/mediacapture-streams/
今日はコレを使って 何ができるか紹介したいと思います
ざっくりした使い方説明
カメラやマイクの入力を getUserMediaで取得します
navigator.mediaDevices.getUserMedia (constraints)
これはPromise形式になっています
navigator.mediaDevices.getUserMedia (constraints) .then (successCallback).catch (failureCallback)
パラメータを渡すことで 解像度やリアカメラ、フロントカメラなどを 選ぶことができます
マイクとカメラの指定 { audio: true, video: true }
解像度の指定 { video: { width: 1280, height: 720 } }
解像度の最小値の指定 { video: { width: { min: 1280 }, height:
{ min: 720 } }}
フレームレートの指定 { video: { frameRate: { max: 15 } }
}
カメラの指定 { video: { facingMode: { exact: "user" } }
} リアカメラは "environment" です
まとめ navigator.mediaDevices.getUserMedia (constraints) .then (function (stream) { const video =
document.querySelector ('video') video.src = window.URL.createObjectURL (stream) video.onloadedmetadata = function(e) { video.play () } }) .catch (function (err) { console.log (err.name + ": " + err.message) })
これでカメラの映像をJavaScriptで 取得できました
ブラウザでARができるようになった ということです
AR
その時周囲を取り巻く現実環境に 情報を付加・削除・強調・減衰させ、 文字通り人間から見た現実世界を 拡張するものを指す
!すみません! サンプルしか用意できませんでした
カメラでマーカーを認識して オブジェクトを表示する
https://github.com/jeromeetienne/AR.js
カメラで顔を認識する
https://ics.media/entry/13038
クロマキー合成する
https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Manipulating_video_us ing_canvas
まだまだ課題が多くあります
➔ 対応端末が少ない ➔ 処理速度や精度が低い
今まではアプリだけだったARを ブラウザで表現できるようになります
これからWebARが 盛り上がるといいなー