Image Processing with Matrix Convolution (Kernels)
Very simple code, it's a product of a research project I'm working on. Note: it uses wrapping during the matrix operations, that can be easily changed to repeating or whatever you want by modding getBitmapPoint. It does support multi-direction filters, like Sobel.
Royalty free image of car obtained from: https://www.pexels.com/photo/auto-automobile-automotive-car-210053/
Gradient Detection, Sobel, Gaussian Blur, Unsharp, Sharpen, etc.
See it in action here: https://gregfrazier.github.io/image-convolution/imageview.html