reimplemented with faster, vectorized filter kernel creation
reimplemented with faster, vectorized filter kernel creation