How to Create Image Editing Filters
The word "Filter" in Image Processing word relates to "Neighborhood" based operation on pixels.

Filters in the context of Instagram and other Image Processing applications are combination of point operations (Works on single pixel, adjusting it values independent of its adjacent pixels) and filters which alters the pixel value according to its adjacent pixels.

If I were you I'd start with learning about Point Operations such as Brightness, Contrast, Hue, Saturation, etc...
Once you build some functions which alters those move on to filters.

Then you could combine them into "Effect".

For instance, Vignetting is easy to do:


Create a rounded mask. White out side a circle and black around it.
Smooth the mask using a Gaussian Blur.
Adjust the brightness of pixel according to the values of this mask.