JWS C Library
C language utility library
|
Declarations for matrix block convolution operations. More...
#include <jwsc/config.h>
#include <stdlib.h>
#include "jwsc/base/error.h"
#include "jwsc/matblock/matblock.h"
Go to the source code of this file.
Functions | |
convolve_matblock | |
Convolves a matrix block with a filter. | |
Error * | convolve_matblock_f (Matblock_f **m_out, const Matblock_f *m_in, const Matblock_f *h) |
Convolves a single precision matrix block with a filter. | |
Error * | convolve_matblock_d (Matblock_d **m_out, const Matblock_d *m_in, const Matblock_d *h) |
Convolves a double precision matrix block with a filter. |
Declarations for matrix block convolution operations.
Definition in file matblock_conv.h.
Error* convolve_matblock_f | ( | Matblock_f ** | m_out, |
const Matblock_f * | m_in, | ||
const Matblock_f * | h | ||
) |
Convolves a single precision matrix block with a filter.
Uses reflection to handle boundary cases. The convolution filter must be no larger than the size of m_in.
If the dimension(s) of h are even, the center of the filter is the in upper-left of the central quadrant/pair. For example,
1 0 0 0
Does not use FFT.
m_out | Result parameter. If *m_out is NULL, a matrix block is allocated; otherwise its space is re-used. |
m_in | Matrix block to convolve. |
h | Filter to use in convolution. |
Definition at line 98 of file matblock_conv.c.
Error* convolve_matblock_d | ( | Matblock_d ** | m_out, |
const Matblock_d * | m_in, | ||
const Matblock_d * | h | ||
) |
Convolves a double precision matrix block with a filter.
Uses reflection to handle boundary cases. The convolution filter must be no larger than the size of m_in.
If the dimension(s) of h are even, the center of the filter is the in upper-left of the central quadrant/pair. For example,
1 0 0 0
Does not use FFT.
m_out | Result parameter. If *m_out is NULL, a matrix is allocated; otherwise its space is re-used. |
m_in | Matrix to convolve. |
h | Filter to use in convolution. |
Definition at line 235 of file matblock_conv.c.