Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
isp:imagesignalprocessing [2018/05/29 22:38] – [Automatic white balancing] Igor Yefmov | isp:imagesignalprocessing [2018/06/04 09:13] – Igor Yefmov | ||
---|---|---|---|
Line 1: | Line 1: | ||
======= Image processing ======= | ======= Image processing ======= | ||
- | + | * [[White balance]], a.k.a. " | |
- | ====== | + | * [[Automatic white balance]] or AWB |
- | ===== What is white color temperature ===== | + | * [[Automatic exposure]] control |
- | A " | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | When a scene is illuminated by " | + | |
- | + | ||
- | For our purposes, we are using individual | + | |
- | ===== Color correction for white temperature ===== | + | |
- | For the calibration purposes we have acquired a Philips "Hue White and Color Ambiance A19 LED Starter Kit" that allowed us to test various illumination scenarios for a range of color temperatures. For a given white color temperature setting we have dialed the red and blue gains to make the scene " | + | |
- | + | ||
- | Corrections to the red channel were way more noticeable than those to the blue one so we approximated the blue gains' graph with a single line, described by the formula '' | + | |
- | + | ||
- | Red channel gains are approximated by two line segments, bordering the '' | + | |
- | + | ||
- | below '' | + | |
- | above '' | + | |
- | + | ||
- | {{: | + | |
- | ==== Experimental data and verification ==== | + | |
- | Here is the table with the results of that testing and corresponding calculated values based on the above formulae: | + | |
- | | ::: ^ Manually set ^^ Calculated | + | |
- | ^ Color, K ^ Red ^ Blue ^ Red ^ Blue ^ | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | + | ||
- | ===== Practical example ===== | + | |
- | What does all that mean in practice? Suppose you have set up your scene with " | + | |
- | + | ||
- | ===== Automatic | + | |
- | Quite often end users don't have the patience or the expertise (or both) to properly set up the white balance | + | |
- | + | ||
- | Many algorithms are available today to deal with this, some very sophisticated (and computationally expensive) and others, way less computationally expensive but so simple that they are easily thrown off by thins like a huge green screen background | + | |
- | + | ||
- | Below is one of those " | + | |
- | ==== Overall idea ==== | + | |
- | ==== Step-by-step algorithm ==== | + | |