Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
isp:imagesignalprocessing [2018/05/29 22:33] – [Automatic white balancing] Igor Yefmov | isp:imagesignalprocessing [2018/06/04 12:50] (current) – removed Igor Yefmov | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======= Image processing ======= | ||
- | |||
- | ====== White Balance ====== | ||
- | ===== What is white color temperature ===== | ||
- | A " | ||
- | |||
- | {{: | ||
- | |||
- | When a scene is illuminated by " | ||
- | |||
- | For our purposes, we are using individual color channel **gains** to compensate for a given temperature. Lower temperature "white light" needs a lot of blue added to it and very little red and as the temperature climbs up, the amount of added red grows while the added blue goes down. | ||
- | ===== 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 white balancing ===== | ||
- | ==== Overall idea ==== | ||
- | ==== Step-by-step algorithm ==== | ||