nolanizer-v1 / README.md
mskayacioglu's picture
Update README.md
b5703c3 verified
|
Raw
History Blame Contribute Delete
4.36 kB
---
library_name: pytorch
pipeline_tag: image-to-image
license: apache-2.0
tags:
- image-to-image
- color-grading
- 3d-lut
- computer-vision
- pytorch
---
# Nolanizer V1
Nolanizer V1 is a scene-adaptive image-to-image model for cinematic global
color grading. It preserves the input composition and predicts a color
transformation designed to produce a restrained, large-format cinematic look
associated with Christopher Nolan-inspired visual language.
The model analyzes each image, predicts a mixture of eight learned `33³` 3D LUT
bases, and applies bounded exposure, contrast, saturation, temperature, and tint
adjustments. A single intensity control blends continuously between the
original image and the full grade.
> Nolanizer is an independent research project. It is not affiliated with,
> endorsed by, or an official product of Christopher Nolan, any
> cinematographer, colorist, or film studio. The output is an algorithmic
> interpretation of a cinematic visual style, not a claim about how a specific
> person would grade an image.
## Model details
| Property | Value |
| --- | --- |
| Task | Scene-adaptive global image color grading |
| Framework | PyTorch |
| Architecture | CNN condition encoder with a learnable 3D LUT mixture |
| LUT basis | 8 learned LUTs, each `33 × 33 × 33` |
| Global controls | Exposure, contrast, saturation, temperature, and tint |
| Effect range | `0.0` to `1.0` |
| Recommended weights | EMA |
| Release checkpoint | Epoch 7 |
The transformation is global: every output pixel is produced from its input
color and the scene-conditioned grade. Spatial structure, objects, and
composition are therefore left unchanged.
## Files
| File | Purpose |
| --- | --- |
| `nolanizer_v1.pt` | Frozen epoch-7 checkpoint; use EMA weights |
| `config.json` | Architecture and inference contract |
| `training_config.yaml` | Resolved optimization configuration |
| `checkpoint_manifest.json` | Checkpoint checksum and release metrics |
| `requirements.txt` | Runtime Python dependencies |
## Usage
The checkpoint requires the Nolanizer Python package or a Nolanizer source
checkout. Install the project, then run:
```bash
python -m pip install -e .
python -m nolanizer.inference \
--checkpoint huggingface/nolanizer-v1/nolanizer_v1.pt \
--input path/to/input.jpg \
--output path/to/output.jpg \
--intensity 0.8 \
--weights ema
```
Supported inputs include standard RGB images such as JPEG, PNG, and WebP.
### Intensity
- `0.0`: exact identity output
- `0.6–0.9`: recommended range for most images
- `1.0`: full predicted grade
The inference command saves the graded image and can also expose the predicted
LUT mixture and global adjustment parameters for inspection.
## Evaluation
The release checkpoint passed the project's frozen color, content-preservation,
clipping, LUT-basis health, and exact-identity gates.
| Metric | Value |
| --- | ---: |
| CIEDE2000 | `5.7666` |
| Lab MAE | `3.6339` |
| Luminance SSIM | `0.8617` |
| Edge correlation | `0.9837` |
| Clipped-pixel ratio | `0.0017` |
These are internal release metrics rather than a perceptual preference score.
They should not be interpreted as a guarantee of equivalent performance on
every image domain.
## Intended use
- Interactive grading of photographs and still images
- Research and education in global cinematic color grading
- Analysis of scene-conditioned LUT mixtures
- Non-destructive look exploration through the intensity control
## Limitations
- The renderer applies global color and tone transformations only; it does not
perform local masking or selective relighting.
- It cannot change geometry, composition, production design, lens
characteristics, film grain, bloom, or halation.
- Extremely clipped highlights, near-black images, unusual color spaces, and
heavily compressed inputs may produce unstable or subtle results.
- Skin-tone behavior has not been assessed with a dedicated demographic
benchmark.
- Output quality is subjective and depends on exposure, white balance, scene
content, and the selected intensity.
## Responsible use
Use the model only with images you have the right to process. Do not present
generated results as an official Christopher Nolan look, endorsement, or
creative decision. Keep the original image when provenance or faithful color
reproduction matters.