Skip to main content

pycubelut

GitHub license PyPi Version

Stop wasting time with sloppy 'gram filters, and use pycubelut to easily add that pro feel to your images!

Quick Start

Download one of many free .cube LUTs online [1, 2]. Then, run the following with your downloaded LUT and image.

$ sudo pip3 install pycubelut
$ cubelut F-8700-V2-STD.cube P1040326.jpg -v
INFO: Processing image: P1040326.jpg
INFO: Completed in  6.71s

Sample Image

Overview

Many professionals apply 3D LUTs to obtain a certain look and feel to their images and videos, which is usually done with proprietary software such as Adobe Photoshop or Final Cut Pro. pycubelut was created to be the first easy to use, open-source, command-line tool to apply Adobe Cube LUTs to images.

In the context of images, a Lookup Table (LUT) is a table describing a transformation of RGB values. There are multiple types of LUTs used in image processing, most common being 1D LUTs and 3D LUTs. A 1D LUT contains an independent transformation for each colour channel, meaning there would be three 1D LUTs defined (for Red, Green, and Blue). However, a 3D LUT has every colour in RGB space directly mapped to another specified colour (ℝ³ -> ℝ³), allowing for powerful and arbitrary transformations, such as greyscale, false colour, and hue shifts. All colour effects, such as gamma, contrast, brightness, etc. can be encoded as a 3D LUT.

3D LUTs are essentially grids in the shape of cubes (hence Adobe used .cube for their LUT file extension). In order to encode a lossless transformation of the complete 8 bit RGB space, 256x256x256 mappings are needed. However, the Cube format allows for interpolation of values from a LUT defined with fewer points, commonly 33x33x33 mappings.

Usage

Warning: If your input image is in a Log colorspace, make sure to choose a Log LUT!

$ cubelut --help
usage: cubelut [-h] [-o OUT] [-g] [-v] [-t [THUMB]] [-j JOBS] LUT INPUT

Tool for applying Adobe Cube LUTs to images

positional arguments:
  LUT                   Cube LUT filename/folder
  INPUT                 input image filename/folder

optional arguments:
  -h, --help            show this help message and exit
  -o OUT, --out OUT     output image folder
  -g, --log             convert to Log before LUT
  -v, --verbose         control verbosity and info messages
  -t [THUMB], --thumb [THUMB]
                        resizes to <= 500px, optionally specify max size
  -j JOBS, --jobs JOBS  number of processes to spawn, defaults to number of
                        logical CPUs

Multiple LUTs

Applies all .cube files in the folder to the image(s)

$ cubelut ./my_luts/ P1040326.jpg

Batch Image Processing

Processes all images in the input folder, and outputs to a specified folder

$ cubelut ./my_luts/ ./my_images/ -o ./new_images/

Thumbnail Mode

Resizes images for a huge speedup, useful for multiple LUTs

$ cubelut ./my_luts/ P1040326.jpg -t

Metadata

Release files for pycubelut 0.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pycubelut 0.2.3
File Size Uploaded Provenance
pycubelut-0.2.3.tar.gz 7.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pycubelut 0.2.3
File Interpreter ABI Platform
pycubelut-0.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 14.7 kB

Release files / pycubelut-0.2.3.tar.gz

Download URL pycubelut-0.2.3.tar.gz
Size 7.2 kB
Tags Source
SHA-256 checksum
How to use checksums
3b76211c3be3884e425963f1ac882bb5819a78d7af248d6d951b63548c887a2c
BLAKE2b-256 checksum
How to use checksums
549273b578806269f5a499eb2fe38671a659ec8910e9a368d10b149c94b53a21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.5 CPython/3.7.7 Darwin/19.4.0

Release files / pycubelut-0.2.3-py3-none-any.whl

Download URL pycubelut-0.2.3-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bb96179d35f1d73901388d7210cfe2a1beecf427080c05a4c96944b28137e99b
BLAKE2b-256 checksum
How to use checksums
8ccd5ab5ef76c223c5a500edfb40bca109369598cc121ae39b3a5582d26224a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.5 CPython/3.7.7 Darwin/19.4.0

Security for pycubelut 0.2.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page