Colour Science for Python
Colour 0.3.11 - Alpha Milestone
This release is an important milestone on The Road to Stable. The spectral backend has been entirely overhauled and is based on a continuous signal implementation. It is backward incompatible but we think that the ease of use and speed improvements are worth it.
It requires minimal code changes from an usage standpoint compared to previous version, e.g. colour.SpectralPowerDistribution
instantiation now requires spectral data as first argument:
Colour 0.3.11
>>> data = {
... 500: 0.0651,
... 520: 0.0705,
... 540: 0.0772,
... 560: 0.0870,
... 580: 0.1128,
... 600: 0.1360
... }
>>> SpectralPowerDistribution(data)
Colour 0.3.10
>>> data = {
... 500: 0.0651,
... 520: 0.0705,
... 540: 0.0772,
... 560: 0.0870,
... 580: 0.1128,
... 600: 0.1360
... }
>>> SpectralPowerDistribution('Sample', data)
The documentation has been entirely rewritten with an improved presentation and layout, the bibliography and cross-references have been fixed and overall it should be much easier and accessible than the interim automatic version previously used. It still misses a lot of context content but we will be gradually addressing that in future versions.
As part of some import API changes, a deprecation system has been implement so that only key objects are exposed at the colour
top level namespace. The colour.plotting
sub-package is also affected. As a result you might see warnings as such:
>>> import colour
>>> colour.tsplit
/Users/kelsolaar/Documents/Development/colour-science/colour/colour/utilities/verbose.py:141: ColourWarning: "colour.tsplit" object access is deprecated and will change to "colour.utilities.tsplit" in a future release.
warn(*args, **kwargs)
<function tsplit at 0x103152c08>
Please adjust your access accordingly to the warnings and the updated documentation. You can also find the related API changes exposed into the colour.API_CHANGES
and colour.plotting.API_CHANGES
attributes.
We have also started to use Invoke to provide automation in our regular maintenance tasks.
colour.chromatic_adaptation
definition wrapping the following definitions: (@kelsolaar)
colour.adaptation.chromatic_adaptation_CIE1994
colour.adaptation.chromatic_adaptation_CMCCAT2000
colour.adaptation.chromatic_adaptation_Fairchild1990
colour.adaptation.chromatic_adaptation_VonKries
colour.NullInterpolator
class: a call within given tolerances will return existing y
variable values or default
if outside tolerances. (@kelsolaar)colour.kernel_nearest_neighbour
, colour.kernel_linear
, colour.kernel_sinc
, colour.kernel_lanczos
, and colour.kernel_cardinal_spline
interpolating kernel definitions for use with the new colour.KernelInterpolator
class performing interpolation of a 1-D function. (@kelsolaar)colour.XYZ_to_CAM16
and colour.CAM16_to_XYZ
definitions. (@kelsolaar)colour.continuous.AbstractContinuousFunction
, colour.continuous.Signal
and colour.continuous.MultiSignal
classes implementing support for continuous functions/signals representation. (@kelsolaar, @MichaelMauderer)Implement support for Li et al. (2017) CAM16 based uniform colourspaces colour difference with colour.difference.delta_E_CAM16LCD
, colour.difference.delta_E_CAM16SCD
, and colour.difference.delta_E_CAM16UCS
definitions. (@KelSolaar)
colour.delta_E
wrapper definition has been improved and accepts the following methods: (@kelsolaar)
CIE 1976
CIE 1994
CIE 2000
CMC
CAM02-LCD
CAM02-SCD
CAM02-UCS
CAM16-LCD
CAM16-SCD
CAM16-UCS
colour.models.oetf_BT2100_PQ
colour.models.oetf_reverse_BT2100_PQ
colour.models.eotf_BT2100_PQ
colour.models.eotf_reverse_BT2100_PQ
colour.models.ootf_BT2100_PQ
colour.models.ootf_reverse_BT2100_PQ
colour.models.oetf_BT2100_HLG
colour.models.oetf_reverse_BT2100_HLG
colour.models.eotf_BT2100_HLG
colour.models.eotf_reverse_BT2100_HLG
colour.models.ootf_BT2100_HLG
colour.models.ootf_reverse_BT2100_HLG
colour.models.oetf_SMPTE240M
and colour.models.eotf_SMPTE240M
definitions. (@KelSolaar)colour.oetf_reverse
and colour.eotf_reverse
definitions and colour.OETFS_REVERSE
and colour.EOTFS_REVERSE
attributes defining relevant reverse OETF and EOTF conversions. (@kelsolaar, @Nick-Shaw, @KevinJW)colour.legal_to_full
and colour.full_to_legal
definitions providing conversions between full range and legal range. (@kelsolaar)colour.CV_range
definition returning the Code Value range for given bit depth, range legality and representation. (@Nick-Shaw)colour.JMh_CAM16_to_CAM16LCD
, colour.CAM16LCD_to_JMh_CAM16
, colour.JMh_CAM16_to_CAM16SCD
, colour.CAM16SCD_to_JMh_CAM16
, colour.JMh_CAM16_to_CAM16UCS
, CAM16UCS_to_JMh_CAM16
definitions. (@KelSolaar)colour.RGB_Colourspace.__str__
and colour.RGB_Colourspace.__repr__
methods.
(@KelSolaar)colour.XYZ_to_spectral
definition wrapping the following definitions: (@kelsolaar)
colour.recovery.XYZ_to_spectral_Meng2015
colour.recovery.RGB_to_spectral_Smits1999
colour.utilities.closest_indexes
definition that returns a
array closest element indexes to reference b
array elements. (@kelsolaar)colour..utilities.fill_nan
definition that fills given array NaNs either through linear interpolation or with given constant value. (@kelsolaar)colour.utilities.ndarray_write
context manager that sets given array writeable to perform an operation and then read-only. (@kelsolaar)colour.utilities.first_item
definition that returns the first item of given iterable. (@kelsolaar)colour.models.log_encoding_CanonLog3
and colour.models.log_decoding_CanonLog3
definitions implementation was slightly incorrect, they have been reimplemented correctly. (@Nick-Shaw, @kelsolaar)colour.models.log_encoding_SLog2
and colour.models.log_decoding_SLog2
definitions implementation was incorrect, they have been reimplemented correctly. (@Nick-Shaw, @kelsolaar)colour.plotting.display
definition was raising an exception when attempting to save a figure. (@kelsolaar)colour.recovery.XYZ_to_spectral_Meng2015
definition recovered spectral power distribution has been scaled by 100. (@kelsolaar)colour.temperature.uv_to_CCT_Ohno2013
definition was incorrectly using parabolic solution. (@brandondube, @KelSolaar)
colour.utilities.is_iterable
definition does not consume consumes the first item of given iterator. (@kelsolaar, @MichaelMauderer)colour.adaptation.chromatic_adaptation_CMCCAT2000
: (@kelsolaar)
chromatic_adaptation_CMCCAT2000(XYZ, XYZ_w, XYZ_wr, L_A1, L_A2, surround=CMCCAT2000_VIEWING_CONDITIONS['Average'], direction='Forward')
: (@kelsolaar)colour.DEFAULT_WAVELENGTH_DECIMALS
: (@kelsolaar)colour.SpectralMapping
colour.SpectralPowerDistribution
: (@kelsolaar)
__init__(self, data=None, domain=None, **kwargs)
: (@kelsolaar)colour.SpectralPowerDistribution.data
colour.SpectralPowerDistribution.title
: (@kelsolaar)
SpectralPowerDistribution.strict_name
: (@kelsolaar)colour.SpectralPowerDistribution.items
: (@kelsolaar)colour.SpectralPowerDistribution.__iter__
: (@kelsolaar)colour.SpectralPowerDistribution.get
colour.SpectralPowerDistribution.extrapolate
: (@kelsolaar)
extrapolate(self, shape, extrapolator=None, extrapolator_args=None)
colour.SpectralPowerDistribution.interpolate
: (@kelsolaar)
interpolate(self, shape, interpolator=None, interpolator_args=None)
colour.SpectralPowerDistribution.align
: (@kelsolaar)
align(self, shape, interpolator=None, interpolator_args=None, extrapolator=None, extrapolator_args=None)
colour.SpectralPowerDistribution.trim_wavelengths
: (@kelsolaar)
SpectralPowerDistribution.trim
: (@kelsolaar)colour.SpectralPowerDistribution.zeros
colour.SpectralPowerDistribution.clone
: (@kelsolaar)
SpectralPowerDistribution.copy
colour.MultiSpectralPowerDistribution
: (@kelsolaar)
__init__(self, data=None, domain=None, labels=None, **kwargs)
: (@kelsolaar)colour.MultiSpectralPowerDistribution.mapping
: (@kelsolaar)colour.MultiSpectralPowerDistribution.data
colour.MultiSpectralPowerDistribution.title
: (@kelsolaar)
MultiSpectralPowerDistribution.strict_name
: (@kelsolaar)colour.MultiSpectralPowerDistribution.x
: (@kelsolaar)colour.MultiSpectralPowerDistribution.y
: (@kelsolaar)colour.MultiSpectralPowerDistribution.z
: (@kelsolaar)colour.MultiSpectralPowerDistribution.items
: (@kelsolaar)colour.MultiSpectralPowerDistribution.__iter__
: (@kelsolaar)colour.MultiSpectralPowerDistribution.get
colour.MultiSpectralPowerDistribution.extrapolate
: (@kelsolaar)
extrapolate(self, shape, extrapolator=None, extrapolator_args=None)
colour.MultiSpectralPowerDistribution.interpolate
: (@kelsolaar)
interpolate(self, shape, interpolator=None, interpolator_args=None)
colour.MultiSpectralPowerDistribution.align
: (@kelsolaar)
align(self, shape, interpolator=None, interpolator_args=None, extrapolator=None, extrapolator_args=None)
colour.MultiSpectralPowerDistribution.trim_wavelengths
: (@kelsolaar)
MultiSpectralPowerDistribution.trim
: (@kelsolaar)colour.MultiSpectralPowerDistribution.zeros
colour.MultiSpectralPowerDistribution.clone
: (@kelsolaar)
MultiSpectralPowerDistribution.copy
colour.models.log_encoding_SLog
: (@Nick-Shaw, @kelsolaar)
log_encoding_SLog(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_SLog
: (@Nick-Shaw, @kelsolaar)
log_decoding_SLog(y, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_SLog2
: (@Nick-Shaw, @kelsolaar)
log_encoding_SLog2(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_SLog2
: (@Nick-Shaw, @kelsolaar)
log_decoding_SLog2(y, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_SLog3
: (@Nick-Shaw, @kelsolaar)
log_encoding_SLog3(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_SLog3
: (@Nick-Shaw, @kelsolaar)
log_decoding_SLog3(y, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_VLog
: (@Nick-Shaw, @kelsolaar)
log_encoding_VLog(L_in, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_VLog
: (@Nick-Shaw, @kelsolaar)
log_decoding_VLog(V_out, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_CanonLog
: (@Nick-Shaw, @kelsolaar)
log_encoding_CanonLog(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_CanonLog
: (@Nick-Shaw, @kelsolaar)
log_decoding_CanonLog(clog_ire, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_CanonLog2
: (@Nick-Shaw, @kelsolaar)
log_encoding_CanonLog2(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_CanonLog2
: (@Nick-Shaw, @kelsolaar)
log_decoding_CanonLog2(clog2_ire, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.log_encoding_CanonLog3
: (@Nick-Shaw, @kelsolaar)
log_encoding_CanonLog3(x, bit_depth=10, out_legal=True, in_reflection=True)
colour.models.log_decoding_CanonLog3
: (@Nick-Shaw, @kelsolaar)
log_decoding_CanonLog3(clog3_ire, bit_depth=10, in_legal=True, out_reflection=True)
colour.models.eotf_ARIBSTDB67
: (@kelsolaar, @Nick-Shaw, @KevinJW)
oetf_reverse_ARIBSTDB67
colour.models.eotf_BT709
: (@kelsolaar, @Nick-Shaw, @KevinJW)
oetf_reverse_BT709
colour.models.oetf_BT1886
: (@kelsolaar, @Nick-Shaw, @KevinJW)
eotf_reverse_BT1886
colour.models.eotf_sRGB
: (@kelsolaar, @Nick-Shaw, @KevinJW)
oetf_reverse_sRGB
colour.models.ALEXA_WIDE_GAMUT_RGB_COLOURSPACE
: (@kelsolaar)
ALEXA_WIDE_GAMUT_COLOURSPACE
colour.models.NTSC_RGB_COLOURSPACE
: (@kelsolaar)
NTSC_COLOURSPACE
colour.models.PAL_SECAM_RGB_COLOURSPACE
: (@kelsolaar)
PAL_SECAM_COLOURSPACE
colour.models.REC_709_COLOURSPACE
: (@kelsolaar, @Nick-Shaw, @KevinJW, @meshula)
BT709_COLOURSPACE
colour.models.REC_2020_COLOURSPACE
: (@kelsolaar, @Nick-Shaw, @KevinJW, @meshula)
BT2020_COLOURSPACE
colour.models.SMPTE_C_RGB_COLOURSPACE
: (@kelsolaar)
SMPTE_240M_COLOURSPACE
colour.plotting.CIE_1931_chromaticity_diagram_plot
: (@brandondube, @kelsolaar)
chromaticity_diagram_plot_CIE1931
colour.plotting.CIE_1960_UCS_chromaticity_diagram_plot
: (@brandondube, @kelsolaar)
chromaticity_diagram_plot_CIE1960UCS
colour.plotting.CIE_1976_UCS_chromaticity_diagram_plot
: (@brandondube, @kelsolaar)
chromaticity_diagram_plot_CIE1976UCS
colour.plotting.spds_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
spds_chromaticity_diagram_plot_CIE1931
spds_chromaticity_diagram_plot_CIE1931(spds, cmfs='CIE 1931 2 Degree Standard Observer', annotate=True, chromaticity_diagram_callable_CIE1931=(chromaticity_diagram_plot_CIE1931), **kwargs)
colour.plotting.spds_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
spds_chromaticity_diagram_plot_CIE1960UCS
spds_chromaticity_diagram_plot_CIE1960UCS(spds, cmfs='CIE 1931 2 Degree Standard Observer', annotate=True, chromaticity_diagram_callable_CIE1960UCS=(chromaticity_diagram_plot_CIE1960UCS), **kwargs)
colour.plotting.spds_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
spds_chromaticity_diagram_plot_CIE1976UCS
spds_chromaticity_diagram_plot_CIE1976UCS(spds, cmfs='CIE 1931 2 Degree Standard Observer', annotate=True, chromaticity_diagram_callable_CIE1976UCS=(chromaticity_diagram_plot_CIE1976UCS), **kwargs)
colour.plotting.RGB_colourspaces_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
RGB_colourspaces_chromaticity_diagram_plot_CIE1931
RGB_colourspaces_chromaticity_diagram_plot_CIE1931(colourspaces=None, cmfs='CIE 1931 2 Degree Standard Observer', chromaticity_diagram_callable_CIE1931=(chromaticity_diagram_plot_CIE1931), **kwargs)
colour.plotting.RGB_colourspaces_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_colourspaces_chromaticity_diagram_plot_CIE1960UCS
RGB_colourspaces_chromaticity_diagram_plot_CIE1960UCS(colourspaces=None, cmfs='CIE 1931 2 Degree Standard Observer', chromaticity_diagram_callable_CIE1960UCS=(chromaticity_diagram_plot_CIE1960UCS), **kwargs)
colour.plotting.RGB_colourspaces_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_colourspaces_chromaticity_diagram_plot_CIE1976UCS
RGB_colourspaces_chromaticity_diagram_plot_CIE1976UCS(colourspaces=None, cmfs='CIE 1931 2 Degree Standard Observer', chromaticity_diagram_callable_CIE1976UCS=(chromaticity_diagram_plot_CIE1976UCS), **kwargs)
colour.plotting.RGB_chromaticity_coordinates_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1931
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1931(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1931=(RGB_colourspaces_CIE_1931_chromaticity_diagram_plot), **kwargs)
colour.plotting.RGB_chromaticity_coordinates_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1960UCS
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1960UCS(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1960UCS=(RGB_colourspaces_CIE_1960_UCS_chromaticity_diagram_plot), **kwargs)
colour.plotting.RGB_chromaticity_coordinates_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1976UCS
RGB_chromaticity_coordinates_chromaticity_diagram_plot_CIE1976UCS(RGB, colourspace='sRGB', chromaticity_diagram_callable_CIE1976UCS=(RGB_colourspaces_CIE_1976_UCS_chromaticity_diagram_plot), **kwargs)
colour.plotting.planckian_locus_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
planckian_locus_chromaticity_diagram_plot_CIE1931
planckian_locus_chromaticity_diagram_plot_CIE1931(illuminants=None, chromaticity_diagram_callable_CIE1931=(chromaticity_diagram_plot_CIE1931), **kwargs)
colour.plotting.planckian_locus_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
planckian_locus_chromaticity_diagram_plot_CIE1960UCS
planckian_locus_chromaticity_diagram_plot_CIE1960UCS(illuminants=None, chromaticity_diagram_callable_CIE1960UCS=(chromaticity_diagram_plot_CIE1960UCS), **kwargs)
colour.ArbitraryPrecisionMapping
Colour 0.3.3 - Alpha Milestone
colour.chromatic_adaptation_CMCCAT2000
colour.chromatic_adaptation_CIE1994
colour.chromatic_adaptation_Fairchild1990
colour.chromatic_adaptation_VonKries
.
It allows adaptation of a given CIE XYZ colourspace matrix from given source to target viewing conditions CIE XYZ colourspace whitepoint matrices. (@kelsolaar)colour.SHARP_CAT
colour.CMCCAT2000_CAT
colour.CMCCAT97_CAT
colour.CAT02_BRILL_CAT
colour.BS_CAT
colour.BS_PC_CAT
colour.random_triplet_generator
. (@kelsolaar, @MichaelMauderer)colour.SpectralPowerDistribution.__pow__
and colour.TriSpectralPowerDistribution.__pow__
. (@canavandl)colour.SpectralPowerDistribution.title
and colour.TriSpectralPowerDistribution.title
. (@kelsolaar)colour.whiteness_Berger1959
colour.whiteness_Taube1960
colour.whiteness_Stensby1968
colour.whiteness_ASTM313
colour.whiteness_Ganz1979
colour.whiteness_CIE2004
colour.luminous_flux
. (@canavandl, @MichaelMauderer, @kelsolaar)colour.corresponding_chromaticities_prediction_VonKries
colour.corresponding_chromaticities_prediction_CIE1994
colour.corresponding_chromaticities_prediction_CMCCAT2000
colour.corresponding_chromaticities_prediction_Fairchild1990
colour.IES_TM2714_Spd
(@kelsolaar)colour.read_spds_from_xrite_file
(@kelsolaar)colour.sRGB_to_XYZ
definition. (@kelsolaar)colour.XYZ_to_IPT
, colour.IPT_to_XYZ
, colour.IPT_hue_angle
. (@MichaelMauderer)colour.plotting.colour_quality_scale_bars_plot
. (@kelsolaar)colour.plotting.corresponding_chromaticities_prediction_plot
. (@kelsolaar)colour.plotting.canvas
. (@kelsolaar)colour.RGB_to_spectral_Smits1999
. (@kelsolaar)colour.utilities.batch
definition yielding batches from given iterable. (@kelsolaar)colour.XYZ_to_LLAB
definition because of rounded colour.appearance.llab.LLAB_RGB_TO_XYZ_MATRIX
. (@MichaelMauderer)colour.SpectralShape.range
method was returning an extra number when used with some non uniformly spaced variables. (@kelsolaar)colour.ALEXA_WIDE_GAMUT_RGB_TRANSFER_FUNCTION
was incorrectly computed (@kelsolaar)colour.PROPHOTO_RGB_INVERSE_TRANSFER_FUNCTION
was incorrectly computed (@sagland, @kelsolaar)colour.REC_709_INVERSE_TRANSFER_FUNCTION
was incorrectly computed (@sagland, @kelsolaar)colour.REC_2020_INVERSE_TRANSFER_FUNCTION
was incorrectly computed (@sagland, @kelsolaar)colour.sRGB_INVERSE_TRANSFER_FUNCTION
was incorrectly computed (@sagland, @kelsolaar)colour.to_ndarray
: (@kelsolaar)
colour.as_array
as_array(x, shape=None, data_type=np.float_)
colour.chromatic_adaptation_matrix
: (@kelsolaar)
colour.chromatic_adaptation_matrix_VonKries
chromatic_adaptation_matrix_VonKries(XYZ_w, XYZ_wr, transform='CAT02')
colour.bandpass_correction_stearns1988
: (@kelsolaar)
colour.bandpass_correction_Stearns1988
colour.lightness_glasser1958
: (@kelsolaar)
colour.lightness_Glasser1958
colour.lightness_wyszecki1964
: (@kelsolaar)
colour.lightness_Wyszecki1963
colour.lightness_1976
: (@kelsolaar)
colour.lightness_1976(Y, Y_n=100)
colour.luminance_ASTM_D1535_08
: (@kelsolaar)
colour.luminance_ASTMD153508
colour.luminance_newhall1943
: (@kelsolaar)
colour.luminance_Newhall1943
colour.luminance_1976
: (@kelsolaar)
colour.luminance_1976(Lstar, Y_n=100)
colour.SpectralPowerDistribution
: (@kelsolaar)
colour.SpectralPowerDistribution(self, name, data, title=None)
colour.TriSpectralPowerDistribution
: (@kelsolaar)
colour.TriSpectralPowerDistribution(self, name, data, mapping, title=None, labels=None)
colour.delta_E_CIE_1976
: (@kelsolaar)
colour.delta_E_CIE1976
colour.delta_E_CIE_1994
: (@kelsolaar)
colour.delta_E_CIE1994
colour.delta_E_CIE_2000
: (@kelsolaar)
colour.delta_E_CIE2000
colour.RGB_Colourspace
(@kelsolaar)
colour.RGB_Colourspace.to_RGB
:
colour.XYZ_to_RGB_matrix
colour.RGB_Colourspace.to_XYZ
:
colour.RGB_to_XYZ_matrix
colour.XYZ_to_RGB
: (@kelsolaar)
XYZ_to_RGB(XYZ, illuminant_XYZ, illuminant_RGB, XYZ_to_RGB_matrix, chromatic_adaptation_transform, transfer_function)
colour.RGB_to_XYZ
: (@kelsolaar)
RGB_to_XYZ(RGB, illuminant_RGB, illuminant_XYZ, RGB_to_XYZ_matrix, chromatic_adaptation_transform, inverse_transfer_function)
colour.RGB_to_RGB
: (@kelsolaar)
RGB_to_RGB(RGB, input_colourspace, output_colourspace, chromatic_adaptation_transform)
colour.XYZ_to_sRGB
: (@kelsolaar)
XYZ_to_sRGB(XYZ, illuminant, chromatic_adaptation_transform, transfer_function)
colour.models.deprecated.RGB_to_HEX
: (@kelsolaar)
colour.notation.triplet.RGB_to_HEX
colour.models.deprecated.HEX_to_RGB
: (@kelsolaar)
colour.notation.triplet.HEX_to_RGB
colour.POINTER_GAMUT_DATA
: (@kelsolaar)
colour.POINTER_GAMUT_BOUNDARIES
colour.munsell_value_ASTM_D1535_08
: (@kelsolaar)
colour.munsell_value_ASTMD153508
colour.munsell_value_ladd1955
: (@kelsolaar)
colour.munsell_value_Ladd1955
colour.munsell_value_mccamy1987
: (@kelsolaar)
colour.munsell_value_McCamy1987
colour.munsell_value_moon1943
: (@kelsolaar)
colour.munsell_value_Moon1943
colour.munsell_value_munsell1933
: (@kelsolaar)
colour.munsell_value_Munsell1933
colour.munsell_value_priest1920
: (@kelsolaar)
colour.munsell_value_Priest1920
colour.munsell_value_saunderson1944
: (@kelsolaar)
colour.munsell_value_Saunderson1944
colour.plotting.figure_size
colour.plotting.aspect
: (@kelsolaar)
colour.plotting.decorate
colour.plotting.bounding_box
: (@kelsolaar)
colour.plotting.boundaries
colour.colour_rendering_index
(@kelsolaar)
colour.colour_rendering_index(spd_test, additional_data=False)
additional_data=True
argument now outputs of a colour.CRI_Specification
class instance.colour.CCT_to_uv_ohno2013
: (@kelsolaar)
CCT_to_uv_Ohno2013
CCT_to_uv_Ohno2013(CCT, D_uv=0, cmfs=STANDARD_OBSERVERS_CMFS.get('CIE 1931 2 Degree Standard Observer'))
colour.CCT_to_uv_robertson1968
: (@kelsolaar)
CCT_to_uv_Robertson1968
CCT_to_uv_Robertson1968(CCT, D_uv=0)
colour.CCT_to_xy_illuminant_D
: (@kelsolaar)
CCT_to_xy_CIE_D
colour.CCT_to_xy_kang2002
: (@kelsolaar)
CCT_to_xy_Kang2002
colour.uv_to_CCT_ohno2013
: (@kelsolaar)
uv_to_CCT_Ohno2013
colour.uv_to_CCT_robertson1968
: (@kelsolaar)
uv_to_CCT_Robertson1968
colour.xy_to_CCT_hernandez1999
: (@kelsolaar)
xy_to_CCT_Hernandez1999
colour.xy_to_CCT_mccamy1992
: (@kelsolaar)
xy_to_CCT_McCamy1992
colour.plotting
dependencies are now non-required and can be installed by issuing:pip install -e .[plotting]
Colour 0.3.7 - Alpha Milestone
colour.chromatically_adapted_primaries
definition performing chromatic adaptation of a given RGB colourspace primaries. (@kelsolaar)colour.REC_709_COLOURSPACE.EOCF
definition will issue a warning when used. (@KevinJW, @kelsolaar)colour.plotting.image_plot
definition can now plot single channel images. (@kelsolaar)colour.ArbitraryPrecisionMapping
class based providing support for floating point keys by rounding them at a specific decimals count. (@kelsolaar)colour.Extrapolator1d
: (@kelsolaar)
colour.Extrapolator
colour.RGB_Colourspace
: (@kelsolaar)
transfer_function
:
OECF
(Opto-electronic conversion function)inverse_transfer_function
:
EOCF
(Electro-optical conversion function)colour.XYZ_to_RGB
: (@kelsolaar)
colour.XYZ_to_RGB(XYZ, illuminant_XYZ, illuminant_RGB, XYZ_to_RGB_matrix, chromatic_adaptation_transform='CAT02', OECF=None)
colour.RGB_to_XYZ
: (@kelsolaar)
colour.RGB_to_XYZ(RGB, illuminant_RGB, illuminant_XYZ, RGB_to_XYZ_matrix, chromatic_adaptation_transform='CAT02', EOCF=None)
colour.XYZ_to_sRGB
: (@kelsolaar)
colour.XYZ_to_sRGB(XYZ, illuminant=RGB_COLOURSPACES.get('sRGB').whitepoint, chromatic_adaptation_transform='CAT02', apply_OECF=True)
colour.sRGB_to_XYZ
: (@kelsolaar)
colour.sRGB_to_XYZ(RGB, illuminant=RGB_COLOURSPACES.get('sRGB').whitepoint, chromatic_adaptation_method='CAT02', apply_EOCF=True)
colour.plotting.single_transfer_function_plot
: (@kelsolaar)
colour.plotting.single_conversion_function_plot
colour.plotting.single_conversion_function_plot(colourspace='Rec. 709', EOCF=False, **kwargs)
colour.plotting.multi_transfer_function_plot
: (@kelsolaar)
colour.plotting.multi_conversion_function_plot
colour.plotting.multi_conversion_function_plot(colourspaces, EOCF=False, **kwargs)
colour.plotting.colour_parameter
colour.plotting.ColourParameter
class should be used instead.Colour 0.3.10 - Alpha Milestone
Colour is now formatted using Yapf, the current configuration is subject to change but this will help contributors not using PyCharm to use their favourite editor while having the capability to format the contributed code to our Colour standard.
colour.reaction_rate_MichealisMenten
and colour.substrate_concentration_MichealisMenten
definitions. (@kelsolaar)colour.eotf_ARIBSTDB67
and colour.oetf_ARIBSTDB67
definitions. (@kelsolaar)colour.eotf_DICOMGSDF
and colour.oetf_DICOMGSDF
definitions. (@kelsolaar)colour.PROTUNE_NATIVE_COLOURSPACE
colourspace class. (@kelsolaar)colour.log_encoding_Protune
and colour.log_decoding_Protune
definitions. (@kelsolaar)colour.RGB_to_Prismatic
and colour.Prismatic_to_RGB
definitions. (@kelsolaar)colour.XYZ_to_hdr_CIELab
, colour.hdr_CIELab_to_XYZ
, colour.XYZ_to_hdr_IPT
and colour.hdr_IPT_to_XYZ
definitions. (@kelsolaar)colour.XYZ_to_spectral_Meng2015
definition. (@kelsolaar)colour.as_namedtuple
definition that attempts to convert given array_like, Mapping or Numpy structured array to namedtuple. (@kelsolaar)colour.XYZ_to_CIECAM02
and colour.CIECAM02_to_XYZ
definitions handles negative numbers gracefully as per CIECAM02 and Its Recent Developments (@crowsonkb)colour.TriSpectralPowerDistribution.items
method was broken. (@kelsolaar)colour.eotf_BT1886
and colour.oetf_BT1886
definitions default arguments L_B
and L_W
had their default values changed from respectively 64 and 940 to 0 and 1. (@kelsolaar, @Nick-Shaw)CIECAM02_to_XYZ(CIECAM02_specification, XYZ_w, L_A, Y_b, surround=CIECAM02_VIEWING_CONDITIONS['Average'], discount_illuminant=False)
whiteness_ASTME313
colour.eotf_BT1886
: (@kelsolaar, @Nick-Shaw)
eotf_BT1886(V, L_B=0, L_W=1)
colour.oetf_BT1886
: (@kelsolaar, @Nick-Shaw)
oetf_BT1886(L, L_B=0, L_W=1)
colour.gamma_function
: (@kelsolaar)
function_gamma
colour.linear_function
: (@kelsolaar)
function_linear
Colour 0.3.9 - Alpha Milestone
colour.CAMERAS_RGB_SPECTRAL_SENSITIVITIES
attribute. (@kelsolaar)colour.SpectralPowerDistribution
and colour.TriSpectralPowerDistribution
classes have been optimised and are now 6.5 times faster on usual computations. (@kelsolaar)colour.delta_E_CAM02LCD
, colour.delta_E_CAM02SCD
, and colour.delta_E_CAM02UCS
definitions. (@kelsolaar)colour.plotting.colour_plotting_defaults
definition that installs Colour default plotting parameters, this implies that Colour will now not override Matplotlib rc parameters on import. (@kelsolaar)colour.colour_quality_scale
definition has been optimised and is now 10.5 times faster, its return value is minorly altered. (@kelsolaar)colour.colour_rendering_index
definition has been optimised and is now 13.1 times faster, its return value is minorly altered. (@kelsolaar)colour.JMh_CIECAM02_to_CAM02LCD
, colour.CAM02LCD_to_JMh_CIECAM02
, colour.JMh_CIECAM02_to_CAM02SCD
, colour.CAM02SCD_to_JMh_CIECAM02
, colour.JMh_CIECAM02_to_CAM02UCS
and colour.CAM02UCS_to_JMh_CIECAM02
definitions. (@kelsolaar)colour.RGB_to_ICTCP
and colour.ICTCP_to_RGB
definitions. (@kelsolaar)colour.RGB_Colourspace
class whose purpose is to support both literature defined dataset and accurate computations enabling transformations without loss of precision. colour.RGB_Colourspace.use_derived_RGB_to_XYZ_matrix
and colour.RGB_Colourspace.use_derived_XYZ_to_RGB_matrix
attributes and the colour.RGB_Colourspace.use_derived_transformation_matrices
method have been introduced to alter the behaviour of the class on a per user need basis. (@kelsolaar, @KevinJW, @Nick-Shaw, @MichaelMauderer)colour.log_encoding_CanonLog2
, colour.log_decoding_CanonLog2
, colour.log_encoding_CanonLog3
and colour.log_decoding_CanonLog3
definitions. (@kelsolaar)colour.RED_WIDE_GAMUT_RGB
colourspace class and colour.log_encoding_Log3G10
, colour.log_decoding_Log3G10
, colour.log_encoding_Log3G12
, colour.log_decoding_Log3G12
definitions. (@Nick-Shaw)colour.ACES_CCT_COLOURSPACE
colourspace class and colour.log_encoding_ACEScct
, colour.log_encoding_ACEScct
definitions. (@scooperxyz)colour.RGB_to_RGB_matrix
definition computing the matrix converting from given input RGB colourspace to output RGB colourspace. (@kelsolaar, @KevinJW)colour.uv_to_CCT_Ohno2013
definition has been optimised and is now 15.7 times faster. (@kelsolaar)colour.CCT_to_uv_Ohno2013
definition has been optimised and is now ? times faster. (@kelsolaar)colour.linear_conversion
definition performing a simple linear conversion of given array between the old and new range. (@kelsolaar)colour.cartesian_to_cylindrical
: (@kelsolaar)
colour.cylindrical_to_cartesian
: (@kelsolaar)
cylindrical_to_cartesian(a)
, cylindrical coordinates array (radial distance ρ, azimuth φ, and height z)colour.characterisation.dataset.colour_checkers.chromaticity_coordinates.ColourChecker_Specification
: (@kelsolaar)
ColourChecker_Specification('index', 'name', 'xyY')
colour.DEFAULT_SPECTRAL_SHAPE
: (@kelsolaar)
SpectralShape(360, 780, 1)
colour.log_encoding_ACESproxy
: (@kelsolaar)
log_encoding_ACESproxy(lin_AP1, bit_depth='10 Bit')
colour.log_encoding_ACEScc
: (@kelsolaar)
log_encoding_ACEScc(lin_AP1)
colour.oetf_ROMMRGB
: (@kelsolaar)
oetf_ROMMRGB(X, I_max=255)
colour.eotf_ROMMRGB
: (@kelsolaar)
eotf_ROMMRGB(X_p, I_max=255)
colour.RGB_to_RGB
: (@kelsolaar, @scooperxyz)
RGB_to_RGB(RGB, input_colourspace, output_colourspace, chromatic_adaptation_transform='CAT02', apply_decoding_cctf=False, apply_encoding_cctf=False)
colour.plotting.multi_colour_plot
: (@kelsolaar)
multi_colour_plot(colour_parameters, width=1, height=1, spacing=0, across=3, text_display=True, text_size='large', text_offset=0.075, background_colour=(1.0, 1.0, 1.0), **kwargs)
colour.CCT_to_uv
: (@kelsolaar)
CCT_to_uv(CCT, method='Ohno 2013', **kwargs)
Colour 0.3.8 - Alpha Milestone
This release introduces important backward incompatible changes on various spectral computations, illuminants chromaticity coordinates and RGB colourspace model related objects, please carefully refer to the Changes section.
A Jupyter Notebook is available to illustrate the expected computational differences: they should remain orders of magnitude under visual discrimination threshold however they will likely create computational discrepancies.
With Colour 0.3.8, SciPy is now a requirement.
@MichaelMauderer and I would like to thanks all the contributors for that release whether they contribute to the code or participate in discussions.
colour.lagrange_coefficients
definition computing Lagrange Coefficients at given point for given degree. (@kelsolaar)colour.normalise_vector
definition performing vector normalisation. (@kelsolaar)colour.euclidean_distance
definition computing the euclidean distance between two vector arrays. (@kelsolaar)colour.intersect_line_segments
definition performing line segment intersections computations. (@kelsolaar)colour.RGB_DisplayPrimaries
class providing support for RGB displays primaries tri-spectral power distributions. (@kelsolaar)colour.CIE_standard_illuminant_A_function
definition computing CIE Standard Illuminant A value at given wavelength range. (@kelsolaar)colour.SpectralShape.boundaries
method returning the boundaries start and end values of given shape. (@kelsolaar)colour.SpectralPowerDistribution.trim_wavelengths
and colour.TriSpectralPowerDistribution.trim_wavelengths
methods trimming their respective classes wavelength range to given shape. (@kelsolaar, @MichaelMauderer, @Ron024)colour.dominant_wavelength
definition computing the dominant wavelength of a given colour stimulus xy chromaticity coordinates. (@kelsolaar)colour.complementary_wavelength
definition computing the complementary wavelength of a given colour stimulus xy chromaticity coordinates. (@kelsolaar)colour.excitation_purity
definition computing the excitation purity of a given colour stimulus xy chromaticity coordinates. (@kelsolaar)colour.colorimetric_purity
definition computing the colorimetric purity of a given colour stimulus xy chromaticity coordinates. (@kelsolaar)colour.tristimulus_weighting_factors_ASTME202211
definition computing tristimulus weighting factors tables using practise ASTM E2022–11 method. (@kelsolaar, @MichaelMauderer )colour.spectral_to_XYZ_integration
definition converting given spectral power distribution to CIE XYZ tristimulus values using given colour matching functions and illuminant accordingly to classical integration method. (@kelsolaar)colour.spectral_to_XYZ_tristimulus_weighting_factors_ASTME30815
definition converting given spectral power distribution to CIE XYZ tristimulus values using given colour matching functions and illuminant accordingly to practise ASTM E308–15 method. (@kelsolaar, @MichaelMauderer )colour.spectral_to_XYZ_ASTME30815
definition converting given spectral power distribution to CIE XYZ tristimulus values accordingly to practise ASTM E308–15 method. (@kelsolaar, @MichaelMauderer )colour.luminous_efficiency
definition computing Luminous Efficiency of given spectral power distribution. (@kelsolaar, @canavandl)colour.colorimetry.dataset.illuminants.hunterlab
documentation references for links to more information. (@kelsolaar, @Ron024)colour.corresponding_chromaticities_prediction
generic corresponding chromaticities prediction definition. (@kelsolaar)colour.XYZ_to_Hunter_Lab
, colour.Hunter_Lab_to_XYZ
and colour.XYZ_to_Hunter_Rdab
definitions. (@kelsolaar, @Ron024)colour.RGB_to_YCbCr
, colour.YCbCr_to_RGB
, colour.RGB_to_YcCbcCrc
and colour.YcCbcCrc_to_RGB
definitions. (@Nick-Shaw, @KelSolaar, @KevinJW)colour.eotf_BT1886
and colour.eotf_BT1886
definitions. (@kelsolaar)colour.eotf_ST2084
and colour.oetf_ST2084
definitions. (@kelsolaar)colour.log_encoding_REDLog
and colour.log_decoding_REDLog
definitions. (@Nick-Shaw, @KelSolaar)colour.log_encoding_ACESproxy
and colour.log_decoding_ACESproxy
definitions. (@KelSolaar)colour.oetf_ROMMRGB
, colour.eotf_ROMMRGB
, colour.oetf_RIMMRGB
, colour.eotf_RIMMRGB
, colour.log_encoding_ERIMMRGB
and colour.log_decoding_ERIMMRGB
definitions and colour.ROMM_RGB_COLOURSPACE
, colour.RIMM_RGB_COLOURSPACE
, colour.ERIMM_RGB_COLOURSPACE
and colour.PROPHOTO_RGB_COLOURSPACE
classes. (@KelSolaar)colour.gamma_function
definition. (@KelSolaar)colour.linear_function
definition. (@KelSolaar)colour.oetf
and colour.eotf
definitions and colour.OETFS
and colour.EOTFS
attributes providing single point access to supported OETFs and EOTFs. (@KelSolaar)colour.centroid
definition computing array centroid indexes.colour.orient
definition performing array rotation, flip and flop.colour.filter_kwargs
definition filtering incompatible keyword arguments with given function signature.colour.filter_warnings
definition filtering API warnings.colour.luminous_efficiency
definition was incorrectly returning the luminous efficacy and has been renamed accordingly. The current colour.luminous_efficiency
definition now properly returns luminous efficiency. (@kelsolaar, @canavandl)colour.plotting.nadir_grid
had various issues and wasn't working properly since Colour 0.3.7. (@kelsolaar)colour.write_spds_to_csv_file
definition now correctly writes CSV files without extra line breaks on Windows. (@Ron024)colour.linear_to_red_log_film
and colour.red_log_film_to_linear
definitions are now properly based on the Cineon curve. (@Nick-Shaw, @KelSolaar)colour.CMCCAT2000_forward
: (@kelsolaar)
colour.chromatic_adaptation_forward_CMCCAT2000
colour.CMCCAT2000_reverse
: (@kelsolaar)
colour.chromatic_adaptation_reverse_CMCCAT2000
colour.is_identity
: (@kelsolaar)
colour.is_identity(a, n=3)
colour.cartesian_to_spherical
: (@kelsolaar)
colour.cartesian_to_spherical(a)
colour.spherical_to_cartesian
: (@kelsolaar)
colour.spherical_to_cartesian(a)
colour.cartesian_to_cylindrical
: (@kelsolaar)
colour.cartesian_to_cylindrical(a)
colour.cylindrical_to_cartesian
: (@kelsolaar)
colour.cylindrical_to_cartesian(a)
colour.first_order_colour_fit
: (@kelsolaar)
colour.first_order_colour_fit(m_1, m_2)
colour.ILLUMINANTS['CIE 1931 2 Degree Standard Observer']['D50']
: (@kelsolaar)
(0.34570, 0.35850)
colour.ILLUMINANTS['CIE 1931 2 Degree Standard Observer']['D65']
: (@kelsolaar)
(0.31270, 0.32900)
colour.SpectralShape.steps
: (@kelsolaar)
colour.SpectralShape.interval
colour.SpectralPowerDistribution
and colour.TriSpectralPowerDistribution
classes arithmetical operations such
as addition, subtraction, multiplication, division and exponentiation are not happening in-place anymore. This behaviour is now supported through augmented assignment operators: spd /= np.max(spd.values)
instead of spd / np.max(spd.values)
. (@kelsolaar)colour.SpectralPowerDistribution.align
: (@kelsolaar)
colour.SpectralPowerDistribution.align(self, shape, interpolation_method=None, extrapolation_method='Constant', extrapolation_left=None, extrapolation_right=None)
colour.TriSpectralPowerDistribution.align
: (@kelsolaar)
colour.TriSpectralPowerDistribution.align(self, shape, interpolation_method=None, extrapolation_method='Constant', extrapolation_left=None, extrapolation_right=None)
colour.spectral_to_XYZ
: (@kelsolaar)
colour.spectral_to_XYZ
definition will now use practise ASTM E308–15 method instead of classical integration.colour.spectral_to_XYZ(spd, cmfs=STANDARD_OBSERVERS_CMFS.get('CIE 1931 2 Degree Standard Observer'), illuminant=ones_spd(STANDARD_OBSERVERS_CMFS.get('CIE 1931 2 Degree Standard Observer').shape), method='ASTM E308–15', **kwargs)
colour.lightness_1976
: (@kelsolaar)
colour.lightness_CIE1976
colour.luminance_1976
: (@kelsolaar)
colour.luminance_CIE1976
colour.luminous_efficiency
: (@kelsolaar, @canavandl)
colour.luminous_efficacy
colour.delta_E_CIE1976
: (@kelsolaar)
colour.delta_E_CIE1976(Lab_1, Lab_2, **kwargs)
colour.delta_E_CIE1994
: (@kelsolaar)
colour.delta_E_CIE1994(Lab_1, Lab_2, textiles=False, **kwargs)
colour.delta_E_CIE2000
: (@kelsolaar)
colour.delta_E_CIE2000(Lab_1, Lab_2, textiles=False, **kwargs)
colour.delta_E_CMC
: (@kelsolaar)
colour.delta_E_CMC(Lab_1, Lab_2, l=2, c=1)
colour.models.rgb
. (@kelsolaar)colour.models.rgb.transfer_functions
. (@kelsolaar)colour.RGB_Colourspace.OECF
: (@kelsolaar)
colour.RGB_Colourspace.encoding_cctf
colour.RGB_Colourspace.EOCF
: (@kelsolaar)
colour.RGB_Colourspace.decoding_cctf
colour.XYZ_to_sRGB
: (@kelsolaar)
colour.XYZ_to_sRGB(XYZ, illuminant=RGB_COLOURSPACES.get('sRGB').whitepoint, chromatic_adaptation_transform='CAT02', apply_encoding_cctf=True)
colour.sRGB_to_XYZ
: (@kelsolaar)
colour.sRGB_to_XYZ(RGB, illuminant=RGB_COLOURSPACES.get('sRGB').whitepoint, chromatic_adaptation_method='CAT02', apply_decoding_cctf=True)
colour.linear_to_cineon
: (@kelsolaar)
colour.log_encoding_Cineon
colour.cineon_to_linear
: (@kelsolaar)
colour.log_decoding_Cineon
colour.linear_to_panalog
: (@kelsolaar)
colour.log_encoding_Panalog
colour.panalog_to_linear
: (@kelsolaar)
colour.log_decoding_Panalog
colour.linear_to_viper_log
: (@kelsolaar)
colour.log_encoding_ViperLog
colour.viper_log_to_linear
: (@kelsolaar)
colour.log_decoding_ViperLog
colour.linear_to_pivoted_log
: (@kelsolaar)
colour.log_encoding_PivotedLog
colour.pivoted_log_to_linear
: (@kelsolaar)
colour.log_decoding_PivotedLog
colour.linear_to_c_log
: (@kelsolaar)
colour.log_encoding_CLog
colour.c_log_to_linear
: (@kelsolaar)
colour.log_decoding_CLog
colour.linear_to_aces_cc
: (@kelsolaar)
colour.log_encoding_ACEScc
colour.aces_cc_to_linear
: (@kelsolaar)
colour.log_decoding_ACEScc
colour.linear_to_alexa_log_c
: (@kelsolaar)
colour.log_encoding_ALEXALogC
colour.alexa_log_c_to_linear
: (@kelsolaar)
colour.log_decoding_ALEXALogC
colour.linear_to_red_log_film
: (@kelsolaar)
colour.log_encoding_REDLogFilm
colour.red_log_film_to_linear
: (@kelsolaar)
colour.log_encoding_SLog
colour.linear_to_s_log
: (@kelsolaar)
colour.log_encoding_SLog
colour.s_log_to_linear
: (@kelsolaar)
colour.log_decoding_SLog
colour.linear_to_s_log2
: (@kelsolaar)
colour.log_encoding_SLog2
colour.s_log2_to_linear
: (@kelsolaar)
colour.log_decoding_SLog2
colour.linear_to_s_log3
: (@kelsolaar)
colour.log_encoding_SLog3
colour.s_log3_to_linear
: (@kelsolaar)
colour.log_decoding_SLog3
colour.linear_to_v_log
: (@kelsolaar)
colour.log_encoding_VLog
colour.v_log_to_linear
: (@kelsolaar)
colour.log_decoding_VLog
colour.LINEAR_TO_LOG_METHODS
: (@kelsolaar)
colour.LOG_ENCODING_METHODS
colour.linear_to_log
: (@kelsolaar)
colour.log_encoding_curve
colour.LOG_TO_LINEAR_METHODS
: (@kelsolaar)
colour.LOG_DECODING_METHODS
colour.log_to_linear
: (@kelsolaar)
colour.log_decoding_curve
colour.RGB_COLOURSPACES['Adobe RGB 1998']
: (@kelsolaar)
colour.RGB_COLOURSPACES['Adobe RGB (1998)']
colour.ACES_2065_1_OECF
colour.ACES_2065_1_EOCF
colour.ACES_CG_OECF
colour.ACES_CG_EOCF
colour.ACES_CC_OECF
colour.ACES_CC_EOCF
colour.ACES_PROXY_OECF
colour.ACES_PROXY_EOCF
colour.ADOBE_RGB_1998_OECF
colour.ADOBE_RGB_1998_EOCF
colour.ADOBE_WIDE_GAMUT_RGB_OECF
colour.ADOBE_WIDE_GAMUT_RGB_EOCF
colour.ALEXA_LOG_C_OECF
colour.ALEXA_LOG_C_EOCF
colour.APPLE_RGB_OECF
colour.APPLE_RGB_EOCF
colour.BEST_RGB_OECF
colour.BEST_RGB_EOCF
colour.BETA_RGB_OECF
colour.BETA_RGB_EOCF
colour.CIE_RGB_OECF
colour.CIE_RGB_EOCF
colour.CINEMA_GAMUT_OECF
colour.CINEMA_GAMUT_EOCF
colour.COLOR_MATCH_RGB_OECF
colour.COLOR_MATCH_RGB_EOCF
colour.DCI_P3_OECF
colour.DCI_P3_EOCF
colour.DCI_P3_OECF
colour.DCI_P3_EOCF
colour.DON_RGB_4_OECF
colour.DON_RGB_4_EOCF
colour.ECI_RGB_V2_OECF
colour.ECI_RGB_V2_EOCF
colour.EKTA_SPACE_PS_5_OECF
colour.EKTA_SPACE_PS_5_EOCF
colour.MAX_RGB_OECF
colour.MAX_RGB_EOCF
colour.NTSC_RGB_OECF
colour.NTSC_RGB_EOCF
colour.PAL_SECAM_RGB_OECF
colour.PAL_SECAM_RGB_EOCF
colour.PROPHOTO_RGB_OECF
colour.PROPHOTO_RGB_EOCF
colour.REC_2020_OECF
colour.REC_2020_EOCF
colour.REC_709_OECF
colour.REC_709_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RED_LOG_OECF
colour.RED_LOG_EOCF
colour.RUSSELL_RGB_OECF
colour.RUSSELL_RGB_EOCF
colour.SMPTE_C_RGB_OECF
colour.SMPTE_C_RGB_EOCF
colour.S_LOG2_OECF
colour.S_LOG2_EOCF
colour.S_LOG3_OECF
colour.S_LOG3_EOCF
colour.S_LOG3_OECF
colour.S_LOG3_EOCF
colour.sRGB_OECF
colour.sRGB_EOCF
colour.V_LOG_OECF
colour.V_LOG_EOCF
colour.XTREME_RGB_OECF
colour.XTREME_RGB_EOCF
colour.plotting.decorate
: (@kelsolaar)
no_axes3d
renamed to no_axes
.colour.plotting.camera
: (@kelsolaar)
colour.plotting.decorate
: (@kelsolaar)
colour.plotting.boundaries
: (@kelsolaar)
colour.plotting.display
: (@kelsolaar)
colour.plotting.CIE_1931_chromaticity_diagram_colours_plot
: (@kelsolaar)
colour.plotting.CIE_1931_chromaticity_diagram_plot
: (@kelsolaar, @MichaelMauderer, @scooperly)
CIE_1931_chromaticity_diagram_plot(cmfs='CIE 1931 2 Degree Standard Observer', show_diagram_colours=True, **kwargs)
colour.plotting.CIE_1960_UCS_chromaticity_diagram_colours_plot
: (@kelsolaar)
colour.plotting.CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar, @MichaelMauderer, @scooperly)
CIE_1960_UCS_chromaticity_diagram_plot(cmfs='CIE 1931 2 Degree Standard Observer', show_diagram_colours=True, **kwargs)
colour.plotting.CIE_1976_UCS_chromaticity_diagram_colours_plot
: (@kelsolaar)
colour.plotting.CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar, @MichaelMauderer, @scooperly)
CIE_1976_UCS_chromaticity_diagram_plot(cmfs='CIE 1931 2 Degree Standard Observer', show_diagram_colours=True, **kwargs)
colour.plotting.RGB_chromaticity_coordinates_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.RGB_chromaticity_coordinates_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.RGB_chromaticity_coordinates_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.RGB_colourspaces_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
RGB_chromaticity_coordinates_CIE_1931_chromaticity_diagram_plot(RGB, colourspace, **kwargs)
colour.plotting.RGB_colourspaces_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_colourspaces_CIE_1960_UCS_chromaticity_diagram_plot(RGB, colourspace, **kwargs)
colour.plotting.RGB_colourspaces_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
RGB_colourspaces_CIE_1976_UCS_chromaticity_diagram_plot(RGB, colourspace, **kwargs)
colour.plotting.RGB_colourspaces_gamuts_plot
: (@kelsolaar)
colour.plotting.RGB_scatter_plot
: (@kelsolaar)
colour.plotting.blackbody_colours_plot
: (@kelsolaar)
colour.plotting.blackbody_spectral_radiance_plot
: (@kelsolaar)
colour.plotting.colour_parameters_plot
: (@kelsolaar)
colour.plotting.colour_quality_bars_plot
: (@kelsolaar)
colour.plotting.corresponding_chromaticities_prediction_plot
: (@kelsolaar)
colour.plotting.image_plot
: (@kelsolaar)
colour.plotting.multi_cmfs_plot
: (@kelsolaar)
colour.plotting.multi_colour_plot
: (@kelsolaar)
colour.plotting.multi_conversion_function_plot
: (@kelsolaar)
colour.plotting.multi_cctf_plot
colour.plotting.multi_cctf_plot(colourspaces=None, decoding_cctf=False, **kwargs)
colour.plotting.multi_illuminants_relative_spd_plot
: (@kelsolaar)
colour.plotting.multi_lightness_function_plot
: (@kelsolaar)
colour.plotting.multi_munsell_value_function_plot
: (@kelsolaar)
colour.plotting.multi_spd_colour_quality_scale_bars_plot
: (@kelsolaar)
colour.plotting.multi_spd_colour_rendering_index_bars_plot
: (@kelsolaar)
colour.plotting.multi_spd_plot
: (@kelsolaar)
colour.plotting.planckian_locus_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.planckian_locus_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.single_cmfs_plot
: (@kelsolaar)
colour.plotting.single_colour_plot
: (@kelsolaar)
colour.plotting.single_conversion_function_plot
: (@kelsolaar)
colour.plotting.single_cctf_plot
colour.plotting.single_cctf_plot(colourspace=None, decoding_cctf=False, **kwargs)
colour.plotting.single_illuminant_relative_spd_plot
: (@kelsolaar)
colour.plotting.single_lightness_function_plot
: (@kelsolaar)
colour.plotting.single_munsell_value_function_plot
: (@kelsolaar)
colour.plotting.single_rayleigh_scattering_spd_plot
: (@kelsolaar)
colour.plotting.single_spd_colour_quality_scale_bars_plot
: (@kelsolaar)
colour.plotting.single_spd_colour_rendering_index_bars_plot
: (@kelsolaar)
colour.plotting.single_spd_plot
: (@kelsolaar)
colour.plotting.spds_CIE_1931_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.spds_CIE_1960_UCS_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.spds_CIE_1976_UCS_chromaticity_diagram_plot
: (@kelsolaar)
colour.plotting.the_blue_sky_plot
: (@kelsolaar)
colour.plotting.visible_spectrum_plot
: (@kelsolaar)
colour.as_numeric
: (@kelsolaar)
colour.as_numeric(a, type_=np.float_)
colour.closest
: (@kelsolaar)
colour.closest(a, b)
colour.normalise
: (@kelsolaar)
colour.normalise_maximum
colour.normalise_maximum(a, axis=None, factor=1, clip=True)
colour.steps
: (@kelsolaar)
colour.interval
colour.is_iterable
: (@kelsolaar)
colour.is_iterable(a)
colour.is_string
: (@kelsolaar)
colour.is_string(a)
colour.is_numeric
: (@kelsolaar)
colour.is_numeric(a)
colour.is_integer
: (@kelsolaar)
colour.is_integer(a)
colour.is_scipy_installed
Colour 0.3.6 - Alpha Milestone
Colour 0.3.6 is the last API version to support Python 2.6.
colour.SpectralPowerDistribution.interpolate
and colour.TriSpectralPowerDistribution.interpolate
methods now also support Piecewise Cubic Hermite Interpolation. (@kelsolaar)colour.wavelength_to_XYZ
definition supports all the API interpolation methods: (@kelsolaar)
colour.xy_to_xyY
and colour.xyY_to_xy
definitions to provide support for illuminant arguments with Luminance value in various colour.models
objects. (@kelsolaar)colour.plotting.RGB_colourspaces_gamuts_plot
definition to visualise RGB colourspaces gamuts. (@kelsolaar)colour.plotting.RGB_scatter_plot
definition to visualise RGB values within RGB colourspaces gamuts. (@kelsolaar)colour.plotting.quad
geometry plotting helper definition. (@kelsolaar)colour.plotting.grid
geometry plotting helper definition. (@kelsolaar)colour.plotting.cube
geometry plotting helper definition. (@kelsolaar)colour.plotting.multi_spd_colour_rendering_index_bars_plot
definition to visualise colour rendering index of multiple illuminants or light sources spectral power distributions. (@henczati, @kelsolaar)colour.plotting.multi_spd_colour_quality_scale_bars_plot
definition to visualise colour quality scale of multiple illuminants or light sources spectral power distributions. (@henczati, @kelsolaar)colour.ArbitraryPrecisionMapping
class based providing support for floating point keys by rounding them at a specific decimals count. (@kelsolaar)colour.is_within_mesh_volume
definition returning if given points are within given mesh volume using Delaunay triangulation. (@kelsolaar)colour.is_within_pointer_gamut
definition returning if given tristimulus values are within Pointer's Gamut. (@kelsolaar)colour.is_within_visible_spectrum
definition returning if given tristimulus values are within Visible Spectrum. (@kelsolaar)colour.RGB_colourspace_pointer_gamut_coverage_MonteCarlo
definition returning given RGB colourspace percentage coverage of Pointer's Gamut using Monte Carlo method. (@kelsolaar)colour.RGB_colourspace_visible_spectrum_coverage_MonteCarlo
definition returning given RGB colourspace percentage coverage of Visible Spectrum using Monte Carlo method. (@kelsolaar)colour.SpectralPowerDistribution.zeros
method raises an exception if unsuccessful.colour.SpectralMapping
class based on colour.ArbitraryPrecisionMapping
class providing better support for floating point wavelengths keys by rounding them at a specific decimals count. (@kelsolaar)colour.LinearInterpolator1d
: (@kelsolaar)
colour.LinearInterpolator
colour.SplineInterpolator
: (@kelsolaar)
colour.CubicSplineInterpolator
colour.wavelength_to_XYZ
: (@kelsolaar)
colour.wavelength_to_XYZ(wavelength, cmfs=STANDARD_OBSERVERS_CMFS.get('CIE 1931 2 Degree Standard Observer'), method=None)
colour.XYZ_to_Lab
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.Lab_to_XYZ
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.XYZ_to_Luv
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.Luv_to_XYZ
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.Luv_to_uv
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.XYZ_to_UVW
: (@kelsolaar)
illuminant
: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.XYZ_to_RGB
: (@kelsolaar)
illuminant_XYZ
: CIE XYZ tristimulus values illuminant xy chromaticity coordinates or CIE xyY colourspace array.illuminant_RGB
: RGB colourspace illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.RGB_to_XYZ
: (@kelsolaar)
illuminant_RGB
: RGB colourspace illuminant xy chromaticity coordinates or CIE xyY colourspace array.illuminant_XYZ
: CIE XYZ tristimulus values illuminant xy chromaticity coordinates or CIE xyY colourspace array.colour.plotting.single_spd_plot
: (@henczati, @fangjy88, @kelsolaar)
out_of_gamut_clipping
: Out of gamut colours will be clipped if True otherwise, the colours
will be offset by the absolute minimal colour leading to a rendering on
gray background, less saturated and smoother.colour.plotting.visible_spectrum_plot
: (@henczati, @fangjy88, @kelsolaar)
out_of_gamut_clipping
: Out of gamut colours will be clipped if True otherwise, the colours
will be offset by the absolute minimal colour leading to a rendering on
gray background, less saturated and smoother.colour.plotting.colour_rendering_index_bars_plot
: (@henczati, @kelsolaar)
colour.plotting.single_spd_colour_rendering_index_bars_plot
colour.plotting.colour_quality_scale_bars_plot
: (@henczati, @kelsolaar)
colour.plotting.single_spd_colour_quality_scale_bars_plot
colour.volume.rgb.sample_RGB_colourspace_volume_MonteCarlo
: (@kelsolaar)
Colour 0.3.5 - Alpha Milestone
The focus on this major milestone has been vectorisation of most of the API code, more details are available in this Google Docs Spreadsheet and the derivation of RED colourspaces.
colour.chromatic_adaptation_CIE1994
definition has been vectorised, handles n-dimensional arrays and is now 250.7 times faster. (@kelsolaar)colour.colour.CMCCAT2000_forward
definition has been vectorised, handles n-dimensional arrays and is now 372.9 times faster. (@kelsolaar)colour.colour.CMCCAT2000_reverse
definition has been vectorised, handles n-dimensional arrays and is now 360.1 times faster. (@kelsolaar)colour.chromatic_adaptation_Fairchild1990
definition has been vectorised, handles n-dimensional arrays and is now 92.7 times faster. (@kelsolaar)colour.chromatic_adaptation_matrix_VonKries
definition has been vectorised, handles n-dimensional arrays and is now 77.8 times faster. (@kelsolaar)colour.chromatic_adaptation_VonKries
definition has been vectorised, handles n-dimensional arrays and is now 60.0 times faster. (@kelsolaar)colour.cartesian_to_spherical
definition has been vectorised, handles n-dimensional arrays and is now 165.0 times faster. (@kelsolaar)colour.spherical_to_cartesian
definition has been vectorised, handles n-dimensional arrays and is now 97.2 times faster. (@kelsolaar)colour.cartesian_to_cylindrical
definition has been vectorised, handles n-dimensional arrays and is now 151.8 times faster. (@kelsolaar)colour.cylindrical_to_cartesian
definition has been vectorised, handles n-dimensional arrays and is now 123.1 times faster. (@kelsolaar)colour.XYZ_to_ATD95
definition has been vectorised, handles n-dimensional arrays and is now 17.5 times faster. (@kelsolaar, @MichaelMauderer)colour.XYZ_to_CIECAM02
definition has been vectorised, handles n-dimensional arrays and is now 77.4 times faster. (@kelsolaar, @MichaelMauderer)colour.CIECAM02_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 16.3 times faster. (@kelsolaar, @MichaelMauderer)colour.XYZ_to_Hunt
definition has been vectorised, handles n-dimensional arrays and is now 130.2 times faster. (@kelsolaar, @MichaelMauderer)colour.XYZ_to_LLAB
definition has been vectorised, handles n-dimensional arrays and is now 34 times faster. (@kelsolaar)colour.XYZ_to_Nayatani95
definition has been vectorised, handles n-dimensional arrays and is now 111.7 times faster. (@kelsolaar, @MichaelMauderer)colour.XYZ_to_RLAB
definition has been vectorised, handles n-dimensional arrays and is now 53.6 times faster. (@kelsolaar, @MichaelMauderer)colour.planck_law
definition has been vectorised, handles n-dimensional arrays and is now 162.1 times faster. (@kelsolaar)colour.mesopic_weighting_function
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.lightness_Glasser1958
definition has been vectorised, handles n-dimensional arrays and is now 16.0 times faster. (@kelsolaar)colour.lightness_Wyszecki1963
definition has been vectorised, handles n-dimensional arrays and is now 48.3 times faster. (@kelsolaar)colour.lightness_1976
definition has been vectorised, handles n-dimensional arrays and is now 33.3 times faster. (@kelsolaar)colour.luminance_Newhall1943
definition has been vectorised, handles n-dimensional arrays and is now 24.1 times faster. (@kelsolaar)colour.luminance_ASTMD153508
definition has been vectorised, handles n-dimensional arrays and is now 26.3 times faster. (@kelsolaar)colour.luminance_1976
definition has been vectorised, handles n-dimensional arrays and is now 35.7 times faster. (@kelsolaar)colour.SpectralShape.__contains__
now accepts array_like input. (@kelsolaar)colour.SpectralPowerDistribution.__getitem__
now accepts array_like and slice inputs. (@kelsolaar)colour.SpectralPowerDistribution.__setitem__
now accepts array_like and slice inputs. (@kelsolaar)colour.SpectralPowerDistribution.__contains__
now accepts array_like inputs. (@kelsolaar)colour.SpectralPowerDistribution.get
now accepts array_like inputs. (@kelsolaar)colour.TriSpectralPowerDistribution.__getitem__
now accepts array_like and slice inputs. (@kelsolaar)colour.TriSpectralPowerDistribution.__setitem__
now accepts array_like and slice inputs. (@kelsolaar)colour.TriSpectralPowerDistribution.__contains__
now accepts array_like inputs. (@kelsolaar)colour.TriSpectralPowerDistribution.get
now accepts array_like inputs (@kelsolaar)colour.RGB_2_degree_cmfs_to_XYZ_2_degree_cmfs
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.RGB_10_degree_cmfs_to_XYZ_10_degree_cmfs
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.RGB_10_degree_cmfs_to_LMS_10_degree_cmfs
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.LMS_2_degree_cmfs_to_XYZ_2_degree_cmfs
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.LMS_10_degree_cmfs_to_XYZ_10_degree_cmfs
definition has been vectorised and now handles n-dimensional arrays. (@kelsolaar)colour.wavelength_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 131.0 times faster. (@kelsolaar)colour.whiteness_Berger1959
definition has been vectorised, handles n-dimensional arrays and is now 277.6 times faster. (@kelsolaar)colour.whiteness_Taube1960
definition has been vectorised, handles n-dimensional arrays and is now 440.6 times faster. (@kelsolaar)colour.whiteness_Stensby1968
definition has been vectorised, handles n-dimensional arrays and is now 358.3 times faster. (@kelsolaar)colour.whiteness_ASTM313
definition has been vectorised, handles n-dimensional arrays and is now 305.5 times faster. (@kelsolaar)colour.whiteness_Ganz1979
definition has been vectorised, handles n-dimensional arrays and is now 194.1 times faster. (@kelsolaar)colour.whiteness_CIE2004
definition has been vectorised, handles n-dimensional arrays and is now 388.9 times faster. (@kelsolaar)colour.delta_E_CIE1976
definition has been vectorised, handles n-dimensional arrays and is now 283.2 times faster. (@kelsolaar)colour.delta_E_CIE1994
definition has been vectorised, handles n-dimensional arrays and is now 256 times faster. (@kelsolaar)colour.delta_E_CIE2000
definition has been vectorised, handles n-dimensional arrays and is now 140.3 times faster. (@kelsolaar)colour.delta_E_CMC
definition has been vectorised, handles n-dimensional arrays and is now 115.4 times faster. (@kelsolaar)colour.read_image
definition providing image read support using OpenImageIO. (@kelsolaar)colour.write_image
definition providing image write support using OpenImageIO. (@kelsolaar)colour.XYZ_to_xyY
definition has been vectorised, handles n-dimensional arrays and is now 15.5 times faster. (@kelsolaar)colour.xyY_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 70.8 times faster. (@kelsolaar)colour.xy_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 74.5 times faster. (@kelsolaar)colour.XYZ_to_xy
definition has been vectorised, handles n-dimensional arrays and is now 17.7 times faster. (@kelsolaar)colour.XYZ_to_Lab
definition has been vectorised, handles n-dimensional arrays and is now 49.2 times faster. (@kelsolaar)colour.Lab_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 52.3 times faster. (@kelsolaar)colour.Lab_to_LCHab
definition has been vectorised, handles n-dimensional arrays and is now 171.2 times faster. (@kelsolaar)colour.LCHab_to_Lab
definition has been vectorised, handles n-dimensional arrays and is now 173.5 times faster. (@kelsolaar)colour.XYZ_to_Luv
definition has been vectorised, handles n-dimensional arrays and is now 205.8 times faster. (@kelsolaar)colour.Luv_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 175.2 times faster. (@kelsolaar)colour.Luv_to_uv
definition has been vectorised, handles n-dimensional arrays and is now 183 times faster. (@kelsolaar)colour.Luv_uv_to_xy
definition has been vectorised, handles n-dimensional arrays and is now 218.7 times faster. (@kelsolaar)colour.Luv_to_LCHuv
definition has been vectorised, handles n-dimensional arrays and is now 144.1 times faster. (@kelsolaar)colour.LCHuv_to_Luv
definition has been vectorised, handles n-dimensional arrays and is now 168.7 times faster. (@kelsolaar)colour.XYZ_to_UCS
definition has been vectorised, handles n-dimensional arrays and is now 158.3 times faster. (@kelsolaar)colour.UCS_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 216.4 times faster. (@kelsolaar)colour.UCS_to_uv
definition has been vectorised, handles n-dimensional arrays and is now 119 times faster. (@kelsolaar)colour.UCS_uv_to_xy
definition has been vectorised, handles n-dimensional arrays and is now 222.2 times faster. (@kelsolaar)colour.XYZ_to_UVW
definition has been vectorised, handles n-dimensional arrays and is now 70.1 times faster. (@kelsolaar)REDcolor
REDcolor2
REDcolor3
REDcolor4
DRAGONcolor
DRAGONcolor2
colour.RGB_to_HSV
definition has been vectorised, handles n-dimensional arrays and is now 71 times faster. (@kelsolaar)colour.HSV_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 66.8 times faster. (@kelsolaar)colour.RGB_to_HSL
definition has been vectorised, handles n-dimensional arrays and is now 66 times faster. (@kelsolaar)colour.HSL_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 57.7 times faster. (@kelsolaar)colour.RGB_to_CMY
definition has been vectorised, handles n-dimensional arrays and is now 696 times faster. (@kelsolaar)colour.CMY_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 732.5 times faster. (@kelsolaar)colour.CMY_to_CMYK
definition has been vectorised, handles n-dimensional arrays and is now 84.6 times faster. (@kelsolaar)colour.CMYK_to_CMY
definition has been vectorised, handles n-dimensional arrays and is now 139.1 times faster. (@kelsolaar)colour.primaries_whitepoint
definition computing primaries and whitepoint from given normalised primary matrix. (@tashdor, @kelsolaar)colour.RGB_luminance
definition has been vectorised, handles n-dimensional arrays and is now 5354.1 times faster. (@kelsolaar)colour.XYZ_to_IPT
definition has been vectorised, handles n-dimensional arrays and is now 24.3 times faster. (@kelsolaar)colour.IPT_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 23.9 times faster. (@kelsolaar)colour.IPT_hue_angle
definition has been vectorised, handles n-dimensional arrays and is now 44.8 times faster. (@kelsolaar)colour.linear_to_cineon
definition has been vectorised, handles n-dimensional arrays and is now 82.2 times faster. (@kelsolaar)colour.cineon_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 54.7 times faster. (@kelsolaar)colour.linear_to_panalog
definition has been vectorised, handles n-dimensional arrays and is now 77.6 times faster. (@kelsolaar)colour.panalog_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 55.5 times faster. (@kelsolaar)colour.linear_to_red_log_film
definition has been vectorised, handles n-dimensional arrays and is now 76 times faster. (@kelsolaar)colour.red_log_film_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 59.2 times faster. (@kelsolaar)colour.linear_to_viper_log
definition has been vectorised, handles n-dimensional arrays and is now 69 times faster. (@kelsolaar)colour.viper_log_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 49 times faster. (@kelsolaar)colour.linear_to_pivoted_log
definition has been vectorised, handles n-dimensional arrays and is now 59.6 times faster. (@kelsolaar)colour.pivoted_log_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 46.3 times faster. (@kelsolaar)colour.linear_to_c_log
definition has been vectorised, handles n-dimensional arrays and is now 55.4 times faster. (@kelsolaar)colour.c_log_to_linear
definition has been vectorised, handles n-dimensional arrays and is now 48.2 times faster. (@kelsolaar)colour.linear_to_v_log
and colour.v_log_to_linear
definitions providing support for Panasonic V-Log. (@kelsolaar)colour.XYZ_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 1739.5 times faster. (@kelsolaar)colour.RGB_to_XYZ
definition has been vectorised, handles n-dimensional arrays and is now 1813.5 times faster. (@kelsolaar)colour.RGB_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 1691.2 times faster. (@kelsolaar)colour.munsell_value_Priest1920
definition has been vectorised, handles n-dimensional arrays and is now 332 times faster. (@kelsolaar)colour.munsell_value_Munsell1933
definition has been vectorised, handles n-dimensional arrays and is now 196.8 times faster. (@kelsolaar)colour.munsell_value_Moon1943
definition has been vectorised, handles n-dimensional arrays and is now 17.2 times faster. (@kelsolaar)colour.munsell_value_Saunderson1944
definition has been vectorised, handles n-dimensional arrays and is now 19.5 times faster. (@kelsolaar)colour.munsell_value_Ladd1955
definition has been vectorised, handles n-dimensional arrays and is now 18.1 times faster. (@kelsolaar)colour.munsell_value_McCamy1987
definition has been vectorised, handles n-dimensional arrays and is now 30.6 times faster. (@kelsolaar)colour.munsell_value_ASTMD153508
definition has been vectorised, handles n-dimensional arrays and is now 2201.5 times faster. (@kelsolaar)colour.RGB_to_HEX
definition has been vectorised, handles n-dimensional arrays and is now 3.3 times faster. (@kelsolaar)colour.HEX_to_RGB
definition has been vectorised, handles n-dimensional arrays and is now 1.8 times faster. (@kelsolaar)colour.scattering_cross_section
definition has been vectorised, handles n-dimensional arrays and is now 58.1 times faster. (@kelsolaar)colour.rayleigh_optical_depth
definition has been vectorised, handles n-dimensional arrays and is now 89.8 times faster. (@kelsolaar)colour.plotting.RGB_colourspaces_CIE_1960_UCS_chromaticity_diagram_plot
and colour.plotting.RGB_colourspaces_CIE_1976_UCS_chromaticity_diagram_plot
definitions to visualise RGB colourspaces in the CIE 1960 UCS and CIE 1976 UCS chromaticity diagrams. (@kelsolaar)colour.plotting.RGB_chromaticity_coordinates_CIE_1931_chromaticity_diagram_plot
, colour.plotting.RGB_chromaticity_coordinates_CIE_1960_UCS_chromaticity_diagram_plot
and colour.plotting.RGB_chromaticity_coordinates_CIE_1976_UCS_chromaticity_diagram_plot
definitions to visualise RGB chromaticities in the CIE 1931, CIE 1960 UCS and CIE 1976 UCS chromaticity diagrams. (@kelsolaar)colour.plotting.image_plot
definition to visualise images. (@kelsolaar)colour.xy_to_CCT_McCamy1992
definition has been vectorised, handles n-dimensional arrays and is now 53.1 times faster. (@kelsolaar)colour.xy_to_CCT_Hernandez1999
definition has been vectorised, handles n-dimensional arrays and is now 48.7 times faster. (@kelsolaar)colour.CCT_to_xy_Kang2002
definition has been vectorised, handles n-dimensional arrays and is now 29.5 times faster. (@kelsolaar)colour.CCT_to_xy_CIE_D
definition has been vectorised, handles n-dimensional arrays and is now 43.6 times faster. (@kelsolaar)colour.as_numeric
utility definition attempting to convert ndarray or other variable types to numeric. (@kelsolaar)colour.in_array
utility definition testing if each element of an array is also present in a second array within given tolerance. (@kelsolaar)colour.tstack
utility definition stacking arrays in sequence along the last axis. (@kelsolaar)colour.tsplit
utility definition splitting arrays in sequence along the last axis. (@kelsolaar)colour.row_as_diagonal
definition returning the per row diagonal matrices of the given array. (@kelsolaar)colour.dot_vector
convenient definition performing the dot product of two arrays where m array is expected to be an array of 3x3 matrices and v an array of vectors. (@kelsolaar)colour.dot_matrix
convenient definition performing the dot product of two arrays where a array is expected to be an array of 3x3 matrices and b array another array of of 3x3 matrices. (@kelsolaar)colour.handle_numpy_errors
colour.ignore_numpy_errors
colour.raise_numpy_errors
colour.print_numpy_errors
colour.warn_numpy_errors
colour.ignore_python_warnings
colour.is_within_macadam_limits
definition has been vectorised, handles n-dimensional arrays and is now 121.6 times faster. (@kelsolaar)colour.constants.common.FLOATING_POINT_NUMBER_PATTERN
colour.constants.common.INTEGER_THRESHOLD
colour.utilities.array.steps
colour.utilities.array.closest
colour.utilities.array.as_array
colour.utilities.array.is_uniform
colour.utilities.common.is_iterable
colour.utilities.common.is_numeric
colour.utilities.common.is_integer
colour.utilities.array.normalise
normalise(x, axis=None, factor=1, clip=True)
colour.algebra.regression.linear_regression definition
colour.first_order_colour_fit
: (@kelsolaar)
m1
colour matrix to m2
colour matrix instead of m2
to m1
.colour.SpectralPowerDistribution.get
defaults to np.nan
instead of None
. (@kelsolaar)colour.TriSpectralPowerDistribution.get
defaults to np.nan
instead of None
. (@kelsolaar)colour.linear_to_red_log
(@kelsolaar)
colour.linear_to_red_log_film
colour.red_log_to_linear
(@kelsolaar)
colour.red_log_film_to_linear
colour.plotting.colourspaces_CIE_1931_chromaticity_diagram_plot
(@kelsolaar)
colour.plotting.RGB_colourspaces_CIE_1931_chromaticity_diagram_plot
colour.plotting.colour_cycle
colour.plotting.colour_cycle(**kwargs)
Colour 0.3.4 - Alpha Milestone
colour.luminous_efficacy
definition. (@canavandl)colour.linear_to_cineon
, colour.cineon_to_linear
colour.linear_to_panalog
, colour.panalog_to_linear
colour.linear_to_red_log
, colour.red_log_to_linear
colour.linear_to_viper_log
, colour.viper_log_to_linear
colour.linear_to_pivoted_log
, colour.pivoted_log_to_linear
colour.linear_to_c_log
, colour.c_log_to_linear
colour.linear_to_aces_cc
, colour.aces_cc_to_linear
colour.linear_to_alexa_log_c
, colour.alexa_log_c_to_linear
colour.linear_to_dci_p3_log
, colour.dci_p3_log_to_linear
colour.linear_to_s_log
, colour.s_log_to_linear
colour.linear_to_s_log2
, colour.s_log2_to_linear
colour.linear_to_s_log3
, colour.s_log3_to_linear
colour.plotting.spds_CIE_1931_chromaticity_diagram_plot
colour.plotting.spds_CIE_1960_UCS_chromaticity_diagram_plot
colour.plotting.spds_CIE_1976_UCS_chromaticity_diagram_plot
colour. RGB_colourspace_volume_MonteCarlo
. (@kelsolaar, @MichaelMauderer)colour.plotting.single_spd_plot
definition was using incorrect abscissa ticker values. (@naavis, @kelsolaar)colour.models.dataset.aces_rgb
module objects have been conformed to latest ACES 1.0 specification and naming convention, thus it is highly recommended to study the module and the references: (@kelsolaar)
colour.models.dataset.aces
colour.models.dataset.dci_p3.DCI_P3_COLOURSPACE
now uses CIE D Series Illuminant D63 whitepoint.colour.models.dataset.s-log.S_LOG_COLOURSPACE
: (@kelsolaar)
colour.models.dataset.s-gamut.S_GAMUT_COLOURSPACE
colour.models.dataset.c-log
colour.optimal
: (@kelsolaar)
colour.volume
Colour 0.3.1 - Alpha Milestone
utilities/references_scraping.py
utility module. (@kelsolaar)