next up previous contents index
Next: cvsorgcode Up: Reference Previous: cvsencode   Contents   Index

cvsfrecode

$ \bigcirc$Name


cvsfrecode Encode the change of direction of points in the curves : return bit rate for lossless compression




$ \bigcirc$Command Synopsis


cvsfrecode C . . .



C : input curves

. (screen output) : output number of points

. (screen output) : output number of bits to code the curves (without origin points)

. (screen output) : compression rate (bit per point = B/N)




$ \bigcirc$Function Summary


double cvsfrecode (C , N , B )

Curves C ;

unsigned int *N ;

double *B ;




$ \bigcirc$Description


This module computes the bit rate needed to encode the points of the curves contained in the input set, but the origin points. The bit rate is given in bit per point, the number of points being the total number of points contained in all curves. The curves are supposed to be made by connected points (for the 4-connectivity).

This module implements the Freeman's algorithm [Fre74] : the data structure is made by the change of direction from one point to the next. After that, the data is coded using one of the following schemes (only the best bit rate is returned) : entropy coding, arithmetic coding, predictive arithmetic coding.

The function outputs also the total number of points N and the number of bits B needed to code the structure.

Use the module cvsencode to get the total bit rate to encode a set of curves. See the module arencode2 for more information on the arithmetic coding algorithms.

Such module is useful to encode level lines geometry, such as in [Fro99].




$ \bigcirc$See Also


arencode2, fentropy.

cvsencode.


$ \bigcirc$Version 1.1


Last Modification date : Thu Jan 24 18:37:26 2002


$ \bigcirc$Author


Jacques Froment






next up previous contents index
Next: cvsorgcode Up: Reference Previous: cvsencode   Contents   Index
mw 2004-05-05