darktable-org / darktable-org/darktable
Merge scene-referred contrast module
@jandren is already working on this.
Since Mar 22, 2026.
- Dominant language
- C
- Stars
- 13.1k
- Forks
- 1.4k
- Avg merge
- 22h 14m
- Merged PRs (30d)
- 198
Description
I volunteered over at pixls to make a new PR from this closed PR:
https://github.com/darktable-org/darktable/pull/20447
But I would like to discuss a plan for how to do it before putting any time into coding.
First some references to what has happened.
Initial simple module with one frequency scale by @wilecoyote2015: https://discuss.pixls.us/t/experiments-with-a-scene-referred-local-contrast-module-proof-of-concept/55402
Discussion quickly turned into a lets-do-more situation which eventually led to what Christian proposed for his PR and documented in https://discuss.pixls.us/t/contrast-management-rgb-a-new-scene-referred-approach-poc/56004
TLDR
First we had a module that increased the local contrast (high pass) defined around a edge aware low pass filter (EIGF)
Then the module evolved into 5 copies of this filter, plus noise rejection, a luma dependent effect, and a chroma dependent effect.
Proposal for how to merge this
- Begin with a basic version of the module, one eigf filter and a noise suppression method.
- Add OpenCL support
- Add more controls such as luma and chroma dependence
- After more user input and testing, evaluate how to potentially include more filter instances inside the module which would add enough value to users workflow compared to just instancing the module a couple of times.
How does this sound to the maintainer team?
Adding everything at once means a large review effort and also makes it harder for me to take responsibility for the merged work.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.