|
MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
|
Compile-time 1D separable filter kernel. More...
#include <KernelSpec.hpp>
Collaboration diagram for MayaFlux::Kinesis::Vision::KernelSpec< N >:Public Member Functions | |
| template<size_t M> | |
| constexpr KernelSpec< N+M - 1 > | convolve (const KernelSpec< M > &other) const noexcept |
| Convolve this kernel with another of the same length. | |
| constexpr const float * | data () const noexcept |
| constexpr | KernelSpec ()=default |
| template<typename... Ts> requires (sizeof...(Ts) == N) && (std::is_convertible_v<Ts, float> && ...) | |
| constexpr | KernelSpec (Ts... values) noexcept |
| constexpr KernelSpec | negate () const noexcept |
| Negate all taps. | |
| constexpr KernelSpec | normalize () const noexcept |
| Divide all taps by their sum. | |
| constexpr | operator std::span< const float > () const noexcept |
| constexpr KernelSpec | reflect () const noexcept |
| Reverse tap order. | |
| constexpr KernelSpec | scale (float s) const noexcept |
| Multiply all taps by a scalar. | |
| constexpr KernelSpec | shift (float s) const noexcept |
| Add a scalar to all taps. | |
| constexpr size_t | size () const noexcept |
| constexpr std::span< const float > | span () const noexcept |
Public Attributes | |
| std::array< float, N > | taps {} |
Static Public Attributes | |
| static constexpr size_t | half = N / 2 |
| static constexpr size_t | length = N |
Compile-time 1D separable filter kernel.
| N | Kernel length. Must be odd and >= 1. |
Definition at line 33 of file KernelSpec.hpp.