Skip to main content

Module resampling

Module resampling 

Source
Expand description

SIMD-accelerated resampling operations

This module provides high-performance image resampling using SIMD instructions for bilinear and bicubic interpolation. The implementations use cache-friendly blocking strategies for optimal performance on large rasters.

§Supported Methods

  • Bilinear: Fast, smooth interpolation (2x2 kernel)
  • Bicubic: High-quality interpolation (4x4 kernel)
  • Batch Processing: Process multiple pixels in parallel with SIMD

§Performance

Expected speedup over scalar: 2-4x depending on interpolation method

§Example

use oxigdal_algorithms::simd::resampling::bilinear_f32;

let src = vec![1.0_f32; 100 * 100];
let mut dst = vec![0.0_f32; 50 * 50];

bilinear_f32(&src, 100, 100, &mut dst, 50, 50)?;

Functions§

bicubic_f32
Bicubic interpolation with SIMD optimization
bilinear_f32
Bilinear interpolation with SIMD optimization
downsample_average_f32
Downsample using area averaging (for antialiasing)
nearest_f32
Nearest neighbor resampling (fast, no interpolation)