This repository implements a pipeline that combines semantic segmentation (via SAM + CLIP zero‑shot labeling) with Reinhard color transfer to produce per‑class or global color adjustments and export 3D LUTs for any NLE or viewer. This pipeline is a work in progress, however initial results seem promising.
-
Semantic vs. Global Transfer
- Segmentation‑aware: match colors class‑by‑class (trees → trees, skin → skin, etc.).
- Global: classic Reinhard transfer across the entire image.
- Blended: weight between segmentation (0–100%) and global adjustments.
-
Exposure Matching
Optionally normalize overall luminance (L channel) before applying Reinhard. -
3D LUT Export
Generate a.cubefile for drop‑in editing use in NLE (Davinci Resolve, Adobe Premiere, etc).
Requirements
- Nvidia GPU with CUDA support
- Python 3.8+