diff --git a/core/dr-gpu/src/adjust.rs b/core/dr-gpu/src/adjust.rs index 1c1ed1e..3dae39a 100644 --- a/core/dr-gpu/src/adjust.rs +++ b/core/dr-gpu/src/adjust.rs @@ -3420,7 +3420,7 @@ mod tests { read_centre(&ctx, t) }; - // The default rendering is Camera Raw's curve (D21); for a grey its + // The default rendering is the DNG reference curve (D21); for a grey its // ProPhoto round trip is the identity, so the reference applies as is. let scene = 3537.0 / 16383.0; let viewed = dr_pipeline::camera_raw::apply_reference( diff --git a/core/dr-pipeline/ops/vibrance.yaml b/core/dr-pipeline/ops/vibrance.yaml index c034b14..70a5d04 100644 --- a/core/dr-pipeline/ops/vibrance.yaml +++ b/core/dr-pipeline/ops/vibrance.yaml @@ -24,9 +24,9 @@ uniforms: amount: value: vibrance / 100 * 1.3 doc: | - Scaled so that a value here does what the same value of Lightroom's - Vibrance does. Measured, not chosen: fitted on 45 Lightroom exports whose - only colour setting was Vibrance (about +24), against their raws. + Scaled so that a value delivers the strength it names. Measured, not + chosen: fitted on 45 of the photographer's earlier exports whose only + colour setting was a vibrance of about +24, against their raws. helpers: [luminance] @@ -66,10 +66,10 @@ tests: - name: it_starts_neutral expect_active: false - - name: the_amount_is_lightrooms_scale + - name: the_amount_is_the_measured_scale why: | - Fitted against Lightroom exports: DarkRoom's vibrance at a value does - what Lightroom's does at the same value. + Fitted against the photographer's earlier exports, so a value delivers + the strength it names. set: { vibrance: 100 } expect: { amount: 1.3 } diff --git a/core/dr-pipeline/src/camera_raw.rs b/core/dr-pipeline/src/camera_raw.rs index cd1c1ce..a32a306 100644 --- a/core/dr-pipeline/src/camera_raw.rs +++ b/core/dr-pipeline/src/camera_raw.rs @@ -113,7 +113,7 @@ mod tests { } #[test] - fn the_default_adds_the_contrast_lightroom_showed() { + fn the_default_adds_the_measured_contrast() { // Fitted on Lightroom exports with neutral settings (D21 addendum): // the bare reference curve is a little flat against them. let p = contrast_power(DEFAULT_CONTRAST); diff --git a/core/dr-pipeline/src/ops/view_transform.rs b/core/dr-pipeline/src/ops/view_transform.rs index 663c60f..538de7c 100644 --- a/core/dr-pipeline/src/ops/view_transform.rs +++ b/core/dr-pipeline/src/ops/view_transform.rs @@ -34,9 +34,9 @@ pub const ID: OpId = OpId("view_transform"); pub const CONTRAST: ParamId = ParamId("contrast"); pub const WHITE: ParamId = ParamId("white"); /// TRACES: FR-DEV-3j -/// Which curve renders: Camera Raw's (D21, the default) or D19's sigmoid. +/// Which curve renders: the DNG reference (D21, the default) or D19's sigmoid. /// -/// Camera Raw's because it is the one that matches what the photographs were +/// The reference because it is the one that matches what the photographs were /// first developed with: on 60 Lightroom exports with neutral settings it /// renders their raws within MSE ~150 of Lightroom's own JPEGs at the default /// contrast, where 0.20.0's sigmoid was ~1200 (darker by about 0.7 EV and diff --git a/core/dr-pipeline/src/view.rs b/core/dr-pipeline/src/view.rs index 8ffc047..78c59cb 100644 --- a/core/dr-pipeline/src/view.rs +++ b/core/dr-pipeline/src/view.rs @@ -51,17 +51,17 @@ pub const SCENE_GREY: f32 = 0.13; /// Display-linear middle grey — what a camera JPEG shows a grey card as. pub const DISPLAY_GREY: f32 = 0.18; -/// The default contrast: the sigmoid's log-log slope `n`, and for Camera -/// Raw's curve a power of `DEFAULT_CONTRAST / REFERENCE_CONTRAST` about grey. +/// The default contrast: the sigmoid's log-log slope `n`, and for the DNG +/// reference curve a power of `DEFAULT_CONTRAST / REFERENCE_CONTRAST` about grey. /// /// Fitted, not chosen: on Lightroom 6 exports whose look settings were neutral, -/// Camera Raw's curve matched the exports best with the input bent by about +/// the DNG reference curve matched the exports best with the input bent by about /// 1.08 (held-out MSE 224 at 1.4, ~150 at 1.5). The sigmoid, which is no longer /// the default, fitted best near 1.7 and is better at 1.5 than at 1.4. pub const DEFAULT_CONTRAST: f32 = 1.5; /// The contrast at which each curve is its own reference: the sigmoid's match -/// to the retired base curve (see the module note), and Camera Raw's table +/// to the retired base curve (see the module note), and the reference table /// untouched. pub const REFERENCE_CONTRAST: f32 = 1.4; @@ -237,7 +237,7 @@ mod tests { fn the_reference_stays_close_to_the_retired_curve() { // TRACES: FR-DEV-3j | FR-DEV-3e // D19's promise, now kept by the sigmoid at its reference contrast - // rather than by the default (D21 moved the default to Camera Raw's + // rather than by the default (D21 moved the default to the DNG reference // curve): the midtones do not move by more than a third of a stop // from the retired base curve. let s = Sigmoid::new(REFERENCE_CONTRAST, DEFAULT_WHITE); diff --git a/docs/dev/requirements.md b/docs/dev/requirements.md index 4f2e01a..3393925 100644 --- a/docs/dev/requirements.md +++ b/docs/dev/requirements.md @@ -2785,13 +2785,13 @@ rendered by DarkRoom against Lightroom's JPEG (MSE, sRGB 8-bit): |---|---| | 0.20.0's sigmoid at its defaults | ~1200 — about 0.7 EV darker, and flatter | | Sigmoid, exposure, contrast and white fitted | ~150 (contrast 1.73, +0.73 EV) | -| Camera Raw's curve after baseline exposure, at contrast 1.4 | 224 | -| Camera Raw's curve, contrast 1.5 | ~150 | -| Camera Raw's curve, exposure, contrast and white fitted | 143 | +| DNG reference curve after baseline exposure, at contrast 1.4 | 224 | +| DNG reference curve, contrast 1.5 | ~150 | +| DNG reference curve, exposure, contrast and white fitted | 143 | -So Camera Raw's curve is the default for every raw, and the default contrast is 1.5 — under that +So the DNG reference curve is the default for every raw, and the default contrast is 1.5 — under that curve a power of 1.5/1.4 about grey (`REFERENCE_CONTRAST` is where the curve is untouched). The -brightness needs nothing: baseline exposure and the curve together land where Lightroom does. The +brightness needs nothing: baseline exposure and the curve together land where the earlier exports do. The profile's look strength, vibrance and saturation bought nothing measurable on those exports. The user chose to change every photograph rather than keep edited ones on the old rendering. The fitting tools live outside the repository (`darkroom-lrfit`). @@ -2799,7 +2799,7 @@ fitting tools live outside the repository (`darkroom-lrfit`). *Amended earlier the same day:* the default was **not** decided. The measurement below was against Lightroom previews of photographs carrying the user's Lightroom edits — a house look of HSL saturation (Blue +58, Aqua +50, …), Highlights −40 and Blacks −20 in every DNG's XMP — so it said -nothing about Camera Raw's base rendering. Under Camera Raw's curve `_MG_9080` renders brighter +nothing about Camera Raw's base rendering. Under the DNG reference curve `_MG_9080` renders brighter than its Lightroom preview (mean 0.39 against 0.31). The sigmoid stays the default; the curve below is a choice; the default is decided by measurement against Lightroom exports of unedited photographs (the `lr-fit` work). What follows is the original text.