colour.models.rgb.transfer_functions.canon_log Module

Canon Log Encodings

Defines the Canon Log encodings:

References

[1]Thorpe, L. (2012). CANON-LOG TRANSFER CHARACTERISTIC. Retrieved from http://downloads.canon.com/CDLC/Canon-Log_Transfer_Characteristic_6-20-2012.pdf
[2]Canon. (n.d.). EOS C300 Mark II - EOS C300 Mark II Input Transform Version 2.0 (for Cinema Gamut / BT.2020). Retrieved August 23, 2016, from https://www.usa.canon.com/internet/portal/us/home/support/details/cameras/cinema-eos/eos-c300-mark-ii

Notes

colour.models.rgb.transfer_functions.canon_log.log_encoding_CanonLog(x)[source]

Defines the Canon Log log encoding curve / opto-electronic transfer function.

Parameters:x (numeric or array_like) – Linear data \(x\).
Returns:Canon Log non-linear IRE data.
Return type:numeric or ndarray

Notes

  • Output Canon Log non-linear IRE data should be converted to code value CV as follows: CV = IRE * (940 - 64) + 64.

Examples

>>> log_encoding_CanonLog(0.20) * 100  
32.7953896...
colour.models.rgb.transfer_functions.canon_log.log_decoding_CanonLog(clog_ire)[source]

Defines the Canon Log log decoding curve / electro-optical transfer function.

Parameters:clog_ire (numeric or array_like) – Canon Log non-linear IRE data.
Returns:Linear data \(x\).
Return type:numeric or ndarray

Notes

  • Input Canon Log non-linear IRE data should be converted from code value CV to IRE as follows: IRE = (CV - 64) / (940 - 64).

Examples

>>> log_decoding_CanonLog(32.795389693580908 / 100)  
0.19999999...
colour.models.rgb.transfer_functions.canon_log.log_encoding_CanonLog2(x)[source]

Defines the Canon Log 2 log encoding curve / opto-electronic transfer function.

Parameters:x (numeric or array_like) – Linear data \(x\).
Returns:Canon Log 2 non-linear IRE data.
Return type:numeric or ndarray

Notes

  • Output Canon Log 2 non-linear IRE data should be converted to code value CV as follows: CV = IRE * (940 - 64) + 64.

Examples

>>> log_encoding_CanonLog2(0.20) * 100  
39.2025745...
colour.models.rgb.transfer_functions.canon_log.log_decoding_CanonLog2(clog2_ire)[source]

Defines the Canon Log 2 log decoding curve / electro-optical transfer function.

Parameters:clog2_ire (numeric or array_like) – Canon Log 2 non-linear IRE data.
Returns:Linear data \(x\).
Return type:numeric or ndarray

Notes

  • Input Canon Log 2 non-linear IRE data should be converted from code value CV to IRE as follows: IRE = (CV - 64) / (940 - 64).

Examples

>>> log_decoding_CanonLog2(39.202574539700947 / 100)  
0.2000000...
colour.models.rgb.transfer_functions.canon_log.log_encoding_CanonLog3(x)[source]

Defines the Canon Log 3 log encoding curve / opto-electronic transfer function.

Parameters:x (numeric or array_like) – Linear data \(x\).
Returns:Canon Log 3 non-linear IRE data.
Return type:numeric or ndarray

Notes

  • Output Canon Log 3 non-linear IRE data should be converted to code value CV as follows: CV = IRE * (940 - 64) + 64.

Examples

>>> log_encoding_CanonLog3(0.20) * 100  
32.7953567...
colour.models.rgb.transfer_functions.canon_log.log_decoding_CanonLog3(clog3_ire)[source]

Defines the Canon Log 3 log decoding curve / electro-optical transfer function.

Parameters:clog3_ire (numeric or array_like) – Canon Log 3 non-linear IRE data.
Returns:Linear data \(x\).
Return type:numeric or ndarray

Notes

  • Input Canon Log 3 non-linear IRE data should be converted from code value CV to IRE as follows: IRE = (CV - 64) / (940 - 64).

Examples

>>> log_decoding_CanonLog3(32.795356721989336 / 100)  
0.2000000...