[Uni-verse] audio error metric

Tapio Lokki uni-verse@blender.org
Mon, 3 May 2004 15:11:27 +0300 (EEST)


On Mon, 3 May 2004, Marcus Hoffmann wrote:

> especially all audio people ;)
>
> How described in our wp2.2 specification we need a definition from HUT and
> II for the error metric for the mesh compression.
> You must define parameters on a mesh or scene that can be used for a
> decision if and how much this mesh can be compressed to fit for your
> puroses. once if you defined the metric or some function we can use the
> needed parameters and define a function for the compression on the server.

Hi Marcus et al.
We discussed about  error metrics with Sami Kiminki and here are some
comments.

We propose two reduction schemes. The first and the simpler:

Only vertices, which are connected to polygons with the same acoustic
material can be reduced. Error function (per vertex) is as in [1] for
the vertices. The reduction is performed as in [1].

***

The second and perhaps finer scheme:

The per-vertex error function: E(v)=Gerr(v)+Merr(v), where
 - Gerr(v) is geometric error for vertex. This is the error as in [1]
 - Merr(v) is material error. If polygons connected to v are of same
   material, Merr(v) is 0. Otherwise Merr(v) is nonzero and function of
   the surface areas and materials of connected polygons. More exactly,
   something like:

     P1,..,Pn are the polygons connected to v.
     M(Pi) is the material vector of scalars for Pi
     A(Pi) is the surface area of Pi

           (A(P1)*M(P1) + ... + A(Pn)*M(Pn))
     Mavg= ---------------------------------
                  A(P1) + ... + A(Pn)

     Merr= A(P1)*||M(P1) - Mavg|| + ... + A(Pn)*||M(Pn) - Mavg||

     In other words, Mavg is surface area weighted material average.
     Merr would be something like material variance in
     surrounding polygons. However, We don't know how the material
     vector norm || · || should be defined in this context. The
     usual vector norm (|| · ||_2) perhaps?

After vertex removal, materials of affected polygons must be adjusted. I
think Mavg is suitable material vector for all affected polygons, as it
was the weighted material average of surrounding polygons.

However, this scheme has still the open issue of definition of
|| · ||. Additionally, the error functions Merr and Gerr need to be
scaled appropriately. The scaling factors must be experimented.

***

So, we propose that we start with the scheme 1. If this proves to be
insufficient, then we shall go for scheme 2. But please keep the path to
the scheme 2 open.

References:
[1] Sahm, Soetebier, Birthelmer. Efficient representation and streaming
of 3D scenes. Try keyword: sahm soetebier at
www.elseviercomputerscience.com.

Best Regards,
Sami and Tapio

--
Tapio Lokki <Tapio.Lokki@hut.fi>, http://www.tml.hut.fi/~ktlokki/
Helsinki University of Technology
Telecommunications Software and Multimedia Laboratory
PO Box. 5400, FIN-02015 HUT, Finland, tel. +358-9-4514737, fax +358-9-4515014