darktable article lede image

tag: Darktable

A new module for automatic perspective correction

Since many years darktable offers a versatile tool for manual perspective correction in the crop & rotate module [1]. Although the principle is simple and straightforward, there are cases where it can prove difficult to get a convincing correction, especially if no distinct vertical or horizontal features can be spotted in the image. To overcome these limitations a new “perspective correction” module has just been added that is able to automatically correct for converging lines. The underlying mechanism is inspired by the program ShiftN developed by Marcus Hebel and published under the GPL [2].

Released darktable 1.6

We are happy to announce that almost after one year darktable 1.6 has just been released.

The release notes and relevant downloads can be found attached to this git tag:

https://github.com/darktable-org/darktable/releases/tag/release-1.6.0

Please only use our provided packages (green buttons tar.xz and dmg) not the auto-created tarballs from github (grey buttons, zip and tar.gz). The latter are just git snapshots and will not work! Here’s the direct link to tar.xz:

https://github.com/darktable-org/darktable/releases/download/release-1.6.0/darktable-1.6.0.tar.xz


String freeze for darktable 1.6

Dear all,

as we want to release darktable 1.6 some time at the end of the year, it now is the time to announce the string freeze. Please don’t change any UI strings any more, so translators have a chance to catch up.

Translators: your updates should be committed to the master branch, there is no branch-off for a stable 1.6 version yet.

We should have the first release candidate packed up soon!


Using X-Trans cameras with darktable

There is now a development branch of darktable with experimental support for raw files from many recent Fujifilm cameras. These cameras include those with the X-Trans sensor (X-Pro1, X-E1, X20, X100S, X-M1, XQ1, X-E2, and X-T1), X-Series cameras with conventional sensors (X100, X10, X-S1, XF-1, X-A1), and some from Fujifilm’s other lines (S6000fd, E550, IS-1, S3Pro, S5Pro, S5600, E900, S2Pro, S5000, S5200, S5500, S6500fd, S9500, S9600, S9600fd). Previously, darktable would fail to read RAF-type raw files produced by these cameras.

Bringing current darktable to OS X

darktable has been software of my choice for raw photo development for quite some time now, I’ve occasionally submitted bug reports and patches and kept an eye on current development by using git master version. My main operating system is Linux, which is the priority target of darktable support, but recently I bought MacBook Air to take with me on trips and such. Also my current project at work consists of porting a library to OS X, so this presented to me as a great opportunity to contribute to one of my favorite open-source projects and make darktable work reliably on Macs. Some work has already been done in the past, there’s even a package of an old darktable version for OS X, but of course I was interested in bringing the latest darktable experience to OS X.

Some enhancements to conditional blending

Conditional blending, also known as “blend if”, is a feature which is currently under development in our master branch. A general description of the idea together with some examples can be found here. In short, conditional blending allows you to limit the effect of a module to certain pixels of an image, determined by their color coordinates. For modules in Lab space, you can restrict the effect of a module depending on the pixel’s L, a, and b value. For modules in RGB space, you can restrict the effect of a module depending on color channels Red, Green, and Blue plus a Gray value.

Moving the git repo to github [done]

**Update: **the git repository officially resides in github now.

Today we are moving our git repo from sf.net to github, as it was agreed in the developer meeting that took place yesterday. This will happen today 22:00 – 23:00 CEST

What should I do now?

Depends on the role you play in the project.

  1. You have commit rights into current sf.net repository: please open an account in github if you don’t have any and make me know it. I will give you those permits there, but do not push there for now, your changed will be lost.
  2. You don’t have commit rights but regularly contribute back patches to darktable: please consider doing a fork of our repo in github and make a branch there for your patches. Later on make a pull request to let us know that we should pull from your branch.
  3. If you make some patches, but not in a regular way, you can also benefit of having your own fork … it will allow to publish your changes, access them from remote places, and have a backup place for your repo in case of disaster.
  4. You only track the repo. Wait until the switch is made and follow the instructions in this post.

What is going to happen just before the switch?


darktable 1.0.3 released

Pascal de Bruijn did some good work backporting some of the progress from git master to the 1.0 release. We packed that into a tarball, here it is:

https://sourceforge.net/projects/darktable/files/darktable/1.0/darktable-1.0.1.tar.gz/download

https://sourceforge.net/projects/darktable/files/darktable/1.0/darktable-1.0.3.tar.gz/download

(We had a problem packaging sources, so 1.0.3 is now on air. Please use it instead of 1.0.1)

As usual we have Ubuntu Packages are readily available on Pascal’s PPA, for Lucid, Natty, Oneiric and Precise:

https://launchpad.net/~pmjdebruijn/+archive/darktable-release

https://launchpad.net/~pmjdebruijn/+archive/darktable-release-plus

And these are the major changes:


darktable 1.0 released

It is done, 1.0 is out. I sent out most of the new features with the announcement for 1.0rc2 a few weeks ago already, but for completeness, here it is again:

  • New cameras supported
    • Leica M9
    • NX100/NX5/NX10/NX11
    • Panasonic DMC-GX1
    • Pentax K-r
    • Canon Powershot S100
    • Olympus XZ-1
    • Olympus E-P3
    • Sony DSLR A330
    • Sony NEX-5N
    • Canon EOS 1000D
    • Canon EOS 600D
    • Sony Alpha 390
    • Fuji Finepix HS20EXR
  • New and updated translations (we now have chinese!)
  • New modules:
    • shadows & highlights
    • enhanced tone curve. now operates in a and b channels as well
  • Refactored modules:
    • import
    • snapshots (enable sliding separation line between before/after images)
    • metadata
  • New image cache
    • faster concurrent access and insertion
    • reduces needed memory
    • more thumbnails stored on disk
    • read embedded jpegs for creating thumbnails (faster folder import)
  • Increased general speed on sqlite3 (journaled, pagesize optimizations)
  • Reworked, modular UI
  • Keyboard shortcuts support – key accelerators (GSoC)
  • Unity launcher support (Ubuntu)
  • Quicktool bar: exposure, presets and styles
  • New color picker
  • Web gallery export now with next/prev buttons per image
  • Removed gconf: not used anymore, we have our own backend
  • Bugfixes

Also, a couple of caveats to keep in mind this time:



Upcoming features: Conditional Blending

or “If one slider is not enough”

Diligent readers of our small blog series are already aware of the blending feature that darktable offers as part of many modules. Instead of just handing over their result to the subsequent module in pixelpipe, “blending modules” take a moment to reconsider. Based on the blend setting they will take their original output together with their input and do a re-processing. As an example refer to here, where we took blend mode “overlay” with module “lowpass” to do shadow recovery.


darktable and OpenCL (updated)

Many readers will have already heard about GPU processing and the fact that darktable can make use of OpenCL to improve performance. As we still lack a detailed documentation of that topic, please find here a few explanations and howtos.

The Background

Processing high resolution images belongs to the more demanding tasks in modern computing. Both, in terms of memory requirements and in terms of CPU power, getting the best out of a typical 15, 20 or 25 Megapixel image can quickly bring your computer to its limits.


Shadow recovery revisited

One of the remaining shortcomings of digital cameras is their rather low dynamic range in comparison to analog – especially black-and-white – film. Scenes with strong differences between highlights and shadows are very difficult to capture. Even if they are exposed properly with no blown-out highlights they will too often only give acceptable results after extensive post-processing.

Fortunately, darktable is progressing with a high pace. Some days ago I wrote an article on how to recover shadows with a technique using lowpass filter plus blend mode (" Using lowpass filter to recover shadows "). In between a new, even better module called “shadows and highlights” was integrated into darktable, that obsoletes this technique.


Using lowpass filter to recover shadows

Outdoor photographers are often confronted with unfavorable light conditions. This often entails too high contrast. Two of the most frequent consequences are blown highlights and deep shadows in your digital images. Overexposed highlights are challenging to repair in digital post post-processing, still darktable offers a decent set of valuable tools as long as you take your pictures in raw (see Jo’s blog post “ why you want raw ”). Fortunately, it’s much easier to take care of the deep shadows.

Mastering color with Lab tone curves

or “How to bring the jungle back”

Since its early beginnings darktable has a tone curve module that is able to alter the gray level distribution of an image. Recently we did an enhancement: tone curve is now able to control the full Lab color space with separate curves for the L, a and b channel. People who are used to curve tools in RGB, at first might get puzzled over the results of these three curves; they show marked differences to the typical RGB curve. Especially a and b channels need to be dealt with in the right way; not doing so will give you strong off-colors. To spare you frustration here are some explanations and examples.



Released 0.9.3

As most of you probably noticed by now, we released 0.9.3. The tar file can be found here: https://sourceforge.net/projects/darktable/files/darktable/0.9/darktable-0.9.3.tar.gz/download

Pascal updated his ppa for ubuntu here: https://launchpad.net/~pmjdebruijn/+archive/darktable-release or https://launchpad.net/~pmjdebruijn/+archive/darktable-release-plus (with Exiv2 0.22, and Lensfun 0.2.5 + lens data from svn).

and made great new screencasts explaining a couple of features and differences to 0.9.2. You can find them on our resources page or Pascal’s website

It is a comparatively minor update to our stable 0.9.x series. It does not contain many very cool new features and big changes we have in git, because we don’t consider them stable enough yet. Nontheless, it contains 272 commits over the previous release 0.9.2, mainly containing:


different kind of saturation

different kind of saturation

93820110921_0059

there are many different ways of tuning saturation, darktable does offer a few alternative ways to alter saturation and the reason for this post is to clarify what they do and how they work. the image on left is the original untouched image used for the different examples below, use it as a reference for comparing the results of the different kind of saturation described below, the resulting effects is exaggerated to make it easier to spot the differences.