<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 !!! D . R . A . F . T !!!
Lightness
Lightness is defined as the brightness of an area judged relative to the brightness of a similarly illuminated area that appears to be white or highly transmitting. <a name="back_reference_1"></a><a href="#reference_1">[1]</a>
Colour defines the following Lightness computation methods
Step1:  Note
Step2:  Note
Step3:  Wyszecki (1963) Method
Wyszecki (1963) recommended the following cube root function to compute Lightness $W$ as a function of the luminance factor $Y$ within the practically important range of $1.0\%<Y<98\%$
Step4:  Note
Step5:  CIE 1976 Method
The CIE $L^a^b^$ approximately uniform colourspace defined in 1976 computes the Lightness $L^$ quantity as follows
Step6:  Note
Step7:  Fairchild and Wyble (2010) Method
Step8:  Fairchild and Chen (2011) Method
<ASSISTANT_TASK:>
Python Code:
import colour
colour.utilities.filter_warnings(True, False)
sorted(colour.LIGHTNESS_METHODS.keys())
Explanation: !!! D . R . A . F . T !!!
Lightness
Lightness is defined as the brightness of an area judged relative to the brightness of a similarly illuminated area that appears to be white or highly transmitting. <a name="back_reference_1"></a><a href="#reference_1">[1]</a>
Colour defines the following Lightness computation methods:
End of explanation
colour.colorimetry.lightness_Glasser1958(10.08)
Explanation: Note: 'Lstar1976' is a convenient aliases for 'CIE 1976'.
Glasser, Mckinney, Reilly and Schnelle (1958) Method
Glasser, Mckinney, Reilly and Schnelle (1958) described a visually uniform colour coordinate system close to Adams chromatic-value system but where the quintic-parabola function has been replaced with a cube-root function: the Cube-Root Color Coordinate System.
Lightness $L$ in the Cube-Root Color Coordinate System is calculated as follows: <a name="back_reference_2"></a><a href="#reference_2">[2]</a>
$$
\begin{equation}
L=25.29Y^{1/3}-18.38
\end{equation}
$$
where $Y$ defines the luminance in domain [0, 100].
The colour.lightness_Glasser1958 definition is used to compute Lightness $L$:
End of explanation
colour.lightness(10.08, method='Glasser 1958')
%matplotlib inline
from colour.plotting import *
colour_plotting_defaults()
# Plotting the "Glasser (1958)" "Lightness" function.
single_lightness_function_plot('Glasser 1958')
Explanation: Note: Input luminance $Y$ is in domain [0, 100], output Lightness $L$ is in domain [0, 100].
The colour.lightness definition is implemented as a wrapper for various lightness computation methods:
End of explanation
colour.colorimetry.lightness_Wyszecki1963(10.08)
Explanation: Wyszecki (1963) Method
Wyszecki (1963) recommended the following cube root function to compute Lightness $W$ as a function of the luminance factor $Y$ within the practically important range of $1.0\%<Y<98\%$: <a name="back_reference_3"></a><a href="#reference_3">[3]</a>
$$
\begin{equation}
W=25Y^{1/3}-17
\end{equation}
$$
The colour.lightness_Wyszecki1963 definition is used to compute Lightness $W$:
End of explanation
colour.lightness(10.08, method='Wyszecki 1963')
# Plotting the "Wyszecki (1963)" "Lightness" function.
single_lightness_function_plot('Wyszecki 1963')
Explanation: Note: Input luminance $Y$ is in domain [0, 100], output Lightness $W$ is in domain [0, 100].
Using the colour.lightness wrapper definition:
End of explanation
colour.colorimetry.lightness_CIE1976(10.08)
Explanation: CIE 1976 Method
The CIE $L^a^b^$ approximately uniform colourspace defined in 1976 computes the Lightness $L^$ quantity as follows: <a name="back_reference_4"></a><a href="#reference_4">[4]</a>
$$
\begin{equation}
L^=\begin{cases}116\biggl(\cfrac{Y}{Y_n}\biggr)^{1/3}-16 & for\ \cfrac{Y}{Y_n}>\epsilon\
\kappa\biggl(\cfrac{Y}{Y_n}\biggr) & for\ \cfrac{Y}{Y_n}<=\epsilon
\end{cases}
\end{equation}
$$
where $Y_n$ is the reference white luminance.
with
$$
\begin{equation}
\begin{aligned}
\epsilon&\ =\begin{cases}0.008856 & Actual\ CIE\ Standard\
216\ /\ 24389 & Intent\ of\ the\ CIE\ Standard
\end{cases}\
\kappa&\ =\begin{cases}903.3 & Actual\ CIE\ Standard\
24389\ /\ 27 & Intent\ of\ the\ CIE\ Standard
\end{cases}
\end{aligned}
\end{equation}
$$
The original $\epsilon$ and $\kappa$ constants values have been shown to exhibit discontinuity at the junction point of the two functions grafted together to create the Lightness $L^*$ function. <a name="back_reference_5"></a><a href="#reference_5">[5]</a>
Colour uses the rational values instead of the decimal values for these constants.
See Also: The CIE $L^a^b^*$ Colourspace notebook for in-depth informations about the CIE $L^a^b^$* colourspace.
The colour.lightness_CIE1976 definition is used to compute Lightness $L^*$:
End of explanation
colour.lightness(10.08)
colour.lightness(10.08, method='CIE 1976', Y_n=95)
colour.lightness(10.08, method='Lstar1976', Y_n=95)
# Plotting the "CIE 1976" "Lightness" function.
single_lightness_function_plot('CIE 1976')
# Plotting multiple "Lightness" functions for comparison.
multi_lightness_function_plot(['CIE 1976', 'Glasser 1958'])
Explanation: Note: Input luminance $Y$ and $Y_n$ are in domain [0, 100], output Lightness $L^*$ is in domain [0, 100].
Using the colour.lightness wrapper definition:
End of explanation
colour.colorimetry.lightness_Fairchild2010(10.08 / 100, 1.836)
colour.lightness(10.08 / 100, method='Fairchild 2010', epsilon=1.836)
# Plotting the "Fairchild and Wyble (2010)" "Lightness" function.
single_lightness_function_plot('Fairchild 2010')
# Plotting multiple "Lightness" functions for comparison.
multi_lightness_function_plot(['CIE 1976', 'Fairchild 2010'])
Explanation: Fairchild and Wyble (2010) Method
End of explanation
colour.colorimetry.lightness_Fairchild2011(10.08 / 100, 0.710)
colour.lightness(10.08 / 100, method='Fairchild 2011', epsilon=0.710)
# Plotting the "Fairchild and Chen (2011)" "Lightness" function.
single_lightness_function_plot('Fairchild 2011')
# Plotting multiple "Lightness" functions for comparison.
multi_lightness_function_plot(['CIE 1976', 'Fairchild 2011'])
Explanation: Fairchild and Chen (2011) Method
End of explanation
<END_TASK>