LUT Analyzer is a comprehensive command-line tool for analyzing Look-Up Tables (LUTs) in the .cube
format. It provides detailed technical analysis, visualization, and reporting capabilities for colorists, filmmakers, and technical directors working with color transformations.
-
Comprehensive LUT Analysis
- Color space transformation analysis
- Dynamic range evaluation
- Color bias detection
- Tonal smoothness assessment
- Banding detection
-
Advanced Visualization
- RGB distribution plots
- Color curves analysis
- ColorChecker comparisons
- Linear and logarithmic gradient ramps
- Transformation accuracy plots
-
Technical Reporting
- Detailed JSON reports for each LUT
- Comprehensive technical documentation in Markdown
- Summary reports for batch analysis
- Visual quality assessment
-
Color Space Support
- S-Log3/S-Gamut3
- ARRI LogC/AWG
- RED Log3G10/REDWideGamut
- V-Log/V-Gamut
- Rec.709
- Custom gamma curves
- Python 3.8+
- NumPy
- Matplotlib
- Additional dependencies in
requirements.txt
-
Clone the repository:
git clone https://github.com/makaronz/LUT_to_false.git cd LUT_to_false
-
Install dependencies:
pip install -r requirements.txt
Analyze a single LUT file:
python cube_analyzer.py path/to/your/lut.cube
Analyze all LUTs in a directory:
python cube_analyzer.py path/to/lut/directory
Specify source and target color spaces:
python cube_analyzer.py path/to/lut.cube --source "S-Log3/S-Gamut3" --target "Rec.709"
Custom output directory:
python cube_analyzer.py path/to/lut.cube --output custom_output_dir
The analyzer generates:
- Individual JSON reports for each LUT
- Visualization plots (PNG format)
- RGB distribution
- Color curves
- ColorChecker comparison
- Gradient ramps
- Transformation accuracy
- A comprehensive technical document (Markdown)
- Summary report for batch analysis
-
LUT Parser (
lut_tools/lut_parser.py
)- Parses .cube file format
- Extracts metadata and 3D LUT data
- Infers color spaces based on file characteristics
-
Transfer Functions (
lut_tools/transfer_functions.py
)- Implements standard camera and display transfer functions
- Supports major log curves and gamma transformations
- Provides color space conversion utilities
-
Analyzers (
lut_tools/analyzers.py
)- LUTAnalyzer: Basic LUT characteristics
- LUTTransformationAnalyzer: Color space transformation analysis
- Comprehensive metrics calculation
-
Visualizers (
lut_tools/visualizers.py
)- ColorChecker visualization
- Gradient ramp generation
- Technical plot creation
- Report visualization tools
The project is structured for easy extension:
- Modular design for adding new analysis features
- Extensible visualization system
- Support for additional LUT formats (planned)
- API for integration with other tools (planned)
This project is licensed under the MIT License.
makaronz