rom9
938fc63dd0
Replaced powf
calls with the optimized pow_F
macro (which also works for the non-SSE2 case).
2019-06-27 23:01:51 +02:00
rom9
a3004bb2b8
Added SSE2 optimization in film negative thumbnail processing.
2019-06-27 22:03:59 +02:00
rom9
63a6e1b79c
Changed GUI behaviour so that the first slider sets the reference exponent (green channel), and the other two sliders set the ratio of the red/blue exponent to the reference one. This should be more intuitive, and less confusing when clicking on the reset-to-default slider button. Now the first slider sets the general contrast, while the other two affect the color.
...
Lowered exponent slider max value from 6 to 4 (it was too large to be useful). New sliders are log-scale.
2019-06-26 02:00:34 +02:00
rom9
157d83d169
Partially reverting my last commit. When using large exponents, huge raw values could cause segfaults in ImProcFunctions:rgbProc (specifically in shadowToneCurve), and in Amaze demosaic.
...
Re-added the clipping check on raw values, but with a higher threshold. This way, raw clipping is less frequent in highlight areas (so those can be used as spots for exponents calculation), but the threshold is low enough to avoid the segfaults.
Not a very clean solution, need to find a better one...
2019-06-26 00:14:03 +02:00
rom9
22f6297a5b
Removed clipping check for values above 65535 (reverts commit 9156572). It was just a defensive check to avoid hitting corner cases like this: 1e4f9ac , that is already fixed elsewhere.
...
The check is now causing problems with the dual-spot feature, because after clipping, the formula cannot be undone to get back the original raw values.
Since there are no known issues caused by raw values >65k, i'm removing the check until there will be a good reason to re-introduce it.
2019-06-24 21:48:06 +02:00
rom9
7040378dec
Merge remote-tracking branch 'origin/dev' into filmnegative
2019-06-23 23:40:56 +02:00
rom9
2fde6e562a
The "dual-spot" exponents calculation feature now honors the master (green) exponent set by the user, and adjusts red and blue based on the ratios between the new, "guessed" exponents.
...
This way, if the user has chosen a different master exponent than the default, using the feature just alters the color characteristic of the conversion, while keeping the same contrast level.
2019-06-23 22:21:24 +02:00
Ingo Weyrich
c6cdaf37eb
Merge pull request #5350 from Beep6581/badpixels-compunit
...
Move badpixel code to own compilation unit
2019-06-22 18:00:13 +02:00
rom9
8c6458daff
Removed "lock channels" CheckButton, it wasn't very useful. Keeping the "(lead)" note on the green channel label, to give a hint that this slider controls the other two as well.
2019-06-21 20:51:50 +02:00
rom9
880a6e125e
Added film negative processing in thumbnails, with correct white balance. Calculated channel averages to restore the same initial conditions as RawImageSource, where get_colorsCoeff is called with forceAutoWB = true. Code still needs refinement and cleanup.
2019-06-21 07:12:42 +02:00
rom9
03dc855fc7
Merged cleanup patch proposed by heckflosse, moves exponents negation to a single place. Now it's much easier to read.
2019-06-18 21:08:18 +02:00
rom9
c9c834dc63
Very honored to add myself to AUTHORS.txt, as suggested by heckflosse:
...
https://github.com/Beep6581/RawTherapee/pull/5349#pullrequestreview-247409279
2019-06-18 21:02:53 +02:00
rom9
7c0275ca1a
Updated copyright notice in new source files
2019-06-18 13:52:58 +02:00
Flössie
ca387e0379
Use terser C++11 resets in ProcParams::setDefaults()
2019-06-18 09:22:45 +02:00
rom9
8de581ac39
Removed old debugging stuff from rtgui/filmnegative.cc
2019-06-17 21:46:50 +02:00
rom9
ad72e0f57b
Merge branch 'Beep6581-filmnegative-cleanup' into filmnegative
2019-06-17 20:39:56 +02:00
Flössie
b687ca2643
Merge branch 'rom9-filmnegative' into filmnegative-cleanup
2019-06-17 08:57:14 +02:00
Flössie
20fdba77e8
Merge branch 'filmnegative' of https://github.com/rom9/RawTherapee into rom9-filmnegative
2019-06-17 08:07:32 +02:00
Flössie
54cc02eea9
Filmenegative core cleanup
2019-06-17 08:03:46 +02:00
rom9
d01f78864c
Locked red and blue exponents by default in the GUI, added CheckButton to unlock them.
2019-06-14 22:14:24 +02:00
Flössie
80f2b6a002
Replace raw arrays with std::array<>
2019-06-14 08:58:04 +02:00
Flössie
015cffc73a
Peripheral cleanups and a fix
...
- Whitespace, braces, sorting
- Fixed missing filmnegative in `ProcParams::operator ==(ProcParams)`
2019-06-13 09:52:13 +02:00
rom9
c819cb63a2
Speed boost in the median vectors fill via loop unrolling
2019-06-12 22:11:34 +02:00
Morgan Hardwood
a686a94a62
Merge branch 'filmnegative' of https://github.com/rom9/RawTherapee into rom9-filmnegative
2019-06-12 09:19:49 +02:00
rom9
8d0755eddc
Raised default master exponent from 1.0 to 2.0, to get a reasonable contrast right from the start.
2019-06-11 22:50:36 +02:00
rom9
5ddc4a3e0e
Added missing checkbox for film negative feature in partial apply / partial paste dialogs.
2019-06-11 22:13:16 +02:00
rom9
8fa30d496d
Now that medians are known *before* processing, moved multiplication step inside the same loop as exponentiation for further optimization. Patch kindly provided by @heckflosse ;-)
2019-06-11 21:02:16 +02:00
rom9
2bbf8bd864
Changed events action from ALL to FIRST , this way the histogram is updated after enabling/disabling or moving the adjusters.
2019-06-11 20:26:13 +02:00
rom9
e1c9197ed5
Moved median calculation block before exponentiation. This way findMinMaxPercentile() can be used again because it works on the original raw file values (which are in a much more reasonable range). Patch kindly provided by @heckflosse ;-)
2019-06-11 20:08:46 +02:00
rom9
223ae8abce
Bugfix: exponent adjusters were not following the master (green) slider after exponents auto-calc via dual spot picking; updated redRatio/blueRatio after calculation.
2019-06-11 00:19:18 +02:00
heckflosse
156f3009d5
badpixels code: further cleanups
2019-06-10 22:15:16 +02:00
rom9
b95bdb1aea
Linked red and blue exponent adjuster to the green adjuster, in order to maintain the ratio between exponents if the user moves the green adjuster (master).
...
Switched back to vector sort for median calculations: the results of the histogram search function diverge more and more from the simple median calculation as the exponents increase.
At 2.0 the test picture is already impossible to WB as the multipliers are too far off (2.78226e+08 histo vs 9.7927e+11 sort), and the normal WB sliders can't compensate for those huge factors.
2019-06-10 22:05:54 +02:00
heckflosse
fe16bf7917
Move badpixel code to own compilation unit
2019-06-10 16:40:44 +02:00
rom9
91565728e5
Clamped output values to a max of 65535.f after applying multipliers, to avoid trouble further down the processing pipeline.
2019-06-09 19:25:15 +02:00
heckflosse
df4513f595
Avoid integer overflow when accessing luts with very large values
2019-06-09 18:57:23 +02:00
heckflosse
f0d32c1da7
White dot artifacts caused by CIECAM02, fixes #5342
2019-06-09 14:37:33 +02:00
heckflosse
1e4f9ac248
Avoid integer overflow when accessing luts with very large values
2019-06-09 14:36:38 +02:00
rom9
d2366e633c
Enabled bad pixels interpolation for ST_XTRANS after upstream fix c0a033e
2019-06-09 13:09:29 +02:00
heckflosse
b990b89875
interpolateBadPixelsXtrans() : fix oob access
2019-06-09 12:21:42 +02:00
heckflosse
c0a033e717
interpolateBadPixelsXtrans() : fix oob access
2019-06-08 15:13:44 +02:00
rom9
9df8008949
Film negative processing: first usable version. Only supports bayer raw files, thumbnails don't work
...
Added performance improvements suggested by heckflosse. Lowered median sampling step from 7 to 5 since calculation is now much faster.
Added support for Fuji X-Trans raw files.
Applied SSE2 patch provided by @heckflosse, improves performance in main processing loop.
Moved film negative processing stuff in its own compilation unit.
Code cleanup: removed redundant omp directives.
Added check for dead pixels, going above threshold after inversion. ST_BAYER only for now.
Reverted leftover hack in cropwindow.cc
2019-06-08 01:40:29 +02:00
heckflosse
3b19b9f55b
Rawtherapee 5.6 crashes with.dng from PixelShift2DNG-0.9.8.67, fixes #5348
2019-06-07 16:37:59 +02:00
Ingo Weyrich
d1e6c57885
Merge pull request #5347 from Benitoite/patch-15
...
Mac bundle: update to libomp
2019-06-07 12:38:58 +02:00
Benitoite
dec20d09fd
Mac bundle: update to libomp
...
and `--timestamp` the code signings.
2019-06-06 22:26:34 -07:00
heckflosse
6486c491f8
Vibrance causes RT to freeze, fixes #5346
2019-06-05 12:55:08 +02:00
Ingo Weyrich
4ff41f7a2c
Merge pull request #5343 from Beep6581/thumbcache
...
Change thumbnail cache eviction strategy
2019-06-04 17:54:12 +02:00
heckflosse
df65774667
Fix calculation of reserve
2019-06-04 17:52:39 +02:00
heckflosse
3c0b0ffd33
Small speedup for loading unpacked 16 bit raw files
2019-06-04 17:01:05 +02:00
heckflosse
a391e256bc
Fix possibly uninitialized variable
2019-06-04 16:30:54 +02:00
heckflosse
f18724e016
Silence some warnings
2019-06-04 16:30:22 +02:00