Table of Contents

NAME

QccWAVZerotreeNullSymbol, QccWAVZerotreeMakeSymbolNull, QccWAVZerotreeMakeSymbolNonnull - operations on zerotree symbols

SYNOPSIS

#include "libQccPack.h"

int QccWAVZerotreeNullSymbol(const char symbol);
int QccWAVZerotreeMakeSymbolNull(char *symbol);
int QccWAVZerotreeMakeSymbolNonnull(char *symbol);

DESCRIPTION

The QccWAVZerotree structure contains an array of symbols, one for each coefficient in the corresponding subband pyramid. The value of each symbol can be one of the following:

QCCWAVZEROTREE_SYMBOLSIGNIFICANT
The corresponding coefficient is significant.
QCCWAVZEROTREE_SYMBOLINSIGNIFICANT
The corresponding coefficient is insignificant.
QCCWAVZEROTREE_SYMBOLZTROOT
The corresponding coefficient is a zerotree root.
QCCWAVZEROTREE_SYMBOLTEMP
A temporary label for the coefficient.

Any one of the valid symbols above can be marked as "null" using the function QccWAVZerotreeMakeSymbolNull(). This is done in such a way so that the original value of the symbol is not lost. Specifically, the values QCCWAVZEROTREE_SYMBOLSIGNIFICANT, QCCWAVZEROTREE_SYMBOLINSIGNIFICANT, QCCWAVZEROTREE_SYMBOLZTROOT, and QCCWAVZEROTREE_SYMBOLTEMP are all defined as positive constants; these symbols are marked "null" by making them negative. To recover the original value of the symbol, QccWAVZerotreeMakeSymbolNonnull() makes the symbol positive again. Finally, QccWAVZerotreeNullSymbol() returns 1 if symbol is "null" and 0 otherwise.

RETURN VALUE

Except for QccWAVZerotreeNullSymbol(), these routines return 0 on success, and 1 on failure.

SEE ALSO

QccWAVZerotree(3) , QccPackWAV(3) , QccPack(3)

J. M. Shapiro, "Embedded Image Coding Using Zerotrees of Wavelet Coefficients," IEEE Transactions on Signal Processing, vol. 41, no. 12, pp. 3445-3462, December 1993.

AUTHOR

Copyright (C) 1997-2021 James E. Fowler


Table of Contents



Get QccPack at SourceForge.net. Fast, secure and Free Open Source software downloads