23#ifdef NO_WARN_X86_INTRINSICS
26#define NO_WARN_X86_INTRINSICS 1
28#undef NO_WARN_X86_INTRINSICS
72static inline int min_i(
int a,
int b)
79static inline int max_i(
int a,
int b)
85 float sqrt_eps,
float guide_weight,
float min,
float max);
89typedef struct dt_guided_filter_cl_global_t
91 int kernel_guided_filter_split_rgb;
92 int kernel_guided_filter_box_mean_x;
93 int kernel_guided_filter_box_mean_y;
94 int kernel_guided_filter_guided_filter_covariances;
95 int kernel_guided_filter_guided_filter_variances;
96 int kernel_guided_filter_update_covariance;
97 int kernel_guided_filter_solve;
98 int kernel_guided_filter_generate_result;
99} dt_guided_filter_cl_global_t;
102dt_guided_filter_cl_global_t *dt_guided_filter_init_cl_global();
104void dt_guided_filter_free_cl_global(dt_guided_filter_cl_global_t *g);
106void guided_filter_cl(
int devid, cl_mem guide, cl_mem in, cl_mem out,
int width,
int height,
int ch,
int w,
107 float sqrt_eps,
float guide_weight,
float min,
float max);
int width
Definition bilateral.h:1
int height
Definition bilateral.h:1
#define dt_free_align(A)
Definition darktable.h:334
static gray_image new_gray_image(int width, int height)
Definition guided_filter.h:50
static void copy_gray_image(gray_image img1, gray_image img2)
Definition guided_filter.h:65
static int max_i(int a, int b)
Definition guided_filter.h:79
static int min_i(int a, int b)
Definition guided_filter.h:72
void guided_filter(const float *guide, const float *in, float *out, int width, int height, int ch, int w, float sqrt_eps, float guide_weight, float min, float max)
Definition guided_filter.c:309
static void free_gray_image(gray_image *img_p)
Definition guided_filter.h:57
Definition guided_filter.h:42
float * data
Definition guided_filter.h:43
int width
Definition guided_filter.h:44
int height
Definition guided_filter.h:44
#define dt_alloc_align(B)
Definition tests/cache.c:22