The complexity of retina operators
An artificial retina is a plane circuit, consisting of a matrix of photocaptors; each has its own memory, consisting in a small number of cells (3 to 5), arranged in parallel planes. The treatment consists in logical operations between planes, plus translations of any plane: they are called “elementary operations” (EO). A retina operator (RO) is a transformation of the image, defined by a specific representation of a Boolean function of variables is the number of neighboring cells taken into account). What is the best way to represent an RO by means of EO, considering the strong limitation of memory? For most retina operators, the complexity (i.e., the number of EO needed) is exponential, no matter what representation is used, but, for specific classes, threshold functions and more generally symmetric functions, we obtain a result several orders of magnitude better than previously known ones. It uses a new representation, called “Block Addition of Variables.” For instance, the threshold function (find if at least 12 pixels are at 1 in a square of ) required 62 403 599 EO to be performed. With our method, it requires only 38 084 operations, using three memory cells.