pub fn max_pooling_simd(
input: &[u8],
width: usize,
factor: usize,
) -> (usize, usize, Vec<u8>)Expand description
使用 SIMD 指令优化的最大池化函数
§详细说明
对输入的二维图像数据执行最大池化操作,使用 AVX2 SIMD 指令集并行处理以提升性能。 池化操作将输入图像按指定因子缩小,每个输出像素对应输入区域的最大值。
§参数
input: 输入图像数据的一维数组表示(按行优先存储)width: 输入图像的宽度(像素数)factor: 池化因子,决定缩放比例(如 2 表示 2x2 池化)
§返回值
返回元组 (output_width, output_height, output_data):
output_width: 输出图像宽度output_height: 输出图像高度output_data: 池化后的图像数据
§示例
use image_max_polling::max_pooling_simd;
let input = vec![1, 2, 3, 4, 5, 6, 7, 8, 9];
let (w, h, result) = max_pooling_simd(&input, 3, 1);