CEDEC2017 VR180 3D live streaming camera at "SHOWROOM" case
8 de Feb de 2019•0 recomendaciones•1,066 vistas
Descargar para leer sin conexión
Denunciar
Ingeniería
About implementing VR180 3D live streaming camera and deploying and operating them in small studio. "SHOWROOM" is a live streaming platform started by DeNA in 2013.
9. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
DEMO:360度動画の仕組み
長方形を球へ変形させて、その中心部へ入る。
(球の外側の映像は反転していることに注意)
10. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
DEMO:360度動画の仕組み
球を回転させると360度動画になる。
11. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
360度動画の仕組み
左目 右目
HMDのレンズ向けのディス
トーションが入る
360度
左右で同じ
映像では視
差がないた
め、立体に
見えない。
12. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
360度3D動画の仕組み:Equirecangular Top & Bottom
左目
右目
HMDのレンズ
向けのディス
トーションが
入る
左右で視差
のある映像
を用意する
ことで、立
体に見える。
13. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
360度3D動画の仕組み:Equirecangular Side by Side
左目
右目
180度
HMDのレンズ
向けのディス
トーションが
入る
左右で視差
のある映像
を用意する
ことで、立
体に見える。
15. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
PCでVRライブ配信カメラシステムを組む意味
All in oneの3Dライブ配信対応カメラの選択肢は少ない
コンテンツに適した機材へと組み替えられる
標準フォーマットが使える
別なアルゴリズムを挟める
16. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
①All in oneの3Dライブ配信対応カメラの選択肢は少ない
プロフェッショナル(映画)
⁃ Jaunt ONE
⁃ Google Yi Halo
⁃ NOKIA OZO
プロシューマー〜個人(動画、ライブ配信)
⁃ Insta360 Pro, Z CAM S1
個人(動画、ライブ配信、静止画)
⁃ Insta360 One/Air/Nano, Giroptic iO, ION360 U
⁃ 360Fly 4K Pro
⁃ NIKON KeyMission 360, KODAK 4KVR360
⁃ RICOH THITA S, Sumsung Gear 360,
*太字はライブ配信対応
200-500万円
50万円
5万円
価格
17. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
最新のAll in oneの3Dライブ配信対応カメラでも近距離はカバーできない
カメラから10cm カメラから50cm
18. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
グラビア番組はカメラから10cm以内まで接近
ミスFLASH2017 7/24
19. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【脱線】視差のある状況でスティッチングをするためには深度情報が必要
Optical Flow
⁃ Optical Flowを使ったDepth Estimationが主流になりつつある
⁃ リアルタイムスティッチングには適応されていない
Sparse estimation
⁃ Facebook x24, x6
⁃ 今年の終わりにリリース
⁃ ポジショントラッキング対応
(頭を振る程度)
Facebook 360, Facebook update, 20 April 2017, viewed 22 August 2017,
https://www.facebook.com/Facebook360/posts/1913021515582981
20. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
②コンテンツに適した機材へと組み替えられる
360 4K 2D:
一般的な360度
ライブ配信用途
180 4K 3D:
グラビアなど近距離
のコンテンツ用途
*本講演で話す範囲はこれ
360 4K 3D:
一般的な360度3D
ライブ配信用途
例:KODAK SP260 4K 複数台の組み替え
Back to Back Stereo Quad
21. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
③別なアルゴリズムを挟める
映像は既にGPUにある
⁃ フィルタリング処理を適応しやすい
⁃ 方向別にマスクしたり、別の映像に切り替えることが可能
ライブストリーミングの場合、後工程はエンコード
⁃ 重要でない方向の色数を減らし、圧縮効率を高めるなど
22. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
180度 4K 3D ライブ配信用カメラの制作方法
23. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Pros/Cons
Pros
⁃ 至近距離(10cm)でも3D映像の撮影、ライブ配信が可能
⁃ アクションカメラベースなので割と酷使に耐えうる
Cons
⁃ 機材が大型
⁃ 暗いところではノイズが多い
27. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
データの流れ:ライブ配信全体
PC
引用:
http://gopro.com
http://www.kolor.com/
http://www.video-stitch.com/
Media server
スマートフォン(クライアントアプリ)
HDMI
HDMI
internet
internetカメラ1
カメラ2
28. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
データの流れ:PC内部
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
①カメラ→キャプチャーボード→GPU
②GPU内部の処理
③GPU→キャプチャーボード
④キャプチャーボード→キャプチャーボード
キャプチャーボード
29. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
システムの実装
①カメラ→キャプチャーボード→GPU
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
キャプチャーボード
30. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
①カメラ→キャプチャーボード→GPU
カメラ、全周魚眼レンズの組み合わせ具体例
31. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【紹介】180度3D機材構成:定番
カメラ:GoPro Hero 4 Black
レンズ:iZugar MKX19
リグ:よしみカメラ専用リグ
http://www.443c.com/
32. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【紹介】180度3D機材構成:3D ステレオVR 完組みセット
http://www.entapano.com/jp/index.html
カメラ:GoPro Hero 5
リブケージ:Back-Bone M12
レンズ:Entanya M12 220
リグ:Entanya 3D Stereo Rig
33. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【紹介】180度3D機材構成:4K MFT
カメラ:Z Camera E1
レンズ:iZugar MKX22
リグ:よしみカメラ専用リグ
http://www.443c.com/
34. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【紹介】180度3D機材構成:ハイエンド(年内リリース)
カメラ:Sony α6500 - Panasonic
GH5
マウント:E or MFT
レンズ:Entaniya MFT 200
リグ:Entaniya製リグ
http://www.entapano.com/jp/index.html
35. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
どんな機材を使っても明らかにすべきこと
視野角
射影方式
解像度
フレームレート
ピクセルフォーマット
37. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
①カメラ→キャプチャーボード→GPU
HDMI
HDMI PCIe
PCIe
配信ソフトウェア
internet
カメラ2
カメラ1
キャプチャーボード
カメラ→キャプチャーボード→配信ソフトウェアで映像が認識できることを確認
38. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
①カメラ→キャプチャーボード→GPU
HDMI
HDMI PCIe
PCIe
PCIe
GPU
カメラ2
カメラ1
キャプチャーボード
キャプチャーボードのSDKを使用してOpenGLで映像を表示
39. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
①カメラ→キャプチャーボード→GPU
キャプチャーボードのSDKを使用してOpenGLで映像を表示
20FPS 30FPS
GeForce GTX960 Quadro P5000
いきなり落とし穴があります
40. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
NVIDIA GPU Direct for Video
NVIDA “NVIDIA GPU Direct for Video”. https://developer.nvidia.com/gpudirectforvideo#Developer (accessed 2017-08-19)
41. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
NVIDIA GPU Direct for Video
NVIDIA GPU Direct for VideoをサポートするGPU
NVIDA “NVIDIA GPU Direct for Video”. https://developer.nvidia.com/gpudirectforvideo#Developer (accessed 2017-08-19)
42. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
NVIDIA GPU Direct for Video
NVIDI GPU Direct for Videoをサポートするキャプチャーボード
OpenGL DIRECTX CUDA
AJA ◯ ◯
Blackmagic Design ◯ △
Bit flow ◯
Deltacast ◯
Delta Path ◯
DVS ◯
Matrox Active ◯ ◯ ◯
*自己調査
43. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
ピクセルフォーマット
キャプチャーボードのSDKを経由して得られるピクセルは圧縮がかかった状態
引用:Blackmagic Decklink SDK.pdf P361
44. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
GPUに来たらShaderでYUV422を解凍する
該当部分のGLSL Shaderコード
float Y, Cb, Cr, r, g, b;
int true_width = textureSize(sampler, 0).x * 2;
if (fract(floor(texcoord.x * true_width + 0.5) / 2.0) > 0.0)
Y = texture2D(sampler, texcoord).a; // odd:Y1
else
Y = texture2D(sampler, texcoord).g; // even:Y0
Cb = texture2D(sampler, texcoord).b;
Cr = texture2D(sampler, texcoord).r;
// Y: Re-scaling [16..235] to [0..1] range
// C: Re-scaling [16..240] to [-0.5 .. + 0.5] range
Y = (Y * 256.0 - 16.0) / 219.0;
Cb = (Cb * 256.0 - 16.0) / 224.0 - 0.5;
Cr = (Cr * 256.0 - 16.0) / 224.0 - 0.5;
// Convert to RGB using Rec.709 conversion matrix (see eq 26.7 in Poynton 2003)
r = Y + 1.5748 * Cr;
g = Y - 0.1873 * Cb - 0.4681 * Cr;
b = Y + 1.8556 * Cb;
return vec3(r, g, b);
参考:Rec.709:https://en.wikipedia.org/wiki/Rec._709
45. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
GL_NEAREST GL_LINEAR
Texture filterはポイントサンプリングを使う
46. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
まとめ:システムの実装:①カメラ→キャプチャーボード→GPU
円周魚眼レンズで重要なこと、視野角、射影方式
カメラで重要なこと、解像度、フレームレート、ピクセルフォーマット
キャプチャーボード→PCIe→GPUの転送速度に注意して選定する
圧縮されたテクスチャーのTexture filterはポイントサンプリングを使う
47. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
システムの実装
②GPU内部の処理
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
キャプチャーボード
48. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
映像の流れ(登り):カメラ→PC→インターネット→メディアサーバー
円周魚眼レンズの生の映像
internetPC Equirectangular Top & Bottom
Equirectangular Side by Side
49. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
映像の流れ(下り):メディアサーバー→インターネット→クライアント
internet client
左目用の球 右目用の球
Equirectangular Top & Bottom
Equirectangular Side by Side
50. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
魚眼レンズの射影
O
0°
結像面
10°
20°
30°
50°
60°
70°
80°
10°
20°
30°
50°
60°
70°
80°
像高:y=f(θ)
レンズを通した映像 真横から見た図
地平線
空
渋谷の街
窓枠
51. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
魚眼レンズの射影方式
51
引用:http://fit-movingeye.jp/products/optics/consumer_optics/fi_series/fi_02.html
52. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
例:KODAK SP360 4K
視野角: 206(EISあり)、235(EISなし)
射影方式: 立体射影
• 像高=結像面でのレンズ中心からの(物理的な)距離
52
y = 2 f tan
q
2
(f:焦点距離)
53. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
映像(テクスチャー)の中の像高
ただし、我々が欲しいのは物理的
な像高ではなく、映像(テクス
チャー)の中心からのテクス
チャー座標における像高。つまり、
2f = 0.5 / tan( 103 / 2 )
とする
103°
1.0
0.5
y = 2 f tan
q
2
1.0
54. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
半球に視野角180度の情報を描いてゆく
y = 0.5 / tan( 103 / 2 ) tan
q
2
1.0
1.0
y
θ
正面からθ度に描くべきピクセルがテクスチャーのどこに
あるかわかるので、映像に歪みなく半球が描ける
上から見た図:
60. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
DEMO:光軸の調整
レンズ1緑、レンズ2赤で重ね合わせ、主に垂直方向のズレを修正するTexture Matrixを生成。
61. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
まとめ:システムの実装:②GPU内部の処理
視野角、射影方式から計算して球にマッピングする。
その球を展開してEquirectangularにする。
光軸のズレはTexture matrixで修正する。
62. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
システムの実装
③GPU→キャプチャーボード
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
キャプチャーボード
65. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
【脱線】動画の場合の2台のカメラの映像の同期
GenLock同期をせずに動画撮影している場合、ある程度時間が経過すると2台
のカメラの速度の差が蓄積するため、タイムラインが微妙にズレる。
66. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
2台のカメラの映像の同期
キャプチャーボードSDKのコールバック関数
⁃ HRESULT PlayoutDelegate::ScheduledFrameCompleted
(IDeckLinkVideoFrame* completedFrame,
BMDOutputFrameCompletionResult result)
ライブ配信の場合、同期を取らなくても誤差は蓄積しない
67. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
まとめ:システムの実装:③GPU→キャプチャーボード
PCI-Expressを流れるデータ量を計算し、マザーボードのPCI-Expressの仕様と
照らし合わせ、キャパシティ内であることを確認する。
PCI-ExpressはFull duplexである。
ライブ配信の場合、複数台あるカメラの誤差はそれぞれ蓄積しないため、カメラ
同士互いに同期を取らなくても大丈夫。OpenGLのレンダリングとそれぞれのカ
メラだけ同期させておく。
68. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
システムの実装
④キャプチャーボード→キャプチャーボード
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
キャプチャーボード
69. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
データの流れ:PC内部
HDMI
HDMI PCIe
PCIe
PCIe
配信ソフトウェア
internet
PCIe
GPU
PC
カメラ2
カメラ1 HDMI
キャプチャーボード
70. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
配信ソフトウェアによるキャプチャーボードの認識
OBSなどの配信ソフトウェアは、キャプチャーボードのOutputからのストリー
ミングを認識しない。このため、次のどちらかを行う
⁃ PCのアプリがエンコードしてRTMPで話す
⁃ もう1枚キャプチャーボードを用意して、PCのアプリのOutputのストリー
ミングをInputへパススルーする
70
71. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
実際のPCの背面
HDMI
input
output
72. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
実際の配信ソフトウェアOBSの画面
3枚目のキャプチャーボードの映像を
認識
73. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
今の話はPCを2台に分けると理解しやすい
HDMI
HDMI PCIe
PCIe
internet
PCIe
GPU
カメラシステム用PC
カメラ2
カメラ1
キャプチャーボード
HDMI
外付け
キャプチャー
USB3.0
配信用PC
配信ソフトウェア
これ全体がカメラと思えば…
74. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
まとめ:システムの実装:④キャプチャーボード→キャプチャーボード
Output用にキャプチャーボードをもう一枚使うか自分でエンコードする。
配信ソフトウェアを使う場合は、Output用のキャプチャーボードの方で。
76. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
上:これまで説明した方法 下:レンズの映像をそのまま送る
76
PC
HDMI
HDMI
カメラ1
カメラ2 Media server
internet internet
PC
HDMI
HDMI
カメラ1
カメラ2 Media server
internet internet
77. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
レンズの映像をそのまま送る
Pro
PCのGPUが要らなくなる
PCのキャプチャーボードが1枚要らなく
なる
コスト安い
Con
光軸のズレが修正できない
カメラの種類ごとにアプリ側でレンズの
計算ロジックを変更する必要がある
コンテンツがプラットホーム依存になる
78. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
レンズの映像をそのまま送る:CEDiLに詳細な資料があります
CEDEC 2016:360度動画の基礎知識:魚眼レンズの歪曲補正とリアルタイム・
イメージ・スティッチングについて
⁃ http://cedil.cesa.or.jp/cedil_sessions/view/1525
プロトタイプばかり制作しているが、制作もやっていて、がちで制作したものがこれら。
SEGAではアーケードの部署にいますが、コンシューマーの仕事もしています。
これは当時、ポリゴンを扱える部署がアーケードしかなかったため、あるいはアーケードのほうがノウハウがあっため、
Sonic the Fightersはセガで最初にポリゴンでSonicをやったタイトル