In a number of places I’ve seen it remarked that a random convolution filter makes for a reasonably efficient edge detector for images, so I thought I’d test this.
The answer, perhaps surprisingly, seems to be yes.
With 25 input filters in an untrained convolutional neural net (where kernel values were pseudo-randomly distributed between -0.5 and 0.5), all but three of the first level filters returned something that suggested edge detection (though given the original image was a collection of edges this is not much of a claim.) Some of the second or even third level filters also showed patterns, but most delivered something like universal blackness.
Admittedly this is a small sample size, with just one test image.
Here is the original (100 x 100) image:
Here are some of the useful or at least interesting (98 x 98) filtered images:
I cannot really think of a useful application of this finding, but it does interest me none the less.