Skip to content

Bicubic sampler in GIL #576

@Scramjet911

Description

@Scramjet911

Is your feature request related to a problem? Please describe.

In the current image resizing algorithms in GIL, there is nearest neighbour and bilinear sampler. But bicubic sampler is not available. Bicubic interpolation is also a very popular algorithm which might be needed useful for resizing.

Describe the solution you'd like

Implementing a bicubic sampler in sampler.hpp

C++ Example

So the way I have currently implemented it is using this as a reference, here

But there are issues with my implementation, I cannot figure out why image artifacts are being generated in the output image.

Can someone help me with what I am missing?

Describe alternatives you've considered

Another method for bicubic interpolation is using convolution like this

Additional context

Bicubic interpolation is a very popular technique for image interpolation because it is smoother than bilinear interpolation and nearest neighbour interpolation, though it requires higher computational power.

PR #588

Future milestones :

  • (maybe?) Clean up sampler.hpp comments
  • Add tests
  • Ensure all tests pass

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions