?? flwt.h
字號:
/* * -*- Mode: ANSI C -*- * $Id: flwt.h,v 1.6 1996/10/06 09:25:47 fernande Exp $ * $Source: /sgi.acct/sweldens/cvs/liftpack/include/flwt.h,v $ * Author: Fernandez, Gabriel * * This file includes declarations for the Direct and Inverse Fast Lifted * Wavelet Transform (FLWT) functions and for the Filter and Lifting * coeffients calculation functions. * We use the "Lifting Scheme" and the "Square 2-D Method" [1,2] which * help to generate "Biorthogonal Wavelets" as well as "Second Generation * Wavelets". * The original signal can be either a 1-D or a 2-D signal. The X and Y * dimensions have to be given as parameters. * N indicates the number of vanishing moments for the dual wavelet. It * is assumed to be even to apply the interpolation subdivision on the * interval. See [3] for further reference. * nTilde indicates the number of vanishing moments for the real wavelet. It * is assumed to be even for the same reasons stated before. * Functions GetDual() and GetReal() have to be executed before applying * any of the transforms and they arein charge of finding the filter and lifting * coefficients, respectively, given the values of N and nTilde. * The functions FLWT1D_Predict() FLWT1D_Update() do the prediction of the * Gamma coefficients and the update of the Lambda coefficients, respectively, * as stated in [4]. * * 1 Sweldens, W.: The lifting scheme: A custom-design construction of * biorthogonal wavelets. Technical report 1994:7, * Industrial Mathematics Initiative, Department of Mathematics, * University of South Carolina (1994). * 2 Sweldens, W.: The lifting scheme: A construction of second-generation * wavelets. Technical report 1995:6, Industrial Mathematics * Initiative, Department of Mathematics, University of South * Carolina (1995). * 3 Schroder, P. and Sweldens, W.: Building your own wavelets at home. Technical * report 1995:5, Industrial Mathematics initiative, Department * of Mathematics, University of South Carolina (1995). * 4 Sweldens, W.: The lifting scheme: A new philosophy in Biorthogonal wavelet * constructions. To appear in SPIE95 conference (1996). *//* do not edit anything above this line */#ifndef __FLWT_H__#define __FLWT_H__#include "flwtdef.h"/* Calculate filter coefficients for all possible cases and initialize Integral-Moments for both directions */extern voidGetDual ( const int __cols, const int __rows, const int __N, const int __nTilde, const boolean __print_coeff, const int __levels );/* Frees memory allocated by GetDual() */extern voidFreeCo ( const int __cols, const int __rows, const int __N, const int __nTilde, const int __levels );/* Calculate all the lifting coefficients for all levels */extern voidGetReal ( const int __cols, const int __rows, const int __N, const int __nTilde, const boolean __print_coeffs, const int __levels );/* Direct/Inverse 2D Fast Lifted Wavelet Transform */extern voidFLWT2D ( Matrix __data, const int __cols, const int __rows, const int __N, const int __nTilde, const int __levels, const boolean __inverse );/* Direct/Inverse 1D Fast Lifted Wavelet Transform */extern voidFLWT1D ( Vector __data, const int __cols, const int __N, const int __nTilde, const int __levels, const boolean __inverse );/* Direct/Inverse 2D Fast Lifted Wavelet Transform (Average) */extern voidFLWT2D_Haar ( Matrix __data, const int __cols, const int __rows, const int __levels, const boolean __inverse );/* Direct/Inverse 1D Fast Lifted Wavelet Transform (Average) */extern voidFLWT1D_Haar ( Vector __vect, const int __cols, const int __levels, const boolean __inverse );/* Prediction stage for the 1D transform */extern voidFLWT1D_Predict ( Vector __vect, const long __size, const long __incr, const long __step, const long __N );/* Update stage for the 1D transform */extern voidFLWT1D_Update ( Vector __vect, const long __size, const long __incr, const long __step, const long __nTilde, const Vector __liftingCoeffs );/* Haar coefficients for the 1D transform */extern voidFLWT_Haar ( Vector __vect, const long __size, const long __incr, const long __step ); /* Lambda coefficients for the inverse Haar 1D transform */extern voidIFLWT_Haar ( Vector __vect, const long __size, const long __incr, const long __step );/* Applies the FLWT and separates the resulting regions by frequency bands */externMatrix *DSFLWT2D ( Matrix __in, const int __width, const int __height, const int __N, const int __nTilde );/* Applies the FLWT and separates the resulting regions by frequency bands */externVector *DSFLWT1D ( Vector __in, const int __width, const int __N, const int __nTilde );/* Adjoint the regions by frequency bands an apply the inverse transform */externMatrix ISFLWT2D ( Matrix *__in, const int __width, const int __height, const int __N, const int __nTilde );/* Adjoint the regions by frequency bands an apply the inverse transform */externVector ISFLWT1D ( Vector *__in, const int __width, const int __N, const int __nTilde );/* Applies the in-place inverse transform to a matrix in Mallat format */externvoid IFLWTP2D ( Matrix __in, const int __width, const int __height, const int __N, const int __nTilde );/* Applies the in-place inverse transform to a vector in Mallat format */externvoid IFLWTP1D ( Vector __in, const int __width, const int __N, const int __nTilde );#endif /* __FLWT_H__ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -