Convolutional filters: create new ones

I'm studying a Master's Degree in Artificial Intelligence an my final work is about Convolutional Neuronal Networks.

I was looking for information about filters (or kernel) at the convolutional layers. I have found this article: "Lode's Computer Graphics Tutorial - Image Filtering" but I need more.

Do you know more resources about more filters (that it is known that they work) and how to create new ones?

In other words, I want to know how they work and how can I create new ones.

I've thought to create a C++ program, or with Octave, to test the new kernels.

By the way, my research will be focused on image segmentation to process MRIs.

• The kernels would be a particular part of the operations you'd perform to get a segmentation map. Why would the network change them - That is what back propagation is? For example say you used a 3x3 kernel in a Convolution operation, the 9 values that make up the kernel are considered weights $w_1, w_2, ..., w_9$ which are learn-able parameters for the model and are learned via backpropogation. – ashenoy Nov 21 '19 at 11:24