2017-01-27 01:15:52 +01:00
|
|
|
openlut - OSS tools for practical color management.
|
|
|
|
===================================================
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
|build status|
|
|
|
|
|
|
|
|
**Main Dev Repo**: https://git.sofusrose.com/so-rose/openlut (GitLab)
|
|
|
|
**PyPi Package**: https://pypi.python.org/pypi/openlut
|
2017-01-26 23:49:32 +01:00
|
|
|
|
|
|
|
What is it?
|
|
|
|
-----------
|
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
openlut is, at its core, a transform-focused **color management
|
|
|
|
library**, accessible from **Python 3.5+**. It's built on my own color
|
|
|
|
pipeline needs, which includes managing Lookup Tables, Gamma/Gamut
|
2017-01-26 23:49:32 +01:00
|
|
|
functions/matrices, applying color transformations, etc. .
|
|
|
|
|
|
|
|
openlut is also a practical tool. Included soon will be a command line
|
|
|
|
utility letting you perform complex color transformations from the
|
|
|
|
comfort of your console. Included already is an OpenGL image viewer,
|
|
|
|
which might grow in the future to play sequences.
|
|
|
|
|
|
|
|
I wanted it to cover this niche simply and consistently, with batteries
|
2017-01-27 01:15:52 +01:00
|
|
|
included (a library of gamma functions and color gamut matrices).
|
2017-01-26 23:49:32 +01:00
|
|
|
|
|
|
|
Documentation
|
|
|
|
-------------
|
|
|
|
|
|
|
|
Docs can be found at https://sofusrose.com/openlut. They're a work in
|
|
|
|
progress for now (ColMap is 100% documented).
|
|
|
|
|
|
|
|
Installation
|
|
|
|
------------
|
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
1. **Get the dependencies!!!** The pip command will break without them.
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
- **On Debian/Ubuntu**:
|
|
|
|
``sudo apt-get install python3-pip gcc libmagickwand-dev``
|
|
|
|
- **On Mac**: ``brew install python3 gcc imagemagick``
|
|
|
|
- **All**: Make sure **pip**, **setuptools**, and **wheel** are
|
|
|
|
installed. ``pip3 install -U pip setuptools wheel``. It can cause
|
|
|
|
errors if they aren't.
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
2. Run ``pip3 install openlut`` *(possibly sudo)*. This step **relies**
|
|
|
|
on the successful installation of deps:
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
- **Python 3.5**: This is Python. You need Python.
|
|
|
|
- **gcc**: This is needed to compile the C++ extension.
|
|
|
|
- **imagemagick**: For all file IO. It's not like I was gonna write
|
|
|
|
that myself :) .
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
*Linux: Ignore the AssertionError when building the wheel; it doesn't
|
|
|
|
affect anything.*
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
Troubleshooting
|
|
|
|
---------------
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
If python's installed but pip won't install, run
|
|
|
|
``curl https://bootstrap.pypa.io/get-pip.py | python3``
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
No Windows support right now - it's the C++ module's fault.
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
Start an issue if something goes wrong with the library itself!
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
Misc. Systems need, generically: \* Python 3.5+ \* Pip \* gcc (with
|
|
|
|
c++14 and openmp support)
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
What About OpenColorIO? Why does this exist?
|
|
|
|
--------------------------------------------
|
|
|
|
|
|
|
|
OpenColorIO does amazing work - but mostly in the context of large
|
|
|
|
applications, not-simple config files, and self-defined color space
|
|
|
|
(with the full range of int/float bit depth specifics, etc.)
|
|
|
|
|
|
|
|
openlut is all about images and the transforms on images. Everything
|
|
|
|
happens in (0, 1) float space. Large emphasis is placed on managing the
|
|
|
|
tools themselves as well - composing matrices, resizing LUTs, defining
|
|
|
|
new gamma functions, etc. .
|
|
|
|
|
|
|
|
In many ways, OCIO is a system stringing basic operations together. I'd
|
|
|
|
be perfectly plausible to write an OCIO alternative with openlut in the
|
|
|
|
backend.
|
|
|
|
|
|
|
|
I Wanna Contribute!
|
|
|
|
-------------------
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
I'm honored! I could use help with: \* Feedback \* Gamma Transfer
|
|
|
|
Functions: The more "batteries" are included, the better! \* D65
|
|
|
|
XYZ-referenced color matrices (gamut definitions): See above.
|
2017-01-26 23:49:32 +01:00
|
|
|
|
2017-01-27 01:15:52 +01:00
|
|
|
.. |build status| image:: https://git.sofusrose.com/so-rose/openlut/badges/master/build.svg
|
|
|
|
:target: https://git.sofusrose.com/so-rose/openlut/commits/master
|