![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/gaussian.h"#include "common/opencl.h"#include "iop/highlights/blur.h"#include "iop/highlights/common.h"#include <string.h>
Include dependency graph for knee.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Functions | |
| static void | _knee_blur (const float *const restrict in, float *const restrict out, const int width, const int height, const float sigma) |
| void | _hl_knee_estimate (const float *const restrict input, const size_t width, const size_t height, const uint32_t filters, const dt_iop_roi_t *const roi_in, const uint8_t(*const xtrans)[6], const dt_aligned_pixel_t clipval_raw, _hl_knee_curve_t curves[3], const dt_dev_pixelpipe_t *pipe) |
| void | _hl_knee_apply_interpolated (float *const restrict interpolated, const size_t npix, const dt_aligned_pixel_t clipvaln, const dt_aligned_pixel_t wb4, const _hl_knee_curve_t curves[3]) |
| void | _hl_knee_apply_cfa (const float *const restrict input, float *const restrict input_corr, const size_t width, const size_t height, const uint32_t filters, const dt_iop_roi_t *const roi_in, const uint8_t(*const xtrans)[6], const dt_aligned_pixel_t clipval_raw, const _hl_knee_curve_t curves[3]) |
| cl_int | _hl_knee_estimate_cl (const int devid, void *gd_void, cl_mem dev_in, const size_t width, const size_t height, const uint32_t filters, const dt_iop_roi_t *const roi_in, cl_mem dev_xtrans, const int is_xtrans, const dt_aligned_pixel_t clipval_raw, _hl_knee_curve_t curves[3], const dt_dev_pixelpipe_t *pipe) |
| cl_int | _hl_knee_apply_cfa_cl (const int devid, void *gd_void, cl_mem dev_in, cl_mem dev_out, const size_t width, const size_t height, const uint32_t filters, const dt_iop_roi_t *const roi_in, cl_mem dev_xtrans, const int is_xtrans, const dt_aligned_pixel_t clipval_raw, const _hl_knee_curve_t curves[3]) |
| void _hl_knee_apply_cfa | ( | const float *const restrict | input, |
| float *const restrict | input_corr, | ||
| const size_t | width, | ||
| const size_t | height, | ||
| const uint32_t | filters, | ||
| const dt_iop_roi_t *const | roi_in, | ||
| const uint8_t(*) | xtrans[6], | ||
| const dt_aligned_pixel_t | clipval_raw, | ||
| const _hl_knee_curve_t | curves[3] | ||
| ) |
Definition at line 553 of file knee.c.
References _knee_lift_of(), DT_HL_KNEE_DET, DT_HL_KNEE_LO, FC(), FCxtrans(), height, HL_PFOR, i, value, and width.
Referenced by _harmonic_reconstruct_host(), _knee_cl_selftest(), process_harmonic_bayer(), and process_harmonic_xtrans().
| cl_int _hl_knee_apply_cfa_cl | ( | const int | devid, |
| void * | gd_void, | ||
| cl_mem | dev_in, | ||
| cl_mem | dev_out, | ||
| const size_t | width, | ||
| const size_t | height, | ||
| const uint32_t | filters, | ||
| const dt_iop_roi_t *const | roi_in, | ||
| cl_mem | dev_xtrans, | ||
| const int | is_xtrans, | ||
| const dt_aligned_pixel_t | clipval_raw, | ||
| const _hl_knee_curve_t | curves[3] | ||
| ) |
Definition at line 917 of file knee.c.
References _sp_cl_upload(), DT_HL_KNEE_BINS, DT_HL_KNEE_DET, DT_HL_KNEE_LO, DT_OPENCL_DEFAULT_ERROR, dt_opencl_enqueue_kernel_2d(), dt_opencl_release_mem_object(), dt_opencl_set_kernel_arg(), _hl_knee_curve_t::engaged, height, kernel(), dt_iop_highlights_global_data_t::kernel_hl_knee_apply, ROUNDUPDHT, ROUNDUPDWD, width, dt_iop_roi_t::x, and dt_iop_roi_t::y.
Referenced by _harmonic_reconstruct_cl(), and _knee_cl_selftest().
| void _hl_knee_apply_interpolated | ( | float *const restrict | interpolated, |
| const size_t | npix, | ||
| const dt_aligned_pixel_t | clipvaln, | ||
| const dt_aligned_pixel_t | wb4, | ||
| const _hl_knee_curve_t | curves[3] | ||
| ) |
Definition at line 515 of file knee.c.
References _knee_lift_of(), DT_HL_KNEE_DET, DT_HL_KNEE_LO, and HL_PFOR.
Referenced by _harmonic_reconstruct_host(), process_harmonic_bayer(), and process_harmonic_xtrans().
| void _hl_knee_estimate | ( | const float *const restrict | input, |
| const size_t | width, | ||
| const size_t | height, | ||
| const uint32_t | filters, | ||
| const dt_iop_roi_t *const | roi_in, | ||
| const uint8_t(*) | xtrans[6], | ||
| const dt_aligned_pixel_t | clipval_raw, | ||
| _hl_knee_curve_t | curves[3], | ||
| const dt_dev_pixelpipe_t * | pipe | ||
| ) |
Definition at line 105 of file knee.c.
References _knee_blur4(), _knee_median(), _knee_p2(), cleanup(), DT_HL_KNEE_BINS, DT_HL_KNEE_DET, DT_HL_KNEE_ENGAGE, DT_HL_KNEE_FMIN, DT_HL_KNEE_LO, DT_HL_KNEE_MINVOTES, DT_HL_KNEE_NSIGMA, DT_HL_KNEE_NSIGMAS, DT_HL_KNEE_R2MIN, dt_pixelpipe_cache_alloc_align_float, dt_pixelpipe_cache_free_align, _hl_knee_curve_t::engaged, FC(), FCxtrans(), height, HL_PFOR, i, IS_NULL_PTR, k, _hl_knee_curve_t::lift, MIN, row, sigma, weight(), and width.
Referenced by _knee_cl_selftest(), process_harmonic_bayer(), and process_harmonic_xtrans().
| cl_int _hl_knee_estimate_cl | ( | const int | devid, |
| void * | gd_void, | ||
| cl_mem | dev_in, | ||
| const size_t | width, | ||
| const size_t | height, | ||
| const uint32_t | filters, | ||
| const dt_iop_roi_t *const | roi_in, | ||
| cl_mem | dev_xtrans, | ||
| const int | is_xtrans, | ||
| const dt_aligned_pixel_t | clipval_raw, | ||
| _hl_knee_curve_t | curves[3], | ||
| const dt_dev_pixelpipe_t * | pipe | ||
| ) |
Definition at line 584 of file knee.c.
References _knee_median(), _region_blur_handle(), cleanup(), dt_gaussian_blur_cl(), dt_gaussian_free_cl(), DT_HL_KNEE_BINS, DT_HL_KNEE_DET, DT_HL_KNEE_ENGAGE, DT_HL_KNEE_FMIN, DT_HL_KNEE_LO, DT_HL_KNEE_MINVOTES, DT_HL_KNEE_NSIGMA, DT_HL_KNEE_NSIGMAS, DT_HL_KNEE_R2MIN, dt_opencl_alloc_device(), dt_opencl_alloc_device_buffer(), DT_OPENCL_DEFAULT_ERROR, dt_opencl_enqueue_kernel_2d(), dt_opencl_read_buffer_from_device(), dt_opencl_release_mem_object(), dt_opencl_set_kernel_arg(), dt_opencl_write_buffer_to_device(), dt_pixelpipe_cache_alloc_align_float, dt_pixelpipe_cache_free_align, _hl_knee_curve_t::engaged, height, i, k, kernel(), dt_iop_highlights_global_data_t::kernel_hl_knee_bin, dt_iop_highlights_global_data_t::kernel_hl_knee_jmom, dt_iop_highlights_global_data_t::kernel_hl_knee_joint_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pair_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pmom, _hl_knee_curve_t::lift, ROUNDUPDHT, ROUNDUPDWD, sigma, width, dt_iop_roi_t::x, and dt_iop_roi_t::y.
Referenced by _knee_cl_selftest(), and process_harmonic_cl().
|
inlinestatic |
Definition at line 31 of file knee.h.
References _hl_gauss_get(), dt_gaussian_blur(), gaussian(), height, out, sigma, and width.
Referenced by _joint_core(), and _joint_core_stage_cl_selftest().