![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/bilateral.h"
#include "common/darktable.h"
#include "common/math.h"
#include <glib.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
Macros | |
#define | DT_COMMON_BILATERAL_MAX_RES_S 3000 |
#define | DT_COMMON_BILATERAL_MAX_RES_R 50 |
Functions | |
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) |
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) |
static size_t | image_to_grid (const dt_bilateral_t *const b, const int i, const int j, const float L, float *xf, float *yf, float *zf) |
static size_t | image_to_relgrid (const dt_bilateral_t *const b, const int i, const float L, float *xf, float *zf) |
dt_bilateral_t * | dt_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) |
static void | blur_line_z (float *buf, const int offset1, const int offset2, const int offset3, const int size1, const int size2, const int size3) |
static void | blur_line (float *buf, const int offset1, const int offset2, const int offset3, const int size1, const int size2, const int size3) |
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) |
#define DT_COMMON_BILATERAL_MAX_RES_R 50 |
#define DT_COMMON_BILATERAL_MAX_RES_S 3000 |
|
static |
Referenced by dt_bilateral_blur().
|
static |
Referenced by dt_bilateral_blur().
void dt_bilateral_blur | ( | const dt_bilateral_t * | b | ) |
References blur_line(), and blur_line_z().
Referenced by _retouch_blur(), detail_enhance(), process(), and process().
void dt_bilateral_free | ( | dt_bilateral_t * | b | ) |
References dt_free_align.
Referenced by _retouch_blur(), detail_enhance(), process(), and process().
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 | ||
) |
References CLAMPS, DT_COMMON_BILATERAL_MAX_RES_R, DT_COMMON_BILATERAL_MAX_RES_S, height, MAX, sigma_r, sigma_s, and width.
Referenced by dt_bilateral_init(), dt_bilateral_memory_use(), and dt_bilateral_singlebuffer_size().
dt_bilateral_t * dt_bilateral_init | ( | const int | width, |
const int | height, | ||
const float | sigma_s, | ||
const float | sigma_r | ||
) |
References darktable, dt_bilateral_grid_size(), dt_calloc_align_float(), DT_DEBUG_DEV, dt_print(), height, darktable_t::num_openmp_threads, sigma_r, sigma_s, and width.
Referenced by _retouch_blur(), detail_enhance(), process(), and process().
size_t dt_bilateral_memory_use | ( | const int | width, |
const int | height, | ||
const float | sigma_s, | ||
const float | sigma_r | ||
) |
References darktable, dt_bilateral_grid_size(), height, darktable_t::num_openmp_threads, sigma_r, sigma_s, and width.
Referenced by dt_bilateral_memory_use2(), and tiling_callback().
size_t dt_bilateral_memory_use2 | ( | const int | width, |
const int | height, | ||
const float | sigma_s, | ||
const float | sigma_r | ||
) |
References dt_bilateral_memory_use(), height, sigma_r, sigma_s, and width.
Referenced by tiling_callback().
size_t dt_bilateral_singlebuffer_size | ( | const int | width, |
const int | height, | ||
const float | sigma_s, | ||
const float | sigma_r | ||
) |
References darktable, dt_bilateral_grid_size(), height, darktable_t::num_openmp_threads, sigma_r, sigma_s, and width.
Referenced by dt_bilateral_singlebuffer_size2(), and tiling_callback().
size_t dt_bilateral_singlebuffer_size2 | ( | const int | width, |
const int | height, | ||
const float | sigma_s, | ||
const float | sigma_r | ||
) |
References dt_bilateral_singlebuffer_size(), height, sigma_r, sigma_s, and width.
Referenced by tiling_callback().
void dt_bilateral_slice | ( | const dt_bilateral_t *const | b, |
const float *const | in, | ||
float * | out, | ||
const float | detail | ||
) |
References height, image_to_grid(), and width.
Referenced by _retouch_blur(), process(), and process().
void dt_bilateral_slice_to_output | ( | const dt_bilateral_t *const | b, |
const float *const | in, | ||
float * | out, | ||
const float | detail | ||
) |
References height, image_to_grid(), MAX, and width.
Referenced by detail_enhance(), and process().
void dt_bilateral_splat | ( | const dt_bilateral_t * | b, |
const float *const | in | ||
) |
References CLAMPS, darktable, image_to_relgrid(), MIN, darktable_t::num_openmp_threads, sigma_s, and size_y.
Referenced by _retouch_blur(), detail_enhance(), process(), and process().
|
static |
Referenced by dt_bilateral_slice(), and dt_bilateral_slice_to_output().
|
static |
Referenced by dt_bilateral_splat().