Skip to content

Conversation

@griwodz
Copy link
Member

@griwodz griwodz commented Oct 21, 2025

Description

PopSift has several modes to create the Gaussian pyramid. These were written to increase the potential parallelism of PopSift and explore trade-offs between speed and quality.

This PR removes the DirectDownscaling approach, which generated the top level of every octave directly
from the upscaled input image. In practice, the quality drop of this implementation was too large to be practical.

Features list

This PR does not add any features. It removes features.
The direct downscaling method has been removed.

Implementation remarks

Removed the config param ScalingMode (always use default).
Removed code to create the top level of every octave directly from the input image, direct downscaling is now only used for the input image.
Use horiz_from_input_image exclusively for octave 0, remove octave parameter.
Reduced the Gaussian filter table h_gauss.dd to a single instance. This table contained Gaussian filters considering the initial blur for every octave's top level.

Carsten Griwodz added 2 commits October 21, 2025 08:20
@griwodz griwodz self-assigned this Oct 21, 2025
@griwodz griwodz requested a review from simogasp October 21, 2025 06:55
@griwodz
Copy link
Member Author

griwodz commented Oct 21, 2025

This is a little piece of PR #159
It removes one of the many options for building the Gaussian pyramid.
It did increase parallelism a little bit, but quality suffered. It could be valuable to make a new attempt at this idea when we support much larger images.

@simogasp simogasp added this to the v0.11.0 milestone Oct 21, 2025
Copy link
Member

@simogasp simogasp left a comment

Choose a reason for hiding this comment

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

LGTM

@griwodz griwodz merged commit a30a990 into develop Oct 23, 2025
5 checks passed
@griwodz griwodz deleted the dev/remove-scale-direct branch October 23, 2025 05:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants