Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| isp:contrast [2023/09/05 05:25] – [In RGB color space] Igor Yefmov | isp:contrast [2023/09/10 21:53] (current) – [Integer arithmetic] Igor Yefmov | ||
|---|---|---|---|
| Line 7: | Line 7: | ||
| ===== In RGB color space ===== | ===== In RGB color space ===== | ||
| - | As with the [[isp:: | ||
| - | Traditionally | + | Each component' |
| \[ | \[ | ||
| - | lum = 0.2126 * R + 0.7152 * G + 0.0722 * B | + | component = (component' |
| - | \] | + | component' |
| - | + | ||
| - | + | ||
| - | + | ||
| - | With that in mind each component' | + | |
| - | + | ||
| - | \[ | + | |
| - | component = (component - 50*k) * contrast^2 + 50*k \\ | + | |
| - | luma \in [0..100] \\ | + | |
| contrast \in ]0..2.0]%% | contrast \in ]0..2.0]%% | ||
| \] | \] | ||
| - | which looks like this: | ||
| - | \[ | + | ==== Integer arithmetic ==== |
| - | \begin{bmatrix} | + | Of course, much like in [[isp:: |
| - | R - 50 * 0.2126 \\ | + | |
| - | G - 50 * 0.7152 \\ | + | |
| - | B - 50 * 0.0722 | + | |
| - | \end{bmatrix} \times contrast^2 | + | |
| - | + | + | |
| - | \begin{bmatrix} | + | |
| - | 50 * 0.2126 \\ | + | |
| - | 50 * 0.7152 \\ | + | |
| - | 50 * 0.0722 | + | |
| - | \end{bmatrix} | + | |
| - | \] | + | |
| - | + | ||
| - | which easily simplifies to | + | |
| - | + | ||
| - | \[ | + | |
| - | \begin{bmatrix} | + | |
| - | R - 10.63 \\ | + | |
| - | G - 35.76 \\ | + | |
| - | B - 3.61 | + | |
| - | \end{bmatrix} \times contrast^2 | + | |
| - | + | + | |
| - | \begin{bmatrix} | + | |
| - | 10.63 \\ | + | |
| - | 35.76 \\ | + | |
| - | 3.61 | + | |
| - | \end{bmatrix} | + | |
| - | \] | + | |
| - | + | ||
| - | Of course, much like in [[isp:: | + | |
| \[ | \[ | ||
| Line 65: | Line 26: | ||
| G \\ | G \\ | ||
| B | B | ||
| - | \end{bmatrix} | + | \end{bmatrix} |
| - | - | ||
| \begin{bmatrix} | \begin{bmatrix} | ||
| - | 10885 \\ | + | 2047 \\ |
| - | 36618 \\ | + | 2047 \\ |
| - | 3697 | + | 2047 |
| - | \end{bmatrix} \right) | + | \end{bmatrix} \right) \times contrast^2 |
| - | \times contrast^2 + | + | }{1024*1024} |
| \begin{bmatrix} | \begin{bmatrix} | ||
| - | 10885 \\ | + | 2047 \\ |
| - | 36618 \\ | + | 2047 \\ |
| - | 3697 | + | 2047 |
| \end{bmatrix} | \end{bmatrix} | ||
| - | }{1024} | ||
| \] | \] | ||
| - | |||
| ===== In HSL color space ===== | ===== In HSL color space ===== | ||