Curve Control
A curve control lets you specify a curve that converts one set of levels to another. For each pixel in the input image, its level is computed and then converted by the curve to a new level that is used to compute the output image.
A curve control consists of a graph on the left and a set of option buttons on the right. The graph can take one of two forms: a curve display with a histogram in the background or a histogram display with a curve in the background. The two graphs are different views of the same information.
When a curve is active, and you click on the input image, Picture Window displays a red line on the curve or input histogram that moves as you move the cursor over the input image window with the mouse button depressed. This in turn lets you relate the curve or histogram to different parts of the input image.
If you shift-click on the input image, in addition to highlighting the curve, Picture Window adds a new control point to the curve at a location corresponding to the pixel values in the input image where you clicked.
Control Points
Initially, the curve is defined by two points connected by a straight line. You can move points by clicking and dragging them. You create a new point by Shift-Clicking on the curve or histogram; you delete a point (other than the first or last point) by Control-Clicking over it. (To Shift-Click, hold either Shift key on the keyboard down with one hand while you click the left mouse button with the other; to Control-Click, hold down the Ctrl key while you click the left mouse button)
Curve Display
When the graph is set to curve display, the curve is in the foreground. A gray scale is displayed along the horizontal axis that corresponds to levels in the input image. Another gray scale is displayed along the vertical axis that corresponds to levels in the output image. Each point is displayed as a small square on the curve. You move points by dragging them, create points by Shift-Clicking on the curve, and delete points by Control-Clicking on the curve. For each point, an arrow is also displayed on each axis corresponding to that point's x and y coordinates. You can adjust only the input level or output level of a point by dragging the corresponding arrow.
Picture Window can connect the points with different kinds of curves. It can use a smooth curve, a broken line, or a stair step curve. The curve type is selected by option buttons (see below).
Histogram Display
When the graph is set to histogram display, a pair of histograms is in the foreground. The input image histogram is displayed on top, and an inverted output image histogram is displayed on the bottom. For each point on the curve, an arrow is displayed under the input histogram at its input level, and an arrow is displayed above the output histogram at its output level. The two arrows are connected by a line. You move points by dragging their arrows, create points by Shift-Clicking on the upper histogram, and delete points by Control-Clicking on the upper arrow.
This display not only shows the input and output histograms, but it also graphically represents how each part of the gray scale is compressed or expanded or shifted. If a pair of lines converges from top to bottom, then that range of grays is compressed (local contrast is decreased); if they diverge, the range is expanded (local contrast is increased). If the lines slant to the left, then the range is shifted toward black; if the lines slant right, the range is shifted toward white.
Applying Curves to Other Channels
While curves are most commonly used to adjust the brightness of an image, they can also be applied to other channels such as saturation and hue or the individual red, green and blue components. In these cases, the gray ramps below and to the left of the graph are displayed in color to illustrate the various saturation or hue levels.
Hue curves are a special case because hue is circular with a zero value arbitrarily set at red. Rather than adjust hue by the same type of curve used for brightness, instead hue curves work by adjusting the hue change which can be positive or negative. Also, the first and last control points are fixed at red and both move at the same time when you adjust either one.
This is the default hue curve that leaves all hues unmodified.
To adjust hues, create a new control point at the hue you want to change and drag it up or down to increase or decrease the hue. For example, to make reds and oranges in the above image more purple – without affecting greens and blues, we could use a curve like this:
To shift reds and oranges more yellow, we could use a curve like this:
Settings Menu
Reset -- returns the curve control to its initial state.
Help -- displays this document
Invert -- inverts the curve, replacing each output value by its negative.
Inverse -- inverts the curve by reflecting it about the diagonal from the lower left to the upper right corner
Load -- lets you reload a previously saved curve.
Save As -- lets you save a curve for future use.
Compose With -- lets you combine stored curves. For instance, you can combine a curve which increases shadow brightness with one that rolls off highlights. To combine curves choose Compose With to load one or more additional curves. Additional curves are combined with the current curve and have the same effect as if the curves were applied to the image sequentially, in the order they have been loaded. (The order of application does make a difference). For more information on composing curves, see the section at the end of this document.
Approximate Compose With -- similar to Compose With but approximates the curve by reducing the number of control points. This makes it easier to adjust the curve manually after composing.
Probe Size -- the probe size determines how large an area of the input image is sampled when using the probe to display red marker lines on the curve. Smaller values let you select finer detail while larger values are less sensitive to noise.
Grid -- this lets you set the number of grid divisions to 4, 8 or 10.
No Histogram Smoothing / Medium Histogram Smoothing / Heavy Histogram Smoothing -- these let you select how much histogram smoothing, if any, that you want. Smoothing noisy histograms can make them easier to interpret since fluctuations from one brightness level to the next do not make much of a difference in the image. Turning histogram smoothing off makes it easier to evaluate how noisy the histogram is -- a noisy histogram can be a sign of reduced image quality.
-- toggles graph between curve and histogram display.
-- connects control points with a stair step curve.
-- connects control points with a broken line curve.
-- connects control points with a smooth spline curve.
-- draws a gamma curve through three points. (Usually the three points are the initial point, a newly created point, and the end point.) This setting reverts to broken line if the curve has fewer than three points or smooth spline if it has more than three points.
-- toggles histogram expansion. When using linear scaling, if the histogram has a very strong spike it can cause lower values to be scaled down so much that they are hard to read. Histogram expansion compresses the dynamic range of the display by exaggerating smaller values and making large spikes less dominant.
Tips
To see the relationship between the histogram and different parts of the input image, click and drag on the input image. This displays a red line on the histogram at the brightness level that corresponds to that point in the image.
To make part of an image lighter or darker, Shift-Click on the input image to insert a new point on the curve corresponding to the brightness level at that point in the image. Then drag the new control point up to make that part of the image lighter or down to make it darker.
If nothing is happening when you click or shift-click on the input image, click on a blank part of the curve control to reset its probe.
Curve Examples
The following examples illustrate the effects of different curves when applied to the brightness of an image using the Brightness Curve transformation. Curves can also be applied to Hue, Saturation and various other channels using the Color Curves transformation, but the basic concepts are the same.
No-Change
This curve makes the output level the same as the input level; applying this curve leaves the input image unchanged; any curve near this curve will have only subtle effects.
Negative
This curve makes the output level the negative of the input level; applying this curve makes low levels high and high levels low; any curve near this curve will have similar effects.
Boost Mid-tones
Applying this curve increases all levels, especially the middle levels. High and low levels are changed less.
Decrease Mid-tones
Applying this curve decreases all levels, especially the middle levels. High and low levels are changed less.
Increase Mid-tone Contrast
Applying this curve increases all high levels and decreases low levels; this increases contrast in the middle of the range and reduces contrast at high and low levels.
Decrease Mid-tone Contrast
Applying this curve decreases all high levels and increases low levels; this decreases contrast in the middle of the range and increases contrast at high and low levels.
Applying this curve maps the full range of input levels into just a few different output levels.
Applying this curve makes an image that is part negative, part positive. Any curve that reverses its slope from positive to negative or vice versa will produce the distinctive solarization effect.
Composing Curves
What is composition
The idea behind composing two curves is to create a new curve whose effect is like applying the first curve to produce a temporary image and then applying the second curve to that temporary image.
How you do it
1) Load the second curve via the Settings button in the Curve control
2) Compose With the first curve via the Settings button in the Curve control
This adjusts all the control points in the second curve according to the first curve. Note that the final curve always has 256 control points with its style set to smooth curve, regardless of the number of points in the first curve or its style. To compose the two curves in the other order, simply start by loading the first curve and then compose with the second curve.
Motivation
An example of composing two curves might arise if you two curves -- one that lightens shadow detail and one that increases mid-tone contrast. You can use composition to combine these two curves into a single curve that first lightens the image and then increases its contrast. Note that it can make a big difference which curve is applied first and which is applied to the results from the first curve.
Example
In the example below, the first curve lightens the image, particularly in the shadow areas. The second curve applies a calibration for an alternative printing process. The composed curve lightens the image and then applies the calibration in a single step.
Curve 1 Curve 2 Curve 1
composed with
Curve 2