Scalable Remote Rendering with Augmented Streaming Dawid Pająk, Robert Herzog, Elmar Eisemann, Karol Myszkowski, Hans-Peter Seidel.

Slides:



Advertisements
Similar presentations
with RGB Reversibility
Advertisements

T.Sharon-A.Frank 1 Multimedia Compression Basics.
INTERNATIONAL CONFERENCE ON TELECOMMUNICATIONS, ICT '09. TAREK OUNI WALID AYEDI MOHAMED ABID NATIONAL ENGINEERING SCHOOL OF SFAX New Low Complexity.
Edit this text to create a Heading Advances in Real-Time Rendering in 3D Graphics and Games.
GI 2006, Québec, June 9th 2006 Implementing the Render Cache and the Edge-and-Point Image on Graphics Hardware Edgar Velázquez-Armendáriz Eugene Lee Bruce.
Render Cache John Tran CS851 - Interactive Ray Tracing February 5, 2003.
Basics of MPEG Picture sizes: up to 4095 x 4095 Most algorithms are for the CCIR 601 format for video frames Y-Cb-Cr color space NTSC: 525 lines per frame.
1 Video Coding Concept Kai-Chao Yang. 2 Video Sequence and Picture Video sequence Large amount of temporal redundancy Intra Picture/VOP/Slice (I-Picture)
Presented by Yehuda Dar Advanced Topics in Computer Vision ( )Winter
SWE 423: Multimedia Systems
Light Field Compression Using 2-D Warping and Block Matching Shinjini Kundu Anand Kamat Tarcar EE398A Final Project 1 EE398A - Compression of Light Fields.
Video enhances, dramatizes, and gives impact to your multimedia application. Your audience will better understand the message of your application.
Fine Grained Scalable Video Coding For Streaming Multimedia Communications Zahid Ali 2 April 2006.
1 Static Sprite Generation Prof ︰ David, Lin Student ︰ Jang-Ta, Jiang
SWE 423: Multimedia Systems Chapter 7: Data Compression (1)
A Picture is Worth a Thousand Words Milton Chen. What’s a Picture Worth? A thousand words - Descartes ( ) A thousand bytes - modern translation.
Source-Channel Prediction in Error Resilient Video Coding Hua Yang and Kenneth Rose Signal Compression Laboratory ECE Department University of California,
T.Sharon-A.Frank 1 Multimedia Image Compression 2 T.Sharon-A.Frank Coding Techniques – Hybrid.
Xinqiao LiuRate constrained conditional replenishment1 Rate-Constrained Conditional Replenishment with Adaptive Change Detection Xinqiao Liu December 8,
Real Time Abnormal Motion Detection in Surveillance Video Nahum Kiryati Tammy Riklin Raviv Yan Ivanchenko Shay Rochel Vision and Image Analysis Laboratory.
An Introduction to H.264/AVC and 3D Video Coding.
Geometry Videos Symposium on Computer Animation 2003 Hector M. Briceño Collaborators: Pedro V. Sander, Leonard McMillan, Steven Gortler, and Hugues Hoppe.
CSE679: MPEG r MPEG-1 r MPEG-2. MPEG r MPEG: Motion Pictures Experts Group r Standard for encoding videos/movies/motion pictures r Evolving set of standards.
Video Streaming via Transcoding Jianping Fan Department of Computer Science University of North Carolina at Charlotte Charlotte, NC 28223
EE 5359 H.264 to VC 1 Transcoding Vidhya Vijayakumar Multimedia Processing Lab MSEE, University of Arlington Guided.
Aaron Schultz. Idea: Objects close to a light shadow those far away. Anything we can see from the light’s POV is lit. Everything hidden is dark. Distance.
1/23/2005 page1 11/11/2004 MPEG4 Codec for Access Grids National Center for High Performance Computing Speaker: Barz Hsu
ECE472/572 - Lecture 12 Image Compression – Lossy Compression Techniques 11/10/11.
Digital Video and Multimedia If images can portray a powerful message then video (as a series of related images) is a serious consideration for any multimedia.
Krzysztof Templin 1,2 Piotr Didyk 2 Tobias Ritschel 3 Elmar Eisemann 3 Karol Myszkowski 2 Hans-Peter Seidel 2 Apparent Resolution Enhancement for Animations.
Video Basics. Agenda Digital Video Compressing Video Audio Video Encoding in tools.
Data Compression and Network Video by Mark Pelley Navin Dodanwela.
Audio Compression Usha Sree CMSC 691M 10/12/04. Motivation Efficient Storage Streaming Interactive Multimedia Applications.
Comparative study of various still image coding techniques. Harish Bhandiwad EE5359 Multimedia Processing.
WebCCTV 1 Contents Introduction Getting Started Connecting the WebCCTV NVR to a local network Connecting the WebCCTV NVR to the Internet Restoring the.
Video Video.
Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism.
Video Compression: Performance evaluation of available codec software Sridhar Godavarthy.
Compression video overview 演講者:林崇元. Outline Introduction Fundamentals of video compression Picture type Signal quality measure Video encoder and decoder.
Figure 1.a AVS China encoder [3] Video Bit stream.
Rick Parent - CIS681 Background Perception Display Considerations Video Technology.
Rick Parent - CIS681 Background Perception Display Considerations Film and Video, Analog and Digital Technology.
Hardware-accelerated Rendering of Antialiased Shadows With Shadow Maps Stefan Brabec and Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken,
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Differential Instant Radiosity for Mixed Reality Martin Knecht, Christoph Traxler, Oliver Mattausch, Werner Purgathofer, Michael Wimmer Institute of Computer.
Fine Granularity Scalability in MPEG-4 Video by Weiping Li Presentation by Warren Cheung.
Igor Jánoš. Goal of This Project Decode and process a full-HD video clip using only software resources Dimension – 1920 x 1080 pixels.
MPEG4 Fine Grained Scalable Multi-Resolution Layered Video Encoding Authors from: University of Georgia Speaker: Chang-Kuan Lin.
Page 11/28/2016 CSE 40373/60373: Multimedia Systems Quantization  F(u, v) represents a DCT coefficient, Q(u, v) is a “quantization matrix” entry, and.
Depth-of-Field Rendering with Multiview Synthesis SigGraph Asia 2009 Sungkil Lee, Elmar Eisemann, and Hans-Peter Seidel Sunyeong Kim Nov. 2 nd
CASA 2006 CASA 2006 A Skinning Approach for Dynamic Mesh Compression Khaled Mamou Titus Zaharia Françoise Prêteux.
Presenting: Shlomo Ben-Shoshan, Nir Straze Supervisors: Dr. Ofer Hadar, Dr. Evgeny Kaminsky.
Design and Calibration of a Multi-View TOF Sensor Fusion System Young Min Kim, Derek Chan, Christian Theobalt, Sebastian Thrun Stanford University.
A Novel 2D-to-3D Conversion System Using Edge Information
Automatic Video Shot Detection from MPEG Bit Stream
Video Basics.
Background Perception Display Considerations Video Technology.
H.264/SVC Video Transmission Over P2P Networks
BITS Pilani Pilani Campus EEE G612 Coding Theory and Practice SONU BALIYAN 2017H P.
Hybrid Ray Tracing of Massive Models
Coding Approaches for End-to-End 3D TV Systems
CIS679: MPEG MPEG.
ENEE 631 Project Video Codec and Shot Segmentation
Standards Presentation ECE 8873 – Data Compression and Modeling
Comparative study of various still image coding techniques.
MPEG4 Natural Video Coding
A Comparative Study of Depth Map Coding Schemes for 3D Video
RADEON™ 9700 Architecture and 3D Performance
Presentation transcript:

Scalable Remote Rendering with Augmented Streaming Dawid Pająk, Robert Herzog, Elmar Eisemann, Karol Myszkowski, Hans-Peter Seidel

2 Motivation  Service oriented  Hardware and location independent computing  Great for thin clients  Code and confidential data kept in a secure remote environment  Low-cost of maintenance  Full-time access

3 Cloud Computing and Rendering NVidia RealityServer & iRay

4 Cloud Computing and Rendering

5 Motivation Server Internet Video Encoding Client Full-frame Rendering CG application Video Decoding Bandwidth: 2-6Mbit per client

6 Motivation Server Internet Video Decoding Video Encoding Clients Full-frame Rendering CG application Video Decoding Bandwidth: 2-6Mbit per client

7 Motivation Server Internet Video Decoding Video Encoding Clients Full-frame Rendering CG application Video Decoding Out of resources! Bandwidth: 2-6Mbit per client Design similar to current commercial solutions Video Decoding

8 The Idea Server Internet Video Encoding Clients Low-resolution Frame Rendering CG application Auxiliary Stream Encoding Similar bandwidth: 2-6Mbit per client Video Decoding Auxiliary Stream Decoding Upsampling Video Decoding Auxiliary Stream Decoding Upsampling Video Decoding Auxiliary Stream Decoding Upsampling

9 Motivation  Are thin clients really „thin”?  10 years ago – YES!  Now – definitely NOT! Year: 2000 CPU: ARM Mhz No FPU No GPU Low-res monochrome display Year: 2006 CPU: ARM11 333Mhz FPU, SIMD capable GPU: OpenGL ES 1.1 Display: 240x bit Year: 2010 CPU: Cortex A8 ~1Ghz GPU: OpenGL ES 2.0 Display: 640x960 Year: 2011 and up CPU: Dual/Quad Core GPU: multi-core design HD-ready resolution display

10 Our solution Server Internet Video Encoding Clients Low-resolution Frame Rendering CG application Auxiliary Stream Encoding Similar bandwidth: 2-6Mbit per client Video Decoding Auxiliary Stream Decoding Upsampling Video Decoding Auxiliary Stream Decoding Upsampling Video Decoding Auxiliary Stream Decoding Upsampling

11 Client Client-side extra applications Video Decoding Auxiliary Stream Decoding 2x upsampled video using depth/motion encoded with H.264 Ours (same bandwidth) Spatio-temporal Upsampling 1 1 [Herzog et al. 2010]

12 Our solution – server-side Renderer High-res. attribute buffers High-res. attribute buffers Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Client side

13 Edge detection Edge detection Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix High-res. attribute buffers High-res. attribute buffers Client side

14 Client side Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection High-res. attribute buffers High-res. attribute buffers J2K Contrast Transducer J2K Contrast Transducer Edge visual thresholding

15 Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection High-res. attribute buffers High-res. attribute buffers Quantization float→int conversion non-linear mapping of values depth – 10 bits motion – 2x8 bits float→int conversion non-linear mapping of values depth – 10 bits motion – 2x8 bits Client side

16 Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image diffusion Edge image diffusion High-res. attribute buffers High-res. attribute buffers Client side t-1

17 Renderer Low-res. jittered frame Low-res. jittered frame High-res. attribute buffers High-res. attribute buffers Our solution – server-side H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image diffusion Edge image diffusion Client side PushPull

18 Client side Our solution – server-side Edge image diffusion Edge image diffusion PushPull

19 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

20 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

21 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

22 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

23 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

24 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

25 Our solution – server-side Edge image diffusion Edge image diffusion Client side PushPull

26 Client side Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image diffusion Edge image diffusion High-res. attribute buffers High-res. attribute buffers Diffusion error with respect to ground truth depth buffer PSNR: 52.42dBPSNR: 48.47dBPSNR: 52.49dB

27 Client side Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image diffusion Edge image diffusion Current frame prediction Current frame prediction High-res. attribute buffers High-res. attribute buffers 2 [Didyk et al. 2010] Grid-based warping 2

28 Client side Our solution – server-side Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image diffusion Edge image diffusion Current frame prediction Current frame prediction Edge image Encoder Edge image Encoder High-res. attribute buffers High-res. attribute buffers Binary edge imageDepth and motion residuals Auxiliary data frame packet Lossless ACPrediction + Quantization + AC Edge samples sign

29 Binary edge image coding (edge topology) Example: Scanline traversal order avg. bits per symbol no edge (0), edge (1) symbol counters compression ratio

30 Binary edge image coding (edge topology) xxxx Samples unknown to the decoder! Probabilities for symbols depend not only on their frequencies, but also on the neighborhood (context) Scanline traversal order

31 … … Binary edge image coding (edge topology) Progressive encoding – pass 0/ x Samples taken from current frame prediction

… … Binary edge image coding (edge topology) Progressive encoding – pass 1/ x 00 00

33 … … Binary edge image coding (edge topology) Progressive encoding – pass 2/ x

34 … … Binary edge image coding (edge topology) Progressive encoding – pass 3/ x

35 Current frame prediction Depth and motion value coding Current frame Predictor choice based on the minimum residual “history” ?

36 Renderer Low-res. jittered frame Low-res. jittered frame H.264 Encoder H.264 Encoder Camera matrix Camera matrix Edge detection Edge detection Quantization Edge image Encoder Edge image Encoder Edge image diffusion Edge image diffusion Current frame prediction Current frame prediction High-res. attribute buffers High-res. attribute buffers 36 Client side Our solution – server-side

37 Client side Our solution – client-side Upsampling + Other applications Upsampling + Other applications Low-res. jittered frame Low-res. jittered frame H.264 Decoder H.264 Decoder Camera matrix Camera matrix Edge image Decoder Edge image Decoder Edge image diffusion Edge image diffusion Future frame prediction Future frame prediction High-res. attribute buffers High-res. attribute buffers

38 Results – Quality PSNR [dB] Slightly lower depth quality Still better reconstruction! x264 software used for H.264 low-res. stream encoding 2x2 upsampling ratio

39 Results – speed / scalability Framerate [FPS] x264 software used for H.264 low-res. stream encoding 4x4 upsampling ratio Costly pixel shaders: SSAO, PCF soft shadow maps… x2,2 x2,0 x1,9 x3,5 x3,0 x2,3 x3,7 x3,3 x2,4

40 Client-side applications Client 3D stereo visionTemporal frame inter/extra-polation No additional bandwidth cost!

41 Video

42 Limitations  Inherited from upsampling method – multi-sample techniques are problematic: transparency, anti-aliasing, refractions, reflections  Edge representation – more difficult to control bandwidth than with DCT-based codecs – requires more research for efficient RDO High-res. ground truth imageUpsampled image

43 Conclusions  Our scalable streaming framework – off-loads the server by moving part of the computation to the client – auxiliary data stream allows for attractive applications on the client side: 3D Stereo warping, temporal upsampling, in-game advertisement – total bandwidth usage is comparable to streaming full-res. video using H.264  MC & DCT codecs are not an end-of-story for video compression!

44 Conclusions Thank You for your attention!

45 Video

46 Backup: Custom encoder  Upsampling requires very precise values of depth and motion – especially at discontinuities  High quality also required for other applications (IBR)  MPEG is not well suited for such data – minimizes visual error globally – encoding hard edges requires lots of space with DCT transform – encoding both depth and motion in one stream is problematic (chroma subsampling, luma based MC) – solutions for some problems are defined but not supported by many software/hardware vendors H.264 encoderOur custom encoder

47 Temporally Interleaved Sampling  Temporal coherent sampling  no new information for static frames  Need disjoint sub-pixel sets for each frame – We use a regular sampling pattern (efficient  just jitter frames) t 4 n x 4 n pixels n x n pixels

48 Temporal Reprojection Caching  Naïve blending  ghosting artifacts!  Compensate for camera and scene motion, Easy! ? tt+1 motion flow warp disocclusions

49 Bibliography  [Herzog et al. 2010] - HERZOG R., EISEMANN E., MYSZKOWSKI K., SEIDEL H.-P.: Spatio-temporal upsampling on the GPU. In Proc. of I3D (2010), ACM, pp. 91–98.  [Didyk et al. 2010] - DIDYK P., EISEMANN E., RITSCHEL T., MYSZKOWSKI K., SEIDEL H.-P.: Perceptually-motivated real-time temporal upsampling of 3D content for high- refreshrate displays. Comp. Graph. Forum (Proc. of Eurographics) 29, 2 (2010), 713–722.  [Morvan et al. 2006] – MORVAN Y., H. N. DE WITH P., FARIN D.: Platelet-based coding of depth maps for the transmission of multi-view images. Proceedings of SPIE, Stereoscopic Displays and Applications (SD&A 2006) vol p , January 2006, San Jose (CA), USA