Adding luminance impulse denoising and directional pyramid denoising.
This commit is contained in:
@@ -85,7 +85,7 @@ void ProcParams::setDefaults () {
|
||||
|
||||
colorShift.a = 0;
|
||||
colorShift.b = 0;
|
||||
|
||||
|
||||
lumaDenoise.enabled = false;
|
||||
lumaDenoise.radius = 1.9;
|
||||
lumaDenoise.edgetolerance = 2000;
|
||||
@@ -94,6 +94,12 @@ void ProcParams::setDefaults () {
|
||||
colorDenoise.edgesensitive = false;
|
||||
colorDenoise.radius = 1.9;
|
||||
colorDenoise.edgetolerance = 2000;
|
||||
|
||||
impulseDenoise.enabled = false;
|
||||
|
||||
dirpyrDenoise.enabled = false;
|
||||
dirpyrDenoise.luma = 10;
|
||||
dirpyrDenoise.chroma = 10;
|
||||
|
||||
sh.enabled = false;
|
||||
sh.hq = false;
|
||||
@@ -236,6 +242,14 @@ int ProcParams::save (Glib::ustring fname) const {
|
||||
// save colorShift
|
||||
keyFile.set_double ("Color Shift", "ChannelA", colorShift.a);
|
||||
keyFile.set_double ("Color Shift", "ChannelB", colorShift.b);
|
||||
|
||||
// save impulseDenoise
|
||||
keyFile.set_boolean ("Impulse Denoising", "Enabled", impulseDenoise.enabled);
|
||||
|
||||
// save dirpyrDenoise
|
||||
keyFile.set_boolean ("Directional Pyramid Denoising", "Enabled", dirpyrDenoise.enabled);
|
||||
keyFile.set_integer ("Directional Pyramid Denoising", "Luma", dirpyrDenoise.luma);
|
||||
keyFile.set_integer ("Directional Pyramid Denoising", "Chroma", dirpyrDenoise.chroma);
|
||||
|
||||
// save lumaDenoise
|
||||
keyFile.set_boolean ("Luminance Denoising", "Enabled", lumaDenoise.enabled);
|
||||
@@ -443,6 +457,18 @@ if (keyFile.has_group ("Color Shift")) {
|
||||
if (keyFile.has_key ("Color Shift", "ChannelA")) colorShift.a = keyFile.get_double ("Color Shift", "ChannelA");
|
||||
if (keyFile.has_key ("Color Shift", "ChannelB")) colorShift.b = keyFile.get_double ("Color Shift", "ChannelB");
|
||||
}
|
||||
|
||||
// load impulseDenoise
|
||||
if (keyFile.has_group ("Impulse Denoising")) {
|
||||
if (keyFile.has_key ("Impulse Denoising", "Enabled")) impulseDenoise.enabled = keyFile.get_boolean ("Impulse Denoising", "Enabled");
|
||||
}
|
||||
|
||||
// load dirpyrDenoise
|
||||
if (keyFile.has_group ("Directional Pyramid Denoising")) {
|
||||
if (keyFile.has_key ("Directional Pyramid Denoising", "Enabled")) dirpyrDenoise.enabled = keyFile.get_boolean ("Directional Pyramid Denoising", "Enabled");
|
||||
if (keyFile.has_key ("Directional Pyramid Denoising", "Luma")) dirpyrDenoise.luma = keyFile.get_integer ("Directional Pyramid Denoising", "Luma");
|
||||
if (keyFile.has_key ("Directional Pyramid Denoising", "Chroma")) dirpyrDenoise.chroma = keyFile.get_integer ("Directional Pyramid Denoising", "Chroma");
|
||||
}
|
||||
|
||||
// load lumaDenoise
|
||||
if (keyFile.has_group ("Luminance Denoising")) {
|
||||
@@ -648,6 +674,10 @@ bool ProcParams::operator== (const ProcParams& other) {
|
||||
&& wb.temperature == other.wb.temperature
|
||||
&& colorShift.a == other.colorShift.a
|
||||
&& colorShift.b == other.colorShift.b
|
||||
&& impulseDenoise.enabled == other.impulseDenoise.enabled
|
||||
&& dirpyrDenoise.enabled == other.dirpyrDenoise.enabled
|
||||
&& dirpyrDenoise.luma == other.dirpyrDenoise.luma
|
||||
&& dirpyrDenoise.chroma == other.dirpyrDenoise.chroma
|
||||
&& lumaDenoise.enabled == other.lumaDenoise.enabled
|
||||
&& lumaDenoise.radius == other.lumaDenoise.radius
|
||||
&& lumaDenoise.edgetolerance == other.lumaDenoise.edgetolerance
|
||||
|
Reference in New Issue
Block a user