The painter project was an early experiment in the processing framework/language. The goal was an algorithm that could paint. The paintings should be more than just some filters but rather a series of brush strokes.
Internally, the project has a framework of a basic painting built in. This includes different brushes, different brush sizes, and the ability to specify a brush stroke.
The program creates random brush strokes and applies them to the canvas. After each stroke, the canvas is compared to the goal image. If the recently added stroke made the canvas more similar to the goal image, it is kept. Otherwise the stroke is undone and a new stroke is generated.