diff --git a/README.md b/README.md index 7a726b6..975c1f5 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,9 @@ # openlut - OSS tools for practical color management. [![build status](https://git.sofusrose.com/so-rose/openlut/badges/master/build.svg)](https://git.sofusrose.com/so-rose/openlut/commits/master) -*Main development happens at https://git.sofusrose.com/so-rose/openlut - take a look!* + +**Main Dev Repo**: https://git.sofusrose.com/so-rose/openlut (GitLab) +**PyPi Package**: https://pypi.python.org/pypi/openlut What is it? ----- diff --git a/README.rst b/README.rst index a2e46d1..45515fe 100644 --- a/README.rst +++ b/README.rst @@ -1,15 +1,17 @@ -openlut - Open-source tools for practical color management. -=========================================================== +openlut - OSS tools for practical color management. +=================================================== -\*\*Main development happens at -https://git.sofusrose.com/so-rose/openlut - take a look! +|build status| + +**Main Dev Repo**: https://git.sofusrose.com/so-rose/openlut (GitLab) +**PyPi Package**: https://pypi.python.org/pypi/openlut What is it? ----------- -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 +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 functions/matrices, applying color transformations, etc. . openlut is also a practical tool. Included soon will be a command line @@ -18,8 +20,49 @@ 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 -included (a library of gamma functions and color gamut matrices). Color -management doesn't have to be so difficult! +included (a library of gamma functions and color gamut matrices). + +Documentation +------------- + +Docs can be found at https://sofusrose.com/openlut. They're a work in +progress for now (ColMap is 100% documented). + +Installation +------------ + +1. **Get the dependencies!!!** The pip command will break without them. + + - **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. + +2. Run ``pip3 install openlut`` *(possibly sudo)*. This step **relies** + on the successful installation of deps: + + - **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 :) . + +*Linux: Ignore the AssertionError when building the wheel; it doesn't +affect anything.* + +Troubleshooting +--------------- + +If python's installed but pip won't install, run +``curl https://bootstrap.pypa.io/get-pip.py | python3`` + +No Windows support right now - it's the C++ module's fault. + +Start an issue if something goes wrong with the library itself! + +Misc. Systems need, generically: \* Python 3.5+ \* Pip \* gcc (with +c++14 and openmp support) What About OpenColorIO? Why does this exist? -------------------------------------------- @@ -37,60 +80,12 @@ 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. -Documentation -------------- - -Docs can be found at https://sofusrose.com/openlut. They're a work in -progress for now (ColMap is 100% documented). - -Installation ------------- - -First: **Ensure you have dependencies!!!** The pip command will break -without them. - -Simply use pip: ``pip3 install openlut`` (pip3 denotes that you must use -a Python 3 version of pip). Keep in mind, there are some external -dependencies: \* **Python 3.5**: This is Python; you need Python. \* -**gcc**: This is needed to compile the C++ extensions. \* -**imagemagick**: For all file IO. It's not like I was gonna write that -myself :) . - -*If it's breaking, try running ``pip3 install -U pip setuptools``. -Sometimes they are out of date.* *Linux: You make need to use ``sudo`` -before the command. Ignore the AssertionError when building the wheel; -it doesn't affect anything.* - -Installing Dependencies ------------------------ - -Not Difficult, I promise! - -On Debian/Ubuntu: -``sudo apt-get install python3-pip gcc libmagickwand-dev`` - -On Mac: ``brew install python3 gcc imagemagick`` \* You will need -Homebrew ( copy/paste a command from http://brew.sh/ to install ) and -XCode Command Line Tools for gcc (it should prompt you to install this). -\* If this doesn't install pip, run -``brew install python3; curl https://bootstrap.pypa.io/get-pip.py | python3`` - -On Other: You need **python 3.5**, pip, a newer version (must support -C++14) of **gcc**. - -Basic Library Usage +I Wanna Contribute! ------------------- -To represent images, use a **ColMap** object. This handles IO to/from -all ImageMagick supported formats (**including EXR and DPX**), as well -as storing the image data. +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. -Use any child of the **Transform** class to do a color transform on a -ColMap, using ColMap's ``apply(Transform)`` method. - -The **Transform** objects themselves have plenty of features - like LUT, -with ``open()``, ``save()``, and ``resize()`` methods, or TransMat with -auto-combining input matrices, or automatic spline-based interpolation -of very small 1D LUTs - to make them helpful in and of themselves! - -Take a look at the test code under tests for examples. +.. |build status| image:: https://git.sofusrose.com/so-rose/openlut/badges/master/build.svg + :target: https://git.sofusrose.com/so-rose/openlut/commits/master diff --git a/setup.py b/setup.py index 392509f..fa14574 100755 --- a/setup.py +++ b/setup.py @@ -32,7 +32,7 @@ olOpt = Extension( 'openlut.lib.olOpt', ) setup( name = 'openlut', - version = '0.2.4', + version = '0.2.6', description = 'OpenLUT is a practical color management library.', long_description = read('README.rst'),