Yöti, The Algorithmic Portrait Artist

Yöti is an automated portrait artist that uses salvaged 1980s pen plotters to draw, on actual paper, the likeness of participants using algorithmically-generated squiggly lines. From up close, the portraits look like an abstract collection of linear markings. However, from a distance, the lines clearly reveal Yöti’s interpretation of the visitor’s visage.

Yöti can be thought of as a deconstructed photobooth. Just like the good old analog photobooths, Yöti takes a few minutes to draw a portrait. During this time, visitors can witness their face slowly being drawn on paper by the plotters.

The installation invites the visitor to reconsider our relation to anticipation and immediateness. This feels particularly relevant in these times of instant gratification through selfies, SnapChat and Instagram.

By purposefully using « outdated » technologies, the installation also questions our relation to obsolescence, ephemerality and permanence.

It also takes interest in our rapport to the physical world. All participants leave with a physical object : a piece of paper bearing their portrait. Virtual, artificial and augmented realities are all fine but sometimes it just feels good to hold on to an actual, tangible object.

Public Presentations

Yöti has been presented during the following events and festivals:

  • FITC (Toronto, Canada, April 2017)
  • Composite #10 (Montreal, Canada, May 2017)
  • Eyeo (Minneapolis, USA, June 2017)

It has also been scheduled to be presented at:

  • beyond tellerrand (Düsseldorf, Germany, May 2018)
  • Chromatic (Montreal, Canada, May 2018)
  • Artobots, Art+Tech Festival (San Franscisco, USA, June 2018 – to be confirmed)


Here are two videos that present the project probably better than my words will:


Here are a bunch of photos taken during various public presentations of the project (mostly in Montreal, Toronto and Minneapolis).


Yöti has been selected in the first round of finalists for Venice’s Arte Laguna Prize (in the virtual art category).

Frequently Asked Questions

Visitors have been eager to know more about this installation, asking questions about the process, the hardware, the software, etc. Here’s my attempt to answer the most common ones:

Did you build this (pointing to plotter)?

No. The pen plotters I am using were made by HP (then Hewlett-Packard) in the mid-1980s. Yöti uses two HP 7475A pen plotters.

The internals are visible because I removed the beige (and ugly) cover. This way, visitors can see how they work.

Pen plotters were primarily used by businesses to draw charts, architectural drafts and graphs. The 7475A was sold for USD1500-USD2000. Larger models could cost as much as a small car.

Where did you get the plotters from?

Kijiji and eBay. If you want to get one for yourself, be aware that I have alerts set up on both these sites to notify me when one comes up for sale. I’m a fierce bidder! Plotters are usually being sold for less than 100$ (unless you aim for one of the larger, newer models). Note that the shipping cost will often be more expensive than the device’s price because they are relatively heavy.

As a side note, I should say that all the HP pen plotters I came accross (several units, different models) have been working flawlessly despite their age.

What is that blue thing (pointing to pen adapter)?

That blue (or white) thing is a 3D-printed pen adapter. It is the only modification I made to the hardware. By using the adapter, a variety of ordinary pens and markers can be used. Originally, the plotter was meant to be used with pens of a specific form factor that are really hard to come by these days.

Which markers are you using?

I am using Faber-Castell artist pens (1.5mm nib). The Faber-Castell pens have a narrow form factor which allows them to fit nicely in the plotter’s caroussel.

Markers such as the Sharpies can be also used but have to be manually inserted in the pen holder because of their larger width.

What language is driving Yöti? Why?

The software that drives Yöti is built upon NW.js. NW.js is a tool allowing the creation of desktop applications from HTML, CSS and JavaScript. It merges the Chromium browser and the Node.js engine. This allows simultaneous usage of front-end JavaScript libraries and Node.js modules.

I selected this environment simply because I already knew it and felt comfortable with it.

Are you using an Arduino?

No. As boring as it may sound, I am using a plain old PC.

How are the plotters connected to the computer?

The plotters feature a serial port (RS-232-C) that uses the old DB25 female connector. Plugged in that connector is a DB25 to DB9 cable. Then, I’m using a converter to go from DB9 to USB. This converter is using the Texas Instrument USB-serial chipset (do not use the Prolific 2303 chipset, it sucks!).

If you ever decide to get your own pen plotter, beware that some units are equipped with an HP-IB interface instead of the serial interface. This makes them much more difficult to talk to.

Where does the name come from?

It’s kind of a long story but here’s the gist of it : the original project was meant to be a giant Yeti (the abominable snowman). However, as I built the PVC-based structure, the look of the bare pipes grew on me and I scrapped the original concept (which also tangentially simplified the project quite a bit). However, I really liked the original name and the early versions of the logo that my buddy Christian (Dugas) had created. So I decided to keep the last iteration of the name : Yöti.

The Yöti logo was designed by Nassim Laarich, one of Christian’s students. It was selected amongst several logos that were created as part of an optional assignment in his design class.

The logo was modified after another friend (Benoit Lavigne) suggested the letter “Y” looked a bit too much like a swastika. Not good…

Can you spot the character hidden in the final version of the logo?

How does the algorithm work?

It’s quite simple actually. A bunch of lines, forming a circle, is laid out on top of the image grabbed by the webcam. The brightness value of he pixels along the lines is then analyzed. The higher the brightness of the pixel is, the wavier the line will be. Areas that feature more squiggly lines appear to be lighter while areas with straigther lines appear to be darker. This is what allows Yöti to draw facial features.

Obviously, the resolution of the drawings could have been higher. That was not the goal. The idea was for the faces to be identifiable, but barely. Finding the sweet spot took some fiddling but I’m quite happy with the result. As it is now, your brain has to fill in the blanks which it usually does if you know the face in the picture. Gestalt, anyone?

More questions?

If you have more questions, post them below and I’ll add them to this FAQ.


I would like to thank Benoit Lavigne, Christian Dugas and Vanessa Blais for their very precious help bringing this project to life.

The logo’s design has been created by Nassim Laarich (working under the supervision of Christian Dugas).

This project has been made possible in part through funding from the Fondation du cégep Édouard-Montpetit and the Conseil des arts de Longueuil.