Skip to content
Matt Maguire edited this page Sep 11, 2020 · 4 revisions

What is darktable

darktable is an open source photography workflow application and raw developer. A virtual lighttable and darkroom for photographers. It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.

FAQ

Resources

Tips and tricks

Enable tabbed view for color balance

In colorbalance, tabs can be used instead of section labels by setting plugins/darkroom/colorbalance/use_notebook=TRUE in darktablerc

selecting red hues in HLS blend mode

Since hue is circular (360 degrees) it's problematic to select red hues in "normal" way. In order to select reds, invert polarity of slider and deselect everything except reds!

My lens is wrongly identified!

Darktable relies in the exiv2 library to help it identify which lens was used to take a picture, based on the EXIF metadata embedded into the image. However, exiv2 often needs to do a bit of detective work, and sometimes it will not identify the lens correctly. In such cases, it is possible to help exiv2 by providing in your home directory a ~/.exiv2 file that can help map the values in the EXIF data to the correct lens name. An example is shown below.

Here a new version of a lens has been identified by exiv2 as Sigma 14-24mm F/2.8 DG HSM | A. However, in the lensfun profile database, it is still known by its old name, Sigma 14-24mm F/2.8 DG HSM, and so darktable cannot find the right correction profile automatically. Here we see the name that exiv2 thinks the lens should be:

538 rmills@rmillsmbp:~/Downloads $ exiv2 -pa --grep lens/i 80739639-16212100-8b17-11ea-8469-502ce825c942.JPG 
Exif.CanonCs.LensType              Short       1  Sigma 14-24mm f/2.8 DG HSM | A <--- builtin lens type
Exif.CanonCs.Lens                  Short       3  35.0 mm
Exif.Photo.LensSpecification       Rational    4  35/1 35/1 0/1 0/1
Exif.Photo.LensModel               Ascii      27  35mm F1.4 DG HSM | Art 012
Exif.Photo.LensSerialNumber        Ascii      11  0000000000

If we look at the underlying data, we see this LensType code actually equates to a LensID of 368:

539 rmills@rmillsmbp:~/Downloads $ exiv2 -pv --grep lens/i 80739639-16212100-8b17-11ea-8469-502ce825c942.JPG 
0x0016 CanonCs      LensType          Short       1  368   <--- The LensID
0x0017 CanonCs      Lens              Short       3  35 35 1
0xa432 Photo        LensSpecification Rational    4  35/1 35/1 0/1 0/1
0xa434 Photo        LensModel         Ascii      27  35mm F1.4 DG HSM | Art 012
0xa435 Photo        LensSerialNumber  Ascii      11  0000000000

So, we can create an entry in our ~/.exiv2 file (create the file if it doesn't already exist) which will help exiv2 map that LensID to the correct name:

540 rmills@rmillsmbp:~/Downloads $ bbedit "/Users/rmills/.exiv2"
541 rmills@rmillsmbp:~/Downloads $ cat ~/.exiv2
[canon]
368=Sigma 35mm F1.4 DG HSM ART <--- Identify it

Now when we ask exiv2 when is the name of the lens, it can now return the correct name:

542 rmills@rmillsmbp:~/Downloads $ exiv2 -pa --grep lens/i 80739639-16212100-8b17-11ea-8469-502ce825c942.JPG 
Exif.CanonCs.LensType              Short       1  Sigma 35mm F1.4 DG HSM ART <-- Your definition
Exif.CanonCs.Lens                  Short       3  35.0 mm
Exif.Photo.LensSpecification       Rational    4  35/1 35/1 0/1 0/1
Exif.Photo.LensModel               Ascii      27  35mm F1.4 DG HSM | Art 012
Exif.Photo.LensSerialNumber        Ascii      11  0000000000
543 rmills@rmillsmbp:~/Downloads $ 

For more information on how the ~/.exiv2 file works, check out the "Configuration File" section in the exiv2 man page: $ man exiv2.