-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
16bit per channel #34
Comments
Should be possible, but takes some work. For
|
Did some investigation, but 16bit is not really worth it with the current algorithm given the noise boosting that happens in shadow areas. For instance in the pcb example, shadow areas look like while the ideal source image would be There is even some slight banding from the color reassignment, which can be mitigated by scaling the reassigned color luminance according to the grayscale levels. The image then looks like this This smoothes away the banding while being quite cheap computationally speaking, so could be worth adding. The increased noise level is still there, and the halo comes from the low frequency wavelet merge, so it cannot just be filtered out. Using the fully filtered depthmap could work better in theory, in practice, I'm seeing some blur on depth transitions (I did not implement it, I only played with generated and aligned image outputs in Affinity) |
I agree - the wavelet approach is quite prone to amplifying noise. The other large category of algorithms is the "construct depthmap, blend layers accordingly". Compared to this, the wavelet approach has some advantages in handling translucent / thin objects in front of textured backgrounds, but it is unclear what is actually better for the majority of cases and whether they could be combined somehow. |
How feasible would it be to add 16bits per channel support ? Using from a basic TIFF for instance, and maybe DNG later on.
Several routines are already using floats and would already support it, but I have not delved enough in the code to see if there are major roadblocks, or if it would just require copy-pasta with adjusted types.
(Loading 16bits TIFF is supported, exporting a TIFF is supported as well but it outputs as 8bits per channel)
The text was updated successfully, but these errors were encountered: