LabVIEW Advanced Signal Processing Toolkit API Reference

Application Example: Lossless Compression (Advanced Signal Processing Toolkit)

  • Updated2023-02-21
  • 2 minute(s) read

When you apply the discrete wavelet transform (DWT) to integer signal samples, you convert the original integer signal samples to floating-point wavelet coefficients. In signal compression applications, you typically further quantize these coefficients to an integer representation before entropy-based encoding. As a result, compression with the DWT is lossy, meaning that some information is lost when you compress a signal using the DWT, and that you typically cannot reconstruct the original signal perfectly from the coefficients of the DWT.

The integer wavelet transform (IWT), however, provides lossless compression. You can use the IWT to convert integer signal samples into integer wavelet coefficients, and you can compress these integer coefficients by entropy-based encoding without further quantization. As a result, you can reconstruct the original signal perfectly from a compressed set of IWT coefficients. The following figure shows an example of lossless compression with the IWT.

In the Histogram graph, most of the elements in the IWT Coefficients plot are zero, meaning that you can obtain a high compression ratio using the IWT of this image. You can reconstruct the image perfectly with the inverse IWT, as shown in the Reconstructed Image graph. The Maximum Difference value of 0 indicates that the reconstructed image retains all the information of the original image.

Refer to the Lossless Medical Image Compression VI in the labview\examples\Wavelet Analysis\WAApplications directory for an example of lossless compression.

Log in to get a better experience