Evolving Image Noise Filters through Genetic Programming

A form of Evolutionary Computation (EC) called Genetic Programming (GP) was used to automatically discover sequences of image noise filters to remove two types of image noise and a type of communications noise associated with a remotely sensed imagery. Sensor noise was modeled by the addition of salt-and-pepper and grayscale noise to the image. Communication noise was modeled by inserting a series of blank pixels in selected image rows to replicate dropped pixel segments occurring during communication interruptions of sequential uncompressed image information. A known image was used for training the evolver. Heavy amounts of noise were added to the known image, and a filter was evolved. (The filtered image was compared to the original with the average image-toimage pixel error establishing the fitness function.). The evolved filter derived for the noisy image was then applied to never-before-seen imagery affected by similar noise conditions to judge the universal applicability of the evolved GP filter. Examples of all described images are included in the presentation. A variety of image filter primitives were used in this experiment. The evolved sequences of primitives were each then sequentially applied to produce the final filtered image. These filters were evolved over a typical run length of one week each on a small Linux cluster. Once evolved, the filters were then transported to a PC for application to the never-before-seen images, using an “evolve-once, apply-many-times” approach. The results of this image filtering experiment were quite dramatic.

[1]  Charles L. Karr,et al.  Minimization of Sonic Boom on Supersonic Aircraft Using an Evolutionary Algorithm , 2003, GECCO.

[2]  L. Spector,et al.  Quantum circuits for OR and AND of ORs , 2000 .

[3]  Rian Sanderson,et al.  Automatic Synthesis of an 802.11a Wireless LAN Antenna Using Genetic Programming A Real World Application , 2004, GECCO.

[4]  Riccardo Poli,et al.  Foundations of Genetic Programming , 1999, Springer Berlin Heidelberg.

[5]  Richard M. Friedberg,et al.  A Learning Machine: Part I , 1958, IBM J. Res. Dev..

[6]  John R. Koza,et al.  Automatic synthesis of both the topology and sizing of metabolic pathways using genetic programming , 2001 .

[7]  H.S. Lopes,et al.  A parallel genetic algorithm for rule discovery in large databases , 1999, IEEE SMC'99 Conference Proceedings. 1999 IEEE International Conference on Systems, Man, and Cybernetics (Cat. No.99CH37028).

[8]  John R. Koza,et al.  Genetic Programming III - Darwinian Invention and Problem Solving , 1999, Evolutionary Computation.

[9]  John R. Koza Genetic Programming III - Darwinian Invention and Problem Solving , 1999, Evolutionary Computation.

[10]  E. R. Banks,et al.  High Performance Evolutionary Computing , 2006, 2006 HPCMP Users Group Conference (HPCMP-UGC'06).

[11]  Cândida Ferreira,et al.  Gene Expression Programming: A New Adaptive Algorithm for Solving Problems , 2001, Complex Syst..

[12]  Paul Agarwal,et al.  Genetic Programming for Discrimination of Buried Unexploded Ordnance ( UXO ) , 2005 .

[13]  Sadiq M. Sait,et al.  Iterative computer algorithms with applications in engineering - solving combinatorial optimization problems , 2000 .

[14]  Frank W. Moore,et al.  A Methodology for Missile Countermeasures Optimization under Uncertainty , 2002, Evolutionary Computation.