The visual cortex neurons have not only locality, but also they learn/recognize similar features. This was the original inspiration for the conv nets: it was a way to learn efficient local features and apply them to the whole image. To me it seems that cortex neurons and the initial layers of conv nets do similar work, but with constraints of their implementations: biological neurons cannot share weights, and for artificial neurons it is more efficient to learn and compute dense convolution.
Disclaimer: I'm learning deep learning mainly from HN comments and just want to provoke more insights. I have no idea what weight sharing is or how kernels are represented in networks, but I do know that e.g. a blur filter or edge filter is represented as convolution matrix.
It is dangerously confusing to reapply the neural-net-terminology to neuronal-nets isn't it? The weight of a kernel of biological neurons, what is that supposed to mean?
If you haven't stopped reading yet, please consider: in case, as I have to assume, you mean there is a specific ensemble of neurons that represents a kernel of given weights corresponding to exactly one area of retina, then isn't sharing between "pixels" achieved simply by the eye's jittering?
For better or worse, assume I'm the adversary in a GAN and ignore me if it doesn't make sense.