Adding modules after display convertion?

Hi there friends,

I have always kepts all my modules and edits in the scene-referred part of the pipeline, as I thought it was where all your editing should happen. However, recently I came across some examples where people moved the desired modules above their tone mapper of choice. Furthermore, reading the documentation for some of the modules, I saw they even have covered what the expected results are if you activate the module after or before filmic/sigmoid.

This made me curious about other workflows and what the decision process is between moving a module above the tone mapper or keeping it in the scene-referred side of things. Very general, broad question, but since I have 0 idea about when or how to do it, I can only ask in very broad terms.

Thanks for any input!

Usually, modules are at the right place by default.

Those that clip are really dangerous to use on scene-referred data.

I regularly use local contrast, and that’s a display referred module. It has never been deprecated.

There are some Lab-based modules that do not clip, and are placed in the scene-referred portion of the pipeline by default. If memory serves me well, contrast equalizer is one such module.

1 Like

Maybe outdated (only the developers could tell), but potentially useful:

It mentions some modules here: PIXLS.US - Darktable 3:RGB or Lab? Which Modules? Help!

And lists potentially problematic ones here: PIXLS.US - Darktable 3:RGB or Lab? Which Modules? Help!

Hey Lucas! I appreciate you posing the question — I’d also like to hear what others have to say.

I generally view my workflow similar to that of an audio signal flow (like in music production), in order of:

  1. preamplification (exposure)

  2. EQ (i.e. color calibration, color balance RGB, color eq)

  3. multiband compression (massaging, shaping, and rolling off highlights and shadows through different tone curves, tone equalizers, and/or brilliance adjustments in color balance RGB)

    [note: tone curve modules auto-populate after the tone mapper, so I have to move them back into the scene-ref side manually]

  4. effects (diffuse and sharpen, grain, etc.)

  5. Sigmoid or Filmic RGB as ā€œmaster busā€ or final master curve with finishing tweaks to contrast and w/b points.

With this framework/interpretation I choose not to overlay any signals after the final tone mapper, as it would be out of continuity with the rest of the ā€œmix.ā€

Since they are limited to 0…1 input → 0…1 output, how would you use them in the scene-referred part of the pipe?

I suppose I merge them in the way that Aurelien says in the article ā€œhides the misery,ā€ but I like the results I get. I’ve been trying to duplicate the look with Tone Equalizer but can’t manage to pull it off.

Some modules are coming after the tonemapper for a reason…they expect the data in 0-1 range and 50% gray and their GUI will only access that… you can move whatever you want but I’m not sure why that is a benefit to move the tone curves and other module just to have them before the tone mapper…DT has a prescribed or default sequence independent of how and when you enable them…if you hit the active module tab a second time it will list all the modules in DT and from the bottom up is the default order… changes are usually done out of order using ctrl-shift and dragging the module to a new location sometimes as you build and edit because you want to make a change to say a color or whatever but on top of the current state of the edit…if you make changes in a module that comes early in the pipeline it might not be as simple as that change is processed by the entire pipeline…you will see Boris often make such moves when he demonstrates his edits…for example moving an instance of color calibration to further modify color in the edit but from the point at which he has crafted the image not the default position…

How do you do that? Any example?

The last couple of play raw threads I contributed to have two tone curve modules in the scene-ref zone. I use them in series to boost midtones and roll-off highlights and shadows.

They need to come before the tone mapper because I use them to incrementally boost midtones up against the final Sigmoid or Filmic RGB curve.

And I have the inactive module tab enabled by default to ensure everything is in the right order.

[the numbered list is not necessarily the strict order of the modules, but rather the order I think through an edit — apologies for not being more clear about that]

If its a midtone bump does the midtone brillance not work nicely or the power slider in the 4-way tab … you can even tweak that with the CB mask…

Another one I use often is selecting a region for the gray fulcrum slider in RGB CB… then everything above that is lightened and everything below is darkened… this can be really useful to add targeted contrast much as you might using a curve…

Note. I am not criticizing your methods …they work for you and really that is all that matters in that regard… :slight_smile:

1 Like

OK, so I’ve checked one of them (Play with the garden's residents - #19 by tripling.paul, DSCF8007_01.RAF.xmp), and see that you use exposure to constrain the ā€˜scene-referred’ part of the pipeline to 0…1, underexposing everything (moving the mid-grey to much lower values than 18%):

But then that means that some modules, which actually expect mid-grey to be at 18% to divide the image into shadows, midtones and highlights, like color balance rgb, would not work without messing with their mid-grey assumption (yes, I notice you don’t use the module in that edit). And then you use sigmoid as a simple contrast curve, not as a tone mapper, extending the dynamic range, rather than compressing it.
RGB parade and histogram before sigmoid – nothing even comes close to 100%:
image
image

After:
image
image

There’s nothing wrong with that, per se, and the processed flower really looks impressive. It’s just not ā€˜by the book’ usage of the modules, I guess. :slight_smile:

2 Likes

The advice I give my students when I teach DT is that you should only move modules if you know the when and why that you need to move them. So probably trust the developers to know the best location for modules. There are some good explanations of the developers logic in choices given in the posts above.

When I use negadoctor and am reversing scanned images negadocotor has to be placed earlier in the pipeline before exposure. See screen shot.
image