__parallel__ void stencilKernel(Array<int> input,Array<int> output,Mask<int> mask,int null,size_t i){ int sum=input(i); for(int z=0;z<mask.size;z++){ sum += mask.get(z,input,i); } output(i) = sum; }
float operator*(const Mask& mask1, const Mask& mask2) { if(mask1.getSize() != mask2.getSize()) return 0.0; int size = mask1.getSize(); double sum = 0.0; for(int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { sum += mask1.get(i, j)*mask2.get(size - i - 1, size - j - 1); } } sum /= size*size; return sum; }