A visual texture is an image in which a basic pattern or texture element is repeated many times, for example grass in a lawn. Within each texture element, the grey levels and their positions are arranged in a sufficiently similar manner so that the patterns take on a uniform appearance. The process of characterising the underlying relationships within texture elements and their placement can be considered as a form of feature extraction. These relationships allow salient features of different textures to be used in texture classification.<br><br>Most texture feature extraction methods are derived from human intuition after much contemplation. Texture feature extraction remains a challenging problem due to the diversity and complexity of natural textures. In this thesis we investigate the evolution of feature extraction programs using genetic programming.<br><br>Our main hypothesis is that given the right fitness evaluation, it may be possible to generate new feature extraction programs independent of human intuition from basic properties of images. We used tree based genetic programming and a ‘learning set’ of thirteen Brodatz textures to evolve feature extraction programs. We have investigated three kinds of inputs/terminals: raw pixels, histograms and a spatial encoding. The function set consisted of +, − to facilitate the analysis of the evolved programs. Fitness is computed with a novel application of clustering. A program in the population is applied to a selection of images of two textures in the learning set. If the program delivers widely separated clusters for the two textures, it is considered to be very fit. <br><br>The evolved programs were then used on a different training set of images to get a nearest neighbour classifier which is evaluated against a testing set. We have used the evolved feature extraction programs in 4 different classification tasks: (1) a thirteen class problem involving the same textures as in the learning set, but with an independent training and test set; (2) a four class problem comprising Brodatz textures not in the learning set; (3) a fifteen class problem comprising Vistex textures; and (4) a three class problem of malt classification.<br><br>The evolved programs were compared with 18 human derived methods on tasks 1 and 3. The accuracy of the evolved programs was ranked 14 out of 19 for task 1 and 9 out of 19 for task 3. Task 2 was only performed using histogram inputs and the accuracy was 100% compared with 95% for the grey level co-occurrence method. These results indicate that, on these tasks, the evolved feature extraction programs are competitive with human derived methods.<br><br>Task 4, malt classification, is a difficult real world problem. We used the best performing input, histograms, for this task. We obtained a classification accuracy of 67% which is better than the Gabor and Haar methods but worse than the gray level co-occurrence matrix and the grey level run length methods.<br><br>The value of our approach lies in the fact that feature extraction programs can be evolved from simple inputs such as histograms and arithmetic operations without much domain knowledge.<br>