CurvesTransformation
CurvesTransformation maps every input value to an output value along a curve. This allows contrast, saturation and hue to be changed in specific tonal ranges while other ranges stay untouched.
Purpose
| Task | Curve shape |
|---|---|
| Build contrast | S-curve on RGB/K |
| Raise saturation without boosting background and colour noise | Curve on channel S with a protection point |
| Shift hues | Curve on channel H |
| Match individual tonal ranges to measured values | Curve with fixed points |
Principle
The x-axis is the existing value, the y-axis the new one. The diagonal leaves the image unchanged.
| Curve in a range | Effect |
|---|---|
| above the diagonal | brighter or more (saturation) |
| below the diagonal | darker or less |
| steeper than the diagonal | more contrast in this tonal range |
| flatter than the diagonal | less contrast in this tonal range |
Channels
| Channel | Acts on | Note |
|---|---|---|
| RGB/K | all colour channels equally, or a greyscale image | does not change the colour balance; the only effective channel for greyscale images |
| R, G, B | individual colour channels | shifts the colour balance – unsuitable for contrast |
| S | saturation (x = existing, y = new) | colour images only |
| H | hue (x = existing, y = new) | shifts hue only; brightness and saturation stay |
Operation
- Check beforehand that no mask is active (Mask → Remove Mask), unless you are deliberately working with one.
- Reset the curve (reset icon) and choose the channel. Otherwise a channel from an earlier application stays selected.
- Create a point by clicking on the curve; keep it selected and enter Input and Output numerically below.
- The end points at 0 and 1 are fixed horizontally; with an end point selected, Input is greyed out. The display on the right (e.g. “3 / 5”) shows the selected point and the total.
- For precise work in the dark range, enlarge the graph with the zoom field. In a stretched astro image almost all pixels lie near the background: background at the histogram peak, faint structures on its right flank, bright areas far to the right. One grid line equals 0.25.
- Judge the effect in the Real-Time Preview, then apply.
Typical curves
S-curve – contrast
Whyan S-curve?
It lowers the shadows and lifts the highlights slightly; in between, the curve is steeper than the diagonal – exactly where structures lie, contrast increases. On RGB/K it acts on all channels equally and does not change the colour balance.
| Range | Position | Effect |
|---|---|---|
| Shadows | just left of the histogram peak | lowering → dark areas darker |
| Midtones | approx. peak to 0.5 | steeper than the diagonal → structural contrast |
| Highlights | upper range | slight lift, flattening towards the end → bright areas more three-dimensional |
- Rule of thumb for a moderate curve: points deviate from the diagonal by no more than about 15–25 %.
- Example, moderate: shadow point 0.08 → 0.06, highlight point raised slightly.
- Example, too strong: shadow point 0.082 → 0.037 – structures very three-dimensional, but dark areas nearly black without fine structure.
Saturation via channel S
Whychannel S rather than ColorSaturation?
Channel S is a curve over the existing saturation. It lets you leave weakly saturated pixels (background, colour noise) unchanged and amplify only pixels that already carry colour. ColorSaturation works by hue and is a useful addition when one particular colour should be raised.
A single raised point lifts the curve along its whole length – including at low saturation. Set a protection point:
| Point | Input | Output | Purpose |
|---|---|---|---|
| Protection point | 0.10–0.15 | equal to input | background and colour noise unchanged |
| Structure point | approx. 0.45–0.5 | input + approx. 0.05 | raise existing colours moderately |
| optional, upper | e.g. 0.75 | e.g. 0.85 | additionally strengthen strongly saturated areas |
Shifting hue with channel H
A point in the relevant hue range is moved up or down; the hue shifts accordingly. Brightness and saturation stay.
- Only small shifts – large ones create hard colour transitions.
- Hold neighbouring ranges in place with extra points on the diagonal.
- Hue-dependent saturation is not possible with channel H; use ColorSaturation.
Matching tonal ranges to measured values
Whya curve and not a black point?
A black point shifts all tonal values and also moves ranges that already match. A curve with fixed points changes only the range between them.
Measured values become curve points directly: Input = measured value, Output = target value. The curve interpolates smoothly between the points.
| Goal | Points |
|---|---|
| shift midtones only | fix dark and bright with output = input, move the mid point to its target |
| match contrast | all measuring points to their targets |
The complete procedure: Measures at fixed spots whether a separate luminance and the colour image match in background, midtones and highlights, and adjusts the luminance with a curve – so the LRGB combination is neither pale nor oversaturated. Open fundamentals →.
Darkening the background
Whya curve rather than a black point?
The curve lowers the background without clipping values; dark structures fade softly into darkness. A true black point clips everything below it hard. The curve is therefore the gentlest option when the background is only slightly too bright.
| Point | Input | Output | Purpose |
|---|---|---|---|
| 1 | background peak | slightly lower (e.g. −0.03) | darken the background |
| 2 | approx. 0.40 | equal to input | fix the midtones |
- Point 1 on the peak, not at the left foot: the darkest structures lie at the foot; a point there mainly darkens them while the background at the peak stays grey.
- Without a midtone point the curve lies entirely below the diagonal and darkens the structure too.
- If the background is clearly too bright, a true black point is appropriate: Stretches linear data so that contrast is created around a chosen brightness value – in several small passes, alternating with a black point. Open fundamentals → or HistogramTransformation with the clipping display (below about 0.01–0.05 %).
With a mask
If only part of the image should be affected – for example nebula brighter than the background – a mask limits the effect (e.g. Creates a mask from a brightness range – for example "everything brighter than the background" – so that a following process acts only there. Open fundamentals →). White = full effect, black = none.
What a good result looks like
Typical errors
| Observation | Cause | Remedy |
|---|---|---|
| Curve has no effect | channel S or H active on a greyscale image | reset the curve, channel RGB/K |
| Effect only in parts of the image | mask still active | Mask → Remove Mask |
| Colour cast after a contrast curve | curve on R, G or B instead of RGB/K | repeat on RGB/K |
| Dark areas featureless black | shadow point lowered too much | lower it less |
| Background coloured after saturation | protection point missing | protection point at 0.10–0.15 |
| Posterisation, waves | points too close or too steep | fewer points, gentler course |
| Curve entirely above or below the diagonal although contrast should be matched | input error, e.g. mistyped output | check values |
When to use it – and when not
| Good for | Better another tool |
|---|---|
| shaping global contrast in specific tonal ranges | emphasising local contrast → Raises local contrast – structures that differ only slightly from their immediate surroundings stand out without shifting the global tonal values. Open fundamentals → |
| raising saturation depending on existing saturation | raising one specific colour → ColorSaturation |
| slightly shifting hues | white balance, colour calibration → Calibrates the colours of a broadband or OSC image by comparing thousands of stars with Gaia spectra – objective and reproducible, including background neutralisation. Open fundamentals → |
| matching tonal ranges to measured values | initial stretch of linear data → Stretches linear data so that contrast is created around a chosen brightness value – in several small passes, alternating with a black point. Open fundamentals → |
GeneralizedHyperbolicStretch (GHS) · HaLRGB workflow · LocalHistogramEqualization (LHE) · LRGBCombination · Matching luminance and colour image · Narrowband workflow (HOO/SHO) · OSC workflow with a quad band-pass filter · RangeSelection (Range Mask) · SCNR