All Projects → ksmet1977 → luxpy

ksmet1977 / luxpy

Licence: GPL-3.0 License
Python toolbox for lighting and color science

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to luxpy

Chromatism
🌈 A simple set of utility functions for colours.
Stars: ✭ 1,763 (+3105.45%)
Mutual labels:  color, cielab, ciexyz, chromatic-adaptation
SAPC-APCA
APCA (Accessible Perceptual Contrast Algorithm) is a new method for predicting contrast for use in emerging web standards (WCAG 3) for determining readability contrast. APCA is derived form the SAPC (S-LUV Advanced Predictive Color) which is an accessibility-oriented color appearance model designed for self-illuminated displays.
Stars: ✭ 266 (+383.64%)
Mutual labels:  color, colorimetry
nuke-colortools
A collection of tools for Nuke related to color science and the Academy Color Encoding System (ACES).
Stars: ✭ 66 (+20%)
Mutual labels:  color-science, chromatic-adaptation
colour-nuke
Colour - Nuke
Stars: ✭ 145 (+163.64%)
Mutual labels:  color, color-science
tradfri-flux
f.lux-like temp adjustments on IKEA trådfri 💡
Stars: ✭ 18 (-67.27%)
Mutual labels:  color, lighting
colour-notebooks
Colour - Jupyter Notebooks
Stars: ✭ 21 (-61.82%)
Mutual labels:  color, color-science
utils.js
👷 🔧 zero dependencies vanilla JavaScript utils.
Stars: ✭ 14 (-74.55%)
Mutual labels:  color
react-native-dual
ScrollView, FlatList, SectionList and ListView with dual background
Stars: ✭ 28 (-49.09%)
Mutual labels:  color
texthighlighter
a no dependency typescript npm package for highlighting user selected text
Stars: ✭ 17 (-69.09%)
Mutual labels:  color
Toast
To use it in PCL or .NetStandard projects write this line of code : CrossToastPopUp.Current.ShowToastMessage("Message");
Stars: ✭ 51 (-7.27%)
Mutual labels:  color
WaveLabelDemo
波浪经过文字,文字改变颜色。Waves pass through words, and words change colours.
Stars: ✭ 58 (+5.45%)
Mutual labels:  color
nltools
Python toolbox for analyzing imaging data
Stars: ✭ 94 (+70.91%)
Mutual labels:  python-toolbox
ghci-color
colorize ghci output
Stars: ✭ 74 (+34.55%)
Mutual labels:  color
palette
Color palette app for elementary OS
Stars: ✭ 32 (-41.82%)
Mutual labels:  color
unblending
Decomposing an input image into layers via "color unblending"
Stars: ✭ 125 (+127.27%)
Mutual labels:  color
Colorful
CSS colors for use with SwiftUI
Stars: ✭ 23 (-58.18%)
Mutual labels:  color
a-color-picker
A color picker for web app
Stars: ✭ 97 (+76.36%)
Mutual labels:  color
popping-and-locking-vscode
Vivid and well balanced syntax for VS Code.
Stars: ✭ 26 (-52.73%)
Mutual labels:  color
color-extractor
Biancoir is website that provide color extraction from an image with quantization algorithm.
Stars: ✭ 12 (-78.18%)
Mutual labels:  color
spid-express
Express middleware implementing SPID & Entra con CIE (Carta d'Identità Elettronica)
Stars: ✭ 27 (-50.91%)
Mutual labels:  cie

Python toolbox for lighting and color science

  • Author: Kevin A.G. Smet (ksmet1977 at gmail.com)
  • Version: 1.9.6
  • Date: February 15, 2022
  • License: GPLv3

DOI

Cite LuxPy:

If you use the package, please cite the following tutorial paper published in LEUKOS: Smet, K. A. G. (2020). Tutorial: The LuxPy Python Toolbox for Lighting and Color Science. LEUKOS, 1–23. DOI: 10.1080/15502724.2018.1518717

NEW luxpy basic web-app [under development]:

For some online spectral calculations (ANSI/IES TM30, CIE 13.3-1995 Ra, CIE 224:2017 Rf, alpha-opic irradiances, Equivalent Daylight Illuminance (EDI), Efficacy of Luminous Radiation (ELR), Daylight Efficacy Ratio (DER), IES/LDT Luminous Intensity Distribution plots/renders, ...) using a python web-application: luxpy.herokuapp.com or share.streamlit.io/ksmet1977/luxpy_app/main/luxpy_app.py


What is LuxPy?

Luxpy is an open source package under a GPLv3 license that supports several common lighting, colorimetric, color appearance and other color science related calculations and models, such as:

  • spectral data interpolation (conform CIE15-2018) and normalization
  • calculation of daylight phase, blackbody radiator and other reference illuminant spectra
  • calculation of tristimulus values
  • correlated color temperature and Duv (methods: robertson1968, ohno2014, li2016, zhang2019)
  • color space transformations
  • chromatic adaptation transforms
  • color appearance models
  • color rendition indices (eg. CIE Ra, CIE 224:2017 Rf, ANSI/IES TM30 Rf, Rg, ... + IES TM30 Annex E priority levels & reports)
  • calculation of photobiological quantities (eg melanopic irradiance, MEDI, CS, ...)
  • multi-component spectrum creation and optimization
  • hyper-spectral image simulation and rendering
  • MacAdam ellipses
  • color differences (cam02ucs, DE2000, ...)
  • modelling of individual observer color matching functions (Asano, 2016)
  • calculation of CIEOP06 (cfr. CIE TC1-97) color matching functions and cone-fundamentals
  • display characterization
  • reading and visualizing IES and LDT photometric files (vizualizations: 2D polar plots, 3D plots, single-bounce physical-based rendering)
  • spectral mismatch (f1', correction factors) and measurement uncertainty (under development)
  • ...

As of May 2019, LuxPy now also has a toolbox spectro for spectral measurements with JETI and OceanOptics spectrometers:

  • spectro.jeti: easy installation (dll's are part of sub-package).
  • spectro.oceanoptics: more tricky installation (requires manual install of python-seabreeze, ...; see here or subpackage help for more info)

UPDATED (May, 2021): ANSI/IES-TM30-2018 graphical output (Color Rendition Reports, Color Vector Graphics, Annex E priority levels...)


How to use LuxPy (basics)?

Luxpy can be easily installed from pypi pip install luxpy or anaconda conda install -c ksmet1977 luxpy.

An overview of the basic usage is given in the luxpy basic usage.ipynb jupyter notebook (!! Don't right-click to save, see below for download instructions !!), as well as the tutorial paper published in LEUKOS: Smet, K. A. G. (2020). Tutorial: The LuxPy Python Toolbox for Lighting and Color Science. LEUKOS, 1–23. DOI: 10.1080/15502724.2018.1518717

  • !!! To download jupyter notebook:
    1. Open the notebook in github by clicking it and then press download button at the top right; don't right-click the notebook link itself and use 'save as ...', as this apparently results in some NotJSONError when opening the notebook!
    2. If the jupyter notebook fails to open or download or still gives an error: (Github seems to experience some type of problem sometimes with its jupyter notebook backend, see issue), try opening the file using the nbviewer.jupyter.org online viewer, (or just click this direct link: nbviewer.jupyter.org/github/ksmet1977/luxpy/blob/master/luxpy_basic_usage.ipynb) and then download it from there (use download notebook button at the top right of the page).

For more details on structure, functionality, etc., see:

  1. the github pages on: ksmet1977.github.io/luxpy/

  2. the LuxPy_Documentation pdf

  3. or, the __doc__string of each function.

    To get help on, for example the spd_to_xyz() function, type:

        import luxpy as lx
        ?lx.spd_to_xyz
    

    To get a list of functions/modules, type:

        dir(lx)
    

Python tutorials

Some basic tutorials can be found at:

A list of basic and more advanced is given at:

Matlab versus Python:

Udemy.com:

  • Udemy.com offers some great courses. Although some of these are payed, they often come at huge discounted prices.

Youtube.com:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].