Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
bilateral.h File Reference
#include <stddef.h>
+ Include dependency graph for bilateral.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  dt_bilateral_t
 

Functions

struct dt_bilateral_t __attribute__ ((packed)) dt_bilateral_t
 
float *buf __attribute__ ((aligned(64)))
 
size_t dt_bilateral_memory_use (const int width, const int height, const float sigma_s, const float sigma_r)
 
size_t dt_bilateral_memory_use2 (const int width, const int height, const float sigma_s, const float sigma_r)
 
size_t dt_bilateral_singlebuffer_size (const int width, const int height, const float sigma_s, const float sigma_r)
 
size_t dt_bilateral_singlebuffer_size2 (const int width, const int height, const float sigma_s, const float sigma_r)
 
void dt_bilateral_grid_size (dt_bilateral_t *b, const int width, const int height, const float L_range, float sigma_s, const float sigma_r)
 
dt_bilateral_tdt_bilateral_init (const int width, const int height, const float sigma_s, const float sigma_r)
 
void dt_bilateral_splat (const dt_bilateral_t *b, const float *const in)
 
void dt_bilateral_blur (const dt_bilateral_t *b)
 
void dt_bilateral_slice (const dt_bilateral_t *const b, const float *const in, float *out, const float detail)
 
void dt_bilateral_slice_to_output (const dt_bilateral_t *const b, const float *const in, float *out, const float detail)
 
void dt_bilateral_free (dt_bilateral_t *b)
 

Variables

size_t size_x
 
size_t size_y
 
size_t size_z
 
int width
 
int height
 
int numslices
 
int sliceheight
 
int slicerows
 
float sigma_s
 
float sigma_r
 

Function Documentation

◆ __attribute__() [1/2]

float *buf __attribute__::__attribute__ ( (aligned(64))  )

◆ __attribute__() [2/2]

struct dt_bilateral_t __attribute__ ( (packed)  )

◆ dt_bilateral_blur()

void dt_bilateral_blur ( const dt_bilateral_t b)

Definition at line 341 of file bilateral.c.

References blur_line(), blur_line_z(), and IS_NULL_PTR.

Referenced by _retouch_blur(), detail_enhance(), process(), and process().

◆ dt_bilateral_free()

void dt_bilateral_free ( dt_bilateral_t b)

Definition at line 432 of file bilateral.c.

References dt_free, dt_pixelpipe_cache_free_align, and IS_NULL_PTR.

Referenced by _retouch_blur(), detail_enhance(), process(), and process().

◆ dt_bilateral_grid_size()

void dt_bilateral_grid_size ( dt_bilateral_t b,
const int  width,
const int  height,
const float  L_range,
float  sigma_s,
const float  sigma_r 
)

◆ dt_bilateral_init()

dt_bilateral_t * dt_bilateral_init ( const int  width,
const int  height,
const float  sigma_s,
const float  sigma_r 
)

◆ dt_bilateral_memory_use()

size_t dt_bilateral_memory_use ( const int  width,
const int  height,
const float  sigma_s,
const float  sigma_r 
)

◆ dt_bilateral_memory_use2()

size_t dt_bilateral_memory_use2 ( const int  width,
const int  height,
const float  sigma_s,
const float  sigma_r 
)

Definition at line 72 of file bilateralcl.c.

References dt_bilateral_memory_use(), height, sigma_r, sigma_s, and width.

Referenced by tiling_callback().

◆ dt_bilateral_singlebuffer_size()

size_t dt_bilateral_singlebuffer_size ( const int  width,
const int  height,
const float  sigma_s,
const float  sigma_r 
)

◆ dt_bilateral_singlebuffer_size2()

size_t dt_bilateral_singlebuffer_size2 ( const int  width,
const int  height,
const float  sigma_s,
const float  sigma_r 
)

Definition at line 82 of file bilateralcl.c.

References dt_bilateral_singlebuffer_size(), height, MAX, sigma_r, sigma_s, and width.

Referenced by tiling_callback().

◆ dt_bilateral_slice()

void dt_bilateral_slice ( const dt_bilateral_t *const  b,
const float *const  in,
float *  out,
const float  detail 
)

Definition at line 356 of file bilateral.c.

References __OMP_PARALLEL_FOR__, height, i, image_to_grid(), IS_NULL_PTR, L, out, and width.

Referenced by _retouch_blur(), process(), and process().

◆ dt_bilateral_slice_to_output()

void dt_bilateral_slice_to_output ( const dt_bilateral_t *const  b,
const float *const  in,
float *  out,
const float  detail 
)

Definition at line 396 of file bilateral.c.

References __OMP_PARALLEL_FOR__, height, i, image_to_grid(), IS_NULL_PTR, L, MAX, out, and width.

Referenced by detail_enhance(), and process().

◆ dt_bilateral_splat()

void dt_bilateral_splat ( const dt_bilateral_t b,
const float *const  in 
)

Variable Documentation

◆ height

int height

Definition at line 1 of file bilateral.h.

◆ numslices

int numslices

Definition at line 2 of file bilateral.h.

◆ sigma_r

◆ sigma_s

◆ size_x

◆ size_y

◆ size_z

◆ sliceheight

int sliceheight

Definition at line 2 of file bilateral.h.

◆ slicerows

int slicerows

Definition at line 2 of file bilateral.h.

◆ width

int width

Definition at line 1 of file bilateral.h.