public class AnWTFilterFloatLift9x7 extends AnWTFilterFloat
See the AnWTFilter class for details such as normalization, how to split odd-length signals, etc. In particular, this method assumes that the low-pass coefficient is computed first.
AnWTFilter
,
AnWTFilterFloat
Modifier and Type | Field and Description |
---|---|
static float |
ALPHA
The value of the first lifting step coefficient
|
static float |
BETA
The value of the second lifting step coefficient
|
static float |
DELTA
The value of the fourth lifting step coefficient
|
static float |
GAMMA
The value of the third lifting step coefficient
|
private static float[] |
HPSynthesisFilter
The high-pass synthesis filter of the 9x7 wavelet transform
|
static float |
KH
The value of the high-pass subband normalization factor
|
static float |
KL
The value of the low-pass subband normalization factor
|
private static float[] |
LPSynthesisFilter
The low-pass synthesis filter of the 9x7 wavelet transform
|
OPT_PREFIX
WT_FILTER_FLOAT_CONVOL, WT_FILTER_FLOAT_LIFT, WT_FILTER_INT_LIFT
Constructor and Description |
---|
AnWTFilterFloatLift9x7() |
Modifier and Type | Method and Description |
---|---|
void |
analyze_hpf(float[] inSig,
int inOff,
int inLen,
int inStep,
float[] lowSig,
int lowOff,
int lowStep,
float[] highSig,
int highOff,
int highStep)
An implementation of the analyze_hpf() method that works on int
data, for the forward 9x7 wavelet transform using the
lifting scheme.
|
void |
analyze_lpf(float[] inSig,
int inOff,
int inLen,
int inStep,
float[] lowSig,
int lowOff,
int lowStep,
float[] highSig,
int highOff,
int highStep)
An implementation of the analyze_lpf() method that works on int
data, for the forward 9x7 wavelet transform using the
lifting scheme.
|
boolean |
equals(Object obj)
Tests if the 'obj' object is the same filter as this one.
|
int |
getAnHighNegSupport()
Returns the negative support of the high-pass analysis
filter.
|
int |
getAnHighPosSupport()
Returns the positive support of the high-pass analysis
filter.
|
int |
getAnLowNegSupport()
Returns the negative support of the low-pass analysis
filter.
|
int |
getAnLowPosSupport()
Returns the positive support of the low-pass analysis
filter.
|
int |
getFilterType()
Returns the type of filter used according to the FilterTypes
interface(W9x7).
|
float[] |
getHPSynthesisFilter()
Returns the time-reversed high-pass synthesis waveform of the
filter, which is the high-pass filter.
|
int |
getImplType()
Returns the implementation type of this filter, as defined in
this class, such as WT_FILTER_INT_LIFT, WT_FILTER_FLOAT_LIFT,
WT_FILTER_FLOAT_CONVOL.
|
float[] |
getLPSynthesisFilter()
Returns the time-reversed low-pass synthesis waveform of the
filter, which is the low-pass filter.
|
int |
getSynHighNegSupport()
Returns the negative support of the high-pass synthesis
filter.
|
int |
getSynHighPosSupport()
Returns the positive support of the high-pass synthesis
filter.
|
int |
getSynLowNegSupport()
Returns the negative support of the low-pass synthesis
filter.
|
int |
getSynLowPosSupport()
Returns the positive support of the low-pass synthesis
filter.
|
boolean |
isReversible()
Returns the reversibility of the filter.
|
boolean |
isSameAsFullWT(int tailOvrlp,
int headOvrlp,
int inLen)
Returns true if the wavelet filter computes or uses the
same "inner" subband coefficient as the full frame wavelet transform,
and false otherwise.
|
String |
toString()
Debugging method
|
analyze_hpf, analyze_lpf, getDataType
getHPSynWaveForm, getLPSynWaveForm, getParameterInfo
private static final float[] LPSynthesisFilter
private static final float[] HPSynthesisFilter
public static final float ALPHA
public static final float BETA
public static final float GAMMA
public static final float DELTA
public static final float KL
public static final float KH
public void analyze_lpf(float[] inSig, int inOff, int inLen, int inStep, float[] lowSig, int lowOff, int lowStep, float[] highSig, int highOff, int highStep)
The coefficients of the first lifting step are [ALPHA 1 ALPHA].
The coefficients of the second lifting step are [BETA 1 BETA].
The coefficients of the third lifting step are [GAMMA 1 GAMMA].
The coefficients of the fourth lifting step are [DELTA 1 DELTA].
The low-pass and high-pass subbands are normalized by respectively a factor of KL and a factor of KH
analyze_lpf
in class AnWTFilterFloat
inSig
- This is the array that contains the input
signal.inOff
- This is the index in inSig of the first sample to
filter.inLen
- This is the number of samples in the input signal
to filter.inStep
- This is the step, or interleave factor, of the
input signal samples in the inSig array.lowSig
- This is the array where the low-pass output
signal is placed.lowOff
- This is the index in lowSig of the element where
to put the first low-pass output sample.lowStep
- This is the step, or interleave factor, of the
low-pass output samples in the lowSig array.highSig
- This is the array where the high-pass output
signal is placed.highOff
- This is the index in highSig of the element where
to put the first high-pass output sample.highStep
- This is the step, or interleave factor, of the
high-pass output samples in the highSig array.AnWTFilter.analyze_lpf(java.lang.Object, int, int, int, java.lang.Object, int, int, java.lang.Object, int, int)
public void analyze_hpf(float[] inSig, int inOff, int inLen, int inStep, float[] lowSig, int lowOff, int lowStep, float[] highSig, int highOff, int highStep)
The coefficients of the first lifting step are [ALPHA 1 ALPHA].
The coefficients of the second lifting step are [BETA 1 BETA].
The coefficients of the third lifting step are [GAMMA 1 GAMMA].
The coefficients of the fourth lifting step are [DELTA 1 DELTA].
The low-pass and high-pass subbands are normalized by respectively a factor of KL and a factor of KH
analyze_hpf
in class AnWTFilterFloat
inSig
- This is the array that contains the input
signal.inOff
- This is the index in inSig of the first sample to
filter.inLen
- This is the number of samples in the input signal
to filter.inStep
- This is the step, or interleave factor, of the
input signal samples in the inSig array.lowSig
- This is the array where the low-pass output
signal is placed.lowOff
- This is the index in lowSig of the element where
to put the first low-pass output sample.lowStep
- This is the step, or interleave factor, of the
low-pass output samples in the lowSig array.highSig
- This is the array where the high-pass output
signal is placed.highOff
- This is the index in highSig of the element where
to put the first high-pass output sample.highStep
- This is the step, or interleave factor, of the
high-pass output samples in the highSig array.AnWTFilter.analyze_hpf(java.lang.Object, int, int, int, java.lang.Object, int, int, java.lang.Object, int, int)
public int getAnLowNegSupport()
public int getAnLowPosSupport()
public int getAnHighNegSupport()
public int getAnHighPosSupport()
public int getSynLowNegSupport()
A MORE PRECISE DEFINITION IS NEEDED
public int getSynLowPosSupport()
A MORE PRECISE DEFINITION IS NEEDED
public int getSynHighNegSupport()
A MORE PRECISE DEFINITION IS NEEDED
public int getSynHighPosSupport()
A MORE PRECISE DEFINITION IS NEEDED
public float[] getLPSynthesisFilter()
The returned array may not be modified (i.e. a reference to the internal array may be returned by the implementation of this method).
getLPSynthesisFilter
in class AnWTFilter
public float[] getHPSynthesisFilter()
The returned array may not be modified (i.e. a reference to the internal array may be returned by the implementation of this method).
getHPSynthesisFilter
in class AnWTFilter
public int getImplType()
public boolean isReversible()
public boolean isSameAsFullWT(int tailOvrlp, int headOvrlp, int inLen)
The result depends on the length of the allowed overlap when compared to the overlap required by the wavelet filter. It also depends on how overlap processing is implemented in the wavelet filter.
tailOvrlp
- This is the number of samples in the input
signal before the first sample to filter that can be used for
overlap.headOvrlp
- This is the number of samples in the input
signal after the last sample to filter that can be used for
overlap.inLen
- This is the lenght of the input signal to filter.The
required number of samples in the input signal after the last sample
depends on the length of the input signal.public boolean equals(Object obj)
Currently the implementation of this method only tests if 'obj' is also of the class AnWTFilterFloatLift9x7
public int getFilterType()
getFilterType
in class AnWTFilter
FilterTypes
Copyright © 2017 Open Microscopy Environment