Masking birds and other animals with a lot of geometry is a pain, it’s 5-10 seconds for auto vs 120 seconds or more doing it manually, and ending up with a worse result.
It’s not a game changer, just a time saver. Come to think of it, the Darktable way might be an AI that draws the shapes and parameterizes the mask.
That’s all theoretical of course. That AI doesn’t exist (yet).
Dont get me wrong. I am not opposed to AI masking capabilities. It certainly is convenient and simplifies workflows.
Its addition might even open dt up for use in high volume + fast turnaround photography situations… in which case it really would be a game-changing addition…but my gut very much doubts such an uptake.
EDIT - I was correct in assuming i am the wierdo. In the grand scheme of things, I do not spend much of my life masking…neither in absolute terms nor as a ratio of masking to total processing time.
It’s what was being discussed here if I understood the discussion correctly, turn any raster mask into the path structure currently used by dts masks
Right, to me if AI masking is used in a way where it ends-up creating a path we are good as it is fully integrated into darktable workflow this way. But I’m not saying this is easy
I disagree. Isn’t that part of the artistic challenge? Challenge our human capabilities and improve?
Another application that could be useful is depth-based processing, I explored it a bit here, I think adding a bit of fog in the background or manipulation exposure can be beneficial in some cases. It can be done with masks to some extend but it’s gonna be hard to beat a good model that gives you a precise depth-mask.
It could be good to see Machine Learning algorithms added to parametric mask selections but that would require either very large local image LLMS to process the requests or some external internet callouts. But since there is no central anything in darktable, it’s hard to imagine how anyone could create access to training data necessary to make ML work.
Even simple edge detection requires training data that has to be stored somewhere either centrally or through some P2P protocols - both of which seems out of scope for how darktable is designed. IMHO.
That would be deeply disturbing. However, I looked at Adobe’s legal terms and they include the following:
Generative AI. We will not use your Local or Cloud Content to train generative AI models except for Content you choose to submit to the Adobe Stock marketplace, and this use is governed by the separate Adobe Stock Contributor Agreement.
No. I gain nothing by using an inferior tool. Especially tracing a path with a mouse which itself is already a tool with many limitations and not very ergonomic. The artistry is in knowing that you need a mask, for what purpose, and what effect it will have on an image.
I would rather spend the time I save masking actually editing the image itself, or better yet, taking photographs or practicing another art form like a musical instrument.
We have always as humans strived for better tools and ways to do menial work in a more efficient way, and this is just another one of those ways. I don’t even see masking objects as “art”, its just boring work.
I believe certain manual processes are important, and I probably wouldn’t be bothered if I had to trace an object with a pencil, but doing so with a mouse is just torture
Was it a waste of time to implement sigmoid as an alternate tonemapper to filmic? You might check the discussions here or at the initial pull request in GitHub.
Was it a waste of time to work on getting a windows release of darktable? You might check all those ‚until hell freezes over‘ discussions.
What happened? Opinion changed, Hell froze over, sigmoid implementation (that ‚waste of time‘ to use your words) was convincing enough to replace filmic as default
AI is much more than just using LLMs fort this or that. Keep your mind open and don’t say no to something you can’t imagine ( that ‚no one needs it’ habit could be seen in times of first trains, automobiles etc.pp. Even a mobile phone without physical keys was seen as waste of development time )
Why?
- Ten year old shots are from Summer 2015. How many of us still work on those shots?
- As long as the modules used for editing in 2025 are still part of dt in 2035, there should not be any problem
Well to be fair a single dt dev was against it’s implementation and integration. The same dev who wrote Filmic
Because LLMs inherently use randomness to avoid local minima. By design, they do not produce the same results twice for identical inputs.
One could design an ML system to behave otherwise. But that comes with its own challenges (local minima, overfitting).

Ten year old shots are from Summer 2015. How many of us still work on those shots?
Working on old images is probably not that common (although… see below). But you may need a new export of such an image, without wanting to modify the existing edit.
And, I know that my editing skills have changed over the years, as have my preferences. So I might want to rework an old image. So knowing that what I see now is what I created x years ago helps in deciding what to change. If the effects of a module can change over time, that gets difficult (and obsoletes your experience with the tools…)
And even aside of all that, darktable made at least an implicit promise to maintain compatibility. Breaking such a promise is a good way to lose (the confidence of) users.

As long as the modules used for editing in 2025 are still part of dt in 2035, there should not be any problem
Code is one thing, External files are a different matter, and much easier to mess up. And if the dataset you used years ago is no longer available, you cannot reproduce that old edit.
And that issue arises with the current fashion in AI, where the models require large datasets (and lots of calculating power) when used. The neural network type of AI also requires large datasets and power, but only while training the model. Once trained, use requires a (much smaller) set of weights and only a fraction of the calculating power… (the difference between iteratively fitting a curve and using that fitted curve)

Because LLMs inherently use randomness to avoid local minima. By design, they do not produce the same results twice for identical inputs.
Sorry, I don’t understand how LLMs (= large language models) are relevant for Darktable or this discussion. They are for generating text.

Let’s add a new model, multi-megabytes and be sure to keep it around…
I am not sure we are talking about the same thing. Generic edge detection neural networks usually operate on small pixel patches (think 7x7), and have a few tens of layers. We are talking about a few kilobytes of weights. Of course you can go larger, and more complex, but even simple stuff would help a lot.

Why?
Because that’s darktable promise since day 1.
Because of that we’ve strive hard to ensure there is stable output across versions.
Because of that we maintain a regression testsuite of 174 tests to ensure that works done on optimization or rework of pixelpipe will not break old edits (diff if checked to be < to 2dE).
The edits is your work, many of us spend a huge amount of time working on making the pictures look better. Do you really want the darktable team to say “well we have changed some defaults and optimized things around, you should review your olds edits as most of them will be fully broken and you need to apply this and that to compensate for the new (better?) modules way of working.”
Don’t tell me we’ve done all that for nothing.

Because LLMs inherently use randomness to avoid local minima. By design, they do not produce the same results twice for identical inputs.
One could design an ML system to behave otherwise. But that comes with its own challenges (local minima, overfitting).
Generative models that use randomness during generation use pseudorandom number generator, meaning they are reproducible if you fix the seed. You can download a model from 4 years ago and run it with the same input & seed, you gonna get the same result. Reproducibility isn’t a difficult issue, specially since we’re not really talking about generative models here.

Generative models that use randomness during generation use pseudorandom number generator, meaning they are reproducible if you fix the seed.
With recursive neural networks, miniscule changes can amplify very quickly. They become nondeterministic quickly for rounding differences in the input data, even with a seeded RNG.
(Sorry I said “LLM” before, I meant generative neural networks in general. Generative usually implies RNG. And most current networks are recursive, and thus amplify differences pseudo-nondeterministically.)
I am 100% AGAINST the integration of any AI tools used in darktable! By AI, I mean any tool that is trained on a very large dataset, or used to generate/remove content. That includes AI masking, AI noise reduction, and of course content modification. Here is why:
- AI requires a lot of energy to use. While all software does, AI requires an especially high amount of energy to train. Chances are, models will also be updated frequently. So, I think it crosses the boundary of frivolousness where we use so much energy to do something we should be doing ourselves and that in particular is disrespectful in an environment where we are using so much energy that actually disrupts the environment.
(Yes, I don’t have to use it myself, but I like supporting a software at least by using it that doesn’t use AI.)
-
AI in my opinion is not really good for photography. It is all about production of images rather that artistic image creation. Masking for example encourages making large numbers of images, and reduces photo processing to a process that feels too automatic. Of course, again, I am free not to use it. But if we really love photography, we should champion for not using it.
-
Local models, remote models (damned if you do, damned if you don’t): if the model is remote, then it encourages the dependence of some large company like Amazon. If it’s a local model, then users would be forced to download a larger program. Look at DxO, it’s over a gigabyte. Darktable does what it does in just a couple hundred megs. Very efficient it is. But even if an AI model was an optional extra download, or it wasn’t that large, it would still force AI code to be included in a program for people that are against AI.
Overall, I consider a lack of AI to be one of darktable’s greatest strengths. The fact is, a lot of today’s culture and the big tech companies promote AI. We start using it and tend to think that it makes life “better”. But I for one think that there is some merit to selecting a subject by hand. For example, if you’re sharpening, you might not actually want the entire subject selected because it’s more natural to sharpen the parts that are most in focus. And I also think there is great merit in not using enormous amounts of energy when photo editing should actually be a peaceful process of contemplation on fewer, better images, rather than thousands of mediocre ones.
So, I think AI in general actually makes things worse, and for a huge energy expenditure that isn’t warranted when we should be sparing about our energy usage when the planet is warming because of our wanton usage. It’s cheap so we use it.
I am just a user of darktable, it’s true. But I also think not all innovation is good, and that it’s reached a point of diminishing returns in many areas. Computation and AI is one of them: computer technology is starting to infect life beyond the point of usefulness, and I think it’s a good thing to draw a line with AI.