Add inverse to Shadows Highlight
This commit is contained in:
@@ -43,92 +43,147 @@ namespace rtengine
|
||||
extern const Settings* settings;
|
||||
|
||||
ImProcCoordinator::ImProcCoordinator()
|
||||
: orig_prev(nullptr), oprevi(nullptr), oprevl(nullptr), nprevl(nullptr), fattal_11_dcrop_cache(nullptr), previmg(nullptr), workimg(nullptr),
|
||||
ncie (nullptr), imgsrc (nullptr), lastAwbEqual (0.), lastAwbTempBias (0.0), ipf (¶ms, true), monitorIntent (RI_RELATIVE),
|
||||
softProof(false), gamutCheck(false), sharpMask(false), scale(10), highDetailPreprocessComputed(false), highDetailRawComputed(false),
|
||||
allocated(false), bwAutoR(-9000.f), bwAutoG(-9000.f), bwAutoB(-9000.f), CAMMean(NAN),
|
||||
: orig_prev(nullptr),
|
||||
oprevi(nullptr),
|
||||
oprevl(nullptr),
|
||||
nprevl(nullptr),
|
||||
fattal_11_dcrop_cache(nullptr),
|
||||
previmg(nullptr),
|
||||
workimg(nullptr),
|
||||
ncie (nullptr),
|
||||
imgsrc (nullptr),
|
||||
lastAwbEqual (0.),
|
||||
lastAwbTempBias (0.0),
|
||||
ipf (¶ms, true),
|
||||
monitorIntent (RI_RELATIVE),
|
||||
softProof(false),
|
||||
gamutCheck(false),
|
||||
sharpMask(false),
|
||||
scale(10),
|
||||
highDetailPreprocessComputed(false),
|
||||
highDetailRawComputed(false),
|
||||
allocated(false),
|
||||
bwAutoR(-9000.f),
|
||||
bwAutoG(-9000.f),
|
||||
bwAutoB(-9000.f),
|
||||
CAMMean(NAN),
|
||||
|
||||
hltonecurve(65536),
|
||||
shtonecurve(65536),
|
||||
tonecurve(65536, 0), //,1);
|
||||
lumacurve(32770, 0), // lumacurve[32768] and lumacurve[32769] will be set to 32768 and 32769 later to allow linear interpolation
|
||||
chroma_acurve(65536, 0),
|
||||
chroma_bcurve(65536, 0),
|
||||
satcurve(65536, 0),
|
||||
lhskcurve(65536, 0),
|
||||
clcurve(65536, 0),
|
||||
conversionBuffer(1, 1),
|
||||
wavclCurve(65536, 0),
|
||||
clToningcurve(65536, 0),
|
||||
cl2Toningcurve(65536, 0),
|
||||
Noisecurve(65536, 0),
|
||||
NoiseCCcurve(65536, 0),
|
||||
vhist16(65536), vhist16bw(65536),
|
||||
lhist16CAM(65536),
|
||||
lhist16CCAM(65536),
|
||||
lhist16RETI(),
|
||||
lhist16LClad(65536),
|
||||
histRed(256), histRedRaw(256),
|
||||
histGreen(256), histGreenRaw(256),
|
||||
histBlue(256), histBlueRaw(256),
|
||||
histLuma(256),
|
||||
histToneCurve(256),
|
||||
histToneCurveBW(256),
|
||||
histLCurve(256),
|
||||
histCCurve(256),
|
||||
histLLCurve(256),
|
||||
histLCAM(256),
|
||||
histCCAM(256),
|
||||
histClad(256),
|
||||
bcabhist(256),
|
||||
histChroma(256),
|
||||
histLRETI(256),
|
||||
CAMBrightCurveJ(), CAMBrightCurveQ(),
|
||||
rCurve(),
|
||||
gCurve(),
|
||||
bCurve(),
|
||||
ctColorCurve(),
|
||||
rcurvehist(256), rcurvehistCropped(256), rbeforehist(256),
|
||||
gcurvehist(256), gcurvehistCropped(256), gbeforehist(256),
|
||||
bcurvehist(256), bcurvehistCropped(256), bbeforehist(256),
|
||||
fw(0), fh(0), tr(0),
|
||||
fullw(1), fullh(1),
|
||||
pW(-1), pH(-1),
|
||||
plistener(nullptr), imageListener(nullptr), aeListener(nullptr), acListener(nullptr), abwListener(nullptr), awbListener(nullptr), flatFieldAutoClipListener(nullptr), bayerAutoContrastListener(nullptr), xtransAutoContrastListener(nullptr), frameCountListener(nullptr), imageTypeListener(nullptr), actListener(nullptr), adnListener(nullptr), awavListener(nullptr), dehaListener(nullptr), locallListener(nullptr), hListener(nullptr),
|
||||
resultValid(false), lastOutputProfile("BADFOOD"), lastOutputIntent(RI__COUNT), lastOutputBPC(false), thread(nullptr), changeSinceLast(0), updaterRunning(false), destroying(false), utili(false), autili(false),
|
||||
butili(false), ccutili(false), cclutili(false), clcutili(false), opautili(false), wavcontlutili(false), colourToningSatLimit(0.f), colourToningSatLimitOpacity(0.f), highQualityComputed(false), customTransformIn(nullptr), customTransformOut(nullptr),
|
||||
hltonecurve(65536),
|
||||
shtonecurve(65536),
|
||||
tonecurve(65536, 0), //,1);
|
||||
lumacurve(32770, 0), // lumacurve[32768] and lumacurve[32769] will be set to 32768 and 32769 later to allow linear interpolation
|
||||
chroma_acurve(65536, 0),
|
||||
chroma_bcurve(65536, 0),
|
||||
satcurve(65536, 0),
|
||||
lhskcurve(65536, 0),
|
||||
clcurve(65536, 0),
|
||||
conversionBuffer(1, 1),
|
||||
wavclCurve(65536, 0),
|
||||
clToningcurve(65536, 0),
|
||||
cl2Toningcurve(65536, 0),
|
||||
Noisecurve(65536, 0),
|
||||
NoiseCCcurve(65536, 0),
|
||||
vhist16(65536), vhist16bw(65536),
|
||||
lhist16CAM(65536),
|
||||
lhist16CCAM(65536),
|
||||
lhist16RETI(),
|
||||
lhist16LClad(65536),
|
||||
histRed(256), histRedRaw(256),
|
||||
histGreen(256), histGreenRaw(256),
|
||||
histBlue(256), histBlueRaw(256),
|
||||
histLuma(256),
|
||||
histToneCurve(256),
|
||||
histToneCurveBW(256),
|
||||
histLCurve(256),
|
||||
histCCurve(256),
|
||||
histLLCurve(256),
|
||||
histLCAM(256),
|
||||
histCCAM(256),
|
||||
histClad(256),
|
||||
bcabhist(256),
|
||||
histChroma(256),
|
||||
histLRETI(256),
|
||||
CAMBrightCurveJ(), CAMBrightCurveQ(),
|
||||
rCurve(),
|
||||
gCurve(),
|
||||
bCurve(),
|
||||
ctColorCurve(),
|
||||
rcurvehist(256), rcurvehistCropped(256), rbeforehist(256),
|
||||
gcurvehist(256), gcurvehistCropped(256), gbeforehist(256),
|
||||
bcurvehist(256), bcurvehistCropped(256), bbeforehist(256),
|
||||
fw(0), fh(0), tr(0),
|
||||
fullw(1), fullh(1),
|
||||
pW(-1), pH(-1),
|
||||
plistener(nullptr),
|
||||
imageListener(nullptr),
|
||||
aeListener(nullptr),
|
||||
acListener(nullptr),
|
||||
abwListener(nullptr),
|
||||
awbListener(nullptr),
|
||||
flatFieldAutoClipListener(nullptr),
|
||||
bayerAutoContrastListener(nullptr),
|
||||
xtransAutoContrastListener(nullptr),
|
||||
frameCountListener(nullptr),
|
||||
imageTypeListener(nullptr),
|
||||
actListener(nullptr),
|
||||
adnListener(nullptr),
|
||||
awavListener(nullptr),
|
||||
dehaListener(nullptr),
|
||||
hListener(nullptr),
|
||||
resultValid(false),
|
||||
lastOutputProfile("BADFOOD"),
|
||||
lastOutputIntent(RI__COUNT),
|
||||
lastOutputBPC(false),
|
||||
thread(nullptr),
|
||||
changeSinceLast(0),
|
||||
updaterRunning(false),
|
||||
destroying(false),
|
||||
utili(false),
|
||||
autili(false),
|
||||
butili(false),
|
||||
ccutili(false),
|
||||
cclutili(false),
|
||||
clcutili(false),
|
||||
opautili(false),
|
||||
wavcontlutili(false),
|
||||
colourToningSatLimit(0.f),
|
||||
colourToningSatLimitOpacity(0.f),
|
||||
highQualityComputed(false),
|
||||
customTransformIn(nullptr),
|
||||
customTransformOut(nullptr),
|
||||
//locallab
|
||||
reserv(nullptr),
|
||||
coordX(0), coordY(0), localX(0), localY(0),
|
||||
lllocalcurve(65536, 0),
|
||||
cclocalcurve(65536, 0),
|
||||
sklocalcurve(65536, 0),
|
||||
exlocalcurve(65536, 0),
|
||||
hltonecurveloc(65536, 0), //32768
|
||||
shtonecurveloc(65536, 0),
|
||||
tonecurveloc(65536, 0),
|
||||
lightCurveloc(32770, 0),
|
||||
locallutili(false), localcutili(false), localskutili(false), localexutili(false), LHutili(false), HHutili(false),
|
||||
huerefs(500, -100000.f),
|
||||
huerefblurs(500, -100000.f),
|
||||
chromarefblurs(500, -100000.f),
|
||||
lumarefblurs(500, -100000.f),
|
||||
chromarefs(500, -100000.f),
|
||||
lumarefs(500, -100000.f),
|
||||
sobelrefs(500, -100000.f),
|
||||
huer(0),
|
||||
huerblu(0),
|
||||
chromarblu(0),
|
||||
lumarblu(0),
|
||||
chromar(0),
|
||||
lumar(0),
|
||||
sobeler(0),
|
||||
lastspotdup(false),
|
||||
locallColorMask(0),
|
||||
locallExpMask(0),
|
||||
locallSHMask(0),
|
||||
avg(0),
|
||||
retistrsav(nullptr)
|
||||
locallListener(nullptr),
|
||||
reserv(nullptr),
|
||||
coordX(0), coordY(0), localX(0), localY(0),
|
||||
lllocalcurve(65536, 0),
|
||||
cclocalcurve(65536, 0),
|
||||
sklocalcurve(65536, 0),
|
||||
exlocalcurve(65536, 0),
|
||||
hltonecurveloc(65536, 0), //32768
|
||||
shtonecurveloc(65536, 0),
|
||||
tonecurveloc(65536, 0),
|
||||
lightCurveloc(32770, 0),
|
||||
locallutili(false), localcutili(false), localskutili(false), localexutili(false), LHutili(false), HHutili(false),
|
||||
huerefs(500, -100000.f),
|
||||
huerefblurs(500, -100000.f),
|
||||
chromarefblurs(500, -100000.f),
|
||||
lumarefblurs(500, -100000.f),
|
||||
chromarefs(500, -100000.f),
|
||||
lumarefs(500, -100000.f),
|
||||
sobelrefs(500, -100000.f),
|
||||
huer(0),
|
||||
huerblu(0),
|
||||
chromarblu(0),
|
||||
lumarblu(0),
|
||||
chromar(0),
|
||||
lumar(0),
|
||||
sobeler(0),
|
||||
lastspotdup(false),
|
||||
locallColorMask(0),
|
||||
locallExpMask(0),
|
||||
locallSHMask(0),
|
||||
avg(0),
|
||||
retistrsav(nullptr)
|
||||
{}
|
||||
|
||||
void ImProcCoordinator::assign(ImageSource* imgsrc)
|
||||
@@ -1605,7 +1660,6 @@ void ImProcCoordinator::process()
|
||||
|| params.labCurve != nextParams.labCurve
|
||||
|| params.localContrast != nextParams.localContrast
|
||||
|| params.locallab != nextParams.locallab
|
||||
|
||||
|| params.rgbCurves != nextParams.rgbCurves
|
||||
|| params.colorToning != nextParams.colorToning
|
||||
|| params.vibrance != nextParams.vibrance
|
||||
|
Reference in New Issue
Block a user