Questa sezione cerca di spiegare alcuni dei concetti fondamentali alla base del modo in cui darktable sviluppa le immagini nella camera oscura.
L'elemento minimo di un'operazione su un'immagine in darktable si chiama modulo. darktable comprende oltre 60 moduli per tutti i tipi di manipolazione dell'immagine. In Sezione 3.4, «Moduli» si trova una descrizione di ogni modulo disponibile.
darktable processa le immagini - dall'input all'output - in una cosiddetta «pixelpipe» (Flusso di sviluppo). All'interno del flusso di sviluppo l'elaborazione dell'immagine consiste in una serie di operazioni consecutive che vengono applicate come «moduli».
Modules are applied in a predefined order. This differentiates darktable, as a non-destructive image editor, from classical image manipulation programs like GIMP. As module order is fixed, you are free to activate, deactivate or change the parameters of a module at arbitrary points in time; the order of activation in your workflow does not have any impact on the outcome.
The module order used to be fixed and could not be changed. Since version 3.0 it is possible to change the order of modules via Shift+Ctrl+Drag-and-drop. It is very important to note that this feature is not a question of visual preference - it really changes the order in which the modules are applied to the image. It is strongly recommended not to change the original module order, unless you exactly know what you are doing. Some modules are still fixed and cannot be moved.
There are several reasons why darktable works in the way described:
The sequence of modules has been selected with great care in order go give highest output quality. Changes to the sequence can generally worsen the result rather than improving it.
Non avrebbe senso cambiare l'ordine di applicazione di alcuni passi dello sviluppo dell'immagine all'interno del flusso di sviluppo. Solo per fare alcuni esempi: la ricostruzione delle alte luci deve essere effettuata sui dati raw prima della demosaicizzazione e quest'ultima operazione deve essere effettuata prima dell'applicazione di un profilo colore.
La maggior parte dei moduli di darktable sono progettati per lavorare all'interno di uno specifico modello di colore (vedi Sezione 3.2.6, «Gestione del colore» per maggiori dettagli). Per maggiore flessibilità i moduli devono supportare diversi algoritmi paralleli da attivare in base allo spazio colore sul quale si sta operando. Questa cosa aumenta di molto la complessità.
Al momento dell'attivazione o disattivazione di un modulo oppure quando vengono cambiati i parametri di un modulo già attivato verrà aggiunta una voce in cima alla «coda di sviluppo».
Ad esempio, quando si opera su di un file raw, la coda di sviluppo nel pannello di sinistra potrebbe mostrare che il primo modulo abilitato è il filtro bilaterale, quindi che è stata disabilitata la curva base, poi che è stato modificato il bilanciamento del bianco. In ogni caso, però, il processo di sviluppo del file raw ha sistemato il bilanciamento del bianco, quindi ha provveduto a fare la demosaicizzazione, poi la curva base (se abilitata), e poi il filtro bilaterale (se abilitato), così come mostrato dal basso verso l'alto nel pannello di destra.
La coda di sviluppo registra il vostro flusso di lavoro nell'ordine in cui voi effettuate modifiche alla pipeline. Vi permette, se necessario, di tornare ad un precedente stato. La coda di sviluppo rappresenta il vostro personale flusso di lavoro e non deve essere confusa con la sequenza di applicazione dei vari moduli all'interno della pipeline (vedi sopra). Per maggiori dettagli sulla coda di sviluppo vedi Sezione 3.3.4, «Coda di sviluppo».