Skip to content
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

Adaptive sharpening on export (based on resolution and crop) #13908

Closed
cornergraf opened this issue Mar 13, 2023 · 6 comments
Closed

Adaptive sharpening on export (based on resolution and crop) #13908

cornergraf opened this issue Mar 13, 2023 · 6 comments

Comments

@cornergraf
Copy link

Is your feature request related to a problem? Please describe.
It is very cumbersome to apply the proper amount of sharpening to each individual image on export, because images that are cropped heavily or have different image resolutions (different cameras) need to be sharpened differently.

Describe the solution you'd like
The sharpening that is set on a given image should be scaled up or down based on output resolution and area crop. E.g. an image that is exported to half the original resolution should have sharpening doubled, but reduced if the image is cropped (by the appropriate amount). I.e. the sharpening that is set in the darkroom should be seen as a baseline for the full resolution image, and then scaled appropriately.

Alternatives
The only alternative is the cumbersome manual process, which sucks.

Additional context
N/A

@ralfbrown
Copy link
Collaborator

Which method are you using for sharpening? Some of the newer modules such as Diffuse and Sharpen do scale the radius according to image scaling, which is necessary anyway to give a proper display on screen.
But they need to be put after the Output Scaling module, which was only recently made user-visible and user-movable, so you'll need to use current master. (The default position of Output Scaling depends on whether High Quality Resampling is turned on for export - if "on", it is only applied as the very last step, if "off" it happens very early in the pipe.)

Unfortunately, other than radius there is no simple way to map different strengths to different scaling, which is why darktable is far from the only editor which tells you to use 100% view to verify the effects of operations such as sharpening and denoising.

@cornergraf
Copy link
Author

Which method are you using for sharpening? Some of the newer modules such as Diffuse and Sharpen do scale the radius according to image scaling, which is necessary anyway to give a proper display on screen.

I was not aware of this change, maybe nothing else is needed then. I will have to check when I get home.

But they need to be put after the Output Scaling module, which was only recently made user-visible and user-movable, so you'll need to use current master. (The default position of Output Scaling depends on whether High Quality Resampling is turned on for export - if "on", it is only applied as the very last step, if "off" it happens very early in the pipe.)

Aha! But then you are not actually scaling the sharpening radius, you are simply applying the sharpening after resizing - which I disagree with. I am not an expert, but I believe you get better quality results if you first sharpen and then resize.

Unfortunately, other than radius there is no simple way to map different strengths to different scaling, which is why darktable is far from the only editor which tells you to use 100% view to verify the effects of operations such as sharpening and denoising.

I believe scaling the radius alone would be fine, but even if not, scaling the strength value (maybe with some tweakable factor) should work well too.

@wpferguson
Copy link
Member

the Output Scaling module, which was only recently made user-visible and user-movable,

I'm running a clean 4.3.0+1199~g0abafcbb0b, and I can't seem to make it appear in the modules list. I manually set it to visible in the darktablerc, but that seemed to have no effect.

@TurboGit
Copy link
Member

But they need to be put after the Output Scaling module, which was only recently made user-visible and user-movable, so you'll need to use current master.

No, in fact this was rejected as not a proper solution. See #13682 for our current plan.

@github-actions
Copy link

This issue has been marked as stale due to inactivity for the last 60 days. It will be automatically closed in 300 days if no update occurs. Please check if the master branch has fixed it and report again or close the issue.

Copy link

github-actions bot commented Mar 9, 2024

This issue was closed because it has been inactive for 300 days since being marked as stale. Please check if the newest release or nightly build has it fixed. Please, create a new issue if the issue is not fixed.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants