webrtcで動かす“テレイグジスタンス”ロボット
TRANSCRIPT
Copyright © NTT Communications Corporation. All right reserved.
慶応⼤学・SkyWayチーム 共同研究事例紹介
WebRTCで動かす“テレイグジスタンス”ロボット
NTTコミュニケーションズ株式会社技術開発部Webコア Technical Unit⼤津⾕亮祐、中蔵聡哉2016年2⽉16⽇
Copyright © NTT Communications Corporation. All right reserved.
⾃⼰紹介 ⼤津⾕ 亮祐
2
n 仕事WebRTCプラットフォーム“SkyWay” プロダクトオーナー
n コミュニティWebRTCをテーマにしたカンファレンス“WebRTC Conference Japan” 幹事
n プライベート神奈川県 葉⼭町 在住趣味は海と畑
Copyright © NTT Communications Corporation. All right reserved.
SkyWay
3
NTT Comが提供するWebRTCアプリ開発者向けプラットフォーム。サーバAPIとSDKを提供し、WebRTCアプリの開発を容易に。
Copyright © NTT Communications Corporation. All right reserved.
SkyWayの広がり
4
n 2013年12⽉5⽇にサービス開始n 2016年2⽉現在、3700以上のアプリで利⽤
Copyright © NTT Communications Corporation. All right reserved.
SkyWay Conference at 東京海上⽇動システムズ
多⼈数Web会議のサンプルアプリを社内に導⼊
5
Copyright © NTT Communications Corporation. All right reserved.
SkyRTC by 妻⿃通信⼯業
ビデオチャットによるお問い合わせ機能をWebサイトに埋め込めるSaaS
6
めんどり
Copyright © NTT Communications Corporation. All right reserved.
Romoで⾒つける!⼦どもの表情 by ⽇本科学未来館
“おや?”っこひろばで遊ぶ⼦どもの様⼦を、ロボットを使って離れた場所から⾒守るイベント
7
が っ こ
Copyright © NTT Communications Corporation. All right reserved.
V-Sido OS by アスラテック
⼈型ロボットを制御するOSの遠隔制御機能に採⽤
8
ぶ し ど う
Copyright © NTT Communications Corporation. All right reserved.
BestieBox by NTTコミュニケーションズ
グループコミュニケーションアプリのビデオチャット機能に採⽤
9
Copyright © NTT Communications Corporation. All right reserved.
gaccatz by ドコモgacco
300⼈のオンライングループワーク
10
が っ か つ が っ こ
Copyright © NTT Communications Corporation. All right reserved.
アースアイズ
家庭⽤防犯カメラ&サービス
11
Copyright © NTT Communications Corporation. All right reserved.
インスペクショングラス by NEXCOシステムズ
スマートグラスとビデオ通話で⾼速道路の点検作業を⽀援
12
13Copyright © NTT Communications Corporation. All right reserved.
慶応⼤学・SkyWayチーム 共同研究事例紹介
WebRTCで動かす“テレイグジスタンス”ロボット
Copyright © NTT Communications Corporation. All right reserved.
⾃⼰紹介
• NTTComのSkyWay開発チームにおいてR&Dを担当• 現在は「新規ユースケースの発掘」を中⼼に担当• 慶応⼤学メディアデザイン研究科博⼠課程1年⽣
Facebook: Toshiya.Nakakura
14
Copyright © NTT Communications Corporation. All right reserved.
WebRTC/SkyWayのユースケース
• ヒト 対 ヒトのコミュニケーション
• ヒト 対 モノのコミュニケーション
• モノ 対 モノのコミュニケーション
15
§ ビデオチャット, ボイスチャット§ コンタクトセンター§ 遠隔授業・遠隔医療
§ 監視カメラ映像の取得§ IoT機器の操作
§ センサデータ取得§ AIによる操作§ VPN
Copyright © NTT Communications Corporation. All right reserved.
WebRTC/SkyWayのユースケース
• ヒト 対 モノ to ヒトのコミュニケーション
§ Robotics§ テレイグジスタンス
Hi!Toshi!
Hi!
Copyright © NTT Communications Corporation. All right reserved.
Telexistence
17
(https://youtu.be/KoC1iTOmYTg)
東京⼤学舘研究室・稲⾒研究室・慶応⼤学南澤研究室と共同研究
Copyright © NTT Communications Corporation. All right reserved.
インターネット上での実現に際しての課題
18
• 接続性の担保
FWによる通信遮断NAT超えの疎通
• 操作性の担保
通信の遅延・ジッタ・パケットロスを前提とした設計
Copyright © NTT Communications Corporation. All right reserved.
インターネット上での実現に際しての課題
19
• 接続性の担保
FWによる通信遮断NAT超えの疎通
WebRTC/Skywayによる実現
Copyright © NTT Communications Corporation. All right reserved.
インターネット上での実現に際しての課題
20
• 操作性の担保
通信の遅延・ジッタ・パケットロスを前提とした設計
現在継続検討中
Copyright © NTT Communications Corporation. All right reserved.
実装の要件
21
カメラ映像の3D表⽰• 両⽬映像の同期• 映像の3次元加⼯• HMDへの出⼒
⼈間の動きをマッピング• HMDの動きを検出• ロボットの操作
NW品質の影響を緩和• 遅延の最⼩化• ロス・ジッタの影響緩和
Copyright © NTT Communications Corporation. All right reserved.
WebRTCを利⽤した実装
• Oculusのセンサーを取得してロボットを操作• Unityを利⽤して両⽬の映像を3D描画
22
The Internet
RobotDriver AppWebRTC
MediaStream
WebRTCDataChannel
Userwith Oculus Video Inputs
(2 eyes)
MotionVision
Chrome App
CameraDriver App
Merged Video
Robot
本⽇デモブースで展⽰を⾏っています
Copyright © NTT Communications Corporation. All right reserved.
User Side
• まずはUser Sideの実装についてお話しします
23
The Internet
RobotDriver AppWebRTC
MediaStream
WebRTCDataChannel
Userwith Oculus Video Inputs
(2 eyes)
MotionVision
Chrome App
CameraDriver App
Merged Video
Robot
Copyright © NTT Communications Corporation. All right reserved.
要件との対応
24
カメラ映像の3D表⽰• 両⽬映像の同期• 映像の3次元加⼯• HMDへの出⼒
⼈間の動きをマッピング• HMDの動きを検出• ロボットの操作
NW品質の影響を緩和• 遅延の最⼩化• ロス・ジッタの影響緩和
Copyright © NTT Communications Corporation. All right reserved.
User Sideの実装
• 頭部⽅向の取得できるHMDとしてOculus Riftを利⽤• Unityを⽤いた3次元表⽰
Note: UnityでのWebRTC実現にはSkyWayとCoherent UIを活⽤(http://coherent-labs.com/product-coherent-ui/)
25
Copyright © NTT Communications Corporation. All right reserved.
⽴体視の実現について
26
ロボットに両⽬をつけ、撮影
⼈間の両⽬で⾒た場合と⼀致するよう編集• カメラの曲率修正• 両⽬の間隔の補正• Head Mount Displayでレンダリング
両⽬の映像を同期を取って転送
Copyright © NTT Communications Corporation. All right reserved.
通信経路
• User Sideの要求に応えるための通信について説明します
27
The Internet
RobotDriver AppWebRTC
MediaStream
WebRTCDataChannel
Userwith Oculus Video Inputs
(2 eyes)
MotionVision
Chrome App
CameraDriver App
Merged Video
Robot
Copyright © NTT Communications Corporation. All right reserved.
要件との対応
28
カメラ映像の3D表⽰• 両⽬映像の同期• 映像の3次元加⼯• HMDへの出⼒
⼈間の動きをマッピング• HMDの動きを検出• ロボットの操作
NW品質の影響を緩和• 遅延の最⼩化• ロス・ジッタの影響緩和
Copyright © NTT Communications Corporation. All right reserved.
映像の同期
WebRTCのMediaTrackを利⽤した同期を検討
29
Media Stream
Audio TrackVideo Trak
• WebRTCのMediaStreamの中には、複数のMedia Trackが存在• これらのTracksは同期される(映像・⾳声ズレを防ぐため)
Copyright © NTT Communications Corporation. All right reserved.
映像の同期
WebRTCのMediaTrackを利⽤した同期を検討
30
Media Stream
Audio TrackVideo Trak(Right Eye)
• WebRTCのMediaStreamの中には、複数のMedia Trackが存在• これらのTracksは同期される(映像・⾳声ズレを防ぐため)
これを活⽤し、右⽬と左⽬の映像を複数のVideo Trackとして転送を試みた
Video Trak(Left Eye)
Copyright © NTT Communications Corporation. All right reserved.
映像の同期
結果• ローカルネットワークでは問題なく同期が⾏われた• ロスが発⽣すると同期ズレが⽣じた
原因• 同期はRTPのtimestampレベルで⾏われる• 別々のTrackは別々のRTPパケットに乗る• パケットロスは左右の⽬のトラックで均等には発⽣しない• ロスしたパケットは(基本的に)再送されず、
ありもののパケットで描画を試みる
現状の通信仕様ではロバストな同期とは⾔いがたい
31
Copyright © NTT Communications Corporation. All right reserved.
ネットワーク障害の影響
遅延• 映像・操作信号ともに遅延
= 操作性の低下・操作者が船酔いする• ネットワーク遅延は30ms程度まで許容範囲
(東京〜札幌間の遅延が25ms)
ロス• 映像の同期ズレ・ブロックノイズ• 操作信号の⽋損により、ロボットの動作がぎこちなくなる• ロスは1%程度までが許容範囲では(無線LANで1%〜5%程度)
これらは現状のWebRTCの通信仕様では回避不能なため、別⼿法での解決が必要
32
Copyright © NTT Communications Corporation. All right reserved.
WebRTCを利⽤した実装
33
The Internet
RobotDriver AppWebRTC
MediaStream
WebRTCDataChannel
Userwith Oculus Video Inputs
(2 eyes)
MotionVision
Chrome App
CameraDriver App
Merged Video
Robot
Copyright © NTT Communications Corporation. All right reserved.
要件との対応
34
カメラ映像の3D表⽰• 両⽬映像の同期• 映像の3次元加⼯• HMDへの出⼒
⼈間の動きをマッピング• HMDの動きを検出• ロボットの操作
NW品質の影響を緩和• 遅延の最⼩化• ロス・ジッタの影響緩和
Copyright © NTT Communications Corporation. All right reserved.
両⽬画像の結合
前述の通り、通信経路での同期担保が困難であったため、送信前に結合を⾏った。
35
Left Eye
Right Eye
DirectShowSource Filter
シングルストリームとしてgetUserMedia
Media Stream
Copyright © NTT Communications Corporation. All right reserved.
ロボットの操作
ロボットはSerial Portへバイナリストリームを流し込むと動く通常のWebページからはUDPやシリアル通信が⾏えないため、Chrome Appを作成して対応
36
WebRTCDataChannel
Robot ControlApplication
UDPで操作信号を転送
シリアルケーブルへデータ送信
Chrome App
Copyright © NTT Communications Corporation. All right reserved.
標準化活動へのフィードバック
W3C TPACにてユースケースの⼀例としてテレイグジスタンスを説明し、必要な機能要件についてinput
WebRTC標準化メンバーから、好意的なフィードバックを貰い継続検討中
37
Copyright © NTT Communications Corporation. All right reserved.
まとめ
• Telexistenceのようなシビアなユースケースであっても、⼯夫次第でWebRTCでサポート可能
• テレカンファレンスに限らず、数多の領域で活⽤可能• 標準化メンバーも好意的に話を聞いてくれるので、
⾃分の要求をフィードバックする価値は⼤きい
38