Git Product home page Git Product logo

Comments (11)

aurelienpierre avatar aurelienpierre commented on September 24, 2024

Note that @houz has something like that working, but not it dt

from darktable.

phweyland avatar phweyland commented on September 24, 2024

Looking a bit at this, colorchecker is designed for 49 patches max and is a kind of 1D LUT file (while not RGB but Lab).
3D LUT files can have 256x256x256 patches max. I've opened some with LUT_3D_SIZE 64 (64x64x64 patches). The corresponding file size is above 7Mb. That will impact seriously the preset size.

Note that @houz has something like that working, but not it dt

Where we can find this ?

from darktable.

aurelienpierre avatar aurelienpierre commented on September 24, 2024

The corresponding file size is above 7Mb.

Are you sure ? The LUTs I have tested weight 970 kB max. Given that they are only text files, 7 MB seems quite heavy. Also, we don't have to store them in the database, they can be retrieved from the files like ICC profiles when needed.

from darktable.

phweyland avatar phweyland commented on September 24, 2024

970Kb is for a LUT size = 33 while 7Mb is for LUT size = 66. The one I've downloaded is SLog_WB_Blue.cube but I don't remember where I've got it from.
Is it possible to look at the@houz work ?

from darktable.

aurelienpierre avatar aurelienpierre commented on September 24, 2024

Is it possible to look at the@houz work ?

I don't think it's commited somewhere yet.

from darktable.

phweyland avatar phweyland commented on September 24, 2024

photoflow can read cube files, at least SIZE=33 (SIZE=66 doesn't end). It uses rawtherapee code.
RT seems not to read cube files, but png files instead (HaldCLUT) coming from G'MIC.

from darktable.

phweyland avatar phweyland commented on September 24, 2024

What you describe in the initial post shows that usages are diverse and can be applied at different stages of the development.
Then which RGB space the LUT should be applied to ?

from darktable.

aurelienpierre avatar aurelienpierre commented on September 24, 2024

Then which RGB space the LUT should be applied to ?

Only in the RGB space in which the LUT has been generated. Usually, it's REC2020 or ACES P0.

from darktable.

phweyland avatar phweyland commented on September 24, 2024

Usually, it's REC2020 or ACES P0.

RT, using haldclut png files, checks and uses the lut color space.
Cube file doesn’t contain any color space information.
The lut files can be used also for color space transformation, in fact for any transformation, including mimic a full dt style, for example.
I haven’t the answer, but I think it may be more complex than referring automatically to REC2020 or ACES P0, though they could be the default space. Depending on the rgb space used the rendering will be different, won’t it be?

from darktable.

aurelienpierre avatar aurelienpierre commented on September 24, 2024

I haven’t the answer, but I think it may be more complex than referring automatically to REC2020 or ACES P0, though they could be the default space.

That piece of information is to be provided by the LUT maker.

Depending on the rgb space used the rendering will be different, won’t it be?

Indeed, if you think of an RGB space as a vector sub-space of XYZ, different RGB primaries means different base vector length, so distances are scaled differently. Given that the LUT essentially shifts the RGB coordinates, the shifts have different meanings in XYZ, depending on the RGB space used.

from darktable.

phweyland avatar phweyland commented on September 24, 2024

I would to start on this topic.
I've found a module which have never been merged: haldclut (png file) import (https://github.com/PkmX/darktable). I've tested it and it works.
Having a specific module seems to me more appropriate and simpler than deviating color checker which more an UI to manage color patches.
Starting from there, I would rename it to something like lut3d, and add the following features:

  • select and open cube files
  • select application colorspace (sRGB, linear RGB, Lab, XYZ, ...).

EDIT. I'm now able to open and apply a cube file as an haldclut (png) one.
To be noted: haldclut files are usually more accurate than cube files. The minimum haldclut level seems to be 8, which is equivalent to a cube size = 64. And of course the png file is more size efficient than a text cube one.
I've now some questions.
1- where to place this lut3d module in the pipe ? It is initially placed on the late sRGB section. Ideally the user should be able to choose the place, depending on the usage, camera profile or end grading tweaking.
2- log. As you have mentioned a lot of cube files are designed to log input. We could rely on your unbreak log module. Or we could add an option to lut3d module. In that case we probably have to mimic the black point & dynamic range management too. What's the best ?

from darktable.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.