Fix wrong behaviour of retinex in combination with Colour propagation when zooming in

This commit is contained in:
heckflosse
2015-11-02 22:04:29 +01:00
parent 5196d4b9a7
commit 5ddc43278c
3 changed files with 19 additions and 18 deletions

View File

@@ -242,7 +242,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
} }
if (params.retinex.enabled) { if ((todo & (M_RETINEX|M_INIT)) && params.retinex.enabled) {
bool dehacontlutili = false; bool dehacontlutili = false;
bool useHsl = false; bool useHsl = false;
LUTf cdcurve (65536, 0); LUTf cdcurve (65536, 0);

View File

@@ -434,23 +434,23 @@ int refreshmap[rtengine::NUMOFEVENTS] = {
DIRPYREQUALIZER, // EvWavlev3nois DIRPYREQUALIZER, // EvWavlev3nois
DIRPYREQUALIZER, // EvWavNPmet DIRPYREQUALIZER, // EvWavNPmet
DEMOSAIC, // EvretinexMethod DEMOSAIC, // EvretinexMethod
ALLNORAW, // EvLneigh RETINEX, // EvLneigh
ALLNORAW, // EvLgain RETINEX, // EvLgain
ALLNORAW, // EvLoffs RETINEX, // EvLoffs
ALLNORAW, // EvLstr RETINEX, // EvLstr
ALLNORAW, // EvLscal RETINEX, // EvLscal
ALLNORAW, // EvLvart RETINEX, // EvLvart
ALLNORAW, // EvLCDCurve RETINEX, // EvLCDCurve
ALLNORAW, // EvRetinextransmission RETINEX, // EvRetinextransmission
DEMOSAIC, // EvRetinexEnabled DEMOSAIC, // EvRetinexEnabled
ALLNORAW, // EvRetinexmedianmap RETINEX, // EvRetinexmedianmap
ALLNORAW, // EvLlimd RETINEX, // EvLlimd
DEMOSAIC, // Evretinexcolorspace DEMOSAIC, // Evretinexcolorspace
ALLNORAW, // EvLCDHCurve RETINEX, // EvLCDHCurve
DEMOSAIC, // Evretinexgamma DEMOSAIC, // Evretinexgamma
DEMOSAIC, // EvLgam DEMOSAIC, // EvLgam
DEMOSAIC, // EvLslope DEMOSAIC, // EvLslope
ALLNORAW, // EvLhighl RETINEX, // EvLhighl
DEMOSAIC, // EvLbaselog DEMOSAIC, // EvLbaselog
// DEMOSAIC, // EvLgrbl // DEMOSAIC, // EvLgrbl
DEMOSAIC // EvRetinexlhcurve DEMOSAIC // EvRetinexlhcurve

View File

@@ -29,6 +29,7 @@
// Elementary functions that can be done to // Elementary functions that can be done to
// the preview image when an event occurs // the preview image when an event occurs
#define M_RETINEX (1<<12)
#define M_CROP (1<<11) #define M_CROP (1<<11)
#define M_PREPROC (1<<10) #define M_PREPROC (1<<10)
#define M_RAW (1<<9) #define M_RAW (1<<9)
@@ -47,7 +48,6 @@
#define FIRST (M_PREPROC|M_RAW|M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) // without HIGHQUAL #define FIRST (M_PREPROC|M_RAW|M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) // without HIGHQUAL
#define ALL (M_PREPROC|M_RAW|M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) // without HIGHQUAL #define ALL (M_PREPROC|M_RAW|M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) // without HIGHQUAL
#define TRANSFORM (M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) #define TRANSFORM (M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR)
#define RETINEX (M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR)
#define AUTOEXP (M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) #define AUTOEXP (M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR)
#define RGBCURVE (M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) #define RGBCURVE (M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR)
#define LUMINANCECURVE (M_LUMACURVE|M_LUMINANCE) #define LUMINANCECURVE (M_LUMACURVE|M_LUMINANCE)
@@ -69,6 +69,7 @@
#define GAMMA (M_COLOR|M_LUMINANCE) #define GAMMA (M_COLOR|M_LUMINANCE)
#define MINUPDATE M_MINUPDATE #define MINUPDATE M_MINUPDATE
#define ALLNORAW (M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR) #define ALLNORAW (M_INIT|M_LINDENOISE|M_TRANSFORM|M_BLURMAP|M_AUTOEXP|M_RGBCURVE|M_LUMACURVE|M_LUMINANCE|M_COLOR)
#define RETINEX (M_RETINEX|ALLNORAW)
extern int refreshmap[]; extern int refreshmap[];
#endif #endif