Ansel
0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
thinplate.h
Go to the documentation of this file.
1
/*
2
* This file is part of darktable,
3
* Copyright (C) 2016 johannes hanika.
4
* Copyright (C) 2016 Tobias Ellinghaus.
5
* Copyright (C) 2020 Pascal Obry.
6
* Copyright (C) 2022 Martin BaĆinka.
7
*
8
* darktable is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* darktable is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with darktable. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
22
#pragma once
23
24
#include "
chart/tonecurve.h
"
25
26
int
thinplate_match
(
const
tonecurve_t
*curve,
// tonecurve to apply after this (needed for error estimation)
27
int
dim,
// dimensionality of points
28
int
N
,
// number of points
29
const
double
*
point
,
// dim-strided points
30
const
double
**target,
// target values, one pointer per dimension
31
int
S
,
// desired sparsity level, actual result will be returned
32
int
*
permutation
,
// pointing to original order of points, to identify correct output coeff
33
double
**
coeff
,
// output coefficient arrays for each dimension, ordered according to
34
// permutation[dim]
35
double
*avgerr,
// average error
36
double
*maxerr);
// max error
37
38
float
thinplate_color_pos
(
float
L
,
float
a,
float
b);
39
40
// clang-format off
41
// modelines: These editor modelines have been set for all relevant files by tools/update_modelines.py
42
// vim: shiftwidth=2 expandtab tabstop=2 cindent
43
// kate: tab-indents: off; indent-width 2; replace-tabs on; indent-mode cstyle; remove-trailing-spaces modified;
44
// clang-format on
45
L
const float L
Definition
colorspaces_inline_conversions.h:493
S
#define S(V, params)
Definition
common/histogram.c:36
permutation
static int permutation[]
Definition
grain.c:160
coeff
const float *const const float coeff[3]
Definition
iop_profile.h:240
N
#define N
Definition
noiseprofile.c:158
point
Definition
ashift_lsd.c:192
tonecurve_t
Definition
tonecurve.h:28
thinplate_color_pos
float thinplate_color_pos(float L, float a, float b)
Definition
thinplate.c:448
thinplate_match
int thinplate_match(const tonecurve_t *curve, int dim, int N, const double *point, const double **target, int S, int *permutation, double **coeff, double *avgerr, double *maxerr)
Definition
thinplate.c:157
tonecurve.h
src
chart
thinplate.h
Generated by
1.9.8