Skip to content

Conversation

@BryonLewis
Copy link
Collaborator

@BryonLewis BryonLewis commented Sep 18, 2025

Solves part of #1510

  • Updates image enhancements to have independent sliders for:
    • Brightness
    • Contrast
    • Saturation
    • Sharpen
  • Sharpen is a little different because it's using a FeConvolveMatrix with the nearest pixels to attempt a similar effect to sharpening.
  • imageEnhancementOutputs is a collection of the above values and is passe to the annotators for implementation inthe SVG filters
  • isDefaultImage is true when the default values are being used
    • This is used to provide a little orange dot at the bottom right of the imageEnhancements Icon/Button.

A Subsquent PR is going to hook this data into the saving system where it will be saved similar to the confidence threshold. This would allow anyone to adjust the image settings and have it persist so others see the same thing.

DIVE-20250918-ImageEnhancementsPR_small.mp4

@BryonLewis BryonLewis marked this pull request as ready for review September 18, 2025 18:31
Copy link
Collaborator

@naglepuff naglepuff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Code all makes sense to me and it works locally.

One thought is that I was wondering if it would be possible to move all of the SVG/css filter code into its own component that could be imported and used by each Annotator component, instead of repeating across the annotators.

Not really a dealbreaker for me here, but perhaps a follow up to this work.

@BryonLewis BryonLewis merged commit 24b7239 into main Oct 7, 2025
4 checks passed
@BryonLewis BryonLewis deleted the advanced-image-enhancements branch October 7, 2025 17:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants