Humans recognize visual objects with such ease that it is easy
to overlook what an impressive computational feat this
represents. Any given object in the world can cast an
effectively infinite number of different images onto the retina,
depending on its position relative to the viewer, the
configuration of light sources, and the presence of other
objects in the visual field. In spite of this extreme variation,
biological visual systems are able to effortlessly recognize at
least hundreds of thousands of distinct object classes—a feat
that no current artificial system can come close to achieving.
We’re interested in reverse engineering biological visual
systems. However, we would argue that any serious effort to
reverse engineer a system should also include a component of
forward engineering. For our purposes, this entails attempting
to take principles we’ve learned from natural systems and build
them into working artificial computer vision systems.