Generative Bird Portraits in Processing

How thousands of flowing lines can gradually reveal a wildlife photograph.


The idea

I’ve always been fascinated by the point where photography and generative art meet.

Rather than creating a portrait with traditional brushes or pixels, I wanted to explore whether an image could emerge from movement alone. The challenge wasn’t to copy a photograph exactly, but to build a system that slowly discovers it.

Using Processing (Java), I created an algorithm that starts with a blank white canvas. Guided by Perlin noise and the colour information within a photograph, thousands of flowing lines gradually build the portrait over time.

Each run is unique. The subject remains recognisable, but the path taken to reach the final image is never exactly the same.


The inspiration

Wildlife photography has been one of my longest-standing hobbies, and many of my favourite photographs eventually find their way into creative coding experiments.

This kingfisher was the perfect subject.

Its vivid blues and warm chestnut feathers create a striking colour palette, while the distinctive shape allows the portrait to emerge surprisingly early in the drawing process. I also liked the idea of extending the colours beyond the bird itself, allowing the background to dissolve into abstract flowing contours that echo reflections on moving water.

The result sits somewhere between illustration, map contours and fluid motion.


Generative Art of. a Kingfisher using code

The process

The system begins with the original photograph loaded into Processing.

Rather than drawing the image directly, the sketch continuously releases thousands of virtual particles across the canvas. Each particle follows a flow field generated with Perlin noise, creating smooth organic movement rather than straight mechanical lines.

As each particle moves it samples the colour beneath it from the original photograph.

The sampled colour determines:

  • The stroke colour
  • The opacity
  • The line weight
  • The amount of movement

Areas containing stronger contrast gradually accumulate more detail, while flatter areas remain lighter and more open. The portrait slowly appears as countless individual decisions overlap.

Because every particle has its own journey, the finished image feels drawn rather than rendered.


Development

The artwork evolves through several distinct stages.

Stage One

The first lines establish the flow field. At this point there’s almost no indication of the final subject, only delicate contour-like structures beginning to spread across the canvas.

Stage Two

As more particles are released, hints of colour begin to appear. The background develops its own visual language while the first recognisable shapes of the bird begin to emerge.

Stage Three

The silhouette becomes readable. Individual feather groups and larger areas of colour start to define the subject, while the flowing background continues to build complexity.

Stage Four

Fine detail accumulates around the eye, beak and plumage. The image now balances abstraction with realism, retaining visible traces of every particle path.

Final Artwork

After thousands of individual strokes, the portrait reaches a point where enough visual information exists for the photograph to feel complete. The image is never perfectly recreated—instead it becomes an interpretation built entirely from movement and time.



What I learned

One of the most interesting discoveries was that restraint often produces a stronger image.

My early experiments tried to reproduce every detail from the photograph. While technically successful, they lost much of the atmosphere created by the flowing lines.

By reducing the amount of information and allowing areas of the portrait to remain unfinished, the final artwork became far more expressive. The viewer naturally fills in the missing detail, creating a stronger connection between the abstract and the recognisable.

I also found that allowing colour to escape into the background helped unite the composition, preventing the bird from feeling isolated against a plain backdrop.


What’s next?

This project forms part of a wider series exploring wildlife through generative systems.

Future developments include:

  • Building portraits entirely from flow fields without using direct colour sampling.
  • Adding depth through layered particle systems.
  • Creating animated versions where the portrait continuously forms and dissolves.
  • Producing large-format A3 and A2 prints suitable for exhibition.

Ultimately, I’d like to create a collection of British wildlife portraits where every piece is generated from its own unique algorithm.


Final thoughts

One of the reasons I enjoy creative coding is that the computer becomes a collaborator rather than simply a tool.

I define the rules, but I don’t dictate every outcome.

Each execution of the program introduces small variations, meaning every portrait carries its own character while remaining faithful to the original photograph. Watching the image slowly emerge from thousands of flowing lines is often just as rewarding as the finished artwork itself.