Merge pull request #5445 from Beep6581/capture_sharpening
Merge Capture sharpening into dev to get more tests
This commit is contained in:
@@ -1102,7 +1102,9 @@ void ColorToningParams::getCurves(ColorGradientCurve& colorCurveLUT, OpacityCurv
|
||||
SharpeningParams::SharpeningParams() :
|
||||
enabled(false),
|
||||
contrast(20.0),
|
||||
autoContrast(false),
|
||||
blurradius(0.2),
|
||||
gamma(1.0),
|
||||
radius(0.5),
|
||||
amount(200),
|
||||
threshold(20, 80, 2000, 1200, false),
|
||||
@@ -1125,9 +1127,11 @@ bool SharpeningParams::operator ==(const SharpeningParams& other) const
|
||||
enabled == other.enabled
|
||||
&& contrast == other.contrast
|
||||
&& blurradius == other.blurradius
|
||||
&& gamma == other.gamma
|
||||
&& radius == other.radius
|
||||
&& amount == other.amount
|
||||
&& threshold == other.threshold
|
||||
&& autoContrast == other.autoContrast
|
||||
&& edgesonly == other.edgesonly
|
||||
&& edges_radius == other.edges_radius
|
||||
&& edges_tolerance == other.edges_tolerance
|
||||
@@ -1145,6 +1149,32 @@ bool SharpeningParams::operator !=(const SharpeningParams& other) const
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
CaptureSharpeningParams::CaptureSharpeningParams() :
|
||||
enabled(false),
|
||||
autoContrast(true),
|
||||
contrast(10.0),
|
||||
gamma(1.00),
|
||||
deconvradius(0.75),
|
||||
deconviter(20)
|
||||
{
|
||||
}
|
||||
|
||||
bool CaptureSharpeningParams::operator ==(const CaptureSharpeningParams& other) const
|
||||
{
|
||||
return
|
||||
enabled == other.enabled
|
||||
&& contrast == other.contrast
|
||||
&& gamma == other.gamma
|
||||
&& autoContrast == other.autoContrast
|
||||
&& deconvradius == other.deconvradius
|
||||
&& deconviter == other.deconviter;
|
||||
}
|
||||
|
||||
bool CaptureSharpeningParams::operator !=(const CaptureSharpeningParams& other) const
|
||||
{
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
SharpenEdgeParams::SharpenEdgeParams() :
|
||||
enabled(false),
|
||||
passes(2),
|
||||
@@ -2825,6 +2855,8 @@ void ProcParams::setDefaults()
|
||||
prsharpening.deconviter = 100;
|
||||
prsharpening.deconvdamping = 0;
|
||||
|
||||
pdsharpening = {};
|
||||
|
||||
vibrance = {};
|
||||
|
||||
wb = {};
|
||||
@@ -3334,6 +3366,14 @@ int ProcParams::save(const Glib::ustring& fname, const Glib::ustring& fname2, bo
|
||||
saveToKeyfile(!pedited || pedited->resize.height, "Resize", "Height", resize.height, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->resize.allowUpscaling, "Resize", "AllowUpscaling", resize.allowUpscaling, keyFile);
|
||||
|
||||
// Post demosaic sharpening
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.enabled, "PostDemosaicSharpening", "Enabled", pdsharpening.enabled, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.contrast, "PostDemosaicSharpening", "Contrast", pdsharpening.contrast, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.autoContrast, "PostDemosaicSharpening", "AutoContrast", pdsharpening.autoContrast, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.gamma, "PostDemosaicSharpening", "DeconvGamma", pdsharpening.gamma, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.deconvradius, "PostDemosaicSharpening", "DeconvRadius", pdsharpening.deconvradius, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->pdsharpening.deconviter, "PostDemosaicSharpening", "DeconvIterations", pdsharpening.deconviter, keyFile);
|
||||
|
||||
// Post resize sharpening
|
||||
saveToKeyfile(!pedited || pedited->prsharpening.enabled, "PostResizeSharpening", "Enabled", prsharpening.enabled, keyFile);
|
||||
saveToKeyfile(!pedited || pedited->prsharpening.contrast, "PostResizeSharpening", "Contrast", prsharpening.contrast, keyFile);
|
||||
@@ -4414,6 +4454,16 @@ int ProcParams::load(const Glib::ustring& fname, ParamsEdited* pedited)
|
||||
}
|
||||
}
|
||||
|
||||
if (keyFile.has_group("PostDemosaicSharpening")) {
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "Enabled", pedited, pdsharpening.enabled, pedited->pdsharpening.enabled);
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "Contrast", pedited, pdsharpening.contrast, pedited->pdsharpening.contrast);
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "AutoContrast", pedited, pdsharpening.autoContrast, pedited->pdsharpening.autoContrast);
|
||||
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "DeconvGamma", pedited, pdsharpening.gamma, pedited->pdsharpening.gamma);
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "DeconvRadius", pedited, pdsharpening.deconvradius, pedited->pdsharpening.deconvradius);
|
||||
assignFromKeyfile(keyFile, "PostDemosaicSharpening", "DeconvIterations", pedited, pdsharpening.deconviter, pedited->pdsharpening.deconviter);
|
||||
}
|
||||
|
||||
if (keyFile.has_group("PostResizeSharpening")) {
|
||||
assignFromKeyfile(keyFile, "PostResizeSharpening", "Enabled", pedited, prsharpening.enabled, pedited->prsharpening.enabled);
|
||||
assignFromKeyfile(keyFile, "PostResizeSharpening", "Contrast", pedited, prsharpening.contrast, pedited->prsharpening.contrast);
|
||||
|
||||
Reference in New Issue
Block a user