Experiment with image convolutions in your browser.
GitHub repository
Instructions
Upload the image this url then try the following kernels. What do you think each of them does?
All positive numbers.
All negative numbers.
All zeros.
All zeros, except a 1 in the top center.
Next, try to find a kernel for each of the following actions:
Detects vertical edges.
Detects horizantal edges.
Generally detects contrast.
Makes the image solid gray.
Slightly brightens the image.
Slightly darkens the image.
Keeps as much as possible but removes the dots on the cat's body.
Keeps as much of the cat as possible while making the background white.
Emphasizes the stars and dots in the image.
Now, head over to https://adamharley.com/nn_vis/cnn/2d.html.
Take a look at the first convolutional layer.
What features do each of the convolutions represent?
Try drawing a few different shapes to see what causes the pixels to light up for each kernel.
Try to find a way to draw numbers in a style where the model fails to guess the correct number.
How were you able to trick the model? Why do you think this is the case?
Upload an image file in .jpeg, .png, or .gif format.
Enter a URL of an image in .jpeg, .png, or .gif format.
Set resolution of input image.
Resolution
Current resolution.
Select a filter kernel to apply to image.
Apply filter to image.
Randomize weights of filter kernel.
Input is not a number
Repeat convolutional filter on image a specified number of times.
Update convolutional filter whenever a setting is changed.
Export filter kernel
Import filter kernel
Edit Kernel
Input is not a number
Repeat convolutional filter on image a specified number of times.