Skip to content

The remaining ImageMagick-based commands #290

@TheEssem

Description

@TheEssem

With release 1.8, most of the image commands in the bot have been ported over from ImageMagick/Magick++ to the libvips library. While this has already resulted in a significant performance increase with image processing (and the bot in general), not all commands have been ported, either due to confusion regarding how they would be implemented or because of bugs in libvips.

This issue is here to track those unported commands and the current status of porting them. The goal is to completely remove ImageMagick as a dependency from the bot, and as such none of the ports should use it in any way. Help with porting these over is greatly appreciated.

Commands

  • circle (radial/rotational blur effect, unsuccessful attempts have been made using mapim function)
  • explode (working prototype using static mapim image, would be better to generate it on-the-fly)
  • magik (probably doable with liblqr [the same library that ImageMagick uses], though performance is a concern; maybe worth looking into porting https://github.com/li-plus/seam-carving)
  • scott (slightly working prototype using static mapim image, would be better to generate it on-the-fly, antialiasing issues)
  • spin (libvips has a rotate command, however it works much differently and I haven't figured out how to make it use the middle of the image as a center point/axle yet)
  • swirl (tried using mapim and various polar coordinate functions, unsuccessful so far)
  • tile (easy to port, attempted removal but kept due to popular demand)
  • wall (need to generate perspective transform and use mapim with it, attempted removal but kept due to popular demand)

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Type

    No type

    Projects

    Status

    In Progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions