Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::canvas::ImageConvolutionKernel Class Reference

NxN convolution kernel for image processing. More...

#include <image_convolution.hpp>

Public Member Functions

 ImageConvolutionKernel (int size)
 Create an NxN kernel (must be odd: 3, 5, 7, etc.).
void set (int row, int col, float value)
 Set a kernel value at (row, col).
float get (int row, int col) const
 Get a kernel value.
int size () const
 Kernel size.
void apply (uint8_t *pixels, int width, int height, int stride=0) const
 Apply the kernel to RGBA image data (in-place).

Static Public Member Functions

static ImageConvolutionKernel gaussian_blur_3 ()
 Gaussian blur (3x3).
static ImageConvolutionKernel gaussian_blur_5 ()
 Gaussian blur (5x5).
static ImageConvolutionKernel sharpen ()
 Sharpen kernel (3x3).
static ImageConvolutionKernel edge_detect ()
 Edge detection (Sobel-like, 3x3).
static ImageConvolutionKernel emboss ()
 Emboss (3x3).

Detailed Description

NxN convolution kernel for image processing.

Constructor & Destructor Documentation

◆ ImageConvolutionKernel()

pulp::canvas::ImageConvolutionKernel::ImageConvolutionKernel ( int size)
inlineexplicit

Create an NxN kernel (must be odd: 3, 5, 7, etc.).

Member Function Documentation

◆ apply()

void pulp::canvas::ImageConvolutionKernel::apply ( uint8_t * pixels,
int width,
int height,
int stride = 0 ) const
inline

Apply the kernel to RGBA image data (in-place).

◆ edge_detect()

ImageConvolutionKernel pulp::canvas::ImageConvolutionKernel::edge_detect ( )
inlinestatic

Edge detection (Sobel-like, 3x3).

◆ emboss()

ImageConvolutionKernel pulp::canvas::ImageConvolutionKernel::emboss ( )
inlinestatic

Emboss (3x3).

◆ gaussian_blur_3()

ImageConvolutionKernel pulp::canvas::ImageConvolutionKernel::gaussian_blur_3 ( )
inlinestatic

Gaussian blur (3x3).

◆ gaussian_blur_5()

ImageConvolutionKernel pulp::canvas::ImageConvolutionKernel::gaussian_blur_5 ( )
inlinestatic

Gaussian blur (5x5).

◆ get()

float pulp::canvas::ImageConvolutionKernel::get ( int row,
int col ) const
inline

Get a kernel value.

◆ set()

void pulp::canvas::ImageConvolutionKernel::set ( int row,
int col,
float value )
inline

Set a kernel value at (row, col).

◆ sharpen()

ImageConvolutionKernel pulp::canvas::ImageConvolutionKernel::sharpen ( )
inlinestatic

Sharpen kernel (3x3).

◆ size()

int pulp::canvas::ImageConvolutionKernel::size ( ) const
inline

Kernel size.


The documentation for this class was generated from the following file: