OpenJPEG: dwt.h File Reference

OpenJPEG 2.3.1

dwt.h File Reference

Implementation of a discrete wavelet transform (DWT) More...

Go to the source code of this file.

## Functions
Exported functions
OPJ_BOOL | opj_dwt_encode (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec)
| Forward 5-3 wavelet transform in 2-D. More...
OPJ_BOOL | opj_dwt_decode (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec, OPJ_UINT32 numres)
| Inverse 5-3 wavelet transform in 2-D. More...
OPJ_FLOAT64 | opj_dwt_getnorm (OPJ_UINT32 level, OPJ_UINT32 orient)
| Get the norm of a wavelet function of a subband at a specified level for the reversible 5-3 DWT. More...
OPJ_BOOL | opj_dwt_encode_real (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec)
| Forward 9-7 wavelet transform in 2-D. More...
OPJ_BOOL | opj_dwt_decode_real (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *OPJ_RESTRICT tilec, OPJ_UINT32 numres)
| Inverse 9-7 wavelet transform in 2-D. More...
OPJ_FLOAT64 | opj_dwt_getnorm_real (OPJ_UINT32 level, OPJ_UINT32 orient)
| Get the norm of a wavelet function of a subband at a specified level for the irreversible 9-7 DWT. More...
void | opj_dwt_calc_explicit_stepsizes (opj_tccp_t *tccp, OPJ_UINT32 prec)
| Explicit calculation of the Quantization Stepsizes. More...

## Detailed Description

Implementation of a discrete wavelet transform (DWT)

The functions in DWT.C have for goal to realize forward and inverse discret wavelet transform with filter 5-3 (reversible) and filter 9-7 (irreversible). The functions in DWT.C are used by some function in TCD.C.

## Function Documentation

## ◆ opj_dwt_calc_explicit_stepsizes()

void opj_dwt_calc_explicit_stepsizes | ( | opj_tccp_t * | tccp,
|  | OPJ_UINT32 | prec
| ) |  |

Explicit calculation of the Quantization Stepsizes.

Parameters

  tccp | Tile-component coding parameters
  prec | Precint analyzed

References J2K_CCP_QNTSTY_NOQNT, opj_tccp::numresolutions, opj_dwt_encode_stepsize(), opj_dwt_getnorm_real(), opj_tccp::qmfbid, opj_tccp::qntsty, and opj_tccp::stepsizes.

Referenced by opj_j2k_setup_encoder().

## ◆ opj_dwt_decode()

OPJ_BOOL opj_dwt_decode | ( | opj_tcd_t * | p_tcd,
|  | opj_tcd_tilecomp_t * | tilec,
|  | OPJ_UINT32 | numres
| ) |  |

Inverse 5-3 wavelet transform in 2-D.

Apply a reversible inverse DWT transform to a component of an image.

Parameters

  p_tcd | TCD handle
  tilec | Tile component information (current tile)
  numres | Number of resolution levels to decode

References opj_dwt_decode_partial_tile(), opj_dwt_decode_tile(), opj_tcd::thread_pool, and opj_tcd::whole_tile_decoding.

Referenced by main(), and opj_tcd_dwt_decode().

## ◆ opj_dwt_decode_real()

OPJ_BOOL opj_dwt_decode_real | ( | opj_tcd_t * | p_tcd,
|  | opj_tcd_tilecomp_t *OPJ_RESTRICT | tilec,
|  | OPJ_UINT32 | numres
| ) |  |

Inverse 9-7 wavelet transform in 2-D.

Apply an irreversible inverse DWT transform to a component of an image.

Parameters

  p_tcd | TCD handle
  tilec | Tile component information (current tile)
  numres | Number of resolution levels to decode

References opj_dwt_decode_partial_97(), opj_dwt_decode_tile_97(), opj_tcd::thread_pool, and opj_tcd::whole_tile_decoding.

Referenced by main(), and opj_tcd_dwt_decode().

## ◆ opj_dwt_encode()

OPJ_BOOL opj_dwt_encode | ( | opj_tcd_t * | p_tcd,
|  | opj_tcd_tilecomp_t * | tilec
| ) |  |

Forward 5-3 wavelet transform in 2-D.

Apply a reversible DWT transform to a component of an image.

Parameters

  p_tcd | TCD handle
  tilec | Tile component information (current tile)

References opj_dwt_encode_and_deinterleave_h_one_row(), opj_dwt_encode_and_deinterleave_v(), opj_dwt_encode_procedure(), and opj_tcd::thread_pool.

Referenced by main(), and opj_tcd_dwt_encode().

## ◆ opj_dwt_encode_real()

OPJ_BOOL opj_dwt_encode_real | ( | opj_tcd_t * | p_tcd,
|  | opj_tcd_tilecomp_t * | tilec
| ) |  |

Forward 9-7 wavelet transform in 2-D.

Apply an irreversible DWT transform to a component of an image.

Parameters

  p_tcd | TCD handle
  tilec | Tile component information (current tile)

References opj_dwt_encode_and_deinterleave_h_one_row_real(), opj_dwt_encode_and_deinterleave_v_real(), opj_dwt_encode_procedure(), and opj_tcd::thread_pool.

Referenced by main(), and opj_tcd_dwt_encode().

## ◆ opj_dwt_getnorm()

OPJ_FLOAT64 opj_dwt_getnorm | ( | OPJ_UINT32 | level,
|  | OPJ_UINT32 | orient
| ) |  |

Get the norm of a wavelet function of a subband at a specified level for the reversible 5-3 DWT.

Parameters

  level | Level of the wavelet function
  orient | Band of the wavelet function

Returns
  Returns the norm of the wavelet function

References opj_dwt_norms.

Referenced by opj_t1_getwmsedec().

## ◆ opj_dwt_getnorm_real()

OPJ_FLOAT64 opj_dwt_getnorm_real | ( | OPJ_UINT32 | level,
|  | OPJ_UINT32 | orient
| ) |  |

Get the norm of a wavelet function of a subband at a specified level for the irreversible 9-7 DWT.

Parameters

  level | Level of the wavelet function
  orient | Band of the wavelet function

Returns
  Returns the norm of the 9-7 wavelet

References opj_dwt_norms_real.

Referenced by opj_dwt_calc_explicit_stepsizes(), and opj_t1_getwmsedec().