heckflosse
66054ca50d
RGB curves luminosity mode: Experimental patch to equalize the strength of R, G and B curve
2016-08-26 16:38:14 +02:00
heckflosse
7a2dd888bb
RGB Curves Luminosity mode, reduce number of atan2 calculations
2016-08-26 14:20:47 +02:00
heckflosse
294f16c741
RGB Curves Luminosity mode: ~ 40% speedup
2016-08-25 19:28:05 +02:00
Hombre
5affa18341
Introducting soft-proofing and Black Point Compensation, simplify the
...
CMM at the end of the pipeline + sparse code refactoring
A new BPC checkbutton has been created in 'Preferences/Color Management'
and in the ICM tool. Better hanbling of widget sensitivity of the output
profile / gamma part of the ICM tool.
2016-08-24 22:32:06 +02:00
heckflosse
39a57cbb3b
Disabled StopWatch
2016-08-24 21:28:01 +02:00
heckflosse
281e3979d5
ImProcFunctions::moyeqt, simplified calculation
2016-08-23 21:32:30 +02:00
heckflosse
9b62f92095
About 7x speedup for Automatic Saturation Protection in Colourtoning
2016-08-23 19:35:15 +02:00
heckflosse
3e510cd94e
Fix some ciecam02 issues, fixes ##3380, fixes #3396 , fixes #3397
2016-08-18 21:41:16 +02:00
heckflosse
1339cbe67a
Fixes "CIECAM02 causes blue to become black"
...
Signed-off-by: Morgan Hardwood <entertheyoni@gmail.com >
2016-08-02 01:15:36 +02:00
Morgan Hardwood
1255d9e942
Fixes #3389 - CbDL memleak.
2016-07-28 04:48:53 +02:00
heckflosse
c8779c04f5
Fix all - 2 cppcheck performance hints
2016-07-06 13:04:24 +02:00
heckflosse
a32e13400b
Removed stopwatches
2016-06-12 13:32:08 +02:00
heckflosse
b50de693a0
Replace expensive dcp srgb gamma calculations by access to lookup table => no difference in output and much faster
2016-06-09 21:49:13 +02:00
Floessie
2abd641c06
Refactor DCPProfile::DCPProfile()
...
- Rename members
- Styling
- C++11
Still to come:
- All the rest of DCPProfile
2016-06-05 21:30:51 +02:00
Floessie
a520c93775
Add Ingo's patch for #3304
2016-06-04 21:07:41 +02:00
Desmis
564bf62268
Fixed special handling of chroma=-100
2016-06-03 08:42:26 +02:00
Beep6581
10f4bf3109
Merged master into rgbcurvesspeedup.
2016-06-02 22:33:34 +02:00
heckflosse
b31225672a
Some new improvements to speed of curve generation (mainly to speedup thumb processing in file browser)
2016-05-31 23:47:01 +02:00
Desmis
6dba58e26e
fixed special handling of chroma = -100
2016-05-30 09:11:07 +02:00
heckflosse
20aec5b129
Cleanup and small improvements for ciecam02
2016-05-16 18:20:42 +02:00
heckflosse
9da7de4080
Fixed a bug I introduced with last commit and changed argument order of Ciecam02::curveJfloat
2016-05-14 12:04:02 +02:00
heckflosse
74447dff99
cleanup for Ciecam02::curveJfloat(..)
2016-05-13 21:52:49 +02:00
heckflosse
c601e05422
Fix non OpenMP build and astyled improcfun.cc
2016-05-13 15:40:21 +02:00
Flössie
1edfb0c6f7
Switch getClutValue
to vfloat2 and load/store source[RGB] unaligned
...
Ingo had some cleanup suggestions in #3154 which I tried to realize with
this commit. Although switching to `vfloat2` is a clever idea, I can see
no further speedup.
2016-05-10 20:39:20 +02:00
heckflosse
6646c2dc5c
Speedup for thumbnail and editor processing, also reduced base memory usage a bit
2016-05-06 21:51:57 +02:00
heckflosse
31b2589b9b
Fix crashes caused by aligned access to unaligned memory in CLUT code, fixes #3154 , fixes #3278 , fixes #3277
2016-05-06 17:16:45 +02:00
Flössie
2ad89f9464
Fix buffer overrun when applying HaldCLUT ( #3154 )
...
Ingo found a buffer overrun due to an inverted mask when deciding
whether to take the SSE path or not. This fix applies his suggested
pattern for boder cases. Kudos to @heckflosse.
2016-05-04 20:23:28 +02:00
heckflosse
5e0a859cea
Fix buffer overrun in rgbProc()
2016-05-03 20:01:59 +02:00
Flössie
39f4db609a
Final code cleanup
...
- Corrected whitespace and comments
- Replaced `VECTLENSP` with `__SSE2__` and `4`
- Removed redundant `inline`
(see: http://programmers.stackexchange.com/a/35436 and
http://stackoverflow.com/a/5971755 )
2016-05-01 11:10:11 +02:00
Flössie
eceb024ba8
Add Ingo's gamma_srgbclipped
patch
2016-05-01 10:41:21 +02:00
heckflosse
2dd2f5ca17
Speedup for thumbnail processing
2016-05-01 00:16:06 +02:00
Flössie
beaea22779
Vectorize color space conversion for HaldCLUT
...
Vectorize color space conversion for HaldCLUT depending on the
definition of `VECTLENSP`. It's not fully AVX compatible because `F2V`,
`LVF`, and `STVF` are SSE only.
2016-04-29 20:35:37 +02:00
Flössie
29fe23e517
Move film_simulation_strength
calculation into HaldCLUT::getRGB()
...
- Moved `film_simulation_strength` calculation into `HaldCLUT::getRGB()`
- Removed unneeded base class `CLUT`
- Used `_MM_SHUFFLE`
2016-04-29 17:26:56 +02:00
Flössie
9dee6dddf1
Hoist out_rgbx
allocation out of the loops
2016-04-26 22:16:23 +02:00
Flössie
bf499055e1
Apply HaldCLUT::getRGB()
per tile line
...
`getRGB()` now takes a whole tile line instead of a single pixel.
2016-04-26 21:57:58 +02:00
Flössie
b1a9e96836
Store HaldCLUT as flat RGBx array
...
Instead of using an `Image16`, which is organized in planes, store the
HaldCLUT in an `AlignedBuffer<std::uint16_t>` with sequential RGBx
values. This gives a speedup of roughly 23% here.
2016-04-23 22:55:28 +02:00
Flössie
f639cd6b82
Use Image16 instead of Imagefloat for CLUT
...
Gain speed and reduce memory by using Image16 instead of Imagefloat for
the CLUT.
2016-04-23 22:55:28 +02:00
Flössie
e495093b18
Clean up clutstore.* and add LRU cache
...
This commit adds a true LRU cache to `rtengine` which is used in the new
`CLUTStore` class. The code in `clutstore.*` was cleaned up with C++11
features and small optimizations taken from my `clutbench` project.
The `CLUTStore` class was converted to a true singleton.
2016-04-23 22:55:28 +02:00
heckflosse
2f2421442b
Raw false colour suppression: additional 38% speedup
2016-03-06 01:14:35 +01:00
Ingo Weyrich
4df5e64056
Merge pull request #3188 from Beep6581/cbdlbw
...
Adapt Cbdl to B&W tools
2016-03-01 20:31:14 +01:00
heckflosse
755f7568bb
removed big block of inactive code which I forgot to remove in last commit
2016-03-01 19:30:48 +01:00
heckflosse
51de80b558
Fixed bug with combination of cbdl and ciecam, cleaned code, made SSE version for lab2rgb
2016-03-01 19:16:34 +01:00
heckflosse
1b220543f3
Replace all x^(1/3) with std::cbrt(x)
2016-02-25 16:50:21 +01:00
heckflosse
e52b1fcdd4
Reduce start time and memory usage by removing redundant lookup tables and fillig remaining lookup tables in parellel
2016-02-24 01:35:47 +01:00
heckflosse
a15fe1de3e
Cbdl before b&w, fix ciecam02 issue and clean the code a bit
2016-02-19 21:52:02 +01:00
Desmis
5f988861b0
Init CBDL before Black and White
2016-02-19 16:58:23 +01:00
Hombre
4665b88788
Modified Preview Canvas
...
- Now the Preview can show free space around the image (the image's
corner will coincide with the center of the preview area)
- Editing objects can now be manipulated in this free space
- The editing mechanism has been split : it was completely handled in
rtengine before, now rtengine still handle the pipette's data provider,
but rtgui now handle the objects data provider.
- Bugfix: when using coarse rotate in the Editor panel, the Gradient
widgets are now correctly displayed
2016-02-05 01:40:31 +01:00
Adam Reichold
5fd5d5bece
Remove the soft proof button and internal flag as it was decided not to mix this with the output profile handling.
2016-01-01 19:43:09 +01:00
Hombre
bcbb45454a
Updated icons (from Drslony), code cleanup and bugfix
2015-12-29 03:52:50 +01:00
Adam Reichold
4ecf463f9f
Merge master for the C++11 ABI fixes.
2015-12-20 20:53:59 +01:00