I am trying to blur the image
int radius = 11;
int size = radius * 2 + 1;
float weight = 1.0f / (size * size);
float[] data = new float[size *
That is because you are using ConvolveOp.EDGE_NO_OP
in this line:
ConvolveOp op = new ConvolveOp(kernel, ConvolveOp.EDGE_NO_OP, null);
The API documentation says:
Pixels at the edge of the source image are copied to the corresponding pixels in the destination without modification.
Try EDGE_ZERO_FILL
- that will give you black borders.
You can also try to cut off the edges after blurring.
The reason for why it can't do the edges has to do with how the algorithm works.