nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
wfilters.hpp
Go to the documentation of this file.
1
3// toolboxes/wavelet/include/nk/wavelet/filter/wfilters.hpp
4
5#pragma once
6
7#include <memory_resource>
8#include <nk/value/value.hpp>
9#include <string>
10#include <vector>
11
12namespace nk::wavelet {
13
16
17
30struct FilterBank {
31 std::vector<double> Lo_D;
32 std::vector<double> Hi_D;
33 std::vector<double> Lo_R;
34 std::vector<double> Hi_R;
35};
36
48FilterBank wavelet_filters(const std::string &name);
49
58bool bior_filterbank(const std::string &name, FilterBank &out);
59
69 Value Lo_D;
70 Value Hi_D;
71 Value Lo_R;
72 Value Hi_R;
73};
74
99WFiltersResult wfilters(const std::string &name, const std::string &kind = "",
100 std::pmr::memory_resource *mr = nullptr);
101
102
104} // namespace nk::wavelet
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
FilterBank wavelet_filters(const std::string &name)
Return the four filter banks for a named orthogonal wavelet.
WFiltersResult wfilters(const std::string &name, const std::string &kind="", std::pmr::memory_resource *mr=nullptr)
Build the named wavelet's filters as nk Value rows.
bool bior_filterbank(const std::string &name, FilterBank &out)
Fill out with the four filters of a biorthogonal (bior*) or reverse-biorthogonal (rbio*) family.
Filter bank for an orthogonal wavelet family.
Definition wfilters.hpp:30
Result of wfilters ([…] = wfilters(wname[, kind])).
Definition wfilters.hpp:68