if canvas clear is executed then it is clear that image has graphic, but it is not changed in any way by filter.
Any clue ?
image := TBGRABitmap.Create(Bitmap);
image.FilterGrayscale();
//PaintBox1.canvas.Clear;
PaintBox1.canvas.Draw(0,0,image.Bitmap);