gas pa rel lo

Upload: paolo-simone-gasparello

Post on 10-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 Gas Pa Rel Lo

    1/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Seminar

    Geometry Compression for 3D Streaming

    Paolo Simone Gasparello

    Scuola Superiore S. Anna

    May 11, 2010

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    2/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Outline

    1 Concepts

    2 Geometry

    3 Connectivity

    4 Entropy coding

    5 Experimental Results

    6 Discussion

    http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    3/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Motivations

    Data ling3D scanners can produce very large meshes with many millionsof polygons requiring hundreds of Mb of storage.

    Data transmissionApplications such as Distibuted VEs often require thetransmission of large 3D models over WANnetwork.

    Very high compression ratioNewest algorithms can drastically reduce the memory impringof complex 3D models (over 90%).

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    4/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Motivations

    Data ling3D scanners can produce very large meshes with many millionsof polygons requiring hundreds of Mb of storage.

    Data transmissionApplications such as Distibuted VEs often require thetransmission of large 3D models over WANnetwork.

    Very high compression ratioNewest algorithms can drastically reduce the memory impringof complex 3D models (over 90%).

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    5/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Motivations

    Data ling3D scanners can produce very large meshes with many millionsof polygons requiring hundreds of Mb of storage.

    Data transmissionApplications such as Distibuted VEs often require thetransmission of large 3D models over WANnetwork.

    Very high compression ratioNewest algorithms can drastically reduce the memory impringof complex 3D models (over 90%).

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    6/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Geometry Data

    GeometryDescribes where vertices are located inthe 3D world

    v i = {x i , y i , z i } i = 1 . . . V

    ConnectivityThis information describes the relationsbetween the elements of the mesh:vertices, edges, faces

    f i = {v 1 i , . . . , v n i } i = 1 . . . F

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    7/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Geometry Data

    GeometryDescribes where vertices are located inthe 3D world

    v i = {x i , y i , z i } i = 1 . . . V

    ConnectivityThis information describes the relationsbetween the elements of the mesh:vertices, edges, faces

    f i = {v 1 i , . . . , v n i } i = 1 . . . F

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    8/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Geometry Compression

    Uniform Quantization of the coordinatesTransmission involves only quantization indices:

    Q (x ) =2M x + 0 . 5

    2M

    Figure: Uniform Quantization

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    9/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Geometry Compression

    Vertex PredictionParallelogram rule

    Figure: Parallelogram predictor

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    10/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Valence Based EncodingOverview

    Valence of a vertexThe valence of a vertex is the number of incident edges

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    11/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Valence Based EncodingConquering the mesh: ADD

    Figure: Output: (ADD 6)

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    12/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Valence Based EncodingConquering the mesh: Full Focus Vertex

    Figure: Output: No Symbol

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    13/26

    3D Geometry

    Compression

    Paolo SimoneGasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Valence Based EncodingSpecial case: SPLIT

    Figure: Output: (SPLIT 11)

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    14/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Valence Based EncodingSpecial case: MERGE

    Figure: Output: (MERGE l , i )

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    15/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Entropy MinimizationArithmetic Encoder

    Exployting RedundancyConnectivity symbols are mostly (ADD 6)Prediction errors are mostly 0In general, statistical distribution for symbols is aGaussiancentered at (ADD 6) for connectivity symbols, and at 0 forgeometry symbols

    Context-Based Arithmetic Coder

    Several contexts with different frequency tables for eachsymbol stream should be used:ConnectivityGeometryOther properties. . .

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    16/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Entropy MinimizationArithmetic Encoder

    Exployting RedundancyConnectivity symbols are mostly (ADD 6)Prediction errors are mostly 0In general, statistical distribution for symbols is aGaussiancentered at (ADD 6) for connectivity symbols, and at 0 forgeometry symbols

    Context-Based Arithmetic Coder

    Several contexts with different frequency tables for eachsymbol stream should be used:ConnectivityGeometryOther properties. . .

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    17/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Entropy MinimizationArithmetic Encoder

    Exployting RedundancyConnectivity symbols are mostly (ADD 6)Prediction errors are mostly 0In general, statistical distribution for symbols is aGaussiancentered at (ADD 6) for connectivity symbols, and at 0 forgeometry symbols

    Context-Based Arithmetic Coder

    Several contexts with different frequency tables for eachsymbol stream should be used:ConnectivityGeometryOther properties. . .

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    18/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    3D Geometry Compressor

    In our approach we combine several different techniques toachieve a common goal:Valence Based EncodingGeometry QuantizationVertex Prediction

    Arithmetic CodingWe are developing 3D Compression encoders compatibleswith the needs of Virtual Environments characterized by avery high compression ratio (up to 95%).

    Raptor Dragon Eros

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    19/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    3D Geometry Compressor

    In our approach we combine several different techniques toachieve a common goal:Valence Based EncodingGeometry QuantizationVertex Prediction

    Arithmetic CodingWe are developing 3D Compression encoders compatibleswith the needs of Virtual Environments characterized by avery high compression ratio (up to 95%).

    Raptor Dragon Eros

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    20/26

    3D Geometry

    CompressionPaolo Simone

    Gasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    3D Geometry Compressor

    In our approach we combine several different techniques toachieve a common goal:Valence Based EncodingGeometry QuantizationVertex Prediction

    Arithmetic CodingWe are developing 3D Compression encoders compatibleswith the needs of Virtual Environments characterized by avery high compression ratio (up to 95%).

    Raptor Dragon Eros

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    21/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    3D Geometry Compressor

    In our approach we combine several different techniques toachieve a common goal:Valence Based EncodingGeometry QuantizationVertex Prediction

    Arithmetic CodingWe are developing 3D Compression encoders compatibleswith the needs of Virtual Environments characterized by avery high compression ratio (up to 95%).

    Raptor Dragon Eros

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    22/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    Compression Effectiveness

    0

    5

    10

    15

    20

    25

    30

    35

    40

    Orig. Quant. Zip Compr. Orig. Quant. Zip Com pr. Orig. Quant . Zip Co mpr .

    S i z e

    [ 1 0

    6 B

    y t e s

    ]

    4.96% 4.73% 3.51%

    GeometriyConneictvity

    Global

    Eros 1.1MDragon 1.6MRaptor 2M

    Ti i g

    http://goback/http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    23/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    ConnectivityEntropycoding

    ExperimentalResults

    Discussion

    TimingStreaming compressed meshes can be done in Real-Time?

    Vertex ThroughputTo evaluate how fast a mesh can be compressed we canthink in terms of vertex throughput , that is how much of vertices can be trasferred in a second

    Vertex throuput is measured in vertices per second [vps]

    Measusements

    Model Vertices Time [ms] Throughput [vps]

    Raptor 1,000,080 4,132 (2,582) 242,013 (387,327)Dragon 655,980 5,851 (1,982) 112,114 (330,968)Eros 476,596 3,940 (1,462) 120,963 (325,989)

    Table: Compression (Uncompression) timing parameters

    Network Throughput

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    24/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Network ThroughputBandwidth requirements

    Streaming ThroughputFor streaming non-compressed meshes the bottleneck isalways the available bandwith.

    Streaming compressed meshes is instead usually limited byencoder speed.

    Measurements

    Model Size [Kb] Time [ms] Throughput [Mbps]Raptor 1,787 4,132 3.4Dragon 1,117 5,581 1.6Eros 603 3,940 1.2

    Discussion

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    25/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    DiscussionFuture work

    Improving throughputOur research aims at speeding up the compression process

    by using parallel processing techniques (OpenMP,GPGPU).References:

    J. Rountree, Novel Technologies for the Manipulation of Meshes on the CPU and GPU

    M. Sattler, Simple and efficient compression of animationsequences

    http://goforward/http://find/http://goback/
  • 8/8/2019 Gas Pa Rel Lo

    26/26

    3D GeometryCompression

    Paolo SimoneGasparello

    Concepts

    Geometry

    Connectivity

    Entropycoding

    ExperimentalResults

    Discussion

    Thank you

    Questions?

    http://goforward/http://find/http://goback/