原理可参考高斯模糊和卷积滤波简介
js向wasm传递数组
与传递number不同,传递数组时,需要js将数组拷贝到wasm内存中,并通过传递指针(数据在内存中的位置),让wasm通过访问内存的具体位置,...这里的过程是,首先我们获得表示图片像素的数组,将这个数组复制到wasm内存,再调用wasm模块处理这些像素数据,处理完后js重新读取这块内存,并将处理过的图片画到canvas上。...number', 'number', 'number', 'number'],
[heapBytes.byteOffset, width, height, 3, 3]
);
// 从wasm内存读取出处理后的数据...另外我们需要观察ctx.getImageData()得到的数组格式:获得的data是一个一维数组,按照从从左到右,从上到下的顺序记录了图片每个像素的值。...其中每4个值为一组,分别代表同一个像素的r, g, b, a四个通道的数值。我们模糊时对每个通道进行单独处理。