#include "cppTypes.h"
#include "memoryAllocation.h"
#include "imageLoad.h"
#include "tbb/tbb.h"
#include "rangeSegDTWTauto.h"
#include "bodySegDTWT2D.h"
#include "bodySegIDTWT2D.h"
Zobrazit zdrojový text tohoto souboru.
Třídy | |
struct | Rect |
struct | Size |
Definice maker | |
#define | ALIGN_TO_BYTES 16 |
#define | SUBBAND_COUNT 3 |
#define | SUBSAMPLING 1 |
#define | pow2(x) ((1)<<(x)) |
#define | r(k, m) (pow2(k)-(1))*((m)-(1)) |
#define | max(x, y) x>y?x:y |
#define | min(x, y) x<y?x:y |
#define | odd(x) (x%2)!=0 |
#define | even(x) (x%2)==0 |
Výčty | |
enum | wrapType { ZEROS_PADDING = 0, CONST_PADDING = 1, SYMETRIC_HP = 2, SYMETRIC_WP = 3 } |
enum | WRESULT { RESULT_OK = 0, RESULT_UNKNOWN_ERROR = -1 } |
Funkce | |
WRESULT | segDTWTfwd_32f_C1 (float *i_data, int i_widthStep, float *subbands[], int widthSteps[], int levels, Size size, separableWavelet *w) |
WRESULT | segDTWTinv_32f_C1 (float *subbands[], int widthSteps[], float *o_data, int o_widthStep, int levels, Size size, separableWavelet *w) |
Proměnné | |
wrapType | extensionType |
Size | segSize |
char * | waveletFile |
Značení jednotlivých subpásem:
-------------------------------------- |LL |HL3| HL2| HL1| |-------- | | |LH3|HH3| | | |------------------ | | LH2| HH2| | | | | | | | | | |------------------------------------- | LH1| HH1| | | | | | | | | | | | | | | | --------------------------------------
Program pracuje s:
WRESULT segDTWTfwd_32f_C1 | ( | float * | i_data, | |
int | i_widthStep, | |||
float * | subbands[], | |||
int | widthSteps[], | |||
int | levels, | |||
Size | size, | |||
separableWavelet * | w | |||
) |
Funkce segDTWTfwd_32f_C1 pro paralelní dopřednou vlnkovou transformaci. Pracuje s jednokanálovým obrazem (C1) datových typů float
[in] | i_data | ukazatel na vstupní obraz |
[in] | i_widthStep | vzdálenost mezi řádky obrázku v paměti v bytech |
[in,out] | subbands[] | pole ukazatelů na výstupní subpásma. Ukazatele na subpásma jsou za sebou uloženy v pořadí subbands[0]=HL1,[1]=HH1,[2]=LH1,[3]=HL2,[4]=HH2,[5]=LH2 .... [last]=LL. Paměť musí být předem alokována a rozměry subpásem jsou
a
přičemž
|
[in,out] | widthSteps[] | pole vzdáleností mezi řádky subpásem v paměti v bytech |
[in] | levels | stupeň dekompozice |
[in] | size | rozměry vstupního obrazu bez prodloužení |
[in] | w | použité vlnkové filtry |
WRESULT segDTWTinv_32f_C1 | ( | float * | subbands[], | |
int | widthSteps[], | |||
float * | o_data, | |||
int | o_widthStep, | |||
int | levels, | |||
Size | size, | |||
separableWavelet * | w | |||
) |
Funkce segDTWTinv_32f_C1 pro paralelní zpětnou vlnkovou transformaci.
[in,out] | subbands[] | - pole ukazatelů na subpásma. |
[in,out] | widthSteps[] | -pole vzdáleností mezi řádky subpásem v paměti v bytech |
[in] | o_data | -ukazatel na výstupní obraz |
[in] | o_widthStep | -vzdálenost mezi řádky obrázku v paměti v bytech |
[in] | levels | -stupeň dekompozice |
[in] | size | -rozměry vstupního obrazu bez prodloužení |
[in] | w | -použité vlnkové filtry |