I’m not sure I understand what you mean by positions where mask(convolution(x))==0, as in the current code looks like the mask is independent of position (the same cross pattern is applied everywhere).