|
Blender
V2.93
|
#include <denoising.h>
Public Member Functions | |
| DenoiseTask (Device *device, Denoiser *denoiser, int frame, const vector< int > &neighbor_frames) | |
| ~DenoiseTask () | |
| bool | load () |
| bool | exec () |
| bool | save () |
| void | free () |
Public Attributes | |
| string | error |
Protected Member Functions | |
| bool | load_input_pixels (int layer) |
| void | create_task (DeviceTask &task) |
| bool | acquire_tile (Device *device, Device *tile_device, RenderTile &tile) |
| void | map_neighboring_tiles (RenderTileNeighbors &neighbors, Device *tile_device) |
| void | unmap_neighboring_tiles (RenderTileNeighbors &neighbors) |
| void | release_tile () |
| bool | get_cancel () |
Protected Attributes | |
| Denoiser * | denoiser |
| Device * | device |
| int | frame |
| vector< int > | neighbor_frames |
| DenoiseImage | image |
| int | current_layer |
| device_vector< float > | input_pixels |
| thread_mutex | tiles_mutex |
| list< RenderTile > | tiles |
| int | num_tiles |
| thread_mutex | output_mutex |
| map< int, device_vector< float > * > | output_pixels |
Definition at line 156 of file denoising.h.
| DenoiseTask::DenoiseTask | ( | Device * | device, |
| Denoiser * | denoiser, | ||
| int | frame, | ||
| const vector< int > & | neighbor_frames | ||
| ) |
Definition at line 227 of file denoising.cpp.
References denoiser, image, DenoiseImage::samples, and Denoiser::samples_override.
| DenoiseTask::~DenoiseTask | ( | ) |
Definition at line 242 of file denoising.cpp.
References free().
|
protected |
Definition at line 249 of file denoising.cpp.
References denoiser, device, frame, Device::map_tile(), Denoiser::num_frames, num_tiles, print_progress(), tiles, and tiles_mutex.
Referenced by create_task().
|
protected |
Definition at line 376 of file denoising.cpp.
References acquire_tile(), RenderTile::buffer, RenderTile::buffers, current_layer, RenderTile::DENOISE, denoiser, DENOISER_NLM, device, device_memory::device_pointer, divide_up(), frame, function_bind, get_cancel(), RenderTile::h, DenoiseImage::height, image, INPUT_NUM_CHANNELS, input_pixels, DenoiseImage::layers, map_neighboring_tiles(), min, neighbor_frames, NULL, RenderTile::num_samples, num_tiles, RenderTile::offset, output_mutex, OUTPUT_NUM_CHANNELS, output_pixels, Denoiser::params, release_tile(), RenderTile::sample, RenderTile::start_sample, RenderTile::stride, RenderTile::task, blender::compositor::task, RenderTile::tile_index, Denoiser::tile_size, tiles, tiles_mutex, unmap_neighboring_tiles(), RenderTile::w, DenoiseImage::width, RenderTile::x, int2::x, RenderTile::y, and int2::y.
Referenced by exec().
| bool DenoiseTask::exec | ( | ) |
Definition at line 556 of file denoising.cpp.
References create_task(), current_layer, device, image, DenoiseImage::layers, load_input_pixels(), DeviceTask::RENDER, blender::compositor::task, Device::task_add(), and Device::task_wait().
| void DenoiseTask::free | ( | ) |
Definition at line 585 of file denoising.cpp.
References device_vector< T >::free(), DenoiseImage::free(), image, input_pixels, and output_pixels.
Referenced by save(), and ~DenoiseTask().
|
protected |
Definition at line 371 of file denoising.cpp.
Referenced by create_task().
| bool DenoiseTask::load | ( | ) |
Definition at line 526 of file denoising.cpp.
References device_vector< T >::alloc(), current_layer, denoiser, error, frame, DenoiseImage::height, image, DenoiseImage::in_neighbors, Denoiser::input, INPUT_NUM_CHANNELS, input_pixels, DenoiseImage::layers, DenoiseImage::load(), load_input_pixels(), DenoiseImage::load_neighbors(), neighbor_frames, DenoiseImage::width, and device_vector< T >::zero_to_device().
|
protected |
Definition at line 440 of file denoising.cpp.
References clamp(), DenoiseParams::clamp_input, color_highlight_compress(), device_vector< T >::copy_to_device(), device_vector< T >::data(), data, denoiser, error, DenoiseImage::height, image, DenoiseImage::in_neighbors, INPUT_NUM_CHANNELS, input_pixels, DenoiseImage::layers, make_float3, max, min, NULL, Denoiser::params, r, DenoiseParams::radius, DenoiseImage::read_neighbor_pixels(), DenoiseImage::read_pixels(), sum(), w(), DenoiseImage::width, x, and y.
|
protected |
Definition at line 274 of file denoising.cpp.
References device_vector< T >::alloc(), RenderTile::buffer, RenderTileNeighbors::CENTER, clamp(), device_vector< T >::copy_to_device(), current_layer, device_vector< T >::data(), denoiser, device_memory::device_pointer, RenderTile::h, DenoiseImage::height, image, INPUT_NOISY_IMAGE, DenoiseImageLayer::input_to_image_channel, DenoiseImage::layers, MEM_READ_WRITE, DenoiseImage::num_channels, RenderTile::offset, output_mutex, OUTPUT_NUM_CHANNELS, output_pixels, DenoiseImage::pixels, result, RenderTileNeighbors::SIZE, RenderTile::stride, RenderTileNeighbors::target, RenderTile::tile_index, Denoiser::tile_size, RenderTileNeighbors::tiles, RenderTile::w, DenoiseImage::width, RenderTile::x, int2::x, x, RenderTile::y, int2::y, and y.
Referenced by create_task().
|
protected |
Definition at line 367 of file denoising.cpp.
Referenced by create_task().
| bool DenoiseTask::save | ( | ) |
Definition at line 578 of file denoising.cpp.
References denoiser, error, frame, free(), image, Denoiser::output, and DenoiseImage::save_output().
|
protected |
Definition at line 333 of file denoising.cpp.
References RenderTileNeighbors::CENTER, device_vector< T >::copy_from_device(), current_layer, device_vector< T >::data(), device_vector< T >::free(), RenderTile::h, image, DenoiseImage::layers, DenoiseImage::num_channels, output_mutex, OUTPUT_NUM_CHANNELS, output_pixels, DenoiseImageLayer::output_to_image_channel, DenoiseImage::pixels, result, RenderTileNeighbors::target, RenderTile::tile_index, RenderTileNeighbors::tiles, RenderTile::w, DenoiseImage::width, RenderTile::x, x, RenderTile::y, and y.
Referenced by create_task().
|
protected |
Definition at line 180 of file denoising.h.
Referenced by create_task(), exec(), load(), map_neighboring_tiles(), and unmap_neighboring_tiles().
|
protected |
Definition at line 171 of file denoising.h.
Referenced by acquire_tile(), create_task(), DenoiseTask(), load(), load_input_pixels(), map_neighboring_tiles(), and save().
|
protected |
Definition at line 172 of file denoising.h.
Referenced by acquire_tile(), create_task(), and exec().
| string DenoiseTask::error |
Definition at line 167 of file denoising.h.
Referenced by load(), load_input_pixels(), and save().
|
protected |
Definition at line 175 of file denoising.h.
Referenced by acquire_tile(), create_task(), load(), and save().
|
protected |
Definition at line 179 of file denoising.h.
Referenced by create_task(), DenoiseTask(), exec(), free(), load(), load_input_pixels(), map_neighboring_tiles(), save(), and unmap_neighboring_tiles().
|
protected |
Definition at line 183 of file denoising.h.
Referenced by create_task(), free(), load(), and load_input_pixels().
|
protected |
Definition at line 176 of file denoising.h.
Referenced by create_task(), and load().
|
protected |
Definition at line 188 of file denoising.h.
Referenced by acquire_tile(), and create_task().
|
protected |
Definition at line 190 of file denoising.h.
Referenced by create_task(), map_neighboring_tiles(), and unmap_neighboring_tiles().
|
protected |
Definition at line 191 of file denoising.h.
Referenced by create_task(), free(), map_neighboring_tiles(), and unmap_neighboring_tiles().
|
protected |
Definition at line 187 of file denoising.h.
Referenced by acquire_tile(), and create_task().
|
protected |
Definition at line 186 of file denoising.h.
Referenced by acquire_tile(), and create_task().