Colour 0.3.16 - Alpha Milestone
π This release integrates all the GSoC work from Pawel (@enneract), most of the code from Nishant (@njwardhan) and, the optimizations from Omar (@OmarWagih1). We would like to thank them again for their great contributions!
π With this release, we stop testing for Python 3.5 and, Scipy>=1.1.0 becomes the minimum version. This is the last feature release to support Python 2.7! We will also trim the deprecation code in the next version thus, please make sure to update your code accordingly.
The colour.SpectralDistribution.interpolate and colour.MultiSpectralDistributions.interpolate methods now honour class instantiation time interpolation parameters instead of blindly applying CIE 167:2005 recommendation, this introduces minor numerical changes.
Many definitions, methods and, module attributes have been renamed to improve consistency and we are reaching a satisfactory point in that regard, hopefully, the names will be much more stable from now on.
colour.algebracolour.algebra.smoothstep definition. (@KelSolaar)colour.characterisationUsage is simple and as follows:
\>\>\> sensitivities = colour.CAMERA\_RGB\_SPECTRAL\_SENSITIVITIES['Nikon 5100 (NPL)']\>\>\> illuminant = colour.ILLUMINANT\_SDS['D55']\>\>\> colour.matrix\_idt(sensitivities, illuminant)array([[0.46579991, 0.13409239, 0.01935141], [0.01786094, 0.77557292, -0.16775555], [0.03458652, -0.16152926, 0.74270359]])
The following ISO 7589 and 6728 spectral data has been added: (@KelSolaar)
ISO 6728 Standard Lens
ISO 7589 Diffuser
New attributes colour.SDS_LENSES containing the ISO 6728 Standard Lens and colour.SDS_FILTERScontaining the ISO 7589 Diffuser have been added.
The ISO 17321-1 24 patches reflectance data has been added as an alias to Ohta (1997) measurements. (@KelSolaar)
colour.colorimetryThe following ISO 7589 illuminants have been added: (@KelSolaar)
ISO 7589 Photographic Daylight
ISO 7589 Sensitometric Daylight
ISO 7589 Studio Tungsten
ISO 7589 Sensitometric Studio Tungsten
ISO 7589 Photoflood
ISO 7589 Sensitometric Photoflood
π¨ ISO 7589 Sensitometric Printer
Add colour.msds_constant, colour.msds_zeros and colour.msds_ones definitions. (@KelSolaar)
colour.differencecolour.difference.JND_CIE1976 attribute representing the Just Noticeable Difference (JND) according to CIE 1976 colour difference formula.colour.geometryπ¦ The geometry primitives generation code has been consolidated into a new colour.geometry sub-package. The following objects are available: (@KelSolaar)
Primitives
colour.geometry.primitive_gridcolour.geometry.primitive_cubecolour.PRIMITIVE_METHODScolour.primitivePrimitives Vertices
colour.geometry.primitive_vertices_quad_mpl (for Matplotlib usage only)colour.geometry.primitive_vertices_grid_mpl (for Matplotlib usage only)colour.geometry.primitive_vertices_cube_mpl (for Matplotlib usage only)colour.geometry.primitive_vertices_spherecolour.PRIMITIVE_VERTICES_METHODScolour.primitive_verticescolour.modelsAdd colour.models.log_encoding_Log2 and colour.models.log_decoding_Log2 log encoding and decoding definitions. (@njwardhan, @KelSolaar)
Add colour.models.exponent_function_basic and colour.models.exponent_function_monitor_curve definitions. (@njwardhan)
Add colour.models.logarithmic_function_basic, colour.models.logarithmic_function_quasilog and colour.models.logarithmic_function_camera definitions. (@njwardhan, @nick-shaw, @KelSolaar)
Implement support for IGPGTG colourspace by Hellwig and Fairchild (2020) with the colour.XYZ_to_IGPGTG and colour.IGPGTG_to_XYZ definitions. (@KelSolaar)
Implement support for DaVinci Wide Gamut colourspace. (@KelSolaar)
colour.plottingcolour.qualitycolour.quality.colour_fidelity_index_CIE2017 definition. (@enneract)colour.quality.colour_fidelity_index_ANSIIESTM3018 definition. (@enneract)colour.recoverycolour.recovery.XYZ_to_sd_Jakob2019 definition. (@enneract, @KelSolaar)colour.recovery.RGB_to_sd_Mallett2019 definition. (@enneract)colour.recovery.XYZ_to_sd_Otsu2018 definition. (@enneract, @KelSolaar)colour.utilitiescolour.utilities.set_float_precision definition and the COLOUR_SCIENCE__FLOAT_PRECISION environment variable. It will affect almost the entire API and lead to increase performance at the price of broken capabilities. (@KelSolaar)axis argument to the colour.utilities.metric_mse and colour.utilities.metric_psnr definitions. (@KelSolaar)colour.utilities.LazyCaseInsensitiveMapping class for lazily loading slow and heavy datasets. (@KelSolaar)colour.characterisationcolour.colorimetrycolour.SpectralDistribution.align, colour.MultiSpectralDistributions.align, colour.SpectralDistribution.interpolate and colour.MultiSpectralDistributions.interpolate methods did not honour the instantiation time interpolation class and were forcibly using either the colour.SpragueInterpolator or colour.CubicSplineInterpolator classes unless an interpolator argument was passed. This behaviour was not desirable and was changed so that if the instantiation time interpolation class is not one of colour.SpragueInterpolator or colour.CubicSplineInterpolator, then, it will be used instead and thus it will take precedence over the CIE 167:2005 recommendation. (@KelSolaar)The immediate consequence is small numerical changes to various spectral computations, for example:
\>\>\> illuminant = ILLUMINANTS\_SDS['D65'] \>\>\> sd\_to\_XYZ\_tristimulus\_weighting\_factors\_ASTME308( ... sd, cmfs, illuminant) # doctest: +ELLIPSIS- array([10.8402899..., 9.6843539..., 6.2160858...])+ array([10.8405832..., 9.6844909..., 6.2155622...]) \>\>\> from colour import COLOURCHECKERS\_SDS \>\>\> sd = COLOURCHECKERS\_SDS['ColorChecker N Ohta']['dark skin'] \>\>\> sd\_to\_aces\_relative\_exposure\_values(sd) # doctest: +ELLIPSIS- array([0.1171785..., 0.0866347..., 0.0589707...])+ array([0.1171814..., 0.0866360..., 0.0589726...])Colour quality metrics are affected a bit more severely: ```diff \>\>\> from colour import ILLUMINANTS\_SDS \>\>\> sd = ILLUMINANTS\_SDS['FL2'] \>\>\> colour\_rendering\_index(sd) # doctest: +ELLIPSIS- 64.1515202...+ 64.2337241... \>\>\> from colour import ILLUMINANTS\_SDS \>\>\> sd = ILLUMINANTS\_SDS['FL2'] \>\>\> colour\_quality\_scale(sd) # doctest: +ELLIPSIS- 64.0172835...+ 64.1117031...
CIE Illuminant D Series D60 chromaticity have also been modified:
- 'D60': np.array([0.321626242047397, 0.337736995955436]),+ 'D60': np.array([0.321616709705268, 0.337619916550817]),
π See #566 for more details.
colour.modelscolour.OETF_INVERSES attribute ITU-R BT.2100 HLG key was incorrectly named ITU-R BT.2100 HLD. (@jchwei)colour.HSL_to_RGB definition output was incorrect when saturation was equal to 1. (@KelSolaar, @nadersadoughi)colour.plottingcolour.plotting.diagrams.plot_chromaticity_diagram definition was not passing anymore the CMFS to the underlying colour.plotting.diagrams.plot_spectral_locus and colour.plotting.diagrams.plot_chromaticity_diagram_colours definitions. (@KelSolaar, @sobotka)colour.utilitiescolour.utilities.filter_warnings definition was not behaving properly and has been fixed. (@KelSolaar)colour.plotting.plot_RGB_colourspaces_gamuts definition was using an incorrect style argument. (@sianyi)colour.adaptation| Object | Name | Author |
|---|---|---|
colour.CMCCAT2000_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_CMCCAT2000 |
@KelSolaar |
colour.adaptation.BRADFORD_CAT |
CAT_BRADFORD |
... |
colour.adaptation.BS_CAT |
CAT_BIANCO2010 |
... |
colour.adaptation.BS_PC_CAT |
CAT_PC_BIANCO2010 |
... |
colour.adaptation.CAT02_BRILL_CAT |
CAT_CAT02_BRILL2008 |
... |
colour.adaptation.CAT02_CAT |
CAT_CAT02 |
... |
colour.adaptation.CMCCAT2000_CAT |
CAT_CMCCAT2000 |
... |
colour.adaptation.CMCCAT2000_InductionFactors |
InductionFactors_CMCCAT2000 |
... |
colour.adaptation.CMCCAT97_CAT |
CAT_CMCCAT97 |
... |
colour.adaptation.FAIRCHILD_CAT |
CAT_FAIRCHILD |
... |
colour.adaptation.SHARP_CAT |
CAT_SHARP |
... |
colour.adaptation.VON_KRIES_CAT |
CAT_VON_KRIES |
... |
colour.adaptation.XYZ_SCALING_CAT |
CAT_XYZ_SCALING |
... |
colour.algebracolour.algebra.cartesian_to_spherical and colour.algebra.spherical_to_cartesian definitions now use the ISO 31-11 parameterisation for consistency.| Object | Signature | Author |
|---|---|---|
colour.KernelInterpolator. __init__ |
KernelInterpolator(self, x, y, window=3, kernel=kernel_lanczos, kernel_kwargs=None, padding_kwargs=None, dtype=DEFAULT_FLOAT_DTYPE) |
@KelSolaar |
| Object | Name | Author |
|---|---|---|
colour.KernelInterpolator.kernel_args |
kernel_kwargs |
@KelSolaar |
colour.KernelInterpolator.padding_args |
padding_kwargs |
... |
colour.appearance| Object | Name | Author |
|---|---|---|
colour.ATD95_Specification |
CAM_Specification_ATD95 |
@KelSolaar |
colour.CAM16_Specification |
CAM_Specification_CAM16 |
... |
colour.CAM16_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_CAM16 |
... |
colour.CIECAM02_Specification |
CAM_Specification_CIECAM02 |
... |
colour.CIECAM02_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_CIECAM02 |
... |
colour.HUNT_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_HUNT |
... |
colour.Hunt_Specification |
CAM_Specification_Hunt |
... |
colour.LLAB_Specification |
CAM_Specification_LLAB |
... |
colour.LLAB_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_LLAB |
... |
colour.Nayatani95_Specification |
CAM_Specification_Nayatani95 |
... |
colour.RLAB_Specification |
CAM_Specification_RLAB |
... |
colour.RLAB_VIEWING_CONDITIONS |
VIEWING_CONDITIONS_RLAB |
... |
colour.appearance.CAM16_InductionFactors |
InductionFactors_CAM16 |
... |
colour.appearance.CIECAM02_InductionFactors |
InductionFactors_CIECAM02 |
... |
colour.appearance.Hunt_InductionFactors |
InductionFactors_Hunt |
... |
colour.appearance.LLAB_InductionFactors |
InductionFactors_LLAB |
... |
colour.appearance.RLAB_D_FACTOR |
D_FACTOR_RLAB |
... |
colour.appearance.chromatic_adaptation_matrix_VonKries |
matrix_chromatic_adaptation_VonKries |
... |
colour.blindness| Object | Name | Author |
|---|---|---|
colour.blindness.anomalous_trichromacy_cmfs_Machado2009 |
msds_cmfs_anomalous_trichromacy_Machado2009 |
@KelSolaar |
colour.blindness.anomalous_trichromacy_matrix_Machado2009 |
matrix_anomalous_trichromacy_Machado2009 |
... |
colour.blindness.cvd_matrix_Machado2009 |
matrix_cvd_Machado2009 |
... |
colour.characterisation| Object | Name | Author |
|---|---|---|
colour.CAMERA_RGB_SPECTRAL_SENSITIVITIES |
MSDS_CAMERA_SENSITIVITIES |
@KelSolaar |
colour.COLOURCHECKERS |
CCS_COLOURCHECKERS |
... |
colour.COLOURCHECKER_SDS |
SDS_COLOURCHECKERS |
... |
colour.COLOUR_CORRECTION_MATRIX_METHODS |
MATRIX_COLOUR_CORRECTION_METHODS |
... |
colour.DISPLAY_RGB_PRIMARIES |
MSDS_DISPLAY_PRIMARIES |
... |
colour.characterisation.augmented_matrix_Cheung2004 |
matrix_augmented_Cheung2004 |
... |
colour.characterisation.colour_correction_matrix_Cheung2004 |
matrix_colour_correction_Cheung2004 |
... |
colour.characterisation.colour_correction_matrix_Finlayson2015 |
matrix_colour_correction_Finlayson2015 |
... |
colour.characterisation.colour_correction_matrix_Vandermonde |
matrix_colour_correction_Vandermonde |
... |
colour.colour_correction_matrix |
matrix_colour_correction |
... |
colour.colorimetrycolour.sd_blackbody definition now returns values in W/sr/m2/nm instead of W/sr/m2/m. See #559 for more background information. (@KelSolaar, @Wagyx, @MichaelMauderer)colour.colorimetrycolour.colorimetry.sd_CIE_illuminant_D_series definition return a spectral distribution whose name includes the used chromaticity coordinates and whose interpolator is instantiated from colour.algebra.LinearInterpolator. (@KelSolaar)| Object | Signature | Author |
|---|---|---|
colour.MultiSpectralDistributions.align |
align(self, shape, interpolator=None, interpolator_kwargs=None, extrapolator=None, extrapolator_kwargs=None, **kwargs) |
@KelSolaar |
colour.MultiSpectralDistributions.extrapolate |
extrapolate(self, shape, extrapolator=None, extrapolator_kwargs=None, **kwargs) |
... |
colour.MultiSpectralDistributions.interpolate |
interpolate(self, shape, interpolator=None, interpolator_kwargs=None, **kwargs) |
... |
colour.SpectralDistribution.align |
align(self, shape, interpolator=None, interpolator_kwargs=None, extrapolator=None, extrapolator_kwargs=None, **kwargs) |
... |
colour.SpectralDistribution.extrapolate |
extrapolate(self, shape, extrapolator=None, extrapolator_kwargs=None, **kwargs) |
... |
colour.SpectralDistribution.interpolate |
interpolate(self, shape, interpolator=None, interpolator_kwargs=None, **kwargs) |
... |
| Object | Name | Author |
|---|---|---|
colour.ASTME308_PRACTISE_SHAPE |
SPECTRAL_SHAPE_ASTME308 |
@KelSolaar |
colour.CMFS |
MSDS_CMFS |
... |
colour.DEFAULT_SPECTRAL_SHAPE |
SPECTRAL_SHAPE_DEFAULT |
... |
colour.HUNTERLAB_ILLUMINANTS |
TVS_ILLUMINANTS_HUNTERLAB |
... |
colour.ILLUMINANTS_SDS |
SDS_ILLUMINANTS |
... |
colour.ILLUMINANTS |
CCS_ILLUMINANTS |
... |
colour.LEFS |
SDS_LEFS |
... |
colour.LIGHT_SOURCES_SDS |
SDS_LIGHT_SOURCES |
... |
colour.LIGHT_SOURCES |
CCS_LIGHT_SOURCES |
... |
colour.MULTI_SD_TO_XYZ_METHODS |
MSDS_TO_XYZ_METHODS |
... |
colour.colorimetry.D_ILLUMINANTS_S_SDS |
SDS_BASIS_FUNCTIONS_CIE_ILLUMINANT_D_SERIES |
... |
colour.colorimetry.LMS_CMFS |
MSDS_CMFS_LMS |
... |
colour.colorimetry.PHOTOPIC_LEFS |
SDS_LEFS_PHOTOPIC |
... |
colour.colorimetry.RGB_CMFS |
MSDS_CMFS_RGB |
... |
colour.colorimetry.SCOTOPIC_LEFS |
SDS_LEFS_SCOTOPIC |
... |
colour.colorimetry.STANDARD_OBSERVERS_CMFS |
MSDS_CMFS_STANDARD_OBSERVER |
... |
colour.colorimetry.multi_sds_to_XYZ_ASTME308 |
msds_to_XYZ_ASTME308 |
... |
colour.colorimetry.multi_sds_to_XYZ_integration |
msds_to_XYZ_integration |
... |
colour.colorimetry.sds_and_multi_sds_to_multi_sds |
sds_and_msds_to_msds |
... |
colour.colorimetry.sds_and_multi_sds_to_sds |
sds_and_msds_to_sds |
... |
colour.multi_sds_to_XYZ |
msds_to_XYZ |
... |
colour.constants| Object | Name | Author |
|---|---|---|
colour.constants.AVOGADRO_CONSTANT |
CONSTANT_AVOGADRO |
@KelSolaar |
colour.constants.BOLTZMANN_CONSTANT |
CONSTANT_BOLTZMANN |
... |
colour.constants.K_M |
CONSTANT_K_M |
... |
colour.constants.KP_M |
CONSTANT_KP_M |
... |
colour.constants.PLANCK_CONSTANT |
CONSTANT_PLANCK |
... |
colour.constants.LIGHT_SPEED |
CONSTANT_LIGHT_SPEED |
... |
colour.continuous| Object | Signature | Author |
|---|---|---|
colour.continuous.MultiSignals.extrapolator_args |
extrapolator_kwargs |
@KelSolaar |
colour.continuous.MultiSignals.interpolator_args |
interpolator_kwargs |
... |
colour.continuous.Signal.extrapolator_args |
extrapolator_kwargs |
... |
colour.continuous.Signal.interpolator_args |
interpolator_kwargs |
... |
colour.corresponding| Object | Name | Author |
|---|---|---|
colour.constants.BRENEMAN_EXPERIMENTS_PRIMARIES_CHROMATICITIES |
BRENEMAN_EXPERIMENT_PRIMARIES_CHROMATICITIES |
@KelSolaar |
colour.geometry| Object | Signature | Author |
|---|---|---|
colour.geometry.quad |
primitive_vertices_quad_mpl(width=1, height=1, depth=0, origin=np.array([0, 0]), axis='+z') |
@KelSolaar |
colour.geometry.grid |
primitive_vertices_grid_mpl(width=1, height=1, depth=0, width_segments=1, height_segments=1, origin=np.array([0, 0]), axis='+z') |
... |
colour.geometry.cube |
primitive_vertices_cube_mpl(width=1, height=1, depth=1, width_segments=1, height_segments=1, depth_segments=1, origin=np.array([0, 0, 0]), planes=None) |
... |
colour.io| Object | Signature | Author |
|---|---|---|
colour.LUT1D.apply |
apply(self, RGB, interpolator=LinearInterpolator, interpolator_kwargs=None, **kwargs) |
@KelSolaar |
colour.LUT3x1D.apply |
apply(self, RGB, interpolator=LinearInterpolator, interpolator_kwargs=None, **kwargs) |
... |
colour.LUT3D.apply |
apply(self, RGB, interpolator=table_interpolation_trilinear, interpolator_kwargs=None, **kwargs) |
... |
colour.LutSequence.apply |
apply(self, RGB, interpolator_1D=LinearInterpolator, interpolator_1D_kwargs=None, interpolator_3D=table_interpolation_trilinear, interpolator_3D_kwargs=None, **kwargs) |
... |
colour.models| Object | Signature | Author |
|---|---|---|
colour.OSA_UCS_to_XYZ |
OSA_UCS_to_XYZ(Ljg, optimisation_kwargs=None, **kwargs) |
@KelSolaar |
colour.RGB_Colourspace |
RGB_Colourspace(self, name, primaries, whitepoint, whitepoint_name=None, matrix_RGB_to_XYZ=None, matrix_XYZ_to_RGB=None, cctf_encoding=None, cctf_decoding=None, use_derived_matrix_RGB_to_XYZ=False, use_derived_matrix_XYZ_to_RGB=False) |
... |
colour.RGB_to_XYZ |
RGB_to_XYZ(RGB, illuminant_RGB, illuminant_XYZ, matrix_RGB_to_XYZ, chromatic_adaptation_transform='CAT02', cctf_decoding=None, **kwargs) |
... |
colour.XYZ_to_RGB |
XYZ_to_RGB(XYZ, illuminant_XYZ, illuminant_RGB, matrix_XYZ_to_RGB, chromatic_adaptation_transform='CAT02', cctf_encoding=None, **kwargs) |
... |
| Object | Access | Author |
|---|---|---|
colour.models.ACES_RICD |
colour.characterisation.MSDS_ACES_RICD |
@KelSolaar |
| Object | Name | Author |
|---|---|---|
colour.RGB_Colourspace.RGB_to_XYZ_matrix |
matrix_RGB_to_XYZ |
@KelSolaar |
colour.RGB_Colourspace.XYZ_to_RGB_matrix |
matrix_XYZ_to_RGB |
... |
colour.RGB_Colourspace.use_derived_RGB_to_XYZ_matrix |
use_derived_matrix_RGB_to_XYZ |
... |
colour.RGB_Colourspace.use_derived_XYZ_to_RGB_matrix |
use_derived_matrix_XYZ_to_RGB |
... |
colour.RGB_to_RGB_matrix |
matrix_RGB_to_RGB |
... |
colour.YCBCR_WEIGHTS |
WEIGHTS_YCBCR |
... |
colour.models.ACES_2065_1_COLOURSPACE |
RGB_COLOURSPACE_ACES2065_1 |
... |
colour.models.ACES_CCT_COLOURSPACE |
RGB_COLOURSPACE_ACESCCT |
... |
colour.models.ACES_CC_COLOURSPACE |
RGB_COLOURSPACE_ACESCC |
... |
colour.models.ACES_CG_COLOURSPACE |
RGB_COLOURSPACE_ACESCG |
... |
colour.models.ACES_PROXY_COLOURSPACE |
RGB_COLOURSPACE_ACESPROXY |
... |
colour.models.ADOBE_RGB_1998_COLOURSPACE |
RGB_COLOURSPACE_ADOBE_RGB1998 |
... |
colour.models.ADOBE_WIDE_GAMUT_RGB_COLOURSPACE |
RGB_COLOURSPACE_ADOBE_WIDE_GAMUT_RGB |
... |
colour.models.ALEXA_WIDE_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_ALEXA_WIDE_GAMUT |
... |
colour.models.APPLE_RGB_COLOURSPACE |
RGB_COLOURSPACE_APPLE_RGB |
... |
colour.models.BEST_RGB_COLOURSPACE |
RGB_COLOURSPACE_BEST_RGB |
... |
colour.models.BETA_RGB_COLOURSPACE |
RGB_COLOURSPACE_BETA_RGB |
... |
colour.models.BT2020_COLOURSPACE |
RGB_COLOURSPACE_BT2020 |
... |
colour.models.BT470_525_COLOURSPACE |
RGB_COLOURSPACE_BT470_525 |
... |
colour.models.BT470_625_COLOURSPACE |
RGB_COLOURSPACE_BT470_625 |
... |
colour.models.BT709_COLOURSPACE |
RGB_COLOURSPACE_BT709 |
... |
colour.models.CIE_RGB_COLOURSPACE |
RGB_COLOURSPACE_CIE_RGB |
... |
colour.models.CINEMA_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_CINEMA_GAMUT |
... |
colour.models.COLOR_MATCH_RGB_COLOURSPACE |
RGB_COLOURSPACE_COLOR_MATCH_RGB |
... |
colour.models.DCDM_XYZ_COLOURSPACE |
RGB_COLOURSPACE_DCDM_XYZ |
... |
colour.models.DCI_P3_COLOURSPACE |
RGB_COLOURSPACE_DCI_P3_P |
... |
colour.models.DCI_P3_P_COLOURSPACE |
RGB_COLOURSPACE_DCI_P3 |
... |
colour.models.DISPLAY_P3_COLOURSPACE |
RGB_COLOURSPACE_DISPLAY_P3 |
... |
colour.models.DJI_D_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_DJI_D_GAMUT |
... |
colour.models.DON_RGB_4_COLOURSPACE |
RGB_COLOURSPACE_DON_RGB_4 |
... |
colour.models.DRAGON_COLOR_2_COLOURSPACE |
RGB_COLOURSPACE_DRAGON_COLOR_2 |
... |
colour.models.DRAGON_COLOR_COLOURSPACE |
RGB_COLOURSPACE_DRAGON_COLOR |
... |
colour.models.ECI_RGB_V2_COLOURSPACE |
RGB_COLOURSPACE_ECI_RGB_V2 |
... |
colour.models.EKTA_SPACE_PS_5_COLOURSPACE |
RGB_COLOURSPACE_EKTA_SPACE_PS_5 |
... |
colour.models.ERIMM_RGB_COLOURSPACE |
RGB_COLOURSPACE_ERIMM_RGB |
... |
colour.models.FILMLIGHT_E_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_FILMLIGHT_E_GAMUT |
... |
colour.models.F_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_F_GAMUT |
... |
colour.models.MAX_RGB_COLOURSPACE |
RGB_COLOURSPACE_MAX_RGB |
... |
colour.models.NTSC_1953_COLOURSPACE |
RGB_COLOURSPACE_NTSC1953 |
... |
colour.models.NTSC_1987_COLOURSPACE |
RGB_COLOURSPACE_NTSC1987 |
... |
colour.models.P3_D65_COLOURSPACE |
RGB_COLOURSPACE_P3_D65 |
... |
colour.models.PAL_SECAM_COLOURSPACE |
RGB_COLOURSPACE_PAL_SECAM |
... |
colour.models.POINTER_GAMUT_BOUNDARIES |
CCS_POINTER_GAMUT_BOUNDARY |
... |
colour.models.POINTER_GAMUT_DATA |
DATA_POINTER_GAMUT_VOLUME |
... |
colour.models.POINTER_GAMUT_ILLUMINANT |
CCS_ILLUMINANT_POINTER_GAMUT |
... |
colour.models.PROPHOTO_RGB_COLOURSPACE |
RGB_COLOURSPACE_PROPHOTO_RGB |
... |
colour.models.PROTUNE_NATIVE_COLOURSPACE |
RGB_COLOURSPACE_PROTUNE_NATIVE |
... |
colour.models.RED_COLOR_2_COLOURSPACE |
RGB_COLOURSPACE_RED_COLOR_2 |
... |
colour.models.RED_COLOR_3_COLOURSPACE |
RGB_COLOURSPACE_RED_COLOR_3 |
... |
colour.models.RED_COLOR_4_COLOURSPACE |
RGB_COLOURSPACE_RED_COLOR_4 |
... |
colour.models.RED_COLOR_COLOURSPACE |
RGB_COLOURSPACE_RED_COLOR |
... |
colour.models.RED_WIDE_GAMUT_RGB_COLOURSPACE |
RGB_COLOURSPACE_RED_WIDE_GAMUT_RGB |
... |
colour.models.RIMM_RGB_COLOURSPACE |
RGB_COLOURSPACE_RIMM_RGB |
... |
colour.models.ROMM_RGB_COLOURSPACE |
RGB_COLOURSPACE_ROMM_RGB |
... |
colour.models.RUSSELL_RGB_COLOURSPACE |
RGB_COLOURSPACE_RUSSELL_RGB |
... |
colour.models.SHARP_RGB_COLOURSPACE |
RGB_COLOURSPACE_SHARP_RGB |
... |
colour.models.SMPTE_240M_COLOURSPACE |
RGB_COLOURSPACE_SMPTE_240M |
... |
colour.models.SMPTE_C_COLOURSPACE |
RGB_COLOURSPACE_SMPTE_C |
... |
colour.models.S_GAMUT3_CINE_COLOURSPACE |
RGB_COLOURSPACE_S_GAMUT3_CINE |
... |
colour.models.S_GAMUT3_COLOURSPACE |
RGB_COLOURSPACE_S_GAMUT3 |
... |
colour.models.S_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_S_GAMUT |
... |
colour.models.VENICE_S_GAMUT3_CINE_COLOURSPACE |
RGB_COLOURSPACE_VENICE_S_GAMUT3_CINE |
... |
colour.models.VENICE_S_GAMUT3_COLOURSPACE |
RGB_COLOURSPACE_VENICE_S_GAMUT3 |
... |
colour.models.V_GAMUT_COLOURSPACE |
RGB_COLOURSPACE_V_GAMUT |
... |
colour.models.XTREME_RGB_COLOURSPACE |
RGB_COLOURSPACE_XTREME_RGB |
... |
colour.models.oetf_BT2020 |
eotf_inverse_BT2020 |
... |
colour.models.sRGB_COLOURSPACE |
RGB_COLOURSPACE_sRGB |
... |
colour.notationcolour.notation.RGB_to_HEX definition will now clip negative values and the whole input array will be normalised to the maximum value if values over 1 are encountered. (@KelSolaar)colour.plotting| Object | Signature | Author |
|---|---|---|
colour.plotting.plot_multi_colour_swatches |
plot_multi_colour_swatches(colour_swatches, width=1, height=1, spacing=0, columns=None, direction='+y', text_kwargs=None, background_colour=(1.0, 1.0, 1.0), compare_swatches=None, **kwargs) |
@KelSolaar |
colour.plotting.plot_image |
plot_image(image, imshow_kwargs=None, text_kwargs=None, **kwargs) |
... |
colour.plotting.plot_sds_in_chromaticity_diagram_CIE1931 |
plot_sds_in_chromaticity_diagram_CIE1931(sds, cmfs='CIE 1931 2 Degree Standard Observer', annotate_kwargs=None, chromaticity_diagram_callable_CIE1931=plot_chromaticity_diagram_CIE1931, **kwargs) |
... |
colour.plotting.plot_sds_in_chromaticity_diagram_CIE1960UCS |
plot_sds_in_chromaticity_diagram_CIE1960UCS(sds, cmfs='CIE 1931 2 Degree Standard Observer', annotate_kwargs=None, chromaticity_diagram_callable_CIE1960UCS=plot_chromaticity_diagram_CIE1960UCS, **kwargs) |
... |
colour.plotting.plot_sds_in_chromaticity_diagram_CIE1976UCS |
plot_sds_in_chromaticity_diagram_CIE1976UCS(sds, cmfs='CIE 1931 2 Degree Standard Observer', annotate_kwargs=None, chromaticity_diagram_callable_CIE1976UCS=plot_chromaticity_diagram_CIE1976UCS, **kwargs) |
... |
colour.plotting.plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931 |
plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1931=plot_RGB_colourspaces_in_chromaticity_diagram_CIE1931, scatter_kwargs=None, **kwargs) |
... |
colour.plotting.plot_RGB_chromaticities_in_chromaticity_diagram_CIE1960UCS |
plot_RGB_chromaticities_in_chromaticity_diagram_CIE1960UCS(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1960UCS=plot_RGB_colourspaces_in_chromaticity_diagram_CIE1960UCS, scatter_kwargs=None, **kwargs) |
... |
colour.plotting.plot_RGB_chromaticities_in_chromaticity_diagram_CIE1976UCS |
plot_RGB_chromaticities_in_chromaticity_diagram_CIE1976UCS(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1976UCS=plot_RGB_colourspaces_in_chromaticity_diagram_CIE1976UCS, scatter_kwargs=None, **kwargs) |
... |
colour.plotting.plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1931 |
plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1931(chromaticity_diagram_callable_CIE1931=plot_chromaticity_diagram_CIE1931, chromaticity_diagram_clipping=False, ellipse_kwargs=None, **kwargs) |
... |
colour.plotting.plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1960UCS |
plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1960UCS(chromaticity_diagram_callable_CIE1960UCS=plot_chromaticity_diagram_CIE1960UCS, chromaticity_diagram_clipping=False, ellipse_kwargs=None, **kwargs) |
... |
colour.plotting.plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1976UCS |
plot_ellipses_MacAdam1942_in_chromaticity_diagram_CIE1976UCS(chromaticity_diagram_callable_CIE1976UCS=plot_chromaticity_diagram_CIE1976UCS, chromaticity_diagram_clipping=False, ellipse_kwargs=None, **kwargs) |
... |
colour.plotting.plot_constant_hue_loci |
plot_constant_hue_loci(data, model, scatter_kwargs=None, **kwargs) |
... |
colour.plotting.plot_planckian_locus_in_chromaticity_diagram_CIE1931 |
plot_planckian_locus_in_chromaticity_diagram_CIE1931(illuminants=None, annotate_kwargs=None, chromaticity_diagram_callable_CIE1931=plot_chromaticity_diagram_CIE1931, planckian_locus_callable_CIE1931=plot_planckian_locus_CIE1931, **kwargs) |
... |
colour.plotting.plot_planckian_locus_in_chromaticity_diagram_CIE1960UCS |
plot_planckian_locus_in_chromaticity_diagram_CIE1960UCS(illuminants=None, annotate_kwargs=None, chromaticity_diagram_callable_CIE1960UCS=plot_chromaticity_diagram_CIE1960UCS, planckian_locus_callable_CIE1960UCS=plot_planckian_locus_CIE1960UCS, **kwargs) |
... |
| Object | Access | Author |
|---|---|---|
colour.plotting.quad |
colour.geometry.primitive_vertices_quad_mpl |
@KelSolaar |
colour.plotting.grid |
colour.geometry.primitive_vertices_grid_mpl |
... |
colour.plotting.cube |
colour.geometry.primitive_vertices_cube_mpl |
... |
| Object | Name | Author |
|---|---|---|
colour.plotting.ASTMG173_DIRECT_CIRCUMSOLAR |
SD_ASTMG173_DIRECT_CIRCUMSOLAR |
@KelSolaar |
colour.plotting.ASTMG173_ETR |
SD_ASTMG173_ETR |
... |
colour.plotting.ASTMG173_GLOBAL_TILT |
SD_ASTMG173_GLOBAL_TILT |
... |
| π | colour.plotting.COLOUR_STYLE_CONSTANTS |
CONSTANTS_COLOUR_STYLE |
colour.plotting.COLOUR_ARROW_STYLE |
CONSTANTS_ARROW_STYLE |
... |
colour.quality| Object | Name | Author |
|---|---|---|
colour.quality.CQS_Specification |
ColourRendering_Specification_CQS |
@KelSolaar |
colour.quality.CRI_Specification |
ColourRendering_Specification_CRI |
... |
colour.quality.TCS_SDS |
SDS_TCS |
... |
colour.quality.VS_SDS |
SDS_VS |
... |
colour.recovery| Object | Signature | Author |
|---|---|---|
colour.recovery.XYZ_to_sd_Meng2015 |
XYZ_to_sd_Meng2015(XYZ, cmfs=STANDARD_OBSERVERS_CMFS['CIE 1931 2 Degree Standard Observer'].copy().align(DEFAULT_SPECTRAL_SHAPE_MENG_2015), illuminant=sd_ones(DEFAULT_SPECTRAL_SHAPE_MENG_2015), optimisation_kwargs=None, **kwargs) |
@KelSolaar |
| Object | Name | Author |
|---|---|---|
colour.quality.SMITS_1999_SDS |
SDS_SMITS1999 |
@KelSolaar |
colour.temperature| Object | Signature | Author |
|---|---|---|
colour.temperature.CCT_to_xy_Hernandez1999 |
CCT_to_xy_Hernandez1999(CCT, optimisation_kwargs=None, **kwargs) |
@KelSolaar |
colour.temperature.CCT_to_xy_McCamy1992 |
CCT_to_xy_McCamy1992(CCT, optimisation_kwargs=None, **kwargs) |
... |
colour.temperature.uv_to_CCT_Krystek1985 |
uv_to_CCT_Krystek1985(uv, optimisation_kwargs=None, **kwargs) |
... |
colour.temperature.xy_to_CCT_CIE_D |
xy_to_CCT_CIE_D(xy, optimisation_kwargs=None, **kwargs) |
... |
colour.temperature.xy_to_CCT_Kang2002 |
xy_to_CCT_Kang2002(xy, optimisation_kwargs=None, **kwargs) |
... |
colour.utilities| Object | Signature | Author |
|---|---|---|
colour.utilities.as_float |
as_float(a, dtype=None) |
@KelSolaar |
colour.utilities.as_float_array |
as_float_array(a, dtype=None) |
... |
colour.utilities.as_int |
as_int(a, dtype=None) |
... |
colour.utilities.as_int_array |
as_int_array(a, dtype=None) |
... |
| β | colour.utilities.filter_warnings |
filter_warnings(colour_runtime_warnings=None, colour_usage_warnings=None, colour_warnings=None, python_warnings=None) |
colour.utilities.metric_mse |
metric_mse(a, b, axis=None) |
... |
colour.utilities.metric_psnr |
metric_psnr(a, b, max_a=1, axis=None) |
... |
| β | colour.utilities.suppress_warnings |
suppress_warnings(colour_runtime_warnings=None, colour_usage_warnings=None, colour_warnings=None, python_warnings=None) |
colour.volume| Object | Name | Author |
|---|---|---|
colour.ILLUMINANTS_OPTIMAL_COLOUR_STIMULI |
OPTIMAL_COLOUR_STIMULI_ILLUMINANTS |
@KelSolaar |
Colour 0.3.15 - Alpha Milestone
colour.colorimetryThe typical CIE LED illuminants spectral power distributions and chromaticity coordinates have been added to the datasets: (@KelSolaar)
The recommended indoor illuminants ID65 and ID50 spectral power distributions and chromaticity coordinates have been added to the datasets. (@KelSolaar)
image
Add colour.colorimetry.sds_and_multi_sds_to_multi_sds definition that converts given spectral and multi-spectral distributions to multi-spectral distributions. (@KelSolaar)
colour.modelscolour.models.Jab_to_JCh and colour.models.JCh_to_Jab definitions. (@KelSolaar)colour.plottingImporting colour is enough to be able to plot in-place of importing colour.plotting: (@KelSolaar)
>>> import colour>>> colour.plotting.plot_image<function plot_image at 0x11e6e47a0>
colour.qualitycolour.spectral_similarity_index definition.colourVarious fixes have been implemented to ensure compatibility with Python 3.8 and Numpy 1.18. (@KelSolaar, @MaxSchambach, @mzszym)
π Class methods were missing documentation as a consequence of adopting the new documentation build process, this has been addressed accordingly.
colour.iocolour.notationcolour.temperaturecolour.temperature.CCT_to_uv_Krystek1985 definition was incorrectly implemented. Incorrect reading of the reference publications ended up with exponentiations being different, e.g. 10**4 was replaced with 10e4. (@OlliNiemitalo)colour.algebracolour.algebra.cartesian_to_spherical and colour.algebra.spherical_to_cartesian use ISO conversion convention. Ο is in range [0, +inf], ΞΈ is in range [0, pi] radians, i.e. [0, 180] degrees, and Ο is in range [-pi, pi] radians, i.e. [-180, 180] degrees.colour.volumecolour.is_within_visible_spectrum: (@KelSolaar)
XYZ_outer_surface(XYZ, cmfs=STANDARD_OBSERVERS_CMFS['CIE 1931 2 Degree Standard Observer'].clone().align(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), illuminant=sd_ones(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), tolerance=None, **kwargs)colour.volume.XYZ_outer_surface: (@KelSolaar)
XYZ_outer_surface(cmfs=STANDARD_OBSERVERS_CMFS['CIE 1931 2 Degree Standard Observer'].clone().align(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), illuminant=sd_ones(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), **kwargs)colour.plottingcolour.plotting.common.wrap_title: (@KelSolaar)