There are many approaches to non-photorealistic rendering. We have investigated several different styles as outlined below.
Our first approach takes noisy range images as input and uses them to produce 3D pen-and-ink style portraits. For models of moderate complexity it is real-time, allowing the pose and drawing style to be modified interactively. The algorithm first finds sections of suggestive contours, then chains them by carefully considering whether they are compatible. The style can be controlled, allowing varying stroke type, thickness, smoothness, and opacity. A further development of this approach is to use deviation from a mean face to exaggerate features for caricaturing.
Our second approach renders images in a highly abstracted manner, reminiscent of the art of later Matisse, or Kandinsky. The image is segmented at multiple scales using graph cut, and a variety of simple shapes (e.g. circles, triangles, squares, superellipses and so on) are fitted to each region. The system automatically chooses the shape that best represents the region; the choice is made via a supervised classifier so the "best shape" depends on the subjectivity of a user.
Continuing with this idea we combine lines (white as well as black to give highlights) with dark and light tonal blocks which can be abstracted or decorated in various ways. This allows us to achieve a combination of realism (e.g. recognisable portraits) with abstraction. There is a three-tone version (black and white lines and regions applied to a gray canvas):
as well as a two-scale, two-tone version (black and white):
Separately we had developed a circular thresholding algorithm. We found that applying it to the hue component of an image, and then uniformly colouring each hue class, can give attractive results (both two and three class thresholding are shown below):
The circular thresholding algorithm can also be used to apply "spot colour" to emphasise certain colourful regions in the image (which can be rendered in various stylised ways):
Another modification is a specialised portrait version, that creates a "puppet" style, and also a version inspired by the artist Julian Opie.
A different approach to stylization that we have taken attempts to find global linear structures in the image and emphasise them, which could potentially involve extreme geometric distortion, forcing the linear structures to align horizontally and vertically:
Another approach to portraits was taken, in which watercolour styling was applied, with an emphasis on retaining the recognisability of the people by preserving the important facial features:
Processing portrait images in a line drawing style was done using a GAN:
More details are given in:
return to Paul Rosin's homepage