The ordered sequence of processing modules operating on an input file to generate an output image is known as the “pixelpipe”.
El orden del pixelpipe se representa gráficamente por el orden en el que se presentan los módulos en la interfaz de usuario: el pixelpipe comienza con una imagen RAW en la parte inferior de la lista de módulos y aplica los módulos de procesamiento uno por uno, acumulando capas sobre capa de procesamiento de abajo hacia arriba, hasta que alcanza la parte superior de la lista, donde genera la imagen completamente procesada.
Nota: El orden en el que se ejecutan los módulos de procesamiento coincide exactamente con el orden en el que aparecen los módulos en la interfaz de usuario de Ansel. Cambiar el orden de los módulos en la interfaz de usuario cambia la forma en que se procesa su imagen.
orden de módulos y flujo de trabajo
El orden en el que se ejecutan los módulos dentro del pixelpipe se ha elegido cuidadosamente para ofrecer la mejor calidad de salida. En versiones anteriores de Ansel no era posible cambiar el orden de los módulos. Sin embargo, hay una serie de casos de uso muy específicos en los que se recomienda el movimiento de algunos módulos dentro del pixelpipe.
El flujo de trabajo referido a la escena intenta realizar tantas operaciones como sea posible en un espacio de color RGB lineal, comprimiendo solo los tonos para que se ajusten al medio de salida (con un mapeo de tonos no lineal) al final del pixelpipe. Esto tiene la ventaja de ser un espacio físicamente más realista para realizar transformaciones que el flujo de trabajo tradicional referido a la visualización, que intenta realizar operaciones en un espacio de color perceptual no lineal. Respetar el realismo físico (en lugar del realismo perceptivo) hace que sea mucho más fácil producir algoritmos de procesamiento predecibles con un mínimo de artefactos.
El siguiente diagrama debería ayudarlo a comprender la diferencia entre estos flujos de trabajo:
![scene-referred and display-referred modules]../../../the-pixelpipe-and-module-ord../../../scene-display-workflows.png)
Scene-referred modules process linear data that is proportional to the amount of light collected by the camera at the scene. The dynamic range of an image in the scene-referred section of the pixelpipe is often larger than that of the display medium.
At some point in the pixelpipe, these pixel values are compressed by a non-linear tone mapping operation into a smaller dynamic range more suitable for display on a monitor or a print.
The remaining modules operate in the non-linear display-referred section of the pixelpipe to produce the final output image.
cambiando el orden de módulos
Sigue siendo muy recomendable que los usuarios no cambien el orden dentro del pixelpipe por varias razones:
- The sequence of modules has been selected with great care in order to give highest output quality. Changes to the sequence often worsen the result rather than improving it.
- Some processing modules simply don’t make sense if they are shifted in the pixelpipe. For example, highlight reconstruction needs to be performed on raw data before demosaic, which itself needs to be performed before any input color profile can be applied. For this reason it is still not possible to move some of the modules that are placed early in the pixelpipe.
- Most processing modules are designed to work within a specific color space (see the color management section for more details). Full flexibility would require modules to support different parallel algorithms depending on the color space they are working in, which would drastically increase complexity.
A pesar de la recomendación general de dejar solo el orden de pixelpipe, es posible mover módulos dentro de pixelpipe manteniendo presionadas las teclas Ctrl + Shift y arrastrando y soltando el módulo deseado en una nueva ubicación. Esto solo debe ser realizado por usuarios experimentados que comprendan el impacto que esto tendrá en la imagen.
The module order can be manually changed back to either the v3.0 or legacy versions using the module order module, which can also be used to define your own custom module order presets.