fn horizontal_sample<P, S>(
    image: &Rgba32FImage,
    new_width: u32,
    filter: &mut Filter<'_>
) -> ImageBuffer<P, Vec<S>>where
    P: Pixel<Subpixel = S> + 'static,
    S: Primitive + 'static,