Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
noise_generator.h File Reference
+ Include dependency graph for src/iop/noise_generator.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef enum dt_noise_distribution_t dt_noise_distribution_t
 

Enumerations

enum  dt_noise_distribution_t {
  DT_NOISE_UNIFORM = 0 ,
  DT_NOISE_GAUSSIAN = 1 ,
  DT_NOISE_POISSONIAN = 2
}
 

Functions

static uint32_t splitmix32 (const uint64_t seed)
 
static uint32_t rol32 (const uint32_t x, const int k)
 
static float xoshiro128plus (uint32_t state[4])
 
 __OMP_DECLARE_SIMD__ (uniform(sigma) aligned(state:64)) static inline float uniform_noise(const float mu
 
 return (r *r - sigma *sigma)/4.f - 3.f/8.f
 
 __OMP_DECLARE_SIMD__ (uniform(distribution, param) aligned(state:64)) static inline float dt_noise_generator(const dt_noise_distribution_t distribution
 

Variables

const float sigma
 
const float uint32_t state [4]
 
const float const int flip
 
const float u2 = xoshiro128plus(state)
 
const float noise
 
return noise *sigma mu
 
const float r = noise * sigma + 2.0f * sqrtf(fmaxf(mu + 3.f / 8.f, 0.0f))
 
const float const float param
 

Typedef Documentation

◆ dt_noise_distribution_t

Enumeration Type Documentation

◆ dt_noise_distribution_t

Enumerator
DT_NOISE_UNIFORM 
DT_NOISE_GAUSSIAN 
DT_NOISE_POISSONIAN 

Definition at line 27 of file src/iop/noise_generator.h.

Function Documentation

◆ __OMP_DECLARE_SIMD__() [1/2]

__OMP_DECLARE_SIMD__ ( uniform(distribution, param) aligned(state:64)  ) const

◆ __OMP_DECLARE_SIMD__() [2/2]

__OMP_DECLARE_SIMD__ ( uniform(sigma) aligned(state:64)  ) const

◆ return()

return ( r *r - sigma sigma)

◆ rol32()

static uint32_t rol32 ( const uint32_t  x,
const int  k 
)
inlinestatic

Definition at line 47 of file src/iop/noise_generator.h.

References k, and x.

Referenced by xoshiro128plus().

◆ splitmix32()

static uint32_t splitmix32 ( const uint64_t  seed)
inlinestatic

Definition at line 36 of file src/iop/noise_generator.h.

◆ xoshiro128plus()

static float xoshiro128plus ( uint32_t  state[4])
inlinestatic

Definition at line 54 of file src/iop/noise_generator.h.

References rol32(), state, and t.

Variable Documentation

◆ flip

◆ mu

◆ noise

◆ param

◆ r

const float r = noise * sigma + 2.0f * sqrtf(fmaxf(mu + 3.f / 8.f, 0.0f))

Definition at line 104 of file src/iop/noise_generator.h.

Referenced by _act_folders_relocate(), _act_tag_rename(), _act_tags_remove(), _area_resized_callback(), _area_resized_callback(), _brush_reference(), _collect_empty_roll(), _collect_relocation(), _compose_where_ext(), _compute_effective_height(), _conv2d(), _conv2d_cat2(), _draw_samples(), _ellipse_draw_handles(), _ellipse_events_mouse_moved(), _filmic_agx_build_displaced(), _free_row(), _get_map_extent(), _group_get_mask(), _hm_show_merge_report_popup(), _init_image_pin(), _init_place_pin(), _ioporder_draw_rounded_rect(), _lib_snapshots_add_button_clicked_callback(), _lib_snapshots_delete_button_clicked_callback(), _map_homographies(), _mat3_identity(), _nn_arena_free(), _paint_RGB_slider_stop(), _picker_project_opponent_to_display_rgb(), _points_to_transform(), _polygon_crop_to_roi(), _region_alloc(), _region_free(), _rows_to_imgids(), _save_clut_callback(), _selected_rows(), _selected_tagids(), _start_new_shape(), _transform_rgba8_to_bgra8(), _update_RGB_colors(), _update_RGB_slider_stop(), _xy2matrix(), area_resized(), area_resized(), blur_vertical_16wide(), blur_vertical_16wide_Kahan(), blur_vertical_1wide(), blur_vertical_1wide_Kahan(), blur_vertical_4wide(), blur_vertical_4wide_Kahan(), build_tonecurve(), clampnan(), commit_params(), create_global_distortion_map(), create_lens_kernel(), define_patches(), dt_bauhaus_draw_quad(), dt_bauhaus_slider_set_stop(), dt_cache_arena_alloc(), dt_cache_arena_stats(), dt_cache_arena_trim(), dt_colorrings_fill_lut_local_field(), dt_colorrings_fill_lut_sparse_local_field(), dt_draw_cairo_to_gdk_pixbuf(), dt_drawlayer_io_load_flat_rgba(), dt_imageio_open_rawspeed(), dt_imageio_open_rawspeed_sraw(), dt_interpolation_compute_sample(), dt_iop_channelmixer_shared_paint_row_sliders(), dt_masks_dynbuf_harvest(), dt_mipmap_cache_get_filename(), dt_pixelpipe_get_pipe_name(), dtgtk_cairo_paint_altered(), dtgtk_cairo_paint_label(), dtgtk_cairo_paint_label_flower(), dtgtk_cairo_paint_label_sel(), dtgtk_cairo_paint_masks_difference(), dtgtk_cairo_paint_masks_drawn_and_parametric(), dtgtk_cairo_paint_masks_exclusion(), dtgtk_cairo_paint_masks_gradient(), dtgtk_cairo_paint_masks_intersection(), dtgtk_cairo_paint_masks_parametric(), dtgtk_cairo_paint_masks_union(), dtgtk_cairo_paint_modulegroup_basics(), dtgtk_cairo_paint_star(), dtgtk_cairo_paint_unaltered(), dtgtk_cairo_paint_unratestar(), dtgtk_cairo_paint_waveform_overlaid(), dtgtk_cairo_paint_waveform_scope(), get_collect(), gui_init(), init_column_sums(), interpolate_color_xtrans(), main(), mix_warps(), pair_min(), poisson_noise_simd(), polar_decomposition(), ptr_array_find_sorted(), ptr_array_insert_sorted(), QR_dec(), ransac(), read_curveset(), read_ppm_header(), rect_improve(), rgb2hsl(), ri_ini(), scrolled(), PermutohedralLattice< D, VD >::slice(), sycc420_to_rgb(), sycc422_to_rgb(), sycc444_to_rgb(), sycc_to_rgb(), thinplate_kernel(), thinplate_match(), tree_range_visible(), write_image(), Ych_to_Yrg(), Yrg_to_LMS(), and Yrg_to_Ych().

◆ sigma

◆ state

const float const int uint32_t state
Initial value:
{
return mu + 2.0f * (xoshiro128plus(state) - 0.5f) * sigma
const float uint32_t state[4]
const float sigma
return noise *sigma mu
static float xoshiro128plus(uint32_t state[4])

Definition at line 74 of file src/iop/noise_generator.h.

Referenced by _a_backward_cut_is_refused_not_followed(), _a_cut_closes_the_contour_with_a_chord(), _a_null_attr_mutex_is_recursive(), _a_shape_with_no_geometry_rasterises_empty(), _a_shape_with_no_rasteriser_is_an_error(), _a_shared_group_is_cloned_before_its_opacity_changes(), _a_snapshot_references_every_item_and_releases_them(), _advance_smudge_pickup_state(), _an_explicit_attribute_is_honoured(), _an_rwlock_writer_may_re_enter(), _an_unbuildable_outline_is_never_reported_as_built(), _apply_gui_button_pressed_state(), _apply_quadratic_dab_smoothing(), _apply_runtime_event(), _area_and_mask_always_write_their_out_parameters(), _blendop_masks_get_inverse_icon(), _blendop_masks_get_op_icon(), _blendop_masks_group_button_pressed(), _blendop_masks_group_ctx_menu(), _blendop_masks_group_operation_callback(), _borrowed_value_survives_being_replaced(), _brush_events_button_pressed(), _brush_events_button_released(), _build_drops_a_fold_that_straddles_the_seam(), _build_merges_overlapping_and_nested_ranges(), _build_normalizes_discovery_order(), _build_raw_segment_cubic_arclen_lut(), _build_rejects_garbage(), _build_runtime_schedule(), _button_draw(), _circle_events_button_pressed(), _color_picker_callback_button_press(), _compute_hud_brush_state(), _copy_members_preserves_order_and_reports_the_total(), _copy_members_refuses_anything_that_is_not_a_group(), _copy_toggled_callback(), _cow_touch_clones_an_item_a_snapshot_is_holding(), _cow_touch_ignores_a_marker_naming_a_different_item(), _cow_touch_leaves_an_exclusively_owned_item_alone(), _cow_touch_repoints_the_pipe_marker_and_balances_every_reference(), _cpu_only_node_needs_its_input_on_host(), _darkroom_locked_main_valid_for_zoom(), _darkroom_prepare_image_surface(), _darkroom_reset_expose_state(), _dev_module_update_multishow(), _dispatch_selected_shortcut(), _dispatch_selected_shortcut_idle(), _draw_brush_hud(), _drawlayer_modal_wait_tick(), _dt_dev_write_history_job_run(), _each_own_input_reason_raises_upstream(), _each_own_output_reason_raises_own(), _ellipse_events_button_pressed(), _emit_dab(), _emit_first_sample_if_needed(), _enforce_dab_center_spacing(), _ensure_pending_dabs(), _ensure_raw_inputs(), _event_cursor_draw(), _every_displaced_value_stays_readable(), _find_holder_names_the_group_that_references_a_shape(), _flush_pending_initial_if_needed(), _focus_toggle_callback(), _folder_survey_load_locked(), _folder_survey_save_locked(), _form_info_describes_a_shape(), _form_info_leaves_out_untouched_on_failure(), _from_status_maps_zero_to_ok_and_everything_else_to_error(), _get_bounded_inside(), _get_combobox_max_width(), _get_member_reads_a_row_by_identity(), _gpu_node_propagates_an_inherited_requirement(), _gpu_node_requires_nothing_on_its_own(), _gradient_events_button_pressed(), _gradient_get_mask(), _gradient_get_mask_roi(), _gradient_slider_draw(), _gradient_slider_get_preferred_height(), _gradient_slider_get_preferred_width(), _group_get_mask_roi(), _history_end_is_clamped_to_the_list_at_snapshot_time(), _history_write_state_release(), _history_write_state_take(), _icon_draw(), _inverse_toggles_and_leaves_the_operator_alone(), _margins_retrieve(), _menu_append_operations(), _null_upstream_pointer_is_allowed(), _paint_build_dab_cb(), _paint_compact_raw_input_queue(), _paint_input_starts_new_stroke(), _paint_process_one_raw_input(), _paint_reset_path_runtime_state(), _perform_runtime_commit_sequence(), _polygon_events_button_pressed(), _polygon_get_mask(), _polygon_get_mask_roi(), _polygon_node_state(), _queue_action_from_shortcut(), _record_plain_return(), _region_composite(), _release_runtime_source(), _rename_module_resize(), _render_preview_surface(), _resizable_area_free(), _resizable_area_get_size(), _resizable_area_resize(), _resizable_scroll_apply(), _resizable_scroll_handle_get_size(), _resizable_scroll_handle_resize(), _rewriting_the_same_value_retires_nothing(), _rt_set_worker_state(), _runtime_private(), _runtime_private_const(), _sample_raw_segment_cubic_arclen(), _sample_raw_segment_cubic_param(), _search_entry_button_pressed(), _search_entry_changed(), _search_entry_key_pressed(), _search_entry_restore_space_idle(), _set_iter_name(), _set_opacity_clamps_and_reports_what_it_stored(), _set_opacity_refuses_a_nan_rather_than_clamping_it(), _set_operation_rejects_what_it_cannot_do(), _set_operation_replaces_the_combine_op(), _setting_the_state_it_already_has_is_unchanged(), _setup(), _setup(), _setup(), _setup_completion(), _shape_manager_update_item(), _shortcut_edited(), _shortcut_search_button_press(), _shortcut_search_destroy(), _shortcut_search_move_selection(), _shortcut_search_recent_insert_prefix(), _shortcut_search_recent_match_selected(), _shortcut_search_recent_sort_func(), _shortcut_search_row_activated(), _shortcut_search_selection_changed(), _simulate_color(), _slider_add_step(), _sync_buffer_state(), _sync_runtime_state_from_inputs(), _teardown(), _teardown(), _teardown(), _teardown_completion(), _textnotes_load_job_state(), _the_blocking_lock_also_re_enters(), _the_seam_bug_end_to_end(), _thumb_job_state_changed(), _thumbnail_btn_draw(), _togglebutton_draw(), _tree_reveal_func(), _type_tokens_are_the_persisted_conf_key_spellings(), _typed_setters_retire_too(), _update_foreach(), _update_manager_information(), _update_realtime_state(), _walk_answers_the_plain_contour(), _widget_auto_connect_buffer(), _widget_auto_connect_model(), _widget_auto_disconnect_buffer(), _widget_auto_disconnect_model(), _widget_auto_height_free(), _widget_draw(), _widget_set_size(), _write_history_from_state(), bucket_next(), bucket_next(), bucket_next(), button_pressed(), button_pressed(), button_pressed(), button_pressed(), button_released(), button_released(), color_picker_apply(), dt_accels_disable(), dt_accels_search(), dt_bauhaus_popup_draw(), dt_control_button_pressed(), dt_control_button_released(), dt_control_job_get_state(), dt_control_job_set_state(), dt_control_job_wait(), dt_control_mouse_is_dragging(), dt_control_mouse_is_painting(), dt_dev_backbuf_snapshot(), dt_dev_modules_update_multishow(), dt_dev_pixelpipe_cache_put_pinned_image(), dt_dev_pixelpipe_set_realtime(), dt_dev_viewport_get(), dt_dev_viewport_neutral(), dt_dev_write_history(), dt_dev_write_history_ext(), dt_draw_paint_to_pixbuf(), dt_drawlayer_build_worker_input_dab(), dt_drawlayer_paint_finalize_path(), dt_drawlayer_paint_interpolate_path(), dt_drawlayer_paint_path_state_reset(), dt_drawlayer_paint_queue_raw_input(), dt_drawlayer_paint_runtime_ensure_smudge_pixels(), dt_drawlayer_paint_runtime_get_smudge_pickup(), dt_drawlayer_paint_runtime_get_stroke_damage(), dt_drawlayer_paint_runtime_get_stroke_seed(), dt_drawlayer_paint_runtime_have_smudge_pickup(), dt_drawlayer_paint_runtime_note_dab_damage(), dt_drawlayer_paint_runtime_prepare_dab_context(), dt_drawlayer_paint_runtime_private_create(), dt_drawlayer_paint_runtime_private_destroy(), dt_drawlayer_paint_runtime_private_reset(), dt_drawlayer_paint_runtime_set_smudge_pickup(), dt_drawlayer_paint_runtime_set_stroke_seed(), dt_drawlayer_paint_runtime_smudge_height(), dt_drawlayer_paint_runtime_smudge_pixels(), dt_drawlayer_paint_runtime_smudge_width(), dt_drawlayer_paint_runtime_state_create(), dt_drawlayer_paint_runtime_state_destroy(), dt_drawlayer_paint_runtime_state_reset(), dt_drawlayer_process_state_cleanup(), dt_drawlayer_process_state_init(), dt_drawlayer_process_state_invalidate(), dt_drawlayer_process_state_reset_stroke(), dt_drawlayer_runtime_manager_cleanup(), dt_drawlayer_runtime_manager_init(), dt_drawlayer_runtime_manager_note_buffer_lock(), dt_drawlayer_runtime_manager_note_sidecar_io(), dt_drawlayer_runtime_manager_note_thread(), dt_drawlayer_runtime_manager_update(), dt_drawlayer_set_pipeline_realtime_mode(), dt_drawlayer_ui_cursor_clear(), dt_drawlayer_wait_for_rasterization_modal(), dt_iop_set_cache_bypass(), dt_key_modifier_state(), dt_masks_create_menu(), dt_masks_events_button_pressed(), dt_masks_events_button_released(), dt_masks_get_lock_mode(), dt_masks_group_add_form_with_state(), dt_masks_reset_bezier_ctrl_points(), dt_masks_scroll_get_interaction(), dt_masks_toggle_bezier_node_type(), dt_modifier_is(), dt_modifiers_include(), dt_noise_generator_simd(), dt_ui_resizable_drawing_area(), dt_ui_restore_panels(), dt_ui_scroll_wrap(), dt_ui_toggle_panels_visibility(), dt_view_manager_button_pressed(), dt_view_manager_button_released(), dt_view_manager_scrolled(), force_enable(), gaussian_noise_simd(), guide_laplacians(), inpaint_mask(), inpaint_noise(), make_noise(), nlmeans_denoise_cl(), nlmeans_denoiseprofile_cl(), poisson_noise_simd(), process_cl(), process_nlmeans_cl(), scrolled(), scrolled(), scrolled(), scrolled(), setup_color_variables(), show_pango_text(), test_channels_are_independent(), test_clear_cancels_completion_before_model_refresh(), test_completion_keeps_return_priority_after_reattach(), test_completion_survives_repeated_single_and_hierarchical_clears(), test_count_distinct_fields(), test_field_by_field_read_crosses_publications(), test_find_version_for_params(), test_flag_among_multi_image(), test_foreach_active_module(), test_full_paths(), test_group_member_rows(), test_handler_can_be_removed(), test_history_item_cycle(), test_id_range(), test_kinds_stay_distinct(), test_list_all_carries_the_tree_row(), test_list_editable_excludes_shipped(), test_list_for_upgrade_returns_all_versions(), test_metadata_foreach_selected(), test_module_order_absent_vs_zero(), test_no_handler_is_silent(), test_refresh_exposes_new_hierarchical_tag(), test_selected_completion_replaces_only_the_active_token(), test_selection_lowest_id(), test_set_module_version_leaves_params_alone(), test_single_field_setter_is_a_publication(), test_snapshot_never_crosses_publications(), test_tag_agreement(), test_tags_changed_fires_each_time(), test_write_timestamp_is_64bit(), testdb_setup(), testdb_teardown(), tree_reveal_func(), uniform_noise_simd(), xoshiro128plus(), and xoshiro128plus().

◆ u2