Skip to main content

Utility to help colorblind people by providing color filters and highlighting tools.

Project description

DaltonLens-Python

Unit Tests

This python package is a companion to the desktop application DaltonLens. Its main goal is to help the research and development of better color filters for people with color vision deficiencies. It also powers the Jupyter notebooks used for the technical posts of daltonlens.org. The current features include:

  • Simulate color vision deficiencies using the Viénot 1999, Brettel 1997 or Machado 2009 models.
  • Provide conversion functions to/from sRGB, linear RGB and LMS
  • Implement several variants of the LMS model
  • Generate Ishihara-like test images

For a discussion about which CVD simulation algorithms are the most accurate see our Review of Open Source Color Blindness Simulations.

For more information about the math of the chosen algorithms see our article Understanding CVD Simulation.

Install

python3 -m pip install daltonlens

How to use

From the command line

daltonlens-python --help
usage: daltonlens-python [-h] 
       [--model MODEL] [--filter FILTER]
       [--deficiency DEFICIENCY] [--severity SEVERITY]
       input_image output_image

Toolbox to simulate and filter color vision deficiencies.

positional arguments:
  input_image           Image to process.
  output_image          Output image

optional arguments:
  -h, --help            show this help message and exit
  --model MODEL, -m MODEL
                        Color model to apply: vienot, brettel, machado or auto (default: auto)
  --filter FILTER, -f FILTER
                        Filter to apply: simulate or daltonize. (default: simulate)
  --deficiency DEFICIENCY, -d DEFICIENCY
                        Deficiency type: protan, deutan or tritan (default: protan)
  --severity SEVERITY, -s SEVERITY
                        Severity between 0 and 1 (default: 1.0)

From code

from daltonlens import convert, simulate, generate
import PIL
import numpy as np

# Generate a test image that spans the RGB range
im = np.asarray(PIL.Image.open("test.png").convert('RGB'))

# Create a simulator using the Viénot 1999 algorithm.
simulator = simulate.Simulator_Vienot1999()

# Apply the simulator to the input image to get a simulation of protanomaly
protan_im = simulator.simulate_cvd (im, simulate.Deficiency.PROTAN, severity=0.8)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

daltonlens-0.1.4.tar.gz (274.8 kB view details)

Uploaded Source

Built Distribution

daltonlens-0.1.4-py3-none-any.whl (44.5 kB view details)

Uploaded Python 3

File details

Details for the file daltonlens-0.1.4.tar.gz.

File metadata

  • Download URL: daltonlens-0.1.4.tar.gz
  • Upload date:
  • Size: 274.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for daltonlens-0.1.4.tar.gz
Algorithm Hash digest
SHA256 142e51dab04307cb39c481d76f46260e15bd8c25a927d83d41263f6e42c5a3b5
MD5 1d3512a9c8f69816cdbab9fb1c9b054a
BLAKE2b-256 19f872bfa18aca23a1bc8bb99237be0e3ce8bed02f8ddb868719c6ae149eadf5

See more details on using hashes here.

File details

Details for the file daltonlens-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: daltonlens-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 44.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for daltonlens-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9a8d6426d2e77c6bbdcf9022521ec518f48f3d37b2a3e3db2cbdd728d6ad0382
MD5 9675604a373729bf3a04f1a2e0357d12
BLAKE2b-256 c53c3968f43d6894b3b7cecf84532b9ba0d41a830583df981562952e413a2fba

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page