SLCCA is an image encoding technique which was developed at the University of Missouri - Columbia. In cmesh, we attempt to create a pseudo-image for input to the SLCCA encoder. This pseudo-image is comprised of the quantized vertex positions. The order that the values are sent to the SLCCA encoder is based upon a pre-order traversal of the Vertex Tree. All of the x-values come first, followed by the y-values, followed by the z-values. In addition, the way the x-, y- and z-values are stored in this pseudo-file can have 2 formats - normal or snake.
Normal and Snake compression refers to how the vertex positions are
stored before they are sent to the SLCCA encoder. The image sent
is an NxN image at this time. One restriction is that the "image"
sent to the SLCCA encoder should be an even-valued number.
For example, suppose a mesh has 30 vertices. Since each vertex has
an x-, y-, and z-position, there are a total of 90 values. Since
the square-root of 90 is 9.486, which is not an even number, we would round
up to 10, so that a total of 100 values, in a 10x10 format, is sent to
the SLCCA encoder. In Normal format, the values are stored just like
one would read an English book - from left to right, while Snake format
requires the values to be wound like a snake. An example is shown
below, for 30 vertices, in a 10x10 format, for both normal and snake formats.
Note that the last z-value is repeated a number of times, to make the "image"
an NxN one.
NORMAL FORMAT
x1 x2
x3 x4 x5 x6
x7 x8 x9 x10
x11 x12 x13
x14 x15 x16 x17 x18 x19 x20
x21 x22 x23
x24 x25 x26 x27 x28 x29 x30
y1 y2
y3 y4 y5 y6
y7 y8 y9 y10
y11 y12 y13
y14 y15 y16 y17 y18 y19 y20
y21 y22 y23
y24 y25 y26 y27 y28 y29 y30
z1 z2
z3 z4 z5 z6
z7 z8 z9 z10
z11 z12
z13 z14 z15 z16 z17 z18 z19
z20
z21 z22
z23 z24 z25 z26 z27 z28 z29
z30
z30 z30
z30 z30 z30 z30 z30 z30 z30
z30
SNAKE FORMAT
x1 x2
x3 x4 x5 x6
x7 x8 x9 x10
x20 x19 x18
x17 x16 x15 x14 x13 x12 x11
x21 x22 x23
x24 x25 x26 x27 x28 x29 x30
y10 y9
y8 y7 y6 y5
y4 y3 y2 y1
y11 y12 y13
y14 y15 y16 y17 y18 y19 y20
y30 y29 y28
y27 y26 y25 y24 y23 y22 y21
z1 z2
z3 z4 z5 z6
z7 z8 z9 z10
z20 z19
z18 z17 z16 z15 z14 z13 z12
z11
z21 z22
z23 z24 z25 z26 z27 z28 z29
z30
z30 z30
z30 z30 z30 z30 z30 z30 z30
z30
More experimentation of using this technique on 3D triangular meshes
is forthcoming. To see the results, simply see the RESULTS
section. If you would like more specific information about SLCCA,
please click Here.
If you have any questions or comments, email me at scottm@meru.cecs.missouri.edu