archbung / haskellet

A simple wavelet toolbox, written in Haskell

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Haskellet

Haskellet is a simple wavelet toolbox written in Haskell. It exposes two modules:

  • Transform which contains the half-tree and full-tree wavelet transforms and their inverses.
  • Daubechies which contains the Daubechies wavelet.

A full-tree transform will further decomposes both the low frequency components (approximation coefficients) and high frequency components (detail coefficients) in subsequents stages, resulting in linear frequency allocation. In contrast, a half-tree transform only further decomposes approximation coefficients in subsequent stages, which results in logarithmic frequency allocation.

As it currently stands, Haskellet is naively implemented using list-based convolution but it is correct AFAIK. This library is intended as a baseline for future implementations.

This library uses Stack, so simply clone this repo and run stack build or add this to your stack.yaml in your project directory.

About

A simple wavelet toolbox, written in Haskell

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Haskell 100.0%