Git Product home page Git Product logo

Comments (9)

darkelectron avatar darkelectron commented on June 30, 2024

You can create a preset with the settings of “embedded metadata”, and auto-apply that preset to your Tamron lens. You can also have it only apply to the case of: Fujifilm X + Tamron 17-70/2.8.

Source:

from darktable.

hqhoang avatar hqhoang commented on June 30, 2024

Yeah, I do use auto-preset on other modules (exposure, color calibration, ...) However, I don't always apply lens correction, only about half of the time (e.g. if a shot at 17mm has people near the edges, applying distortion correction would stretch the people out weirdly).

Also, lens correction is a module where preset doesn't work. A preset is based on a specific focal length, and most shots have different focal length, thus, the correction will be incorrectly applied. Similarly, I couldn't copy/paste the lens correction from one photo to another unless the two photos are of the same focal length.

from darktable.

darkelectron avatar darkelectron commented on June 30, 2024

A preset is based on a specific focal length

That is incorrect, that only applies for “auto-apply” preset.

from darktable.

hqhoang avatar hqhoang commented on June 30, 2024

That is incorrect, that only applies for “auto-apply” preset.

Sigh, I'm not sure if it's a bug, but it has been that way for several years now. When I save a preset with "Lensfun database" method, the correction at that specific focal length is stored in the preset, and thus can only be applied correctly to shots at the same FL. Same problem prevents copying/pasting the lens correction from one photo to another with a different FL.

You probably can verify yourself with these steps (I'm on 4.7.0+1079~g7ebded0604-dirty):

  1. edit shot #.1 at a long focal length, e.g. 70mm in my example, apply a Lensfun distortion correction, save it as preset (e.g. "test preset at 70mm"). Note that I cannot choose what is or is not saved into the preset.
    Screenshot from 2024-05-05 14-58-31

  2. edit shot #.2 at a different focal length, e.g. 31mm, apply a Lensfun distortion correction, it should apply correction for 31mm.
    Screenshot from 2024-05-05 14-58-43

  3. apply the saved preset from #.1 to #.2. Shot #.2 now has incorrect correction of 70mm applied to it.
    Screenshot from 2024-05-05 15-03-36

from darktable.

darkelectron avatar darkelectron commented on June 30, 2024

My bad, I thought you meant presets in general.

PS: This related to #1990

from darktable.

darkelectron avatar darkelectron commented on June 30, 2024

@hqhoang Considering you are using the dev version, you could edit the source to make “Lensfun database” the default.

You can do this by editing the file src/iop/lens.cc:

  1. Find the method called: dt_iop_lens_method_t.
  2. Copy this line: method = DT_IOP_LENS_METHOD_LENSFUN;.
  3. Comment out the if statement.
  4. Paste what you copied in step 2, just before the return statement.
  5. Recompile.

20240506_021356

from darktable.

wpferguson avatar wpferguson commented on June 30, 2024

You could solve this with a lua script. You could invoke it with a shortcut and it could look at the values and make the correct settings.

from darktable.

hqhoang avatar hqhoang commented on June 30, 2024

You could solve this with a lua script. You could invoke it with a shortcut and it could look at the values and make the correct settings.

I'm not processing a lot photos lately so it's not urgent, thus, submitting as a feature request hoping for a proper solution. A script could work, but it's just a hacky temporary workaround. After all, what decides one correction method is better than the others to set it as default?

from darktable.

wpferguson avatar wpferguson commented on June 30, 2024

but it's just a hacky temporary workaround

The Lua scripting language is embedded in darktable. It has access to the darktable internals and is intended for extending darktable functionality when the basic functionality isn't enough, or implementing user specific workflows.

a proper solution

If you want to define how the solution is implemented, then you need to implement it.

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.