Overview of fast_image_resize
mainfast_image_resize is a high-performance Rust library for image resizing that utilizes SIMD instructions for acceleration. It supports various pixel formats including U8, U16, I32, and F32 with different component counts (e.g., RGB, RGBA, Grayscale).
Supported Pixel Formats and Optimizations
| Format | Description | SSE4.1 | AVX2 | Neon | Wasm32 SIMD128 |
|---|---|---|---|---|---|
| U8 | One u8 component (e.g. L) | + | + | + | + |
| U8x2 | Two u8 components (e.g. LA) | + | + | + | + |
| U8x3 | Three u8 components (e.g. RGB) | + | + | + | + |
| U8x4 | Four u8 components (e.g. RGBA) | + | + | + | + |
| U16 | One u16 component (e.g. L16) | + | + | + | + |
| U16x2 | Two u16 components (e.g. LA16) | + | + | + | + |
| U16x3 | Three u16 components (e.g. RGB16) | + | + | + | + |
| U16x4 | Four u16 components (e.g. RGBA16) | + | + | + | + |
| I32 | One i32 component (e.g. L32) | - | - | - | - |
| F32 | One f32 component (e.g. L32F) | + | + | - | - |
| F32x2 | Two f32 components (e.g. LA32F) | + | + | - | - |
| F32x3 | Three f32 components (e.g. RGB32F) | + | + | - | - |
| F32x4 | Four f32 components (e.g. RGBA32F) | + | + | - | - |