Google Chrome で Media Capture Depth Stream Extensions が開発中に
Microsoft の Kinect、intel の RealSense、その他の IR(赤外線) カメラなどから getUserMedia() を使用し 16 bit の深度情報を取得します。
Intel さんのスライドから RGB カメラと深度カメラの画像
Chrome Platform Status
Media Capture Depth Stream Extensions - Chrome Platform Status
仕様
Media Capture Depth Stream Extensions
以下、仕様の一部抜粋
策定されていませんので以下の記載は変更される可能性があります。
プロパティ
設定できる値はすべて Double
プロパティ | 値 | 説明 |
---|---|---|
near | メートル | 最短距離 |
far | メートル | 最小距離 |
focalLength | ミリメートル | 焦点距離 |
horizontalFieldOfView | 角度 | 水平視野 |
verticalFieldOfView | 角度 | 垂直視野 |
サンプル
仕様に記載されているサンプルです。
現状の Chrome 51 では getUserMedia を Promise 使って動かすことはできないようです。
navigator.mediaDevices.getUserMedia({ depth: true, // 深度情報の取得を許可する video: true }).then(function (stream) { // RGB カラーのメディアストリームを video 要素に渡す var video = document.querySelector('#video'); video.srcObject = stream; video.play(); // 深度情報のみのデプスストリームを取得 var depthOnlyStream = new MediaStream(stream.getDepthTracks()[0]); // デプスストリームから得たモノクロの動画を video 要素に渡す var depthVideo = document.querySelector('#depthVideo'); depthVideo.srcObject = depthOnlyStream; depthVideo.play(); } ); );