31dt_rgb_norm(
const float4 in,
const int norm,
const int work_profile,
40 return max(in.x, max(in.y, in.z));
44 return (in.x + in.y + in.z) / 3.0f;
48 return in.x + in.y + in.z;
52 return native_powr(in.x * in.x + in.y * in.y + in.z * in.z, 0.5f);
60 return (in.x *
R + in.y * G + in.z *
B) / (
R + G +
B);
62 else return (in.x + in.y + in.z) / 3.0f;
static float dt_camera_rgb_luminance(const float4 rgb)
Definition color_conversion.h:152
static float get_rgb_matrix_luminance(const float4 rgb, constant const dt_colorspaces_iccprofile_info_cl_t *const profile_info, constant const float *const matrix, read_only image2d_t lut)
Definition color_conversion.h:116
#define B(y, x)
Definition colorspaces.c:149
static float dt_rgb_norm(const float4 in, const int norm, const int work_profile, constant dt_colorspaces_iccprofile_info_cl_t *profile_info, read_only image2d_t lut)
Definition data/kernels/rgb_norms.h:31
dt_iop_rgb_norms_t
Definition data/kernels/rgb_norms.h:20
@ DT_RGB_NORM_AVERAGE
Definition data/kernels/rgb_norms.h:24
@ DT_RGB_NORM_NORM
Definition data/kernels/rgb_norms.h:26
@ DT_RGB_NORM_NONE
Definition data/kernels/rgb_norms.h:21
@ DT_RGB_NORM_LUMINANCE
Definition data/kernels/rgb_norms.h:22
@ DT_RGB_NORM_SUM
Definition data/kernels/rgb_norms.h:25
@ DT_RGB_NORM_POWER
Definition data/kernels/rgb_norms.h:27
@ DT_RGB_NORM_MAX
Definition data/kernels/rgb_norms.h:23
Definition color_conversion.h:36