History showing wrong adjustments from applying a preset

I don’t normally use the History but I just had a play and found something that seems odd to me.

Here are the adjustments are applied to an image when I apply the “2 - DxO Optical Corrections only” preset…

Capture d’écran 2021-01-15 à 15.12.42

Here are the adjustments that the History panel lists as being part of applying that preset…

History


Why have Color Rendering and Noise Reduction been added to the history for this action when they are have never been set, either on the image or as part of the preset

And why aren’t all the settings for the others listed in the same way they are in the appropriate tool?

@StevenL can I rattle your cage with this? :wink:

1 Like

Strange… Also, not all tools report their settings.

  • CA has two switches and two sliders -> reports one switch
  • Vignetting has a selector and two sliders -> reports one slider
    etc.

Hi @Joanna,
I wasn’t able to reproduce your issue (I tried having an image with just those corrections, and when the ‘No corrections’ preset was applied, only the previously active corrections were included in the History list.

@platypus: not all corrections have the same ‘granularity’ in terms of History. We are adding the missing details release after release.

Steven.

Well, I’ve found the cause of the extra settings. Whoever wrote the “2 - DxO Optical Corrections only” preset left a whole load of cruft inside it, including parts of the colour rendering and noise reduction tools.

Here’s the DxO version of optical corrections only…

Preset = {
  Version = "12.0",
  IsRAWOnly = false,
  IsSystem = true,
  LocalizedInfo = {
    en = {
      DisplayName = "2 - DxO Optical Corrections only",
    },
    fr = {
      DisplayName = "2 - Corrections Optiques DxO seules",
    },
    ja = {
      DisplayName = "2 - DxO 光学補正のみ",
    },
    de = {
      DisplayName = "2 - Nur DxO optische Korrekturen",
    },
  },
  Settings = {
    Version = "15.0",
    Base = {
      AnamorphosisActive = false,
      AnamorphosisHorizontal = 100,
      AnamorphosisRadial = 150,
      AnamorphosisType = "Spherical",
      AnamorphosisVertical = 0,
      ArtisticVignettingActive = false,
      ArtisticVignettingCenterPoint = {
        0.5,
        0.5,
      },
      ArtisticVignettingCornerAttenuation = 0,
      ArtisticVignettingMidFieldAttenuation = 50,
      ArtisticVignettingRoundness = 50,
      ArtisticVignettingTransition = 0,
      BlurActive = true,
      BlurActiveAuto = true,
      BlurDetails = 50,
      BlurIntensity = 0,
      BlurSmoothTransitions = 50,
      ChannelMixerActive = false,
      ChannelMixerBlue = 0,
      ChannelMixerCyan = 0,
      ChannelMixerGreen = 0,
      ChannelMixerMagenta = 0,
      ChannelMixerRed = 0,
      ChannelMixerYellow = 0,
      ChromaticAberrationActive = true,
      ChromaticAberrationIntensity = 100,
      ChromaticAberrationIntensityAuto = true,
      ChromaticAberrationLateralActive = true,
      ChromaticAberrationPurpleActive = false,
      ChromaticAberrationSize = 4,
      ChromaticAberrationSizeAuto = false,
      ColorAccentuationActive = false,
      ColorFilterActive = false,
      ColorIntentAutoActive = true,
      ColorModeContrast = 0,
      ColorModeFilter = "CoolTone",
      ColorModeFilterIntensity = 100,
      ColorModeSaturation = 0,
      ColorModeStyle = "BlackAndWhite",
      ColorModeStyleIntensity = 100,
      ColorRenderingActive = false,
      ColorRenderingDCPProfile = "",
      ColorRenderingICCProfile = "",
      ColorRenderingIntensity = 100,
      ColorRenderingIntent = 25,
      ColorRenderingType = "Original",
      ContrastControlGroupActive = false,
      ContrastEnhancementActive = false,
      ContrastEnhancementGlobalIntensity = 0,
      ContrastEnhancementHighlightIntensity = 0,
      ContrastEnhancementMidlightIntensity = 0,
      ContrastEnhancementLowlightIntensity = 0,
      CropActive = false,
      CropAuto = true,
      CropRatio = 0,
      CropRect = {
        0,
        0,
        1,
        1,
      },
      DistortionActive = true,
      DistortionFocus = 128,
      DistortionIntensity = 1,
      DistortionKeepRatio = true,
      DistortionType = "Auto",
      DistortionTypeAuto = false,
      EdgeTextureID = "fuitelum1",
      EdgeTexturingActive = false,
      EdgeTexturingApplyToning = false,
      EdgeTexturingOpacity = 0.5,
      EdgeTexturingPosition = "Random",
      EdgeTexturingSeed = 0,
      ExposureActive = false,
      ExposureAutoMode = "Manual",
      ExposureBias = 0,
      FrameID = "1",
      FramingActive = false,
      FramingApplyToning = false,
      FramingOutside = false,
      FramingScaleFactor = 0.25,
      FramingSeed = 0,
      GrainActive = false,
      GrainFilmFormat = "24x36",
      GrainIntensity = 100,
      GrainSize = 1.0,
      GrainSizeAuto = false,
      GrainType = "Original",
      HazeRemovalActive = false,
      DehazingValue = 50,
      HighlightToningStyle = "Sepia",
      HighlightToningIntensity = 100,
      HighlightToningDisableDesaturation = true,
      HighlighsLowlightsSeparation = 0.5,
      HSLActive = false,
      HSLMaster = { 
        Hue = 0,
        Saturation = 0
      },
      HSLHueSlices = {
        { 
          FadeInStart = 325,  
          FadeInEnd = 340,  
          FadeOutStart = 9,   
          FadeOutEnd = 26,   
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0,   
          Uniformity = 0,
          Label = "Red",
        },
        { 
          FadeInStart = 9,    
          FadeInEnd = 26,
          FadeOutStart = 37,   
          FadeOutEnd = 47,   
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0,   
          Uniformity = 0,
          Label = "Orange",
        },
        { 
          FadeInStart = 37,   
          FadeInEnd = 47,   
          FadeOutStart = 52,   
          FadeOutEnd = 62,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0,
          Uniformity = 0,          
          Label = "Yellow",
        },
        { 
          FadeInStart = 52,   
          FadeInEnd = 62,  
          FadeOutStart = 150,  
          FadeOutEnd = 170,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0, 
          Uniformity = 0,          
          Label = "Green",
        },
        { 
          FadeInStart = 150,  
          FadeInEnd = 170,  
          FadeOutStart = 195,  
          FadeOutEnd = 210,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0,
          Uniformity = 0,          
          Label = "Cyan",
        },
        { 
          FadeInStart = 195,  
          FadeInEnd = 210,  
          FadeOutStart = 245,  
          FadeOutEnd = 268,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0,
          Uniformity = 0,
          Label = "Blue",
        },
        { 
          FadeInStart = 245,  
          FadeInEnd = 268,  
          FadeOutStart = 280,  
          FadeOutEnd = 300,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0, 
          Uniformity = 0,
          Label = "Purple",
        },
        { 
          FadeInStart = 280,  
          FadeInEnd = 300,  
          FadeOutStart = 325,  
          FadeOutEnd = 340,  
          Hue = 0,   
          Saturation = 0,   
          Luminance = 0, 
          Uniformity = 0,
          Label = "Magenta",
        },
      },
      InpaintingActive = false,
      InpaintingMask = {
      },
      KeystoningActive = false,
      KeystoningHorizonActive = false,
      KeystoningHorizonAuto = true,
      KeystoningHorizon = 0,
      KeystoningHVRatio = 0,
      KeystoningKeepCenter = true,
      KeystoningLeftRight = 0,
      KeystoningMode = "Auto",
      KeystoningAutoMode = "Full",
      KeystoningPoints = {
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
      },
      KeystoningUpDown = 0,
      KeystoningBlendingIntensity = 100,
      KeystoningKeepOriginalSize = false,
      LightingActive = false,
      LightingMode = "V3Slight",
      LightingV2LocalContrastAmount = 0,
      LightingV3BlackPoint = 0,
      LightingV3RegionPriorityMode = "None",
      LightingPriorityRegions = {
      },
      LightingV3Highlights = 0,
      LightingV3Intensity = 25,
      LightingV3MidTones = 0,
      LightingV3Shadows = 0,
      LightingV3WhitePoint = 0,
      LocalParameters = {
      },
      LocalParametersActive = false,
      LowlightToningStyle = "Gold",
      LowlightToningIntensity = 100,
      LowlightToningDisableDesaturation = true,
      MicroContrastAuto = true,
      NoiseActive = false,
      NoiseChrominance = 100,
      NoiseChrominanceAuto = true,
      NoiseCrossTalkAuto = true,
      NoiseCrossTalkIntensity = 30,
      NoiseDeadPixelAuto = true,
      NoiseDeadPixelIntensity = 0,
      NoiseLuminance = 100,
      NoiseLuminanceAuto = true,
      NoiseLuminanceContrast = 100,
      NoiseLuminanceContrastAuto = true,
      NoiseRemovalMethod = "standard",
      NoiseRemoveMoireActive = false,
      NoiseRemoveMoireAuto = true,
      NoiseRemoveMoireIntensity = 0,
      RedEyeCorrectionActive = false,
      RedEyeLocateMode = "DetectedEyes",
      RedEyeEllipses = {
      },
      RedEyeRegions = {
      },
      SelectiveTonalControlActive = false,
      TextureID = "grain4b",
      TexturingActive = false,
      TexturingApplyToning = false,
      TexturingOpacity = 0.5,
      TexturingSeed = 0,
      TiltShiftActive = false,
      TiltShiftBlurShapeID = "Circular_medium",
      TiltShiftGradient1 = {
        BlurRadius = 40,
        NoCorrectionPoint = {
          0.5,
          0.7,
        },
        FullCorrectionPoint = {
          0.5,
          0.9,
        },
      },
      TiltShiftGradient2 = {
        BlurRadius = 40,
        NoCorrectionPoint = {
          0.5,
          0.3,
        },
        FullCorrectionPoint = {
          0.5,
          0.1,
        },
      },
      OPTiltShiftShouldSynchronizeLines = true,
      OPTiltShiftShouldSynchronizeIntensities = true,
      ToneCurveActive = false,
      ToneCurveBlueGamma = 1,
      ToneCurveBluePoints = {
        0,
        0,
        1,
        1,
      },
      ToneCurveGreenGamma = 1,
      ToneCurveGreenPoints = {
        0,
        0,
        1,
        1,
      },
      ToneCurveMasterGamma = 1,
      ToneCurveMasterPoints = {
        0,
        0,
        1,
        1,
      },
      ToneCurveRedGamma = 1,
      ToneCurveRedPoints = {
        0,
        0,
        1,
        1,
      },
      ToningActive = false,
      ToningMode = "single",
      UnsharpMaskActive = true,
      UnsharpMaskActiveAuto = true,
      UnsharpMaskIntensity = 100,
      UnsharpMaskIntensityOffset = 0,
      UnsharpMaskRadius = 0.5,
      UnsharpMaskThreshold = 4,
      VibrancyIntensity = 0,
      VignettedBlurActive = false,
      VignettedBlurBlendFactor = 100,
      VignettedBlurCenterPoint = {
        0.5,
        0.5,
      },
      VignettedBlurRadius = 0,
      VignettedBlurRoundness = 50,
      VignettedBlurTransition = 50,
      VignettedBlurVignetteSize = 100,
      VignettedBlurMode = "Vignetting",
      VignettingActive = true,
      VignettingClipping = 50,
      VignettingClippingAuto = true,
      VignettingIntensity = 100,
      VignettingIntensityAuto = true,
      VignettingMidFieldIntensity = 0,
      VignettingType = "Auto",
      VignettingTypeAuto = false,
      WatermarkActive = false,
      WatermarkImagePath = "",
      WatermarkImageOpacity = 1,
      WatermarkImagePosition = "BottomRight",
      WatermarkImageScale = 0.15,
      WatermarkImageBottomMargin = 0,
      WatermarkImageTopMargin = 0,
      WatermarkImageLeftMargin = 0,
      WatermarkImageRightMargin = 0,
      WatermarkImageRotation = 0,
      WatermarkImageBlendMode = "Normal",
      WatermarkText = "",
      WatermarkTextColor = {1, 1, 1},
      WatermarkTextOpacity = 1,
      WatermarkTextPosition = "Bottom",
      WatermarkTextSize = 0.05,
      WatermarkTextBottomMargin = 0,
      WatermarkTextTopMargin = 0,
      WatermarkTextLeftMargin = 0,
      WatermarkTextRightMargin = 0,
      WatermarkTextRotation = 0,
      WatermarkTextBlendMode = "Normal",
      WatermarkTextFont = "ArialMT",
      WhiteBalanceRawActive = false,
      WhiteBalanceRawColor = {
      },
      WhiteBalanceRawInputImageColor = {
      },
      WhiteBalanceRawPreset = "AsShot",
      WhiteBalanceRawTemperature = 5400,
      WhiteBalanceRawTemperatureAuto = true,
      WhiteBalanceRawTint = 0,
      WhiteBalanceRawTintAuto = true,
      WhiteBalanceRGBActive = false,
      WhiteBalanceRGBColor = {
      },
      WhiteBalanceRGBTemperature = 5200,
    },
  },
}

And here’s mine…

Preset = {
	Settings = {
		Base = {
			BlurActive = true,
			BlurActiveAuto = false,
			BlurDetails = 50,
			BlurIntensity = 0,
			BlurSmoothTransitions = 50,
			ChromaticAberrationActive = true,
			ChromaticAberrationIntensity = 100,
			ChromaticAberrationIntensityAuto = true,
			ChromaticAberrationLateralActive = true,
			ChromaticAberrationPurpleActive = false,
			ChromaticAberrationSize = 4,
			ChromaticAberrationSizeAuto = true,
			DistortionActive = true,
			DistortionIntensity = 1,
			DistortionKeepRatio = true,
			DistortionType = "Auto",
			DistortionTypeAuto = false,
			VignettingActive = true,
			VignettingClipping = 50,
			VignettingClippingAuto = true,
			VignettingIntensity = 0,
			VignettingIntensityAuto = true,
			VignettingMidFieldIntensity = 0,
			VignettingType = "Auto",
			VignettingTypeAuto = true,
		},
		Version = "15.0",
	},
	Version = "15.0",
}

Wow! Thanks for your work. I’ll send all of this to our dev teams!

Steven.

Well “sussed out”, Joanna !

In fact, it looks like what they did was to take the standard “1 - DxO Default” preset and swap some settings from true to false … Job done !

I’m guessing there was actually positive intention for this approach; so as to, otherwise, have all settings assigned to common default values, regardless of which initial preset was applied (such that when a tool is switched “On” it defaults to the same settings for both presets).

John

Thanks for drawing our attention to this, Joanna - it spurred me to take a closer look at my own default settings.

Also, I noticed a couple of little anomalies … they don’t actually cause any technical problems, other than (potential) confusion for human observers;

image … and … image

In both these cases, the assignment of “Auto” to the ~Type setting results in ~TypeAuto being set to TRUE, regardless of the assignment here to “false”.

John

Hi @Joanna & @platypus,

I’ve taken a close look, and as far as I see it, everything is normal there.

The preset “Optical Corrections only” is a complete preset, as are all the root presets that ship with PhotoLab. It means that every corrections and every correction’s setting is included in it. This is intended to be as such. The goal of this preset is to reset everything, and enable only the optical corrections. If you intend to have a preset that only enables the optical corrections but doesn’t touch the rest, then you had the right idea in creating a partial preset with only optical corrections.

As for what is displayed in the History, the rule is that every value that changes is displayed, regardless of whether it has an impact or not. Some values in CA or Vignetting are not showing for the sole reason that they didn’t change at all. Other values, as you’re seeing, will appear because the value itself changed, even if the correction is disabled and thus this change will have no impact on the image.

Some could argue that in this case, it would probably be better to not display those values because they don’t have an impact on the image. However, there are two main concerns with this approach:

  • First, the value actually changed. We feel that the history needs to track changes, and discriminating between values that incur a change or not can have different interpretations, so it wouldn’t be entirely clear.
  • Second, once you have made that change, if you decide not to show such a value, then what happens when you actually enable the palette? You would then have to display the previous value change at that time, otherwise the history would become incorrect (a change that was made is never displayed in history). And so you would have to remember that change to display it later, and decide when to display it (and that can get complicated pretty fast), so then it’s probably better to display it immediately, as it reflects what happened anyway.

So that’s the road that is taken with the History, and apart from any potential bug, the rule stated above that everything that changes is displayed should stay true all the time, which should explain quite a bit.

2 Likes

Thanks, @kettch, good to know what history’s concept is.

There is one thing though, that does not completely belong to this thread, I’ve therefore posted it here:

In that case, maybe the problem is with inconsistency in how some presets are written.

Take this example…

I started by applying the ‘1 - DxO Standard preset’

Then I applied the ‘5 - No correction’ preset

Obviously, from what you say, these are all the tools that were “reset” to their default values.

But then I applied the ‘2 - Optical Corrections only’ preset

2 - Optical Corrections only

Look at the entry for the Color Rendering tool. It was not enabled before applying the ‘2 - Optical Corrections only’ preset and it is still not enabled after. Neither preset required this tool and yet there was a change to the setting from one preset that doesn’t use it to another preset that doesn’t use it.

Likewise the Noise Reduction is not required in either preset and yet the settings for that tool changed.

So, it looks like it is not so much a problem with the history list as more a problem with writing inconsistent default settings for some tools into the presets.

To my mind, this complicates and makes longer the history list entries for applying presets.

Does this make sense or am I being just a bit too picky? :blush: :nerd_face:

1 Like

Indeed, there are significant differences… But in this case, I would say the main differences are in the No Correction preset. The values are mostly identical between the Default & Optical Correction Only presets.

This can be a bit surprising, but I don’t think this is a major issue either. We’ll review and maybe update some values in the No Correction because there might be no valid reason for them being different. However, whatever we do, these cases will still appear as soon as you use your own presets with specific values.

1 Like