Skip to the content.

Lesson 06 – Faces / Parametric Generators

Schedule

Time Desc
00:00 – 00:15 Intro
00:15 – 00:30 Sharing
00-30 - 01:00 Work on assignement
01:00 - 01:10 Break
01:15 - 02:00 Work on assignement
02:00 - 02:15 Wrap up

🎯 Focus

Explore parametric design by generating faces through code.

⏰ Content

😐 Face Generator

Brief

Write a program that generates parametric faces. Your face should be controlled by at least 3 parameters but preferably more. Variations in some of the features can be used to control the expressiveness of the face or some other characteristics (species, gender, age, mood, etc…) Differentiate continuous parameters (size and position of features) and discrete parameters (piercing, number of eyeballs). Consider the space you’re generating your face in (2D / 3D) and the view angle: front, profile, 3/4?

Note: This is a coding assignment. You are building a system that can generate infinite variations of a face by changing parameters (variables in your code). Think of it like designing a character creation system in a video game - sliders and options that produce different faces.

You must first sketch your idea on paper before working with the software.

What is a “parametric face”?

A parametric face is a face designed through variables rather than fixed values. Instead of drawing one specific face, you’re creating a system that can generate many faces by adjusting parameters.

The key concept:

Traditional approach: Draw a face with specific features (eyes at position x, nose size y, mouth width z)

Parametric approach: Define features as variables that can change:

eyeSize = variable (can be 20 to 60)
eyeSpacing = variable (can be 30 to 100)
noseLength = variable (can be 10 to 40)

Change these variables → get a different face. Every time.

Types of parameters:

Continuous parameters (smooth transitions)

Discrete parameters (distinct options)

How to think about building it:

1. Start with the basics

2. Define your parameters

3. Build incrementally

4. Add personality

Concrete examples:

Simple face system:

- headSize: 100-300
- eyeHeight: 0.3-0.5 (fraction of head height)
- eyeSpacing: 0.3-0.7 (fraction of head width)

More complex system:

- age: 0-100 (affects multiple features: wrinkles, eye droop, head shape)
- mood: -1 to 1 (negative = sad, positive = happy, affects mouth curve, eyebrow angle)
- species: "human", "alien", "robot" (completely changes available features)

Questions to guide your design:

Variations / Steps

Deliverables

More on Face Generator

References

The examples below show various approaches to face generation - some computational, some using AI, some interactive. Your task is to create a parametric system using code where you define the rules and parameters that generate the faces.

'Weird Faces - Matthias Dörfelt'
Weird Faces - Matthias Dörfelt

Computer generated images have a certain aesthetics to them that make them immediately recognizable as such by the trained eye. Weird Faces is an attempt to combine my old interest in illustration with programing, to create something procedural that has a truly individual artistic touch to it and is not instantly recognizable as a generative art piece. Even though, the faces look hand-drawn, they are entirely expressed by algorithmic rules. Each face is random, each face is unique. Still, they look similar to my actual hand drawn faces.

'Strange Visions'
Strange Visions - Heather Dewey-Hagborg

In Stranger Visions Heather collected hairs, chewed up gum, and cigarette butts from the streets, public bathrooms and waiting rooms of New York City. She extracted DNA from them and analyzed it to computationally generate 3d printed life size full color portraits representing what those individuals might look like, based on genomic research.

Lenny Face Generator
Lenny Face Generator

Jabba
Pareidolia

Pareidolia is the tendency for perception to impose a meaningful interpretation on a nebulous stimulus, usually visual, so that one sees an object, pattern, or meaning where there is none.

Ig
> source

'Mas que la cara'
Mas que la cara - Zach Lieberman

Mas que la Cara is a public art installation in Downtown Houston which augments participants faces with dynamically generated masks that respond to their movements.

'Face Trade'
Face Trade - Matthias Dörfelt

Face Trade is an Art Vending Machine created by Matthias Dörfelt that dispenses unique prints of computer generated face drawings. Instead of paying with money, buyers trade a mugshot that is taken on the spot in order to be permanently stored in the Ethereum Blockchain, consequently turning the transaction into a semi-permanent Face Swap.

'Type Face'
Type Face -Mary Huang

Created by Mary Huang, TYPEFACE is a study of facial recognition and type design, creating a typeface that corresponds to each individual, like a typographic portrait. Somewhat similar to LAIKA project – interactive typeface, the challenge here were the limitations of geometric type system, being able to allow for a great amount of variation while maintaining a general level of quality in the letters.

Drawing faces instructed by facial recognition from M Plummer-Fernandez on Vimeo.

'Deep Privacy'
Deep Privacy - Hukkelas, Hakon and Mester, Rudolf and Lindseth, Frank

Face Substitution from Kyle McDonald on Vimeo.

See also other similar / experiments by Kyle

Example

Ig
Mediapipe Facemesh in P5.js

Wrap-Up & Homework

📝 Activities

📂 Deliverables

📓 Journal Prompts

🎨 References & Inspiration