Aller au contenu

02 · 04·Curve

The 25-point curve

what the app does with the number 25

Reading 4 min·Verified 2026-05-19

Capture à venir

The 25 visible points on the curve — reading landmarks, not editable parameters.

The 25 visible points on the curve — reading landmarks, not editable parameters.

When you look at the correction curve on the graph, you can count the small points drawn on it: there are twenty-five. That's deliberate. Not twenty, not thirty, not the number of patches on a target. These twenty-five points are reading landmarks spread uniformly along the curve, so you can read it at different places without having to hover over every pixel.

What can surprise: these twenty-five points are not the parameters that define your curve. You don't adjust them individually. Your curve is defined by the three sliders (black point, white point, gamma) that you manipulate. From these three values, the app builds a table of 256 correction values — one for each possible tonal level — and displays 25 of these 256 values as reading landmarks on the graph.

#What the app does under the hood

The correction curve in Calibration Flow is not a single mathematical equation. It's a lookup table: for each input tonal value from 0 to 255, the app stores which output value to produce. 256 values in total, fine enough to lose no nuance in a classic 8-bit file.

The table is built in two stages:

First stage — linear interpolation between the thresholds you set. If your black point is at input value 20 and your white point at 230, the app places a transformation line between these two thresholds, and applies the maximum (255) and minimum (0) values beyond them.

Second stage — smoothing. A simple linear interpolation produces angular breaks at the thresholds, and these breaks, applied to an image, create visible bands in the gradients. So the app applies a statistical smoothing (a combination of techniques borrowed from data analysis — LOWESS and PCHIP) that rounds the knees without moving the reference points. The result is a continuous curve, without breaks, that passes through the thresholds you set.

On screen, on the smoothed curve, 25 uniform sampling points are drawn. These 25 points are snapshots of the curve at regular intervals — useful for reading, unrelated to the underlying math.

#Why it matters

For the legibility of the graph. Without landmark points, a continuous curve is hard to read precisely by eye — you don't know exactly which output value corresponds to a given input value. With 25 points placed at regular intervals, you can estimate the transformation anywhere in a few seconds.

For compatibility with Photoshop. The

.acv
format that Calibration Flow exports only accepts up to 16 curve points. Working internally with a table of 256 values guarantees that your curve is more precise than what Photoshop can represent, and you never get the "loss" effect when you export — it's just a downsampling.

For print stability. The smoothing after the linear interpolation avoids visible artifacts in the gradients. Without it, a cyanotype printed with a curve with angular knees would show sharp bands where the curve breaks. With it, the print is continuous, without visible steps.

#When this detail matters little to you

For everyday practice. You don't need to understand the internal mechanism to use Calibration Flow. You set three sliders, the app builds the curve, you get a good result. This page is for those who want to understand why the graph is drawn the way it is, not for those who just want to use it.

For occasional calibration. The details of the statistical smoothing change nothing about what you see on screen. If you calibrate once a month, you have no reason to dive into the mechanism.

If you compare to other tools. Calibration Flow uses its own mathematical choices. Other tools (QuadToneRIP, Easy Digital Negatives, PiezoDN) use others. Comparing the algorithms doesn't really make sense — what matters is the quality of the final print, which is judged by eye or with a densitometer, not by reading the code.

#Worth remembering

ElementValue
Internal table256 correction values (one per input tonal level)
Points shown on screen25 (reading landmarks, not parameters)
ConstructionLinear interpolation between thresholds + statistical smoothing
Export format
.acv
Adobe (up to 16 points)
PrecisionWell above the export limit and human perception
ModificationVia the 3 sliders, never directly on the curve

#The test

Compare the displayed curve at a specific place (for example at input value 100). Adjust a slider. Watch whether the curve changes around that point. You should see a continuous modification, not a succession of discrete steps between the 25 landmark points. If you see steps, it means you're reading the 25 points as editable nodes — which they are not. It's the smoothed curve that counts, the 25 points are only there to help you read it.