Table of Contents
QccWAVFilterBankRead, QccWAVFilterBankWrite - read and write wavelet
filter banks
#include "libQccPack.h"
int QccWAVFilterBankRead(QccWAVFilterBank
*filter_bank);
int QccWAVFilterBankWrite(const QccWAVFilterBank *filter_bank);
QccWAVFilterBankRead() reads a QccWAVFilterBank structure
from a file; the filename of the FBK-format file to be read must be stored
as filter_bank->filename. If the orthogonality of the filter bank is QCCWAVFILTERBANK_ORTHOGONAL,
only the primary filter is present in the file. This set of filter coefficients
is read from the file, and QccWAVFilterBankMakeOrthogonal(3)
is called
to construct the remaining filters of the orthogonal filter bank. If the
orthogonality of the filter bank is QCCWAVFILTERBANK_BIORTHOGONAL, the
primary and dual filters are present in the file. These sets of filter
coefficients are read from the file, and QccWAVFilterBankMakeBiorthogonal(3)
is called to construct the remaining filters of the biorthogonal filter
bank. Finally, if the orthogonality of the filter bank is QCCWAVFILTERBANK_GENERAL,
all four filters are present in and read from the file. QccWAVFilterBankRead()
handles all necessary allocation of memory for the storing of the filter
coefficients. Reading of all filter coefficients is accomplished via call(s)
to QccFilterRead(3)
.
QccWAVFilterBankWrite() writes a QccWAVFilterBank
structure to a file; the filename of the FBK-format file to be written
must be stored as filter_bank->filename. If the orthogonality of the filter
bank is QCCWAVFILTERBANK_ORTHOGONAL, only the primary filter (lowpass
synthesis filter) is written to the file. If the orthogonality of the filter
bank is QCCWAVFILTERBANK_BIORTHOGONAL, the primary and dual filters (lowpass
synthesis and lowpass analysis filter, respectively) are written to the
file. Finally, if the orthogonality of the filter bank is QCCWAVFILTERBANK_GENERAL,
all four filters are written to the file. Writing of all filter coefficients
is accomplished via call(s) to QccFilterWrite(3)
.
Both QccWAVFilterBankRead()
and QccWAVFilterBankWrite() return 0 on success and 1 on error.
QccWAVFilterBankMakeOrthogonal(3)
, QccWAVFilterBankMakeBiorthogonal(3)
,
QccWAVFilterBank(3)
, QccPackWAV(3)
, QccFilterRead(3)
, QccFilterWrite(3)
,
QccFilter(3)
, QccPack(3)
M. Antonini, M. Barlaud, P. Mathieu, and I. Daubechies,
"Image Coding Using Wavelet Transform," IEEE Transactions on Image Processing,
vol. 1, pp. 205-220, April 1992.
Copyright (C) 1997-2021 James E. Fowler
Table of Contents