mirror of
https://github.com/storytold/lightcraft.git
synced 2026-10-14 19:27:01 -04:00
A raw without colour matrices of its own now gets DNG ColorMatrix1/2 and ForwardMatrix1/2 for its model when the model is one of the 52 cameras in rawtoaces-data (Academy Software Foundation, Apache-2.0): 22 Canon, 11 Nikon, 11 Sony, 3 Fujifilm and 5 others, plus the other names its alias list gives (Rebel T3i and Kiss X5 for the EOS 600D; bodies it lists as sharing a sensor). tools/spectral_camera_table.py fits, under Standard Illuminant A and D65, a white-preserving 3x3 to the measured spectral sensitivities over rawtoaces-data's 190 training reflectances and writes crates/raw/src/spectral_table.rs. No number comes from Adobe or from a raw decoder. lightcraft_raw::spectral looks a camera up by Exif make and model; the DNG colour model does the rest. camera_preview::starting_colour takes the first available of: the file's own matrices, a camera profile for the model (fitted to the JPEG for tone), the spectral matrices, the file-local JPEG fit, the neutral fallback. A profiled model whose profile fit fails takes its spectral matrices. White balance stays relative to the as-shot look for every raw without matrices of its own, so Photo::relative_wb and the controls are unchanged; calibrate still pools covered models. Tests: one per precedence step (synthetic), the table's lookup, aliases and DNG shape, and a corpus test of the order on ILCE-7M4 (profile), EOS 5D Mark III and D5100 (spectral), EOS 7D (own fit) and a DNG. The ILCE-7RM2 and GFX100S corpus tests now expect the spectral matrices. Attribution in assets/ATTRIBUTION.md and NOTICE. RENDER_CACHE_VERSION 23. Co-Authored-By: Claude Opus 5.5 <[email protected]>
51 lines
3.2 KiB
Plaintext
51 lines
3.2 KiB
Plaintext
LightCraft
|
|
Copyright (c) 2026 ArtCraft Team and the LightCraft contributors.
|
|
Licensed under the MIT License or the Apache License, Version 2.0, at your option
|
|
(LICENSE-MIT, LICENSE-APACHE).
|
|
|
|
The ArtCraft name, wordmark and logos in docs/brand/ are trademarks of the ArtCraft Team. They are
|
|
not open source and are not covered by the license above; their terms are in
|
|
docs/brand/LICENSE-brand.txt.
|
|
|
|
Third-party material
|
|
|
|
This product bundles third-party material under its own licenses, listed below. The per-file
|
|
list (author, source, license) is in assets/ATTRIBUTION.md.
|
|
|
|
Inter (assets/fonts/Inter-*.ttf) — SIL Open Font License 1.1. See assets/fonts/OFL-Inter.txt.
|
|
Showcase photographs by Ansel Adams, Dorothea Lange and NASA (docs/images/) — public domain. See assets/ATTRIBUTION.md.
|
|
|
|
crates/raw/src/spectral_table.rs (lightcraft-raw) holds camera colour matrices derived from the
|
|
camera spectral sensitivities, training reflectances and model alias list of rawtoaces-data
|
|
(https://github.com/AcademySoftwareFoundation/rawtoaces-data, v1.1.0), an Academy Software
|
|
Foundation project licensed under the Apache License 2.0, and from the CIE 1931 colour-matching
|
|
functions it ships (CIE, CC-BY-4.0). The matrices were fitted by the LightCraft contributors
|
|
(2026) with tools/spectral_camera_table.py. See assets/ATTRIBUTION.md.
|
|
|
|
crates/segment (lightcraft-segment) ports the SAM 3 model code of Hugging Face Transformers
|
|
(https://github.com/huggingface/transformers, src/transformers/models/sam3 and sam3_tracker),
|
|
Copyright The HuggingFace Team and Meta Platforms, Inc., licensed under the Apache License 2.0.
|
|
The port was modified by the LightCraft contributors (2026): translated from Python/PyTorch to
|
|
Rust on candle and restructured; each ported file says so. Because of this, crates/segment is
|
|
licensed under the Apache License 2.0 only (LICENSE-APACHE), not under the MIT option.
|
|
|
|
The SAM 3 weights are not part of LightCraft and are never distributed with it. A user downloads
|
|
the facebook/sam3 checkpoint only when they choose to (in the app, or by hand), under Meta's SAM
|
|
License (https://github.com/facebookresearch/sam3/blob/main/LICENSE), a separate, non-OSI
|
|
licence. See docs/ai-masks.md.
|
|
|
|
AI denoise weights are not part of LightCraft and are never distributed with it.
|
|
The default build offers user-supplied models only. The optional rawnind-model
|
|
feature offers a separately downloaded RawNIND UtNet2 Bayer checkpoint under
|
|
GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html), after the user accepts its terms.
|
|
Commercial use is subject to those terms, including applicable source, licence and
|
|
notice obligations on redistribution. Enabling that offer in releases remains a
|
|
maintainer decision. The ONNX reader and CPU/GPU executor are our Rust implementation;
|
|
no darktable, RawSpeed, LibRaw or other GPL decoder/runtime code is included.
|
|
|
|
Builds made with craft-fonts (the optional CRAFT_FONTS_DIR build input; all official releases)
|
|
also embed the fonts listed in https://github.com/storytold/craft-fonts/blob/main/ATTRIBUTION.md
|
|
(the Japanese fonts BIZ UDPGothic, BIZ UDMincho and Shippori Mincho; the web build embeds only BIZ
|
|
UDPGothic Regular), under the SIL Open Font License 1.1. Release packages include each font's
|
|
licence as OFL-<family>.txt.
|