This article has been updated here.
The Curve Tool is common to most photo editor software, scanner drivers, graphic applications, etc. It is a standard industry tool in the graphic arts. The Histogram was a safe and easy control, but this one is a more powerful and advanced tool and is more difficult to use. It is however a close representation of how the scanner implements all the other tools. It will allow extreme changes that are optionally not so linear. It was hard to affect colors with the Histogram, but it's easy with the curve tool to greatly modify the colors of the image, either accidentally or otherwise.
This is The Curve Tool. It is a graph of the transfer function (response curve) that maps the scanner input tone values (along the bottom scale) to the corresponding output tone values (on the left scale). When the scanner reads an input tone value on the bottom scale, it maps it to an output tone value on the left scale, as dictated by the transfer function graph.
You can see that the default straight 45 degree graph matches input and output, every value maps to exactly the same value (i.e., no modification). The marked point maps a 75% input point to be 75% on the output.
But we can change the graph!
We can simply grab the curve with the mouse, and shape it or move it as we wish, and the scanner will modify the scanned image transfer curve as we specified. We can modify the response curve of the scanner.
In the binary numbering system, an 8 bit number can hold values of 0 to 255. A 10 bit number can hold values of 0 to 1023, and a 12 bit number can hold values of 0 to 4095. If the number can hold that many values, then the quantity it represents can have that many steps, or variations, or in this case, tones. A 30 bit scanner works with 10 bit numbers internally (10 bits each of RGB is 30 bits), and its Curve Tool is numbered 0 to 1023 across the bottom input scale.
Shown above is the Curve tool for a 24 bit scanner using 8 bit input values internally, numbered 0 to 255. Shown below is a 36 bit scanner using 12 bit values internally, numbered 0 to 4095. In any case (24, 30, or 36 bit scanner), the output is numbered 0 to 255, because scanners do output 24 bit color, because image programs and file formats expect 24 bit color, because, well, because that's plenty, and it is all the next stage (printers or video screens) can handle.
Some scanners can output the full 36 bit range so that these adjustment tools can instead be used in a program like Photoshop. Those 36 bit RGB values for each pixel are stored in three 16 bit words (48 bits with some zeros filling the rest) for better computer access efficiency because there are millions of pixels to be processed, and unpacking bits is very inefficient. It is called 16 or 48 bit data, even though the data is only 36 bits. However, extremely few programs can handle these 16 bit words, most handle only 8 bit bytes. Photoshop can, but the functions permitted are very limited, and the Curve and Histogram tools are primarily all that works on 16 bit data (Photoshop 5 adds a little more). Normally your scanner offers better tools than most image programs, and the average image program can't accept 48 bits anyway. Therefore, outputting 36 bits is generally unimportant, don't sweat being limited to 24 bit output. It is no limitation, 24 bit output is what you need, but 30 and 36 bit scanners are still of much benefit to obtain it.
To explain the concept of how the Curve Tool is used, this example shows a curve that was "lifted" to brighten it. The black arrows show this curve was moved horizontally at the midpoint (with the mouse), so the middle point data is now at the 1/4 mark. This is the same effect as in the histogram when we move the mid point 128 to be at half that, or at 64. You can see that the input point at 25% luminance is transformed to 50% luminance at the output. We have lightened the shadows, they are expanded, with small changes in input width making tall changes in output value.
Or the blue arrows show that the 50% input point is raised to just over 75% on the output, lightening the midrange. Both conditions are true, those are just two points on the input/output transfer function curve. We have expanded the tones at the black end, and small changes in input produce large changes in output, which are more noticeable to our eye.
However there is always a balance, and the high end is therefore necessarily compressed, and at the light or White end, large changes in input width will now make smaller changes in output height, which is tonal compression, with smaller differences in light colored image tones. We can adjust the curve in different ways to achieve different effects.
This curve and modification can apply to the "Master Channel" which is a composite of RGB, or it can apply to only one channel, just Red, or just Green for example. So perhaps to redden a sunset sky, just the curve for the Red channel could be modified to boost just the lightest shades, leaving the darker reds unaffected, and the other colors unaffected.
We will show a real example in just a second, but first, let's continue trying to understand how the scanner tools work.