AcademySoftwareFoundation / AcademySoftwareFoundation/rawtoaces
Canon sensor saturation level
- Dominant language
- C++
- Stars
- 193
- Forks
- 65
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 6
Description
First, I'm not actually sure if this is the best place to raise the issue, but I figured I start here, if only for discussion.
My (_very limited_) understanding is the sensor saturation threshold (DNG WhiteLevel tag) can vary for the same sensor, if some digital down gain is applied. My example was on a Canon EOS 5D Mark III, with 1/3 stops increments, where the increment closest to the next larger full ISO (eg. 640 closest to 800) may use the ISO 800 analog gain, then a digital down gain. When checking DNG (from Adobe DNG Converter) on this ISO pair, the WhiteLevel tag varies accordingly, LibRaw however returns a fixed / hard coded gain in such case. I'm finding this can be an issue with consequence such as highlight color shifting.
My workaround is currently to use the Canon Exif metadata to manually derive the saturation level and pass that to the Converter's saturation_level setting (`Canon:SpecularWhiteLevel - Canon:AverageBlackLevel`).
Contributor guide
Research direction
Start by tracing how LibRaw determines the saturation_level used by the Converter, then compare it with the DNG WhiteLevel and the Canon Exif values mentioned for the EOS 5D Mark III. Check the 640/800 ISO pair and confirm that using the varying saturation level prevents the reported highlight color shift.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-vision
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100