nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
swt.hpp
Go to the documentation of this file.
1
3// toolboxes/wavelet/include/nk/wavelet/swt/swt.hpp
4//
5// Shift-invariant wavelet transforms — the stationary DWT (swt) and
6// the maximal-overlap DWT (modwt), plus their inverses.
7
8#pragma once
9
10#include <memory_resource>
11#include <nk/value/value.hpp>
12#include <string>
13
14namespace nk::wavelet {
15
18
19
41Value swt(const Value &x, int n, const std::string &wname,
42 std::pmr::memory_resource *mr = nullptr);
43
56Value iswt(const Value &swc, const std::string &wname,
57 std::pmr::memory_resource *mr = nullptr);
58
79Value modwt(const Value &x, int n, const std::string &wname,
80 std::pmr::memory_resource *mr = nullptr);
81
93Value imodwt(const Value &swc, const std::string &wname,
94 std::pmr::memory_resource *mr = nullptr);
95
96
98} // namespace nk::wavelet
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
Value modwt(const Value &x, int n, const std::string &wname, std::pmr::memory_resource *mr=nullptr)
Maximal-overlap discrete wavelet transform (swc = modwt(x, n, wname)).
Value iswt(const Value &swc, const std::string &wname, std::pmr::memory_resource *mr=nullptr)
Inverse stationary DWT (x = iswt(swc, wname)).
Value imodwt(const Value &swc, const std::string &wname, std::pmr::memory_resource *mr=nullptr)
Inverse MODWT (x = imodwt(swc, wname)).
Value swt(const Value &x, int n, const std::string &wname, std::pmr::memory_resource *mr=nullptr)
Stationary (à trous) discrete wavelet transform (swc = swt(x, n, wname)).