fn horizontal_fast_blur_half<P: Primitive>( samples: &[P], width: usize, height: usize, r: usize, channel_num: usize, ) -> Vec<P>