26 Commits

Author SHA1 Message Date
Ingo Weyrich
be765768ff further cleanups 2020-02-29 14:19:06 +01:00
Alberto Griggio
1a3fd9f157 Added new color toning method "L*a*b* regions"
Allows to specify various "regions" of the image with masks, and to correct
for hue, saturation and lightness.

Inspired by the existing L*a*b* grid (in turn taken from darktable)
2018-10-25 16:46:11 +02:00
heckflosse
c45ec6f16e Speedup and bugfix for new Sh/Hl tool 2018-04-26 14:32:43 +02:00
Alberto Griggio
b42a45b481 merged branch 'unbounded-processing' into 'dev' 2018-03-28 21:35:23 +02:00
Alberto Griggio
aecbc2cf24 fixed compilation problem 2018-03-23 14:37:57 +01:00
Alberto Griggio
b09bf381b4 added possibility to specify extra working spaces via a json file
The JSON file is called workingspaces.json, it can be either in the global iccprofiles directory, or in the user's ICC profiles dir (set in preferences).

The format is the following:

{"working_spaces": [
    {
        "name" : "ACES",
        "file" : "/path/to/ACES.icc"
    },
    {
        "name" : "ACEScg",
        "matrix" : [0.7184354, 0.16578523, 0.09882643, 0.29728935, 0.66958117, 0.03571544, -0.00647622, 0.01469771, 0.66732561]
    }
]}

if "matrix" is present, "file" is ignored. If only "file" is present, the matrix is extracted from the ICC profile. For this, we look only at the R, G, and B matrix columns and the white point set in the profile. Bradford adaptation is used to convert the matrix to D50. Anything else (LUT, TRC, ...) in the profile is ignored.

It is the user's responsibility to ensure that the profile is suitable to be used as a working space.
2018-03-20 15:06:09 +01:00
Alberto Griggio
33e0c28789 started working on no negative clipping 2018-02-19 16:31:30 +01:00
Alberto Griggio
08846264c7 started work on making RT not clip the image at intermediate stages 2018-02-09 21:25:39 +01:00
Alberto Griggio
adb1392839 renamed formal parameters of LIM from (a, b, c) to (val, low, high) 2018-01-31 21:34:10 +01:00
heckflosse
393d62bdb6 ÂSome speedups for scalar sleef functions 2018-01-07 22:59:24 +01:00
heckflosse
0fcc1987a5 Speedup for perceptual tone curve #4269 2018-01-05 16:42:22 +01:00
heckflosse
8b44ed0fd8 Speedup for microcontrast, issue #3867 2017-05-08 18:42:13 +02:00
Flössie
61b913f7f9 Fix rtengine::min() for NaNs (#3742)
Also fix `LuminanceToneCurve::Apply()`. Kudos to @heckflosse!
2017-03-08 20:23:57 +01:00
Flössie
6e7712831a Break min() and max() parameter dependencies
Also convert most functions in `rt_math.h` to `constexpr` by
implementing `min()` and `max()` natively. `constexpr` indeed has a
positive impact on the generated assembly.
2017-03-01 18:13:16 +01:00
Flössie
d72d931c9e Variadic template version of rtengine::(min|max)()
This change allows for an arbitrary number of arguments to `min()` and
`max()` by using recursion on variadic template functions. The
disassembly of GCC 6.3 was carefully checked for regressions, but
nothing was found other than the flipping of arguments (recursion is
now `(((a,b),c),d)` and was `(d,(c,(a,b)))` before).

I also unified the common type `_Tp` to to the even more common `T`.
2017-02-28 20:57:19 +01:00
Flössie
88336cb897 Make RT build without __USE_MISC and __USE_XOPEN 2017-02-14 21:02:39 +01:00
Flössie
759676788b Use BABL method for 16-to-8 bit conversion (#3429) 2016-09-22 21:52:07 +02:00
heckflosse
ab2be87333 Simplified float2uint16range(..), removed StopWatches 2016-09-21 14:05:30 +02:00
heckflosse
c67b986744 add faster implementation to clip float to [0;65535] and round 2016-09-21 00:22:42 +02:00
Flössie
787a892737 Make further use of median() and replace ULIM and ULIMV (#3346) 2016-06-26 15:14:45 +02:00
Flössie
2fa1ad138e Start median rework (#3346)
- Added basic algorithms to `rtengine/median.h`
- Converted first occurrences
2016-06-14 22:08:03 +02:00
Hombre
de7c6d773a Updated code taking into account Adam's comments + bugfix 2016-02-13 17:54:47 +01:00
heckflosse
ee665d6790 Amaze Demosaic: Speedup, cleaned code, changed nyquist code 2016-01-26 13:10:38 +01:00
heckflosse
2017a0e592 Code review and speedup for Amaze Demosaic 2016-01-24 01:44:35 +01:00
DrSlony
0e0cfb9b25 Formatted all .cc and .h code in rtengine, rtexif and rtgui using astyle 2015-08-11 11:55:03 +02:00
torger
d5ca351c20 Issue 2134: removed obsolete raw highlight preservation setting from GUI (still left in procparams for backwards compatilibility) 2015-07-10 12:00:36 +02:00