Lagrange
Loading...
Searching...
No Matches
CompositingOptions Struct Reference

Options for texture compositing. More...

#include <lagrange/texproc/texture_compositing.h>

Classes

struct  SolverOptions
 Multigrid solver options (ignored when use_direct_solver is true). More...
 

Public Attributes

double value_weight = 1e3
 The weight for fitting the values of the signal.
 
unsigned int quadrature_samples = 6
 The number of quadrature samples to use for integration (in {1, 3, 6, 12, 24, 32}).
 
double jitter_epsilon = 1e-4
 Jitter amount per texel (0 to deactivate).
 
std::optional< std::pair< double, double > > clamp_to_range = std::nullopt
 Clamp out-of-range texels to the given range (nullopt to disable).
 
GradientNormalization gradient_normalization = GradientNormalization::PerTexelSqrt
 How per-view gradient contributions are normalized into the edge-difference target.
 
bool use_direct_solver = false
 Use a direct (LDLT) solver instead of the multigrid v-cycle.
 
double stiffness_regularization_weight = 1e-9
 Weight for combinatorial Laplacian regularization added to the stiffness matrix.
 
bool smooth_low_weight_areas = false
 When using GradientNormalization::PerTexelSqrt, whether to smooth pixels with a low total weight (< 1).
 
std::optional< bool > sanity_check = std::nullopt
 Whether to run solver sanity checks.
 
struct lagrange::texproc::CompositingOptions::SolverOptions solver
 

Detailed Description

Options for texture compositing.

Member Data Documentation

◆ use_direct_solver

bool use_direct_solver = false

Use a direct (LDLT) solver instead of the multigrid v-cycle.

The direct solver is exact, but uses more memory. The multigrid solver is approximate, uses less memory and runs faster.

◆ stiffness_regularization_weight

double stiffness_regularization_weight = 1e-9

Weight for combinatorial Laplacian regularization added to the stiffness matrix.

Helps stabilize the system in poorly conditioned regions. Set to 0 to disable.

◆ smooth_low_weight_areas

bool smooth_low_weight_areas = false

When using GradientNormalization::PerTexelSqrt, whether to smooth pixels with a low total weight (< 1).

When enabled, this will dampen the gradient terms for pixels with a low total weight, resulting in a smoother texture in low-confidence areas.

◆ sanity_check

std::optional<bool> sanity_check = std::nullopt

Whether to run solver sanity checks.

If unset, defaults to true in debug builds and false in release builds.


The documentation for this struct was generated from the following file: