![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "widgets/bauhaus.h"#include "system/macros.h"#include "system/openmp.h"#include "system/target_clones.h"#include "system/mem_alloc.h"#include "system/simd.h"#include "common/logging.h"#include "common/module_versioning.h"#include <json-glib/json-glib.h>#include "pixel/eaw.h"#include "common/imagebuf.h"#include "pixel/nlmeans_core.h"#include "common/noiseprofiles.h"#include "common/opencl.h"#include "develop/imageop.h"#include "develop/imageop_math.h"#include "develop/imageop_gui.h"#include "caches/pixelpipe_cache.h"#include "develop/tiling.h"#include "widgets/draw.h"#include "gui/presets.h"#include "iop/iop_api.h"#include <gtk/gtk.h>#include <math.h>#include <stdlib.h>#include "widgets/label.h"#include "widgets/notebook.h"#include "widgets/scroll_wrap.h"#include "gui/screen_metrics.h"
Include dependency graph for denoiseprofile.c:Go to the source code of this file.
Data Structures | |
| struct | dt_iop_denoiseprofile_params_v1_t |
| struct | dt_iop_denoiseprofile_params_v4_t |
| struct | dt_iop_denoiseprofile_params_v5_t |
| struct | dt_iop_denoiseprofile_params_v6_t |
| struct | dt_iop_denoiseprofile_params_v7_t |
| struct | dt_iop_denoiseprofile_params_v8_t |
| struct | dt_iop_denoiseprofile_params_v9_t |
| struct | dt_iop_denoiseprofile_params_v10_t |
| struct | dt_iop_denoiseprofile_params_t |
| struct | dt_iop_denoiseprofile_gui_data_t |
| struct | dt_iop_denoiseprofile_data_t |
| struct | dt_iop_denoiseprofile_global_data_t |
| union | floatint_t |
Macros | |
| #define | USE_NEW_IMPL_CL 0 |
| #define | REDUCESIZE 64 |
| #define | NUM_BUCKETS 4 |
| #define | DT_IOP_DENOISE_PROFILE_INSET DT_PIXEL_APPLY_DPI(5) |
| #define | DT_IOP_DENOISE_PROFILE_RES 64 |
| #define | DT_IOP_DENOISE_PROFILE_V8_BANDS 5 |
| #define | DT_IOP_DENOISE_PROFILE_BANDS 7 |
| #define | DT_IOP_DENOISE_PROFILE_P_FULCRUM 0.05f |
| #define | DT_DENOISE_PROFILE_NONE_V9 4 |
| #define | debug_dump_PFM(p, n, b, w, h, s) |
| #define | MAX_MAX_SCALE DT_IOP_DENOISE_PROFILE_BANDS |
Enumerations | |
| enum | dt_iop_denoiseprofile_mode_t { MODE_NLMEANS = 0 , MODE_WAVELETS = 1 , MODE_VARIANCE = 2 , MODE_NLMEANS_AUTO = 3 , MODE_WAVELETS_AUTO = 4 } |
| enum | dt_iop_denoiseprofile_wavelet_mode_t { MODE_RGB = 0 , MODE_Y0U0V0 = 1 } |
| enum | dt_iop_denoiseprofile_channel_t { DT_DENOISE_PROFILE_ALL = 0 , DT_DENOISE_PROFILE_R = 1 , DT_DENOISE_PROFILE_G = 2 , DT_DENOISE_PROFILE_B = 3 , DT_DENOISE_PROFILE_Y0 = 4 , DT_DENOISE_PROFILE_U0V0 = 5 , DT_DENOISE_PROFILE_NONE = 6 } |
Definition at line 417 of file denoiseprofile.c.
| #define DT_DENOISE_PROFILE_NONE_V9 4 |
Definition at line 133 of file denoiseprofile.c.
| #define DT_IOP_DENOISE_PROFILE_BANDS 7 |
Definition at line 109 of file denoiseprofile.c.
| #define DT_IOP_DENOISE_PROFILE_INSET DT_PIXEL_APPLY_DPI(5) |
Definition at line 106 of file denoiseprofile.c.
| #define DT_IOP_DENOISE_PROFILE_P_FULCRUM 0.05f |
Definition at line 118 of file denoiseprofile.c.
| #define DT_IOP_DENOISE_PROFILE_RES 64 |
Definition at line 107 of file denoiseprofile.c.
| #define DT_IOP_DENOISE_PROFILE_V8_BANDS 5 |
Definition at line 108 of file denoiseprofile.c.
| #define MAX_MAX_SCALE DT_IOP_DENOISE_PROFILE_BANDS |
| #define NUM_BUCKETS 4 |
Definition at line 104 of file denoiseprofile.c.
| #define REDUCESIZE 64 |
Definition at line 101 of file denoiseprofile.c.
| #define USE_NEW_IMPL_CL 0 |
Definition at line 96 of file denoiseprofile.c.
| typedef struct dt_iop_denoiseprofile_data_t dt_iop_denoiseprofile_data_t |
| typedef struct dt_iop_denoiseprofile_gui_data_t dt_iop_denoiseprofile_gui_data_t |
| typedef enum dt_iop_denoiseprofile_mode_t dt_iop_denoiseprofile_mode_t |
| typedef struct dt_iop_denoiseprofile_params_t dt_iop_denoiseprofile_params_t |
| typedef union floatint_t floatint_t |
| Enumerator | |
|---|---|
| DT_DENOISE_PROFILE_ALL | |
| DT_DENOISE_PROFILE_R | |
| DT_DENOISE_PROFILE_G | |
| DT_DENOISE_PROFILE_B | |
| DT_DENOISE_PROFILE_Y0 | |
| DT_DENOISE_PROFILE_U0V0 | |
| DT_DENOISE_PROFILE_NONE | |
Definition at line 134 of file denoiseprofile.c.
| Enumerator | |
|---|---|
| MODE_NLMEANS | |
| MODE_WAVELETS | |
| MODE_VARIANCE | |
| MODE_NLMEANS_AUTO | |
| MODE_WAVELETS_AUTO | |
Definition at line 120 of file denoiseprofile.c.
| Enumerator | |
|---|---|
| MODE_RGB | |
| MODE_Y0U0V0 | |
Definition at line 128 of file denoiseprofile.c.
|
inlinestatic |
Definition at line 1133 of file denoiseprofile.c.
|
static |
this will be called to init new defaults if a new image is loaded from film strip mode.
Definition at line 2705 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_iop_module_t::dev, dt_noiseprofile_free(), dt_noiseprofile_generic, dt_noiseprofile_get_matching(), dt_noiseprofile_interpolate(), dt_develop_t::image_storage, and dt_noiseprofile_t::iso.
Referenced by reload_defaults().
|
inlinestatic |
Definition at line 873 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, for_each_channel, and x.
Referenced by process_wavelets().
|
inlinestatic |
Definition at line 1003 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, delta, for_each_channel, MAX, p, and x.
Referenced by process_wavelets().
|
inlinestatic |
Definition at line 1057 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, delta, for_each_channel, k, MAX, p, rgb, and x.
Referenced by process_wavelets().
|
static |
Definition at line 1788 of file denoiseprofile.c.
Referenced by process_nlmeans_cl().
| void cleanup_global | ( | dt_iop_module_so_t * | module | ) |
Definition at line 2782 of file denoiseprofile.c.
References dt_iop_module_so_t::data, dt_free, dt_opencl_free_kernel(), dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_accu, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_decompose, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_dist, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_horiz, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_init, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_first, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_second, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_synthesize, and dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_vert.
| void cleanup_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 2917 of file denoiseprofile.c.
References ch, d, DT_DENOISE_PROFILE_NONE, dt_draw_curve_destroy(), dt_free_align, IS_NULL_PTR, and piece.
| void commit_params | ( | struct dt_iop_module_t * | self, |
| dt_iop_params_t * | params, | ||
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
commit is the synch point between core and gui, so it copies params to pipe data.
Definition at line 2832 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_noiseprofile_t::b, ch, d, DT_DENOISE_PROFILE_NONE, dt_draw_curve_calc_values(), dt_draw_curve_set_point(), DT_IOP_DENOISE_PROFILE_BANDS, dt_iop_denoiseprofile_get_auto_profile(), i, infer_bias_from_profile(), infer_radius_from_profile(), infer_scattering_from_profile(), infer_shadows_from_profile(), k, MODE_NLMEANS_AUTO, MODE_WAVELETS_AUTO, p, params, piece, and TRUE.
|
static |
Definition at line 1098 of file denoiseprofile.c.
References d, for_each_channel, i, and piece.
Referenced by nlmeans_precondition_cl(), process_wavelets(), and process_wavelets_cl().
| int default_colorspace | ( | dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 785 of file denoiseprofile.c.
References IOP_CS_RGB.
| int default_group | ( | ) |
Definition at line 775 of file denoiseprofile.c.
References IOP_GROUP_REPAIR.
|
static |
Definition at line 3515 of file denoiseprofile.c.
References ch, d, dt_iop_module_t::default_params, dt_iop_module_t::dev, dt_dev_add_history_item, dt_draw_curve_calc_value(), DT_IOP_DENOISE_PROFILE_BANDS, DT_IOP_DENOISE_PROFILE_INSET, dt_iop_gui_data(), FALSE, dt_iop_module_t::gui, height, k, p, dt_iop_module_t::params, TRUE, dt_iop_module_gui_t::widget, and width.
Referenced by gui_init().
|
static |
Definition at line 3550 of file denoiseprofile.c.
References dt_iop_gui_data(), FALSE, and TRUE.
Referenced by gui_init().
|
static |
Definition at line 3274 of file denoiseprofile.c.
References ch, dt_bauhaus_get_global(), dt_cairo_image_surface_create(), DT_DENOISE_PROFILE_ALL, DT_DENOISE_PROFILE_B, DT_DENOISE_PROFILE_G, DT_DENOISE_PROFILE_NONE, DT_DENOISE_PROFILE_R, DT_DENOISE_PROFILE_U0V0, DT_DENOISE_PROFILE_Y0, dt_draw_curve_calc_values(), dt_draw_curve_set_point(), dt_draw_grid(), DT_IOP_DENOISE_PROFILE_BANDS, DT_IOP_DENOISE_PROFILE_INSET, DT_IOP_DENOISE_PROFILE_RES, dt_iop_denoiseprofile_get_params(), dt_iop_gui_data(), DT_PIXEL_APPLY_DPI, f, height, i, k, M_PI, MODE_RGB, p, dt_iop_module_t::params, TRUE, and width.
Referenced by gui_init().
|
static |
Definition at line 3240 of file denoiseprofile.c.
References dt_free, dt_gui_freeze_begin, dt_gui_freeze_end, dt_gui_widgets_suppressed(), dt_iop_gui_data(), and FALSE.
Referenced by gui_init().
|
static |
Definition at line 3562 of file denoiseprofile.c.
References dt_iop_gui_data(), and TRUE.
Referenced by gui_init().
|
static |
Definition at line 3487 of file denoiseprofile.c.
References dt_iop_module_t::dev, dt_dev_add_history_item, DT_IOP_DENOISE_PROFILE_INSET, dt_iop_denoiseprofile_get_params(), dt_iop_gui_data(), height, p, dt_iop_module_t::params, TRUE, and width.
Referenced by gui_init().
|
static |
Definition at line 3571 of file denoiseprofile.c.
References dt_gui_get_scroll_unit_deltas(), DT_IOP_DENOISE_PROFILE_BANDS, dt_iop_gui_data(), and TRUE.
Referenced by gui_init().
|
static |
Definition at line 3586 of file denoiseprofile.c.
References DT_DENOISE_PROFILE_Y0, dt_gui_widgets_suppressed(), dt_iop_gui_data(), dt_iop_module_t::gui, MODE_Y0U0V0, p, dt_iop_module_t::params, and dt_iop_module_gui_t::widget.
Referenced by gui_init().
| const char ** description | ( | struct dt_iop_module_t * | self | ) |
Definition at line 765 of file denoiseprofile.c.
References dt_iop_set_description().
|
static |
Definition at line 2803 of file denoiseprofile.c.
References dt_iop_module_t::dev, dt_noiseprofile_free(), dt_noiseprofile_generic, dt_noiseprofile_get_matching(), dt_noiseprofile_interpolate(), dt_image_t::exif_iso, dt_develop_t::image_storage, and dt_noiseprofile_t::iso.
Referenced by commit_params(), gui_changed(), gui_update(), and legacy_params().
|
static |
Definition at line 3230 of file denoiseprofile.c.
References ch, DT_IOP_DENOISE_PROFILE_BANDS, f, k, and p.
Referenced by denoiseprofile_draw(), and denoiseprofile_motion_notify().
| int flags | ( | ) |
Definition at line 780 of file denoiseprofile.c.
References IOP_FLAGS_ALLOW_TILING, and IOP_FLAGS_SUPPORTS_BLENDING.
| void gui_changed | ( | dt_iop_module_t * | self, |
| GtkWidget * | w, | ||
| void * | previous | ||
| ) |
Definition at line 2996 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_bauhaus_slider_set(), DT_DENOISE_PROFILE_ALL, DT_DENOISE_PROFILE_Y0, dt_iop_denoiseprofile_get_auto_profile(), dt_iop_gui_data(), FALSE, g, infer_bias_from_profile(), infer_radius_from_profile(), infer_scattering_from_profile(), infer_shadows_from_profile(), MODE_NLMEANS_AUTO, MODE_RGB, MODE_WAVELETS_AUTO, MODE_Y0U0V0, p, dt_iop_module_t::params, and TRUE.
| void gui_cleanup | ( | dt_iop_module_t * | self | ) |
Definition at line 3801 of file denoiseprofile.c.
References dt_draw_curve_destroy(), dt_iop_gui_data(), dt_noiseprofile_free(), g, and IOP_GUI_FREE.
| void gui_init | ( | dt_iop_module_t * | self | ) |
Definition at line 3599 of file denoiseprofile.c.
References CATMULL_ROM, ch, dt_iop_module_t::default_params, denoiseprofile_button_press(), denoiseprofile_button_release(), denoiseprofile_draw(), denoiseprofile_draw_variance(), denoiseprofile_leave_notify(), denoiseprofile_motion_notify(), denoiseprofile_scrolled(), denoiseprofile_tab_switch(), dt_bauhaus_combobox_add(), dt_bauhaus_combobox_from_params(), dt_bauhaus_combobox_new(), dt_bauhaus_get_global(), dt_bauhaus_slider_from_params(), dt_bauhaus_slider_set_digits(), dt_bauhaus_slider_set_soft_max(), dt_bauhaus_slider_set_soft_range(), dt_bauhaus_toggle_from_params(), dt_bauhaus_widget_set_label(), dt_conf_get_bool(), dt_draw_curve_add_point(), dt_draw_curve_new(), DT_GUI_BOX_SPACING, DT_GUI_MODULE, DT_IOP_DENOISE_PROFILE_BANDS, dt_ui_label_new(), dt_ui_notebook_page(), dt_ui_resizable_drawing_area(), dt_widget_scroll_mask(), FALSE, g, dt_iop_module_t::gui, IOP_GUI_ALLOC, k, mode_callback(), p, profile_callback(), TRUE, void(), and dt_iop_module_gui_t::widget.
| void gui_reset | ( | dt_iop_module_t * | self | ) |
Definition at line 3212 of file denoiseprofile.c.
References DT_DENOISE_PROFILE_ALL, DT_DENOISE_PROFILE_Y0, dt_iop_gui_data(), g, MODE_Y0U0V0, p, and dt_iop_module_t::params.
| void gui_update | ( | dt_iop_module_t * | self | ) |
Definition at line 3057 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_noiseprofile_t::b, d, dt_iop_module_t::default_params, dt_iop_module_t::dev, dt_bauhaus_combobox_add(), dt_bauhaus_combobox_clear(), dt_bauhaus_combobox_length(), dt_bauhaus_combobox_set(), dt_bauhaus_slider_set(), dt_bauhaus_slider_set_default(), DT_DENOISE_PROFILE_ALL, DT_DENOISE_PROFILE_B, DT_DENOISE_PROFILE_Y0, dt_iop_denoiseprofile_get_auto_profile(), dt_iop_gui_data(), dt_noiseprofile_free(), dt_noiseprofile_generic, dt_noiseprofile_get_matching(), dt_noiseprofile_interpolate(), dt_image_t::exif_iso, FALSE, g, i, dt_develop_t::image_storage, infer_bias_from_profile(), infer_radius_from_profile(), infer_scattering_from_profile(), infer_shadows_from_profile(), dt_noiseprofile_t::iso, MODE_NLMEANS, MODE_NLMEANS_AUTO, MODE_RGB, MODE_VARIANCE, MODE_WAVELETS, MODE_WAVELETS_AUTO, MODE_Y0U0V0, dt_noiseprofile_t::name, name(), p, and dt_iop_module_t::params.
|
inlinestatic |
Definition at line 2680 of file denoiseprofile.c.
References MAX.
Referenced by commit_params(), gui_changed(), gui_update(), and reload_defaults().
|
inlinestatic |
Definition at line 2665 of file denoiseprofile.c.
References MIN.
Referenced by commit_params(), gui_changed(), gui_update(), and reload_defaults().
|
inlinestatic |
Definition at line 2670 of file denoiseprofile.c.
References MIN.
Referenced by commit_params(), gui_changed(), gui_update(), and reload_defaults().
|
inlinestatic |
Definition at line 2675 of file denoiseprofile.c.
Referenced by commit_params(), gui_changed(), gui_update(), and reload_defaults().
| void init | ( | dt_iop_module_t * | module | ) |
Definition at line 2685 of file denoiseprofile.c.
References ch, d, DT_DENOISE_PROFILE_NONE, dt_iop_default_init(), DT_IOP_DENOISE_PROFILE_BANDS, k, and dt_iop_denoiseprofile_params_t::x.
| void init_global | ( | dt_iop_module_so_t * | module | ) |
Definition at line 2757 of file denoiseprofile.c.
References dt_opencl_create_kernel(), dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_accu, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform_Y0U0V0, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_decompose, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_dist, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_horiz, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_init, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_Y0U0V0, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_first, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_second, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_synthesize, and dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_vert.
| void init_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 2896 of file denoiseprofile.c.
References CATMULL_ROM, ch, d, dt_iop_module_t::default_params, dt_calloc_align(), DT_DENOISE_PROFILE_NONE, dt_draw_curve_add_point(), dt_draw_curve_new(), DT_IOP_DENOISE_PROFILE_BANDS, IS_NULL_PTR, k, piece, dt_iop_denoiseprofile_params_t::x, and dt_iop_denoiseprofile_params_t::y.
| void init_presets | ( | dt_iop_module_so_t * | self | ) |
Definition at line 722 of file denoiseprofile.c.
References DT_DENOISE_PROFILE_NONE, DT_DENOISE_PROFILE_Y0, dt_gui_presets_add_generic(), DT_IOP_DENOISE_PROFILE_BANDS, MODE_WAVELETS, MODE_Y0U0V0, dt_iop_module_so_t::op, p, and TRUE.
| int legacy_params | ( | dt_iop_module_t * | self, |
| const void *const | old_params, | ||
| const int | old_version, | ||
| void * | new_params, | ||
| const int | new_version | ||
| ) |
Definition at line 420 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_iop_denoiseprofile_params_v4_t::a, dt_iop_denoiseprofile_params_v5_t::a, dt_iop_denoiseprofile_params_v6_t::a, dt_iop_denoiseprofile_params_v7_t::a, dt_iop_denoiseprofile_params_v8_t::a, dt_iop_denoiseprofile_params_t::a, dt_noiseprofile_t::b, dt_iop_denoiseprofile_params_v4_t::b, dt_iop_denoiseprofile_params_v5_t::b, dt_iop_denoiseprofile_params_v6_t::b, dt_iop_denoiseprofile_params_v7_t::b, dt_iop_denoiseprofile_params_v8_t::b, dt_iop_denoiseprofile_params_t::b, dt_iop_denoiseprofile_params_v8_t::bias, dt_iop_denoiseprofile_params_t::bias, dt_iop_denoiseprofile_params_v7_t::central_pixel_weight, dt_iop_denoiseprofile_params_v8_t::central_pixel_weight, dt_iop_denoiseprofile_params_t::central_pixel_weight, d, dt_iop_module_t::default_params, dt_iop_module_t::dev, DT_DENOISE_PROFILE_NONE, DT_DENOISE_PROFILE_NONE_V9, DT_IOP_DENOISE_PROFILE_BANDS, DT_IOP_DENOISE_PROFILE_V8_BANDS, dt_iop_denoiseprofile_get_auto_profile(), FALSE, dt_iop_denoiseprofile_params_v7_t::fix_anscombe_and_nlmeans_norm, dt_iop_denoiseprofile_params_v8_t::fix_anscombe_and_nlmeans_norm, dt_iop_denoiseprofile_params_t::fix_anscombe_and_nlmeans_norm, IS_NULL_PTR, k, legacy_params(), dt_iop_denoiseprofile_params_v4_t::mode, dt_iop_denoiseprofile_params_v5_t::mode, dt_iop_denoiseprofile_params_v6_t::mode, dt_iop_denoiseprofile_params_v7_t::mode, dt_iop_denoiseprofile_params_v8_t::mode, dt_iop_denoiseprofile_params_t::mode, MODE_NLMEANS, MODE_RGB, MODE_WAVELETS, MODE_WAVELETS_AUTO, MODE_Y0U0V0, n, dt_iop_denoiseprofile_params_v5_t::nbhood, dt_iop_denoiseprofile_params_v6_t::nbhood, dt_iop_denoiseprofile_params_v7_t::nbhood, dt_iop_denoiseprofile_params_v8_t::nbhood, dt_iop_denoiseprofile_params_t::nbhood, o, dt_iop_denoiseprofile_params_v8_t::overshooting, dt_iop_denoiseprofile_params_t::overshooting, dt_iop_denoiseprofile_params_v4_t::radius, dt_iop_denoiseprofile_params_v5_t::radius, dt_iop_denoiseprofile_params_v6_t::radius, dt_iop_denoiseprofile_params_v7_t::radius, dt_iop_denoiseprofile_params_v8_t::radius, dt_iop_denoiseprofile_params_t::radius, dt_iop_denoiseprofile_params_v6_t::scattering, dt_iop_denoiseprofile_params_v7_t::scattering, dt_iop_denoiseprofile_params_v8_t::scattering, dt_iop_denoiseprofile_params_t::scattering, dt_iop_denoiseprofile_params_v8_t::shadows, dt_iop_denoiseprofile_params_t::shadows, dt_iop_denoiseprofile_params_v4_t::strength, dt_iop_denoiseprofile_params_v5_t::strength, dt_iop_denoiseprofile_params_v6_t::strength, dt_iop_denoiseprofile_params_v7_t::strength, dt_iop_denoiseprofile_params_v8_t::strength, dt_iop_denoiseprofile_params_t::strength, TRUE, dt_iop_denoiseprofile_params_v8_t::use_new_vst, dt_iop_denoiseprofile_params_t::use_new_vst, dt_iop_denoiseprofile_params_t::wavelet_color_mode, dt_iop_denoiseprofile_params_v7_t::wb_adaptive_anscombe, dt_iop_denoiseprofile_params_v8_t::wb_adaptive_anscombe, dt_iop_denoiseprofile_params_t::wb_adaptive_anscombe, dt_iop_denoiseprofile_params_v4_t::x, dt_iop_denoiseprofile_params_v5_t::x, dt_iop_denoiseprofile_params_v6_t::x, dt_iop_denoiseprofile_params_v7_t::x, dt_iop_denoiseprofile_params_v8_t::x, dt_iop_denoiseprofile_params_t::x, dt_iop_denoiseprofile_params_v4_t::y, dt_iop_denoiseprofile_params_v5_t::y, dt_iop_denoiseprofile_params_v6_t::y, dt_iop_denoiseprofile_params_v7_t::y, dt_iop_denoiseprofile_params_v8_t::y, and dt_iop_denoiseprofile_params_t::y.
Referenced by legacy_params().
|
static |
Definition at line 2942 of file denoiseprofile.c.
References dt_iop_module_t::dev, dt_bauhaus_combobox_get(), dt_dev_add_history_item, dt_iop_gui_data(), FALSE, g, MODE_NLMEANS, MODE_NLMEANS_AUTO, MODE_RGB, MODE_VARIANCE, MODE_WAVELETS, MODE_WAVELETS_AUTO, MODE_Y0U0V0, p, dt_iop_module_t::params, and TRUE.
Referenced by gui_init().
| const char * name | ( | ) |
Definition at line 760 of file denoiseprofile.c.
Referenced by gui_update().
|
static |
Definition at line 1550 of file denoiseprofile.c.
References compute_wb_factors(), d, DT_IOP_DENOISE_PROFILE_P_FULCRUM, for_each_channel, i, MAX, p, and piece.
Referenced by process_nlmeans_cl().
|
inlinestatic |
Definition at line 852 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, d, and for_each_channel.
Referenced by process_wavelets().
|
inlinestatic |
Definition at line 925 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, for_each_channel, MAX, and p.
Referenced by process_wavelets().
|
inlinestatic |
Definition at line 1026 of file denoiseprofile.c.
References __OMP_PARALLEL_FOR__, for_each_channel, k, MAX, and p.
Referenced by process_wavelets().
| int process | ( | struct dt_iop_module_t * | self, |
| const dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece, | ||
| const void *const | ivoid, | ||
| void *const | ovoid | ||
| ) |
Definition at line 2649 of file denoiseprofile.c.
References d, eaw_dn_decompose(), eaw_synthesize(), MODE_NLMEANS, MODE_NLMEANS_AUTO, MODE_WAVELETS, MODE_WAVELETS_AUTO, ovoid, piece, pipe, and process_wavelets().
| int process_cl | ( | struct dt_iop_module_t * | self, |
| const dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece, | ||
| cl_mem | dev_in, | ||
| cl_mem | dev_out | ||
| ) |
Definition at line 2627 of file denoiseprofile.c.
References d, DT_DEBUG_OPENCL, dt_print(), FALSE, MODE_NLMEANS, MODE_NLMEANS_AUTO, MODE_WAVELETS, MODE_WAVELETS_AUTO, piece, pipe, process_nlmeans_cl(), and process_wavelets_cl().
|
static |
Definition at line 1800 of file denoiseprofile.c.
References bucket_next(), d, dt_dev_pixelpipe_t::devid, DT_DEBUG_OPENCL, dt_dev_pixelpipe_has_shutdown(), dt_opencl_alloc_device(), dt_opencl_alloc_device_buffer(), dt_opencl_enqueue_kernel_2d(), dt_opencl_enqueue_kernel_2d_with_local(), dt_opencl_finish(), dt_opencl_local_buffer_opt(), dt_opencl_release_mem_object(), dt_opencl_set_kernel_arg(), dt_print(), error(), FALSE, dt_iop_module_t::global_data, height, dt_iop_roi_t::height, i, IS_NULL_PTR, k, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_accu, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_dist, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_finish_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_horiz, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_init, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_vert, nlmeans_denoiseprofile_cl(), nlmeans_precondition_cl(), NUM_BUCKETS, p, P, params, piece, pipe, ROUNDUP, ROUNDUPDHT, ROUNDUPDWD, dt_iop_roi_t::scale, sign, dt_opencl_local_buffer_t::sizex, dt_opencl_local_buffer_t::sizey, state, TRUE, void(), width, dt_iop_roi_t::width, and dt_opencl_local_buffer_t::xoffset.
Referenced by process_cl().
|
static |
Definition at line 1289 of file denoiseprofile.c.
References __OMP_SIMD__, backtransform(), backtransform_v2(), backtransform_Y0U0V0(), compute_wb_factors(), d, debug_dump_PFM, DT_DEV_PIXELPIPE_DISPLAY_MASK, dt_dev_pixelpipe_has_shutdown(), dt_iop_alloc_image_buffers(), dt_iop_copy_image_roi(), DT_IOP_DENOISE_PROFILE_P_FULCRUM, dt_pixelpipe_cache_free_align, for_each_channel, height, dt_iop_roi_t::height, i, k, dt_dev_pixelpipe_t::mask_display, MAX, MAX_MAX_SCALE, MIN, MODE_RGB, out, ovoid, p, piece, pipe, precondition(), precondition_v2(), precondition_Y0U0V0(), dt_iop_roi_t::scale, set_up_conversion_matrices(), sigma, t, thrs, TRUE, width, and dt_iop_roi_t::width.
Referenced by process().
|
static |
Definition at line 2154 of file denoiseprofile.c.
References ch, compute_wb_factors(), d, dt_dev_pixelpipe_t::devid, DT_CACHELINE_BYTES, DT_DEBUG_OPENCL, DT_DENOISE_PROFILE_ALL, DT_DENOISE_PROFILE_B, DT_DENOISE_PROFILE_G, DT_DENOISE_PROFILE_R, DT_DENOISE_PROFILE_U0V0, DT_DENOISE_PROFILE_Y0, dt_free, DT_IOP_DENOISE_PROFILE_BANDS, DT_IOP_DENOISE_PROFILE_P_FULCRUM, dt_opencl_alloc_device(), dt_opencl_alloc_device_buffer(), dt_opencl_copy_host_to_device_constant(), dt_opencl_enqueue_copy_image(), dt_opencl_enqueue_kernel_2d(), dt_opencl_enqueue_kernel_2d_with_local(), dt_opencl_local_buffer_opt(), dt_opencl_read_buffer_from_device(), dt_opencl_release_mem_object(), dt_opencl_set_kernel_arg(), dt_pixelpipe_cache_alloc_align, dt_pixelpipe_cache_free_align, dt_print(), error(), FALSE, for_each_channel, dt_iop_module_t::global_data, height, dt_iop_roi_t::height, i, IS_NULL_PTR, k, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_backtransform_Y0U0V0, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_decompose, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_v2, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_precondition_Y0U0V0, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_first, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_reduce_second, dt_iop_denoiseprofile_global_data_t::kernel_denoiseprofile_synthesize, m, MAX, MIN, MODE_RGB, p, piece, pipe, REDUCESIZE, ROUNDUP, ROUNDUPDHT, ROUNDUPDWD, dt_iop_roi_t::scale, set_up_conversion_matrices(), sigma, dt_opencl_local_buffer_t::sizex, dt_opencl_local_buffer_t::sizey, t, thrs, TRUE, width, dt_iop_roi_t::width, and dt_opencl_local_buffer_t::xoffset.
Referenced by process_cl().
|
static |
Definition at line 2927 of file denoiseprofile.c.
References dt_noiseprofile_t::a, dt_noiseprofile_t::b, dt_iop_module_t::dev, dt_bauhaus_combobox_get(), dt_dev_add_history_item, dt_iop_gui_data(), g, i, k, p, dt_iop_module_t::params, and TRUE.
Referenced by gui_init().
| void reload_defaults | ( | dt_iop_module_t * | module | ) |
Definition at line 2734 of file denoiseprofile.c.
References _default_noise_profile(), dt_noiseprofile_t::a, dt_noiseprofile_t::b, d, infer_bias_from_profile(), infer_radius_from_profile(), infer_scattering_from_profile(), infer_shadows_from_profile(), k, and dt_iop_denoiseprofile_params_t::radius.
|
static |
Definition at line 1170 of file denoiseprofile.c.
Referenced by process_wavelets(), and process_wavelets_cl().
|
static |
Definition at line 1458 of file denoiseprofile.c.
|
static |
Definition at line 1668 of file denoiseprofile.c.
References for_each_channel, i, out, and sum_rec().
Referenced by sum_rec().
| void tiling_callback | ( | struct dt_iop_module_t * | self, |
| const struct dt_dev_pixelpipe_t * | pipe, | ||
| const struct dt_dev_pixelpipe_iop_t * | piece, | ||
| struct dt_develop_tiling_t * | tiling | ||
| ) |
Definition at line 796 of file denoiseprofile.c.
References d, DT_IOP_DENOISE_PROFILE_BANDS, MODE_NLMEANS, MODE_NLMEANS_AUTO, NUM_BUCKETS, P, piece, dt_iop_roi_t::scale, and t.
|
static |
Definition at line 1698 of file denoiseprofile.c.
References for_each_channel, i, out, and variance_rec().
Referenced by variance_rec().